if(typeof Zapatec=='undefined'){Zapatec={};}Zapatec.Utils={};Zapatec.Utils.getAbsolutePos=function(el){var SL=0,ST=0;var is_div=/^div$/i.test(el.tagName);if(is_div&&el.scrollLeft)SL=el.scrollLeft;if(is_div&&el.scrollTop)ST=el.scrollTop;var r={x:el.offsetLeft-SL,y:el.offsetTop-ST};if(el.offsetParent){var tmp=this.getAbsolutePos(el.offsetParent);r.x+=tmp.x;r.y+=tmp.y;}return r;};Zapatec.Utils.fixBoxPosition=function(box){if(box.x<0)box.x=0;if(box.y<0)box.y=0;var cp=Zapatec.Utils.createElement("div");var s=cp.style;s.position="absolute";s.right=s.bottom=s.width=s.height="0px";window.document.body.appendChild(cp);var br=Zapatec.Utils.getAbsolutePos(cp);window.document.body.removeChild(cp);if(Zapatec.is_ie){br.y+=window.document.body.scrollTop;br.x+=window.document.body.scrollLeft;}else{br.y+=window.scrollY;br.x+=window.scrollX;}var tmp=box.x+box.width-br.x;if(tmp>0)box.x-=tmp;tmp=box.y+box.height-br.y;if(tmp>0)box.y-=tmp;};Zapatec.Utils.isRelated=function(el,evt){evt||(evt=window.event);var related=evt.relatedTarget;if(!related){var type=evt.type;if(type=="mouseover"){related=evt.fromElement;}else if(type=="mouseout"){related=evt.toElement;}}try{while(related){if(related==el){return true;}related=related.parentNode;}}catch(e){};return false;};Zapatec.Utils.removeClass=function(el,className){if(!(el&&el.className)){return;}var cls=el.className.split(" ");var ar=[];for(var i=cls.length;i>0;){if(cls[--i]!=className){ar[ar.length]=cls[i];}}el.className=ar.join(" ");};Zapatec.Utils.addClass=function(el,className){Zapatec.Utils.removeClass(el,className);el.className+=" "+className;};Zapatec.Utils.getElement=function(ev){if(Zapatec.is_ie){return window.event.srcElement;}else{return ev.currentTarget;}};Zapatec.Utils.getTargetElement=function(ev){if(Zapatec.is_ie){return window.event.srcElement;}else{return ev.target;}};Zapatec.Utils.stopEvent=function(ev){ev||(ev=window.event);if(ev){if(Zapatec.is_ie){ev.cancelBubble=true;ev.returnValue=false;}else{ev.preventDefault();ev.stopPropagation();}}return false;};Zapatec.Utils.addEvent=function(el,evname,func){if(el.attachEvent){el.attachEvent("on"+evname,func);}else if(el.addEventListener){el.addEventListener(evname,func,false);}else{el["on"+evname]=func;}};Zapatec.Utils.removeEvent=function(el,evname,func){if(el.detachEvent){el.detachEvent("on"+evname,func);}else if(el.removeEventListener){el.removeEventListener(evname,func,false);}else{el["on"+evname]=null;}};Zapatec.Utils.createElement=function(type,parent,selectable){var el=null;if(window.self.document.createElementNS)el=window.self.document.createElementNS("http://www.w3.org/1999/xhtml",type);else el=window.self.document.createElement(type);if(typeof parent!="undefined"&&parent!=null)parent.appendChild(el);if(!selectable){if(Zapatec.is_ie)el.setAttribute("unselectable",true);if(Zapatec.is_gecko)el.style.setProperty("-moz-user-select","none","");}return el;};Zapatec.Utils.writeCookie=function(name,value,domain,path,exp_days){value=escape(value);var ck=name+"="+value,exp;if(domain)ck+=";domain="+domain;if(path)ck+=";path="+path;if(exp_days){exp=new Date();exp.setTime(exp_days*86400000+exp.getTime());ck+=";expires="+exp.toGMTString();}document.cookie=ck;};Zapatec.Utils.getCookie=function(name){var pattern=name+"=";var tokenPos=0;while(tokenPos<document.cookie.length){var valuePos=tokenPos+pattern.length;if(document.cookie.substring(tokenPos,valuePos)==pattern){var endValuePos=document.cookie.indexOf(";",valuePos);if(endValuePos== -1){endValuePos=document.cookie.length;}return unescape(document.cookie.substring(valuePos,endValuePos));}tokenPos=document.cookie.indexOf(" ",tokenPos)+1;if(tokenPos==0){break;}}return null;};Zapatec.Utils.makePref=function(obj){function stringify(val){if(typeof val=="object"&& !val)return "null";else if(typeof val=="number"||typeof val=="boolean")return val;else if(typeof val=="string")return '"'+val.replace(/\22/,"\\22")+'"';else return null;};var txt="",i;for(i in obj)txt+=(txt?",'":"'")+i+"':"+stringify(obj[i]);return txt;};Zapatec.Utils.loadPref=function(txt){var obj=null;try{eval("obj={"+txt+"}");}catch(e){}return obj;};Zapatec.Utils.mergeObjects=function(dest,src){for(var i in src)dest[i]=src[i];};Zapatec.Utils.__wch_id=0;Zapatec.Utils.createWCH=function(element){var f=null;element=element||window.self.document.body;if(Zapatec.is_ie&& !Zapatec.is_ie5){var filter='filter:progid:DXImageTransform.Microsoft.alpha(style=0,opacity=0);';var id="WCH"+(++Zapatec.Utils.__wch_id);element.insertAdjacentHTML('beforeEnd','<iframe id="'+id+'" scroll="no" frameborder="0" '+'style="z-index:0;position:absolute;visibility:hidden;'+filter+'border:0;top:0;left:0;width:0;height:0;" '+'src="javascript:false;"></iframe>');f=window.self.document.getElementById(id);}return f;};Zapatec.Utils.setupWCH_el=function(f,el,el2){if(f){var pos=Zapatec.Utils.getAbsolutePos(el),X1=pos.x,Y1=pos.y,X2=X1+el.offsetWidth,Y2=Y1+el.offsetHeight;if(el2){var p2=Zapatec.Utils.getAbsolutePos(el2),XX1=p2.x,YY1=p2.y,XX2=XX1+el2.offsetWidth,YY2=YY1+el2.offsetHeight;if(X1>XX1)X1=XX1;if(Y1>YY1)Y1=YY1;if(X2<XX2)X2=XX2;if(Y2<YY2)Y2=YY2;}Zapatec.Utils.setupWCH(f,X1,Y1,X2-X1,Y2-Y1);}};Zapatec.Utils.setupWCH=function(f,x,y,w,h){if(f){var s=f.style;(typeof x!="undefined")&&(s.left=x+"px");(typeof y!="undefined")&&(s.top=y+"px");(typeof w!="undefined")&&(s.width=w+"px");(typeof h!="undefined")&&(s.height=h+"px");s.visibility="inherit";}};Zapatec.Utils.hideWCH=function(f){if(f)f.style.visibility="hidden";};Zapatec.Utils.getPageScrollY=function(){return window.pageYOffset||document.documentElement.scrollTop||(document.body?document.body.scrollTop:0)||0;};Zapatec.ScrollWithWindow={};Zapatec.ScrollWithWindow.list=[];Zapatec.ScrollWithWindow.stickiness=0.25;Zapatec.ScrollWithWindow.register=function(node){var top=parseInt(node.style.top)||0;var scrollY=window.pageYOffset||document.body.scrollTop||document.documentElement.scrollTop||0;top-=scrollY;if(top<0)top=0;Zapatec.ScrollWithWindow.list[Zapatec.ScrollWithWindow.list.length]={node:node,origTop:top};};Zapatec.ScrollWithWindow.unregister=function(node){for(var count=0;count<Zapatec.ScrollWithWindow.list.length;count++){var elm=Zapatec.ScrollWithWindow.list[count];if(node==elm.node){Zapatec.ScrollWithWindow.list.splice(count,1);return;}}};Zapatec.ScrollWithWindow.handler=function(newScrollY){oldScrollY+=((newScrollY-oldScrollY)*this.stickiness);if(Math.abs(oldScrollY-newScrollY)<=1)oldScrollY=newScrollY;for(var count=0;count<Zapatec.ScrollWithWindow.list.length;count++){var elm=Zapatec.ScrollWithWindow.list[count];var node=elm.node;if(!elm.origTop){elm.origTop=Zapatec.Utils.getAbsolutePos(node).y;node.style.position='absolute';}node.style.top=elm.origTop+parseInt(oldScrollY)+'px';}};var oldScrollY=Zapatec.Utils.getPageScrollY();setInterval('var newScrollY = Zapatec.Utils.getPageScrollY(); '+'if (newScrollY != oldScrollY) { '+'Zapatec.ScrollWithWindow.handler(newScrollY); '+'}',50);Zapatec.Utils.destroy=function(el){if(el&&el.parentNode)el.parentNode.removeChild(el);};Zapatec.Utils.newCenteredWindow=function(url,windowName,width,height,scrollbars){var leftPosition=0;var topPosition=0;if(screen.width)leftPosition=(screen.width-width)/2;if(screen.height)topPosition=(screen.height-height)/2;var winArgs='height='+height+',width='+width+',top='+topPosition+',left='+leftPosition+',scrollbars='+scrollbars+',resizable';var win=window.open(url,windowName,winArgs);return win;};Zapatec.Utils.getWindowSize=function(){var winH=document.body.clientHeight||document.documentElement.clientHeight||window.innerHeight||0;var winW=document.body.clientWidth||document.documentElement.clientWidth||window.innerWidth||0;var dimension={};dimension.height=winH;dimension.width=winW;return dimension;};Zapatec.Utils.selectOption=function(sel,val,call_default){var a=sel.options,i,o;for(i=a.length;--i>=0;){o=a[i];o.selected=(o.val==val);}sel.value=val;if(call_default){if(typeof sel.onchange=="function")sel.onchange();else if(typeof sel.onchange=="string")eval(sel.onchange);}};Zapatec.Utils.getNextSibling=function(el,tag,alternateTag){el=el.nextSibling;if(!tag){return el;}tag=tag.toLowerCase();if(alternateTag)alternateTag=alternateTag.toLowerCase();while(el){if(el.nodeType==1&&(el.tagName.toLowerCase()==tag||(alternateTag&&el.tagName.toLowerCase()==alternateTag))){return el;}el=el.nextSibling;}return el;};Zapatec.Utils.getFirstChild=function(el,tag,alternateTag){el=el.firstChild;if(!tag){return el;}tag=tag.toLowerCase();if(el.nodeType==1){if(el.tagName.toLowerCase()==tag){return el;}else if(alternateTag){alternateTag=alternateTag.toLowerCase();if(el.tagName.toLowerCase()==alternateTag){return el;}}}return Zapatec.Utils.getNextSibling(el,tag,alternateTag);};Zapatec.Utils.getChildText=function(objNode){if(objNode==null){return '';}var arrText=[];var objChild=objNode.firstChild;while(objChild!=null){if(objChild.nodeType==3){arrText.push(objChild.data);}objChild=objChild.nextSibling;}return arrText.join(' ');};Zapatec.Utils.insertAfter=function(oldNode,newNode){if(oldNode.nextSibling){oldNode.parentNode.insertBefore(newNode,oldNode.nextSibling);}else{oldNode.parentNode.appendChild(newNode);}};Zapatec.Utils._ids={};Zapatec.Utils.generateID=function(code,id){if(typeof id=="undefined"){if(typeof this._ids[code]=="undefined")this._ids[code]=0;id= ++this._ids[code];}return "zapatec-"+code+"-"+id;};Zapatec.Utils.addTooltip=function(target,tooltip){return new Zapatec.Tooltip(target,tooltip);};Zapatec.isLite=true;Zapatec.Utils.checkActivation=function(){if(!Zapatec.isLite)return true;var bWizard=false;var arrProducts=[];var ii;var scripts=document.getElementsByTagName('script');for(ii=0;ii<scripts.length;ii++){if(/src\/calendar.js/i.test(scripts[ii].src))arrProducts["calendar"]=true;else if(/src\/menu.js/i.test(scripts[ii].src))arrProducts["menu"]=true;else if(/src\/tree.js/i.test(scripts[ii].src))arrProducts["tree"]=true;if(/wizard.js/i.test(scripts[ii].src))bWizard=true}var bProduct=false;for(ii in arrProducts)if(arrProducts[ii]){bProduct=true;break}if(!bProduct)return true;if(bWizard)return true;var anchors=document.getElementsByTagName('A');for(ii=0;ii<anchors.length;ii++)if(/(dev|www)\.zapatec\.com/i.test(anchors[ii].href))return true;var strMsg="";strMsg='You are using the Free version of the Zapatec Software.\n'+'While using the Free version, a link to www.zapatec.com in this page is required.';if(arrProducts["calendar"])strMsg+='\nTo purchase the Zapatec Calendar visit www.zapatec.com/website/main/products/prod1/.';if(arrProducts["menu"])strMsg+='\nTo purchase the Zapatec Menu visit www.zapatec.com/website/main/products/prod2/.';if(arrProducts["tree"])strMsg+='\nTo purchase the Zapatec Tree visit www.zapatec.com/website/main/products/prod3/.';alert(strMsg);return false;};Zapatec.is_opera=/opera/i.test(navigator.userAgent);Zapatec.is_ie=(/msie/i.test(navigator.userAgent)&& !Zapatec.is_opera);Zapatec.is_ie5=(Zapatec.is_ie&&/msie 5\.0/i.test(navigator.userAgent));Zapatec.is_mac_ie=(/msie.*mac/i.test(navigator.userAgent)&& !Zapatec.is_opera);Zapatec.is_khtml=/Konqueror|Safari|KHTML/i.test(navigator.userAgent);Zapatec.is_konqueror=/Konqueror/i.test(navigator.userAgent);Zapatec.is_gecko=/Gecko/i.test(navigator.userAgent);if(!Function.prototype.call){Function.prototype.call=function(){var self=arguments[0];self._this_func=this;var args=new Array();for(var i=1;i<arguments.length;i++){args[args.length]='arguments['+i+']';}var ret=eval('self._this_func('+args.join(',')+')');self._this_func=null;return ret;};}if(!Array.prototype.pop){Array.prototype.pop=function(){var last;if(this.length){last=this[this.length-1];this.length-=1;}return last;};}if(!Array.prototype.push){Array.prototype.push=function(){for(var i=0;i<arguments.length;i++){this[this.length]=arguments[i];}return this.length;};}if(!Array.prototype.shift){Array.prototype.shift=function(){var first;if(this.length){first=this[0];for(var i=0;i<this.length-1;i++){this[i]=this[i+1];}this.length-=1;}return first;};}if(!Array.prototype.unshift){Array.prototype.unshift=function(){if(arguments.length){var i,len=arguments.length;for(i=this.length+len-1;i>=len;i--){this[i]=this[i-len];}for(i=0;i<len;i++){this[i]=arguments[i];}}return this.length;};}if(!Array.prototype.splice){Array.prototype.splice=function(index,howMany){var elements=[],removed=[],i;for(i=2;i<arguments.length;i++){elements.push(arguments[i]);}for(i=index;(i<index+howMany)&&(i<this.length);i++){removed.push(this[i]);}for(i=index+howMany;i<this.length;i++){this[i-howMany]=this[i];}this.length-=removed.length;for(i=this.length+elements.length-1;i>=index+elements.length;i--){this[i]=this[i-elements.length];}for(i=0;i<elements.length;i++){this[index+i]=elements[i];}return removed;};} 
