/*
Name:      Shogo User Interface LIBrary (Lite)
JS Type:   Universal JavaScript Framework
Version:   1.0.29 Final (24.02.2010)
Authors:   Ivan Azaryonok, Grigory Zarubin, Andrey Sidorov (Shogo.RU)
*/
var suilib={version:"lite-1.0.29",collector:{events:[],elements:[],cache:{}},anonymous:function(){},client:{domSupported:!!document.getElementById,nativeWrapper:!!window.HTMLElement,opera:!!window.opera,msie:!!(document.all&&document.all.item&&!window.opera&&!window.postMessage),trident:!!(document.all&&document.all.item&&!window.opera),safari:!!(navigator.appVersion&&navigator.appVersion.toLowerCase().indexOf("applewebkit")>=0),gecko:!!(window.Components&&window.controllers),netscape:!!document.layers},debug:{info:window.console&&console.firebug?window.console.info:this.anonymous,error:window.console&&console.firebug?window.console.error:this.anonymous,log:window.console&&console.firebug?window.console.log:this.anonymous,warn:window.console&&console.firebug?window.console.warn:this.anonymous},ready:function(C,B,A){if(!this.init.initialize){this.init.initialize=[]}this.init.initialize.push({method:(C||suilib.anonymous),context:(B||window),args:(A||[])})},init:function(){if(suilib.init.done){return null}suilib.init.done=true;suilib.body=(!!document.body?document.body:document.getElementsByTagName("body")[0]);if(window.addEventListener){window.addEventListener("click",suilib.clickCapture,true)}else{suilib.clickCapture.$("click",window,document)}if(arguments.callee.initialize&&arguments.callee.initialize.length){for(var B=0,A=arguments.callee.initialize.length;B<A;B++){arguments.callee.initialize[B].method.apply(arguments.callee.initialize[B].context,arguments.callee.initialize[B].args)}}},body:{},capturedClick:{},clickCapture:function(A){suilib.capturedClick=A},extensions:{Array:{hasa:function(B){for(var A=0;A<this.length;A++){if(this[A]===B){return A}}return false},walkwith:function(A){var B=[];for(var C=0;C<this.length;C++){B.push(A(this[C]))}return B},filter:function(){var C=[];for(var B=0,A=arguments.length;B<A;B++){C.push(arguments[B])}return suilib.domExt.filter.apply(this,C)},hash:function(){var A={};for(var C=0,B=this.length;C<B;C++){A[C]=this[C]}return A},tweener:function(B,A){return suilib.domExt.tweener.call(this,B&&A?B:null,!A?B:A)}},String:{trim:function(E){var C=[" ","\r","\n"],A=this;if(E){for(var D=0,B=E.length;D<B;D++){C.push(E.charAt(D))}}while(C.hasa(A.charAt(0))!==false){A=A.substr(1)}while(C.hasa(A.charAt(A.length-1))!==false){A=A.substr(0,A.length-1)}return A.toString()},camelize:function(){var C=this.split("-"),A=C.length;if(A==1){return C[0]}var D=this.charAt(0)=="-"?C[0].charAt(0).toUpperCase()+C[0].substring(1):C[0];for(var B=1;B<A;B++){D+=C[B].charAt(0).toUpperCase()+C[B].substring(1)}return D.toString()},find:function(A){return(this.indexOf(A)>=0?true:false)}},Date:{isLeapYear:function(){var A=this.getFullYear();return((((A%4==0)&&(A%100!=0))||(A%400==0))?true:false)}},Function:{$:function(){var E=arguments[0],D=suilib.client.gecko;for(var B=1,A=arguments.length;B<A;B++){if(!arguments[B]){continue}try{if(typeof arguments[B]=="object"&&"length" in arguments[B]&&"hasa" in arguments[B]){var F=[];arguments[B].walkwith(function(G){F.push(G)});F.unshift(E);this.$.apply(this,F);continue}arguments[B]=$(arguments[B]);if(!arguments[B]){continue}if(arguments[B].attachEvent){arguments[B].attachEvent("on"+E,this)}else{arguments[B].addEventListener(E,this,false)}if(E!="unload"){suilib.collector.events.push([this,E,arguments[B]])}}catch(C){suilib.debug.error("$\n"+C)}}return this},$$:function(){var E=arguments[0],D=suilib.client.gecko;for(var B=1,A=arguments.length;B<A;B++){if(!arguments[B]){continue}try{if(typeof arguments[B]=="object"&&"length" in arguments[B]&&"hasa" in arguments[B]){var F=[];arguments[B].walkwith(function(G){F.push(G)});F.unshift(E);this.$$.apply(this,F);continue}arguments[B]=$(arguments[B]);if(!arguments[B]){continue}if(arguments[B].detachEvent){arguments[B].detachEvent("on"+E,this)}else{arguments[B].removeEventListener(E,this,false)}}catch(C){suilib.debug.error("$$\n"+C)}}return this}}},domExt:{__e__:true,$:function(){var C=arguments[0];for(var B=1,A=arguments.length;B<A;B++){if(arguments[B]&&arguments[B].$){arguments[B].$(C,this)}}return this},$$:function(){var C=arguments[0];for(var B=1,A=arguments.length;B<A;B++){if(arguments[B]&&arguments[B].$$){arguments[B].$$(C,this)}}return this},filter:function(I,H,F,G){var J=[];J.filter=suilib.extensions.Array.filter;if(this instanceof Array){for(var C=0,A=this.length;C<A;C++){if(this[C]&&this[C].filter){J=J.concat(this[C].filter(I,H,F,G))}}return J}var E=(G?this.getElementsByTagName(I||"*"):this.childNodes);outerLoop:for(var C=0,A=E.length;C<A;C++){if(!E[C]||E[C].nodeType!=1){continue}if(!G&&I&&I!="*"&&E[C].tagName.toLowerCase()!=I.toLowerCase()){continue}if(H&&E[C].className.split(" ").hasa(H)===false){continue}if(F){for(var B in F){try{if(E[C].getAttribute(B).toLowerCase()!==F[B].toLowerCase()){continue outerLoop}}catch(D){continue outerLoop}}}J.push($(E[C]))}return J},unset:function(A){if(A&&this.removeAttribute){var B=this.getAttribute("id");if(suilib.collector.cache[B]){delete (suilib.collector.cache[B])}this.removeAttribute("id")}this.parentNode.removeChild(this);return this},empty:function(A,B){while(this.firstChild){if(A&&this.firstChild.nodeType==1){$(this.firstChild).empty(A,B)}if(B&&this.firstChild.removeAttribute){var C=this.firstChild.getAttribute("id");if(suilib.collector.cache[C]){delete (suilib.collector.cache[C])}this.firstChild.removeAttribute("id")}this.removeChild(this.firstChild)}return this},show:function(B,C){if(B){C=C.split(",");var E={};for(var D=0,A=C.length;D<A;D++){switch(C[D].trim()){case"fade":E.opacity=[0,100];this.setstyle("opacity:0");break}}this.style.display="";this.animate(B,E)}else{this.style.display=""}return this},hide:function(C,D){if(C){D=D.split(",");var F={},B=this;for(var E=0,A=D.length;E<A;E++){switch(D[E].trim()){case"fade":F.opacity=[100,0];this.setstyle("opacity:100");break}}this.animate(C,F,function(){B.hide();B.setstyle("opacity:100")})}else{this.style.display="none"}return this},toggle:function(G,C,D){if(!G){return false}if(C){D=D.split(",");var H={},F,B=this;for(var E=0,A=D.length;E<A;E++){switch(D[E].trim()){case"fade":H.opacity=[100,0];this.setstyle("opacity:100");F=D[E].trim();break}}this.animate(C,H,function(){B.hide();B.setstyle("opacity:100");$(G).show(C,F)})}else{this.style.display="none";$(G).style.display=""}return this},animate:function(C,F,B,E){var A=0,D=0,K=this,H=(E||100);var J=C*1000/H;var G=function(N,M){var L;switch(N.camelize().trim()){case"width":case"height":case"left":case"top":case"fontSize":L=M+"px";break;case"color":case"backgroundColor":L="#"+suilib.Color.hsl2hex(M,100,100);break;default:L=M}return L};var I=function(N,Q){var P=arguments.callee;if(!P.$queue){P.$queue={}}if(!P.$ignore){P.$ignore={}}for(var M in N){if(!P.$queue[M]){P.$queue[M]=false;if(typeof N[M]=="function"&&N[M].call){this.setstyle(M+":"+N[M].call(P,Q,M));continue}if(!("$"+M in P)){P["$"+M]=N[M][0]}var R=(Math.max(N[M][0],N[M][1])-Math.min(N[M][0],N[M][1]))/J;if(!R){R=1}this.setstyle(M+":"+G(M,P["$"+M]));if(N[M][1]>N[M][0]){P["$"+M]+=R;if(P["$"+M]>=N[M][1]){P.$queue[M]=true;this.setstyle(M+":"+G(M,N[M][1]))}}else{if(N[M][1]<N[M][0]){P["$"+M]-=R;if(P["$"+M]<=N[M][1]){P.$queue[M]=true;this.setstyle(M+":"+G(M,N[M][1]))}}else{this.setstyle(M+":"+G(M,N[M][0]));P.$queue[M]=true}}}}var L=true;for(var O in P.$queue){if(!P.$ignore[O]&&P.$queue[O]!==true){L=false}}if(L){P.stop()}};I.loop=function(L,M){this.$ignore[M]=!!L};I.stop=function(){clearInterval(A);if(B){B()}};if(this.$intervalid){clearInterval(this.$intervalid)}this.$intervalid=A=setInterval(function(){D++;I.apply(K,[F,D])},H)},tweener:function(B,A){if("jTweener" in window){return $t(B&&typeof (B)=="object"&&A?B:this,!A?B:A)}else{suilib.debug.warn("jTweener not included!");return{tween:suilib.anonymous,percent:suilib.anonymous,stop:suilib.anonymous,addOptions:suilib.anonymous,clearOptions:suilib.anonymous,removeOptions:suilib.anonymous}}},setstyle:function(B){var J=B.split(";");for(var E=0,C=J.length;E<C;E++){var D=J[E].split(":");var A=D[0].camelize().trim();try{switch(A){case"float":this.style.styleFloat=D[1].trim();this.style.cssFloat=D[1].trim();break;case"opacity":var F=parseInt(D[1],10);if(document.body.filters){var H=(this.filters["DXImageTransform.Microsoft.alpha"]||this.filters.alpha);if(H){H.opacity=F}else{this.style.filter+="progid:DXImageTransform.Microsoft.Alpha(opacity="+F+")"}}else{var G=F/100;this.style.opacity=G;this.style.MozOpacity=G;this.style.KhtmlOpacity=G}break;default:this.style[A]=D[1].trim()}}catch(I){}}return this},classAdd:function(B){if(B&&typeof B==="string"){var E=(B||"").split(/\s+/);if(this.nodeType===1){if(!this.className){this.className=B}else{var C=" "+this.className+" ",D=this.className;for(var F=0,A=E.length;F<A;F++){if(C.indexOf(" "+E[F]+" ")<0){D+=" "+E[F]}}this.className=D.replace(/^(\s|\u00A0)+|(\s|\u00A0)+$/g,"")}}}return this},classReplace:function(D,C){if(typeof C=="object"&&C.length){for(var B=0,A=C.length;B<A;B++){this.classRemove(C[B])}}else{this.classRemove(C)}this.classAdd(D);return this},classRemove:function(B){if((B&&typeof B==="string")||B===undefined){var D=(B||"").split(/\s+/);if(this.nodeType===1&&this.className){if(B){var C=(" "+this.className+" ").replace(/[\n\t]/g," ");for(var E=0,A=D.length;E<A;E++){C=C.replace(" "+D[E]+" "," ")}this.className=C.replace(/^(\s|\u00A0)+|(\s|\u00A0)+$/g,"")}else{this.className=""}}}return this},offset:function(B){var A=this.offsetLeft,D=this.offsetTop;if(this.offsetParent&&B){var C=$(this.offsetParent).offset(B);A+=C[0];D+=C[1]}return[A,D]},html:function(A){if(A&&A.length&&A.length===parseInt(A.length,10)){this.innerHTML=A}return this.innerHTML},add:function(E,B,G){var F=$(document.createElement(E));if(B){for(var D in B){switch(D){case"class":F.classAdd(B[D]);break;case"style":F.setstyle(B[D]);break;case"innerHTML":F.html(B[D]);break;default:F.setAttribute(D,B[D])}}}if(G){for(var C=0,A=G.length;C<A;C++){if(G[C]){F.appendChild(G[C])}}}if(this&&this!=window&&this!=document&&this.appendChild){this.appendChild(F)}return F},addtext:function(A){var B=document.createTextNode(A);if(this&&this!=window&&this!=document&&this.appendChild){this.appendChild(B)}return B}},addProps:function(C,A,B){for(var B in A){if(C[B]&&B){continue}else{C[B]=A[B]}}return C},ajax:function(url,params,method,handler){if(!url){url=document.location.protocol+"//"+document.location.hostname+document.location.pathname+document.location.search}handler=(handler||suilib.anonymous);var pick=function(){var v=[function(){return new XMLHttpRequest()},function(){return new ActiveXObject("Msxml2.XMLHTTP")},function(){return new ActiveXObject("Msxml3.XMLHTTP")},function(){return new ActiveXObject("Microsoft.XMLHTTP")}],result;for(var i=0,l=v.length;i<l;i++){try{result=v[i]()}catch(exc){continue}break}return result};var provider=pick();var xmlhttp=provider;var closure=function(){handler({readyState:xmlhttp.readyState,statusCode:(xmlhttp.readyState==4)?xmlhttp.status:null,responseJS:(xmlhttp.readyState==4&&xmlhttp.status==200)?(function(x){try{eval("try{var r="+(x.responseText||"null")+"}catch(e){};")}catch(e){suilib.debug.error(e+"\n\n"+x.responseText)}return r})(xmlhttp):null});if(xmlhttp.readyState==4){xmlhttp=null}};if(!!params.hasa){params=params.join("&")}if(method=="get"){url+=(url.match(/\?/)?"&":"?")+params}url+=(url.match(/\?/)?"&":"?")+"$js="+((new Date()).getTime());try{provider.open(method,url.toLowerCase(),true);provider.onreadystatechange=closure;provider.setRequestHeader("X-Requested-With","Shogo UI/"+suilib.version);if(method=="post"){provider.setRequestHeader("Content-type","application/x-www-form-urlencoded")}provider.setRequestHeader("Accept","text/javascript, text/html, application/xml, text/xml, */*");provider.setRequestHeader("Connection","close");provider.send(method=="post"?params:null)}catch(exc){suilib.debug.error(exc+" "+params)}return provider},get:function(B,A){return this.ajax(null,B,"get",A)},post:function(B,A){return this.ajax(null,B,"post",A)},switchWait:function(F,K){try{var B=suilib.client.trident,I=B?suilib.screensizes():[];if(!arguments.callee.floatMover){arguments.callee.floatMover=function(P){var Q=document.documentElement.scrollLeft+document.body.scrollLeft;var O=document.documentElement.scrollTop+document.body.scrollTop;A.style.left=parseInt(P.pageX?P.pageX:P.x+Q,10)-16+"px";A.style.top=parseInt(P.pageY?P.pageY:P.y+O,10)-15+"px"}}var M="i/ajax/",G=[M+"loader.gif",M+"ajax."+(B?"gif":"png")];if(F){if(K&&G[K]){var A=new Image();A.src=G[K];suilib.body.appendChild(A);$(A).setstyle("position:absolute; z-index:200");var L=(window.event||suilib.capturedClick);try{if(L.type!="click"){L=(B?window.event:suilib.capturedClick)}}catch(J){}var H=document.documentElement.scrollLeft+document.body.scrollLeft;var E=document.documentElement.scrollTop+document.body.scrollTop;if(L){var C=parseInt(L.pageX?L.pageX:L.x+H,10)-16;var N=parseInt(L.pageY?L.pageY:L.y+E,10)-15;I[2]=B?I[2]:Math.max(document.body.scrollWidth,window.innerWidth);I[3]=B?I[3]:Math.max(document.body.scrollHeight,window.innerHeight);if(isNaN(C)){C=Math.ceil(I[2]/2)-16}if(isNaN(N)){N=Math.ceil(I[3]/2)-16}$(A).setstyle("top:"+N+"px; left:"+C+"px")}if(!arguments.callee.floatloader){arguments.callee.floatloader=A}arguments.callee.floatMover.$("mousemove",window,document)}else{if(K){}else{if(!arguments.callee.wdiv){arguments.callee.wdiv=$(suilib.body).add("div",{style:"position:"+(B?"absolute":"fixed")+"; left:0; top:0; z-index:9998; margin:0; background:#000000; width:"+(B?I[0]+"px":"100%")+"; height:"+(B?I[3]+"px":"100%")})}arguments.callee.wdiv.setstyle("opacity:30");if(!arguments.callee.idiv){arguments.callee.idiv=$(suilib.body).add("div",{style:"position:"+(B?"absolute":"fixed")+"; z-index:9999; text-align:center; padding-top:20%; color:#EBEBEB; width:100%; left:0; top:"+(B?(window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop)+"px":"0")},[addtext("Пожалуйста, подождите..."),add("br"),add("img",{src:G[0]})])}}}}else{if(K&&G[K]){arguments.callee.floatMover.$$("mousemove",window,document);try{suilib.body.removeChild(arguments.callee.floatloader)}catch(J){}arguments.callee.floatMover=null;arguments.callee.floatloader=null}else{if(K){}else{$(arguments.callee.wdiv).unset(true);$(arguments.callee.idiv).unset(true);arguments.callee.wdiv=null;arguments.callee.idiv=null;window.scrollBy(1,1);window.scrollBy(-1,-1)}}}}catch(D){}},screensizes:function(){var B=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth||0;var A=window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight||0;return[B,A,Math.min(document.body.scrollWidth,B),Math.max(document.body.scrollHeight,A)]},free:function(){for(var A=0;A<this.length;A++){if(!this[A][0]||!this[A][0].$$||!this[A][1]||!this[A][2]){continue}this[A][0].$$(this[A][1],this[A][2]);this[A][0]=this[A][2]=this[A]=null}}};(function(A){for(var B in A){suilib.addProps(window[B].prototype,A[B])}})(suilib.extensions);if(suilib.client.nativeWrapper){suilib.addProps(window.HTMLElement.prototype,suilib.domExt)}var add=suilib.domExt.add,addtext=suilib.domExt.addtext,__e__=true;function $(){if(!arguments[0]){return null}var C=[];if(arguments.length>1){for(var B=0,A=arguments.length;B<A;B++){C.push($(arguments[B]))}}else{switch(typeof arguments[0]){case"string":try{C=suilib.collector.cache[arguments[0]]?suilib.collector.cache[arguments[0]]:document.getElementById(arguments[0]);suilib.collector.cache[arguments[0]]=C}catch(D){suilib.debug.error("[wrong node]:\n"+D)}break;default:C=arguments[0]}}try{if(arguments.length==1&&!C.__e__){C=suilib.addProps(C,suilib.domExt,true)}}catch(D){suilib.debug.error("[extend error]: "+arguments[0]+"\n"+D)}return C}(function(){if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);suilib.init()},false)}if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);suilib.init()}});if(document.documentElement.doScroll&&window==window.top){(function(){if(suilib.init.done){return }try{document.documentElement.doScroll("left")}catch(e){setTimeout(arguments.callee,0);return }suilib.init()})()}}window.onload=suilib.init;(function(){suilib.free.call(suilib.collector.events);with(suilib.collector){for(var i=0;i<cache.length;i++){cache[i]=null}}}).$("unload",window)})();suilib.Color={rgb2hex:function(B){var A="0123456789ABCDEF",D=B.split(","),E="";for(var C=0;C<3;C++){var F=parseInt(D[C],10);E+=A.charAt(F>>4)+A.charAt(F&15)}return E},hex2rgb:function(C){var A="0123456789ABCDEF",D=[];C=C.toUpperCase();for(var B=0;B<6;B+=2){D.push(16*A.indexOf(C.charAt(B))+A.indexOf(C.charAt(B+1)))}D=D.join(", ");return D},hsl2rgb:function(N,I,A){var M,Q,D,O,E,L,P,J,H,C,K;var F=function(R,B,G){if(R<B){R=B}if(R>G){R=G}return R};if(I>0){O=N/60;L=A/100;E=I/100;K=parseInt(O,10);P=O-K;J=L*(1-E);H=L*(1-E*P);C=L*(1-E*(1-P));switch(K){case 0:M=L*255;Q=C*255;D=J*255;break;case 1:M=H*255;Q=L*255;D=J*255;break;case 2:M=J*255;Q=L*255;D=C*255;break;case 3:M=J*255;Q=H*255;D=L*255;break;case 4:M=C*255;Q=J*255;D=L*255;break;case 5:M=L*255;Q=J*255;D=H*255;break}}else{M=(A*255)/100;Q=M;D=M}return parseInt(F(M,0,255),10)+", "+parseInt(F(Q,0,255),10)+", "+parseInt(F(D,0,255),10)},hsl2hex:function(C,B,A){return this.rgb2hex(this.hsl2rgb(C,B,A))}};
