var dummy="$Id: tmpl.js,v 1.2 2011-01-18 16:50:36 darmitag Exp $";var _tmpl={};function tmpl_store(h,s){var u=[];u.push("var __ss = [];");u.push("with (_dict) {");var k=0;var t="";var q="";var b="TEXT";for(;k<s.length;k++){var p=s.charAt(k);if(b=="TEXT"){if(p=="<"){b="MAYBE_OPEN"}else{t+=p}}else{if(b=="MAYBE_OPEN"){if(p=="%"){b="DIRECTIVE"}else{t+="<"+p;b="TEXT"}}else{if(b=="DIRECTIVE"){if(p=="%"){b="MAYBE_CLOSE"}else{q+=p}}else{if(b=="MAYBE_CLOSE"){if(p==">"){if(t.length>0){u.push("__ss.push('"+tmpl_esc_js(t)+"');")}var g;if(g=q.match(/^IF\s+(.+)$/)){var r=g[1];u.push("if ("+r+") {")}else{if(g=q.match(/^ELSE\s+IF\s+(.+)$/)){var r=g[1];u.push("} else if ("+r+") {")}else{if(g=q.match(/^ELSE$/)){u.push("} else {")}else{if(g=q.match(/^LOOP\s+(\w+)\s+(.+)$/)){var j=g[1];var a=g[2];u.push("var __e = "+a+";");var n="var "+j+" = 0; "+j+" < __e; "+j+"++";u.push("for ("+n+") {")}else{if(g=q.match(/^CONTINUE$/)){u.push("continue;")}else{if(g=q.match(/^BREAK$/)){u.push("break;")}else{if(g=q.match(/^END$/)){u.push("}")}else{if(g=q.match(/^COMMENT\s+/)){}else{if(g=q.match(/^JS\s+(.+)$/)){var f=g[1];u.push(f+";")}else{if(g=q.match(/^XL\s+(.+)$/)){var d=g[1];xl=_tmpl_xl["c"+d];if(xl!=undefined){if(xl.length>0){u.push("__ss.push('"+tmpl_esc_js(xl)+"');")}}else{u.push("__ss.push(tmpl_xl('"+tmpl_esc_js(d)+"'));")}}else{if(q.length>0){u.push("__ss.push("+q+");")}else{throw ("Empty directive")}}}}}}}}}}}t="";q="";b="TEXT"}else{q+="%"+p;b="DIRECTIVE"}}else{throw ("bad state "+b)}}}}}if(t.length>0){u.push("__ss.push('"+tmpl_esc_js(t)+"');")}if(q.length>0){throw ("Unterminated directive "+q)}u.push("}\n");u.push("return __ss.join('');");var l=u.join("\n");try{_tmpl["t"+h]=new Function(["_dict"],l)}catch(o){throw ("Could not compile template: "+o+"; body was: \n"+l)}return}function tmpl_play(a,b){return _tmpl["t"+a](b)}var _tmpl_xl={};function tmpl_xl_set(b){for(var a=0;a<arguments.length-1;a+=2){_tmpl_xl["c"+arguments[a]]=arguments[a+1]}}function tmpl_xl(a){return((xl=_tmpl_xl["c"+a])!=undefined)?xl:a}function tmpl_ml_printf(e,c){var h=_tmpl_xl["c"+e];if(h==undefined){return e}var b=1;var g=0;var d="";var f="%s";while(true){var a=h.indexOf(f,g);if(a<0){d+=h.substr(g);break}d+=h.substr(g,a-g);if(b<arguments.length){d+=arguments[b]}else{d+=f}g=a+f.length;b++}return d}function tmpl_esc_js(b){var d="";for(var a=0;a<b.length;a++){var e=b.charAt(a);switch(e){case"\\":d+="\\\\";break;case"'":d+="\\'";break;case'"':d+='\\"';break;case"\n":d+="\\n";break;case"\r":d+="\\r";break;default:d+=e}}return d}function tmpl_esc_html(b){var d="";for(var a=0;a<b.length;a++){var e=b.charAt(a);switch(e){case"<":d+="&lt;";break;case">":d+="&gt;";break;case"&":d+="&amp;";break;case'"':d+="&quot;";break;case"'":d+="&#39;";break;default:d+=e}}return d};
