var PuskFramework={_cfg:{namespace:"pf",extendArray:true,extendString:true,extendDate:true,globals:true,domain:window.location.host},ext:{},version:0,_initListeners:[]};PuskFramework.version="$Revision: 89 $".replace(/[^\d]/g,"");PuskFramework.globals=new function(){var b=PuskFramework;Function.prototype.bind=function(f){var e=this;var a=function(){return e.apply(f,arguments)};return a};this.$=function(a){return b.elem.get(a)};this.$$$=function(a,f,e){return b.elem.construct(a,f,e)};this.$_=function(a){return b.elem.remove(a)};this.$type=function(d){if(d===null){return null}if(d&&d.tagName&&!d.length){return"element"}var a=typeof d;if(a=="object"&&d.nodeName){switch(d.nodeType){case 1:return"element";case 3:return(/\S/).test(d.nodeValue)?"textnode":"whitespace"}}if(a=="object"||a=="function"){switch(d.constructor){case Array:return"array";case RegExp:return"regexp"}if(typeof d.length=="number"){if(d.item){return"collection"}}}return a};this.$time=function(d){var a=new Date().getTime();return d?a-d:a};this.$event=function(a){a=b.evt.e(a);if(a&&!a.target){a.target=a.srcElement;if(a.type=="mouseover"){a.relatedTarget=a.fromElement}else{if(a.type=="mouseout"){a.relatedTarget=a.toElement}}a.stopPropagation=function(){this.cancelBubble=true};a.preventDefault=function(){this.returnValue=false}}return a};this.$empty=function(d){switch(b.$type(d)){case"object":for(var a in d){return false}return true;case"array":return d.length==0;default:return !d}};this.$extend=function(a,e){for(var f in e){a[f]=e[f]}return a};this.$exGen=function(g,h,l,a){var k;h=h||"error";switch(h){case"type":k=new TypeError(g);break;default:k=new Error(g);break}return k};b._expandCallBack=function(k){switch(true){default:case (typeof(k)=="function"||!k):return k;case (typeof(callback)=="object"):var l=k.scope||window;var g=k.func;var h=k.args;var a=function(){if(h){for(var c=0;c<h.length;c++){arguments.push(h[c])}}return g.apply(l,arguments)};return a}}};Math.rand=function(f,e){var d=Math.random();return(f==undefined||e==undefined)?d:Math.floor(d*(e-f+1)+f)};Math.dec2hex=function(c,d){d=d||2;return pf.str.pad(Math.dec2any(c,16),d,"0")};Math.hex2dec=function(b){return Math.any2dec(b,16)};Math.dec2bin=function(c,d){d=d||0;return pf.str.pad(Math.dec2any(c,2),d,"0")};Math.bin2dec=function(b){return Math.any2dec(b,2)};Math.any2dec=function(m,q){m=m||"0";q=parseInt(q)||2;if(!m||q==10){return parseInt(m)}var l="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";if(q>1&&q<l.length){m=m.toString();var k=1,n=0;for(var h=m.length-1;h>=0;h--){var o=l.indexOf(m.charAt(h));if(o>=q){return null}n+=l.indexOf(m.charAt(h))*k;k*=q}return n}return null};Math.dec2any=function(l,n){l=parseInt(l)||0;n=parseInt(n);if(!l||n==10){return l.toString()}var k="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";if(n>1&&n<k.length){var g="";var m=Math.floor(l/n);for(var h=0;l>=n;h++){g=k.charAt(l%n)+g;l=Math.floor(l/n)}return k.charAt(l%n)+g}return null};Math.any2any=function(f,d,e){return Math.dec2any(Math.any2dec(f,d),e)};PuskFramework.browsCap=new function(){var g=window.navigator;var f=g.userAgent;function h(){if(g.plugins&&g.plugins["Shockwave Flash"]){return true}try{new ActiveXObject("ShockwaveFlash.ShockwaveFlash");return true}catch(a){}return false}this.isIE=f.indexOf("MSIE")!=-1;this.isOpera=!!window.opera;this.isSafari=f.indexOf("Safari")!=-1;this.isMozilla=!this.isSafari&&(f.indexOf("Gecko")!=-1);this.isChrome=f.indexOf("Chrome")!=-1;this.isWebkit=this.isSafari||this.isChrome;this.appVer=0;this.hasFlash=h();switch(true){case this.isIE:var e=/MSIE\s(\d(?:\.\d?))/.exec(f);this.appName="MSIE";break;case this.isOpera:this.appVer=parseFloat(window.opera.version());this.appName="Opera";break;case this.isMozilla:var e=/(?:SeaMonkey|Firefox)\/(\d(?:\.\d?)).*$/i.exec(f);this.appName="Mozilla";break;case this.isChrome:var e=/Chrome\/(\d(?:\.\d?))/i.exec(f);this.appName="Chrome";break;case this.isSafari:var e=/Version\/([\d.]+) Safari\//.exec(f);this.appName="Safari";break;default:this.appName=f.appName;this.appVer=parseFloat(f.appVer)||0;break}if(!this.appVer&&e){this.appVer=e[1]?(parseFloat(e[1])||0):0}};PuskFramework.arr=new function(){var b=PuskFramework;this.indexOf=function(f,g){if(!f||!f.length||typeof(g)=="undefined"){return -1}for(var h=0,a=f.length;h<a;h++){if(f[h]===g){return h}}return -1};this.forEach=function(g,h,k){if(g&&g.length&&b.$type(h)=="function"){for(var l=0,a=g.length;l<a;l++){h.call(k,g[l],l,g)}}};this.filter=function(k,l,n){if(!k||!k.length||!l||!b.$type(l)=="function"){return k}var m,q=[];for(var o=0,a=k.length;o<a;o++){if(o in k){m=k[o];if(l.call(n,m,o,k)){q.push(m)}}}return q};this.clone=function(a){if(!a){return null}return[].concat(a)};this.getLast=function(a){return a?a[a.length-1]:null};this.getRandom=function(a){return a?a[Math.rand(0,a.length-1)]:null};this.remove=function(d,a){if(b.$type(d)!="array"){return d}d.splice(a,1);return d};this.compare=function(f,h){if(f&&h&&f.length==h.length){for(var g=0,a=f.length;g<a;g++){if(f[g]!=h[g]){return false}}return true}return false}};PuskFramework.cookie=new function(){var b=PuskFramework;this.default_expires=2592000;this.get=function(h){if(!h){return null}var g=" "+document.cookie;var a=" "+h+"=";var f=g.indexOf(a);if(f!=-1){f+=a.length;to=g.indexOf(";",f);if(to==-1){to=g.length}return unescape(g.substring(f,to))}return null};this.set=function(n,l,h,a,m,k){if(!a){a=new Date();a.setTime(a.getTime()+this.default_expires*1000)}document.cookie=n+"="+escape(l)+((a==null)?"":"; expires="+a.toGMTString())+((h==null)?"":"; path="+h)+((m==null)?"":"; domain="+m)+((k==null)?"":"; secure")};this.remove=function(a,e,f){if(this.get(a)){document.cookie=a+"="+((e==null)?"":"; path="+e)+((f==null)?"":"; domain="+f)+"; expires=Thu, 01-Jan-70 00:00:01 GMT"}}};PuskFramework.date=new function(){this.add=function(s,m){if(!m||m==""){return false}var l=/-?(P|T)(\d+Y)?(\d+M)?(\d+D)?(T)?(\d+H)?(\d+M)?(\d+S)?/ig;var o=l.exec(m);var k=o[1];if(!k||!(k=="T"||k=="P")){return false}var r=m.charAt(0)=="-"?-1:1;for(var n=2;n<o.length;n++){if(!o[n]||!o[n].length||o[n].length<1){continue}var q=o[n].charAt(o[n].length-1);if(!q){continue}if(q=="T"){k="T"}var t=parseInt(o[n])*r;if(isNaN(t)||t==0){continue}switch(q){case"Y":s.setFullYear(s.getFullYear()+t);break;case"M":if(k=="P"){s.setMonth(s.getMonth()+t)}else{s.setMinutes(s.getMinutes()+t)}break;case"D":s.setDate(s.getDate()+t);break;case"H":s.setHours(s.getHours()+t);break;case"S":s.setSeconds(s.getSeconds()+t);break}}};this.format=function(u,m){var l=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];var o=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];var v=["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"];var q=["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря"];var n={a:function(){return u.getHours()>11?"pm":"am"},A:function(){return(this.a().toUpperCase())},B:function(){var a=(u.getTimezoneOffset()+60)*60;var c=(u.getHours()*3600)+(u.getMinutes()*60)+u.getSeconds()+a;var b=Math.floor(c/86.4);if(b>1000){b-=1000}if(b<0){b+=1000}if((String(b)).length==1){b="00"+b}if((String(b)).length==2){b="0"+b}return b},c:function(){return(this.Y()+"-"+this.m()+"-"+this.d()+"T"+this.H()+":"+this.i()+":"+this.s()+this.P())},d:function(){var a=String(this.j());return(a.length==1?"0"+a:a)},D:function(){return l[u.getDay()]},F:function(){return q[u.getMonth()]},g:function(){return u.getHours()>12?u.getHours()-12:u.getHours()},G:function(){return u.getHours()},h:function(){var a=String(this.g());return(a.length==1?"0"+a:a)},H:function(){var a=String(this.G());return(a.length==1?"0"+a:a)},i:function(){var a=String(u.getMinutes());return(a.length==1?"0"+a:a)},I:function(){var a=new Date("January 1 "+this.Y()+" 00:00:00");return(a.getTimezoneOffset()==u.getTimezoneOffset()?0:1)},j:function(){return u.getDate()},l:function(){return v[u.getDay()]},L:function(){var a=this.Y();if((a%4==0&&a%100!=0)||(a%4==0&&a%100==0&&a%400==0)){return 1}else{return 0}},m:function(){var a=String(this.n());return(a.length==1?"0"+a:a)},M:function(){return o[u.getMonth()]},n:function(){return u.getMonth()+1},N:function(){var a=this.w();return(a==0?7:a)},O:function(){var c=Math.abs(u.getTimezoneOffset());var a=String(Math.floor(c/60));var b=String(c%60);a.length==1?a="0"+a:1;b.length==1?b="0"+b:1;return u.getTimezoneOffset()<0?"+"+a+b:"-"+a+b},P:function(){var a=this.O();return(a.substr(0,3)+":"+a.substr(3,2))},r:function(){var a;a=this.D()+", "+this.d()+" "+this.M()+" "+this.Y()+" "+this.H()+":"+this.i()+":"+this.s()+" "+this.O();return a},s:function(){var a=String(u.getSeconds());return(a.length==1?"0"+a:a)},S:function(){switch(u.getDate()){case 1:return("st");case 2:return("nd");case 3:return("rd");case 21:return("st");case 22:return("nd");case 23:return("rd");case 31:return("st");default:return("th")}},t:function(){var a=[null,31,28,31,30,31,30,31,31,30,31,30,31];if(this.L()==1&&this.n()==2){return 29}return a[this.n()]},U:function(){return Math.round(u.getTime()/1000)},w:function(){return u.getDay()},W:function(){var d=this.N();var b=this.z();var c=364+this.L()-b;if(c<=2&&d<=(3-c)){return 1}if(b<=2&&d>=5){return new Date(this.Y()-1,11,31).format("W")}var a=new Date(this.Y(),0,1).getDay();a=a!=0?a-1:6;if(a<=3){return(1+Math.floor((b+a)/7))}else{return(1+Math.floor((b-(7-a))/7))}},y:function(){var a=String(this.Y());return a.substring(a.length-2,a.length)},Y:function(){if(u.getFullYear){var b=new Date("January 1 2001 00:00:00 +0000");var c=b.getFullYear();if(c==2001){return u.getFullYear()}}var c=u.getYear();var a=c%100;a+=(a<38)?2000:1900;return a},z:function(){var b=new Date("January 1 "+this.Y()+" 00:00:00");var a=u.getTime()-b.getTime();return Math.floor(a/1000/60/60/24)},Z:function(){return(u.getTimezoneOffset()*-60)}};function s(a){if(n[a]!=undefined){return n[a]()}else{return a}}var t=m.split("");var r=0;while(r<t.length){if(t[r]=="\\"){t.splice(r,1)}else{t[r]=s(t[r])}r++}return t.join("")};this.getDST=function(l){l=l||new Date();var f=new Date(Date.UTC(l.getUTCFullYear(),2,31));var k=new Date(Date.UTC(l.getUTCFullYear(),2,31-f.getUTCDay()));var g=new Date(Date.UTC(l.getUTCFullYear(),9,31));var h=new Date(Date.UTC(l.getUTCFullYear(),9,31-g.getUTCDay()));return((l>=k)&&(l<h))?60:0};this.gmt2local=function(b){b=b||new Date();return new Date(b-b.getTimezoneOffset()*60000)}};PuskFramework.elem=new function(){var pf=PuskFramework;this.get=function(elementId){return(typeof elementId=="string")?document.getElementById(elementId):elementId};this.construct=function(elem,attributes,cssStyle){if(!elem){return false}var node,handlers={};var IE=
/*@cc_on!@*/
false;if(typeof cssStyle=="string"){cssStyle=pf.str.toHash(cssStyle,";",":")}if(IE){var str="<"+elem}else{node=document.createElement(elem)}for(var i in attributes){switch(true){case (i=="innerHTML"):break;case (i.startsWith("on")&&(typeof attributes[i]=="function")):handlers[i.substr(2)]=attributes[i];break;case (i=="className"):if(IE){str+=(' class="'+attributes[i]+'"')}else{node[i]=attributes[i]}break;default:if(IE){str+=(" "+i+'="'+attributes[i]+'"')}else{node.setAttribute(i,attributes[i])}break}}if(IE){str+=">";node=document.createElement(str)}if(attributes&&attributes.innerHTML){node.innerHTML=attributes.innerHTML}for(var i in handlers){pf.evt.add(node,i,handlers[i])}for(var i in cssStyle){node.style[pf.str.camelize(i)]=cssStyle[i]}return node};this.toggle=function(elem,arg){if(pf.$type(elem)!="element"){throw pf.$exGen("pf.element.toggle(): typeof(elem) argument is "+pf.$type(elem)+', "element" expected')}if(!elem||elem.nodeType!=1){return false}switch(arg){case"on":case true:elem.style.display="";return true;case"off":case false:elem.style.display="none";return false;default:return(elem.style.display=(elem.style.display=="none"?"":"none"))?false:true}};this.getStyle=function(elem,CSSStyleProp){if(pf.$type(elem)!="element"){throw pf.$exGen("pf.element.getStyle(): typeof(elem) argument is "+pf.$type(elem)+', "element" expected')}if(!elem||elem.nodeType!=1){return false}if(elem.currentStyle){var IEStyleProp=pf.str.camelize(CSSStyleProp);return elem.currentStyle[IEStyleProp]}else{if(window.getComputedStyle){var compStyle=window.getComputedStyle(elem,"");return compStyle.getPropertyValue(CSSStyleProp)}}return""};this.hasClass=function(elem,cname){if(pf.$type(elem)!="element"){throw pf.$exGen("pf.element.hasClass(): typeof(elem) argument is "+pf.$type(elem)+', "element" expected')}if(!elem||elem.nodeType!=1){return false}var a=elem.className.split(/\s+/);for(var i=0;i<a.length;i++){if(a[i]==cname){return true}}return false};this.addClass=function(elem,cname){if(pf.$type(elem)!="element"){throw pf.$exGen("pf.element.addClass(): typeof(elem) argument is "+pf.$type(elem)+', "element" expected')}if(!elem){return false}if(pf.elem.hasClass(elem,cname)){return false}elem.className+=" "+cname;return true};this.delClass=function(elem,cname){if(pf.$type(elem)!="element"){throw pf.$exGen("pf.element.delClass(): typeof(elem) argument is "+pf.$type(elem)+', "element" expected')}if(!elem){return false}var a=elem.className.split(/\s+/);var newName="";for(var i=0;i<a.length;i++){if(a[i]!=cname){newName+=" "+a[i]}}elem.className=newName;return true};this.findAncestor=function(elem,conditions,choise){if(pf.$type(elem)!="element"){throw pf.$exGen("pf.element.findAncestor(): typeof(elem) argument is "+pf.$type(elem)+', "element" expected')}do{if(pf.$empty(elem)){return null}var ok=true;for(var key in conditions){var cond=(key=="hasClass")?pf.elem.hasClass(elem,conditions[key]):(elem[key]==conditions[key]||elem.getAttribute(key)==conditions[key]);if(cond&&choise){return elem}if(!cond){ok=false;if(!choise){break}}}if(ok){return elem}}while((elem=elem.parentNode)!=document.documentElement);return false};this.setOpacity=function(elem,opacity){if(pf.$type(elem)!="element"){throw pf.$exGen("pf.element.setOpacity(): typeof(elem) argument is "+pf.$type(elem)+', "element" expected')}if(!elem){return false}if(opacity==null){opacity=100}if(isNaN(opacity)){opacity=parseFloat(opacity)}if(opacity<=1){opacity=opacity*100}if(opacity<0){opacity=0}elem.style.filter="alpha(opacity="+opacity+")";opacity=opacity/100;elem.style.MozOpacity=opacity;elem.style.KhtmlOpacity=opacity;elem.style.opacity=opacity};this.getText=function(elem){if(pf.$type(elem)!="element"){throw pf.$exGen("pf.element.getText(): typeof(elem) argument is "+pf.$type(elem)+', "element" expected')}if(!elem){return""}return elem.text||elem.textContent||elem.innerText};this.remove=function(elem){elem=pf.$(elem);if(pf.$type(elem)=="string"){elem=pf.$(elem)}if(elem&&elem.parentNode){var p=elem.parentNode;return(p.removeChild(elem))}return(false)};this.replaceWith=function(oldElem,newElem){if(pf.$type(oldElem)=="string"){oldElem=pf.$(oldElem)}if(pf.$type(oldElem)!="element"){throw pf.$exGen("pf.element.replaceWith(): typeof(oldElem) argument is "+pf.$type(oldElem)+', "element" expected')}if(pf.$type(newElem)=="string"){newElem=pf.$(newElem)}if(pf.$type(newElem)!="element"){throw pf.$exGen("pf.element.replaceWith(): typeof(newElem) argument is "+pf.$type(newElem)+', "element" expected')}if(!oldElem||oldElem.nodeType!=1||!newElem||newElem.nodeType!=1){return false}oldElem.parentNode.insertBefore(newElem,oldElem);pf.elem.remove(oldElem)};this.loadContent=function(elem,url,callback,onerror){if(pf.$type(elem)!="element"){throw pf.$exGen("pf.element.loadContent(): typeof(elem) argument is "+pf.$type(elem)+', "element" expected')}if(!elem||!url){return false}return pf.ajax.get({url:url,onSuccess:function(req){try{elem.innerHTML=req.responseText;if(callback){callback(req,url)}}catch(err){debugError("не получается выполнить коллбэк! "+err.name+" : "+err.message);serverSetStatus("error")}},onError:function(req){debugError("Ошибка запроса!\nСтатус="+req.statusText);serverSetStatus("error");if(onerror){onerror(req)}}})};this.getChildElements=function(elem,tag){if(pf.$type(elem)!="element"){throw pf.$exGen("pf.element.getChildElements(): typeof(elem) argument is "+pf.$type(elem)+', "element" expected')}if(!elem||!elem.childNodes){return false}var ch=[];var el=elem.childNodes;for(var i=0,len=el.length;i<len;i++){if(el[i].tagName&&el[i].tagName==tag){ch.push(el[i])}}return ch};this.getFirstChild=function(elem){if(pf.$type(elem)!="element"){throw pf.$exGen("pf.element.getFirstChild(): typeof(elem) argument is "+pf.$type(elem)+', "element" expected')}if(!elem||!elem.childNodes){return false}var ch=[];var el=elem.childNodes;for(var i=0,len=el.length;i<len;i++){if(el[i].tagName){return(el[i])}}return false};this.insertAfter=function(newNode,existingNode){if(pf.$type(newNode)=="string"){newNode=pf.$(newNode)}if(pf.$type(newNode)!="element"){throw pf.$exGen("pf.element.getFirstChild(): typeof(newNode) argument is "+pf.$type(newNode)+', "element" expected')}if(pf.$type(existingNode)=="string"){existingNode=pf.$(existingNode)}if(pf.$type(existingNode)!="element"){throw pf.$exGen("pf.element.getFirstChild(): typeof(existingNode) argument is "+pf.$type(existingNode)+', "element" expected')}if(!existingNode||!existingNode.parentNode){return false}return existingNode.parentNode.insertBefore(newNode,existingNode.nextSibling)};this.containsDOM=function(container,containee){if(!containee||!containee.parentNode){return false}var isParent=false;do{if(isParent=(container==containee)){break}containee=containee.parentNode}while(containee!=null);return isParent};this.getScrolls=function(elem){if(!elem||elem.nodeType!=1){return{x:0,y:0}}var position={x:0,y:0};while(elem&&elem!=document.documentElement){position.x+=elem.scrollLeft;position.y+=elem.scrollTop;if(pf.elem.getStyle(elem,"position")=="fixed"){position.x-=document.documentElement.scrollLeft;position.x-=document.body.scrollLeft;position.y-=document.documentElement.scrollTop;position.y-=document.body.scrollTop;return position}elem=elem.parentNode}return position};this.getPosition=function(elem){if(!elem||elem==document.documentElement){return{x:0,y:0}}var pos=this.getScrolls(elem);pos.x=-1*pos.x;pos.y=-1*pos.y;if(elem.offsetParent){pos.x+=elem.offsetLeft;pos.y+=elem.offsetTop;while(elem=elem.offsetParent){pos.x+=elem.offsetLeft;pos.y+=elem.offsetTop}}return pos};this.setLoading=function(elem,isLoading){if(!elem||elem.nodeType!=1){return false}var cname="loading";switch(isLoading){case"on":pf.elem.addClass(elem,cname);return true;case"off":pf.elem.delClass(elem,cname);return false;default:return this.setloading(elem,pf.elem.hasClass(elem,cname)?"off":"on")}}};PuskFramework.evt=new function(){var b=PuskFramework;this.keys={8:"backspace",9:"tab",13:"enter",27:"esc",37:"left",38:"up",39:"right",40:"down",46:"delete",36:"home",35:"end",33:"pageup",34:"pagedown",45:"insert"};this.e=function(a){return a||window.event};this.add=function(f,a,e){e=b._expandCallBack(e);switch(a){case"mousewheel":if(b.browsCap.isMozilla){a="DOMMouseScroll"}break;case"dataavailable":if(!b.browsCap.isIE){a="DOMContentLoaded"}break}if(document.attachEvent){f.attachEvent("on"+a,e)}else{if(document.addEventListener){f.addEventListener(a,e,true)}}};this.addListener=this.add;this.remove=function(f,a,e){e=b._expandCallBack(e);switch(a){case"mousewheel":if(b.browsCap.isMozilla){a="DOMMouseScroll"}break;case"dataavailable":if(!b.browsCap.isIE){a="DOMContentLoaded"}break}if(document.detachEvent){f.detachEvent("on"+a,e)}else{if(document.removeEventListener){f.removeEventListener(a,e,true)}}};this.removeListener=this.remove;this.del=this.remove;this.stop=function(a){a=b.$event(a);a.stopPropagation();a.preventDefault();return false};this.getKeyName=function(a){a=this.e(a);var d=a.keyCode;return this.keys[d]||d};this.getPosition=function(f){f=this.e(f);var a=0,e=0;if(f.pageX||f.pageY){a=f.pageX;e=f.pageY}else{if(f.clientX||f.clientY){a=f.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft)-document.documentElement.clientLeft;e=f.clientY+(document.documentElement.scrollTop||document.body.scrollTop)-document.documentElement.clientTop}}return{x:a,y:e}};this.getWheel=function(a){a=this.e(a);var d=0;if(a.wheelDelta){d=a.wheelDelta/120}else{if(a.detail){d=-a.detail/3}}this.stop(a);return d||false};this.mouseIn=function(k,m){var h=this.getPosition(m);var a=pr.elem.getPosition(k);var n=parseInt(k.offsetWidth);var l=parseInt(k.offsetHeight);return((h.x>a.x)&&(h.x<a.x+n)&&(h.y>a.y)&&(h.y<a.y+l))};this.checkMouseOver=function(d,a){a=this.e(a);if(d.contains){return !d.contains(a.fromElement)}if(a.relatedTarget){return !b.elem.containsDOM(d,a.relatedTarget)}};this.checkMouseOut=function(f,a){a=this.e(a);if(f.contains){return !f.contains(a.toElement)}try{if(a.relatedTarget){return !b.elem.containsDOM(f,a.relatedTarget)}}catch(e){return false}}};PuskFramework.form=new function(){var d=PuskFramework;var f={input:[],button:[],textarea:[],select:[]};var e=function(c,a){for(var l in f){f[l]=c.getElementsByTagName(l);for(var b=0,k=f[l].length;b<k;b++){a(l,b)}}};this.getValues=function(s){if(d.$type(s)=="string"){s=d.$(s)}if(d.$type(s)!="element"){throw d.$exGen("pf.form.getValues(): typeof(theform) argument is "+d.$type(s)+', "element" expected')}var l=s.elements;if((d.$type(l)!="collection")&&(d.$type(l)!="element")){throw d.$exGen("pf.form.getValues(): typeof(theform.elements) is "+d.$type(s.elements)+', "collection" or "element" expected')}var a={};for(var b=0,q=l.length;b<q;b++){var t=l[b];if(!t.disabled&&t.type){switch(t.type.toLowerCase()){case"checkbox":case"radio":if(!t.checked){break}case"hidden":case"password":case"search":case"text":case"textarea":if(a[t.name]){if(typeof(a[t.name])=="string"){a[t.name]=[a[t.name]]}a[t.name].push(t.value)}else{a[t.name]=t.value}break;case"select-one":if(t.selectedIndex>=0){if(a[t.name]){if(typeof(a[t.name])=="string"){a[t.name]=[a[t.name]]}a[t.name].push(t.options[t.selectedIndex].value)}else{a[t.name]=t.options[t.selectedIndex].value}}break;case"select-multiple":if(a[t.name]){if(typeof(a[t.name][0])=="string"){a[t.name]=[a[t.name]]}var u=[];for(var c=0,r=t.options.length;c<r;c++){if(t.options[c].selected){u.push(t.options[c].value)}}a[t.name].push(u)}else{a[t.name]=[];for(var c=0,r=t.options.length;c<r;c++){if(t.options[c].selected){a[t.name].push(t.options[c].value)}}}break}}}return a};this.serialize=function(l){if(d.$type(l)=="string"){l=d.$(l)}if(d.$type(l)!="element"){throw d.$exGen("pf.form.serialize(): typeof(theform) is "+d.$type(l)+', "element" expected')}var a=l.elements;if((d.$type(a)!="collection")&&(d.$type(a)!="element")){throw d.$exGen("pf.form.serialize(): typeof(theform.elements) is "+d.$type(l.elements)+', "collection" expected')}var q=[];for(var b=0,o=a.length;b<o;b++){var s=a[b];if(!s.disabled&&s.type){switch(s.type.toLowerCase()){case"checkbox":case"radio":if(!s.checked){break}case"hidden":case"password":case"search":case"text":case"textarea":q.push(s.name+"="+encodeURIComponent(s.value));break;case"select-one":if(s.selectedIndex>=0){q.push(s.name+"="+encodeURIComponent(s.options[s.selectedIndex].value))}break;case"select-multiple":for(var c=0,r=s.options.length;c<r;c++){if(s.options[c].selected){q.push(s.name+"="+encodeURIComponent(s.options[c].value))}}break}}}return q.join("&")};this.enable=function(a){if(d.$type(a)=="string"){a=d.$(a)}if(d.$type(a)!="element"){throw d.$exGen("pf.form.enable(): typeof(theform) is "+d.$type(a)+', "element" expected')}if((d.$type(a.elements)!="collection")&&(d.$type(a.elements)!="element")){throw d.$exGen("pf.form.enable(): typeof(theform.elements) is "+d.$type(a.elements)+', "collection" or "element" expected')}e(a,function(c,b){f[c][b].removeAttribute("disabled")});return true};this.disable=function(a){if(d.$type(a)=="string"){a=d.$(a)}if(d.$type(a)!="element"){throw d.$exGen("pf.form.disable(): typeof(theform) is "+d.$type(a)+', "element" expected')}if((d.$type(a.elements)!="collection")&&(d.$type(a.elements)!="element")){throw d.$exGen("pf.form.disable(): typeof(theform.elements) is "+d.$type(a.elements)+', "collection" or "element" expected')}e(a,function(c,b){f[c][b].setAttribute("disabled","true")});return true};this.validate=function(B){if(d.$type(B)=="string"){B=d.$(B)}if(d.$type(B)!="element"){throw d.$exGen("pf.form.validate(): typeof(theform) is "+d.$type(B)+', "element" expected')}if((d.$type(B.elements)!="collection")&&(d.$type(B.elements)!="element")){throw d.$exGen("pf.form.validate(): typeof(theform.elements) is "+d.$type(B.elements)+', "collection" expected')}var l={};for(var y=0,z=B.elements.length;y<z;y++){var A=B.elements[y];if(!A.disabled&&(A.tagName=="INPUT"||A.tagName=="TEXTAREA")&&A.getAttribute("type")!="button"){if((A.getAttribute("required")=="Y"||A.getAttribute("required")=="required")&&(A.value.trim()=="")){d.form._markError(A);return false}else{d.form._unmarkError(A)}l[A.name]=A;var b=A.getAttribute("validate");if(b&&(A.value!=""&&A.value!=A.getAttribute("default"))){switch(b){case"mail":b=G(A.value);break;case"integer":b=x(A.value);break;case"date":b=c(A.value);break;default:break}if(!b){d.form._markError(A);return false}}var F=A.getAttribute("minVal");var E=A.getAttribute("maxVal");var a=F&E;if(F){F=F>parseInt(A.value)}if(E){E=parseInt(A.value)>E}if(((F||E)&&!a)||((F||E)&&a)){d.form._markError(A);return false}else{d.form._unmarkError(A)}var D=A.getAttribute("mask");if(D&&A.value!=""){try{var C=new RegExp(D);D=C.test(A.value);if(!D){d.form._markError(A);return false}}catch(w){}}}}for(prop in l){if(l[prop+"_copy"]&&(l[prop+"_copy"].value!=l[prop].value)){d.form._markError(l[prop+"_copy"]);return false}}return true;function G(g){var h=/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;return(h.test(g))}function x(g){var h=/^[0-9]+$/;return(h.test(g))}function c(g){var h=/\b(0?[1-9]|[12][0-9]|3[01])[- /.](0?[1-9]|1[012])[- /.](19|20)?[0-9]{2}\b/;return(h.test(g))}};this._markError=function(b){d.elem.addClass(b,"errorInput");try{b.focus()}catch(a){}return true};this._unmarkError=function(a){if(d.elem.hasClass(a,"errorInput")){d.elem.delClass(a,"errorInput")}return true}};PuskFramework.hash=new function(){var b=PuskFramework;this.indexOf=function(e,f){if(typeof(e)!="object"){return -1}for(var a in e){if(e[a]==f){return a}}return -1};this.forEach=function(f,g,h){if(typeof(f)=="object"&&b.$type(g)=="function"){for(var a in f){g.call(h,f[a],a,f)}}};this.clone=function(e){if(typeof(e)!="object"){return e}var f=e.constructor();for(var a in e){f[a]=b.hash.clone(e[a])}return f};this.filter=function(l,h,m){if(typeof(l)!="object"||typeof(h)!="function"){return l}m=m||null;var k,a={};for(var n in l){k=l[n];if(h.call(m,k,n,this)){a[n]=k}}return a};this.merge=function(k,l){var o={};for(var q=0,a=arguments.length;q<a;q++){for(var m in arguments[q]){var r=arguments[q][m];var n=o[m];if(n&&b.$type(r)=="object"&&b.$type(n)=="object"){o[m]=this.merge(n,r)}else{o[m]=r}}}return o};this.getLength=function(f,a){if(typeof(f)!="object"){return 0}var g=0;for(var h in f){if(!a||typeof f[h]!="function"){g++}}return g};this.getKeys=function(f,a){if(typeof(f)!="object"){return[]}var g=[];for(var h in f){if(!a||typeof f[h]!="function"){g.push(h)}}return g};this.getValues=function(f,h){var a=[];for(var g in f){if(!h||typeof f[g]!="function"){a.push(f[g])}}return a};this.serialize=function(h,k){if(k==null){k=""}if(h instanceof Object){var a=[];for(var l in h){var n=h[l];if(n===null){n=""}if(((n.constructor||{}).prototype||{})[l]){continue}var m=k?k+"["+encodeURIComponent(l)+"]":encodeURIComponent(l);if(n instanceof Object){a.push(b.hash.serialize(n,m))}else{a.push(m+"="+encodeURIComponent(n))}}}else{var a=[h]}return a.join("&")};this.compare=function(e,a){if(!e||!a){return false}if(!b.arr.compare(b.hash.getKeys(e),b.hash.getKeys(a))){return false}for(var f in e){if(typeof a[f]!==typeof e[f]){return false}if(e[f] instanceof Object){switch(b.$type(e[f])){case"function":if(e[f]!=a[f]){return false}break;case"array":if(!b.arr.compare(e[f],a[f])){return false}break;default:if(!b.hash.compare(e[f],a[f])){return false}break}continue}if(e[f]!==a[f]){return false}}return true};this.flatten=function(l,m){if(m==null){m=""}if(l instanceof Object){var a={};for(var n in l){var r=l[n];if(((r.constructor||{}).prototype||{})[n]){continue}var o=m?m+"["+n+"]":n;if(r instanceof Object){var q=(b.hash.flatten(r,o));for(var k in q){a[k]=q[k]}}else{a[o]=r}}}else{var a=l?[l]:[]}return a}};PuskFramework.str=new function(){var b=PuskFramework;this.pad=function(h,a,f,g){h=h||"";return f||(f=" "),(a-=h.length)>0?(f=new Array(Math.ceil(a/f.length)+1).join(f)).substr(0,g=!g?a:g==1?0:Math.ceil(a/2))+h+f.substr(0,a-g):h};this.trim=function(a){a=a||"";a=a.toString();a=a.replace(/^[\s\n]+/g,"");a=a.replace(/[\s\n]+$/g,"");return a};this.stripTags=function(a){a=a||"";return a.replace(/(<[^>]+>)/g,"")};this.escapeHtml=function(a){a=a||"";return a.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")};this.unescapeHtml=function(a){a=a||"";return a.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&")};this.truncate=function(f,e,a){f=f||"";e=e||30;a=a||"...";return f.length>e?f.slice(0,e)+a:f};this.contains=function(h,f,a){h=h||"";var g=h;if(a){g=g.toLowerCase();f=f.toLowerCase()}return g.indexOf(f)>-1};this.startsWith=function(h,f,a){h=h||"";f=f||"";var g=h;if(a){g=g.toLowerCase();f=f.toLowerCase()}return g.indexOf(f)===0};this.endsWith=function(l,h,a){l=l||"";h=h||"";var k=l;if(a){k=k.toLowerCase();h=h.toLowerCase()}var d=k.length-h.length;return d>=0&&k.lastIndexOf(h)===d};this.camelize=function(m){if(!m){return""}var k=m.split("-");if(k.length==1){return k[0]}var n=m.indexOf("-")==0?k[0].charAt(0).toUpperCase()+k[0].substring(1):k[0];for(var l=1,a=k.length;l<a;l++){var h=k[l];n+=h.charAt(0).toUpperCase()+h.substring(1)}return n};this.toHash=function(k,l,n){if(!k){return""}l=l||"&";n=n||"=";var o={};var m,q=k.split(l);for(var r=0,a=q.length;r<a;r++){m=(q[r]).split(n);if(m[1]!=undefined){o[b.str.trim(decodeURIComponent(m[0]))]=b.str.trim(decodeURIComponent(m[1]))}}return o};this.oneOf=function(d){d=d||"";d=d.toString();if(arguments.length<1){return false}for(var a=1;a<arguments.length;a++){if(d===arguments[a].toString()){return true}}return false}};PuskFramework.window=new function(){var b=PuskFramework;this.getClientWidth=function(){var a=0;if(document.body){a=Math.min(document.body.clientWidth,document.body.scrollWidth)}return a};this.getClientHeight=function(){var a=0;if(self.innerHeight){a=self.innerHeight}else{if(document.documentElement&&document.documentElement.clientHeight){a=document.documentElement.clientHeight}else{if(document.body){a=document.body.clientHeight}}}return a};this.getDocumentWidth=function(){var a=0;var d=(document.documentElement&&document.documentElement.offsetWidth)?document.documentElement:document.body;return(d.scrollWidth>d.offsetWidth)?d.scrollWidth:d.offsetWidth-a};this.getDocumentHeight=function(){var a=(document.documentElement&&document.documentElement.offsetHeight)?document.documentElement:document.body;return(a.scrollHeight>a.offsetHeight)?a.scrollHeight:a.offsetHeight};this.getBodyScrollTop=function(){return self.pageYOffset||(document.documentElement&&document.documentElement.scrollTop)||(document.body&&document.body.scrollTop)};this.getBodyScrollLeft=function(){return self.pageXOffset||(document.documentElement&&document.documentElement.scrollLeft)||(document.body&&document.body.scrollLeft)}};PuskFramework.xml=new function(){var d=PuskFramework;this.createDocument=function(g,b){g=g||"";b=b||null;if(window.ActiveXObject){var h=b?' xmlns="'+b+'"':"";var a=new ActiveXObject("Msxml2.DOMDocument.3.0");a.async=false;if(g!=""){a.loadXML("<"+g+h+"/>")}}else{var a=document.implementation.createDocument(b,g,null)}return a};this.createElement=function(k,l,a){if(!k){throw {message:"PuskFramework.xml.createElement: No element name"}}a=a||false;if(l&&(typeof l.xmlns!="undefined")&&(typeof this._doc.createElementNS=="function")){var b=this._doc.createElementNS(l.xmlns,k)}else{var b=this._doc.createElement(k)}if(l){this.setAttributes(b,l)}if(typeof a=="string"){b.appendChild(this._doc.createTextNode(a))}else{if(a.tagName){b.appendChild(a)}else{if(d.$type(a)=="array"){for(var h=0;h<a.length;h++){b.appendChild(a[h])}}}}return b};this.parse=function(f){if(!f){return d.xml.createDocument()}if(window.ActiveXObject){var b=new ActiveXObject("Microsoft.XMLDOM");b.async=false;b.validateOnParse=false;b.loadXML(f)}else{var a=new DOMParser();var b=a.parseFromString(f,"text/xml")}return b};this.serialize=function(a){if(!a){return false}if(typeof XMLSerializer!="undefined"){return(new XMLSerializer()).serializeToString(a)}else{if(a.xml){return a.xml}else{throw"XML.serialize is not supported or can't serialize "+a}}};this.setAttributes=function(b,f){if(b&&b.nodeType==1){for(var a in f){if(f[a]!=""){if(f[a]==null){f[a]=""}b.setAttribute(a,f[a].toString?f[a].toString():f[a])}}}};this.fragment2document=function(m,b){var k=d.xml.createDocument("document");if(!m){return k}b=b||{};var a=k.documentElement;if(b.id){a.setAttribute("xhrId",b.id)}if(b.instance){a.setAttribute("instance",b.instance)}for(var l=0,n=m.childNodes.length;l<n;l++){a.appendChild(m.childNodes[l].cloneNode(true))}return k};this.get=function(a,f,b){if(d.$type(a)!="element"){throw d.$exGen("pf.xml.get(): typeof(elem) argument is "+d.$type(a)+', "element" expected')}if(b&&b!=""){if(typeof a.getElementsByTagNameNS=="function"){return a.getElementsByTagNameNS(b,f)}else{a.ownerDocument.setProperty("SelectionLanguage","XPath");return a.selectNodes("*[local-name()='"+f+"' and namespace-uri()='"+b+"']")}}else{return a.getElementsByTagName(f)}};this.ns=function(a){if(d.$type(a)!="element"){throw d.$exGen("pf.xml.ns(): typeof(elem) argument is "+d.$type(a)+', "element" expected')}return(a.namespaceURI||a.getAttribute("xmlns")||null)};this.tag=function(a){if(d.$type(a)!="element"){throw d.$exGen("pf.xml.tag(): typeof(elem) argument is "+d.$type(a)+', "element" expected')}return(a.localName||a.nodeName||a.tagName||null)};this._doc=this.createDocument("dummy");if(d.browsCap.isSafari){function c(){var a=Element.prototype.appendChild;Element.prototype.appendChild=function(b){if(this.ownerDocument==b.ownerDocument){return a.call(this,b)}return a.call(this,this.ownerDocument.adoptNode(b))}}c()}};if(window.XMLDocument&&document.implementation.hasFeature("XPath","3.0")&&!XMLDocument.prototype.selectNodes){XMLDocument.prototype.selectNodes=function(m,l){if(!l){l=this}var g=this.createNSResolver(this.documentElement);var h=this.evaluate(m,l,g,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);var k=[];for(var n=0;n<h.snapshotLength;n++){k[n]=h.snapshotItem(n)}return k};XMLDocument.prototype.selectSingleNode=function(h,g){if(!g){g=this}var e=this.createNSResolver(this.documentElement);var f=this.evaluate(h,g,e,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);if(f.snapshotLength>0){return f.snapshotItem(0)}else{return null}};Element.prototype.selectNodes=function(b){if(this.ownerDocument.selectNodes){return this.ownerDocument.selectNodes(b,this)}else{throw"For XML Elements Only"}};Element.prototype.selectSingleNode=function(b){if(this.ownerDocument.selectSingleNode){return this.ownerDocument.selectSingleNode(b,this)}else{throw"For XML Elements Only"}}}function CXSLTTransformer(){this.XSLCacheIDX=[];this.XSLCacheXML=[];this.defaultOpts={async:true,output:"string",callback:null,container:null};var cachePointer=0;var maxCacheItems=20;var pf=PuskFramework;var me=this;function disableOutputEscaping(elem){var container,doeyContainers=elem.getElementsByTagName("VAR");var toDelete=[];var cn=doeyContainers.length;for(var i=0;i<cn;i++){container=doeyContainers[i];if(!pf.elem.hasClass(container,"doey")){continue}var d=pf.$$$("div");d.innerHTML=pf.str.unescapeHtml(container.innerHTML);var p=container.parentNode;while(d.firstChild){p.insertBefore(d.firstChild,container)}toDelete.push(container)}for(var i=0;i<toDelete.length;i++){pf.$_(toDelete[i])}return elem}function undoey(x){var doeys=x.selectNodes('//*[@disable-output-escaping = "yes"]');for(var i=0,l=doeys.length;i<l;i++){var dummy=pf.$$$("var");dummy.setAttribute("class","doey");doeys[i].parentNode.insertBefore(dummy,doeys[i]);dummy.appendChild(doeys[i])}}function getResType(res){var type=pf.$type(res);switch(true){case (type=="object"||type=="element"):return"DOM";case (type=="string"&&pf.str.startsWith(res,"<?xml",true)):return"XML";case (type=="string"&&res.length>4):return"URL"}return false}function getXML(res,scope,callback){scope=scope||"xml";var resType=getResType(res);var async=(pf.$type(callback)=="function");switch(resType){case"DOM":return res;case"XML":return pf.xml.parse(res);case"URL":if(async){pf.ajax.get({url:res,onSuccess:function(req){return callback(req.responseXML)},generateUniqueUrl:false});return false}else{var req=pf.ajax.get({url:res,generateUniqueUrl:false,async:false});return req.responseXML}default:throw pf.$exGen("xslt.transform(): typeof(xml) argument is unknown, expected object|element|string")}}function getXSL(xsl,callback){var async=(pf.$type(callback)=="function");var resType=getResType(xsl);if(resType=="URL"){var cacheRec=pf.arr.indexOf(me.XSLCacheIDX,xsl);if(me.XSLCacheIDX[cacheRec]){return me.XSLCacheXML[cacheRec]}}var xslObj=getXML(xsl,"xsl",async?_prepare:null);if(!async||xslObj){return _prepare(xslObj)}function _prepare(xslObj){if(pf.browsCap.isMozilla){undoey(xslObj)}if(resType=="URL"){if(cachePointer>=maxCacheItems){cachePointer=0;me.XSLCacheXML[cachePointer]=xslObj;me.XSLCacheIDX[cachePointer]=xsl}else{me.XSLCacheXML.push(xslObj);me.XSLCacheIDX.push(xsl)}cachePointer++}return(async)?callback(xslObj):xslObj}}function getOutputMethod(xsl){var tags=xsl.documentElement.childNodes;var method="html";for(var i=0;i<tags.length;i++){if(tags[i].tagName=="xsl:output"){method=tags[i].getAttribute("method");break}}return method}function doTransformNative(xml,xsl,arg,method,output){var oXSLTProcessor=new XSLTProcessor();oXSLTProcessor.importStylesheet(xsl);for(var prop in arg){if(arg[prop]===0){arg[prop]="0"}if(prop!=""&&arg[prop]&&arg[prop].toString){oXSLTProcessor.setParameter("",prop,arg[prop].toString())}}if(method=="xml"){return(output=="dom")?oXSLTProcessor.transformToDocument(xml):pf.xml.serialize(oXSLTProcessor.transformToDocument(xml))}var d=pf.$$$("div");d.appendChild(oXSLTProcessor.transformToFragment(xml,document));if(pf.browsCap.isMozilla){d=disableOutputEscaping(d)}d.innerHTML=postProcessJs(d.innerHTML);switch(output){default:case"string":return d.innerHTML;case"dom":var f=document.createDocumentFragment();while(d.firstChild){f.appendChild(d.firstChild)}return f}}function doTransformIE(xml,xsl,arg,method,output){var oXSLTTemp=new ActiveXObject("Msxml2.XSLTemplate.3.0");var xslDocument=new ActiveXObject("Msxml2.FreeThreadedDOMDocument.3.0");xslDocument.validateOnParse=false;xslDocument.loadXML(pf.xml.serialize(xsl));oXSLTTemp.stylesheet=xslDocument;var oXSLTProcessor=oXSLTTemp.createProcessor();oXSLTProcessor.input=xml;for(prop in arg){if(arg[prop]===0){arg[prop]="0"}if(prop!=""&&arg[prop]&&arg[prop].toString){oXSLTProcessor.addParameter(prop,arg[prop].toString())}}oXSLTProcessor.transform();var content=oXSLTProcessor.output;if(method=="xml"){if(output=="dom"){var outDoc=new ActiveXObject("Microsoft.XMLDOM");outDoc.loadXML(content);return outDoc}else{return postProcessJs(content)}}switch(output){default:case"string":return postProcessJs(content);case"dom":var f=document.createDocumentFragment();var d=pf.$$$("div");d.innerHTML=content;while(d.firstChild){f.appendChild(d.firstChild)}return f}}this.transform=function(xml,xsl,arg,opts){switch(pf.$type(opts)){case"function":opts=pf.hash.merge(this.defaultOpts,{callback:opts});break;case"string":opts=pf.hash.merge(this.defaultOpts,{container:pf.$(opts)});break;case"element":opts=pf.hash.merge(this.defaultOpts,{container:opts});break;case"object":opts=pf.hash.merge(this.defaultOpts,opts);break;default:throw pf.$exGen("xslt.transform(): typeof(options) argument is "+pf.$type(opts)+", expected function|string|element|hash")}var async=opts.async;var Engine=null;if(typeof XSLTProcessor!="undefined"){Engine=doTransformNative}else{if(window.ActiveXObject){Engine=doTransformIE}else{throw pf.$exGen("xslt.transform(): no Engine found");return false}}try{var xmlObj=getXML(xml,"xml",async?_prepareXSL:null);var xslObj=null;if(!async||xmlObj){return(_prepareXSL(xmlObj))}}catch(e){debugError(e.description);return false}function _prepareXSL(_xmlObj){xmlObj=_xmlObj;xslObj=getXSL(xsl,async?_doTransform:null);if(!async||xslObj){return(_doTransform(xslObj))}}function _doTransform(_xslObj){xslObj=_xslObj;if(!xmlObj||!xslObj){debugError("Empty transf");return false}var output=Engine(xmlObj,xslObj,arg||{},getOutputMethod(xslObj),opts.output);if(!output){output=""}if(opts.container){opts.container.innerHTML=output}return(async&&pf.$type(opts.callback)=="function")?opts.callback(output):output}};this.transformXML=this.transform;function postProcessJs(input){if((typeof input!="string")||(input.indexOf("jsFunction")==-1)){return input}function execJs(full,func,args){return eval(func+"("+args+")")}return input.replace(/jsFunction\('([\w.]+)', (.*?')\)/g,execJs)}}window.XSLTTransformer=new CXSLTTransformer();PuskFramework.CAjax=function(){this.cnActive=0;this.maxActive=3;this.maxActiveGroup={};this.queue=[];this.reqCount=0;this.registry={};this.ignoreAll=false;var v=this;var w=PuskFramework;this.get=function(b){var a=q();if(!a){return false}a.method="GET";a.handleArguments(b);a.process();return a};this.post=function(b){var a=q();if(!a){return false}a.method="POST";a.handleArguments(b);a.process();return a};this.doRequest=function(a,c){var b=q();if(!b){return false}b.method=a.toUpperCase();b.handleArguments(c);b.process();return b};this.submit=function(d,c){var a=q();if(!a){return false}var b=w.form.serialize(d);a.method=d.method.toUpperCase()||"GET";a.url=d.action;a.handleArguments(c);a.queryString=b;a.process();return a};this.abort=function(b){if(this.registry[b]){try{y(this.registry[b])}catch(a){debugError(a.message)}}};this.abortAll=function(){this.queue=[];for(var a in this.registry){this.abort(a)}this.cnActive=0};this.proxy=function(a){return a};function q(){if(v.ignoreAll){return false}var a=new XHRWrapper();a.id=++v.reqCount;v.registry[a.id]=a;return a}function A(){if(v.queue.length==0){return false}var a=v.queue.shift();if(!a){return false}a.process();return true}function x(a){if(a.flashProxy=="off"||!w.flash||!w.flash.httpRequest||!w.flash.httpRequest.isOk){return false}if(a.flashProxy=="on"){return true}if(!a.url){return false}var b=a.url.match(/^https?:\/\/([^/]+)/i);if(!b||!b[1]){return false}return(b[1]!=window.location.host)}function n(b){if(x(b)){return new FlashHttpRequest(b.id)}if(window.XMLHttpRequest){return new XMLHttpRequest()}if(window.ActiveXObject){try{return new ActiveXObject("Msxml2.XMLHTTP")}catch(a){try{return new ActiveXObject("Microsoft.XMLHTTP")}catch(a){this.ignoreAll=true;return null}}}this.ignoreAll=true;return null}function z(b){if(b.handled.loading){return false}b.handled.loading=true;if(b.groupName!=null){if(typeof(v.maxActiveGroup[b.groupName])=="undefined"){v.maxActiveGroup[b.groupName]=0}v.maxActiveGroup[b.groupName]++;if(v.maxActiveGroup[b.groupName]==1&&typeof(b.onGroupBegin)=="function"){try{b.onGroupBegin(b.groupName)}catch(a){t(b,a,"onGroupBegin")}}}if(typeof(b.onLoading)=="function"){try{b.onLoading(b)}catch(a){t(b,a,"onLoading")}}}function r(b){if(b.handled.loading){return}b.handled.loading=true;if(typeof(b.onLoaded)=="function"){try{b.onLoaded(b)}catch(a){t(b,a,"onLoaded")}}}function o(b){if(b.handled.interactive){return}b.handled.interactive=true;if(typeof(b.onInteractive)=="function"){try{b.onInteractive(b)}catch(a){t(b,a,"onInteractive")}}}function u(b){if(b.handled.complete||b.aborted){return}b.handled.complete=true;if(b.groupName!=null){v.maxActiveGroup[b.groupName]--;if(v.maxActiveGroup[b.groupName]==0&&typeof(b.onGroupEnd)=="function"){try{b.onGroupEnd(b.groupName)}catch(a){t(b,a,"onGroupEnd")}}}try{b.status=b.xhr.status;b.statusText=b.xhr.statusText;b.responseText=b.xhr.responseText;b.responseXML=b.xhr.responseXML}catch(a){return}if(typeof(b.onComplete)=="function"){try{b.onComplete(b)}catch(a){t(b,a,"onComplete")}}if(b.xhr.status==200&&typeof(b.onSuccess)=="function"){try{if(b.responseXML&&typeof(b.responseXML.setProperty)!="undefined"){b.responseXML.setProperty("SelectionLanguage","XPath")}b.onSuccess(b)}catch(a){t(b,a,"onSuccess")}}else{if(typeof(b.onError)=="function"){try{b.onError(b)}catch(a){t(b,a,"onError")}}}y(b)}function s(b){if(b!=null&&b.xhr!=null&&!b.handled.complete){b.aborted=true;b.xhr.abort();if(b.groupName!=null){v.maxActiveGroup[b.groupName]--;if(v.maxActiveGroup[b.groupName]==0&&typeof(b.onGroupEnd)=="function"){try{b.onGroupEnd(b.groupName)}catch(a){t(b,a,"onGroupEnd")}}}if(typeof(b.onTimeout)=="function"){try{b.onTimeout(b)}catch(a){t(b,a,"onTimeout")}}y(b)}}function t(a,b,c){if(a.onException&&typeof(a.onException)=="function"){a.onException(a,b,c);y(a)}else{y(a);throw b}}function y(a){a.handled.complete=true;a.aborted=true;if(a.xhr){delete a.xhr.onreadystatechange;a.xhr.abort()}v.cnActive--;delete v.registry[a.id];window.clearTimeout(a.timer);a.xhr=null;if(v.queue.length>0&&v.cnActive<v.maxActive){window.setTimeout(A,10)}}XHRWrapper=function(){this.id=null;this.timeout=null;this.timer=null;this.generateUniqueUrl=true;this.cacheTime=0;this.url=window.location.href;this.method="GET";this.async=true;this.username=null;this.password=null;this.parameters={};this.rawData="";this.groupName=null;this.queryString="";this.responseText=null;this.responseXML=null;this.status=null;this.statusText=null;this.aborted=false;this.customHeaders={};this.flashProxy="auto";this.handled={};this.xhr=null;this.onLoading=null;this.onLoaded=null;this.onInteractive=null;this.onComplete=null;this.onSuccess=null;this.onError=null;this.onTimeout=null;this.onException=null;this.onGroupBegin=null;this.onGroupEnd=null;var a=this;function b(){if(a==null||a.xhr==null){return false}switch(a.xhr.readyState){case 1:return z(a);case 2:return r(a);case 3:return o(a);case 4:return u(a)}}this.process=function(){if(v.cnActive>=v.maxActive){v.queue.push(a);return}a.xhr=n(a);if(a.xhr==null){return null}a.xhr.onreadystatechange=b;v.cnActive++;if(a.method=="GET"){if(a.cacheTime){var g=new Date();var f=g.getDate()*24*60+g.getHours()*60+g.getMinutes();a.parameters._URID=""+g.getFullYear()+(g.getMonth()+1)+(f-(f%a.cacheTime))}else{if(a.generateUniqueUrl){a.parameters._URID=""+w.$time()+a.id}}}var c=null;a.queryString+=(a.queryString.length>0?"&":"")+w.hash.serialize(a.parameters);if(a.method=="GET"){if(a.queryString.length>0){a.url+=((a.url.indexOf("?")>-1)?"&":"?")+a.queryString}}a.url=v.proxy(a.url);if(a.username){a.xhr.open(a.method,a.url,a.async,a.username,a.password)}else{a.xhr.open(a.method,a.url,a.async)}var d=false;for(var e in a.customHeaders){if(a.customHeaders[e]["name"]&&a.customHeaders[e]["value"]){a.xhr.setRequestHeader(a.customHeaders[e]["name"],a.customHeaders[e]["value"]);if(a.customHeaders[e]["name"].toUpperCase()=="CONTENT-TYPE"){d=true}}}a.xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");if(a.method=="POST"){if(typeof(a.xhr.setRequestHeader)!="undefined"&&!d){a.xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded")}c=a.rawData||a.queryString}if(a.timeout>0){a.timer=window.setTimeout("_onTimeoutInternal(req)",a.timeout)}a.xhr.send(c);if(!a.async&&w.browsCap.isMozilla){b()}return true};this.handleArguments=function(d){if(w.$empty(d)){return false}for(var c in d){if(typeof(a[c])=="undefined"){a.parameters[c]=d[c]}else{a[c]=d[c]}}};this.getAllResponseHeaders=function(){if(a.handled.complete){return a.xhr.getAllResponseHeaders()}debugError("Cannot getAllResponseHeaders because a response has not yet been received")};this.getResponseHeader=function(c){if(a.handled.complete){return a.xhr.getResponseHeader(c)}debugError("Cannot getResponseHeader because a response has not yet been received")}}};PuskFramework.ajax=new PuskFramework.CAjax();PuskFramework.cssManager=new function(){var o=this;o.registry={};o.head=null;o.isIE=false;o.uriSuffix="";var r=PuskFramework;o.loadStyle=function(a,c,b){t(a,c,"link",{uri:a,onReadyStateChange:b})};o.loadInlineStyle=function(b,c,a){if(!a){a="style_"+Math.round(Math.random(1,1000)*999)}t(a,c,"inline",{style:b,id:a})};o.releaseStyle=function(a,c){if(o.registry[a]){var b=r.arr.indexOf(o.registry[a],c);if(b>0){o.registry[a].splice(b,1)}window.setTimeout(function(){if(o.registry[a]&&o.registry[a].length==1){if(o.isIE){var e=o.registry[a][0]["object"].parentStyleSheet.imports.length;var d=(o.registry[a][0]["type"]=="inline")?(o.fakeCss+"?"+a):a;for(var f=0;f<e;f++){if(o.registry[a][0]["object"].parentStyleSheet.imports[f]["href"]==d){o.registry[a][0]["object"].cssText="";o.registry[a][0]["object"].parentStyleSheet.removeImport(f);delete (o.registry[a]);break}}}else{r.$_(o.registry[a][0]["object"]);delete (o.registry[a])}}},1000)}};o.releaseInstance=function(b){for(var a in o.registry){o.releaseStyle(a,b)}};function l(){o.head=document.getElementsByTagName("head").item(0);o.isIE=document.createStyleSheet?true:false;if(window.Prj){o.uriSuffix="?"+window.Prj.version}if(o.isIE){o.fakeCss="/skin/fake.css";o.styleContainersCount=4;o.styleContainers=[];o.styleTags=[];for(var a=0;a<o.styleContainersCount;a++){o.styleContainers[a]=s("styleContainer."+a,a)}}}function s(d,b){var a=r.$$$("STYLE");a.setAttribute("type","text/css");a.title=d;o.styleTags[b]=a;o.head.appendChild(a);var c=document.styleSheets.length;for(var b=0;b<c;b++){if(document.styleSheets[b]["title"]==d){return(document.styleSheets[b])}}return(false)}function t(d,c,a,b){if(!o.registry[d]){o.registry[d]=[];o.registry[d][0]={};o.registry[d][0]["type"]=a;switch(a){case"link":o.registry[d][0]["object"]=m(b.uri,b.onReadyStateChange);break;case"inline":o.registry[d][0]["object"]=k(b.style,b.id);break}}if(r.arr.indexOf(o.registry[d],c)<1){o.registry[d][o.registry[d].length]=c}n()}function n(){if(o.isIE){setTimeout(function(){if(r.elem.hasClass(document.body,"cssRenderFix")){r.elem.delClass(document.body,"cssRenderFix")}else{r.elem.addClass(document.body,"cssRenderFix")}},200)}}function k(e,d){var a;if(o.isIE){var c;for(var b=0;b<o.styleContainersCount;b++){if(o.styleContainers[b].imports.length<31){c=o.styleContainers[b].addImport(o.fakeCss+"?"+d);a=o.styleContainers[b].imports[c];r.evt.add(o.styleTags[b],"readystatechange",f);function f(g){if(o.styleTags[b].readyState=="complete"){a.cssText=e;r.evt.remove(o.styleTags[b],"readystatechange",f)}}break}}}else{a=r.$$$("STYLE");a.setAttribute("type","text/css");a.setAttribute("media","screen");a.setAttribute("title",d);a.appendChild(document.createTextNode(e));o.head.appendChild(a);u(d)}return(a)}function m(d,c){var e;if(o.isIE){var b;for(var a=0;a<o.styleContainersCount;a++){if(o.styleContainers[a].imports.length<31){b=o.styleContainers[a].addImport(d+o.uriSuffix);e=o.styleContainers[a].imports[b];break}}}else{e=r.$$$("LINK");e.setAttribute("rel","stylesheet");e.setAttribute("type","text/css");e.setAttribute("href",d+o.uriSuffix);if(c!=null){r.evt.add(e,"readystatechange",c)}document.getElementsByTagName("head").item(0).appendChild(e)}return(e)}function u(a){var b=q(a);if(b){b.disabled=false}}function q(a){var b=document.styleSheets.length-1;for(var c=b;c>=0;c--){if(document.styleSheets[c]["title"]==a){return(document.styleSheets[c])}}return(null)}PuskFramework._initListeners.push(l)};PuskFramework.srvapi=new function(){var pf=PuskFramework;this.scriptDispatcher={};this.scriptLoading=false;this.scriptStack=[];this._jsSequental={};this.getProxy=function(url){if(!url){url="http://"}if(!url.match(/^http(s|):\/\//)){return("/proxy/http/"+url)}var newurl=url.replace(/^http(s|):\/\//,"http$1/");return("/proxy/"+newurl)};this.invoke=function(url,after,onerr,sync){url=url||"";return this._invoke(url,"get",{},after,onerr,sync)};this.pinvoke=function(url,params,after,onerr,sync){url=url||"";return this._invoke(url,"post",params,after,onerr,sync)};this._invoke=function(url,method,params,after,onerr,sync){params=params||{};method=method||"get";after=after||this.parseResponse;_url=url+((url.indexOf("?")>-1)?"&":"?")+"xml=1";debugNotice('<a href="'+_url+'" target="_blank">Запрос</a>');var reqStime=pf.$time();serverSetStatus("busy");return pf.ajax[method]({url:_url,async:!sync,parameters:params,onSuccess:function(req){try{debugResult("Пришел ответ от сервера, задержка "+pf.$time(reqStime)+"мс.");after(req,url)}catch(err){debugError("не получается выполнить коллбэк! "+err.name+" : "+err.message);serverSetStatus("error")}},onError:function(req){debugError("Ошибка запроса!\nСтатус="+req.statusText);serverSetStatus("error");if(onerr){onerr(req)}}})};this.appInvoke=function(props,after){props=props||new Array();props.object="application";return pf.srvapi.invoke("/server/?"+pf.hash.serialize(props),after||null)};this.parseResponse=function(xmlrequest,url){if(pf.$type(xmlrequest)!="object"){throw pf.$exGen("pf.srvapi.parseResponse(): typeof(xmlrequest) argument is "+pf.$type(xmlrequest)+', "object" expected')}if(pf.$type(xmlrequest.responseXML)!="object"){throw pf.$exGen("pf.srvapi.parseResponse(): typeof(xmlrequest.responseXML) is "+pf.$type(xmlrequest.responseXML)+', "object" expected')}xml=xmlrequest.responseXML;if(!xml||!xml.documentElement){debugError('No data @ <a href="'+url+'&xml=1" target="_blank">response</a>');return false}xml=xml.documentElement;var responseId=Math.rand(1,1000000);pf.srvapi._parseResultBlock(xml,responseId);pf.srvapi._parseInlineStyle(xml);pf.srvapi._parseLinkedStyle(xml);var htmlData=pf.srvapi._parseHtml(xml);var xmlData=pf.srvapi._parseXml(xml,xmlrequest);pf.srvapi.scriptDispatcher[responseId]={htmlData:htmlData,xmlData:xmlData};if(pf.srvapi._jsSequental[responseId]){pf.srvapi._parseScriptsSequental(xml,responseId)}else{pf.srvapi._parseScripts(xml,responseId)}debugResult('<a href="'+url+'&xml=1" target="_blank">Запрос</a> успешно обработан')};this._parseResultBlock=function(xml,responseId){var result=xml.getElementsByTagName("result");if(!result){return false}result=result[0];var code=parseInt(result.getAttribute("code"));serverSetStatus(code);pf.srvapi._jsSequental[responseId]=false;var pi,instructions=result.getElementsByTagName("pi");for(var i=0,len=instructions.length;i<len;i++){pi=instructions[i];switch(pi.getAttribute("name")){case"js_sequental":pf.srvapi._jsSequental[responseId]=(pi.getAttribute("value")=="true")}}};this._parseInlineStyle=function(xml){var item,items=xml.getElementsByTagName("style");if(!items){return false}for(var i=0,len=items.length;i<len;i++){item=items[i];var style=pf.elem.getText(item);var instance=item.getAttribute("instance")||"system";pf.cssManager.loadInlineStyle(style,instance,item.getAttribute("id"))}return len};this._parseLinkedStyle=function(xml){var items=xml.getElementsByTagName("stylesheet");if(!items){return false}for(var i=0,len=items.length;i<len;i++){var linkHref=items[i].getAttribute("href");var instance=items[i].getAttribute("instance");pf.cssManager.loadStyle(linkHref,instance)}return len};this._parseHtml=function(xml){var item,items=xml.getElementsByTagName("html");if(!items){return{}}var htmlData={};var itemId,parsed,instance;for(var i=0,len=items.length;i<len;i++){item=items[i];parsed="";for(var j=0,len2=item.childNodes.length;j<len2;j++){if(item.childNodes[j].data!=""){parsed+=item.childNodes[j].data}}instance=item.getAttribute("instance");parsed=parsed.replace(/__VDINSTANCE__/g,instance);itemId=item.getAttribute("id")||"TMPContainer"+Math.rand(1,1000);htmlData[itemId]=parsed}return htmlData};this._parseXml=function(xml,xhr){var item,items=xml.getElementsByTagName("xml");if(!items){return{}}var xmlData={};var itemId,instance;var params={id:xhr.parameters._URID};for(var i=0,len=items.length;i<len;i++){item=items[i];itemId=item.getAttribute("id");params.instance=item.getAttribute("instance")||0;xmlData[itemId]=pf.xml.fragment2document(item,params)}return xmlData};this._parseScripts=function(xml,responseId){var item,items=xml.selectNodes("/response/jscript | /response/execute");if(!items){return false}pf.srvapi.scriptDispatcher[responseId].stack=[];pf.srvapi.scriptDispatcher[responseId].len=0;for(var i=0,len=items.length;i<len;i++){item=items[i];switch(item.tagName){case"execute":var code=item.text||item.textContent;if(item.getAttribute("instant")=="true"){_eval(code,responseId,html,xmlData);break}pf.srvapi.scriptDispatcher[responseId].stack.push(code);break;case"jscript":var existing;if(existing=_isExistingScript(item)){if(existing.getAttribute("loaded")!="true"&&existing.getAttribute("responseId")!=responseId){function _onScriptLoadExt(evt){evt=evt||event;var elem=evt.currentTarget||evt.srcElement;if(evt.type=="readystatechange"&&elem.readyState&&!(elem.readyState=="complete"||elem.readyState=="loaded")){return}pf.srvapi.scriptDispatcher[responseId].len--;_runExecutes(responseId)}pf.srvapi.scriptDispatcher[responseId].len++;if(!pf.browsCap.isOpera){pf.evt.add(existing,"readystatechange",_onScriptLoadExt)}pf.evt.add(existing,"load",_onScriptLoadExt);pf.evt.add(existing,"error",_onScriptLoadExt)}break}var script=pf.srvapi._createScriptElement(item,responseId);pf.srvapi.scriptLoading=true;pf.srvapi.scriptDispatcher[responseId].len++;var postfix=(window.Prj&&window.Prj.version)?"?"+window.Prj.version:"";void (script.src=item.getAttribute("src")+postfix);pf._scriptContainer.appendChild(script);break}}_runExecutes(responseId)};this._parseScriptsSequental=function(xml,responseId){var item,items=xml.selectNodes("/response/jscript | /response/execute");if(!items){return false}var runStack=(pf.srvapi.scriptStack.length==0);for(var i=0,len=items.length;i<len;i++){item=items[i];switch(item.tagName){case"execute":var code=item.text||item.textContent;if(item.getAttribute("instant")=="true"){_eval(code,responseId);break}pf.srvapi.scriptStack.push(code);break;case"jscript":if(_isExistingScript(item)){break}var script=pf.srvapi._createScriptElement(item,responseId);if(!_isStacked(script,responseId)){pf.srvapi.scriptStack.push(script)}break}}if(runStack){_fetchNextScript(responseId)}};this._createScriptElement=function(item,responseId){var scr=pf.$$$("script");scr.id=item.getAttribute("id");scr.type="text/javascript";scr.responseId=responseId;scr.setAttribute("responseId",responseId);scr.setAttribute("loaded",false);var charset=item.getAttribute("charset");if(charset){scr.charset=charset}if(!pf.browsCap.isOpera){pf.evt.add(scr,"readystatechange",_onScriptLoad)}pf.evt.add(scr,"load",_onScriptLoad);pf.evt.add(scr,"error",_onScriptLoad);var postfix=(window.Prj&&window.Prj.version)?"?"+window.Prj.version:"";scr.setAttribute("wsrc",item.getAttribute("src")+postfix);return scr};var _onScriptLoad=function(evt){evt=evt||event;var elem=evt.currentTarget||evt.srcElement;if(evt.type=="readystatechange"&&elem.readyState&&!(elem.readyState=="complete"||elem.readyState=="loaded")){return}var responseId=parseInt(elem.getAttribute("responseId"));elem.setAttribute("loaded","true");pf.srvapi.scriptLoading=false;if(pf.srvapi._jsSequental[responseId]){_fetchNextScript(responseId)}else{pf.srvapi.scriptDispatcher[responseId].len--;_runExecutes(responseId)}};var _eval=function(jsCode,responseId){var html=pf.srvapi.scriptDispatcher[responseId].htmlData;var xmlData=pf.srvapi.scriptDispatcher[responseId].xmlData;try{eval(jsCode)}catch(err){debugError("Inline script error "+err.name+" : "+err.message)}};var _isExistingScript=function(scrElem){var scriptSrc=scrElem.getAttribute("src");var scriptId=scrElem.getAttribute("id");var scriptObjects=pf._scriptContainer.getElementsByTagName("SCRIPT");for(var i=0,len=scriptObjects.length;i<len;i++){var existing=scriptObjects[i];if(existing.src==scriptSrc||existing.id==scriptId){return existing}}return false};var _isStacked=function(scr,responseId){var script;for(var i=0,len=pf.srvapi.scriptStack.length;i<len;i++){script=pf.srvapi.scriptStack[i];if(!script||!script.tagName){continue}if(script.getAttribute("wsrc")==scr.getAttribute("wsrc")||script.id==scr.id){return true}}return false};var _fetchNextScript=function(responseId){if(pf.srvapi.scriptStack.length){var script=pf.srvapi.scriptStack.shift();if(script.tagName){pf.srvapi.scriptLoading=true;void (script.src=script.getAttribute("wsrc"));pf._scriptContainer.appendChild(script)}else{_eval(script,responseId);_fetchNextScript(responseId)}}else{pf.srvapi.scriptDispatcher={};pf.srvapi._jsSequental={}}};var _runExecutes=function(responseId){if(pf.srvapi.scriptDispatcher[responseId].len>0){return false}for(var i=0,len=pf.srvapi.scriptDispatcher[responseId].stack.length;i<len;i++){_eval(pf.srvapi.scriptDispatcher[responseId].stack[i],responseId)}delete pf.srvapi.scriptDispatcher[responseId];delete pf.srvapi._jsSequental[responseId]}};function serverSetStatus(b){}if(!window.debugError){debugError=function(b){if(window.console){console.error(b)}}}if(!window.debugResult){debugResult=function(b){if(window.console){console.log(b)}}}if(!window.debugNotice){debugNotice=function(b){if(window.console){console.info(b)}}}for(var p in PuskFramework.globals){if((typeof PuskFramework.globals[p]=="function")&&p.charAt(0)=="$"){if(PuskFramework._cfg.globals){window[p]=PuskFramework.globals[p]}PuskFramework[p]=PuskFramework.globals[p]}}PuskFramework._protoFactory=function(d,c){return function(){var b=[];for(var a=0;a<arguments.length;a++){b.push(arguments[a])}b.unshift(this);return c[d].apply(this,b)}};PuskFramework.prototypize=function(e,f){for(var d in f){if(!e.prototype[d]){e.prototype[d]=PuskFramework._protoFactory(d,f)}}};if(PuskFramework._cfg.extendArray){PuskFramework.prototypize(Array,PuskFramework.arr)}if(PuskFramework._cfg.extendString){PuskFramework.prototypize(String,PuskFramework.str)}if(PuskFramework._cfg.extendDate){PuskFramework.prototypize(Date,PuskFramework.date)}if(PuskFramework._cfg.namespace){window[PuskFramework._cfg.namespace]=PuskFramework}(function(){if(
/*@cc_on!@*/
false){fireContentLoadedEvent=function(){var event=document.createEventObject();event.eventType="ondataavailable";event.eventName="dataavailable";document.fireEvent(event.eventType,event)};if(window==window.top){document.write("<script id=__pfOnDOMContentLoaded defer src=javascript:void(0)><\/script>");var scr=PuskFramework.$("__pfOnDOMContentLoaded");if(scr){scr.onreadystatechange=function(){if(this.readyState=="complete"){this.onreadystatechange=null;fireContentLoadedEvent()}}}}else{window.attachEvent("onload",fireContentLoadedEvent)}}})();PuskFramework.init=function(){var b=null;while(b=PuskFramework._initListeners.shift()){b()}};PuskFramework.evt.add(document,"dataavailable",PuskFramework.init);PuskFramework._initListeners.push(function(){PuskFramework._scriptContainer=PuskFramework.$$$("DIV",{id:"puskScriptContainer"},{display:"none"});document.body.insertBefore(PuskFramework._scriptContainer,document.body.firstChild)});function SubmitForm(a,b){if(false!==b){result=validateForm($(a),0,0,0,1,8);if(false==result){return false}}$(a).submit();return false}function SelectType(b,e,c,a,d){if(""==b){alert(c);return false}PuskFramework.srvapi.invoke(mainUrl+"/marks/types/"+b+"/"+e+"/"+a+"/"+d+"/");return false}function SelectMark(c,a,b){CreateWindow(mainUrl+"/marks/select/"+c+"/"+a+"/"+b+"/","",700,450);return false}function SelectModel(e,d,b,a,c){if(""==e){alert(b);return false}PuskFramework.srvapi.invoke(mainUrl+"/marks/models/"+e+"/"+d+"/"+a+"/"+c+"/");return false}function FilterMark(d,b,a,c){url=mainUrl+"/marks/select/"+d+"/"+b+"/"+c+"/"+a+"/";PuskFramework.srvapi.invoke(url);return false}function ClearMark(c,a,b){$(c+"_mark_name").innerHTML='<a href="#" onClick="return SelectMark(\''+c+"', '', "+b+');">'+a+"</a>";$(c+"_mark_id").value="";return false}function SelectCity(b,a){CreateWindow(appUrl+"/cities/select/"+b+"/"+encodeURIComponent(a)+"/","",750,450);return false}function FilterCity(c,b,a){url=appUrl+"/cities/select/"+c+"/"+encodeURIComponent(b)+"/"+a+"/";PuskFramework.srvapi.invoke(url);return false}function FilterCountry(c,b,a){url=appUrl+"/cities/changecountry/"+c+"/"+b+"/"+a+"/";PuskFramework.srvapi.invoke(url);return false}function SetCity(c,b,d,a){$(c+"_city_name").innerHTML=b;$(c+"_city_id").value=d;$_($("mainWindow"+a));$("submit").src=appUrl+"/cities/change/"+d+"/?xml=1";return false}function CreateWindow(c,g,e,a,h){var b=showWindow(e,a,h);if(g!=""){g=g.split(";");var d=0,f=g.length;for(d=0;d<f;d++){c=c+g[d]+"/"}}c=c+b+"/";PuskFramework.srvapi.invoke(c);return false}var windowsCounter=1;function showWindow(d,a,f){document.body.className="windowIsOpen";var e=((getClientWidth()-d)/2);var c=50;var b=windowsCounter;windowsCounter++;tpl='<div id="mainWindow'+b+'" class="pop_up" style="width:'+d+"px;left:"+e+"px;top:"+(getBodyScrollTop()+c)+'px;"> <span class="left_top">&nbsp;</span> <span class="right_top">&nbsp;</span>';tpl=tpl+'<div class="border_top"></div>';tpl=tpl+'<div class="border_left">';tpl=tpl+'<div class="border_right"> <img src="/resources/design/close.png" id="window_close" alt="закрыть" class="float_right" onclick="document.body.className = \'windowIsClose\';$_($(\'mainWindow'+b+"'));\" />";tpl=tpl+'<h1 id="mainWindowTitle'+b+'" onmousedown="dragable(event, $(\'mainWindow'+b+'\'), document.body, false, false);" class="window_title">&nbsp;</h1>';tpl=tpl+'<div id="windowContent'+b+'" class="window_content" style="width:'+(d-20)+"px;height:"+a+'px;">';tpl=tpl+"</div>";tpl=tpl+"</div>";tpl=tpl+"</div>";tpl=tpl+'<span class="left_bottom">&nbsp;</span> <span class="right_bottom">&nbsp;</span>';tpl=tpl+'<div class="border_bottom"></div>';tpl=tpl+"</div>";$("windows").innerHTML=$("windows").innerHTML+tpl;return b}function getClientWidth(){var a=0;if(self.innerHeight){a=self.innerWidth}else{if(document.documentElement&&document.documentElement.clientWidth){a=document.documentElement.clientWidth}else{if(document.body){a=document.body.clientWidth}}}return a}function getBodyScrollTop(){return self.pageYOffset||(document.documentElement&&document.documentElement.scrollTop)||(document.body&&document.body.scrollTop)}function AddUploadInput(a,b){if(input_counter>5){return false}if(!document.getElementById(a)||document.getElementById(a).nodeName!="TABLE"){return false}if(!b){b=30}newObj=document.getElementById(a).insertRow(-1);newObj.id="line"+input_counter;newObj=document.getElementById("line"+input_counter).insertCell(-1);newObj.innerHTML='<input type="file" name="resource['+(input_counter)+']" size="'+b+'" />';input_counter++;return}function DeleteResource(b,c,a){$("submit").src=a;$_($("res"+b+"_1"));$_($("res"+b+"_2"));$_($("res"+b+"_3"));newObj=$("upload_table").insertRow(-1);newObj.id="res_box"+b;newObj=$("res_box"+b).insertCell(-1);newObj.setAttribute("colspan","3");return false}function answer(a){if(confirm(a)){return true}return false}function fValConfig(){this.code="alt";this.emsg="emsg";this.pattern="pattern";this.errorClass="errHilite";this.useSingleClassNames=false;this.clearEvent="change";this.eventOverride=false;this.confirmMsg=fvalidate.i18n.config.confirmMsg;this.confirmAbortMsg=fvalidate.i18n.config.confirmAbortMsg;this.submitButton=["Submit","Submit2"];this.resetButton="Reset";this.ccType="Credit_Card_Type";this.ccTypeObj="form1.Credit_Card_Type";this.boxError="errors";this.boxErrorPrefix="fv_error_"}if(typeof fvalidate=="undefined"){var fvalidate=new Object()}fvalidate.addEvent=function(d,b,c,a){if(typeof d.attachEvent!="undefined"){d.attachEvent("on"+b,c)}else{if(typeof d.attachEventListener!="undefined"){d.addEventListener(b,c,Boolean(a))}}};fvalidate.addEvents=function(f,c,e,a){var d=0,b;while(b=c[d++]){this.addEvent(f,b,e,Boolean(a))}};function validateForm(m,s,o,a,t,b){s=Boolean(s);o=Boolean(o);a=Boolean(a);t=Boolean(t);b=(typeof b!="undefined")?parseInt(b,10):0;var e,l,q;if(typeof m.fv=="undefined"){m.fv=new fValidate(m,b,t)}else{m.fv._reset();m.fv.errorMode=b}var d,k=0,n=m.fv.config.code;while(d=m.elements[k++]){if(d.nodeName=="FIELDSET"){continue}l=(d[n])?d[n]:d.getAttribute(n);if(!(typeof l=="undefined"||l==null||l=="")){e=l.split("|");q=e[0];d.validated=true;if(typeof m.fv[q]=="undefined"){m.fv.devError([q,d.name],"notFound");return false}switch(e.last()){case"bok":e=e.reduce(1,1);d.bok=true;break;case"if":e=e.reduce(1,1);d._if_=true;break;case"then":e=e.reduce(1,1);d._then_=true;break;default:e=e.reduce(1,0)}if(/radio|checkbox/.test(d.type)){d.group=m.elements[d.name]}if(typeof d.fName=="undefined"){if(typeof d.group!="undefined"){for(var h=0;h<d.group.length;h++){if(m.fv.config.clearEvent!=null){g(d.group.item(h),m.fv.config.clearEvent,m.fv,"revertError",false)}}}else{g(d,m.fv.config.clearEvent,m.fv,"revertError",false)}}d.fName=d.name.format();m.fv.elem=d;m.fv.type=q;var c=new Function("obj","method","obj[method]( "+e.toArgString()+" );");c(m.fv,q);if(d.validated==false&&t==false){return false}if(d.validated==true){m.fv.revertError()}}}if(t){m.fv.showGroupError()}if(m.fv.errors.length>0){return false}if(s&&!confirm(m.fv.config.confirmMsg)){if(m.fv.config.confirmAbortMsg!=""){alert(m.fv.config.confirmAbortMsg)}return false}if(o){if(typeof m.fv.config.submitButton=="object"){var r,h=0;while(r=m.fv.config.submitButton[h++]){if(m.fv.elementExists(r)){m.elements[r].disabled=true}}}else{if(m.fv.elementExists(m.fv.config.submitButton)){m.elements[m.fv.config.submitButton].disabled=true}}}if(a&&m.fv.elementExists(m.fv.config.resetButton)){m.elements[m.fv.config.resetButton].disabled=true}return true;function g(w,f,x,y,v){var u=w;if(typeof w.attachEvent!="undefined"){w.attachEvent("on"+f,function(){x[y](u)})}else{if(typeof w.addEventListener!="undefined"){w.addEventListener(f,function(){x[y](u)},v)}else{if(m.fv.config.eventOverride){eleme["on"+f]=function(){x[y](u)}}}}}}function fValidate(e,a,d){var b=this;this.form=e;this.errorMode=a;this.groupError=d;this.errors=new Array();this.validated=true;this.config=new fValConfig();this.i18n=fvalidate.i18n;e.onreset=function(){var g,f=0;while(g=this.elements[f++]){b.revertError(g)}};c();function c(){if(typeof e.getElementsByTagName=="undefined"){return}var k=e.getElementsByTagName("label");var f,g=j=0;var h;while(f=k[g++]){if(typeof f.htmlFor=="undefined"){return}h=e.elements[f.htmlFor];if(typeof h=="undefined"){b.devError([f.htmlFor],"noLabel")}else{if(typeof h.label!="undefined"){continue}else{if(typeof h.length!="undefined"&&h.length>1&&h.nodeName!="SELECT"){for(j=0;j<h.length;j++){h.item(j).label=f}}}}h.label=f}}}fValidate.prototype._reset=function(){this.errors=new Array();this.showErrors=new Array()};fValidate.prototype.elementExists=function(a){return Boolean(typeof this.form.elements[a]!="undefined")};fValidate.prototype.throwError=function(b,e){var c=this.elem;if(typeof c.name=="undefined"){c=c[0]}if(c.bok&&this.isBlank()){c.validated=true;return}if(c.cv){return}c.validated=false;e=this.setArg(e,0);b=this.setArg(b,[]);emsgElem=(typeof this.elem.getAttribute=="undefined")?this.elem[0]:this.elem;if(emsgElem.getAttribute(this.config.emsg)){var a=emsgElem.getAttribute(this.config.emsg)}var a=this.translateMessage(b,this.i18n.errors[this.type][e]);if(this.groupError){this.errors.push({elem:c,msg:a})}else{this.showError(a,false,emsgElem);var d=(typeof c.fields!="undefined")?c.fields[0]:c;this.selectFocus(d)}};fValidate.prototype.showError=function(n,m,f){var o=this,f=this.setArg(f,this.elem),c=Boolean(f.type=="hidden"),k=(c)?null:f.label||null,n=(f.getAttribute(this.config.emsg))?f.getAttribute(this.config.emsg).replace(/\\n/g,"\n"):n,h=this.config.errorClass,g=this.config.useSingleClassNames;if(typeof this.showErrors=="undefined"){this.showErrors=new Array()}switch(this.errorMode){case 0:e();break;case 1:b();break;case 2:d();break;case 3:l();break;case 4:a();break;case 5:b();d();break;case 6:b();l();break;case 7:b();a();break;case 8:b();e();break;case 9:d();l();break;case 10:d();a();break;case 11:d();e();break;case 12:l();a();break;case 13:l();e();break;case 14:a();e();break;case 15:b();d();l();break;case 16:b();d();a();break;case 17:b();d();e();break;case 18:b();l();a();break;case 19:b();l();e();break;case 20:b();a();e();break;case 21:d();l();a();break;case 22:d();l();e();break;case 23:l();a();e();break;case 24:b();d();l();a();break;case 25:b();d();l();e();break;case 26:b();l();a();e();break;case 27:d();l();a();e();break;case 28:b();d();l();a();e();break}function e(){if(o.groupError){o.showErrors.push(n)}else{alert(n)}if(m){alert(o.i18n.groupAlert+o.showErrors.join("\n\n- "))}}function b(){if((typeof f.length!="undefined"&&f.length>1&&f.nodeName!="SELECT")||c){if(!f.fields){f.fields=new Array()}var q,r=0;while(q=(c)?f.fields[r++]:f.item(r++)){if(q.className!=""&&g){q.revertClass=q.className;q.className=h}else{o.addCSSClass(q,h)}}}else{if(g){f.revertClass=f.className;f.className=h}else{o.addCSSClass(f,h)}}}function d(){if(k==null){return}if(o.config.useSingleClassNames){k.className=h}else{o.addCSSClass(k,h)}}function l(){if(k==null||typeof k.innerHTML=="undefined"){return}if(typeof k.original=="undefined"){k.original=k.innerHTML}k.innerHTML=k.original+" - "+n.toHTML()}function a(){if(typeof o.boxError=="undefined"){o.boxError=document.getElementById(o.config.boxError)}if(o.boxError==null){o.devError([o.config.boxError],"noBox");return}if(typeof o.elem.name=="undefined"||o.elem.name==""){o.devError([o.elem[o.config.code]],"missingName");return}var q=o.config.boxErrorPrefix+o.elem.name,r;if(r=document.getElementById(q)){r.firstChild.nodeValue=n.toHTML()}else{r=document.createHTMLElement("li",{id:q,innerHTML:n.toHTML(),title:o.i18n.boxToolTip});o.boxError.appendChild(r);r.onclick=function(){var s=o.form.elements[this.id.replace(o.config.boxErrorPrefix,"")];if(typeof s.fields!="undefined"){s=s.fields[0]}if(typeof s.select!="undefined"){s.select()}if(typeof s.focus!="undefined"){s.focus()}}}o.boxError.style.display="block"}};fValidate.prototype.removeCSSClass=function(b,a){b.className=b.className.replace(a,"").trim()};fValidate.prototype.addCSSClass=function(b,a){this.removeCSSClass(b,a);b.className=(b.className+" "+a).trim()};fValidate.prototype.showGroupError=function(){for(var a,c,b=0;(a=this.errors[b]);b++){if(b==0){c=a.elem}this.elem=a.elem;this.showError(a.msg,Boolean(b==(this.errors.length-1)))}if(c&&c.getAttribute("fields")){var d=(typeof c.fields!="undefined")?c.fields[0]:c;this.selectFocus(d)}};fValidate.prototype.revertError=function(e){e=this.setArg(e,this.elem);var d=Boolean(e.type=="hidden"),a=this.config.errorClass,c=0,f,b;if((typeof e.length!="undefined"&&e.length>1&&e.nodeName!="SELECT")||d){if(d&&typeof e.fields!="undefined"){while(b=(d)?e.fields[c++]:e.item(c++)){if(typeof b.revertClass!="undefined"){b.className=b.revertClass}}}}else{if(this.config.useSingleClassNames){if(typeof subElement.revertClass!="undefined"){e.className=e.revertClass}}else{this.removeCSSClass(e,a)}}if(typeof e.label!="undefined"){if(this.config.useSingleClassNames){e.label.className=""}else{this.removeCSSClass(e.label,a)}e.label.innerHTML=(e.label.original||e.label.innerHTML)}if(typeof this.boxError!="undefined"){if(typeof this.boxError.normalize!="undefined"){this.boxError.normalize()}if(f=document.getElementById(this.config.boxErrorPrefix+e.name)){this.boxError.removeChild(f)}if(this.boxError.childNodes.length==0){this.boxError.style.display="none"}}};fValidate.prototype.selectFocus=function(a){if(!a){return}if(typeof a.select!="undefined"){a.select()}if(typeof a.focus!="undefined"){a.focus()}};fValidate.prototype.typeMismatch=function(){var e={text:"text|password|textarea",ta:"textarea",hidden:"hidden",s1:"select-one",sm:"select-multiple",select:"select-one|select-multiple",rg:"radio",radio:"radio",cb:"checkbox",file:"file"};var b=false,d=new Array(),a=key=type=regex="";for(var c=0;c<arguments.length;c++){type=e[arguments[c]];regex=new RegExp(type);a+=(regex.test(this.elem.type))?"1":"0";key+="0";d.push(type)}if(key^a==0){this.devError([this.elem.fName,this.elem.type,d.join("|").replace(/\|/g,this.i18n.or)],"mismatch");this.elem.validated=false;return true}return false};fValidate.prototype.getValue=function(c){switch(c.type){case"text":case"password":case"textarea":case"hidden":case"file":return c.value;case"radio":case"select-single":if(typeof c.length=="undefined"){return c.value}else{for(var b=0;b<c.length;b++){choice=(c.type=="radio")?"checked":"selected";if(c[b][choice]){return c[b].value}}}case"select-multiple":case"checkbox":if(typeof c.length=="undefined"){return c.value}else{var a=new Array();for(var b=0;b<c.length;b++){choice=(c.type=="checkbox")?"checked":"selected";if(c[b][choice]){a.push(c[b].value)}}return a}default:return null}};fValidate.prototype.setArg=function(a,b){return(typeof a=="undefined"||a==""||a==null)?b:a};fValidate.prototype.isBlank=function(a){var b=this.form.elements[a]||this.elem;return Boolean(/^\s*$/.test(b.value))};fValidate.prototype.translateMessage=function(a,c){var d="";for(var b=0;b<c.length;b++){d+=(typeof c[b]=="number")?a[c[b]]:c[b]}return d};fValidate.prototype.devError=function(c,e){if(typeof c=="string"){e=c;c=[]}e=this.setArg(e,this.type);var d=this.i18n.devErrors[e];var b=[this.i18n.devErrors.lines[0],"----------------------------------------------------------------------------------------------",this.translateMessage(c,d),"----------------------------------------------------------------------------------------------",this.i18n.devErrors.lines[1]];alert(b.join("\n"))};fValidate.prototype.paramError=function(b,a){a=this.setArg(a,this.elem.name);this.devError([b,this.type,a],"paramError")};document.createHTMLElement=function(c,d){if(typeof document.createElement=="undefined"){return}var b=document.createElement(c);if(typeof d!="undefined"){for(var a in d){switch(true){case (a=="text"):b.appendChild(document.createTextNode(d[a]));break;case (a=="class"):b.className=d[a];break;default:b.setAttribute(a,"");b[a]=d[a]}}}return b};Array.prototype.reduce=function(c,h){var d=new Array();var g=0;for(var f=c;f<this.length-h;f++){d[g++]=this[f]}return d};Array.prototype.toArgString=function(){var b=new Array();for(var c=0;c<this.length;c++){b.push("'"+this[c]+"'")}return b.toString()};if(typeof Array.push=="undefined"){Array.prototype.push=function(){var a,b=0;while(a=arguments[b++]){this[this.length]=a}return this.length}}Array.prototype.last=function(){return this[this.length-1]};String.prototype.format=function(){return this.replace(/\_/g," ").replace(/\[|\]/g,"")};String.prototype.toHTML=function(){return this.replace(/\n/g,"<br />").replace(/\t/g,"&nbsp;&nbsp;&nbsp;&nbsp;")};String.prototype.trim=function(){return this.replace(/^\s+|\s+$/,"")};String.prototype.toPattern=function(){return this.replace(/([\.\*\+\{\}\(\)\<\>\^\$\\])/g,"\\$1")};if(typeof fvalidate=="undefined"){var fvalidate=new Object()}fvalidate.i18n={errors:{hblank:[["Поле не может быть пустым ",0]],blank:[["Поле не может быть пустым ",0]],notequal:[["Такое значение уже существует ",0]],ischecked:[["Вы должны быть согласны с ",0]],length:[[0," must be at least ",1," characters long"],[0," must be no more than ",1," characters long.\nThe current text is ",2," characters long."]],equalto:[[0," must be equal to ",1]],number:[["The number you entered for ",0," is not valid"]],numeric:[["Only numeric values are valid for the ",0],["A minimum of ",0," numeric values are required for the ",1]],alnum:[['The data you entered, "',0,'", does not match the requested format for ',1,"\nMinimum Length: ",2,"\nCase: ",3,"\nNumbers allowed: ",4,"\nSpaces allowed: ",5,"\nPunctuation characters allowed: ",6,"\n"]],decimal:[["The data you entered,",0," is not valid.  Please re-enter the ",1]],decimalr:[[0," is not a valid. Please re-enter."]],ip:[["Please enter a valid IP"],["The port number you specified, ",0,",  is out of range.\nIt must be between ",1," and ",2]],ssn:[["You need to enter a valid Social Security Number.\nYour SSN must be entered in 'XXX-XX-XXXX' format."]],money:[[0," does not match the required format of ",1]],cc:[["The ",0," you entered is not valid. Please check again and re-enter."]],ccDate:[["You credit card has expired! Please use a different card."]],zip:[["Please enter a valid 5 or 9 digit Zip code."]],phone:[["Please enter a valid phone number plus Area Code."],["Please enter a valid phone number - seven or ten digits."]],email:[["Please enter a valid email address"]],url:[[0," is not a valid domain"]],date:[["The data entered for ",0," is not a valid date\nPlease enter a date using the following format: ",1],["Date must be before ",0],["Date must be on or before ",0],["Date must be after ",0],["Date must be on or after ",0]],select:[["Please select a valid option for ",0]],selectm:[["Please select between ",0," and ",1," options for ",2,".\nYou currently have ",3," selected"]],selecti:[["Please select a valid option for ",0]],checkbox:[["Please check ",0," before continuing"],["Please select between ",0," and ",1," options for ",2,".\nYou currently have ",3," selected"]],radio:[["Please check ",0," before continuing"],["Please select an option for ",0]],comparison:[[0," must be ",1," ",2]],eitheror:[["One and only one of the following fields must be entered:\n\t-",0,"\n"]],atleast:[["At least ",0," of the following fields must be entered:\n\t-",1,"\n\nYou have only ",2," filled in.\n"]],allornone:[["All or none of the following fields must be entered and accurate:\n\t-",0,"\nYou have only ",1," accurate field entered.\n"]],file:[["The file must be one of the following types:\n",0,"\nNote: File extension may be case-sensitive."]],custom:[[0," is invalid."]],cazip:[["Please enter a valid postal code."]],ukpost:[["Please enter a valid postcode."]],germanpost:[["Please enter a valid postcode."]],swisspost:[["Please enter a valid postcode."]]},comparison:{gt:"greater than",lt:"less than",gte:"greater than or equal to",lte:"less than or equal to",eq:"equal to",neq:"not equal to"},devErrors:{number:["The lower-bound (",0,") is greater than the upper-bound (",1,") on this element: ",2],length:["The minimum length (",0,") is greater than the maxiumum legnth (",1,") on this element: ",2],cc:["Credit Card type (",0,") not found."],lines:["! WARNING ! -- fValidate developer-assist error\n","\nIf you are not the developer, please contact the website administrator regarding this error."],paramError:["You must include the '",0,"' parameter for the '",1,"' validator type on this field: ",2],notFound:["The validator '",0,"' was not found.\nRequested by: ",1],noLabel:["No element found for label: ",0],noBox:["An element with the requested id '",0,"' was not found for the 'boxError' config value."],missingName:["The hidden input calling the following logical validator must have a valid name\nattribute when used in conjunction with the 'box' error-type.\n\t",0],mismatch:["Validator/Element type mismatch.\n\nElement: ",0,"\nElement type: ",1,"\nType required by validator: ",2],noCCType:["You must include a SELECT item with Credit Card type choices!"]},config:{confirmMsg:"Your data is about to be sent.\nPlease click 'Ok' to proceed or 'Cancel' to abort.",confirmAbortMsg:"Submission cancelled.  Data has not been sent."},boxToolTip:"Click to target field",groupAlert:"Произошли следующие ошибки:\n\n- ",or:" or "};fValidate.prototype.blank=function(){if(this.typeMismatch("text")){return}if(this.isBlank()){this.throwError([this.elem.fName])}};fValidate.prototype.notequal=function(b){if(this.typeMismatch("text")){return}if(typeof b=="undefined"){this.paramError("oName")}var a=this.form.elements[b];if(this.elem.value==a.value){this.throwError([this.elem.fName])}};fValidate.prototype.hblank=function(){if(this.typeMismatch("hidden")){return}if(this.isBlank()){this.throwError([this.elem.fName])}};fValidate.prototype.number=function(d,e,c){if(this.typeMismatch("text")){return}var b=(d==0)?parseInt(this.elem.value,10):parseFloat(this.elem.value);e=this.setArg(e,0);c=this.setArg(c,Number.infinity);if(e>c){this.devError([e,c,this.elem.name]);return}var a=Boolean(isNaN(b)||b!=this.elem.value);if(!a){switch(true){case (e!=false&&c!=false):a=!Boolean(e<=b&&b<=c);break;case (e!=false):a=Boolean(b<e);break;case (c!=false):a=Boolean(b>c);break}}if(a){this.throwError([this.elem.fName]);return}this.elemPass=true};fValidate.prototype.numeric=function(a){if(this.typeMismatch("text")){return}a=this.setArg(a,"*");var b=new RegExp((a=="*")?"^\\d+$":"^\\d{"+parseInt(a,10)+"}\\d*$");if(!b.test(this.elem.value)){if(a=="*"){this.throwError([this.elem.fName])}else{this.throwError([a,this.elem.fName],1)}}};fValidate.prototype.length=function(a,b){if(this.typeMismatch("text")){return}var c=this.elem.value.length;a=Math.abs(a);b=Math.abs(this.setArg(b,Number.infinity));if(a>b){this.devError([a,b,this.elem.name]);return}if(a>parseInt(c,10)){this.throwError([this.elem.fName,a])}if(c>b){this.throwError([this.elem.fName,b,c],1)}};fValidate.prototype.alnum=function(d,a,k,f,c){if(this.typeMismatch("text")){return}a=this.setArg(a,"a");k=(k=="true"||k=="1");f=(f=="true"||f=="1");var e="",h=["None","Any","No","No","Any"];if(d!="*"){d=parseInt(d,10);h[0]=d}else{d=0}switch(a.toUpperCase()){case"U":e+="A-Z";h[1]="UPPER";break;case"L":e+="a-z";h[1]="lower";break;case"C":e+="A-Z][a-z";h[1]="Intial capital";d--;break;default:e+="a-zA-Z";break}if(k==true){e+="0-9";h[2]="Yes"}if(f==true){e+=" ";h[3]="Yes"}if(c=="any"){h[4]="Any"}else{if(c=="none"){h[4]="None"}else{c=c.replace(/pipe/g,"|");e+=c;h[4]=c}}var b=(d!="*")?"{"+d+",}":"+";var g=(c=="any")?new RegExp("^(["+e+"]|[^a-zA-Z0-9\\s])"+b+"$"):new RegExp("^["+e+"]"+b+"$");if(!g.test(this.elem.value)){this.throwError([this.elem.value,this.elem.fName,h[0],h[1],h[2],h[3],h[4]])}};fValidate.prototype.equalto=function(b){if(this.typeMismatch("text")){return}if(typeof b=="undefined"){this.paramError("oName")}var a=this.form.elements[b];if(this.elem.value!=a.value){this.throwError([this.elem.fName,a.fName])}};fValidate.prototype.ssn=function(){if(this.typeMismatch("text")){return}if(!(/^\d{3}\-\d{2}\-\d{4}$/.test(this.elem.value))){this.throwError()}};fValidate.prototype.select=function(){if(this.typeMismatch("s1")){return}if(this.elem.selectedIndex==0){this.throwError([this.elem.fName])}};fValidate.prototype.selectm=function(d,a){if(this.typeMismatch("sm")){return}if(typeof d=="undefined"){this.paramError("minS")}if(a==999||a=="*"||typeof a=="undefined"||a>this.elem.length){a=this.elem.length}var e=0;for(var c,b=0;(c=this.elem.options[b]);b++){if(c.selected){e++}}if(e<d||e>a){this.throwError([d,a,this.elem.fName,e])}};fValidate.prototype.selecti=function(a){if(this.typeMismatch("s1")){return}if(typeof a=="undefined"){this.paramError("indexes");return}a=a.split(",");var c=true;for(var b=0;b<a.length;b++){if(this.elem.options[a[b]].selected){c=false;break}}if(!c){this.throwError([this.elem.fName])}};fValidate.prototype.cazip=function(){var a=this.elem;if(this.typeMismatch("text")){return}a.value=a.value.toUpperCase();if(!(/^[A-Z][0-9][A-Z] [0-9][A-Z][0-9]$/.test(a.value))){this.throwError()}};fValidate.prototype.capost=fValidate.prototype.cazip;fValidate.prototype.ukpost=function(){var a=this.elem;if(this.typeMismatch("text")){return}a.value=a.value.toUpperCase();if(!(/^[A-Z]{1,2}\d[\dA-Z] ?\d[A-Z]{2}$/.test(a.value))){this.throwError()}};fValidate.prototype.germanpost=function(){var a=this.elem;if(this.typeMismatch("text")){return}a.value=a.value.toUpperCase();if(!(/^(?:CH\-)\d{4}$/.test(a.value))){this.throwError()}};fValidate.prototype.swisspost=function(){var a=this.elem;if(this.typeMismatch("text")){return}a.value=a.value.toUpperCase();if(!(/^(?:D\-)\d{5}$/.test(this.elem.value))){this.throwError()}};fValidate.prototype.email=function(b){if(this.typeMismatch("text")){return}if(typeof b=="undefined"){b=0}var a=[/.+@.+\..+$/i,/^\w.+@\w.+\.[a-z]+$/i,/^\w[-_a-z~.]+@\w[-_a-z~.]+\.[a-z]{2}[a-z]*$/i,/^\w[\w\d\.\-]+([\.\w\d]+)*@\w[-\w\d]+(\.[\w\d]+)*\.[a-z]{2,7}$/i];if(!a[b].test(this.elem.value)){this.throwError()}};fValidate.prototype.url=function(b,c,f){if(this.typeMismatch("text")){return}this.setArg(b,"http");var e="^(?:("+b.replace(/\,/g,"|")+")\\:\\/\\/)";var a=(Boolean(f)==true)?"(\\?.*)?$":"$";if(Boolean(c)==true){e+="?"}var d=new RegExp(e+"([\\w\\d-]+\\.?)+"+a);if(!d.test(this.elem.value)){this.throwError([this.elem.fName])}};fValidate.prototype.ip=function(d,a){if(this.typeMismatch("text")){return}d=this.setArg(d,0);a=this.setArg(a,99999);if(!(/^\d{1,3}(\.\d{1,3}){3}(:\d+)?$/.test(this.elem.value))){this.throwError()}else{var b,c=0,e=this.elem.value.split(/[.:]/);while(b=e[c++]){if(c==5){if(b<d||b>a){this.throwError([b,d,a],1)}}else{if(b<0||b>255){this.throwError()}}}}};fValidate.prototype.decimal=function(a,d){if(this.typeMismatch("text")){return}var c="",b=this.elem;if(a!="*"){a=parseInt(a,10)}if(d!="*"){d=parseInt(d,10)}if(a==0){c="^\\.[0-9]{1,"+d+"}$"}else{if(a=="*"&&d!="*"){c="^[0-9]+\\.[0-9]{1,"+d+"}$"}else{if(a!="*"&&d=="*"){c="^[0-9]{1,"+a+"}\\.{0,1}[0-9]*$"}else{if(a=="*"&&d=="*"){c="^[0-9]+(\\.{0,1})[0-9]*$"}else{if(d=="*"){c="^[0-9]{1,"+a+"}\\.[0-9]*$"}else{c="^[0-9]{1,"+a+"}\\.{0,1}[0-9]{0,"+d+"}$"}}}}}c=new RegExp(c);if(!c.test(b.value)){this.throwError([b.value,b.fName])}};fValidate.prototype.decimalr=function(f,d,b,e){if(this.typeMismatch("text")){return}f=(f=="*")?0:parseInt(f,10);d=(d=="*")?"":parseInt(d,10);b=(b=="*")?0:parseInt(b,10);e=(e=="*")?"":parseInt(e,10);var a="^[0-9]{"+f+","+d+"}\\.[0-9]{"+b+","+e+"}$";var c=new RegExp(a);if(!c.test(this.elem.value)){this.throwError([this.elem.fName])}return true};fValidate.prototype.zip=function(a){if(this.typeMismatch("text")){return}a=this.setArg(a,"- ");var b=new RegExp("^[0-9]{5}(|["+a.toPattern()+"][0-9]{4})?$");if(!b.test(this.elem.value)){this.throwError()}};fValidate.prototype.phone=function(b){if(this.typeMismatch("text")){return}b=this.setArg(b,0);var a=[/^(\(?\d\d\d\)?)?[ -]?\d\d\d[ -]?\d\d\d\d$/,/^(\(\d\d\d\) )?\d\d\d[ -]\d\d\d\d$/];if(!a[b].test(this.elem.value)){if(b==1){this.throwError()}else{this.throwError([],1)}}};fValidate.prototype.date=function(m,f,e,g){if(this.typeMismatch("text")){return}if(typeof m=="undefined"){this.paramError("formatStr");return}f=this.setArg(f,"/");var n=[this.elem.fName,m.replace(/\//g,f)];var q=m.split("/");var d=this.elem.value.split(f);var h=new Object();for(var l=0;l<q.length;l++){switch(q[l].charAt(0).toLowerCase()){case"m":h.months=l;break;case"d":h.days=l;break;case"y":h.years=l;break}}var k=new Date(d[h.years],d[h.months]-1,d[h.days]);if(isNaN(k)||k.getDate()!=d[h.days]||k.getMonth()!=d[h.months]-1||k.getFullYear().toString().length!=m.match(/y/g).length){this.throwError(n);return}var c=this.form.elements[g];if(typeof c!="undefined"){g=c.validDate||c.value}var b=(g=="today")?new Date():new Date(g);b.setHours(0);b.setMinutes(0);b.setSeconds(0);b.setMilliseconds(0);var a=b.getTime()-k.getTime();var o=false;switch(parseInt(e)){case 1:o=Boolean(a>0);n=1;break;case 2:o=Boolean((a+86400000)>0);n=2;break;case 3:o=Boolean(a<0);n=3;break;case 4:o=Boolean((a-86400000)<0);n=4;break;default:o=true}if(!o){this.throwError([g],n)}this.elem.validDate=k.toString()};fValidate.prototype.money=function(f,a,d){if(this.typeMismatch("text")){return}f=(f==" ")?false:f.toPattern();a=(a==" ")?false:a.toPattern();d=(d==" ")?false:d.toPattern();var b,e;switch(true){case Boolean(f&&a&&d):e="^"+f+"(?:(?:[0-9]{1,3}"+a+")(?:[0-9]{3}"+a+")*[0-9]{3}|[0-9]{1,3})("+d+"[0-9]{2})$";b=f+"XX"+a+"XXX"+d+"XX";break;case Boolean(f&&a&&!d):e="^"+f+"(?:(?:[0-9]{1,3}"+a+")(?:[0-9]{3}"+a+")*[0-9]{3}|[0-9]{1,3})$";b=""+f+"XX"+a+"XXX";break;case Boolean(f&&!a&&d):e="^"+f+"[0-9]*(\\.[0-9]{2})$";b=""+f+"XXXXX"+d+"XX";break;case Boolean(!f&&a&&d):e="^(?:(?:[0-9]{1,3}"+a+")(?:[0-9]{3}"+a+")*[0-9]{3}|[0-9]{1,3})("+d+"[0-9]{2})?$";b="XX"+a+"XXX"+d+"XX";break;case Boolean(f&&!a&&!d):e="^"+f+"[0-9]*$";b=""+f+"XXXXX";break;case Boolean(!f&&a&&!d):e="^(?:(?:[0-9]{1,3}"+a+")(?:[0-9]{3}"+a+")*[0-9]{3}|[0-9]{1,3})$";b="XX"+a+"XXX";break;case Boolean(!f&&!a&&d):e="^[0-9]*("+d+"[0-9]{2})$";b="XXXXX"+d+"XX";break;case Boolean(!f&&!a&&!d):e="^.?(?:(?:[0-9]{1,3}.?)(?:[0-9]{3}.?)*[0-9]{3}|[0-9]{1,3})(.[0-9]{2})?$";b="[?]XX[?]XXX[?XX]"}var c=new RegExp(e);if(!c.test(this.elem.value)){this.throwError([this.elem.fName,b.replace(/\\/g,"")])}};fValidate.prototype.checkbox=function(e,d){if(this.typeMismatch("cb")){return}if(typeof e=="undefined"){this.paramError("minC");return}if(this.elem==this.form.elements[this.elem.name]&&!this.elem.checked){this.throwError([this.elem.fName])}else{this.elem=this.form.elements[this.elem.name];var a=this.elem.length;if(!a){return}var c=0;if(d==999||d=="*"||typeof d=="undefined"||d>this.elem.length){d==a}var b=a;while(b-->0){if(this.elem[b].checked){c++}}if(c<e||c>d){this.throwError([e,d,this.elem[0].fName,c])}}};fValidate.prototype.ischecked=function(){if(this.typeMismatch("cb")){return}if(!this.elem.checked){this.throwError([this.elem.fName])}else{return}};fValidate.prototype.radio=function(){if(this.typeMismatch("rg")){return}if(this.elem==this.form.elements[this.elem.name]&&!this.elem.checked){this.throwError([this.elem.fName])}else{this.elem=this.form.elements[this.elem.name];for(var a=0;a<this.elem.length;a++){if(this.elem.item(a).checked){return}}this.throwError([this.elem[0].fName])}};fValidate.prototype.eitheror=function(){if(this.typeMismatch("hidden")){return}if(typeof arguments[0]=="undefined"){this.paramError("delim");return}if(typeof arguments[1]=="undefined"){this.paramError("fields");return}var b,d=0,a=new Array(),f,e=0,c=arguments[1].split(arguments[0]);this.elem.fields=new Array();while(b=c[d++]){f=this.form.elements[b];a.push(f.fName);this.elem.fields.push(f);if(!this.isBlank(b)){e++}}if(e!=1){this.throwError([a.join("\n\t-")])}};fValidate.prototype.atleast=function(){if(this.typeMismatch("hidden")){return}if(typeof arguments[0]==undefined){this.paramError("qty");return}if(typeof arguments[1]==undefined){this.paramError("delim");return}if(typeof arguments[2]==undefined){this.paramError("fields");return}var b,d=0,a=new Array(),f,e=0,c=arguments[2].split(arguments[1]);this.elem.fields=new Array();while(b=c[d++]){f=this.form.elements[b];a.push(f.fName);this.elem.fields.push(f);if(!this.isBlank(b)){e++}}if(e<arguments[0]){this.throwError([arguments[0],a.join("\n\t-"),e])}};fValidate.prototype.allornone=function(){if(this.typeMismatch("hidden")){return}if(typeof arguments[0]=="undefined"){this.paramError("delim");return}if(typeof arguments[1]=="undefined"){this.paramError("fields");return}var b,d=0,a=new Array(),f,e=0,c=arguments[1].split(arguments[0]);this.elem.fields=new Array();while(b=c[d++]){f=this.form.elements[b];a.push(f.fName);this.elem.fields.push(f);if(!this.isBlank(b)){e++}}if(e>0&&e<c.length){this.throwError([a.join("\n\t-"),e])}};fValidate.prototype.comparison=function(field1,operator,field2){if(this.typeMismatch("hidden")){return}var elem1=this.form.elements[field1],elem2=this.form.elements[field2],value1=this.getValue(elem1),value2=this.getValue(elem2);i18n=this.i18n.comparison;i=-1;var operators=[[">",i18n.gt],["<",i18n.lt],[">=",i18n.gte],["<=",i18n.lte],["==",i18n.eq],["!=",i18n.neq]];while(operators[++i][0]!=operator){}this.elem.fields=[elem1,elem2];if(!eval(value1+operator+value2)){this.throwError([elem1.fName,operators[i][1],elem2.fName])}};fValidate.prototype.file=function(b,a){if(this.typeMismatch("file")){return}if(typeof b=="undefined"){this.paramError("extensions");return}a=Boolean(a)?"":"i";var c=new RegExp("^.+\\.("+b.replace(/,/g,"|")+")$",a);if(!c.test(this.elem.value)){this.throwError([b.replace(/,/g,"\n")])}};fValidate.prototype.custom=function(a,c){if(this.typeMismatch("text")){return}a=(a)?a.replace(/[^gim]/ig):"";var b=new RegExp(this.elem.getAttribute(this.config.pattern),a);if(!b.test(this.elem.value)){this.throwError([this.elem.fName])}};fValidate.prototype.cc=function(){if(this.typeMismatch("text")){return}var c=this.form.elements[this.config.ccType];if(!c){this.devError("noCCType");return}var b=c.options[c.selectedIndex].value.toUpperCase();var a={VISA:/^4\d{12}(\d{3})?$/,MC:/^5[1-5]\d{14}$/,DISC:/^6011\d{12}$/,AMEX:/^3[4|7]\d{13}$/,DINERS:/^3[0|6|8]\d{12}$/,ENROUTE:/^2[014|149]\d{11}$/,JCB:/^3[088|096|112|158|337|528]\d{12}$/,SWITCH:/^(49030[2-9]|49033[5-9]|49110[1-2]|4911(7[4-9]|8[1-2])|4936[0-9]{2}|564182|6333[0-4][0-9]|6759[0-9]{2})\d{10}(\d{2,3})?$/,DELTA:/^4(1373[3-7]|462[0-9]{2}|5397[8|9]|54313|5443[2-5]|54742|567(2[5-9]|3[0-9]|4[0-5])|658[3-7][0-9]|659(0[1-9]|[1-4][0-9]|50)|844[09|10]|909[6-7][0-9]|9218[1|2]|98824)\d{10}$/,SOLO:/^(6334[5-9][0-9]|6767[0-9]{2})\d{10}(\d{2,3})?$/};if(c.validated==false&&this.groupError==true){return}if(typeof a[b]=="undefined"&&c.validated==false&&this.groupError==false){this.devError([b]);return}this.elem.value=this.elem.value.replace(/[^\d]/g,"");if(!a[b].test(this.elem.value)||!this.elem.value.luhn()){this.throwError([this.elem.fName])}};String.prototype.luhn=function(){var i=this.length;var checkSum="",digit;while(digit=this.charAt(--i)){checkSum+=(i%2==0)?digit*2:digit}checkSum=eval(checkSum.split("").join("+"));return(checkSum%10==0)};fValidate.prototype.ccDate=function(d,c){if(this.typeMismatch("s1")){return}c=parseInt(this.getValue(this.form.elements[c]),10)+2000;d=parseInt(this.getValue(this.form.elements[d]),10);var a=new Date();var b=new Date(c,d);if(b<a){alert(["Card Expired",a,b].join("\n"))}};function addListener(elm,event,func){if(document.attachEvent){elm.attachEvent("on"+event,func)}else{if(document.addEventListener){elm.addEventListener(event,func,true)}else{eval(elm+".on"+event+"="+func)}}}function removeListener(elm,event,func){if(document.detachEvent){elm.detachEvent("on"+event,func)}else{if(document.removeEventListener){elm.removeEventListener(event,func,true)}else{eval(elm+".on"+event+"= function(){return false;}")}}}function stopBubbleStopReturn(a){if(a.stopPropagation){a.stopPropagation();a.preventDefault()}else{if(a.cancelBubble==false||a.returnValue==true){a.cancelBubble=true;a.returnValue=false}}}function getMouseXY(b){var a=0,c=0;if(!b){b=window.event}if(b.pageX||b.pageY){a=b.pageX;c=b.pageY}else{if(b.clientX||b.clientY){a=b.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft)-document.documentElement.clientLeft;c=b.clientY+(document.documentElement.scrollTop||document.body.scrollTop)-document.documentElement.clientTop}}return{x:a,y:c}}function slideTo(c,l,k,m){var h=parseInt(c.offsetLeft);var g=parseInt(c.offsetTop);var e=(l-h)/7;var d=(k-g)/7;var a=1;var b=null;function f(){if(a>7){window.clearInterval(b);m();return}c.style.left=Math.floor(h+e*a);c.style.top=Math.floor(g+d*a);a++}b=window.setInterval(f,10)}function check(a){if(typeof a=="string"){elm=getElm(a)}else{elm=a}if(elm==null||typeof elm!="object"){throw Error("Element "+a+" does not exist. It is type "+typeof elm)}return elm}function setOpacity(a,b){a=check(a);if(b==null){b=100}if(isNaN(b)){b=parseFloat(b)}if(b<=1){b=b*100}a.style.filter="alpha(opacity="+b+")";b=b/100;a.style.MozOpacity=b;a.style.KhtmlOpacity=b;a.style.opacity=b}function getClientWidth(){var a=0;if(document.body){a=Math.min(document.body.clientWidth,document.body.scrollWidth)}return a}function getClientHeight(){var a=0;if(self.innerHeight){a=self.innerHeight}else{if(document.documentElement&&document.documentElement.clientHeight){a=document.documentElement.clientHeight}else{if(document.body){a=document.body.clientHeight}}}return a}function getDocumentWidth(){var a=0;return(document.body.scrollWidth>document.body.offsetWidth)?document.body.scrollWidth:document.body.offsetWidth-a}function getDocumentHeight(){return(document.body.scrollHeight>document.body.offsetHeight)?document.body.scrollHeight:document.body.offsetHeight}function hasClassName(e,c){if(!e){return false}var b=e.className.split(/\s+/);for(var d=0;d<b.length;d++){if(b[d]==c){return true}}return false}function addClassName(b,a){if(!b){return false}if(hasClassName(b,a)){return false}b.className+=" "+a;return true}function delClassName(f,d){var c=f.className.split(/\s+/);var b="";for(var e=0;e<c.length;e++){if(c[e]!=d){b+=" "+c[e]}}f.className=b;return true}function dragable(c,o,l,e,b){if(!o){return false}var d=0;var n=0;var m=0;var k=0;if(document.documentElement){var d=document.documentElement.offsetWidth}else{if(document.body&&document.body.offsetWidth){var d=document.body.offsetWidth}}if(l!=null&&l!=document.body){var a=findPos(l);d=l.offsetWidth+a[0];n=l.offsetHeight+a[1];m=a[0];k=a[1]}var r=parseInt(o.style.left);var q=parseInt(o.style.top);if(isNaN(r)==true){r=0}if(isNaN(q)==true){q=0}var g=getMouseXY(c);window.deltaX=g.x-r;window.deltaY=g.y-q;stopBubbleStopReturn(c);addListener(document,"mousemove",h);addListener(document,"mouseup",f);function h(t){if(!t){var t=window.event}var v=getMouseXY(t);stopBubbleStopReturn(t);var u=(v.x-window.deltaX);var s=(v.y-window.deltaY);if((u>=m&&u<=d-o.offsetWidth)){o.style.left=u+"px"}else{if(u<m){o.style.left=m+"px"}else{o.style.left=d-o.offsetWidth+"px"}}if(s>=k&&((n==0)||(s<=n))){o.style.top=s+"px"}else{if(s<k){o.style.top=k+"px"}}if(e){e(o,v.x,v.y,u,s)}}function f(s){if(!s){var s=window.event}stopBubbleStopReturn(s);removeListener(document,"mousemove",h);removeListener(document,"mouseup",f);if(b){b(o)}}}function containsDOM(a,c){var b=false;do{if((b=a==c)){break}try{c=c.parentNode}catch(d){return true}}while(c!=null);return b}function checkMouseOver(b,a){if(b.contains&&a.fromElement){return !b.contains(a.fromElement)}else{if(a.relatedTarget){return !containsDOM(b,a.relatedTarget)}}}function checkMouseOut(b,a){if(b.contains&&a.toElement){return !b.contains(a.toElement)}else{if(a.relatedTarget){return !containsDOM(b,a.relatedTarget)}}}function getBodyScrollTop(){return self.pageYOffset||(document.documentElement&&document.documentElement.scrollTop)||(document.body&&document.body.scrollTop)}function getBodyScrollLeft(){return self.pageXOffset||(document.documentElement&&document.documentElement.scrollLeft)||(document.body&&document.body.scrollLeft)}function findAncestor(a,c,b){if(!a){return false}while(a=a.parentNode){if(a&&a.getAttribute&&(a.getAttribute(c)==b||a[c]==b)){return a}}return false}String.prototype.pad=function(a,c,b){return c||(c=" "),(a-=this.length)>0?(c=new Array(Math.ceil(a/c.length)+1).join(c)).substr(0,b=!b?a:b==1?0:Math.ceil(a/2))+this+c.substr(0,a-b):this};String.prototype.trim=function(){var a=this;a=a.replace(/^\s+/g,"");a=a.replace(/\s+$/g,"");return a};