/* * jQuery 1.2.6 - New Wave Javascript * * Copyright (c) 2008 John Resig (jquery.com) * Dual licensed under the MIT (MIT-LICENSE.txt) * and GPL (GPL-LICENSE.txt) licenses. * * $Date: 2008-05-24 14:22:17 -0400 (Sat, 24 May 2008) $ * $Rev: 5685 $ */ (function(){var _jQuery=window.jQuery,_$=window.$;var jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);};var quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/,isSimple=/^.[^:#\[\.]*$/,undefined;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;return this;}if(typeof selector=="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1])selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem){if(elem.id!=match[3])return jQuery().find(selector);return jQuery(elem);}selector=[];}}else return jQuery(context).find(selector);}else if(jQuery.isFunction(selector))return jQuery(document)[jQuery.fn.ready?"ready":"load"](selector);return this.setArray(jQuery.makeArray(selector));},jquery:"1.2.6",size:function(){return this.length;},length:0,get:function(num){return num==undefined?jQuery.makeArray(this):this[num];},pushStack:function(elems){var ret=jQuery(elems);ret.prevObject=this;return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){var ret=-1;return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(name.constructor==String)if(value===undefined)return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;}return this.each(function(i){for(name in options)jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0)value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!="object"&&text!=null)return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8)ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0])jQuery(html,this[0].ownerDocument).clone().insertBefore(this[0]).map(function(){var elem=this;while(elem.firstChild)elem=elem.firstChild;return elem;}).append(this);return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,false,function(elem){if(this.nodeType==1)this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,true,function(elem){if(this.nodeType==1)this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,true,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},find:function(selector){var elems=jQuery.map(this,function(elem){return jQuery.find(selector,elem);});return this.pushStack(/[^+>] [^+>]/.test(selector)||selector.indexOf("..")>-1?jQuery.unique(elems):elems);},clone:function(events){var ret=this.map(function(){if(jQuery.browser.msie&&!jQuery.isXMLDoc(this)){var clone=this.cloneNode(true),container=document.createElement("div");container.appendChild(clone);return jQuery.clean([container.innerHTML])[0];}else return this.cloneNode(true);});var clone=ret.find("*").andSelf().each(function(){if(this[expando]!=undefined)this[expando]=null;});if(events===true)this.find("*").andSelf().each(function(i){if(this.nodeType==3)return;var events=jQuery.data(this,"events");for(var type in events)for(var handler in events[type])jQuery.event.add(clone[i],type,events[type][handler],events[type][handler].data);});return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,this));},not:function(selector){if(selector.constructor==String)if(isSimple.test(selector))return this.pushStack(jQuery.multiFilter(selector,this,true));else selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector=='string'?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return this.is("."+selector);},val:function(value){if(value==undefined){if(this.length){var elem=this[0];if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0)return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length)this.selectedIndex=-1;}else this.value=value;});},html:function(value){return value==undefined?(this[0]?this[0].innerHTML:null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length)data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},domManip:function(args,table,reverse,callback){var clone=this.length>1,elems;return this.each(function(){if(!elems){elems=jQuery.clean(args,this.ownerDocument);if(reverse)elems.reverse();}var obj=this;if(table&&jQuery.nodeName(this,"table")&&jQuery.nodeName(elems[0],"tr"))obj=this.getElementsByTagName("tbody")[0]||this.appendChild(this.ownerDocument.createElement("tbody"));var scripts=jQuery([]);jQuery.each(elems,function(){var elem=clone?jQuery(this).clone(true)[0]:this;if(jQuery.nodeName(elem,"script"))scripts=scripts.add(elem);else{if(elem.nodeType==1)scripts=scripts.add(jQuery("script",elem).remove());callback.call(obj,elem);}});scripts.each(evalScript);});}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src)jQuery.ajax({url:elem.src,async:false,dataType:"script"});else jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode)elem.parentNode.removeChild(elem);}function now(){return+new Date;}jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(target.constructor==Boolean){deep=target;target=arguments[1]||{};i=2;}if(typeof target!="object"&&typeof target!="function")target={};if(length==i){target=this;--i;}for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];}callback.call(elem);for(var name in options)elem.style[name]=old[name];},css:function(elem,name,force){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;var padding=0,border=0;jQuery.each(which,function(){padding+=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;border+=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});val-=Math.round(padding+border);}if(jQuery(elem).is(":visible"))getWH();else jQuery.swap(elem,props,getWH);return Math.max(0,val);}return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;function color(elem){if(!jQuery.browser.safari)return false;var ret=defaultView.getComputedStyle(elem,null);return!ret||ret.getPropertyValue("color")=="";}if(name=="opacity"&&jQuery.browser.msie){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;}if(jQuery.browser.opera&&name=="display"){var save=style.outline;style.outline="0 solid black";style.outline=save;}if(name.match(/float/i))name=styleFloat;if(!force&&style&&style[name])ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i))name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle&&!color(elem))ret=computedStyle.getPropertyValue(name);else{var swap=[],stack=[],a=elem,i=0;for(;a&&color(a);a=a.parentNode)stack.unshift(a);for(;i]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=jQuery.trim(elem).toLowerCase(),div=context.createElement("div");var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||jQuery.browser.msie&&[1,"div
","
"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--)div=div.lastChild;if(jQuery.browser.msie){var tbody=!tags.indexOf(""&&tags.indexOf("=0;--j)if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length)tbody[j].parentNode.removeChild(tbody[j]);if(/^\s/.test(elem))div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);}elem=jQuery.makeArray(div.childNodes);}if(elem.length===0&&(!jQuery.nodeName(elem,"form")&&!jQuery.nodeName(elem,"select")))return;if(elem[0]==undefined||jQuery.nodeName(elem,"form")||elem.options)ret.push(elem);else ret=jQuery.merge(ret,elem);});return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8)return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined,msie=jQuery.browser.msie;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&jQuery.browser.safari)elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode)throw"type property can't be changed";elem[name]=value;}if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name))return elem.getAttributeNode(name).nodeValue;return elem[name];}if(msie&¬xml&&name=="style")return jQuery.attr(elem.style,"cssText",value);if(set)elem.setAttribute(name,""+value);var attr=msie&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;}if(msie&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");}return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";}name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set)elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||array.split||array.setInterval||array.call)ret[0]=array;else while(i)ret[--i]=array[i];}return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i*",this).remove();while(this.firstChild)this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});jQuery.each(["Height","Width"],function(i,name){var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?jQuery.browser.opera&&document.body["client"+name]||jQuery.browser.safari&&window["inner"+name]||document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(Math.max(document.body["scroll"+name],document.documentElement["scroll"+name]),Math.max(document.body["offset"+name],document.documentElement["offset"+name])):size==undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,size.constructor==String?size:size+"px");};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;}var chars=jQuery.browser.safari&&parseInt(jQuery.browser.version)<417?"(?:[\\w*_-]|\\\\.)":"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",quickChild=new RegExp("^>\\s*("+chars+"+)"),quickID=new RegExp("^("+chars+"+)(#)("+chars+"+)"),quickClass=new RegExp("^([#.]?)("+chars+"*)");jQuery.extend({expr:{"":function(a,i,m){return m[2]=="*"||jQuery.nodeName(a,m[2]);},"#":function(a,i,m){return a.getAttribute("id")==m[2];},":":{lt:function(a,i,m){return im[3]-0;},nth:function(a,i,m){return m[3]-0==i;},eq:function(a,i,m){return m[3]-0==i;},first:function(a,i){return i==0;},last:function(a,i,m,r){return i==r.length-1;},even:function(a,i){return i%2==0;},odd:function(a,i){return i%2;},"first-child":function(a){return a.parentNode.getElementsByTagName("*")[0]==a;},"last-child":function(a){return jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a;},"only-child":function(a){return!jQuery.nth(a.parentNode.lastChild,2,"previousSibling");},parent:function(a){return a.firstChild;},empty:function(a){return!a.firstChild;},contains:function(a,i,m){return(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0;},visible:function(a){return"hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden";},hidden:function(a){return"hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden";},enabled:function(a){return!a.disabled;},disabled:function(a){return a.disabled;},checked:function(a){return a.checked;},selected:function(a){return a.selected||jQuery.attr(a,"selected");},text:function(a){return"text"==a.type;},radio:function(a){return"radio"==a.type;},checkbox:function(a){return"checkbox"==a.type;},file:function(a){return"file"==a.type;},password:function(a){return"password"==a.type;},submit:function(a){return"submit"==a.type;},image:function(a){return"image"==a.type;},reset:function(a){return"reset"==a.type;},button:function(a){return"button"==a.type||jQuery.nodeName(a,"button");},input:function(a){return/input|select|textarea|button/i.test(a.nodeName);},has:function(a,i,m){return jQuery.find(m[3],a).length;},header:function(a){return/h\d/i.test(a.nodeName);},animated:function(a){return jQuery.grep(jQuery.timers,function(fn){return a==fn.elem;}).length;}}},parse:[/^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/,/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,new RegExp("^([:.#]*)("+chars+"+)")],multiFilter:function(expr,elems,not){var old,cur=[];while(expr&&expr!=old){old=expr;var f=jQuery.filter(expr,elems,not);expr=f.t.replace(/^\s*,\s*/,"");cur=not?elems=f.r:jQuery.merge(cur,f.r);}return cur;},find:function(t,context){if(typeof t!="string")return[t];if(context&&context.nodeType!=1&&context.nodeType!=9)return[];context=context||document;var ret=[context],done=[],last,nodeName;while(t&&last!=t){var r=[];last=t;t=jQuery.trim(t);var foundToken=false,re=quickChild,m=re.exec(t);if(m){nodeName=m[1].toUpperCase();for(var i=0;ret[i];i++)for(var c=ret[i].firstChild;c;c=c.nextSibling)if(c.nodeType==1&&(nodeName=="*"||c.nodeName.toUpperCase()==nodeName))r.push(c);ret=r;t=t.replace(re,"");if(t.indexOf(" ")==0)continue;foundToken=true;}else{re=/^([>+~])\s*(\w*)/i;if((m=re.exec(t))!=null){r=[];var merge={};nodeName=m[2].toUpperCase();m=m[1];for(var j=0,rl=ret.length;j=0;if(!not&&pass||not&&!pass)tmp.push(r[i]);}return tmp;},filter:function(t,r,not){var last;while(t&&t!=last){last=t;var p=jQuery.parse,m;for(var i=0;p[i];i++){m=p[i].exec(t);if(m){t=t.substring(m[0].length);m[2]=m[2].replace(/\\/g,"");break;}}if(!m)break;if(m[1]==":"&&m[2]=="not")r=isSimple.test(m[3])?jQuery.filter(m[3],r,true).r:jQuery(r).not(m[3]);else if(m[1]==".")r=jQuery.classFilter(r,m[2],not);else if(m[1]=="["){var tmp=[],type=m[3];for(var i=0,rl=r.length;i=0)^not)tmp.push(a);}r=tmp;}else if(m[1]==":"&&m[2]=="nth-child"){var merge={},tmp=[],test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[3]=="even"&&"2n"||m[3]=="odd"&&"2n+1"||!/\D/.test(m[3])&&"0n+"+m[3]||m[3]),first=(test[1]+(test[2]||1))-0,last=test[3]-0;for(var i=0,rl=r.length;i=0)add=true;if(add^not)tmp.push(node);}r=tmp;}else{var fn=jQuery.expr[m[1]];if(typeof fn=="object")fn=fn[m[2]];if(typeof fn=="string")fn=eval("false||function(a,i){return "+fn+";}");r=jQuery.grep(r,function(elem,i){return fn(elem,i,m,r);},not);}}return{r:r,t:t};},dir:function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1)matched.push(cur);cur=cur[dir];}return matched;},nth:function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir])if(cur.nodeType==1&&++num==result)break;return cur;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem)r.push(n);}return r;}});jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8)return;if(jQuery.browser.msie&&elem.setInterval)elem=window;if(!handler.guid)handler.guid=this.guid++;if(data!=undefined){var fn=handler;handler=this.proxy(fn,function(){return fn.apply(this,arguments);});handler.data=data;}var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){if(typeof jQuery!="undefined"&&!jQuery.event.triggered)return jQuery.event.handle.apply(arguments.callee.elem,arguments);});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];handler.type=parts[1];var handlers=events[type];if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem)===false){if(elem.addEventListener)elem.addEventListener(type,handle,false);else if(elem.attachEvent)elem.attachEvent("on"+type,handle);}}handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8)return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types==undefined||(typeof types=="string"&&types.charAt(0)=="."))for(var type in events)this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;}jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];if(events[type]){if(handler)delete events[type][handler.guid];else for(handler in events[type])if(!parts[1]||events[type][handler].type==parts[1])delete events[type][handler];for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem)===false){if(elem.removeEventListener)elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent)elem.detachEvent("on"+type,jQuery.data(elem,"handle"));}ret=null;delete events[type];}}});}for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(type,data,elem,donative,extra){data=jQuery.makeArray(data);if(type.indexOf("!")>=0){type=type.slice(0,-1);var exclusive=true;}if(!elem){if(this.global[type])jQuery("*").add([window,document]).trigger(type,data);}else{if(elem.nodeType==3||elem.nodeType==8)return undefined;var val,ret,fn=jQuery.isFunction(elem[type]||null),event=!data[0]||!data[0].preventDefault;if(event){data.unshift({type:type,target:elem,preventDefault:function(){},stopPropagation:function(){},timeStamp:now()});data[0][expando]=true;}data[0].type=type;if(exclusive)data[0].exclusive=true;var handle=jQuery.data(elem,"handle");if(handle)val=handle.apply(elem,data);if((!fn||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false)val=false;if(event)data.shift();if(extra&&jQuery.isFunction(extra)){ret=extra.apply(elem,val==null?data:data.concat(val));if(ret!==undefined)val=ret;}if(fn&&donative!==false&&val!==false&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}}this.triggered=false;}return val;},handle:function(event){var val,ret,namespace,all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);namespace=event.type.split(".");event.type=namespace[0];namespace=namespace[1];all=!namespace&&!event.exclusive;handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||handler.type==namespace){event.handler=handler;event.data=handler.data;ret=handler.apply(this,arguments);if(val!==false)val=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}}return val;},fix:function(event){if(event[expando]==true)return event;var originalEvent=event;event={originalEvent:originalEvent};var props="altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" ");for(var i=props.length;i;i--)event[props[i]]=originalEvent[props[i]];event[expando]=true;event.preventDefault=function(){if(originalEvent.preventDefault)originalEvent.preventDefault();originalEvent.returnValue=false;};event.stopPropagation=function(){if(originalEvent.stopPropagation)originalEvent.stopPropagation();originalEvent.cancelBubble=true;};event.timeStamp=event.timeStamp||now();if(!event.target)event.target=event.srcElement||document;if(event.target.nodeType==3)event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement)event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);}if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode))event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey)event.metaKey=event.ctrlKey;if(!event.which&&event.button)event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:function(){bindReady();return;},teardown:function(){return;}},mouseenter:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseover",jQuery.event.special.mouseenter.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseover",jQuery.event.special.mouseenter.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseenter";return jQuery.event.handle.apply(this,arguments);}},mouseleave:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseout",jQuery.event.special.mouseleave.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseout",jQuery.event.special.mouseleave.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseleave";return jQuery.event.handle.apply(this,arguments);}}}};jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data,fn){return this.each(function(){jQuery.event.trigger(type,data,this,true,fn);});},triggerHandler:function(type,data,fn){return this[0]&&jQuery.event.trigger(type,data,this[0],false,fn);},toggle:function(fn){var args=arguments,i=1;while(i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);}callback=callback||function(){};var type="GET";if(params)if(jQuery.isFunction(params)){callback=params;params=null;}else{params=jQuery.param(params);type="POST";}var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified")self.html(selector?jQuery("
").append(res.responseText.replace(//g,"")).find(selector):res.responseText);self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return jQuery.nodeName(this,"form")?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:val.constructor==Array?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;}return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};}return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",timeout:0,contentType:"application/x-www-form-urlencoded",processData:true,async:true,data:null,username:null,password:null,accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!="string")s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre))s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre))s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";}if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data)s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){}if(head)head.removeChild(script);};}if(s.dataType=="script"&&s.cache==null)s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");}if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;}if(s.global&&!jQuery.active++)jQuery.event.trigger("ajaxStart");var remote=/^(?:\w+:)?\/\/([^\/?#]+)/;if(s.dataType=="script"&&type=="GET"&&remote.test(s.url)&&remote.exec(s.url)[1]!=location.host){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset)script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();head.removeChild(script);}};}head.appendChild(script);return undefined;}var requestDone=false;var xhr=window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();if(s.username)xhr.open(type,s.url,s.async,s.username,s.password);else xhr.open(type,s.url,s.async);try{if(s.data)xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified)xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){}if(s.beforeSend&&s.beforeSend(xhr,s)===false){s.global&&jQuery.active--;xhr.abort();return false;}if(s.global)jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;}status=isTimeout=="timeout"&&"timeout"||!jQuery.httpSuccess(xhr)&&"error"||s.ifModified&&jQuery.httpNotModified(xhr,s.url)&&"notmodified"||"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s.dataFilter);}catch(e){status="parsererror";}}if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){}if(s.ifModified&&modRes)jQuery.lastModified[s.url]=modRes;if(!jsonp)success();}else jQuery.handleError(s,xhr,status);complete();if(s.async)xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0)setTimeout(function(){if(xhr){xhr.abort();if(!requestDone)onreadystatechange("timeout");}},s.timeout);}try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);}if(!s.async)onreadystatechange();function success(){if(s.success)s.success(data,status);if(s.global)jQuery.event.trigger("ajaxSuccess",[xhr,s]);}function complete(){if(s.complete)s.complete(xhr,status);if(s.global)jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active)jQuery.event.trigger("ajaxStop");}return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global)jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223||jQuery.browser.safari&&xhr.status==undefined;}catch(e){}return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url]||jQuery.browser.safari&&xhr.status==undefined;}catch(e){}return false;},httpData:function(xhr,type,filter){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror")throw"parsererror";if(filter)data=filter(data,type);if(type=="script")jQuery.globalEval(data);if(type=="json")data=eval("("+data+")");return data;},param:function(a){var s=[];if(a.constructor==Array||a.jquery)jQuery.each(a,function(){s.push(encodeURIComponent(this.name)+"="+encodeURIComponent(this.value));});else for(var j in a)if(a[j]&&a[j].constructor==Array)jQuery.each(a[j],function(){s.push(encodeURIComponent(j)+"="+encodeURIComponent(this));});else s.push(encodeURIComponent(j)+"="+encodeURIComponent(jQuery.isFunction(a[j])?a[j]():a[j]));return s.join("&").replace(/%20/g,"+");}});jQuery.fn.extend({show:function(speed,callback){return speed?this.animate({height:"show",width:"show",opacity:"show"},speed,callback):this.filter(":hidden").each(function(){this.style.display=this.oldblock||"";if(jQuery.css(this,"display")=="none"){var elem=jQuery("<"+this.tagName+" />").appendTo("body");this.style.display=elem.css("display");if(this.style.display=="none")this.style.display="block";elem.remove();}}).end();},hide:function(speed,callback){return speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,callback):this.filter(":visible").each(function(){this.oldblock=this.oldblock||jQuery.css(this,"display");this.style.display="none";}).end();},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){return jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle.apply(this,arguments):fn?this.animate({height:"toggle",width:"toggle",opacity:"toggle"},fn,fn2):this.each(function(){jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"]();});},slideDown:function(speed,callback){return this.animate({height:"show"},speed,callback);},slideUp:function(speed,callback){return this.animate({height:"hide"},speed,callback);},slideToggle:function(speed,callback){return this.animate({height:"toggle"},speed,callback);},fadeIn:function(speed,callback){return this.animate({opacity:"show"},speed,callback);},fadeOut:function(speed,callback){return this.animate({opacity:"hide"},speed,callback);},fadeTo:function(speed,to,callback){return this.animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);return this[optall.queue===false?"each":"queue"](function(){if(this.nodeType!=1)return false;var opt=jQuery.extend({},optall),p,hidden=jQuery(this).is(":hidden"),self=this;for(p in prop){if(prop[p]=="hide"&&hidden||prop[p]=="show"&&!hidden)return opt.complete.call(this);if(p=="height"||p=="width"){opt.display=jQuery.css(this,"display");opt.overflow=this.style.overflow;}}if(opt.overflow!=null)this.style.overflow="hidden";opt.curAnim=jQuery.extend({},prop);jQuery.each(prop,function(name,val){var e=new jQuery.fx(self,opt,name);if(/toggle|show|hide/.test(val))e[val=="toggle"?hidden?"show":"hide":val](prop);else{var parts=val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),start=e.cur(true)||0;if(parts){var end=parseFloat(parts[2]),unit=parts[3]||"px";if(unit!="px"){self.style[name]=(end||1)+unit;start=((end||1)/e.cur(true))*start;self.style[name]=start+unit;}if(parts[1])end=((parts[1]=="-="?-1:1)*end)+start;e.custom(start,end,unit);}else e.custom(start,val,"");}});return true;});},queue:function(type,fn){if(jQuery.isFunction(type)||(type&&type.constructor==Array)){fn=type;type="fx";}if(!type||(typeof type=="string"&&!fn))return queue(this[0],type);return this.each(function(){if(fn.constructor==Array)queue(this,type,fn);else{queue(this,type).push(fn);if(queue(this,type).length==1)fn.call(this);}});},stop:function(clearQueue,gotoEnd){var timers=jQuery.timers;if(clearQueue)this.queue([]);this.each(function(){for(var i=timers.length-1;i>=0;i--)if(timers[i].elem==this){if(gotoEnd)timers[i](true);timers.splice(i,1);}});if(!gotoEnd)this.dequeue();return this;}});var queue=function(elem,type,array){if(elem){type=type||"fx";var q=jQuery.data(elem,type+"queue");if(!q||array)q=jQuery.data(elem,type+"queue",jQuery.makeArray(array));}return q;};jQuery.fn.dequeue=function(type){type=type||"fx";return this.each(function(){var q=queue(this,type);q.shift();if(q.length)q[0].call(this);});};jQuery.extend({speed:function(speed,easing,fn){var opt=speed&&speed.constructor==Object?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&easing.constructor!=Function&&easing};opt.duration=(opt.duration&&opt.duration.constructor==Number?opt.duration:jQuery.fx.speeds[opt.duration])||jQuery.fx.speeds.def;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false)jQuery(this).dequeue();if(jQuery.isFunction(opt.old))opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],timerId:null,fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig)options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step)this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if(this.prop=="height"||this.prop=="width")this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&this.elem.style[this.prop]==null)return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;this.update();var self=this;function t(gotoEnd){return self.step(gotoEnd);}t.elem=this.elem;jQuery.timers.push(t);if(jQuery.timerId==null){jQuery.timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;ithis.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim)if(this.options.curAnim[i]!==true)done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none")this.elem.style.display="block";}if(this.options.hide)this.elem.style.display="none";if(this.options.hide||this.options.show)for(var p in this.options.curAnim)jQuery.attr(this.elem.style,p,this.options.orig[p]);}if(done)this.options.complete.call(this.elem);return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();}return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,def:400},step:{scrollLeft:function(fx){fx.elem.scrollLeft=fx.now;},scrollTop:function(fx){fx.elem.scrollTop=fx.now;},opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){fx.elem.style[fx.prop]=fx.now+fx.unit;}}});jQuery.fn.offset=function(){var left=0,top=0,elem=this[0],results;if(elem)with(jQuery.browser){var parent=elem.parentNode,offsetChild=elem,offsetParent=elem.offsetParent,doc=elem.ownerDocument,safari2=safari&&parseInt(version)<522&&!/adobeair/i.test(userAgent),css=jQuery.curCSS,fixed=css(elem,"position")=="fixed";if(elem.getBoundingClientRect){var box=elem.getBoundingClientRect();add(box.left+Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),box.top+Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));add(-doc.documentElement.clientLeft,-doc.documentElement.clientTop);}else{add(elem.offsetLeft,elem.offsetTop);while(offsetParent){add(offsetParent.offsetLeft,offsetParent.offsetTop);if(mozilla&&!/^t(able|d|h)$/i.test(offsetParent.tagName)||safari&&!safari2)border(offsetParent);if(!fixed&&css(offsetParent,"position")=="fixed")fixed=true;offsetChild=/^body$/i.test(offsetParent.tagName)?offsetChild:offsetParent;offsetParent=offsetParent.offsetParent;}while(parent&&parent.tagName&&!/^body|html$/i.test(parent.tagName)){if(!/^inline|table.*$/i.test(css(parent,"display")))add(-parent.scrollLeft,-parent.scrollTop);if(mozilla&&css(parent,"overflow")!="visible")border(parent);parent=parent.parentNode;}if((safari2&&(fixed||css(offsetChild,"position")=="absolute"))||(mozilla&&css(offsetChild,"position")!="absolute"))add(-doc.body.offsetLeft,-doc.body.offsetTop);if(fixed)add(Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));}results={top:top,left:left};}function border(elem){add(jQuery.curCSS(elem,"borderLeftWidth",true),jQuery.curCSS(elem,"borderTopWidth",true));}function add(l,t){left+=parseInt(l,10)||0;top+=parseInt(t,10)||0;}return results;};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};}return results;},offsetParent:function(){var offsetParent=this[0].offsetParent;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static'))offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return;return val!=undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom";jQuery.fn["inner"+name]=function(){return this[name.toLowerCase()]()+num(this,"padding"+tl)+num(this,"padding"+br);};jQuery.fn["outer"+name]=function(margin){return this["inner"+name]()+num(this,"border"+tl+"Width")+num(this,"border"+br+"Width")+(margin?num(this,"margin"+tl)+num(this,"margin"+br):0);};});})(); /** * jQuery.ScrollTo - Easy element scrolling using jQuery. * Copyright (c) 2008 Ariel Flesler - aflesler(at)gmail(dot)com | http://flesler.blogspot.com * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses. * Date: 2/19/2008 * @author Ariel Flesler * @version 1.3.3 */ ;(function($){var o=$.scrollTo=function(a,b,c){o.window().scrollTo(a,b,c)};o.defaults={axis:'y',duration:1};o.window=function(){return $($.browser.safari?'body':'html')};$.fn.scrollTo=function(l,m,n){if(typeof m=='object'){n=m;m=0}n=$.extend({},o.defaults,n);m=m||n.speed||n.duration;n.queue=n.queue&&n.axis.length>1;if(n.queue)m/=2;n.offset=j(n.offset);n.over=j(n.over);return this.each(function(){var a=this,b=$(a),t=l,c,d={},w=b.is('html,body');switch(typeof t){case'number':case'string':if(/^([+-]=)?\d+(px)?$/.test(t)){t=j(t);break}t=$(t,this);case'object':if(t.is||t.style)c=(t=$(t)).offset()}$.each(n.axis.split(''),function(i,f){var P=f=='x'?'Left':'Top',p=P.toLowerCase(),k='scroll'+P,e=a[k],D=f=='x'?'Width':'Height';if(c){d[k]=c[p]+(w?0:e-b.offset()[p]);if(n.margin){d[k]-=parseInt(t.css('margin'+P))||0;d[k]-=parseInt(t.css('border'+P+'Width'))||0}d[k]+=n.offset[p]||0;if(n.over[p])d[k]+=t[D.toLowerCase()]()*n.over[p]}else d[k]=t[p];if(/^\d+$/.test(d[k]))d[k]=d[k]<=0?0:Math.min(d[k],h(D));if(!i&&n.queue){if(e!=d[k])g(n.onAfterFirst);delete d[k]}});g(n.onAfter);function g(a){b.animate(d,m,n.easing,a&&function(){a.call(this,l)})};function h(D){var b=w?$.browser.opera?document.body:document.documentElement:a;return b['scroll'+D]-b['client'+D]}})};function j(a){return typeof a=='object'?a:{top:a,left:a}}})(jQuery); var current_nav_id = ''; var doHide = false; var liToRestore = null; function showMenu(id, submenuId) { doHide = false; current_nav_id = id; var pos = $('#'+ id).position(); var lr = document.getElementById(submenuId); lr.style.top = pos.top + $('#'+ id).height() + 'px'; lr.style.left = pos.left + 'px'; $('#'+submenuId).show(); $('#li_'+ id ).addClass('current'); } function forceHideAll() { doHide = true; $('li[class=current]').removeClass('current'); $('.submenu').hide(); } function hideMenu(id) { doHide = true; setTimeout(delayHide, 500); } function delayHide() { if(doHide) { $('#li_'+ current_nav_id ).removeClass('current'); $('.submenu').hide(); } } /* Copyright (c) 2007 Paul Bakaus (paul.bakaus@googlemail.com) and Brandon Aaron (brandon.aaron@gmail.com || http://brandonaaron.net) * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses. * * $LastChangedDate: 2007-08-12 22:47:23 -0500 (Sun, 12 Aug 2007) $ * $Rev: 2669 $ * * Version: 1.1 * * Requires: jQuery 1.1.3+ */ eval(function(p,a,c,k,e,r){e=function(c){return(c35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(8($){k e=$.1u.B,p=$.1u.p;$.1u.J({B:8(){3(!1[0])f();3(1[0]==o)3(($.9.15||$.9.O)&&$(5).p()>m.18)6 m.16-i();s 6 m.16||$.K&&5.11.1I||5.n.1I;3(1[0]==5)6 1F.1E(5.n.1W,5.n.1b);6 e.1x(1,1Q)},p:8(){3(!1[0])f();3(1[0]==o)3(($.9.15||$.9.O)&&$(5).B()>m.16)6 m.18-i();s 6 m.18||$.K&&5.11.1P||5.n.1P;3(1[0]==5)3($.9.15){k a=m.1t;m.19(26,m.1s);k b=m.1t;m.19(a,m.1s);6 5.n.17+b}s 6 1F.1E(5.n.25,5.n.17);6 p.1x(1,1Q)},16:8(){3(!1[0])f();6 1[0]==o||1[0]==5?1.B():1.V(\':L\')?1[0].1b-h(1,\'t\')-h(1,\'1M\'):1.B()+h(1,\'1m\')+h(1,\'1L\')},18:8(){3(!1[0])f();6 1[0]==o||1[0]==5?1.p():1.V(\':L\')?1[0].17-h(1,\'r\')-h(1,\'1H\'):1.p()+h(1,\'1i\')+h(1,\'1G\')},23:8(a){3(!1[0])f();a=$.J({w:u},a||{});6 1[0]==o||1[0]==5?1.B():1.V(\':L\')?1[0].1b+(a.w?(h(1,\'H\')+h(1,\'1D\')):0):1.B()+h(1,\'t\')+h(1,\'1M\')+h(1,\'1m\')+h(1,\'1L\')+(a.w?(h(1,\'H\')+h(1,\'1D\')):0)},1V:8(a){3(!1[0])f();a=$.J({w:u},a||{});6 1[0]==o||1[0]==5?1.p():1.V(\':L\')?1[0].17+(a.w?(h(1,\'I\')+h(1,\'1y\')):0):1.p()+h(1,\'r\')+h(1,\'1H\')+h(1,\'1i\')+h(1,\'1G\')+(a.w?(h(1,\'I\')+h(1,\'1y\')):0)},l:8(a){3(!1[0])f();3(a!=1B)6 1.1w(8(){3(1==o||1==5)o.19(a,$(o).q());s 1.l=a});3(1[0]==o||1[0]==5)6 m.1t||$.K&&5.11.l||5.n.l;6 1[0].l},q:8(a){3(!1[0])f();3(a!=1B)6 1.1w(8(){3(1==o||1==5)o.19($(o).l(),a);s 1.q=a});3(1[0]==o||1[0]==5)6 m.1s||$.K&&5.11.q||5.n.q;6 1[0].q},Y:8(a){6 1.1N({w:u,C:u,v:1.z()},a)},1N:8(b,c){3(!1[0])f();k x=0,y=0,G=0,F=0,7=1[0],4=1[0],N,X,W=$.A(7,\'Y\'),E=$.9.15,M=$.9.24,14=$.9.O,1r=$.9.13,P=$.9.13&&12($.9.1q)>1p,1o=u,1n=u,b=$.J({w:Q,10:u,1e:u,C:Q,1K:u,v:5.n},b||{});3(b.1K)6 1.1J(b,c);3(b.v.1k)b.v=b.v[0];3(7.D==\'U\'){x=7.S;y=7.R;3(E){x+=h(7,\'I\')+(h(7,\'r\')*2);y+=h(7,\'H\')+(h(7,\'t\')*2)}s 3(14){x+=h(7,\'I\');y+=h(7,\'H\')}s 3((M&&1g.K)){x+=h(7,\'r\');y+=h(7,\'t\')}s 3(P){x+=h(7,\'I\')+h(7,\'r\');y+=h(7,\'H\')+h(7,\'t\')}}s{Z{X=$.A(4,\'Y\');x+=4.S;y+=4.R;3(E||M||P){x+=h(4,\'r\');y+=h(4,\'t\');3(E&&X==\'1f\')1o=Q;3(M&&X==\'22\')1n=Q}N=4.z||5.n;3(b.C||E){Z{3(b.C){G+=4.l;F+=4.q}3(14&&($.A(4,\'21\')||\'\').20(/1Z-1Y|1X/)){G=G-((4.l==4.S)?4.l:0);F=F-((4.q==4.R)?4.q:0)}3(E&&4!=7&&$.A(4,\'1d\')!=\'L\'){x+=h(4,\'r\');y+=h(4,\'t\')}4=4.1C}T(4!=N)}4=N;3(4==b.v&&!(4.D==\'U\'||4.D==\'1c\')){3(E&&4!=7&&$.A(4,\'1d\')!=\'L\'){x+=h(4,\'r\');y+=h(4,\'t\')}3(((1r&&!P)||14)&&X!=\'1l\'){x-=h(N,\'r\');y-=h(N,\'t\')}1A}3(4.D==\'U\'||4.D==\'1c\'){3(((1r&&!P)||(M&&$.K))&&W!=\'1f\'&&W!=\'1z\'){x+=h(4,\'I\');y+=h(4,\'H\')}3(P||(E&&!1o&&W!=\'1z\')||(M&&W==\'1l\'&&!1n)){x+=h(4,\'r\');y+=h(4,\'t\')}1A}}T(4)}k a=j(7,b,x,y,G,F);3(c){$.J(c,a);6 1}s{6 a}},1J:8(b,c){3(!1[0])f();k x=0,y=0,G=0,F=0,4=1[0],z,b=$.J({w:Q,10:u,1e:u,C:Q,v:5.n},b||{});3(b.v.1k)b.v=b.v[0];Z{x+=4.S;y+=4.R;z=4.z||5.n;3(b.C){Z{G+=4.l;F+=4.q;4=4.1C}T(4!=z)}4=z}T(4&&4.D!=\'U\'&&4.D!=\'1c\'&&4!=b.v);k a=j(1[0],b,x,y,G,F);3(c){$.J(c,a);6 1}s{6 a}},z:8(){3(!1[0])f();k a=1[0].z;T(a&&(a.D!=\'U\'&&$.A(a,\'Y\')==\'1l\'))a=a.z;6 $(a)}});k f=8(){1U"1T: 1g 1S V 1R";};k h=8(a,b){6 12($.A(a.1k?a[0]:a,b))||0};k j=8(a,b,x,y,d,c){3(!b.w){x-=h(a,\'I\');y-=h(a,\'H\')}3(b.10&&(($.9.13&&12($.9.1q)<1p)||$.9.O)){x+=h(a,\'r\');y+=h(a,\'t\')}s 3(!b.10&&!(($.9.13&&12($.9.1q)<1p)||$.9.O)){x-=h(a,\'r\');y-=h(a,\'t\')}3(b.1e){x+=h(a,\'1i\');y+=h(a,\'1m\')}3(b.C&&(!$.9.O||a.S!=a.l&&a.R!=a.l)){d-=a.l;c-=a.q}6 b.C?{1h:y-c,1j:x-d,q:c,l:d}:{1h:y,1j:x}};k g=0;k i=8(){3(!g){k a=$(\'<1v>\').A({p:1a,B:1a,1d:\'2c\',Y:\'1f\',1h:-1O,1j:-1O}).2b(\'n\');g=1a-a.2a(\'<1v>\').29(\'1v\').A({p:\'1a%\',B:28}).p();a.27()}6 g}})(1g);',62,137,'|this||if|parent|document|return|elem|function|browser|||||||||||var|scrollLeft|self|body|window|width|scrollTop|borderLeftWidth|else|borderTopWidth|false|relativeTo|margin|||offsetParent|css|height|scroll|tagName|mo|st|sl|marginTop|marginLeft|extend|boxModel|visible|ie|op|opera|sf3|true|offsetTop|offsetLeft|while|BODY|is|elemPos|parPos|position|do|border|documentElement|parseInt|safari|oa|mozilla|innerHeight|offsetWidth|innerWidth|scrollTo|100|offsetHeight|HTML|overflow|padding|absolute|jQuery|top|paddingLeft|left|jquery|static|paddingTop|relparent|absparent|520|version|sf|pageYOffset|pageXOffset|fn|div|each|apply|marginRight|fixed|break|undefined|parentNode|marginBottom|max|Math|paddingRight|borderRightWidth|clientHeight|offsetLite|lite|paddingBottom|borderBottomWidth|offset|1000|clientWidth|arguments|empty|collection|Dimensions|throw|outerWidth|scrollHeight|inline|row|table|match|display|relative|outerHeight|msie|scrollWidth|99999999|remove|200|find|append|appendTo|auto'.split('|'),0,{})) function $_get(controlId) { return document.getElementById(controlId); } function $F(controlId) { return $_get(controlId).value; } function Validator() { this.controlToFocus = null; this.errors = new Array(); } Validator.prototype._isLeapYear = function(year) { if (year % 4 != 0) { return false; } else { if (year % 100 != 0) { return true; } else { if (year % 400 != 0) { return false; } else { return true; } } } } Validator.prototype._updateError = function(ctlId, message) { if(this.controlToFocus == null) { this.controlToFocus = ctlId; } this.errors[this.errors.length] = message; } Validator.prototype.checkData = function(ctlId, message) { if($F(ctlId) == '') { this._updateError(ctlId, message); return false; } return true; } Validator.prototype.checkEmail = function(ctlId, message) { var email = $F(ctlId); if(email == '') { return true; } //var emailRegxp = /^([\w]+)(.[\w]+)*@([\w]+)(.[\w]{2,3}){1,2}$/; var emailRegxp = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i); if(emailRegxp.test(email) != true) { this._updateError(ctlId, message); return false; } return true; } Validator.prototype.checkDate = function(ctlId, message) { var dateValue = $F(ctlId); if(dateValue == '') return true; var parts = dateValue.split('/'); if(parts.length != 3) { this._updateError(ctlId, message); return false; } var day = parseInt(parts[0] ,10); var month = parseInt(parts[1] ,10); var year = parseInt(parts[2] ,10); if(isNaN(day) || isNaN(month) || isNaN(year)) { this._updateError(ctlId, message); return false; } if(year > 1990 && year < 3000) { if(month >= 1 && month <= 12) { var isLeapYear = this._isLeapYear(year); var daysInMonth = 31; if(month == 2 ) { if(isLeapYear) { daysInMonth = 29; } else { daysInMonth = 28; } } else if(month == 4 || month == 6 || month == 9 || month == 11) { daysInMonth = 30; } else { daysInMonth = 31; } if(day >= 1 && day <= daysInMonth) { return true; } } } this._updateError(ctlId, message); return false; } Validator.prototype.checkNumeric = function(ctlId, message) { if($F(ctlId) != '') { if( isNaN($F(ctlId)) ) { this._updateError(ctlId, message); return false; } } return true; } Validator.prototype.addError = function(ctlId, message) { this._updateError(ctlId, message); } Validator.prototype.isValid = function() { return (this.errors.length == 0); } Validator.prototype.putFocus = function() { var ctl = $_get(this.controlToFocus); if(ctl && ctl.focus) { ctl.focus(); if(ctl.select) { ctl.select(); } } } Validator.prototype.showMessageBox = function() { var totalErrors = this.errors.length; if(totalErrors > 0) { var txt = '';//'
'; txt += "Please check the following error(s):\n"; for(var i = 0; i < totalErrors; i++) { txt += '* ' + this.errors[i] + '\n'; } alert(txt); return true; } return false; } Validator.prototype.report = function(container, errorCss) { var totalErrors = this.errors.length; if(totalErrors > 0) { var html = '';//'
'; html += 'Please check the following error(s):
    '; for(var i = 0; i < totalErrors; i++) { html += '
  • ' + this.errors[i] + '
  • '; } html += '
'; //html += '
'; //$(container).style.display = ''; /*$(container).className = errorCss; $(container).innerHTML = html;*/ $("#"+container).attr('class', errorCss).html(html).fadeIn(); return true; } return false; } /** * Class: FrameRequest * * author: Mohammad Ruhul Amin * date: 29 Jul 2006 * version: 1.0.0 */ var FrameRequest = { /** * post request in frame * * @param string frameName * @param string fromName * @param string url */ doPost: function(frameName, formName, url) { var frm = document.forms[formName]; frm.action = url; frm.target = frameName; frm.submit(); }, /** * get request in frame * * @param string frameName * @param string url */ doGet: function(frameName, url) { $_get(frameName).src = url; } } /** * common functions */ function message(container, msg, css) { scroll(0,0); $('#' + container).html(msg).attr('class', css).slideDown('fast'); /* $_get(container).innerHTML = msg; $_get(container).className = css; $_get(container).show();*/ } function toJsonObj(data) { var obj = null; eval('obj = ' + data + ';'); return obj; } function busy(message, css) { var id = '__ajx_status'; var ctl = $_get(id); if(!ctl) { ctl = document.createElement('div'); document.body.appendChild(ctl); } ctl.id = id; ctl.innerHTML = message; ctl.className = css; ctl.style.zIndex = 400; ctl.style.position = 'absolute'; var pos = 0; if (window.innerHeight) { pos = window.pageYOffset } else if (document.documentElement && document.documentElement.scrollTop) { pos = document.documentElement.scrollTop } else if (document.body) { pos = document.body.scrollTop } ctl.style.top = pos + 'px'; ctl.style.right = '0px'; ctl.style.display = ''; } function free() { var id = '__ajx_status'; if($_get(id)) { $_get(id).style.display = 'none'; } } function toggleDisplay(control, controlToFocus) { if($_get(control).style.display == '') { $_get(control).style.display = 'none'; } else { $_get(control).style.display = ''; if($_get(controlToFocus)) { if($_get(controlToFocus).focus) { $_get(controlToFocus).focus(); } if($_get(controlToFocus).select) { $_get(controlToFocus).select(); } } } } /// var $U = { ctl : function(e) { if(typeof e != 'object') { e = document.getElementById(e); } return e; }, defined: function(e) { return (typeof e != 'undefined'); }, build : function() { var ctl = $U.ctl(arguments[0]); if(!ctl || !ctl.id) { var tag = 'div'; if(arguments.length > 1) tag = arguments[1]; ctl = document.createElement(tag); ctl.id = arguments[0]; var container = document.body; if(arguments.length > 2) container = $U.ctl(arguments[2]); container.appendChild(ctl); } return ctl; }, show : function(e) { var ctl = $U.ctl(e); ctl.style.display = ''; }, hide : function(e) { var ctl = $U.ctl(e); ctl.style.display = 'none'; }, visible : function(e, status) { var ctl = $U.ctl(e); if(status) { ctl.style.visibility = 'visible'; } else { ctl.style.visibility = 'hidden'; } }, focus : function(e) { var ctl = $U.ctl(e); if(ctl.select) { ctl.select(); } if(ctl.focus) { ctl.focus(); } }, html : function(e, html) { var ctl = $U.ctl(e); ctl.innerHTML = html; }, checked: function(e) { var ctl = $U.ctl(arguments[0]); if(arguments.length > 1) { ctl.checked = arguments[1]; return; } return ctl.checked; }, disabled: function(e) { var ctl = $U.ctl(arguments[0]); if(arguments.length > 1) { ctl.disabled = arguments[1]; return; } return ctl.disabled; }, radioVal: function() { var total = arguments.length; var ctls = document.getElementsByName(arguments[0]); if(total == 2) { var val = arguments[1]; // set for(var i = 0; i < ctls.length; i++) { var ctl = ctls[i]; if(ctl.value == val) { ctl.checked = true; return true; } } return false; } else { // get for(var i = 0; i < ctls.length; i++) { var ctl = ctls[i]; if(ctl.checked) { return ctl.value; } } return null; } }, text : function() { var total = arguments.length; var ctl = $U.ctl(arguments[0]); if(ctl.type == 'text' || ctl.type == 'hidden' || ctl.type == 'file' || ctl.type == 'select-one' || ctl.type == 'textarea') { if(total == 1) return ctl.value; ctl.value = arguments[1]; } else if(ctl.type == 'checkbox' || ctl.type == 'radio') { if(total == 1) { if(ctl.checked) { return ctl.value; } return null; } else { ctl.checked = (ctl.value == arguments[1]); } } }, listValues : function() { var total = arguments.length; var ctl = $U.ctl(arguments[0]); var totalOptions = ctl.options.length; if(total == 1) { var result = new Array(); for(var i = 0; i < totalOptions; i++) { var opt = ctl.options[i]; if(opt.selected) { result[result.length] = opt.value; } } return result; } var data = arguments[1]; var totalData = data.length; for(var i = 0; i < totalOptions; i++) { var opt = ctl.options[i]; opt.selected = false; for(var j = 0; j < totalData; j++) { if(opt.value == data[j]) { opt.selected = true; } } } }, clearOptions : function(e) { var ctl = $U.ctl(e); var total = ctl.options.length; for(var i = 0; i < total; i++) { ctl.options[0] = null; } }, addOption : function(e, text, value) { var ctl = $U.ctl(e); ctl.options[ctl.options.length] = new Option(text, value); }, removeOption: function(e, value) { var ctl = $U.ctl(e); var total = ctl.options.length; for(var i = 0; i < total; i++) { if(ctl.options[i].value == value) { ctl.options[i] = null; return; } } }, setDropDownDisplay : function(e) { var elements = document.getElementsByTagName('select'); var total = elements.length; for(var i = 0; i < total; i++) { $U.visible(elements[i], e); } }, viewPortInfo: function() { var vpWidth = 0; var vpHeight = 0; var cntHeight = 0; var scrollX = 0; var scrollY = 0; if(document.documentElement && document.documentElement.clientWidth) { vpWidth = document.documentElement.clientWidth; vpHeight = document.documentElement.clientHeight; } else if(document.body && document.body.clientWidth) { vpWidth = document.body.clientWidth; vpHeight = document.body.clientHeight; } else if(window.innerWidth) { vpWidth = window.innerWidth; vpHeight = window.innerHeight - 18; } if(document.body && document.body.offsetHeight) { cntHeight = document.body.offsetHeight; } if(document.documentElement && (document.documentElement.scrollLeft || document.documentElement.scrollTop)) { scrollX = document.documentElement.scrollLeft; scrollY = document.documentElement.scrollTop; } else if(document.body && (document.body.scrollLeft || document.body.scrollTop)) { scrollX = document.body.scrollLeft; scrollY = document.body.scrollTop; } else if(window.pageXOffset || window.pageYOffset) { scrollX = window.pageXOffset; scrollY = window.pageYOffset; } else if(window.scrollX || window.scrollY) { scrollX = window.scrollX; scrollY = window.scrollY; } return {'width' : vpWidth, 'height' : vpHeight, 'contentHeight' : cntHeight, 'scrollX' : scrollX, 'scrollY' : scrollY}; }, position: function() { var ctl = $U.ctl(arguments[0]); if(arguments.length == 1) { var width = ctl.offsetWidth; var height = ctl.offsetHeight; var curleft = curtop = 0; if (ctl.offsetParent) { do { curleft += ctl.offsetLeft; curtop += ctl.offsetTop; } while (ctl = ctl.offsetParent); } return {'left' : curleft, 'top' : curtop, 'width' : width, 'height': height}; } else { var pos = arguments[1]; ctl.style.position = 'absolute'; if(!$U.defined(pos.noDisplay)) $U.show(ctl); if ($U.defined(pos.width)) ctl.style.width = pos.width + 'px'; if ($U.defined(pos.height)) ctl.style.height = pos.height + 'px'; if(pos.align) { var info = $U.viewPortInfo(); var x = ((info.width - ctl.offsetWidth)/2); var y = ((info.height - ctl.offsetHeight)/2) + info.scrollY; if(pos.align == 't') { y = 0; } else if(pos.align == 'b') { y = (info.height - ctl.offsetHeight); } else if(pos.align == 'l') { x = 0; } else if(pos.align == 'r') { x = (info.width - ctl.offsetWidth); } else if(pos.align == 'tl' || pos.align == 'lt') { x = 0; y = info.scrollY; } else if(pos.align == 'tr' || pos.align == 'rt') { x = (info.width - ctl.offsetWidth); y = info.scrollY; } else if(pos.align == 'br' || pos.align == 'rb') { x = (info.width - ctl.offsetWidth); y = (info.height - ctl.offsetHeight); } else if(pos.align == 'bl' || pos.align == 'lb') { x = 0; y = (info.height - ctl.offsetHeight); } if(y < 0) y = 0; if(x < 0) x = 0; ctl.style.top = y + 'px'; ctl.style.left = x + 'px'; } else { if ($U.defined(pos.top)) ctl.style.top = pos.top + 'px'; if ($U.defined(pos.left)) ctl.style.left = pos.left + 'px'; } } }, showProgress: function() { var ctl = $U.build('__ajax_status'); $U.html(ctl, 'Working. Please wait...'); ctl.className = 'progress'; var args = arguments[0]; var align = 'tr'; //top right align if( $U.defined(args)) { if( $U.defined(args.message)) $U.html(ctl, args.message); if( $U.defined(args.css)) ctl.className = args.css; if( $U.defined(args.align)) align = args.align; } $U.position(ctl, {'align': align}); }, hideProgress: function() { var ctl = $U.ctl('__ajax_status'); ctl.style.display = 'none'; }, showModal: function() { var ctl = $U.build('__ajax_block_ui'); $U.setDropDownDisplay(false); //$U.hide('logo'); var info = $U.viewPortInfo(); ctl.className = 'blockUI'; $U.position(ctl, {'top': 0, 'left': 0, 'width': info.width, 'height': Math.max(info.height, info.contentHeight)}); var modal = $U.ctl(arguments[0]); modal.className = 'modal'; var args = {'align' : 'c'}; if(arguments.length > 1) { args = arguments[1]; if(!$U.defined(args.align)) args.align = 'c'; } $U.position(modal, args); }, hideModal: function(e) { var modal = $U.ctl(e); //$U.hide(modal); $('#'+e).fadeOut('medium', function() { var ctl = $U.ctl('__ajax_block_ui'); $U.hide(ctl); $U.setDropDownDisplay(true); //$U.show('logo'); }); }, showResponse : function(e, response) { if(response.succeed) { $U.message(e, response.message, 'message'); } else { $U.message(e, response.message, 'error'); } }, message: function() { var ctl = $('#'+arguments[0]); var css = 'message'; if(arguments.length > 2) { css = arguments[2]; } $U.hideProgress(); ctl.html(arguments[1]).addClass(css).fadeIn('fast'); } }; // JavaScript Document function MenuBuilder(data, containerId, submenuCss, align) { this.containerId = containerId; this.submenuCss = submenuCss; this.data = data; this.readyToHide = true; this.align = align; } MenuBuilder.prototype.getPos = function(id) { var id = '#'+id; var pos = $(id).position(); /* obj = document.getElementById(id); var curleft = curtop = 0; if (obj.offsetParent) { do { curleft += obj.offsetLeft; curtop += obj.offsetTop; } while (obj = obj.offsetParent); }*/ return [pos['left'],pos['top']]; } MenuBuilder.prototype.hideSubmenu = function() { } MenuBuilder.prototype.getMenuListItemHtml = function(nd) { if(nd.url.indexOf('http') == -1) { return '
  • ' + nd.name + '
  • '; } else { return '
  • ' + nd.name + '
  • '; } } MenuBuilder.prototype.buildSubmenu = function(node) { if(node.nodes != null && node.nodes.length > 0) { var obj = this; var html = '
    '; html += '
      '; var total = node.nodes.length; for(var i = 0; i < total; i++) { var nd = node.nodes[i]; html += this.getMenuListItemHtml(nd); this.buildSubmenu(nd); } html += '
    '; html += '
    '; //var cnt = '#'+this.containerId; $('#left_col').append(html); } }; MenuBuilder.prototype.hideSubmenu = function() { $('.submenu').hide(); } MenuBuilder.prototype.showSubmenu = function(parentId) { var parent = $('#' + parentId); var jmenu = $('#div_' + parentId); var menu = document.getElementById('div_' + parentId); if(menu) { var pos = this.getPos(parentId); var left = pos[0]; var top = pos[1]; if(this.align == '' || this.align == 'bottom') { menu.style.top = top + parent.outerHeight({margin: true }) - 1 + 'px'; menu.style.left = left + 'px'; } else if(this.align == 'left' || this.align == 'l') { menu.style.top = top + 'px'; menu.style.left = left + parent.outerWidth({margin:true}) - 1 + 'px'; } else if(this.align == 'right' || this.align == 'r') { menu.style.top = (top -1) + 'px'; menu.style.left = left + parent.outerWidth({margin:true}) - 1 + 'px'; } jmenu.show(); } } MenuBuilder.prototype.checkState = function() { alert(this.readyToHide); } MenuBuilder.prototype.build = function() { var container = $('#' + this.containerId); var html = '
      '; var obj = this; $.each(this.data, function() { html += obj.getMenuListItemHtml(this); obj.buildSubmenu(this); }); html += '
    '; container.append(html); container.find('a').bind('mouseover', function(e) { obj.readyToHide = true; obj.hideSubmenu(this.id); obj.readyToHide = false; obj.showSubmenu(this.id); }).bind('mouseout', function(e) { obj.readyToHide = true; window.setTimeout(function() { if(obj.readyToHide) { obj.hideSubmenu(); } }, 500); }); $('.' + this.submenuCss).find('a').bind('mouseover', function(e) { obj.readyToHide = false; var lnk = this; var lstPos = lnk.id.lastIndexOf('_'); var divId = 'div_' + lnk.id.substring(0,lstPos); $.each($('.' + this.submenuCss), function() { if(this.id.indexOf(divId+'_') == 0) { this.style.display ='none'; } }); obj.showSubmenu(this.id, 'left'); }).bind('mouseout', function(e) { obj.readyToHide = true; window.setTimeout(function() { if(obj.readyToHide) { obj.hideSubmenu(); } }, 1000); }); } MenuBuilder.prototype.get_ContainerId = function() { return this.containerId; } var FormValidator = function() { this._errors = new Array(); this._controls = new Array(); this._toDate = function(data) { var parts = data.split('/'); var str = parts[1]+'/'+parts[0]+'/'+parts[2]; return new Date(str); }; this._isEmpty = function(data) { return (data == null || data == ''); }; this._isEmail = function(data) { var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/; return filter.test(data); }; this._isNumber = function(data) { return (!isNaN(data) && parseFloat(data) >= 0); }; this._isDigitOnly = function(data) { if(this._isNumber(data)) { if(data.indexOf(".") != -1) { return false; } return true; } return false; }; this._isEqual = function(a, b) { return (a == b); }; this._addError = function(controlId, message) { this._errors[this._errors.length] = message; this._controls[this._controls.length] = controlId; }; this.checkEmpty = function(arg) { for(var controlId in arg) { var data = $U.text(controlId); if(this._isEmpty(data)) { this._addError(controlId, arg[controlId]); } } }; this.checkId = function(arg) { for(var controlId in arg) { var data = $U.text(controlId); if(this._isEmpty(data) || parseInt(data) == 0) { this._addError(controlId, arg[controlId]); } } }; this.checkEmail = function(arg) { for(var controlId in arg) { var data = $U.text(controlId); if(!this._isEmpty(data) && !this._isEmail(data)) { this._addError(controlId, arg[controlId]); } } }; this.checkEqual = function(ctlToVal, ctlToComp, msg) { if(this._isEmpty(ctlToVal)) return; if($U.text(ctlToVal) != $U.text(ctlToComp)) { this._addError(ctlToComp, msg); } }; this.checkRange = function(ctlToVal, minAmt, maxAmt, msg) { if(this._isEmpty(ctlToVal)) return; var val = parseFloat($U.text(ctlToVal)); if(val < minAmt || val > maxAmt) { this._addError(ctlToVal, msg); } }; this.checkDigit = function(arg) { for(var controlId in arg) { var data = $U.text(controlId); if(!this._isEmpty(data) && !this._isDigitOnly(data)) { this._addError(controlId, arg[controlId]); } } }; this.checkNumber = function(arg) { for(var controlId in arg) { var data = $U.text(controlId); if(!this._isEmpty(data) && !this._isNumber(data)) { this._addError(controlId, arg[controlId]); } } }; this.checkRadio = function(arg) { for(var controlId in arg) { var data = $U.radioVal(controlId); if(data == null) { var ctl = document.getElementsByName(controlId); this._addError(ctl[0].id, arg[controlId]); } } }; this.checked = function(arg) { for(var controlId in arg) { if(!$U.checked(controlId)) { this._addError(controlId, arg[controlId]); } } }; this.checkDate = function(arg) { for(var controlId in arg) { var data = $U.text(controlId); if(!this._isEmpty(data) && !DateValidator.isDate(data)) { this._addError(controlId, arg[controlId]); } } }; this.isValid = function() { return (this._errors.length == 0); }; this.focus = function() { if(this._controls.length > 0) { $U.focus(this._controls[0]); } }; this.html = function() { var total = this._errors.length; if(total == 0) return ''; var html = 'Please check the following error(s):'; html += '
      '; for(var i = 0; i < total; i++) { html += '
    • ' + this._errors[i] + '
    • '; } html += '
    '; return html; }; this.text = function() { var total = this._errors.length; if(total == 0) return ''; var txt = 'Please check the following error(s):' + "\n"; for(var i = 0; i < total; i++) { txt += '* ' + this._errors[i]; if(i < (total -1)) { txt += "\n"; } } return txt; } } var DateValidator = { sep : '/', maxYear: 2100, minYear: 1900, msg: '', isInteger: function(s) { var i; for (i = 0; i < s.length; i++){ // Check that current character is number. var c = s.charAt(i); if (((c < "0") || (c > "9"))) return false; } // All characters are numbers. return true; }, stripCharsInBag: function (s, bag){ var i; var returnString = ""; // Search through string's characters one by one. // If character is not in bag, append to returnString. for (i = 0; i < s.length; i++){ var c = s.charAt(i); if (bag.indexOf(c) == -1) returnString += c; } return returnString; }, daysInFebruary: function (year) { // February has 29 days in any year evenly divisible by four, // EXCEPT for centurial years which are not also divisible by 400. return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 ); }, DaysArray: function (n) { for (var i = 1; i <= n; i++) { this[i] = 31 if (i==4 || i==6 || i==9 || i==11) {this[i] = 30} if (i==2) {this[i] = 29} } return this }, isDate: function (dtStr){ var daysInMonth = DateValidator.DaysArray(12) var pos1=dtStr.indexOf(DateValidator.sep) var pos2=dtStr.indexOf(DateValidator.sep,pos1+1) var strDay=dtStr.substring(0,pos1) var strMonth=dtStr.substring(pos1+1,pos2) var strYear=dtStr.substring(pos2+1) strYr=strYear if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1) if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1) for (var i = 1; i <= 3; i++) { if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1) } month=parseInt(strMonth) day=parseInt(strDay) year=parseInt(strYr) if (pos1==-1 || pos2==-1){ DateValidator.msg = "The date format should be : dd/mm/yyyy"; return false } if (strMonth.length<1 || month<1 || month>12){ DateValidator.msg = "Please enter a valid month"; return false } if (strDay.length<1 || day<1 || day>31 || (month==2 && day> DateValidator.daysInFebruary(year)) || day > daysInMonth[month]){ DateValidator.msg = "Please enter a valid day"; return false } if (strYear.length != 4 || year==0 || yearDateValidator.maxYear){ DateValidator.msg = "Please enter a valid 4 digit year between "+minYear+" and "+maxYear; return false } if (dtStr.indexOf(DateValidator.sep,pos2+1)!=-1 || DateValidator.isInteger(DateValidator.stripCharsInBag(dtStr, DateValidator.sep))==false){ DateValidator.msg = "Please enter a valid date"; return false } return true } } $.fn.fastSerialize = function() { var a = []; $('input,textarea,select,button', this).each(function() { var n = this.name; var t = this.type; if ( !n || this.disabled || t == 'reset' || (t == 'checkbox' || t == 'radio') && !this.checked || (t == 'submit' || t == 'image' || t == 'button') && this.form.clicked != this || this.tagName.toLowerCase() == 'select' && this.selectedIndex == -1) return; if (t == 'image' && this.form.clicked_x) return a.push( {name: n+'_x', value: this.form.clicked_x}, {name: n+'_y', value: this.form.clicked_y} ); if (t == 'select-multiple') { $('option:selected', this).each( function() { a.push({name: n, value: this.value}); }); return; } a.push({name: n, value: this.value}); }); return a; }; /* * jQuery corner plugin * * version 1.7 (1/26/2007) * * Dual licensed under the MIT and GPL licenses: * http://www.opensource.org/licenses/mit-license.php * http://www.gnu.org/licenses/gpl.html */ /** * The corner() method provides a simple way of styling DOM elements. * * corner() takes a single string argument: $().corner("effect corners width") * * effect: The name of the effect to apply, such as round or bevel. * If you don't specify an effect, rounding is used. * * corners: The corners can be one or more of top, bottom, tr, tl, br, or bl. * By default, all four corners are adorned. * * width: The width specifies the width of the effect; in the case of rounded corners this * will be the radius of the width. * Specify this value using the px suffix such as 10px, and yes it must be pixels. * * For more details see: http://methvin.com/jquery/jq-corner.html * For a full demo see: http://malsup.com/jquery/corner/ * * * @example $('.adorn').corner(); * @desc Create round, 10px corners * * @example $('.adorn').corner("25px"); * @desc Create round, 25px corners * * @example $('.adorn').corner("notch bottom"); * @desc Create notched, 10px corners on bottom only * * @example $('.adorn').corner("tr dog 25px"); * @desc Create dogeared, 25px corner on the top-right corner only * * @example $('.adorn').corner("round 8px").parent().css('padding', '4px').corner("round 10px"); * @desc Create a rounded border effect by styling both the element and its parent * * @name corner * @type jQuery * @param String options Options which control the corner style * @cat Plugins/Corner * @return jQuery * @author Dave Methvin (dave.methvin@gmail.com) * @author Mike Alsup (malsup@gmail.com) */ jQuery.fn.corner = function(o) { function hex2(s) { var s = parseInt(s).toString(16); return ( s.length < 2 ) ? '0'+s : s; }; function gpc(node) { for ( ; node && node.nodeName.toLowerCase() != 'html'; node = node.parentNode ) { var v = jQuery.css(node,'backgroundColor'); if ( v.indexOf('rgb') >= 0 ) { rgb = v.match(/\d+/g); return '#'+ hex2(rgb[0]) + hex2(rgb[1]) + hex2(rgb[2]); } if ( v && v != 'transparent' ) return v; } return '#ffffff'; }; function getW(i) { switch(fx) { case 'round': return Math.round(width*(1-Math.cos(Math.asin(i/width)))); case 'cool': return Math.round(width*(1+Math.cos(Math.asin(i/width)))); case 'sharp': return Math.round(width*(1-Math.cos(Math.acos(i/width)))); case 'bite': return Math.round(width*(Math.cos(Math.asin((width-i-1)/width)))); case 'slide': return Math.round(width*(Math.atan2(i,width/i))); case 'jut': return Math.round(width*(Math.atan2(width,(width-i-1)))); case 'curl': return Math.round(width*(Math.atan(i))); case 'tear': return Math.round(width*(Math.cos(i))); case 'wicked': return Math.round(width*(Math.tan(i))); case 'long': return Math.round(width*(Math.sqrt(i))); case 'sculpt': return Math.round(width*(Math.log((width-i-1),width))); case 'dog': return (i&1) ? (i+1) : width; case 'dog2': return (i&2) ? (i+1) : width; case 'dog3': return (i&3) ? (i+1) : width; case 'fray': return (i%2)*width; case 'notch': return width; case 'bevel': return i+1; } }; o = (o||"").toLowerCase(); var keep = /keep/.test(o); // keep borders? var cc = ((o.match(/cc:(#[0-9a-f]+)/)||[])[1]); // corner color var sc = ((o.match(/sc:(#[0-9a-f]+)/)||[])[1]); // strip color var width = parseInt((o.match(/(\d+)px/)||[])[1]) || 10; // corner width var re = /round|bevel|notch|bite|cool|sharp|slide|jut|curl|tear|fray|wicked|sculpt|long|dog3|dog2|dog/; var fx = ((o.match(re)||['round'])[0]); var edges = { T:0, B:1 }; var opts = { TL: /top|tl/.test(o), TR: /top|tr/.test(o), BL: /bottom|bl/.test(o), BR: /bottom|br/.test(o) }; if ( !opts.TL && !opts.TR && !opts.BL && !opts.BR ) opts = { TL:1, TR:1, BL:1, BR:1 }; var strip = document.createElement('div'); strip.style.overflow = 'hidden'; strip.style.height = '1px'; strip.style.backgroundColor = sc || 'transparent'; strip.style.borderStyle = 'solid'; return this.each(function(index){ var pad = { T: parseInt(jQuery.css(this,'paddingTop'))||0, R: parseInt(jQuery.css(this,'paddingRight'))||0, B: parseInt(jQuery.css(this,'paddingBottom'))||0, L: parseInt(jQuery.css(this,'paddingLeft'))||0 }; if (jQuery.browser.msie) this.style.zoom = 1; // force 'hasLayout' in IE if (!keep) this.style.border = 'none'; strip.style.borderColor = cc || gpc(this.parentNode); var cssHeight = jQuery.curCSS(this, 'height'); for (var j in edges) { var bot = edges[j]; strip.style.borderStyle = 'none '+(opts[j+'R']?'solid':'none')+' none '+(opts[j+'L']?'solid':'none'); var d = document.createElement('div'); var ds = d.style; bot ? this.appendChild(d) : this.insertBefore(d, this.firstChild); if (bot && cssHeight != 'auto') { if (jQuery.css(this,'position') == 'static') this.style.position = 'relative'; ds.position = 'absolute'; ds.bottom = ds.left = ds.padding = ds.margin = '0'; if (jQuery.browser.msie) ds.setExpression('width', 'this.parentNode.offsetWidth'); else ds.width = '100%'; } else { ds.margin = !bot ? '-'+pad.T+'px -'+pad.R+'px '+(pad.T-width)+'px -'+pad.L+'px' : (pad.B-width)+'px -'+pad.R+'px -'+pad.B+'px -'+pad.L+'px'; } for (var i=0; i < width; i++) { var w = Math.max(0,getW(i)); var e = strip.cloneNode(false); e.style.borderWidth = '0 '+(opts[j+'R']?w:0)+'px 0 '+(opts[j+'L']?w:0)+'px'; bot ? d.appendChild(e) : d.insertBefore(e, d.firstChild); } } }); }; /** * SWFObject v1.5: Flash Player detection and embed - http://blog.deconcept.com/swfobject/ * * SWFObject is (c) 2007 Geoff Stearns and is released under the MIT License: * http://www.opensource.org/licenses/mit-license.php * */ if(typeof deconcept=="undefined"){var deconcept=new Object();}if(typeof deconcept.util=="undefined"){deconcept.util=new Object();}if(typeof deconcept.SWFObjectUtil=="undefined"){deconcept.SWFObjectUtil=new Object();}deconcept.SWFObject=function(_1,id,w,h,_5,c,_7,_8,_9,_a){if(!document.getElementById){return;}this.DETECT_KEY=_a?_a:"detectflash";this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);this.params=new Object();this.variables=new Object();this.attributes=new Array();if(_1){this.setAttribute("swf",_1);}if(id){this.setAttribute("id",id);}if(w){this.setAttribute("width",w);}if(h){this.setAttribute("height",h);}if(_5){this.setAttribute("version",new deconcept.PlayerVersion(_5.toString().split(".")));}this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion();if(!window.opera&&document.all&&this.installedVer.major>7){deconcept.SWFObject.doPrepUnload=true;}if(c){this.addParam("bgcolor",c);}var q=_7?_7:"high";this.addParam("quality",q);this.setAttribute("useExpressInstall",false);this.setAttribute("doExpressInstall",false);var _c=(_8)?_8:window.location;this.setAttribute("xiRedirectUrl",_c);this.setAttribute("redirectUrl","");if(_9){this.setAttribute("redirectUrl",_9);}};deconcept.SWFObject.prototype={useExpressInstall:function(_d){this.xiSWFPath=!_d?"expressinstall.swf":_d;this.setAttribute("useExpressInstall",true);},setAttribute:function(_e,_f){this.attributes[_e]=_f;},getAttribute:function(_10){return this.attributes[_10];},addParam:function(_11,_12){this.params[_11]=_12;},getParams:function(){return this.params;},addVariable:function(_13,_14){this.variables[_13]=_14;},getVariable:function(_15){return this.variables[_15];},getVariables:function(){return this.variables;},getVariablePairs:function(){var _16=new Array();var key;var _18=this.getVariables();for(key in _18){_16[_16.length]=key+"="+_18[key];}return _16;},getSWFHTML:function(){var _19="";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","PlugIn");this.setAttribute("swf",this.xiSWFPath);}_19="0){_19+="flashvars=\""+_1c+"\"";}_19+="/>";}else{if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");this.setAttribute("swf",this.xiSWFPath);}_19="";_19+="";var _1d=this.getParams();for(var key in _1d){_19+="";}var _1f=this.getVariablePairs().join("&");if(_1f.length>0){_19+="";}_19+="";}return _19;},write:function(_20){if(this.getAttribute("useExpressInstall")){var _21=new deconcept.PlayerVersion([6,0,65]);if(this.installedVer.versionIsValid(_21)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){this.setAttribute("doExpressInstall",true);this.addVariable("MMredirectURL",escape(this.getAttribute("xiRedirectUrl")));document.title=document.title.slice(0,47)+" - Flash Player Installation";this.addVariable("MMdoctitle",document.title);}}if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version"))){var n=(typeof _20=="string")?document.getElementById(_20):_20;n.innerHTML=this.getSWFHTML();return true;}else{if(this.getAttribute("redirectUrl")!=""){document.location.replace(this.getAttribute("redirectUrl"));}}return false;}};deconcept.SWFObjectUtil.getPlayerVersion=function(){var _23=new deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeTypes.length){var x=navigator.plugins["Shockwave Flash"];if(x&&x.description){_23=new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else{if(navigator.userAgent&&navigator.userAgent.indexOf("Windows CE")>=0){var axo=1;var _26=3;while(axo){try{_26++;axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+_26);_23=new deconcept.PlayerVersion([_26,0,0]);}catch(e){axo=null;}}}else{try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");_23=new deconcept.PlayerVersion([6,0,21]);axo.AllowScriptAccess="always";}catch(e){if(_23.major==6){return _23;}}try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(e){}}if(axo!=null){_23=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));}}}return _23;};deconcept.PlayerVersion=function(_29){this.major=_29[0]!=null?parseInt(_29[0]):0;this.minor=_29[1]!=null?parseInt(_29[1]):0;this.rev=_29[2]!=null?parseInt(_29[2]):0;};deconcept.PlayerVersion.prototype.versionIsValid=function(fv){if(this.majorfv.major){return true;}if(this.minorfv.minor){return true;}if(this.rev=0;i--){_2f[i].style.display="none";for(var x in _2f[i]){if(typeof _2f[i][x]=="function"){_2f[i][x]=function(){};}}}};if(deconcept.SWFObject.doPrepUnload){if(!deconcept.unloadSet){deconcept.SWFObjectUtil.prepUnload=function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};window.attachEvent("onunload",deconcept.SWFObjectUtil.cleanupSWFs);};window.attachEvent("onbeforeunload",deconcept.SWFObjectUtil.prepUnload);deconcept.unloadSet=true;}}if(!document.getElementById&&document.all){document.getElementById=function(id){return document.all[id];};}var getQueryParamValue=deconcept.util.getRequestParameter;var FlashObject=deconcept.SWFObject;var SWFObject=deconcept.SWFObject; // JavaScript Document function MenuBuilder(data, containerId, submenuCss, align) { this.containerId = containerId; this.submenuCss = submenuCss; this.data = data; this.readyToHide = true; this.align = align; } MenuBuilder.prototype.getPos = function(id) { var id = '#'+id; var pos = $(id).position(); /* obj = document.getElementById(id); var curleft = curtop = 0; if (obj.offsetParent) { do { curleft += obj.offsetLeft; curtop += obj.offsetTop; } while (obj = obj.offsetParent); }*/ return [pos['left'],pos['top']]; } MenuBuilder.prototype.hideSubmenu = function() { } MenuBuilder.prototype.getMenuListItemHtml = function(nd) { if(nd.url.indexOf('http') == -1) { return '
  • ' + nd.name + '
  • '; } else { return '
  • ' + nd.name + '
  • '; } } MenuBuilder.prototype.buildSubmenu = function(node) { if(node.nodes != null && node.nodes.length > 0) { var obj = this; var html = '
    '; html += '
      '; var total = node.nodes.length; for(var i = 0; i < total; i++) { var nd = node.nodes[i]; html += this.getMenuListItemHtml(nd); this.buildSubmenu(nd); } html += '
    '; html += '
    '; //var cnt = '#'+this.containerId; $('#left_col').append(html); } }; MenuBuilder.prototype.hideSubmenu = function() { $('.submenu').hide(); } MenuBuilder.prototype.showSubmenu = function(parentId) { var parent = $('#' + parentId); var jmenu = $('#div_' + parentId); var menu = document.getElementById('div_' + parentId); if(menu) { var pos = this.getPos(parentId); var left = pos[0]; var top = pos[1]; if(this.align == '' || this.align == 'bottom') { menu.style.top = top + parent.outerHeight({margin: true }) - 1 + 'px'; menu.style.left = left + 'px'; } else if(this.align == 'left' || this.align == 'l') { menu.style.top = top + 'px'; menu.style.left = left + parent.outerWidth({margin:true}) - 1 + 'px'; } else if(this.align == 'right' || this.align == 'r') { menu.style.top = (top -1) + 'px'; menu.style.left = left + parent.outerWidth({margin:true}) - 1 + 'px'; } jmenu.show(); } } MenuBuilder.prototype.checkState = function() { alert(this.readyToHide); } MenuBuilder.prototype.build = function() { var container = $('#' + this.containerId); var html = '
      '; var obj = this; $.each(this.data, function() { html += obj.getMenuListItemHtml(this); obj.buildSubmenu(this); }); html += '
    '; container.append(html); container.find('a').bind('mouseover', function(e) { obj.readyToHide = true; obj.hideSubmenu(this.id); obj.readyToHide = false; obj.showSubmenu(this.id); }).bind('mouseout', function(e) { obj.readyToHide = true; window.setTimeout(function() { if(obj.readyToHide) { obj.hideSubmenu(); } }, 500); }); $('.' + this.submenuCss).find('a').bind('mouseover', function(e) { obj.readyToHide = false; var lnk = this; var lstPos = lnk.id.lastIndexOf('_'); var divId = 'div_' + lnk.id.substring(0,lstPos); $.each($('.' + this.submenuCss), function() { if(this.id.indexOf(divId+'_') == 0) { this.style.display ='none'; } }); obj.showSubmenu(this.id, 'left'); }).bind('mouseout', function(e) { obj.readyToHide = true; window.setTimeout(function() { if(obj.readyToHide) { obj.hideSubmenu(); } }, 1000); }); } MenuBuilder.prototype.get_ContainerId = function() { return this.containerId; } /* MarcGrabanski.com v2.4 */ /* Pop-Up Calendar Built from Scratch by Marc Grabanski */ /* Enhanced by Keith Wood (kbwood@iprimus.com.au). */ /* Under the Creative Commons Licence http://creativecommons.org/licenses/by/3.0/ Share or Remix it but please Attribute the authors. */ var popUpCal = { selectedDay: 0, selectedMonth: 0, // 0-11 selectedYear: 0, // 4-digit year clearText: 'Clear', // Display text for clear link closeText: 'Close', // Display text for close link prevText: '<Prev', // Display text for previous month link nextText: 'Next>', // Display text for next month link currentText: 'Today', // Display text for current month link appendText: '', // Display text following the input box, e.g. showing the format buttonText: '...', // Text for trigger button buttonImage: '', // URL for trigger button image buttonImageOnly: false, // True if the image appears alone, false if it appears on a button dayNames: ['Su','Mo','Tu','We','Th','Fr','Sa'], // Names of days starting at Sunday monthNames: ['January','February','March','April','May','June','July','August','September','October','November','December'], // Names of months dateFormat: 'DMY/', // First three are day, month, year in the required order, fourth is the separator, e.g. US would be 'MDY/' yearRange: '-10:+10', // Range of years to display in drop-down, either relative to current year (-nn:+nn) or absolute (nnnn:nnnn) changeMonth: true, // True if month can be selected directly, false if only prev/next changeYear: true, // True if year can be selected directly, false if only prev/next firstDay: 0, // The first day of the week, Sun = 0, Mon = 1, ... changeFirstDay: true, // True to click on day name to change, false to remain as set showOtherMonths: false, // True to show dates in other months, false to leave blank minDate: null, // The earliest selectable date, or null for no limit maxDate: null, // The latest selectable date, or null for no limit speed: 'medium', // Speed of display/closure autoPopUp: 'focus', // 'focus' for popup on focus, 'button' for trigger button, or 'both' for either closeAtTop: true, // True to have the clear/close at the top, false to have them at the bottom hideIfNoPrevNext: true, // True to hide next/previous month links if not applicable, false to just disable them customDate: null, // Function that takes a date and returns an array with [0] = true if selectable, false if not, // [1] = custom CSS class name(s) or '', e.g. popUpCal.noWeekends fieldSettings: null, // Function that takes an input field and returns a set of custom settings for the calendar inline: false, // this sets the calendar to always display, use this with customEvent customEvent: false, // define an action for the inline calendar /* Initialisation. */ init: function() { this.popUpShowing = false; this.selectingMonthYear = false; this.standalone = false; this.lastInput = null; this.disabledInputs = []; this.calendarDiv = $('
    '); $('body').append(this.calendarDiv); $(document).mousedown(popUpCal.checkExternalClick); }, /* Pop-up the calendar in a "dialog" box. */ showStandalone: function(dateText, prompt, callback, pos) { if (!this.standaloneInput) { // internal input field this.standaloneInput = $(''); this.standaloneInput.keydown(this.doKeyDown); $('body').append(this.standaloneInput); } this.standaloneInput.val(dateText); var windowWidth, windowHeight; if (self.innerHeight) { // all except Explorer windowWidth = self.innerWidth; windowHeight = self.innerHeight; } else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode windowWidth = document.documentElement.clientWidth; windowHeight = document.documentElement.clientHeight; } else if (document.body) { // other Explorers windowWidth = document.body.clientWidth; windowHeight = document.body.clientHeight; } this.pos = pos || ($.blockUI ? [0, 0] : [(windowWidth - 200) / 2, (windowHeight - 200) / 2]); // should use actual width/height this.prompt = prompt; this.customEvent = callback; this.standalone = true; this.calendarDiv.addClass('calendar_dialog'); this.showFor(this.standaloneInput[0]); if ($.blockUI) $.blockUI(this.calendarDiv, { width: '200px' }); }, /* Pop-up the calendar for a given input field. */ showFor: function(target) { var input = (target.nodeName && target.nodeName.toLowerCase() == 'input' ? target : this); if (input.nodeName.toLowerCase() != 'input') { // find from button/image trigger input = $('../input', input)[0]; } if (popUpCal.lastInput == input) { // already here return; } for (var i = 0; i < popUpCal.disabledInputs.length; i++) { // check not disabled if (popUpCal.disabledInputs[i] == input) { return; } } popUpCal.input = $(input); popUpCal.hideCalendar(''); popUpCal.lastInput = input; popUpCal.setDateFromField(); if (!popUpCal.pos) { // position below input popUpCal.pos = popUpCal.findPos(input); popUpCal.pos[1] += input.offsetHeight; } popUpCal.calendarDiv.css('position', (popUpCal.standalone && $.blockUI ? 'static' : 'absolute')). css('left', popUpCal.pos[0] + 'px').css('top', popUpCal.pos[1] + 'px'); popUpCal.pos = null; $.extend(popUpCal, (popUpCal.fieldSettings ? popUpCal.fieldSettings(input) : {})); popUpCal.showCalendar(); }, /* Handle keystrokes. */ doKeyDown: function(e) { if (popUpCal.popUpShowing) { switch (e.keyCode) { case 9: popUpCal.hideCalendar(''); break; // hide on tab out case 13: popUpCal.selectDate(); break; // select the value on enter case 27: popUpCal.hideCalendar(popUpCal.speed); break; // hide on escape case 33: popUpCal.adjustDate(-1, (e.ctrlKey ? 'Y' : 'M')); break; // previous month/year on page up/+ ctrl case 34: popUpCal.adjustDate(+1, (e.ctrlKey ? 'Y' : 'M')); break; // next month/year on page down/+ ctrl case 35: if (e.ctrlKey) popUpCal.clearDate(); break; // clear on ctrl+end case 36: if (e.ctrlKey) popUpCal.gotoToday(); break; // current on ctrl+home case 37: if (e.ctrlKey) popUpCal.adjustDate(-1, 'D'); break; // -1 day on ctrl+left case 38: if (e.ctrlKey) popUpCal.adjustDate(-7, 'D'); break; // -1 week on ctrl+up case 39: if (e.ctrlKey) popUpCal.adjustDate(+1, 'D'); break; // +1 day on ctrl+right case 40: if (e.ctrlKey) popUpCal.adjustDate(+7, 'D'); break; // +1 week on ctrl+down } } else if (e.keyCode == 36 && e.ctrlKey) { // display the calendar on ctrl+home popUpCal.showFor(this); } }, /* Filter entered characters. */ doKeyPress: function(e) { var chr = String.fromCharCode(e.charCode == undefined ? e.keyCode : e.charCode); return (chr < ' ' || chr == popUpCal.dateFormat.charAt(3) || (chr >= '0' && chr <= '9')); // only allow numbers and separator }, /* Attach the calendar to an input field. */ connectCalendar: function(target) { var $input = $(target); $input.after('' + this.appendText + ''); if (this.autoPopUp == 'focus' || this.autoPopUp == 'both') { // pop-up calendar when in the marked fields $input.focus(this.showFor); } if (this.autoPopUp == 'button' || this.autoPopUp == 'both') { // pop-up calendar when button clicked $input.wrap(''). after(this.buttonImageOnly ? '' + this.buttonText + '' : ''); $((this.buttonImageOnly ? 'img' : 'button') + '.calendar_trigger', $input.parent('span')).click(this.showFor); } $input.keydown(this.doKeyDown).keypress(this.doKeyPress); }, /* Attach an inline calendar to a div. */ displayInline: function(target) { $(target).append('
    '); popUpCal.selectedDay = new Date().getDate(); popUpCal.selectedMonth = new Date().getMonth(); popUpCal.selectedYear = new Date().getFullYear(); popUpCal.adjustDate(); popUpCal.showCalendar(); }, /* Enable the input field(s) for entry. */ enableFor: function(inputs) { inputs = (inputs.jquery ? inputs : $(inputs)); inputs.each(function() { this.disabled = false; $('../button.calendar_trigger', this).each(function() { this.disabled = false; }); $('../img.calendar_trigger', this).css('opacity', '1.0'); var $this = this; popUpCal.disabledInputs = $.map(popUpCal.disabledInputs, function(value) { return (value == $this ? null : value); }); // delete entry }); return false; }, /* Disable the input field(s) from entry. */ disableFor: function(inputs) { inputs = (inputs.jquery ? inputs : $(inputs)); inputs.each(function() { this.disabled = true; $('../button.calendar_trigger', this).each(function() { this.disabled = true; }); $('../img.calendar_trigger', this).css('opacity', '0.5'); var $this = this; popUpCal.disabledInputs = $.map(popUpCal.disabledInputs, function(value) { return (value == $this ? null : value); }); // delete entry popUpCal.disabledInputs[popUpCal.disabledInputs.length] = this; }); return false; }, /* Construct and display the calendar. */ showCalendar: function() { this.popUpShowing = true; var today = new Date(); today = new Date(today.getFullYear(), today.getMonth(), today.getDate()); // clear time // build the calendar HTML var controls = ''; var html = (this.prompt ? '
    ' + this.prompt + '
    ' : '') + (this.closeAtTop && !this.inline ? controls : '') + '
    '; if (!this.changeMonth) { html += this.monthNames[this.selectedMonth] + ' '; } else { var inMinYear = (this.minDate && this.minDate.getFullYear() == this.selectedYear); var inMaxYear = (this.maxDate && this.maxDate.getFullYear() == this.selectedYear); html += ''; } if (!this.changeYear) { html += this.selectedYear; } else { // determine range of years to display var years = this.yearRange.split(':'); var year = 0; var endYear = 0; if (years.length != 2) { year = this.selectedYear - 10; endYear = this.selectedYear + 10; } else if (years[0].charAt(0) == '+' || years[0].charAt(0) == '-') { year = this.selectedYear + parseInt(years[0]); endYear = this.selectedYear + parseInt(years[1]); } else { year = parseInt(years[0]); endYear = parseInt(years[1]); } year = (this.minDate ? Math.max(year, this.minDate.getFullYear()) : year); endYear = (this.maxDate ? Math.min(endYear, this.maxDate.getFullYear()) : endYear); html += ''; } html += '
    ' + ''; for (var dow = 0; dow < 7; dow++) { html += ''; } html += ''; var daysInMonth = this.getDaysInMonth(this.selectedYear, this.selectedMonth); this.selectedDay = Math.min(this.selectedDay, daysInMonth); var leadDays = (this.getFirstDayOfMonth(this.selectedYear, this.selectedMonth) - this.firstDay + 7) % 7; var currentDate = new Date(this.currentYear, this.currentMonth, this.currentDay); var selectedDate = new Date(this.selectedYear, this.selectedMonth, this.selectedDay); var printDate = new Date(this.selectedYear, this.selectedMonth, 1 - leadDays); var numRows = Math.ceil((leadDays + daysInMonth) / 7); // calculate the number of rows to generate for (var row = 0; row < numRows; row++) { // create calendar rows html += ''; for (var dow = 0; dow < 7; dow++) { // create calendar days var customSettings = (this.customDate ? this.customDate(printDate) : [true, '']); var otherMonth = (printDate.getMonth() != this.selectedMonth); var unselectable = otherMonth || !customSettings[0] || (this.minDate && printDate < this.minDate) || (this.maxDate && printDate > this.maxDate); html += ''; // display for this month printDate.setDate(printDate.getDate() + 1); } html += ''; } html += '
    ' + (this.changeFirstDay ? '' : '') + this.dayNames[(dow + this.firstDay) % 7] + (this.changeFirstDay ? '' : '') + '
    ' + // actions (otherMonth ? (this.showOtherMonths ? printDate.getDate() : ' ') : // display for other months (unselectable ? printDate.getDate() : '' + printDate.getDate() + '')) + '
    ' + (this.closeAtTop || this.inline ? '' : controls) + ''; // add calendar to element to calendar div if (!this.inline) { this.calendarDiv.empty().append(html).show(this.speed, this.coverSelects); if (this.speed == '') this.coverSelects(); this.input[0].focus(); } else { $('#calendar_inline_div').empty().append(html); } }, // end showCalendar /* Fix IE < 7 select problems. */ coverSelects: function() { if ($.browser.msie) { $('#calendar_cover').css({width: popUpCal.calendarDiv[0].offsetWidth + 4, height: popUpCal.calendarDiv[0].offsetHeight + 4}); } }, /* Hide the calendar from view. */ hideCalendar: function(speed) { if (this.popUpShowing) { this.calendarDiv.hide(speed, this.tidyStandalone); if (speed == '') this.tidyStandalone(); this.popUpShowing = false; this.lastInput = null; this.prompt = null; if (this.standalone && $.blockUI) $.unblockUI(); this.standalone = false; } }, /* Tidy up after a dialog display. */ tidyStandalone: function() { popUpCal.calendarDiv.removeClass('calendar_dialog'); $('calendar_prompt').remove(); }, /* Action for current link. */ gotoToday: function() { var date = new Date(); popUpCal.selectedDay = date.getDate(); popUpCal.selectedMonth = date.getMonth(); popUpCal.selectedYear = date.getFullYear(); popUpCal.adjustDate(); }, /* Action for selecting a new month/year. */ selectMonthYear: function(select, period) { popUpCal.selectingMonthYear = false; popUpCal[period == 'M' ? 'selectedMonth' : 'selectedYear'] = select.options[select.selectedIndex].value - 0; popUpCal.adjustDate(); }, /* Restore input focus after not changing month/year. */ clickMonthYear: function() { if (popUpCal.selectingMonthYear && !$.browser.msie) { popUpCal.input[0].focus(); } popUpCal.selectingMonthYear = !popUpCal.selectingMonthYear; }, /* Action for changing the first week day. */ changeWeekDay: function(a) { for (var i = 0; i < 7; i++) { if (popUpCal.dayNames[i] == a.firstChild.nodeValue) { popUpCal.firstDay = i; break; } } popUpCal.showCalendar(); }, /* Action for selecting a day. */ selectDay: function(td) { popUpCal.selectedDay = $("a", td).html(); popUpCal.selectDate(); }, /* Update the input field with the selected date. */ selectDate: function(value) { this.currentDay = this.selectedDay; this.currentMonth = this.selectedMonth; this.currentYear = this.selectedYear; this.date = (value != null ? value : this.formatDate(this.selectedDay, this.selectedMonth, this.selectedYear)); if (this.customEvent) { this.customEvent(); // trigger it } else { // set the input field with the date and fire the change event this.input.val(this.date); this.input.trigger('change'); } if (!this.inline) { this.hideCalendar(this.speed); } }, /* Erase the input field and hide the calendar. */ clearDate: function() { this.selectDate(''); }, /* Close calendar if clicked elsewhere. */ checkExternalClick: function(event) { if (popUpCal.popUpShowing && !(popUpCal.standalone && $.blockUI)) { var node = event.target; var cal = popUpCal.calendarDiv[0]; while (node && node != cal && node.className != 'calendar_trigger') { node = node.parentNode; } if (!node) { popUpCal.hideCalendar(''); } } }, /* Set as customDate function to prevent selection of weekends. */ noWeekends: function(date) { var day = date.getDay(); return [(day > 0 && day < 6), '']; }, /* Format and display the given date. */ formatDate: function(day, month, year) { month++; // adjust javascript month var dateString = ''; for (var i = 0; i < 3; i++) { dateString += this.dateFormat.charAt(3) + (this.dateFormat.charAt(i) == 'D' ? (day < 10 ? '0' : '') + day : (this.dateFormat.charAt(i) == 'M' ? (month < 10 ? '0' : '') + month : (this.dateFormat.charAt(i) == 'Y' ? year : '?'))); } return dateString.substring(this.dateFormat.charAt(3) ? 1 : 0); }, /* Parse existing date and initialise calendar. */ setDateFromField: function() { var currentDate = this.input.val().split(this.dateFormat.charAt(3)); if (currentDate.length == 3) { this.currentDay = parseInt(this.trimNumber(currentDate[this.dateFormat.indexOf('D')])); this.currentMonth = parseInt(this.trimNumber(currentDate[this.dateFormat.indexOf('M')])) - 1; this.currentYear = parseInt(this.trimNumber(currentDate[this.dateFormat.indexOf('Y')])); } else { this.currentDay = new Date().getDate(); this.currentMonth = new Date().getMonth(); this.currentYear = new Date().getFullYear(); } this.selectedDay = this.currentDay; this.selectedMonth = this.currentMonth; this.selectedYear = this.currentYear; this.adjustDate(0, 'D', true); }, /* Ensure numbers are not treated as octal. */ trimNumber: function(value) { if (value == '') return ''; while (value.charAt(0) == '0') { value = value.substring(1); } return value; }, /* Adjust one of the date sub-fields. */ adjustDate: function(offset, period, dontShow) { var date = new Date(this.selectedYear + (period == 'Y' ? offset : 0), this.selectedMonth + (period == 'M' ? offset : 0), this.selectedDay + (period == 'D' ? offset : 0)); // ensure it is within the bounds set date = (this.minDate && date < this.minDate ? this.minDate : date); date = (this.maxDate && date > this.maxDate ? this.maxDate : date); this.selectedDay = date.getDate(); this.selectedMonth = date.getMonth(); this.selectedYear = date.getFullYear(); if (!dontShow) { this.showCalendar(); } }, /* Find the number of days in a given month. */ getDaysInMonth: function(year, month) { return 32 - new Date(year, month, 32).getDate(); }, /* Find the day of the week of the first of a month. */ getFirstDayOfMonth: function(year, month) { return new Date(year, month, 1).getDay(); }, /* Determines if we should allow a "next/prev" month display change. */ canAdjustMonth: function(offset) { var date = new Date(this.selectedYear, this.selectedMonth + offset, 1); if (offset < 0) { date.setDate(this.getDaysInMonth(date.getFullYear(), date.getMonth())); } return this.isInRange(date); }, /* Is the given date in the accepted range? */ isInRange: function(date) { return ((!this.minDate || date >= this.minDate) && (!this.maxDate || date <= this.maxDate)); }, /* Find an object's position on the screen. */ findPos: function(obj) { var curleft = curtop = 0; if (obj.offsetParent) { curleft = obj.offsetLeft; curtop = obj.offsetTop; while (obj = obj.offsetParent) { var origcurleft = curleft; curleft += obj.offsetLeft; if (curleft < 0) { curleft = origcurleft; } curtop += obj.offsetTop; } } return [curleft,curtop]; } }; /* Attach the calendar to a jQuery selection. */ $.fn.calendar = function(settings) { // customise the calendar object $.extend(popUpCal, settings || {}); // attach the calendar to each nominated input element return this.each(function() { if (this.nodeName.toLowerCase() == 'input') { popUpCal.connectCalendar(this); } else if (this.nodeName.toLowerCase() == 'div') { popUpCal.displayInline(this); } }); }; /* Initialise the calendar. */ $(document).ready(function() { popUpCal.init(); }); /***************************************************************************** scalable Inman Flash Replacement (sIFR) version 3, revision 436. Copyright 2006 – 2008 Mark Wubben, Older versions: * IFR by Shaun Inman * sIFR 1.0 by Mike Davidson, Shaun Inman and Tomas Jogin * sIFR 2.0 by Mike Davidson, Shaun Inman, Tomas Jogin and Mark Wubben See also and . This software is licensed and provided under the CC-GNU LGPL. See *****************************************************************************/ var sIFR=new function(){var O=this;var E={ACTIVE:"sIFR-active",REPLACED:"sIFR-replaced",IGNORE:"sIFR-ignore",ALTERNATE:"sIFR-alternate",CLASS:"sIFR-class",LAYOUT:"sIFR-layout",FLASH:"sIFR-flash",FIX_FOCUS:"sIFR-fixfocus",DUMMY:"sIFR-dummy"};E.IGNORE_CLASSES=[E.REPLACED,E.IGNORE,E.ALTERNATE];this.MIN_FONT_SIZE=6;this.MAX_FONT_SIZE=126;this.FLASH_PADDING_BOTTOM=5;this.VERSION="436";this.isActive=false;this.isEnabled=true;this.fixHover=true;this.autoInitialize=true;this.setPrefetchCookie=true;this.cookiePath="/";this.domains=[];this.forceWidth=true;this.fitExactly=false;this.forceTextTransform=true;this.useDomLoaded=true;this.useStyleCheck=false;this.hasFlashClassSet=false;this.repaintOnResize=true;this.replacements=[];var L=0;var R=false;function Y(){}function D(c){function d(e){return e.toLocaleUpperCase()}this.normalize=function(e){return e.replace(/\n|\r|\xA0/g,D.SINGLE_WHITESPACE).replace(/\s+/g,D.SINGLE_WHITESPACE)};this.textTransform=function(e,f){switch(e){case"uppercase":return f.toLocaleUpperCase();case"lowercase":return f.toLocaleLowerCase();case"capitalize":return f.replace(/^\w|\s\w/g,d)}return f};this.toHexString=function(e){if(e.charAt(0)!="#"||e.length!=4&&e.length!=7){return e}e=e.substring(1);return"0x"+(e.length==3?e.replace(/(.)(.)(.)/,"$1$1$2$2$3$3"):e)};this.toJson=function(g,f){var e="";switch(typeof(g)){case"string":e='"'+f(g)+'"';break;case"number":case"boolean":e=g.toString();break;case"object":e=[];for(var h in g){if(g[h]==Object.prototype[h]){continue}e.push('"'+h+'":'+this.toJson(g[h]))}e="{"+e.join(",")+"}";break}return e};this.convertCssArg=function(e){if(!e){return{}}if(typeof(e)=="object"){if(e.constructor==Array){e=e.join("")}else{return e}}var l={};var m=e.split("}");for(var h=0;h-1){g=g.substr(f+1);var e=h.lastIndexOf(g);if(e>-1&&(e+g.length)==h.length){return true}}return false};this.uriEncode=function(e){return encodeURI(decodeURIComponent(e))};this.delay=function(f,h,g){var e=Array.prototype.slice.call(arguments,3);setTimeout(function(){h.apply(g,e)},f)}}D.UNIT_REMOVAL_PROPERTIES={leading:true,"margin-left":true,"margin-right":true,"text-indent":true};D.SINGLE_WHITESPACE=" ";function U(e){var d=this;function c(g,j,h){var k=d.getStyleAsInt(g,j,e.ua.ie);if(k==0){k=g[h];for(var f=3;f=5.5@*/;this.ieWin=this.ie&&this.windows/*@cc_on&&@_jscript_version>=5.1@*/;this.windows=this.windows&&(!this.ie||this.ieWin);this.ieMac=this.ie&&this.macintosh/*@cc_on&&@_jscript_version<5.1@*/;this.macintosh=this.macintosh&&(!this.ie||this.ieMac);this.safari=/safari/.test(g);this.webkit=!this.konqueror&&/applewebkit/.test(g);this.khtml=this.webkit||this.konqueror;this.gecko=!this.khtml&&q=="gecko";this.ieVersion=this.ie&&/.*msie\s(\d\.\d)/.exec(g)?this.parseVersion(RegExp.$1):"0";this.operaVersion=this.opera&&/.*opera(\s|\/)(\d+\.\d+)/.exec(g)?this.parseVersion(RegExp.$2):"0";this.webkitVersion=this.webkit&&/.*applewebkit\/(\d+).*/.exec(g)?this.parseVersion(RegExp.$1):"0";this.geckoVersion=this.gecko&&/.*rv:\s*([^\)]+)\)\s+gecko/.exec(g)?this.parseVersion(RegExp.$1):"0";this.konquerorVersion=this.konqueror&&/.*konqueror\/([\d\.]+).*/.exec(g)?this.parseVersion(RegExp.$1):"0";this.flashVersion=0;if(this.ieWin){var l;var o=false;try{l=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7")}catch(m){try{l=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");this.flashVersion=this.parseVersion("6");l.AllowScriptAccess="always"}catch(m){o=this.flashVersion==this.parseVersion("6")}if(!o){try{l=new ActiveXObject("ShockwaveFlash.ShockwaveFlash")}catch(m){}}}if(!o&&l){this.flashVersion=this.parseVersion((l.GetVariable("$version")||"").replace(/^\D+(\d+)\D+(\d+)\D+(\d+).*/g,"$1.$2.$3"))}}else{if(navigator.plugins&&navigator.plugins["Shockwave Flash"]){var n=navigator.plugins["Shockwave Flash"].description.replace(/^.*\s+(\S+\s+\S+$)/,"$1");var p=n.replace(/^\D*(\d+\.\d+).*$/,"$1");if(/r/.test(n)){p+=n.replace(/^.*r(\d*).*$/,".$1")}else{if(/d/.test(n)){p+=".0"}}this.flashVersion=this.parseVersion(p);var j=false;for(var k=0,c=this.flashVersion>=H.MIN_FLASH_VERSION;c&&k-1){c=false;this.quicktime=true}}}if(this.quicktime||!j){this.flashVersion=this.parseVersion("0")}}}this.flash=this.flashVersion>=H.MIN_FLASH_VERSION;this.transparencySupport=this.macintosh||this.windows||this.linux&&(this.flashVersion>=this.parseVersion("10")&&(this.gecko&&this.geckoVersion>=this.parseVersion("1.9")||this.opera));this.computedStyleSupport=this.ie||!!document.defaultView.getComputedStyle;this.fixFocus=this.gecko&&this.windows;this.nativeDomLoaded=this.gecko||this.webkit&&this.webkitVersion>=this.parseVersion("525")||this.konqueror&&this.konquerorMajor>this.parseVersion("03")||this.opera;this.mustCheckStyle=this.khtml||this.opera;this.forcePageLoad=this.webkit&&this.webkitVersion=this.parseVersion("9.61"))&&(!this.webkit||this.webkitVersion>=this.parseVersion("412"))&&(!this.gecko||this.geckoVersion>=this.parseVersion("1.8.0.12"))&&(!this.konqueror)}H.parseVersion=function(c){return c.replace(/(^|\D)(\d+)(?=\D|$)/g,function(f,e,g){f=e;for(var d=4-g.length;d>=0;d--){f+="0"}return f+g})};H.MIN_FLASH_VERSION=H.parseVersion("8");function F(c){this.fix=c.ua.ieWin&&window.location.hash!="";var d;this.cache=function(){d=document.title};function e(){document.title=d}this.restore=function(){if(this.fix){setTimeout(e,0)}}}function S(l){var e=null;function c(){try{if(l.ua.ie||document.readyState!="loaded"&&document.readyState!="complete"){document.documentElement.doScroll("left")}}catch(n){return setTimeout(c,10)}i()}function i(){if(l.useStyleCheck){h()}else{if(!l.ua.mustCheckStyle){d(null,true)}}}function h(){e=l.dom.create("div",E.DUMMY);l.dom.getBody().appendChild(e);m()}function m(){if(l.dom.getComputedStyle(e,"marginLeft")=="42px"){g()}else{setTimeout(m,10)}}function g(){if(e&&e.parentNode){e.parentNode.removeChild(e)}e=null;d(null,true)}function d(n,o){l.initialize(o);if(n&&n.type=="load"){if(document.removeEventListener){document.removeEventListener("DOMContentLoaded",d,false)}if(window.removeEventListener){window.removeEventListener("load",d,false)}}}function j(){l.prepareClearReferences();if(document.readyState=="interactive"){document.attachEvent("onstop",f);setTimeout(function(){document.detachEvent("onstop",f)},0)}}function f(){document.detachEvent("onstop",f);k()}function k(){l.clearReferences()}this.attach=function(){if(window.addEventListener){window.addEventListener("load",d,false)}else{window.attachEvent("onload",d)}if(!l.useDomLoaded||l.ua.forcePageLoad||l.ua.ie&&window.top!=window){return}if(l.ua.nativeDomLoaded){document.addEventListener("DOMContentLoaded",i,false)}else{if(l.ua.ie||l.ua.khtml){c()}}};this.attachUnload=function(){if(!l.ua.ie){return}window.attachEvent("onbeforeunload",j);window.attachEvent("onunload",k)}}var Q="sifrFetch";function N(c){var e=false;this.fetchMovies=function(f){if(c.setPrefetchCookie&&new RegExp(";?"+Q+"=true;?").test(document.cookie)){return}try{e=true;d(f)}catch(g){}if(c.setPrefetchCookie){document.cookie=Q+"=true;path="+c.cookiePath}};this.clear=function(){if(!e){return}try{var f=document.getElementsByTagName("script");for(var g=f.length-1;g>=0;g--){var h=f[g];if(h.type=="sifr/prefetch"){h.parentNode.removeChild(h)}}}catch(j){}};function d(f){for(var g=0;g<\/script>')}}}function b(e){var g=e.ua.ie;var f=g&&e.ua.flashVersion=0;h--){c[j[h].getAttribute("id")]=j[h]}}for(var k in c){if(Object.prototype[k]!=c[k]){this.cleanup(k,true)}}}}function K(d,g,f,c,e){this.sIFR=d;this.id=g;this.vars=f;this.movie=null;this.__forceWidth=c;this.__events=e;this.__resizing=0}K.prototype={getFlashElement:function(){return document.getElementById(this.id)},getAlternate:function(){return document.getElementById(this.id+"_alternate")},getAncestor:function(){var c=this.getFlashElement().parentNode;return !this.sIFR.dom.hasClass(E.FIX_FOCUS,c)?c:c.parentNode},available:function(){var c=this.getFlashElement();return c&&c.parentNode},call:function(c){var d=this.getFlashElement();if(!d[c]){return false}return Function.prototype.apply.call(d[c],d,Array.prototype.slice.call(arguments,1))},attempt:function(){if(!this.available()){return false}try{this.call.apply(this,arguments)}catch(c){if(this.sIFR.debug){throw c}return false}return true},updateVars:function(c,e){for(var d=0;d';var m="";for(var l=0;l'}this.html=this.html.replace(/(<\/object>)/,m+"$1");j.style.minHeight=o+"px";j.innerHTML=this.html;this.broken.register(j.firstChild)}d.prototype={reset:function(f,g){g=g.cloneNode(true);var e=f.parentNode;e.innerHTML=this.html;this.broken.register(e.firstChild);e.appendChild(g)},remove:function(e,f){this.broken.cleanup(f)},setSize:function(e,f){this.html=this.html.replace(e=="height"?/(height)="\d+"/:/(width)="\d+"/,'$1="'+f+'"')},injectVars:function(e,f){if(e!=this.html){return}this.html=this.html.replace(/(flashvars(=|\"\svalue=)\")[^\"]+/,"$1"+f)}}};this.errors=new Y(O);var A=this.util=new D(O);var W=this.dom=new U(O);var T=this.ua=new H(O);var G={fragmentIdentifier:new F(O),pageLoad:new S(O),prefetch:new N(O),brokenFlashIE:new b(O)};this.__resetBrokenMovies=G.brokenFlashIE.reset;var J={kwargs:[],replaceAll:function(d){for(var c=0;c1&&AP){AK+=Math.round((AH-1)*AP)}var AB=AD?c:"100%";var AI="sIFR_replacement_"+L++;var AQ=["id="+AI,"content="+A.escape(p.text),"width="+c,"renderheight="+AK,"link="+A.escape(p.primaryLink.href||""),"target="+A.escape(p.primaryLink.target||""),"size="+n,"css="+A.escape(AC),"cursor="+k,"tunewidth="+(x.tuneWidth||0),"tuneheight="+r,"offsetleft="+(x.offsetLeft||""),"offsettop="+(x.offsetTop||""),"fitexactly="+q,"preventwrap="+AS,"forcesingleline="+AN,"antialiastype="+(x.antiAliasType||""),"thickness="+(x.thickness||""),"sharpness="+(x.sharpness||""),"kerning="+o,"gridfittype="+AJ,"flashfilters="+v,"opacity="+AW,"blendmode="+(x.blendMode||""),"selectable="+(x.selectable==null||AG!=""&&!sIFR.ua.macintosh&&sIFR.ua.gecko&&sIFR.ua.geckoVersion>=sIFR.ua.parseVersion("1.9")?"true":x.selectable===true),"fixhover="+(this.fixHover===true),"events="+z,"delayrun="+G.brokenFlashIE.fixFlash,"version="+this.VERSION];var y=A.encodeVars(AQ);var g=new K(O,AI,AQ,AD,{onReplacement:x.onReplacement,onRollOver:x.onRollOver,onRollOut:x.onRollOut,onRelease:x.onRelease});g.movie=X.create(sIFR,G.brokenFlashIE,AF,T.fixFocus&&x.fixFocus,AI,w,AB,AK,y,AG,e);this.replacements.push(g);this.replacements[AI]=g;if(x.selector){if(!this.replacements[x.selector]){this.replacements[x.selector]=[g]}else{this.replacements[x.selector].push(g)}}d.setAttribute("id",AI+"_alternate");AF.appendChild(d);W.addClass(E.REPLACED,AF)}G.fragmentIdentifier.restore()};this.getReplacementByFlashElement=function(d){for(var c=0;c-1){n=n.match("(\\s|^)"+E.CLASS+"-([^\\s$]*)(\\s|$)")[2]}else{n=n.match(/^([^\s]+)/)[1]}}if(n!=""){h.push('class="'+n+'"')}if(r=="a"){var d=s(f.getAttribute("href")||"");var l=f.getAttribute("target")||"";h.push('href="'+d+'"','target="'+l+'"');if(!k){k={href:d,target:l}}}m.push("<"+r+(h.length>0?" ":"")+h.join(" ")+">");p=true;if(f.hasChildNodes()){q.push(j);j=0;e=f.childNodes;continue}else{if(!/^(br|img)$/i.test(f.nodeName)){m.push("")}}}if(q.length>0&&!f.nextSibling){do{j=q.pop();e=f.parentNode.parentNode.childNodes;f=e[j];if(f){m.push("")}}while(j==e.length-1&&q.length>0)}j++}return{text:m.join("").replace(/^\s+|\s+$|\s*(
    )\s*/g,"$1"),primaryLink:k||{}}}}; var parseSelector=(function(){var B=/\s*,\s*/;var A=/\s*([\s>+~(),]|^|$)\s*/g;var L=/([\s>+~,]|[^(]\+|^)([#.:@])/g;var F=/(^|\))[^\s>+~]/g;var M=/(\)|^)/;var K=/[\s#.:>+~()@]|[^\s#.:>+~()@]+/g;function H(R,P){P=P||document.documentElement;var S=R.split(B),X=[];for(var U=0;U":function(O,R){var N=[];for(var Q=0,S;Q =:license * This software is licensed and provided under the CC-GNU LGPL * See */ sIFR.debug = new function() { function Errors() { this.fire = function(id) { if(this[id + 'Alert']) alert(this[id + 'Alert']); throw new Error(this[id]); }; this.isFile = 'sIFR: Did not activate because the page is being loaded from the filesystem.'; this.isFileAlert = 'Hi!\n\nThanks for using sIFR on your page. Unfortunately sIFR couldn\'t activate, because it was loaded ' + 'directly from your computer.\nDue to Flash security restrictions, you need to load sIFR through a web' + ' server.\n\nWe apologize for the inconvenience.'; }; sIFR.errors = new Errors(); function log(msg) { if(!sIFR.ua.safari && window.console && console.log) console.log(msg); else alert(msg); } this.ua = function() { var info = []; for(var prop in sIFR.ua) { if(sIFR.ua[prop] == Object.prototype[prop]) continue; info.push(prop, ': ', sIFR.ua[prop], '\n'); } log(info.join('')); }; this.domains = function() { if(sIFR.domains.length == 0) { log('No domain verification used.'); return; } var domain = sIFR.util.domain(); var matches = [], nonMatches = []; for(var i = 0; i < sIFR.domains.length; i++) { var match = sIFR.domains[i]; if(sIFR.util.domainMatches(domain, match)) matches.push(match); else nonMatches.push(match); } var msg = ['The domain "', domain, '"']; if(matches.length > 0) msg.push(' matches:\n* ', matches.join('\n* ')); if(matches.length > 0 && nonMatches.length > 0) msg.push('\nbut'); if(nonMatches.length > 0) msg.push(' does not match:\n* ', nonMatches.join('\n* ')); log(msg.join('')); }; this.ratios = function(kwargs, mergeKwargs) { if(mergeKwargs) kwargs = sIFR.util.copyProperties(kwargs, mergeKwargs); if(!kwargs.selector && !kwargs.elements) { log('Cannot calculate ratios, no selector or element given.'); return; } delete kwargs.wmode; delete kwargs.transparent; delete kwargs.opaque; if (kwargs.css) { kwargs.css = sIFR.util.convertCssArg(kwargs.css); sIFR.util.extractFromCss(kwargs.css, '.sIFR-root', 'leading', true); } var running = false; kwargs.onReplacement = function(cb) { if(running) return; // Prevent duplicate results running = true; sIFR.debug.__ratiosCallback[cb.id] = function(ratios) { ratios = '[' + ratios.join(', ') + ']'; setTimeout(function() { var before = new Date(); prompt('The ratios for ' + kwargs.selector + ' are:', ratios); if(sIFR.ua.ie && before - new Date < 200) { alert("Press Control+C to copy the text of this alert box. Then paste it into your favorite text editor.\n" + "The numbers between the braces, including the braces, are the ratios. You have to add those to your sIFR configuration.\n\n" + "Tip: try calculating the ratios in Firefox instead, it'll be easier to copy the ratios.\n\n" + ratios); } cb.resetMovie(); }, 0); }; cb.call('calculateRatios'); }; sIFR.replace(kwargs); }; this.__ratiosCallback = function(id, ratios) { if(this.__ratiosCallback[id]) this.__ratiosCallback[id](ratios); }; function verifyResource(uri, fail, ok) { if(sIFR.ua.ie && uri.charAt(0) == '/') { uri = window.location.toString().replace(/([^:]+)(:\/?\/?)([^\/]+).*/, '$1$2$3') + uri; } var xhr = new XMLHttpRequest(); xhr.open('GET', uri, true); xhr.onreadystatechange = function() { if(xhr.readyState == 4) { if(xhr.status != 200) log(fail); else log(ok); } }; xhr.send(''); } this.test = function(kwargs, mergeKwargs) { kwargs = merge(kwargs, mergeKwargs); var src = kwargs.src; var checked = false; if(typeof(src) != 'string') { if(src.src) src = src.src; if(typeof(src) != 'string') { var versions = []; for(var version in src) if(src[version] != Object.prototype[version]) versions.push(version); versions.sort().reverse(); var result = ''; var i = -1; while(!result && ++i < versions.length) { if(parseFloat(versions[i]) <= ua.flashVersion) result = src[versions[i]]; var msg = '<' + src[versions[i]] + '>, flash ' + parseFloat(versions[i]); verifyResource(src[versions[i]], 'FAILED: ' + msg, 'OK: ' + msg); } src = result; checked = true; } } if(!src) log('Could not determine appropriate source.'); else if(!checked) verifyResource(src, 'FAILED: <' + src + '>', 'OK: <' + src + '>'); }; this.forceTest = function() { var replace = sIFR.replace; sIFR.replace = function(kwargs, mergeKwargs) { sIFR.debug.test(kwargs, mergeKwargs); replace.call(sIFR, kwargs, mergeKwargs); }; } }; /* * slider 1.0.0 - JQuery Based Content Slider * * Copyright (c) 2009 Mohammad Ruhul Amin * Dual licensed under the MIT (MIT-LICENSE.txt) * and GPL (GPL-LICENSE.txt) licenses. * * $Date: 2009-05-24 14:22:17 -0400 (Sun, 24 May 2009) $ * $Rev: 1 $ * Sample: * $('#slider').slider({pause: 3000, speed:3000, prevId : '#btnPrevInfo', nextId : '#btnNextInfo'}); */ (function($){ $.fn.slider = function(options) { var defaults = { itemsCss: '.item', prevId : '#btnPrev', nextId : '#btnNext', speed: 900, pause: 6000, auto: true, effect: 'horizontal', // ''/'fade'/'vertical' maxLoops: 0, direction: '', // 'reverse', startSpace: 0 }; var options = $.extend(defaults, options); this.each(function() { var obj = $(this); var items = $(options.itemsCss, obj); var timer = null; var index = 0; var loopCount = 0; var s = options.startSpace; var w = obj.width(); var h = obj.height(); items.each(function() { $(this).css('position', 'absolute') .css('top', 0) .css('left', w) .hide(); }); $(items[0]).show().css('left',0); if(items.length <= 1) return; if(options.auto == true) { start(); } function start() { if(options.maxLoops > 0 && options.maxLoops <= loopCount) return; timer = window.setTimeout(nextClicked, options.pause); }; function stop() { window.clearTimeout(timer); timer = null; }; function _nextIndex() { index++; if(index >= items.length) { index = 0; loopCount++; } }; function _prevIndex() { index--; if(index < 0) { index = items.length-1; } }; function _slideUp() { if(options.direction != 'reverse') { $(items[index]).show().animate({top: -h - s}, options.speed, 'swing'); _nextIndex(); $(items[index]).hide().css('left', 0).css('top', h + s); $(items[index]).show().animate({top: 0}, options.speed, 'swing', onNextCompleted); } else { $(items[index]).show().animate({top: h + s}, options.speed, 'swing'); _nextIndex(); $(items[index]).hide().css('left', 0).css('top', -h - s); $(items[index]).show().animate({top: 0}, options.speed, 'swing', onNextCompleted); } }; function _slideDown() { if(options.direction != 'reverse') { $(items[index]).show().animate({top: h + s}, options.speed, 'swing'); _prevIndex(); $(items[index]).hide().css('left', 0).css('top', -h - s); $(items[index]).show().animate({top: 0}, options.speed, 'swing', onPrevCompleted); } else { $(items[index]).show().animate({top: -h - s}, options.speed, 'swing'); _nextIndex(); $(items[index]).hide().css('left', 0).css('top', h + s); $(items[index]).show().animate({top: 0}, options.speed, 'swing', onPrevCompleted); } }; function _slideNext() { if(options.direction != 'reverse') { $(items[index]).show().animate({left: -w - s}, options.speed, 'swing'); _nextIndex(); $(items[index]).hide().css('left', w + s); $(items[index]).show().animate({left: 0}, options.speed, 'swing', onNextCompleted); } else { $(items[index]).show().animate({left: w + s}, options.speed, 'swing'); _nextIndex(); $(items[index]).hide().css('left', -w - s); $(items[index]).show().animate({left: 0}, options.speed, 'swing', onNextCompleted); } }; function _slidePrev() { if(options.direction != 'reverse') { $(items[index]).show().animate({left: w + s}, options.speed, 'swing'); _prevIndex(); $(items[index]).css('left', -w - s); $(items[index]).show().animate({left: 0}, options.speed, 'swing', onPrevCompleted); } else { $(items[index]).show().animate({left: -w - s}, options.speed, 'swing'); _prevIndex(); $(items[index]).css('left', w + s); $(items[index]).show().animate({left: 0}, options.speed, 'swing', onPrevCompleted); } }; function _fadeNext() { $(items[index]).fadeOut('slow', function() { _nextIndex(); $(items[index]).css('left',0).fadeIn('slow', onNextCompleted); }); }; function _fadePrev() { $(items[index]).fadeOut('slow', function() { _prevIndex(); $(items[index]).css('left',0).fadeIn('slow', onPrevCompleted); }); } function onNextCompleted() { $(options.nextId).click(function() { return nextClicked(); }); if(options.auto == true) { start(); } }; function nextClicked() { stop(); $(options.nextId).unbind().click(function(){ return false; }); if(options.effect == 'fade') { _fadeNext(); } else if(options.effect == 'vertical') { _slideUp(); } else { _slideNext(); } return false; }; function onPrevCompleted() { $(options.prevId).click(function() { return prevClicked(); }); if(options.auto == true) { start(); } }; function prevClicked() { stop(); $(options.prevId).unbind().click(function(){ return false; }); if(options.effect == 'fade') { _fadePrev(); } else if(options.effect == 'vertical') { _slideDown(); } else { _slidePrev(); } return false; }; $(options.nextId).click(function() { return nextClicked(); }); $(options.prevId).click(function() { return prevClicked(); }); }); }; })(jQuery); /** * jQuery lightBox plugin * This jQuery plugin was inspired and based on Lightbox 2 by Lokesh Dhakar (http://www.huddletogether.com/projects/lightbox2/) * and adapted to me for use like a plugin from jQuery. * @name jquery-lightbox-0.5.js * @author Leandro Vieira Pinho - http://leandrovieira.com * @version 0.5 * @date April 11, 2008 * @category jQuery plugin * @copyright (c) 2008 Leandro Vieira Pinho (leandrovieira.com) * @license CC Attribution-No Derivative Works 2.5 Brazil - http://creativecommons.org/licenses/by-nd/2.5/br/deed.en_US * @example Visit http://leandrovieira.com/projects/jquery/lightbox/ for more informations about this jQuery plugin */ (function($){$.fn.lightBox=function(settings){settings=jQuery.extend({overlayBgColor:'#000',overlayOpacity:0.8,fixedNavigation:false,imageLoading:'images/lightbox-ico-loading.gif',imageBtnPrev:'images/lightbox-btn-prev.gif',imageBtnNext:'images/lightbox-btn-next.gif',imageBtnClose:'images/lightbox-btn-close.gif',imageBlank:'images/lightbox-blank.gif',containerBorderSize:10,containerResizeSpeed:400,txtImage:'Image',txtOf:'of',keyToClose:'c',keyToPrev:'p',keyToNext:'n',imageArray:[],activeImage:0},settings);var jQueryMatchedObj=this;function _initialize(){_start(this,jQueryMatchedObj);return false;} function _start(objClicked,jQueryMatchedObj){$('embed, object, select').css({'visibility':'hidden'});_set_interface();settings.imageArray.length=0;settings.activeImage=0;if(jQueryMatchedObj.length==1){settings.imageArray.push(new Array(objClicked.getAttribute('href'),objClicked.getAttribute('title')));}else{for(var i=0;i
    ');var arrPageSizes=___getPageSize();$('#jquery-overlay').css({backgroundColor:settings.overlayBgColor,opacity:settings.overlayOpacity,width:arrPageSizes[0],height:arrPageSizes[1]}).fadeIn();var arrPageScroll=___getPageScroll();$('#jquery-lightbox').css({top:arrPageScroll[1]+(arrPageSizes[3]/10),left:arrPageScroll[0]}).show();$('#jquery-overlay,#jquery-lightbox').click(function(){_finish();});$('#lightbox-loading-link,#lightbox-secNav-btnClose').click(function(){_finish();return false;});$(window).resize(function(){var arrPageSizes=___getPageSize();$('#jquery-overlay').css({width:arrPageSizes[0],height:arrPageSizes[1]});var arrPageScroll=___getPageScroll();$('#jquery-lightbox').css({top:arrPageScroll[1]+(arrPageSizes[3]/10),left:arrPageScroll[0]});});} function _set_image_to_view(){$('#lightbox-loading').show();if(settings.fixedNavigation){$('#lightbox-image,#lightbox-container-image-data-box,#lightbox-image-details-currentNumber').hide();}else{$('#lightbox-image,#lightbox-nav,#lightbox-nav-btnPrev,#lightbox-nav-btnNext,#lightbox-container-image-data-box,#lightbox-image-details-currentNumber').hide();} var objImagePreloader=new Image();objImagePreloader.onload=function(){$('#lightbox-image').attr('src',settings.imageArray[settings.activeImage][0]);_resize_container_image_box(objImagePreloader.width,objImagePreloader.height);objImagePreloader.onload=function(){};};objImagePreloader.src=settings.imageArray[settings.activeImage][0];};function _resize_container_image_box(intImageWidth,intImageHeight){var intCurrentWidth=$('#lightbox-container-image-box').width();var intCurrentHeight=$('#lightbox-container-image-box').height();var intWidth=(intImageWidth+(settings.containerBorderSize*2));var intHeight=(intImageHeight+(settings.containerBorderSize*2));var intDiffW=intCurrentWidth-intWidth;var intDiffH=intCurrentHeight-intHeight;$('#lightbox-container-image-box').animate({width:intWidth,height:intHeight},settings.containerResizeSpeed,function(){_show_image();});if((intDiffW==0)&&(intDiffH==0)){if($.browser.msie){___pause(250);}else{___pause(100);}} $('#lightbox-container-image-data-box').css({width:intImageWidth});$('#lightbox-nav-btnPrev,#lightbox-nav-btnNext').css({height:intImageHeight+(settings.containerBorderSize*2)});};function _show_image(){$('#lightbox-loading').hide();$('#lightbox-image').fadeIn(function(){_show_image_data();_set_navigation();});_preload_neighbor_images();};function _show_image_data(){$('#lightbox-container-image-data-box').slideDown('fast');$('#lightbox-image-details-caption').hide();if(settings.imageArray[settings.activeImage][1]){$('#lightbox-image-details-caption').html(settings.imageArray[settings.activeImage][1]).show();} if(settings.imageArray.length>1){$('#lightbox-image-details-currentNumber').html(settings.txtImage+' '+(settings.activeImage+1)+' '+settings.txtOf+' '+settings.imageArray.length).show();}} function _set_navigation(){$('#lightbox-nav').show();$('#lightbox-nav-btnPrev,#lightbox-nav-btnNext').css({'background':'transparent url('+settings.imageBlank+') no-repeat'});if(settings.activeImage!=0){if(settings.fixedNavigation){$('#lightbox-nav-btnPrev').css({'background':'url('+settings.imageBtnPrev+') left 15% no-repeat'}).unbind().bind('click',function(){settings.activeImage=settings.activeImage-1;_set_image_to_view();return false;});}else{$('#lightbox-nav-btnPrev').unbind().hover(function(){$(this).css({'background':'url('+settings.imageBtnPrev+') left 15% no-repeat'});},function(){$(this).css({'background':'transparent url('+settings.imageBlank+') no-repeat'});}).show().bind('click',function(){settings.activeImage=settings.activeImage-1;_set_image_to_view();return false;});}} if(settings.activeImage!=(settings.imageArray.length-1)){if(settings.fixedNavigation){$('#lightbox-nav-btnNext').css({'background':'url('+settings.imageBtnNext+') right 15% no-repeat'}).unbind().bind('click',function(){settings.activeImage=settings.activeImage+1;_set_image_to_view();return false;});}else{$('#lightbox-nav-btnNext').unbind().hover(function(){$(this).css({'background':'url('+settings.imageBtnNext+') right 15% no-repeat'});},function(){$(this).css({'background':'transparent url('+settings.imageBlank+') no-repeat'});}).show().bind('click',function(){settings.activeImage=settings.activeImage+1;_set_image_to_view();return false;});}} _enable_keyboard_navigation();} function _enable_keyboard_navigation(){$(document).keydown(function(objEvent){_keyboard_action(objEvent);});} function _disable_keyboard_navigation(){$(document).unbind();} function _keyboard_action(objEvent){if(objEvent==null){keycode=event.keyCode;escapeKey=27;}else{keycode=objEvent.keyCode;escapeKey=objEvent.DOM_VK_ESCAPE;} key=String.fromCharCode(keycode).toLowerCase();if((key==settings.keyToClose)||(key=='x')||(keycode==escapeKey)){_finish();} if((key==settings.keyToPrev)||(keycode==37)){if(settings.activeImage!=0){settings.activeImage=settings.activeImage-1;_set_image_to_view();_disable_keyboard_navigation();}} if((key==settings.keyToNext)||(keycode==39)){if(settings.activeImage!=(settings.imageArray.length-1)){settings.activeImage=settings.activeImage+1;_set_image_to_view();_disable_keyboard_navigation();}}} function _preload_neighbor_images(){if((settings.imageArray.length-1)>settings.activeImage){objNext=new Image();objNext.src=settings.imageArray[settings.activeImage+1][0];} if(settings.activeImage>0){objPrev=new Image();objPrev.src=settings.imageArray[settings.activeImage-1][0];}} function _finish(){$('#jquery-lightbox').remove();$('#jquery-overlay').fadeOut(function(){$('#jquery-overlay').remove();});$('embed, object, select').css({'visibility':'visible'});} function ___getPageSize(){var xScroll,yScroll;if(window.innerHeight&&window.scrollMaxY){xScroll=window.innerWidth+window.scrollMaxX;yScroll=window.innerHeight+window.scrollMaxY;}else if(document.body.scrollHeight>document.body.offsetHeight){xScroll=document.body.scrollWidth;yScroll=document.body.scrollHeight;}else{xScroll=document.body.offsetWidth;yScroll=document.body.offsetHeight;} var windowWidth,windowHeight;if(self.innerHeight){if(document.documentElement.clientWidth){windowWidth=document.documentElement.clientWidth;}else{windowWidth=self.innerWidth;} windowHeight=self.innerHeight;}else if(document.documentElement&&document.documentElement.clientHeight){windowWidth=document.documentElement.clientWidth;windowHeight=document.documentElement.clientHeight;}else if(document.body){windowWidth=document.body.clientWidth;windowHeight=document.body.clientHeight;} if(yScroll