PHP Classes

File: src/Raptor2/InteractiveBundle/Views/core/core.js.twig

Recommend this page to a friend!
  Classes of william amed   Raptor 2   src/Raptor2/InteractiveBundle/Views/core/core.js.twig   Download  
File: src/Raptor2/InteractiveBundle/Views/core/core.js.twig
Role: Auxiliary data
Content type: text/plain
Description: Auxiliary data
Class: Raptor 2
Framework that takes routes from annotations
Author: By
Last change: Cambio en la creacion de cookies de aplicacion para las guias interactivas, ahora son creadas por la aplicacion cliente.
Date: 7 years ago
Size: 3,661 bytes
 

Contents

Class file image Download
Interactive={ init:false, many:0, stack:new Array(), stacked: false, free:true, perfil:{{ perfil|raw }}, begin:function(){ if(this.perfil.reject==true){ return false; } this.init=true; var me=this; if(!window.$){ var script2 = document.createElement('script'); script2.onload = script2.onreadystatechange = script2.onerror = null; script2.type = 'text/javascript'; script2.onerror = this.onErrorFn; script2.onload = function(){ me.onLoadFn(); var script = document.createElement('script'); script.onload = script.onreadystatechange = script.onerror = null; script.type = 'text/javascript'; script.onerror = this.onErrorFn; script.onload = function(){ me.onLoadFn() }; script.src = '{{ url }}'; document.getElementsByTagName('head')[0].appendChild(script); }; script2.src = '{{ asset('bootstrap/js/jquery.js') }}'; document.getElementsByTagName('head')[0].appendChild(script2); }else{ this.many++; var script = document.createElement('script'); script.onload = script.onreadystatechange = script.onerror = null; script.type = 'text/javascript'; script.onerror = this.onErrorFn; script.onload = function(){ me.onLoadFn() }; script.src = '{{ url }}'; document.getElementsByTagName('head')[0].appendChild(script); } }, show:function(name,condition){ var me=this; this.stack=new Array(); if(!this.init) this.stack.push(function(){ if(me.free) me.calling(name,condition); else me.pile(name,condition); }) if(!this.init) this.begin(); else me.calling(name,condition); }, calling:function(name,condition){ this.free=false; var val=$.cookie('Interact2_'+Raptor.getUser()); var obj=$.parseJSON(val); if(!obj || !obj.tutoriales ){ $.cookie('Interact2_'+Raptor.getUser(),'{"reject":false,"tutoriales":{"interactive":"This is interactive"}}',{expires: 30,path:'/'}); val=$.cookie('Interact2_'+Raptor.getUser()); obj=$.parseJSON(val); } if(obj.reject) return; if(obj.tutoriales[name]!=undefined) return; if(condition){ if(!Interactive.Util.checkCondition(condition,obj)) return; } if(this.before){ this.before.destroy(); } var msg=new Interactive.Core(); msg.setRoot(Raptor.getFront()+'/interactive/tutorial'); msg.call(name); this.before=msg; this.free=true; this.areFree(); }, areFree:function(){ if(this.stacked!==false) me.calling(this.stacked); }, pile:function(name){ this.stacked=name; }, onErrorFn:function(){ }, onLoadFn:function(){ this.many++; if(this.many<2){ return; } for(var i=0,cant=this.stack.length;i < cant ;i++){ this.stack[i].call(); } this.stack=new Array(); } }