sync
authorAlan Knowles <alan@roojs.com>
Fri, 3 Aug 2012 05:33:17 +0000 (13:33 +0800)
committerAlan Knowles <alan@roojs.com>
Fri, 3 Aug 2012 05:33:17 +0000 (13:33 +0800)
Roo/DomTemplate.js
roojs-all.js
roojs-core-debug.js
roojs-core.js
roojs-debug.js

index c08ac27..fc944ee 100644 (file)
@@ -201,7 +201,7 @@ Roo.extend(Roo.DomTemplate, Roo.Template, {
         }
         
         // parent now sees '{domtplXXXX}
-        this.iterChild(node,this.compileNode)
+        this.iterChild(node,this.compileNode);
         
         // we should now have node body...
         var div = document.createElement('div');
index db55551..489b8ed 100644 (file)
@@ -226,7 +226,7 @@ this.autoRefreshProcId=setInterval(this.update.createDelegate(this,[B||this.defa
 Roo.DomTemplate=function(){Roo.DomTemplate.superclass.constructor.apply(this,arguments);if(this.html){this.compile();}};Roo.extend(Roo.DomTemplate,Roo.Template,{id:0,inPre:false,tpls:false,re:/(\{|%7B])([\w-\.]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?(\}|%7D)/g,iterChild:function(A,B){var C=this.inPre;if(A.tagName=='PRE'){this.inPre=true;}for(var i=0;i<A.childNodes.length;i++){B.call(this,A.childNodes[i]);}
 this.inPre=C;},compile:function(){var s=this.html;var A=document.createElement('div');A.innerHTML=this.html;this.tpls=[];var _t=this;this.iterChild(A,function(n){_t.compileNode(n,true);});var B=this.tpls;Roo.log(A.innerHTML);var C={uid:'master',id:this.id++,attr:false,value:false,body:A.innerHTML,forCall:false,execCall:false,dom:A,isTop:true};B.unshift(C);this.tpls=[];Roo.each(B,function(tp){this.compileTpl(tp);this.tpls[tp.id]=tp;},this);this.master=B[0];return this;},compileNode:function(A,B){if(A.nodeType!=1){if(A.nodeType==3&&!this.inPre){A.nodeValue=A.nodeValue.replace(/\s+/g,' ');}return;}var C={uid:false,id:false,attr:false,value:false,body:'',forCall:false,execCall:false,dom:false,isTop:B};switch(true){case (A.hasAttribute('roo-for')):C.attr='for';break;case (A.hasAttribute('roo-if')):C.attr='if';break;case (A.hasAttribute('roo-name')):C.attr='name';break;case (A.hasAttribute('roo-exec')):C.attr='exec';break;}if(!C.attr){this.iterChild(A,this.compileNode);return;}
 C.uid=this.id++;C.value=A.getAttribute('roo-'+C.attr);A.removeAttribute('roo-'+C.attr);if(C.attr!='name'){var D=document.createTextNode('{domtpl'+C.uid+'}');A.parentNode.replaceChild(D,A);}else {var D=document.createElement('span');D.className='roo-tpl-'+C.value;A.parentNode.replaceChild(D,A);}
-this.iterChild(A,this.compileNode)var E=document.createElement('div');E.appendChild(A);C.dom=A;C.body=E.innerHTML;C.id=C.uid;switch(C.attr){case 'for':switch(C.value){case '.':C.forCall=new Function('values','parent','with(values){ return values; }');break;case '..':C.forCall=new Function('values','parent','with(values){ return parent; }');break;default:C.forCall=new Function('values','parent','with(values){ return '+C.value+'; }');}break;case 'exec':C.execCall=new Function('values','parent','with(values){ '+(Roo.util.Format.htmlDecode(C.value))+'; }');break;case 'if':C.ifCall=new Function('values','parent','with(values){ return '+(Roo.util.Format.htmlDecode(C.value))+'; }');break;case 'name':C.id=C.value;break;}
+this.iterChild(A,this.compileNode);var E=document.createElement('div');E.appendChild(A);C.dom=A;C.body=E.innerHTML;C.id=C.uid;switch(C.attr){case 'for':switch(C.value){case '.':C.forCall=new Function('values','parent','with(values){ return values; }');break;case '..':C.forCall=new Function('values','parent','with(values){ return parent; }');break;default:C.forCall=new Function('values','parent','with(values){ return '+C.value+'; }');}break;case 'exec':C.execCall=new Function('values','parent','with(values){ '+(Roo.util.Format.htmlDecode(C.value))+'; }');break;case 'if':C.ifCall=new Function('values','parent','with(values){ return '+(Roo.util.Format.htmlDecode(C.value))+'; }');break;case 'name':C.id=C.value;break;}
 this.tpls.push(C);},compileTpl:function(tpl){var fm=Roo.util.Format;var useF=this.disableFormats!==true;var A=Roo.isGecko?"+\n":",\n";var undef=function(C){Roo.log("Property not found :"+C);return '';};var fn=function(m,C,D,E,F){F=F?F.replace(/\\'/g,"'"):F;if(typeof(E)=='undefined'){E='htmlEncode';}if(E=='raw'){E=false;}if(D.substr(0,6)=='domtpl'){return "'"+A+'this.applySubTemplate('+D.substr(6)+', values, parent)'+A+"'";}var G=[];var H='';Roo.each(D.split('.'),function(st){H+=(H.length?'.':'')+st;G.push("(typeof("+H+") == 'undefined')");});var I='(('+G.join(" || ")+") ? undef('"+D+"') : ";if(E&&useF){F=F?','+F:"";if(E.substr(0,5)!="this."){E="fm."+E+'(';}else {E='this.call("'+E.substr(5)+'", ';F=", values";}return "'"+A+I+E+D+F+"))"+A+"'";}if(F.length){return "'"+A+I+D+'('+F+"))"+A+"'";}return "'"+A+I+D+")"+A+"'";};var B;if(Roo.isGecko){B="tpl.compiled = function(values, parent){  with(values) { return '"+tpl.body.replace(/(\r\n|\n)/g,'\\n').replace(/'/g,"\\'").replace(this.re,fn)+"';};};";}else {B=["tpl.compiled = function(values, parent){  with (values) { return ['"];B.push(tpl.body.replace(/(\r\n|\n)/g,'\\n').replace(/'/g,"\\'").replace(this.re,fn));B.push("'].join('');};};");B=B.join('');}
 Roo.debug&&Roo.log(B.replace(/\\n/,'\n'));eval(B);return this;},applySubTemplate:function(id,A,B){var t=this.tpls[id];try{if(t.ifCall&&!t.ifCall.call(this,A,B)){Roo.log('if call on '+t.value+' return false');return '';}}catch(e){Roo.log('Xtemplate.applySubTemplate('+id+'): Exception thrown on roo-if="'+t.value+'" - '+e.toString());Roo.log(values);return '';}try{if(t.execCall&&t.execCall.call(this,A,B)){return '';}}catch(e){Roo.log('Xtemplate.applySubTemplate('+id+'): Exception thrown on roo-for="'+t.value+'" - '+e.toString());Roo.log(values);return '';}try{var vs=t.forCall?t.forCall.call(this,A,B):A;B=t.target?A:B;if(t.forCall&&vs instanceof Array){var C=[];for(var i=0,D=vs.length;i<D;i++){try{C[C.length]=t.compiled.call(this,vs[i],B);}catch(e){Roo.log('Xtemplate.applySubTemplate('+id+'): Exception thrown on body="'+t.value+'" - '+e.toString());Roo.log(e.body);Roo.log(vs[i]);}}return C.join('');}}catch(e){Roo.log('Xtemplate.applySubTemplate('+id+'): Exception thrown on roo-for="'+t.value+'" - '+e.toString());Roo.log(values);return '';}try{return t.compiled.call(this,vs,B);}catch(e){Roo.log('Xtemplate.applySubTemplate('+id+'): Exception thrown on body="'+t.value+'" - '+e.toString());Roo.log(e.body);Roo.log(values);return '';}},applyTemplate:function(A){return this.master.compiled.call(this,A,{});},apply:function(){return this.applyTemplate.apply(this,arguments);}});Roo.XTemplate.from=function(el){el=Roo.getDom(el);return new Roo.XTemplate(el.value||el.innerHTML);};
 //Roo/util/DelayedTask.js
index eb70d58..17754aa 100644 (file)
@@ -12351,7 +12351,7 @@ Roo.extend(Roo.DomTemplate, Roo.Template, {
         }
         
         // parent now sees '{domtplXXXX}
-        this.iterChild(node,this.compileNode)
+        this.iterChild(node,this.compileNode);
         
         // we should now have node body...
         var div = document.createElement('div');
index b974ec6..0ade5af 100644 (file)
@@ -226,7 +226,7 @@ this.autoRefreshProcId=setInterval(this.update.createDelegate(this,[B||this.defa
 Roo.DomTemplate=function(){Roo.DomTemplate.superclass.constructor.apply(this,arguments);if(this.html){this.compile();}};Roo.extend(Roo.DomTemplate,Roo.Template,{id:0,inPre:false,tpls:false,re:/(\{|%7B])([\w-\.]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?(\}|%7D)/g,iterChild:function(A,B){var C=this.inPre;if(A.tagName=='PRE'){this.inPre=true;}for(var i=0;i<A.childNodes.length;i++){B.call(this,A.childNodes[i]);}
 this.inPre=C;},compile:function(){var s=this.html;var A=document.createElement('div');A.innerHTML=this.html;this.tpls=[];var _t=this;this.iterChild(A,function(n){_t.compileNode(n,true);});var B=this.tpls;Roo.log(A.innerHTML);var C={uid:'master',id:this.id++,attr:false,value:false,body:A.innerHTML,forCall:false,execCall:false,dom:A,isTop:true};B.unshift(C);this.tpls=[];Roo.each(B,function(tp){this.compileTpl(tp);this.tpls[tp.id]=tp;},this);this.master=B[0];return this;},compileNode:function(A,B){if(A.nodeType!=1){if(A.nodeType==3&&!this.inPre){A.nodeValue=A.nodeValue.replace(/\s+/g,' ');}return;}var C={uid:false,id:false,attr:false,value:false,body:'',forCall:false,execCall:false,dom:false,isTop:B};switch(true){case (A.hasAttribute('roo-for')):C.attr='for';break;case (A.hasAttribute('roo-if')):C.attr='if';break;case (A.hasAttribute('roo-name')):C.attr='name';break;case (A.hasAttribute('roo-exec')):C.attr='exec';break;}if(!C.attr){this.iterChild(A,this.compileNode);return;}
 C.uid=this.id++;C.value=A.getAttribute('roo-'+C.attr);A.removeAttribute('roo-'+C.attr);if(C.attr!='name'){var D=document.createTextNode('{domtpl'+C.uid+'}');A.parentNode.replaceChild(D,A);}else {var D=document.createElement('span');D.className='roo-tpl-'+C.value;A.parentNode.replaceChild(D,A);}
-this.iterChild(A,this.compileNode)var E=document.createElement('div');E.appendChild(A);C.dom=A;C.body=E.innerHTML;C.id=C.uid;switch(C.attr){case 'for':switch(C.value){case '.':C.forCall=new Function('values','parent','with(values){ return values; }');break;case '..':C.forCall=new Function('values','parent','with(values){ return parent; }');break;default:C.forCall=new Function('values','parent','with(values){ return '+C.value+'; }');}break;case 'exec':C.execCall=new Function('values','parent','with(values){ '+(Roo.util.Format.htmlDecode(C.value))+'; }');break;case 'if':C.ifCall=new Function('values','parent','with(values){ return '+(Roo.util.Format.htmlDecode(C.value))+'; }');break;case 'name':C.id=C.value;break;}
+this.iterChild(A,this.compileNode);var E=document.createElement('div');E.appendChild(A);C.dom=A;C.body=E.innerHTML;C.id=C.uid;switch(C.attr){case 'for':switch(C.value){case '.':C.forCall=new Function('values','parent','with(values){ return values; }');break;case '..':C.forCall=new Function('values','parent','with(values){ return parent; }');break;default:C.forCall=new Function('values','parent','with(values){ return '+C.value+'; }');}break;case 'exec':C.execCall=new Function('values','parent','with(values){ '+(Roo.util.Format.htmlDecode(C.value))+'; }');break;case 'if':C.ifCall=new Function('values','parent','with(values){ return '+(Roo.util.Format.htmlDecode(C.value))+'; }');break;case 'name':C.id=C.value;break;}
 this.tpls.push(C);},compileTpl:function(tpl){var fm=Roo.util.Format;var useF=this.disableFormats!==true;var A=Roo.isGecko?"+\n":",\n";var undef=function(C){Roo.log("Property not found :"+C);return '';};var fn=function(m,C,D,E,F){F=F?F.replace(/\\'/g,"'"):F;if(typeof(E)=='undefined'){E='htmlEncode';}if(E=='raw'){E=false;}if(D.substr(0,6)=='domtpl'){return "'"+A+'this.applySubTemplate('+D.substr(6)+', values, parent)'+A+"'";}var G=[];var H='';Roo.each(D.split('.'),function(st){H+=(H.length?'.':'')+st;G.push("(typeof("+H+") == 'undefined')");});var I='(('+G.join(" || ")+") ? undef('"+D+"') : ";if(E&&useF){F=F?','+F:"";if(E.substr(0,5)!="this."){E="fm."+E+'(';}else {E='this.call("'+E.substr(5)+'", ';F=", values";}return "'"+A+I+E+D+F+"))"+A+"'";}if(F.length){return "'"+A+I+D+'('+F+"))"+A+"'";}return "'"+A+I+D+")"+A+"'";};var B;if(Roo.isGecko){B="tpl.compiled = function(values, parent){  with(values) { return '"+tpl.body.replace(/(\r\n|\n)/g,'\\n').replace(/'/g,"\\'").replace(this.re,fn)+"';};};";}else {B=["tpl.compiled = function(values, parent){  with (values) { return ['"];B.push(tpl.body.replace(/(\r\n|\n)/g,'\\n').replace(/'/g,"\\'").replace(this.re,fn));B.push("'].join('');};};");B=B.join('');}
 Roo.debug&&Roo.log(B.replace(/\\n/,'\n'));eval(B);return this;},applySubTemplate:function(id,A,B){var t=this.tpls[id];try{if(t.ifCall&&!t.ifCall.call(this,A,B)){Roo.log('if call on '+t.value+' return false');return '';}}catch(e){Roo.log('Xtemplate.applySubTemplate('+id+'): Exception thrown on roo-if="'+t.value+'" - '+e.toString());Roo.log(values);return '';}try{if(t.execCall&&t.execCall.call(this,A,B)){return '';}}catch(e){Roo.log('Xtemplate.applySubTemplate('+id+'): Exception thrown on roo-for="'+t.value+'" - '+e.toString());Roo.log(values);return '';}try{var vs=t.forCall?t.forCall.call(this,A,B):A;B=t.target?A:B;if(t.forCall&&vs instanceof Array){var C=[];for(var i=0,D=vs.length;i<D;i++){try{C[C.length]=t.compiled.call(this,vs[i],B);}catch(e){Roo.log('Xtemplate.applySubTemplate('+id+'): Exception thrown on body="'+t.value+'" - '+e.toString());Roo.log(e.body);Roo.log(vs[i]);}}return C.join('');}}catch(e){Roo.log('Xtemplate.applySubTemplate('+id+'): Exception thrown on roo-for="'+t.value+'" - '+e.toString());Roo.log(values);return '';}try{return t.compiled.call(this,vs,B);}catch(e){Roo.log('Xtemplate.applySubTemplate('+id+'): Exception thrown on body="'+t.value+'" - '+e.toString());Roo.log(e.body);Roo.log(values);return '';}},applyTemplate:function(A){return this.master.compiled.call(this,A,{});},apply:function(){return this.applyTemplate.apply(this,arguments);}});Roo.XTemplate.from=function(el){el=Roo.getDom(el);return new Roo.XTemplate(el.value||el.innerHTML);};
 //Roo/util/DelayedTask.js
index 8514b39..59bee1d 100644 (file)
@@ -12351,7 +12351,7 @@ Roo.extend(Roo.DomTemplate, Roo.Template, {
         }
         
         // parent now sees '{domtplXXXX}
-        this.iterChild(node,this.compileNode)
+        this.iterChild(node,this.compileNode);
         
         // we should now have node body...
         var div = document.createElement('div');