var helper_ajax=function(){var c=function(){try{return(new XMLHttpRequest())}catch(d){}try{return(new ActiveXObject("Msxml2.XMLHTTP.6.0"))}catch(d){}try{return(new ActiveXObject("Msxml2.XMLHTTP.3.0"))}catch(d){}try{return(new ActiveXObject("Msxml2.XMLHTTP"))}catch(d){}try{return(new ActiveXObject("Microsoft.XMLHTTP"))}catch(d){}helper_error.fatal("Could not create AJAX helper")};var b=function(k,j,d,g){var e=function(){if(this.readyState==4){clearInterval(this.timerId);g(a(this))}};var i,f;i=c();f="data="+encodeURIComponent(helper_json.encode({"class":k,method:j,args:d}));i.open("post","/invoke/action.php",g!==null);i.setRequestHeader("Content-Type","application/x-www-form-urlencoded");i.setRequestHeader("Content-Length",f.length);if(g!==null){i.onreadystatechange=e;i.timerId=setInterval(e,300)}try{i.send(f)}catch(h){helper_error.fatal("Exception when invoking XMLHttpRequest.send() for a remote call")}return(i)};var a=function(f){var d;if(f.status!=200){helper_error.fatal("Bad AJAX status "+f.status+" of call request")}try{d=helper_json.decode(f.responseText)}catch(e){helper_error.fatal("Error decoding result from call request: '"+f.responseText+"'")}return(d)};return({call:function(g,f,d){var e;e=b(g,f,d,null);if(e.readyState!=4){helper_error.fatal("AJAX call request has bad readyState '"+readyState+"'")}return(a(e))},async:function(f,e,d,g){b(f,e,d,g)},get:function(d){var f;f=c();f.open("get",d,false);try{f.send(null)}catch(e){helper_error.fatal("Exception when invoking XMLHttpRequest.send() for a remote get")}if(f.readyState!=4){helper_error.fatal("AJAX get request has bad readyState '"+readyState+"'")}if(f.status!=200){helper_error.fatal("Bad AJAX status "+f.status+" of get request for URL '"+d+"'")}return(f.responseText)}})}();var helper_browser_info=function(){var e=navigator.userAgent.toLowerCase(),b=(document.compatMode=="CSS1Compat"),k=(e.indexOf("opera")!=-1),g=(e.indexOf("chrome")!=-1),d=((g==false)&&(/webkit|khtml/).test(e)),f=((k==false)&&(e.indexOf("msie")!=-1)),i=((d==false)&&(g==false)&&(e.indexOf("gecko")!=-1)),h=((e.indexOf("windows")!=-1)||(e.indexOf("win32")!=-1)),c=((e.indexOf("macintosh")!=-1)||(e.indexOf("mac os x")!=-1)),a=(e.indexOf("adobeair")!=-1),j=(e.indexOf("linux")!=-1);return({is_strict:b,is_opera:k,is_chrome:g,is_safari:d,is_ie:f,is_gecko:i,is_windows:h,is_mac:c,is_air:a,is_linux:j})}();var helper_download=function(){return({download:function(h,g,a,c,e){var d,b,f;d=e?e:document.getElementById("frame_download");d.src="about:blank";b=d.contentWindow.document;b.open("text/html","replace");b.write('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head><title></title></head><body><form id="download_form" action="/invoke/download.php" method="post"><input id="download_data" name="data" type="hidden" /></form></body></html>');b.close();b.getElementById("download_data").value=helper_json.encode({"class":h,method:g,args:a,filename:c});f=b.getElementById("download_form");f.submit()}})}();var helper_drawing=function(){var a=function(){return(!!document.createElement("canvas").getContext)};var d=function(g,i){var j=function(o,l,n){var p=function(s,t){var w=function(D){var E,A,F,C,z,B;if(D.getBoundingClientRect){E=D.getBoundingClientRect();return({x:E.left,y:E.top})}else{if(g.getBoxObjectFor){E=g.getBoxObjectFor(D);return({x:E.x,y:E.y})}else{A=0;F=0;for(C=D;C;C=C.offsetParent){A+=C.offsetLeft;F+=C.offsetTop;z=g.defaultView.getComputedStyle(C,null);if((B=parseInt(z.getPropertyValue("border-left-width")))>0){A+=B}if((B=parseInt(z.getPropertyValue("border-top-width")))>0){F+=B}}return({x:A,y:F})}}};var v,r,u;v=w(s);r=(n?t.touches[0].clientX:t.clientX)-v.x;u=(n?t.touches[0].clientY:t.clientY)-v.y;if(s.zoom){r/=s.zoom;u/=s.zoom}return({x:r,y:u})};var m=function(r,s){r.lineTo(s.x,s.y);r.stroke()};var q,k;q="off";helper_event.add_handler(o,n?"touchstart":"mousedown",function(r){q="on";k=p(o,r);l.beginPath();l.moveTo(k.x,k.y)});helper_event.add_handler(g,n?"touchend":"mouseup",function(s){var r;if(q=="on"){r=p(o,s);if((k.x==r.x)&&(k.y==r.y)){l.arc(r.x,r.y,l.lineWidth*1.5,0,(Math.PI/180)*360,false);l.fill()}}q="off"});helper_event.add_handler(o,n?"touchmove":"mousemove",function(r){if(q=="disconnected"){q="on";l.beginPath()}if(q=="on"){m(l,p(o,r))}if(n){r.preventDefault()}});if(n==false){helper_event.add_handler(o,"mouseout",function(r){if(q=="on"){m(l,p(o,r));q="disconnected"}})}};var f=function(k){k.save();k.fillStyle="#FFF";k.fillRect(0,0,i.width,i.height);k.restore()};var h,e;h=g.createElement("canvas");h.setAttribute("width",i.width);h.setAttribute("height",i.height);h.setAttribute("style","border: 1px solid black;");e=h.getContext("2d");if(!i.readonly){e.lineWidth=1;e.strokeStyle="#000";e.fillStyle="#000";j(h,e,false);j(h,e,true)}f(e);i.dom_parent.appendChild(h);return({clear:function(){f(e)},data_get:function(){return(h.toDataURL("image/png"))},data_set:function(l){var k;k=g.createElement("img");helper_event.add_handler(k,"load",function(){e.drawImage(k,0,0,i.width,i.height)});k.src=l}})};var c=function(g){var h,f,e,i;h="/flash/drawing_pad.swf";f="readonly="+(g.readonly?"true":"false");e=helper_browser_info.is_ie?('<object id="drawing_pad_'+(b++)+'" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="'+g.width+'" height="'+g.height+'" style="border: 1px solid black;" flashVars="'+f+'"><param name="allowScriptAccess" value="sameDomain" /><param name="allowFullScreen" value="false" /><param name="movie" value="'+h+'" /><param name="quality" value="high" /><param name="bgcolor" value="#FFFFFF" /><param name="flashVars" value="'+f+'" /></object>'):('<embed type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" width="'+g.width+'" height="'+g.height+'" style="border: 1px solid black;" allowScriptAccess="sameDomain" allowFullScreen="false" src="'+h+'" quality="high" bgcolor="#FFFFFF"/>');g.dom_parent.innerHTML+=e;i=g.dom_parent.lastChild;return({clear:function(){i.pad_clear()},data_get:function(){return(i.pad_data_get())},data_set:function(j){i.pad_data_set(j)}})};var b=1;return({create:function(e){return(a()?d(e.dom_parent.ownerDocument,e):c(e))}})}();var helper_error={fatal:function(a){alert(a);throw (a)}};var helper_event={add_handler:function(b,c,a){if("addEventListener" in b){b.addEventListener(c,a,false)}else{if("attachEvent" in b){b.attachEvent("on"+c,a)}else{helper_error.fatal("Cannot set event handler")}}}};var helper_filename=function(){var a=function(b,e){var d,c;d=/[a-z0-9]+/ig;while((c=d.exec(e))!==null){b.push(c[0])}};return({build:function(b){var d,c;d=[];for(c=0;c<b.length;++c){a(d,b[c])}return(d.length?d.join("_")+".pdf":false)}})}();var helper_formula={get_idents:function(f){var e,d,b,a,c;e={};d=/[a-z_][a-z0-9_]*(?:\(\))?/ig;while((b=d.exec(f))!==null){e[b[0]]=null}a=[];for(c in e){a.push(c)}return(a)},evaluate:function(formula,idents,precision){var _int_replace=function(text,str_from,str_to){var result,pos_cur,pos_next;result="";pos_cur=0;for(;;){if((pos_next=text.indexOf(str_from,pos_cur))==-1){result+=text.substring(pos_cur);break}result+=text.substring(pos_cur,pos_next)+str_to;pos_cur=pos_next+str_from.length}return(result)};var i,result,mult;for(i in idents){if(idents[i]===null){return("N/A")}formula=_int_replace(formula,i,idents[i])}result=eval(formula);if((result==Infinity)||(result==-Infinity)||isNaN(result)){return("N/A")}if(precision!==Infinity){mult=Math.pow(10,precision);result=Math.round(result*mult)/mult}return(result)}};var helper_iframe=function(){return({create:function(a,c){var b;b=a.createElement("iframe");b.id=c;b.name=c;b.style.position="absolute";b.style.left="-10000px";b.style.top="-10000px";if(helper_browser_info.is_ie){b.src="javascript:false"}a.body.appendChild(b);if(helper_browser_info.is_ie){a.frames[c].name=c}return(b)}})}();var helper_json=function(){var _int_encode=function(value){var _int_encode_array=function(value){var result,i,encoded;result="[";for(i=0;i<value.length;++i){if(i){result+=","}encoded=_int_encode(value[i]);result+=(encoded!==undefined)?encoded:null}result="]";return(result)};var _int_encode_boolean=function(value){return(value.toString())};var _int_encode_date=function(value){var _int_pad=function(n){return((n<10)?"0"+n:n)};return('"'+value.getFullYear()+"-"+_int_pad(value.getMonth()+1)+"-"+_int_pad(value.getDate())+"T"+_int_pad(value.getHours())+":"+_int_pad(value.getMinutes())+":"+_int_pad(value.getSeconds())+'"')};var _int_encode_number=function(value){return(isFinite(value)?value.toString():"null")};var _int_encode_object=function(value){var result,started,i,encoded;result="{";started=false;for(i in value){if(value.hasOwnProperty(i)){if((encoded=_int_encode(value[i]))!==undefined){if(started){result+=","}else{started=true}result+=_int_encode_string(i)+":"+encoded}}}result+="}";return(result)};var _int_encode_string=function(value){_dat_escapable.lastIndex=0;return(_dat_escapable.test(value)?('"'+value.replace(_dat_escapable,function(ch){return((ch in _dat_meta)?_dat_meta[ch]:"\\u"+("0000"+ch.charCodeAt(0).toString(16)).slice(-4))})+'"'):'"'+value+'"')};var type,object_name;type=typeof(value);switch(type){case"boolean":return(_int_encode_boolean(value));case"number":return(_int_encode_number(value));case"string":return(_int_encode_string(value));case"object":if(value===null){return("null")}object_name=value.toString();switch(object_name){case"[object Array]":return(_int_encode_array(value));case"[object Boolean]":return(_int_encode_boolean(value.valueOf()));case"[object Date]":return(_int_encode_date(value));case"[object Number]":return(_int_encode_number(value.valueOf()));case"[object String]":return(_int_encode_string(value.valueOf()));default:return(_int_encode_object(value))}default:return(undefined)}};var _int_decode=function(text){return(eval("("+text+")"))};var _dat_escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;var _dat_meta={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};var native_json;native_json=window.JSON&&(JSON.toString()=="[object JSON]");return({encode:(native_json&&(JSON.stringify(document.createElement("input").value)!=='"null"'))?JSON.stringify:_int_encode,decode:native_json?JSON.parse:_int_decode})}();var helper_print={print:function(d,e){var c=function(g,h){var f;if((f=g.match(/^(.*?<body[^>]*?)(>.*)$/i))===null){helper_error.fatal("Could not find HTML body element")}return(f[1]+h+f[2])};var a,b;a=e?e:document.getElementById("frame_print");b=a.contentWindow.document;b.open("text/html","replace");b.write(c(d,' onload="window.focus (); window.print ();"'));b.close()}};var helper_string={parse_text_field_int:function(c){var a,b;if((a=c.match(/^\s*((?:[+-]?[0-9]+)|)\s*$/))===null){return(false)}if(a[1]==""){return(0)}b=parseInt(a[1],10);return(isNaN(b)?false:b)},trim:function(a){return(a.replace(/^\s+|\s+$/g,""))}};var helper_time=function(){var a=function(d,c){switch(d){case"%":return("%");case"a":return(c.day_of_week_name.substr(0,3));case"A":return(c.day_of_week_name);case"b":return(c.month_name.substr(0,3));case"B":return(c.month_name);case"C":return(b(Math.floor(c.year/100),2,"0"));case"d":return(b(c.day_of_month,2,"0"));case"D":return(b(c.month,2,"0")+"/"+b(c.day_of_month,2,"0")+"/"+b(c.year%100,2,"0"));case"e":return(b(c.day_of_month,2," "));case"H":return(b(c.hour_24,2,"0"));case"I":return(b(c.hour_12,2,"0"));case"m":return(b(c.month,2,"0"));case"M":return(b(c.minute,2,"0"));case"n":return("\n");case"p":return(c.is_am?"AM":"PM");case"r":return(b(c.hour_12,2,"0")+":"+b(c.minute,2,"0")+":"+b(c.second,2,"0")+" "+(c.is_am?"AM":"PM"));case"R":return(b(c.hour_24,2,"0")+":"+b(c.minute,2,"0"));case"S":return(b(c.second,2,"0"));case"t":return("\t");case"T":return(b(c.hour_24,2,"0")+":"+b(c.minute,2,"0")+":"+b(c.second,2,"0"));case"Y":return(b(c.year,4,"0"));case"y":return(b(c.year%100,2,"0"));default:return(null)}};var b=function(e,c,d){e=e.toString();while(e.length<c){e=d+e}return(e)};return({parse_seconds:function(c){return(this.parse_date(new Date(c*1000),false))},parse_date:function(i,n){var g=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var d=["January","February","March","April","May","June","July","August","September","October","November","December"];var m,l,e,h,k,p,c,j,f,o;m=n?i.getFullYear():i.getUTCFullYear();l=(n?i.getMonth():i.getUTCMonth())+1;e=n?i.getDate():i.getUTCDate();h=n?i.getDay():i.getUTCDay();k=n?i.getHours():i.getUTCHours();if(k==0){p=12;c=true}else{if(k<12){p=k;c=true}else{if(k==12){p=12;c=false}else{p=k-12;c=false}}}j=n?i.getMinutes():i.getUTCMinutes();f=n?i.getSeconds():i.getUTCSeconds();o=n?i.getMilliseconds():i.getUTCMilliseconds();return({year:m,month:l,month_name:d[l-1],day_of_month:e,day_of_week:h,day_of_week_name:g[h],hour_24:k,hour_12:p,is_am:c,minute:j,second:f,millisecond:o})},parse_string_time:function(i){var g,c,d,f,e,h;g=i.match(/^ *([0-9]+)(?:[ :.]+([0-9]+))?(?:[ :.]*(am|pm))? *$/i);if(g===null){return(false)}c=(g[3]!==undefined)?(g[3].toLowerCase()=="am"):true;d=parseInt(g[1],10);if(isNaN(d)){return(false)}if(d==0){f=0;e=12}else{if(d<12){f=c?d:d+12;e=d}else{if(d==12){f=c?0:12;e=12}else{if(d<24){f=d;e=d-12}else{return(false)}}}}if(g[2]===undefined){h=0}else{h=parseInt(g[2],10);if(isNaN(h)||(h<0)||(h>59)){return(false)}}return({hour_24:f,hour_12:e,is_am:c,minute:h})},parse_string_date:function(i){var g=function(m){var k,l;if((k=m.match(/^\s*([0-9]+)\s*$/))===null){return(false)}if(k[1]==""){return(0)}l=parseInt(k[1],10);return(isNaN(l)?false:l)};var j=function(o){var k={jan:1,feb:2,mar:3,apr:4,may:5,jun:6,jul:7,aug:8,sep:9,oct:10,nov:11,dec:12};var m={january:1,february:2,march:3,april:4,may:5,june:6,july:7,august:8,september:9,october:10,november:11,december:12};var n,l;n=helper_string.trim(o);if((/^[0-9]+$/).test(n)){return(parseInt(n,10))}l=n.toLowerCase();if(l in k){return(k[l])}if(l in m){return(m[l])}return(false)};var c=function(m){var k,l;if((k=m.match(/^\s*([0-9]+)\s*$/))===null){return(false)}if(k[1]==""){return(0)}l=parseInt(k[1],10);if(isNaN(l)){return(false)}if(k[1].length<=2){l+=1900}return(l)};var f,d,h,e;f=i.split("/");if(f.length==3){if(((d=g(f[1]))!==false)&&((h=j(f[0]))!==false)&&((e=c(f[2]))!==false)){return({day:d,month:h,year:e})}if(((d=g(f[0]))!==false)&&((h=j(f[1]))!==false)&&((e=c(f[2]))!==false)){return({day:d,month:h,year:e})}return(false)}f=i.split("-",i);if(f.length==3){if(((d=g(f[2]))!==false)&&((h=j(f[1]))!==false)&&((e=c(f[0]))!==false)){return({day:d,month:h,year:e})}return(false)}f=i.split(".",i);if(f.length==3){if(((d=g(f[0]))!==false)&&((h=j(f[1]))!==false)&&((e=c(f[2]))!==false)){return({day:d,month:h,year:e})}return(false)}return(false)},strftime:function(f,h){var g,d,e,j;g=this.parse_seconds(h);d="";e=0;while(e<f.length){if((j=f.charAt(e++))=="%"){d+=a(f.charAt(e++),g)}else{d+=j}}return(d)},get_current_day:function(){return(this.get_epoch_day(new Date()))},get_current_epoch_seconds:function(){return(this.get_epoch_seconds(new Date()))},get_epoch_day:function(c){return(Math.floor(this.get_epoch_seconds(c)/86400))},get_epoch_seconds:function(c){var d;d=Date.UTC(c.getFullYear(),c.getMonth(),c.getDate(),c.getHours(),c.getMinutes(),c.getSeconds());return(Math.floor(d/1000))},epoch_to_date:function(d){var c;c=new Date(d*86400000);return(new Date(c.getFullYear(),c.getMonth(),c.getDate()))}})}();var check_field_jump=function(b,d){var a=function(){var i=function(){var j,k;j=[];for(k=b;(k.nodeType!=1)||(k.tagName.toLowerCase()!="form");k=k.parentNode){j.unshift(k)}return(j)};var g=function(j){var k;if(j.length==0){return(false)}k=j[j.length-1];if(k.firstChild!==null){j.push(k.firstChild);return(k.firstChild)}for(;;){if(k.nextSibling!==null){j[j.length-1]=k.nextSibling;return(k.nextSibling)}j.pop();if(j.length==0){return(false)}k=j[j.length-1]}};var f,h,e;f=i();while((h=g(f))!==false){if(h.nodeType==1){e=h.tagName.toLowerCase();if(((e=="input")&&(h.getAttribute("type").toLowerCase()!="hidden"))||(e=="select")||(e=="textarea")){return(h)}}}return(false)};var c;if(b.value.length<d){return}if((c=a())===false){return}c.focus()};var helper_form_drawings=function(){var a=function(b,e,d){var c=function(f){var g,i,h;for(g in f){i=f[g];switch(i.type){case"drawing":h=helper_form_field[i.type];h[d](h.get_dom_element(b,g),i);break;case"section":c(i.fields);break}}};c(e.fields)};return({init:function(b,c){a(b,c,"init")},save:function(b,c){a(b,c,"save")}})}();var helper_form_field=function(){var a={get_dom_element:function(c,b){return(document.getElementById(c+"_"+b))},get_ext_value:function(b){return(b.value)}};return({checkbox:{get_dom_element:function(c,b){return(document.getElementById(c+"_"+b))},get_ext_value:function(b){return(b.checked)},get_formula_value:function(b){return(b.checked?1:0)},add_change_handler:function(c,b){helper_event.add_handler(c,"click",b)}},combobox:a,date:{get_dom_element:function(c,b){return(document.getElementById(c+"_"+b))},get_ext_value:function(c){var b;if((b=helper_time.parse_string_date(c.value))===false){return(null)}return(helper_time.get_epoch_day(new Date(b.year,b.month-1,b.day)))}},drawing:{get_dom_element:function(c,b){return(document.getElementById(c+"_"+b))},get_ext_value:function(b){return(b.drawing_pad.data_get())},init:function(f,d){var c,e,b;c=f.parentNode;e=helper_drawing.create({dom_parent:c,width:d.width?d.width:400,height:d.height?d.height:300,readonly:false});if(f.value){setTimeout(function(){e.data_set(f.value)},0)}b=document.createElement("input");b.setAttribute("type","button");b.setAttribute("value","Clear");helper_event.add_handler(b,"click",function(){e.clear()});c.appendChild(b);f.drawing_pad=e},save:function(b){b.value=b.drawing_pad.data_get()}},file:{get_dom_element:function(c,b){return(document.getElementById(c+"_"+b))}},formula:{get_dom_element:function(c,b){return(document.getElementById(c+"_"+b))}},hidden:a,password:a,phone:{get_dom_element:function(c,b){return({area:document.getElementById(c+"_"+b+"_area"),number:document.getElementById(c+"_"+b+"_number")})},get_ext_value:function(b){return({area:b.area.value,number:b.number.value})}},radio:{get_dom_element:function(c,b){return(document.getElementById(c+"_"+b))},get_ext_value:function(c){var d,b;d=c.getElementsByTagName("input");for(b=0;b<d.length;++b){if(d[b].checked){return(d[b].value)}}return("")},get_formula_value:function(c){var d,b;d=c.getElementsByTagName("input");for(b=0;b<d.length;++b){if(d[b].checked){return(b+1)}}return(0)},add_change_handler:function(e,d){var b,c;b=e.getElementsByTagName("input");for(c=0;c<b.length;++c){helper_event.add_handler(b[c],"click",d)}}},select:{get_dom_element:function(c,b){return(document.getElementById(c+"_"+b))},get_ext_value:function(b){return(b.value)},get_formula_value:function(d,c){var b=function(){var e;if(d.options.length==0){return(false)}e=d.options[0];return((e.value=="")&&(e.text==""))};if(d.selectedIndex==-1){return(0)}return(d.selectedIndex+(b()?0:1))},add_change_handler:function(c,b){helper_event.add_handler(c,"change",b)},adjust_width:function(c){var b;if(helper_browser_info.is_gecko||helper_browser_info.is_ie||helper_browser_info.is_opera||helper_browser_info.is_safari){b=8}else{b=null}if(b!==null){c.style.width=(c.offsetWidth+b)+"px"}}},text:{get_dom_element:function(c,b){return(document.getElementById(c+"_"+b))},get_ext_value:function(b){return(b.value)},get_formula_value:function(c){var b;if((b=helper_string.parse_text_field_int(c.value))===false){b=null}return(b)},add_change_handler:function(c,b){helper_event.add_handler(c,"keyup",b)}},textarea:{get_dom_element:function(c,b){return(document.getElementById(c+"_"+b))},get_ext_value:function(b){return(b.innerHTML)}},time:{get_dom_element:function(c,b){return(document.getElementById(c+"_"+b))},get_ext_value:function(b){return(this.get_formula_value(b))},get_formula_value:function(c){var b;if((b=helper_time.parse_string_time(c.value))===false){return(null)}return(b.hour_24*3600+b.minute*60)},add_change_handler:function(c,b){helper_event.add_handler(c,"keyup",b)}}})}();var helper_form_formulas={init:function(d,e){var b=function(){var f=function(j){var k,l,i;for(k in j){l=j[k];if(l.type in helper_form_field){i={dom:helper_form_field[l.type].get_dom_element(d,k),field_def:l};if("formula_ident" in l){h[l.formula_ident]=i}if(l.type=="formula"){g.push(i)}}else{if(l.type=="section"){f(l.fields)}}}};var h,g;h={};g=[];f(e.fields);return({idents:h,formulas:g})};var c=function(f){var h=function(p,o){var m=function(){var s,r,q;s={};for(r in n){q=n[r];s[r]=helper_form_field[q.field_def.type].get_formula_value(q.dom)}p.dom.innerHTML=helper_formula.evaluate(p.field_def.formula_text,s,2)};var j,n,l,k;j=helper_formula.get_idents(p.field_def.formula_text);n=[];for(l=0;l<j.length;++l){k=j[l];if(k in o){n[k]=o[k]}else{p.dom.innerHTML="Unknown ident: "+k;return}}for(l in n){k=n[l];helper_form_field[k.field_def.type].add_change_handler(k.dom,m)}m()};var g;for(g=0;g<f.formulas.length;++g){h(f.formulas[g],f.idents)}};var a;a=b();c(a)}};var helper_form_icons={init:function(e,b){var c=function(){var g=function(h){var j,k,i;for(j in h){k=h[j].type;if(k=="section"){g(h[j].fields)}else{if(h[j].type in helper_form_field){i=helper_form_field[h[j].type];if("get_ext_value" in i){f[j]=i.get_ext_value(i.get_dom_element(e,j))}}}}};var f;f={};g(b.fields);return(f)};var d=function(f,h,i){var g;g=document.createElement("div");g.className=f;g.onclick=function(){i({form_def:b,values:confirm(h)?c():null})};document.getElementById(e).rows[0].cells[0].appendChild(g)};var a=function(g){var f;if((f=document.getElementById(g))===null){f=helper_iframe.create(document,g)}return(f)};if("cls_print" in b){d(b.cls_print,"Do you want to preserve the values currently entered in this form? If you answer [Cancel] then a blank form will be printed.",function(f){var g=function(){var j;if((j=navigator.userAgent.toLowerCase().match(/Firefox\/([0-9]+)\./i))===null){return(false)}return(parseInt(j[1])>=4)};var h=function(){helper_print.print(i,a("window_print"))};var i;if((i=helper_ajax.call("common_static_form","get_printable",f))!==false){if(g()){setTimeout(h,3000)}else{h()}}})}if("export_pdf" in b){d(b.export_pdf.cls_icon,"Do you want to preserve the values currently entered in this form? If you answer [Cancel] then the resulting PDF file will contain a blank form.",function(f){helper_download.download("common_static_form","get_pdf",f,(("get_name" in b.export_pdf)?b.export_pdf.get_name(document.getElementById(e)):"form.pdf"),a("window_download"))})}}};var helper_form_style=function(){var b=function(f){var d,e;if(c===null){d=[];if(helper_browser_info.is_strict){d.push("agent_strict")}if(helper_browser_info.is_opera){d.push("agent_opera")}else{if(helper_browser_info.is_chrome){d.push("agent_chrome")}else{if(helper_browser_info.is_safari){d.push("agent_safari")}else{if(helper_browser_info.is_ie){d.push("agent_ie")}else{if(helper_browser_info.is_gecko){d.push("agent_gecko")}}}}}if(helper_browser_info.is_windows){d.push("agent_windows")}else{if(helper_browser_info.is_mac){d.push("agent_mac")}else{if(helper_browser_info.is_air){d.push("agent_air")}else{if(helper_browser_info.is_linux){d.push("agent_linux")}}}}c=d.join(" ")}if(c!=""){e=document.getElementById(f);e.className+=((e.className!="")?" ":"")+c}};var a=function(e,f){var d;for(d=0;d<f.length;++d){helper_form_field.select.adjust_width(helper_form_field.select.get_dom_element(e,f[d]))}};var c=null;return({init:function(d,e){b(d);a(d,e)}})}();
