if(!this.JSON){this.JSON={}}(function(){function f(n){return n<10?"0"+n:n}if(typeof Date.prototype.toJSON!=="function"){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+"-"+f(this.getUTCMonth()+1)+"-"+f(this.getUTCDate())+"T"+f(this.getUTCHours())+":"+f(this.getUTCMinutes())+":"+f(this.getUTCSeconds())+"Z":null};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf()}}var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==="string"?c:"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+string+'"'}function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==="object"&&typeof value.toJSON==="function"){value=value.toJSON(key)}if(typeof rep==="function"){value=rep.call(holder,key,value)}switch(typeof value){case"string":return quote(value);case"number":return isFinite(value)?String(value):"null";case"boolean":case"null":return String(value);case"object":if(!value){return"null"}gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==="[object Array]"){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||"null"}v=partial.length===0?"[]":gap?"[\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"]":"["+partial.join(",")+"]";gap=mind;return v}if(rep&&typeof rep==="object"){length=rep.length;for(i=0;i<length;i+=1){k=rep[i];if(typeof k==="string"){v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v)}}}}else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v)}}}}v=partial.length===0?"{}":gap?"{\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"}":"{"+partial.join(",")+"}";gap=mind;return v}}if(typeof JSON.stringify!=="function"){JSON.stringify=function(value,replacer,space){var i;gap="";indent="";if(typeof space==="number"){for(i=0;i<space;i+=1){indent+=" "}}else{if(typeof space==="string"){indent=space}}rep=replacer;if(replacer&&typeof replacer!=="function"&&(typeof replacer!=="object"||typeof replacer.length!=="number")){throw new Error("JSON.stringify")}return str("",{"":value})}}if(typeof JSON.parse!=="function"){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==="object"){for(k in value){if(Object.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v}else{delete value[k]}}}}return reviver.call(holder,key,value)}cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})}if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,""))){j=eval("("+text+")");return typeof reviver==="function"?walk({"":j},""):j}throw new SyntaxError("JSON.parse")}}}());(function($){$.fn.extend({isChildOf:function(filter_string){var parents=$(this).parents().get();for(j=0;j<parents.length;j++){if($(parents[j]).is(filter_string)){return true}}return false}})})(jQuery);(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log("ajaxSubmit: skipping submit process - no element selected");return this}if(typeof options=="function"){options={success:options}}var url=$.trim(this.attr("action"));if(url){url=(url.match(/^([^#]+)/)||[])[1]}url=url||window.location.href||"";options=$.extend({url:url,type:this.attr("method")||"GET",iframeSrc:/^https/i.test(window.location.href||"")?"javascript:false":"about:blank"},options||{});var veto={};this.trigger("form-pre-serialize",[this,options,veto]);if(veto.veto){log("ajaxSubmit: submit vetoed via form-pre-serialize trigger");return this}if(options.beforeSerialize&&options.beforeSerialize(this,options)===false){log("ajaxSubmit: submit aborted via beforeSerialize callback");return this}var a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(var n in options.data){if(options.data[n] instanceof Array){for(var k in options.data[n]){a.push({name:n,value:options.data[n][k]})}}else{a.push({name:n,value:options.data[n]})}}}if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log("ajaxSubmit: submit aborted via beforeSubmit callback");return this}this.trigger("form-submit-validate",[a,this,options,veto]);if(veto.veto){log("ajaxSubmit: submit vetoed via form-submit-validate trigger");return this}var q=$.param(a);if(options.type.toUpperCase()=="GET"){options.url+=(options.url.indexOf("?")>=0?"&":"?")+q;options.data=null}else{options.data=q}var $form=this,callbacks=[];if(options.resetForm){callbacks.push(function(){$form.resetForm()})}if(options.clearForm){callbacks.push(function(){$form.clearForm()})}if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){$(options.target).html(data).each(oldSuccess,arguments)})}else{if(options.success){callbacks.push(options.success)}}options.success=function(data,status,xhr){for(var i=0,max=callbacks.length;i<max;i++){callbacks[i].apply(options,[data,status,xhr||$form,$form])}};var files=$("input:file",this).fieldValue();var found=false;for(var j=0;j<files.length;j++){if(files[j]){found=true}}var multipart=false;if((files.length&&options.iframe!==false)||options.iframe||found||multipart){if(options.closeKeepAlive){$.get(options.closeKeepAlive,fileUpload)}else{fileUpload()}}else{$.ajax(options)}this.trigger("form-submit-notify",[this,options]);return this;function fileUpload(){var form=$form[0];if($(":input[name=submit]",form).length){alert('Error: Form elements must not be named "submit".');return}var opts=$.extend({},$.ajaxSettings,options);var s=$.extend(true,{},$.extend(true,{},$.ajaxSettings),opts);var id="jqFormIO"+(new Date().getTime());var $io=$('<iframe id="'+id+'" name="'+id+'" src="'+opts.iframeSrc+'" onload="(jQuery(this).data(\'form-plugin-onload\'))()" />');var io=$io[0];$io.css({position:"absolute",top:"-1000px",left:"-1000px"});var xhr={aborted:0,responseText:null,responseXML:null,status:0,statusText:"n/a",getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){},abort:function(){this.aborted=1;$io.attr("src",opts.iframeSrc)}};var g=opts.global;if(g&&!$.active++){$.event.trigger("ajaxStart")}if(g){$.event.trigger("ajaxSend",[xhr,opts])}if(s.beforeSend&&s.beforeSend(xhr,s)===false){s.global&&$.active--;return}if(xhr.aborted){return}var cbInvoked=false;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){opts.extraData=opts.extraData||{};opts.extraData[n]=sub.value;if(sub.type=="image"){opts.extraData[name+".x"]=form.clk_x;opts.extraData[name+".y"]=form.clk_y}}}function doSubmit(){var t=$form.attr("target"),a=$form.attr("action");form.setAttribute("target",id);if(form.getAttribute("method")!="POST"){form.setAttribute("method","POST")}if(form.getAttribute("action")!=opts.url){form.setAttribute("action",opts.url)}if(!opts.skipEncodingOverride){$form.attr({encoding:"multipart/form-data",enctype:"multipart/form-data"})}if(opts.timeout){setTimeout(function(){timedOut=true;cb()},opts.timeout)}var extraInputs=[];try{if(opts.extraData){for(var n in opts.extraData){extraInputs.push($('<input type="hidden" name="'+n+'" value="'+opts.extraData[n]+'" />').appendTo(form)[0])}}$io.appendTo("body");$io.data("form-plugin-onload",cb);form.submit()}finally{form.setAttribute("action",a);t?form.setAttribute("target",t):$form.removeAttr("target");$(extraInputs).remove()}}if(opts.forceSync){doSubmit()}else{setTimeout(doSubmit,10)}var domCheckCount=100;function cb(){if(cbInvoked){return}var ok=true;try{if(timedOut){throw"timeout"}var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;var isXml=opts.dataType=="xml"||doc.XMLDocument||$.isXMLDoc(doc);log("isXml="+isXml);if(!isXml&&(doc.body==null||doc.body.innerHTML=="")){if(--domCheckCount){setTimeout(cb,250);return}log("Could not access iframe DOM after 100 tries.");return}cbInvoked=true;xhr.responseText=doc.body?doc.body.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={"content-type":opts.dataType};return headers[header]};if(opts.dataType=="json"||opts.dataType=="script"){var ta=doc.getElementsByTagName("textarea")[0];if(ta){xhr.responseText=ta.value}else{var pre=doc.getElementsByTagName("pre")[0];if(pre){xhr.responseText=pre.innerHTML}}}else{if(opts.dataType=="xml"&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText)}}data=$.httpData(xhr,opts.dataType)}catch(e){ok=false;$.handleError(opts,xhr,"error",e)}if(ok){opts.success(data,"success");if(g){$.event.trigger("ajaxSuccess",[xhr,opts])}}if(g){$.event.trigger("ajaxComplete",[xhr,opts])}if(g&&!--$.active){$.event.trigger("ajaxStop")}if(opts.complete){opts.complete(xhr,ok?"success":"error")}setTimeout(function(){$io.removeData("form-plugin-onload");$io.remove();xhr.responseXML=null},100)}function toXml(s,doc){if(window.ActiveXObject){doc=new ActiveXObject("Microsoft.XMLDOM");doc.async="false";doc.loadXML(s)}else{doc=(new DOMParser()).parseFromString(s,"text/xml")}return(doc&&doc.documentElement&&doc.documentElement.tagName!="parsererror")?doc:null}}};$.fn.ajaxForm=function(options){return this.ajaxFormUnbind().bind("submit.form-plugin",function(e){e.preventDefault();$(this).ajaxSubmit(options)}).bind("click.form-plugin",function(e){var target=e.target;var $el=$(target);if(!($el.is(":submit,input:image"))){var t=$el.closest(":submit");if(t.length==0){return}target=t[0]}var form=this;form.clk=target;if(target.type=="image"){if(e.offsetX!=undefined){form.clk_x=e.offsetX;form.clk_y=e.offsetY}else{if(typeof $.fn.offset=="function"){var offset=$el.offset();form.clk_x=e.pageX-offset.left;form.clk_y=e.pageY-offset.top}else{form.clk_x=e.pageX-target.offsetLeft;form.clk_y=e.pageY-target.offsetTop}}}setTimeout(function(){form.clk=form.clk_x=form.clk_y=null},100)})};$.fn.ajaxFormUnbind=function(){return this.unbind("submit.form-plugin click.form-plugin")};$.fn.formToArray=function(semantic){var a=[];if(this.length==0){return a}var form=this[0];var els=semantic?form.getElementsByTagName("*"):form.elements;if(!els){return a}for(var i=0,max=els.length;i<max;i++){var el=els[i];var n=el.name;if(!n){continue}if(semantic&&form.clk&&el.type=="image"){if(!el.disabled&&form.clk==el){a.push({name:n,value:$(el).val()});a.push({name:n+".x",value:form.clk_x},{name:n+".y",value:form.clk_y})}continue}var v=$.fieldValue(el,true);if(v&&v.constructor==Array){for(var j=0,jmax=v.length;j<jmax;j++){a.push({name:n,value:v[j]})}}else{if(v!==null&&typeof v!="undefined"){a.push({name:n,value:v})}}}if(!semantic&&form.clk){var $input=$(form.clk),input=$input[0],n=input.name;if(n&&!input.disabled&&input.type=="image"){a.push({name:n,value:$input.val()});a.push({name:n+".x",value:form.clk_x},{name:n+".y",value:form.clk_y})}}return a};$.fn.formSerialize=function(semantic){return $.param(this.formToArray(semantic))};$.fn.fieldSerialize=function(successful){var a=[];this.each(function(){var n=this.name;if(!n){return}var v=$.fieldValue(this,successful);if(v&&v.constructor==Array){for(var i=0,max=v.length;i<max;i++){a.push({name:n,value:v[i]})}}else{if(v!==null&&typeof v!="undefined"){a.push({name:this.name,value:v})}}});return $.param(a)};$.fn.fieldValue=function(successful){for(var val=[],i=0,max=this.length;i<max;i++){var el=this[i];var v=$.fieldValue(el,successful);if(v===null||typeof v=="undefined"||(v.constructor==Array&&!v.length)){continue}v.constructor==Array?$.merge(val,v):val.push(v)}return val};$.fieldValue=function(el,successful){var n=el.name,t=el.type,tag=el.tagName.toLowerCase();if(typeof successful=="undefined"){successful=true}if(successful&&(!n||el.disabled||t=="reset"||t=="button"||(t=="checkbox"||t=="radio")&&!el.checked||(t=="submit"||t=="image")&&el.form&&el.form.clk!=el||tag=="select"&&el.selectedIndex==-1)){return null}if(tag=="select"){var index=el.selectedIndex;if(index<0){return null}var a=[],ops=el.options;var one=(t=="select-one");var max=(one?index+1:ops.length);for(var i=(one?index:0);i<max;i++){var op=ops[i];if(op.selected){var v=op.value;if(!v){v=(op.attributes&&op.attributes.value&&!(op.attributes.value.specified))?op.text:op.value}if(one){return v}a.push(v)}}return a}return el.value};$.fn.clearForm=function(){return this.each(function(){$("input,select,textarea",this).clearFields()})};$.fn.clearFields=$.fn.clearInputs=function(){return this.each(function(){var t=this.type,tag=this.tagName.toLowerCase();if(t=="text"||t=="password"||tag=="textarea"){this.value=""}else{if(t=="checkbox"||t=="radio"){this.checked=false}else{if(tag=="select"){this.selectedIndex=-1}}}})};$.fn.resetForm=function(){return this.each(function(){if(typeof this.reset=="function"||(typeof this.reset=="object"&&!this.reset.nodeType)){this.reset()}})};$.fn.enable=function(b){if(b==undefined){b=true}return this.each(function(){this.disabled=!b})};$.fn.selected=function(select){if(select==undefined){select=true}return this.each(function(){var t=this.type;if(t=="checkbox"||t=="radio"){this.checked=select}else{if(this.tagName.toLowerCase()=="option"){var $sel=$(this).parent("select");if(select&&$sel[0]&&$sel[0].type=="select-one"){$sel.find("option").selected(false)}this.selected=select}}})};function log(){if($.fn.ajaxSubmit.debug&&window.console&&window.console.log){window.console.log("[jquery.form] "+Array.prototype.join.call(arguments,""))}}})(jQuery);(function(a){a.address=(function(){var c=function(i){a(this).trigger(a.extend(a.Event(i),(function(){var ah={value:this.value(),path:this.path(),pathNames:this.pathNames(),parameterNames:this.parameterNames(),parameters:{},queryString:this.queryString()};for(var ag=0,p=ah.parameterNames.length;ag<p;ag++){ah.parameters[ah.parameterNames[ag]]=this.parameter(ah.parameterNames[ag])}return ah}).call(this)))};var V=function(){c.call(a.address,"init")};var o=function(){c.call(a.address,"change")};var P=function(){var i=U.href.indexOf("#");return i!=-1?ae(q(U.href.substr(i+1))):""};var h=function(){try{return top.document!=undefined?top:window}catch(i){return window}};var F=function(p,i){if(C.strict){p=i?(p.substr(0,1)!="/"?"/"+p:p):(p==""?"/":p)}return p};var r=function(i,p){return(j&&U.protocol=="file:")?(p?Q.replace(/\?/,"%3F"):Q.replace(/%253F/,"?")):i};var af=function(ai){for(var ag=0,p=ai.childNodes.length,ah;ag<p;ag++){if(ai.childNodes[ag].src){l=String(ai.childNodes[ag].src)}if(ah=af(ai.childNodes[ag])){return ah}}};var X=function(){if(!t){var p=P();var i=!(Q==p);if(u&&s<523){if(E!=Y.length){E=Y.length;if(typeof z[E-1]!=G){Q=z[E-1]}T(false)}}else{if(j&&s<7&&i){U.reload()}else{if(i){Q=p;T(false)}}}}};var T=function(i){o();if(i){c.call(a.address,"internalChange")}else{c.call(a.address,"externalChange")}n(w,10)};var w=function(){var p=(U.pathname+(/\/$/.test(U.pathname)?"":"/")+D.value()).replace(/\/\//,"/").replace(/^\/$/,"");var i=window[C.tracker];if(typeof i==g){i(p)}else{if(typeof pageTracker!=G&&typeof pageTracker._trackPageview==g){pageTracker._trackPageview(p)}else{if(typeof urchinTracker==g){urchinTracker(p)}}}};var e=function(){var i=f.contentWindow.document;i.open();i.write("<html><head><title>"+ac.title+"</title><script>var "+x+' = "'+P()+'";</script></head></html>');i.close()};var N=function(){if(!S){S=B;if(j&&s<8){var i=ac.getElementsByTagName("frameset")[0];f=ac.createElement((i?"":"i")+"frame");if(i){i.insertAdjacentElement("beforeEnd",f);i[i.cols?"cols":"rows"]+=",0";f.src="javascript:false";f.noResize=true;f.frameBorder=f.frameSpacing=0}else{f.src="javascript:false";f.style.display="none";ac.body.insertAdjacentElement("afterBegin",f)}n(function(){a(f).bind("load",function(){var p=f.contentWindow;var ag=p.location.href;Q=(typeof p[x]!=G?p[x]:"");if(Q!=P()){T(false);U.hash=r(Q,B)}});if(typeof f.contentWindow[x]==G){e()}},50)}else{if(u){if(s<418){a(ac.body).append('<form id="'+x+'" style="position:absolute;top:-9999px;" method="get"></form>');J=ac.getElementById(x)}if(typeof U[x]==G){U[x]={}}if(typeof U[x][U.pathname]!=G){z=U[x][U.pathname].split(",")}}}n(function(){V();T(false)},1);if(j&&s>=8){ac.body.onhashchange=X}else{v(X,50)}a("a[rel*=address:]").address()}};var D={baseURL:function(){var i=U.href;if(i.indexOf("#")!=-1){i=i.substr(0,i.indexOf("#"))}if(i.substr(i.length-1)=="/"){i=i.substr(0,i.length-1)}return i},strict:function(){return C.strict},history:function(){return C.history},tracker:function(){return C.tracker},title:function(){return ac.title},value:function(){if(!ab){return null}return q(F(r(Q,Z),Z))},path:function(){var i=this.value();return(i.indexOf("?")!=-1)?i.split("?")[0]:i},pathNames:function(){var p=this.path();var i=p.split("/");if(p.substr(0,1)=="/"||p.length==0){i.splice(0,1)}if(p.substr(p.length-1,1)=="/"){i.splice(i.length-1,1)}return i},queryString:function(){var p=this.value();var i=p.indexOf("?");if(i!=-1&&i<p.length){return p.substr(i+1)}},parameter:function(am){var aj=this.value();var ag=aj.indexOf("?");if(ag!=-1){aj=aj.substr(ag+1);var al=aj.split("&");var ak,ah=al.length,ai=[];while(ah--){ak=al[ah].split("=");if(ak[0]==am){ai.push(ak[1])}}if(ai.length!=0){return ai.length!=1?ai:ai[0]}}},parameterNames:function(){var ah=this.value();var p=ah.indexOf("?");var ai=[];if(p!=-1){ah=ah.substr(p+1);if(ah!=""&&ah.indexOf("=")!=-1){var aj=ah.split("&");var ag=0;while(ag<aj.length){ai.push(aj[ag].split("=")[0]);ag++}}}return ai}};var H={strict:function(i){C.strict=i},history:function(i){C.history=i},tracker:function(i){C.tracker=i},title:function(i){i=q(i);n(function(){I=ac.title=i;if(K&&f&&f.contentWindow&&f.contentWindow.document){f.contentWindow.document.title=i;K=Z}if(!M&&aa){U.replace(U.href.indexOf("#")!=-1?U.href:U.href+"#")}M=Z},50)},value:function(ag){ag=ae(q(F(ag,B)));if(ag=="/"){ag=""}if(Q==ag){return}M=B;Q=ag;t=B;T(true);z[Y.length]=Q;if(u){if(C.history){U[x][U.pathname]=z.toString();E=Y.length+1;if(s<418){if(U.search==""){J.action="#"+Q;J.submit()}}else{if(s<523||Q==""){var i=ac.createEvent("MouseEvents");i.initEvent("click",B,B);var p=ac.createElement("a");p.href="#"+Q;p.dispatchEvent(i)}else{U.hash="#"+Q}}}else{U.replace("#"+Q)}}else{if(Q!=P()){if(C.history){U.hash="#"+r(Q,B)}else{U.replace("#"+Q)}}}if((j&&s<8)&&C.history){n(e,50)}if(u){n(function(){t=Z},1)}else{t=Z}}};var x="jQueryAddress",g="function",G="undefined",B=true,Z=false,A=a.browser,s=parseFloat(a.browser.version),aa=A.mozilla,j=A.msie,L=A.opera,u=A.safari,ab=Z,O=h(),ac=O.document,Y=O.history,U=O.location,v=setInterval,n=setTimeout,q=decodeURI,ae=encodeURI,ad=navigator.userAgent,f,J,l,I=ac.title,E=Y.length,t=Z,S=Z,M=B,K=B,z=[],y={},Q=P(),k={},C={history:B,strict:B};if(j){s=parseFloat(ad.substr(ad.indexOf("MSIE")+4));if(ac.documentMode&&ac.documentMode!=s){s=ac.documentMode!=8?7:8}}ab=(aa&&s>=1)||(j&&s>=6)||(L&&s>=9.5)||(u&&s>=312);if(ab){for(var W=1;W<E;W++){z.push("")}z.push(P());if(j&&U.hash!=P()){U.hash="#"+r(P(),B)}if(L){history.navigationMode="compatible"}af(document);var b=l.indexOf("?");if(l&&b>-1){var m,d=l.substr(b+1).split("&");for(var W=0,R;R=d[W];W++){m=R.split("=");if(/^(history|strict)$/.test(m[0])){C[m[0]]=(isNaN(m[1])?/^(true|yes)$/i.test(m[1]):(parseInt(m[1])!=0))}if(/^tracker$/.test(m[0])){C[m[0]]=m[1]}}}a(N)}else{if((!ab&&U.href.indexOf("#")!=-1)||(u&&s<418&&U.href.indexOf("#")!=-1&&U.search!="")){ac.open();ac.write('<html><head><meta http-equiv="refresh" content="0;url='+U.href.substr(0,U.href.indexOf("#"))+'" /></head></html>');ac.close()}else{w()}}a.each(("init,change,internalChange,externalChange").split(","),function(ag,p){k[p]=function(ah,i){a(a.address).bind(p,i||ah,i&&ah);return this}});a.each(("strict,history,tracker,title,value").split(","),function(ag,p){k[p]=function(i){if(typeof i!="undefined"){if(ab){H[p](i)}return a.address}else{return D[p]()}}});a.each(("baseURL,path,pathNames,queryString,parameter,parameterNames").split(","),function(ag,p){k[p]=function(i){return D[p](i)}});return k})();a.fn.address=function(b){a(this).click(function(){var c=b?b.call(this):/address:/.test(a(this).attr("rel"))?a(this).attr("rel").split("address:")[1].split(" ")[0]:a(this).attr("href").replace(/^#/,"");a.address.value(c);return false})}}(jQuery));(function($){$.fn.bgIframe=$.fn.bgiframe=function(s){if($.browser.msie&&/6.0/.test(navigator.userAgent)){s=$.extend({top:"auto",left:"auto",width:"auto",height:"auto",opacity:true,src:"javascript:false;"},s||{});var prop=function(n){return n&&n.constructor==Number?n+"px":n},html='<iframe class="bgiframe"frameborder="0"tabindex="-1"src="'+s.src+'"style="display:block;position:absolute;z-index:-1;'+(s.opacity!==false?"filter:Alpha(Opacity='0');":"")+"top:"+(s.top=="auto"?"expression(((parseInt(this.parentNode.currentStyle.borderTopWidth)||0)*-1)+'px')":prop(s.top))+";left:"+(s.left=="auto"?"expression(((parseInt(this.parentNode.currentStyle.borderLeftWidth)||0)*-1)+'px')":prop(s.left))+";width:"+(s.width=="auto"?"expression(this.parentNode.offsetWidth+'px')":prop(s.width))+";height:"+(s.height=="auto"?"expression(this.parentNode.offsetHeight+'px')":prop(s.height))+';"/>';return this.each(function(){if($("> iframe.bgiframe",this).length==0){this.insertBefore(document.createElement(html),this.firstChild)}})}return this}})(jQuery);(function($){var ver="2.75";if($.support==undefined){$.support={opacity:!($.browser.msie)}}function debug(s){if($.fn.cycle.debug){log(s)}}function log(){if(window.console&&window.console.log){window.console.log("[cycle] "+Array.prototype.join.call(arguments," "))}}$.fn.cycle=function(options,arg2){var o={s:this.selector,c:this.context};if(this.length===0&&options!="stop"){if(!$.isReady&&o.s){log("DOM not ready, queuing slideshow");$(function(){$(o.s,o.c).cycle(options,arg2)});return this}log("terminating; zero elements found by selector"+($.isReady?"":" (DOM not ready)"));return this}return this.each(function(){var opts=handleArguments(this,options,arg2);if(opts===false){return}opts.updateActivePagerLink=opts.updateActivePagerLink||$.fn.cycle.updateActivePagerLink;if(this.cycleTimeout){clearTimeout(this.cycleTimeout)}this.cycleTimeout=this.cyclePause=0;var $cont=$(this);var $slides=opts.slideExpr?$(opts.slideExpr,this):$cont.children();var els=$slides.get();if(els.length<2){log("terminating; too few slides: "+els.length);return}var opts2=buildOptions($cont,$slides,els,opts,o);if(opts2===false){return}var startTime=opts2.continuous?10:getTimeout(opts2.currSlide,opts2.nextSlide,opts2,!opts2.rev);if(startTime){startTime+=(opts2.delay||0);if(startTime<10){startTime=10}debug("first timeout: "+startTime);this.cycleTimeout=setTimeout(function(){go(els,opts2,0,!opts2.rev)},startTime)}})};function handleArguments(cont,options,arg2){if(cont.cycleStop==undefined){cont.cycleStop=0}if(options===undefined||options===null){options={}}if(options.constructor==String){switch(options){case"stop":cont.cycleStop++;if(cont.cycleTimeout){clearTimeout(cont.cycleTimeout)}cont.cycleTimeout=0;$(cont).removeData("cycle.opts");return false;case"toggle":cont.cyclePause=(cont.cyclePause===1)?0:1;return false;case"pause":cont.cyclePause=1;return false;case"resume":cont.cyclePause=0;if(arg2===true){options=$(cont).data("cycle.opts");if(!options){log("options not found, can not resume");return false}if(cont.cycleTimeout){clearTimeout(cont.cycleTimeout);cont.cycleTimeout=0}go(options.elements,options,1,1)}return false;case"prev":case"next":var opts=$(cont).data("cycle.opts");if(!opts){log('options not found, "prev/next" ignored');return false}$.fn.cycle[options](opts);return false;default:options={fx:options}}return options}else{if(options.constructor==Number){var num=options;options=$(cont).data("cycle.opts");if(!options){log("options not found, can not advance slide");return false}if(num<0||num>=options.elements.length){log("invalid slide index: "+num);return false}options.nextSlide=num;if(cont.cycleTimeout){clearTimeout(cont.cycleTimeout);cont.cycleTimeout=0}if(typeof arg2=="string"){options.oneTimeFx=arg2}go(options.elements,options,1,num>=options.currSlide);return false}}return options}function removeFilter(el,opts){if(!$.support.opacity&&opts.cleartype&&el.style.filter){try{el.style.removeAttribute("filter")}catch(smother){}}}function buildOptions($cont,$slides,els,options,o){var opts=$.extend({},$.fn.cycle.defaults,options||{},$.metadata?$cont.metadata():$.meta?$cont.data():{});if(opts.autostop){opts.countdown=opts.autostopCount||els.length}var cont=$cont[0];$cont.data("cycle.opts",opts);opts.$cont=$cont;opts.stopCount=cont.cycleStop;opts.elements=els;opts.before=opts.before?[opts.before]:[];opts.after=opts.after?[opts.after]:[];opts.after.unshift(function(){opts.busy=0});if(!$.support.opacity&&opts.cleartype){opts.after.push(function(){removeFilter(this,opts)})}if(opts.continuous){opts.after.push(function(){go(els,opts,0,!opts.rev)})}saveOriginalOpts(opts);if(!$.support.opacity&&opts.cleartype&&!opts.cleartypeNoBg){clearTypeFix($slides)}if($cont.css("position")=="static"){$cont.css("position","relative")}if(opts.width){$cont.width(opts.width)}if(opts.height&&opts.height!="auto"){$cont.height(opts.height)}if(opts.startingSlide){opts.startingSlide=parseInt(opts.startingSlide)}if(opts.random){opts.randomMap=[];for(var i=0;i<els.length;i++){opts.randomMap.push(i)}opts.randomMap.sort(function(a,b){return Math.random()-0.5});opts.randomIndex=1;opts.startingSlide=opts.randomMap[1]}else{if(opts.startingSlide>=els.length){opts.startingSlide=0}}opts.currSlide=opts.startingSlide||0;var first=opts.startingSlide;$slides.css({position:"absolute",top:0,left:0}).hide().each(function(i){var z=first?i>=first?els.length-(i-first):first-i:els.length-i;$(this).css("z-index",z)});$(els[first]).css("opacity",1).show();removeFilter(els[first],opts);if(opts.fit&&opts.width){$slides.width(opts.width)}if(opts.fit&&opts.height&&opts.height!="auto"){$slides.height(opts.height)}var reshape=opts.containerResize&&!$cont.innerHeight();if(reshape){var maxw=0,maxh=0;for(var j=0;j<els.length;j++){var $e=$(els[j]),e=$e[0],w=$e.outerWidth(),h=$e.outerHeight();if(!w){w=e.offsetWidth}if(!h){h=e.offsetHeight}maxw=w>maxw?w:maxw;maxh=h>maxh?h:maxh}if(maxw>0&&maxh>0){$cont.css({width:maxw+"px",height:maxh+"px"})}}if(opts.pause){$cont.hover(function(){this.cyclePause++},function(){this.cyclePause--})}if(supportMultiTransitions(opts)===false){return false}var requeue=false;options.requeueAttempts=options.requeueAttempts||0;$slides.each(function(){var $el=$(this);this.cycleH=(opts.fit&&opts.height)?opts.height:$el.height();this.cycleW=(opts.fit&&opts.width)?opts.width:$el.width();if($el.is("img")){var loadingIE=($.browser.msie&&this.cycleW==28&&this.cycleH==30&&!this.complete);var loadingFF=($.browser.mozilla&&this.cycleW==34&&this.cycleH==19&&!this.complete);var loadingOp=($.browser.opera&&((this.cycleW==42&&this.cycleH==19)||(this.cycleW==37&&this.cycleH==17))&&!this.complete);var loadingOther=(this.cycleH==0&&this.cycleW==0&&!this.complete);if(loadingIE||loadingFF||loadingOp||loadingOther){if(o.s&&opts.requeueOnImageNotLoaded&&++options.requeueAttempts<100){log(options.requeueAttempts," - img slide not loaded, requeuing slideshow: ",this.src,this.cycleW,this.cycleH);setTimeout(function(){$(o.s,o.c).cycle(options)},opts.requeueTimeout);requeue=true;return false}else{log("could not determine size of image: "+this.src,this.cycleW,this.cycleH)}}}return true});if(requeue){return false}opts.cssBefore=opts.cssBefore||{};opts.animIn=opts.animIn||{};opts.animOut=opts.animOut||{};$slides.not(":eq("+first+")").css(opts.cssBefore);if(opts.cssFirst){$($slides[first]).css(opts.cssFirst)}if(opts.timeout){opts.timeout=parseInt(opts.timeout);if(opts.speed.constructor==String){opts.speed=$.fx.speeds[opts.speed]||parseInt(opts.speed)}if(!opts.sync){opts.speed=opts.speed/2}while((opts.timeout-opts.speed)<250){opts.timeout+=opts.speed}}if(opts.easing){opts.easeIn=opts.easeOut=opts.easing}if(!opts.speedIn){opts.speedIn=opts.speed}if(!opts.speedOut){opts.speedOut=opts.speed}opts.slideCount=els.length;opts.currSlide=opts.lastSlide=first;if(opts.random){if(++opts.randomIndex==els.length){opts.randomIndex=0}opts.nextSlide=opts.randomMap[opts.randomIndex]}else{opts.nextSlide=opts.startingSlide>=(els.length-1)?0:opts.startingSlide+1}if(!opts.multiFx){var init=$.fn.cycle.transitions[opts.fx];if($.isFunction(init)){init($cont,$slides,opts)}else{if(opts.fx!="custom"&&!opts.multiFx){log("unknown transition: "+opts.fx,"; slideshow terminating");return false}}}var e0=$slides[first];if(opts.before.length){opts.before[0].apply(e0,[e0,e0,opts,true])}if(opts.after.length>1){opts.after[1].apply(e0,[e0,e0,opts,true])}if(opts.next){$(opts.next).bind(opts.prevNextEvent,function(){return advance(opts,opts.rev?-1:1)})}if(opts.prev){$(opts.prev).bind(opts.prevNextEvent,function(){return advance(opts,opts.rev?1:-1)})}if(opts.pager){buildPager(els,opts)}exposeAddSlide(opts,els);return opts}function saveOriginalOpts(opts){opts.original={before:[],after:[]};opts.original.cssBefore=$.extend({},opts.cssBefore);opts.original.cssAfter=$.extend({},opts.cssAfter);opts.original.animIn=$.extend({},opts.animIn);opts.original.animOut=$.extend({},opts.animOut);$.each(opts.before,function(){opts.original.before.push(this)});$.each(opts.after,function(){opts.original.after.push(this)})}function supportMultiTransitions(opts){var i,tx,txs=$.fn.cycle.transitions;if(opts.fx.indexOf(",")>0){opts.multiFx=true;opts.fxs=opts.fx.replace(/\s*/g,"").split(",");for(i=0;i<opts.fxs.length;i++){var fx=opts.fxs[i];tx=txs[fx];if(!tx||!txs.hasOwnProperty(fx)||!$.isFunction(tx)){log("discarding unknown transition: ",fx);opts.fxs.splice(i,1);i--}}if(!opts.fxs.length){log("No valid transitions named; slideshow terminating.");return false}}else{if(opts.fx=="all"){opts.multiFx=true;opts.fxs=[];for(p in txs){tx=txs[p];if(txs.hasOwnProperty(p)&&$.isFunction(tx)){opts.fxs.push(p)}}}}if(opts.multiFx&&opts.randomizeEffects){var r1=Math.floor(Math.random()*20)+30;for(i=0;i<r1;i++){var r2=Math.floor(Math.random()*opts.fxs.length);opts.fxs.push(opts.fxs.splice(r2,1)[0])}debug("randomized fx sequence: ",opts.fxs)}return true}function exposeAddSlide(opts,els){opts.addSlide=function(newSlide,prepend){var $s=$(newSlide),s=$s[0];if(!opts.autostopCount){opts.countdown++}els[prepend?"unshift":"push"](s);if(opts.els){opts.els[prepend?"unshift":"push"](s)}opts.slideCount=els.length;$s.css("position","absolute");$s[prepend?"prependTo":"appendTo"](opts.$cont);if(prepend){opts.currSlide++;opts.nextSlide++}if(!$.support.opacity&&opts.cleartype&&!opts.cleartypeNoBg){clearTypeFix($s)}if(opts.fit&&opts.width){$s.width(opts.width)}if(opts.fit&&opts.height&&opts.height!="auto"){$slides.height(opts.height)}s.cycleH=(opts.fit&&opts.height)?opts.height:$s.height();s.cycleW=(opts.fit&&opts.width)?opts.width:$s.width();$s.css(opts.cssBefore);if(opts.pager){$.fn.cycle.createPagerAnchor(els.length-1,s,$(opts.pager),els,opts)}if($.isFunction(opts.onAddSlide)){opts.onAddSlide($s)}else{$s.hide()}}}$.fn.cycle.resetState=function(opts,fx){fx=fx||opts.fx;opts.before=[];opts.after=[];opts.cssBefore=$.extend({},opts.original.cssBefore);opts.cssAfter=$.extend({},opts.original.cssAfter);opts.animIn=$.extend({},opts.original.animIn);opts.animOut=$.extend({},opts.original.animOut);opts.fxFn=null;$.each(opts.original.before,function(){opts.before.push(this)});$.each(opts.original.after,function(){opts.after.push(this)});var init=$.fn.cycle.transitions[fx];if($.isFunction(init)){init(opts.$cont,$(opts.elements),opts)}};function go(els,opts,manual,fwd){if(manual&&opts.busy&&opts.manualTrump){$(els).stop(true,true);opts.busy=false}if(opts.busy){return}var p=opts.$cont[0],curr=els[opts.currSlide],next=els[opts.nextSlide];if(p.cycleStop!=opts.stopCount||p.cycleTimeout===0&&!manual){return}if(!manual&&!p.cyclePause&&((opts.autostop&&(--opts.countdown<=0))||(opts.nowrap&&!opts.random&&opts.nextSlide<opts.currSlide))){if(opts.end){opts.end(opts)}return}if(manual||!p.cyclePause){var fx=opts.fx;curr.cycleH=curr.cycleH||$(curr).height();curr.cycleW=curr.cycleW||$(curr).width();next.cycleH=next.cycleH||$(next).height();next.cycleW=next.cycleW||$(next).width();if(opts.multiFx){if(opts.lastFx==undefined||++opts.lastFx>=opts.fxs.length){opts.lastFx=0}fx=opts.fxs[opts.lastFx];opts.currFx=fx}if(opts.oneTimeFx){fx=opts.oneTimeFx;opts.oneTimeFx=null}$.fn.cycle.resetState(opts,fx);if(opts.before.length){$.each(opts.before,function(i,o){if(p.cycleStop!=opts.stopCount){return}o.apply(next,[curr,next,opts,fwd])})}var after=function(){$.each(opts.after,function(i,o){if(p.cycleStop!=opts.stopCount){return}o.apply(next,[curr,next,opts,fwd])})};if(opts.nextSlide!=opts.currSlide){opts.busy=1;if(opts.fxFn){opts.fxFn(curr,next,opts,after,fwd)}else{if($.isFunction($.fn.cycle[opts.fx])){$.fn.cycle[opts.fx](curr,next,opts,after)}else{$.fn.cycle.custom(curr,next,opts,after,manual&&opts.fastOnEvent)}}}opts.lastSlide=opts.currSlide;if(opts.random){opts.currSlide=opts.nextSlide;if(++opts.randomIndex==els.length){opts.randomIndex=0}opts.nextSlide=opts.randomMap[opts.randomIndex]}else{var roll=(opts.nextSlide+1)==els.length;opts.nextSlide=roll?0:opts.nextSlide+1;opts.currSlide=roll?els.length-1:opts.nextSlide-1}if(opts.pager){opts.updateActivePagerLink(opts.pager,opts.currSlide,opts.activePagerClass)}}var ms=0;if(opts.timeout&&!opts.continuous){ms=getTimeout(curr,next,opts,fwd)}else{if(opts.continuous&&p.cyclePause){ms=10}}if(ms>0){p.cycleTimeout=setTimeout(function(){go(els,opts,0,!opts.rev)},ms)}}$.fn.cycle.updateActivePagerLink=function(pager,currSlide,clsName){$(pager).each(function(){$(this).find("a").removeClass(clsName).filter("a:eq("+currSlide+")").addClass(clsName)})};function getTimeout(curr,next,opts,fwd){if(opts.timeoutFn){var t=opts.timeoutFn(curr,next,opts,fwd);while((t-opts.speed)<250){t+=opts.speed}debug("calculated timeout: "+t+"; speed: "+opts.speed);if(t!==false){return t}}return opts.timeout}$.fn.cycle.next=function(opts){advance(opts,opts.rev?-1:1)};$.fn.cycle.prev=function(opts){advance(opts,opts.rev?1:-1)};function advance(opts,val){var els=opts.elements;var p=opts.$cont[0],timeout=p.cycleTimeout;if(timeout){clearTimeout(timeout);p.cycleTimeout=0}if(opts.random&&val<0){opts.randomIndex--;if(--opts.randomIndex==-2){opts.randomIndex=els.length-2}else{if(opts.randomIndex==-1){opts.randomIndex=els.length-1}}opts.nextSlide=opts.randomMap[opts.randomIndex]}else{if(opts.random){opts.nextSlide=opts.randomMap[opts.randomIndex]}else{opts.nextSlide=opts.currSlide+val;if(opts.nextSlide<0){if(opts.nowrap){return false}opts.nextSlide=els.length-1}else{if(opts.nextSlide>=els.length){if(opts.nowrap){return false}opts.nextSlide=0}}}}if($.isFunction(opts.prevNextClick)){opts.prevNextClick(val>0,opts.nextSlide,els[opts.nextSlide])}go(els,opts,1,val>=0);return false}function buildPager(els,opts){var $p=$(opts.pager);$.each(els,function(i,o){$.fn.cycle.createPagerAnchor(i,o,$p,els,opts)});opts.updateActivePagerLink(opts.pager,opts.startingSlide,opts.activePagerClass)}$.fn.cycle.createPagerAnchor=function(i,el,$p,els,opts){var a;if($.isFunction(opts.pagerAnchorBuilder)){a=opts.pagerAnchorBuilder(i,el)}else{a='<a href="#">'+(i+1)+"</a>"}if(!a){return}var $a=$(a);if($a.parents("body").length===0){var arr=[];if($p.length>1){$p.each(function(){var $clone=$a.clone(true);$(this).append($clone);arr.push($clone[0])});$a=$(arr)}else{$a.appendTo($p)}}$a.bind(opts.pagerEvent,function(e){e.preventDefault();opts.nextSlide=i;var p=opts.$cont[0],timeout=p.cycleTimeout;if(timeout){clearTimeout(timeout);p.cycleTimeout=0}if($.isFunction(opts.pagerClick)){opts.pagerClick(opts.nextSlide,els[opts.nextSlide])}go(els,opts,1,opts.currSlide<i);return false});if(opts.pagerEvent!="click"){$a.click(function(){return false})}if(opts.pauseOnPagerHover){$a.hover(function(){opts.$cont[0].cyclePause++},function(){opts.$cont[0].cyclePause--})}};$.fn.cycle.hopsFromLast=function(opts,fwd){var hops,l=opts.lastSlide,c=opts.currSlide;if(fwd){hops=c>l?c-l:opts.slideCount-l}else{hops=c<l?l-c:l+opts.slideCount-c}return hops};function clearTypeFix($slides){function hex(s){s=parseInt(s).toString(16);return s.length<2?"0"+s:s}function getBg(e){for(;e&&e.nodeName.toLowerCase()!="html";e=e.parentNode){var v=$.css(e,"background-color");if(v.indexOf("rgb")>=0){var rgb=v.match(/\d+/g);return"#"+hex(rgb[0])+hex(rgb[1])+hex(rgb[2])}if(v&&v!="transparent"){return v}}return"#ffffff"}$slides.each(function(){$(this).css("background-color",getBg(this))})}$.fn.cycle.commonReset=function(curr,next,opts,w,h,rev){$(opts.elements).not(curr).hide();opts.cssBefore.opacity=1;opts.cssBefore.display="block";if(w!==false&&next.cycleW>0){opts.cssBefore.width=next.cycleW}if(h!==false&&next.cycleH>0){opts.cssBefore.height=next.cycleH}opts.cssAfter=opts.cssAfter||{};opts.cssAfter.display="none";$(curr).css("zIndex",opts.slideCount+(rev===true?1:0));$(next).css("zIndex",opts.slideCount+(rev===true?0:1))};$.fn.cycle.custom=function(curr,next,opts,cb,speedOverride){var $l=$(curr),$n=$(next);var speedIn=opts.speedIn,speedOut=opts.speedOut,easeIn=opts.easeIn,easeOut=opts.easeOut;$n.css(opts.cssBefore);if(speedOverride){if(typeof speedOverride=="number"){speedIn=speedOut=speedOverride}else{speedIn=speedOut=1}easeIn=easeOut=null}var fn=function(){$n.animate(opts.animIn,speedIn,easeIn,cb)};$l.animate(opts.animOut,speedOut,easeOut,function(){if(opts.cssAfter){$l.css(opts.cssAfter)}if(!opts.sync){fn()}});if(opts.sync){fn()}};$.fn.cycle.transitions={fade:function($cont,$slides,opts){$slides.not(":eq("+opts.currSlide+")").css("opacity",0);opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts);opts.cssBefore.opacity=0});opts.animIn={opacity:1};opts.animOut={opacity:0};opts.cssBefore={top:0,left:0}}};$.fn.cycle.ver=function(){return ver};$.fn.cycle.defaults={fx:"fade",timeout:4000,timeoutFn:null,continuous:0,speed:1000,speedIn:null,speedOut:null,next:null,prev:null,prevNextClick:null,prevNextEvent:"click",pager:null,pagerClick:null,pagerEvent:"click",pagerAnchorBuilder:null,before:null,after:null,end:null,easing:null,easeIn:null,easeOut:null,shuffle:null,animIn:null,animOut:null,cssBefore:null,cssAfter:null,fxFn:null,height:"auto",startingSlide:0,sync:1,random:0,fit:0,containerResize:1,pause:0,pauseOnPagerHover:0,autostop:0,autostopCount:0,delay:0,slideExpr:null,cleartype:!$.support.opacity,cleartypeNoBg:false,nowrap:0,fastOnEvent:0,randomizeEffects:1,rev:0,manualTrump:true,requeueOnImageNotLoaded:true,requeueTimeout:250,activePagerClass:"activeSlide",updateActivePagerLink:null}})(jQuery);(function($){$.fn.cycle.transitions.none=function($cont,$slides,opts){opts.fxFn=function(curr,next,opts,after){$(next).show();$(curr).hide();after()}};$.fn.cycle.transitions.scrollUp=function($cont,$slides,opts){$cont.css("overflow","hidden");opts.before.push($.fn.cycle.commonReset);var h=$cont.height();opts.cssBefore={top:h,left:0};opts.cssFirst={top:0};opts.animIn={top:0};opts.animOut={top:-h}};$.fn.cycle.transitions.scrollDown=function($cont,$slides,opts){$cont.css("overflow","hidden");opts.before.push($.fn.cycle.commonReset);var h=$cont.height();opts.cssFirst={top:0};opts.cssBefore={top:-h,left:0};opts.animIn={top:0};opts.animOut={top:h}};$.fn.cycle.transitions.scrollLeft=function($cont,$slides,opts){$cont.css("overflow","hidden");opts.before.push($.fn.cycle.commonReset);var w=$cont.width();opts.cssFirst={left:0};opts.cssBefore={left:w,top:0};opts.animIn={left:0};opts.animOut={left:0-w}};$.fn.cycle.transitions.scrollRight=function($cont,$slides,opts){$cont.css("overflow","hidden");opts.before.push($.fn.cycle.commonReset);var w=$cont.width();opts.cssFirst={left:0};opts.cssBefore={left:-w,top:0};opts.animIn={left:0};opts.animOut={left:w}};$.fn.cycle.transitions.scrollHorz=function($cont,$slides,opts){$cont.css("overflow","hidden").width();opts.before.push(function(curr,next,opts,fwd){$.fn.cycle.commonReset(curr,next,opts);opts.cssBefore.left=fwd?(next.cycleW-1):(1-next.cycleW);opts.animOut.left=fwd?-curr.cycleW:curr.cycleW});opts.cssFirst={left:0};opts.cssBefore={top:0};opts.animIn={left:0};opts.animOut={top:0}};$.fn.cycle.transitions.scrollVert=function($cont,$slides,opts){$cont.css("overflow","hidden");opts.before.push(function(curr,next,opts,fwd){$.fn.cycle.commonReset(curr,next,opts);opts.cssBefore.top=fwd?(1-next.cycleH):(next.cycleH-1);opts.animOut.top=fwd?curr.cycleH:-curr.cycleH});opts.cssFirst={top:0};opts.cssBefore={left:0};opts.animIn={top:0};opts.animOut={left:0}};$.fn.cycle.transitions.slideX=function($cont,$slides,opts){opts.before.push(function(curr,next,opts){$(opts.elements).not(curr).hide();$.fn.cycle.commonReset(curr,next,opts,false,true);opts.animIn.width=next.cycleW});opts.cssBefore={left:0,top:0,width:0};opts.animIn={width:"show"};opts.animOut={width:0}};$.fn.cycle.transitions.slideY=function($cont,$slides,opts){opts.before.push(function(curr,next,opts){$(opts.elements).not(curr).hide();$.fn.cycle.commonReset(curr,next,opts,true,false);opts.animIn.height=next.cycleH});opts.cssBefore={left:0,top:0,height:0};opts.animIn={height:"show"};opts.animOut={height:0}};$.fn.cycle.transitions.shuffle=function($cont,$slides,opts){var i,w=$cont.css("overflow","visible").width();$slides.css({left:0,top:0});opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts,true,true,true)});if(!opts.speedAdjusted){opts.speed=opts.speed/2;opts.speedAdjusted=true}opts.random=0;opts.shuffle=opts.shuffle||{left:-w,top:15};opts.els=[];for(i=0;i<$slides.length;i++){opts.els.push($slides[i])}for(i=0;i<opts.currSlide;i++){opts.els.push(opts.els.shift())}opts.fxFn=function(curr,next,opts,cb,fwd){var $el=fwd?$(curr):$(next);$(next).css(opts.cssBefore);var count=opts.slideCount;$el.animate(opts.shuffle,opts.speedIn,opts.easeIn,function(){var hops=$.fn.cycle.hopsFromLast(opts,fwd);for(var k=0;k<hops;k++){fwd?opts.els.push(opts.els.shift()):opts.els.unshift(opts.els.pop())}if(fwd){for(var i=0,len=opts.els.length;i<len;i++){$(opts.els[i]).css("z-index",len-i+count)}}else{var z=$(curr).css("z-index");$el.css("z-index",parseInt(z)+1+count)}$el.animate({left:0,top:0},opts.speedOut,opts.easeOut,function(){$(fwd?this:curr).hide();if(cb){cb()}})})};opts.cssBefore={display:"block",opacity:1,top:0,left:0}};$.fn.cycle.transitions.turnUp=function($cont,$slides,opts){opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts,true,false);opts.cssBefore.top=next.cycleH;opts.animIn.height=next.cycleH});opts.cssFirst={top:0};opts.cssBefore={left:0,height:0};opts.animIn={top:0};opts.animOut={height:0}};$.fn.cycle.transitions.turnDown=function($cont,$slides,opts){opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts,true,false);opts.animIn.height=next.cycleH;opts.animOut.top=curr.cycleH});opts.cssFirst={top:0};opts.cssBefore={left:0,top:0,height:0};opts.animOut={height:0}};$.fn.cycle.transitions.turnLeft=function($cont,$slides,opts){opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts,false,true);opts.cssBefore.left=next.cycleW;opts.animIn.width=next.cycleW});opts.cssBefore={top:0,width:0};opts.animIn={left:0};opts.animOut={width:0}};$.fn.cycle.transitions.turnRight=function($cont,$slides,opts){opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts,false,true);opts.animIn.width=next.cycleW;opts.animOut.left=curr.cycleW});opts.cssBefore={top:0,left:0,width:0};opts.animIn={left:0};opts.animOut={width:0}};$.fn.cycle.transitions.zoom=function($cont,$slides,opts){opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts,false,false,true);opts.cssBefore.top=next.cycleH/2;opts.cssBefore.left=next.cycleW/2;opts.animIn={top:0,left:0,width:next.cycleW,height:next.cycleH};opts.animOut={width:0,height:0,top:curr.cycleH/2,left:curr.cycleW/2}});opts.cssFirst={top:0,left:0};opts.cssBefore={width:0,height:0}};$.fn.cycle.transitions.fadeZoom=function($cont,$slides,opts){opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts,false,false);opts.cssBefore.left=next.cycleW/2;opts.cssBefore.top=next.cycleH/2;opts.animIn={top:0,left:0,width:next.cycleW,height:next.cycleH}});opts.cssBefore={width:0,height:0};opts.animOut={opacity:0}};$.fn.cycle.transitions.blindX=function($cont,$slides,opts){var w=$cont.css("overflow","hidden").width();opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts);opts.animIn.width=next.cycleW;opts.animOut.left=curr.cycleW});opts.cssBefore={left:w,top:0};opts.animIn={left:0};opts.animOut={left:w}};$.fn.cycle.transitions.blindY=function($cont,$slides,opts){var h=$cont.css("overflow","hidden").height();opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts);opts.animIn.height=next.cycleH;opts.animOut.top=curr.cycleH});opts.cssBefore={top:h,left:0};opts.animIn={top:0};opts.animOut={top:h}};$.fn.cycle.transitions.blindZ=function($cont,$slides,opts){var h=$cont.css("overflow","hidden").height();var w=$cont.width();opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts);opts.animIn.height=next.cycleH;opts.animOut.top=curr.cycleH});opts.cssBefore={top:h,left:w};opts.animIn={top:0,left:0};opts.animOut={top:h,left:w}};$.fn.cycle.transitions.growX=function($cont,$slides,opts){opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts,false,true);opts.cssBefore.left=this.cycleW/2;opts.animIn={left:0,width:this.cycleW};opts.animOut={left:0}});opts.cssBefore={width:0,top:0}};$.fn.cycle.transitions.growY=function($cont,$slides,opts){opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts,true,false);opts.cssBefore.top=this.cycleH/2;opts.animIn={top:0,height:this.cycleH};opts.animOut={top:0}});opts.cssBefore={height:0,left:0}};$.fn.cycle.transitions.curtainX=function($cont,$slides,opts){opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts,false,true,true);opts.cssBefore.left=next.cycleW/2;opts.animIn={left:0,width:this.cycleW};opts.animOut={left:curr.cycleW/2,width:0}});opts.cssBefore={top:0,width:0}};$.fn.cycle.transitions.curtainY=function($cont,$slides,opts){opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts,true,false,true);opts.cssBefore.top=next.cycleH/2;opts.animIn={top:0,height:next.cycleH};opts.animOut={top:curr.cycleH/2,height:0}});opts.cssBefore={left:0,height:0}};$.fn.cycle.transitions.cover=function($cont,$slides,opts){var d=opts.direction||"left";var w=$cont.css("overflow","hidden").width();var h=$cont.height();opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts);if(d=="right"){opts.cssBefore.left=-w}else{if(d=="up"){opts.cssBefore.top=h}else{if(d=="down"){opts.cssBefore.top=-h}else{opts.cssBefore.left=w}}}});opts.animIn={left:0,top:0};opts.animOut={opacity:1};opts.cssBefore={top:0,left:0}};$.fn.cycle.transitions.uncover=function($cont,$slides,opts){var d=opts.direction||"left";var w=$cont.css("overflow","hidden").width();var h=$cont.height();opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts,true,true,true);if(d=="right"){opts.animOut.left=w}else{if(d=="up"){opts.animOut.top=-h}else{if(d=="down"){opts.animOut.top=h}else{opts.animOut.left=-w}}}});opts.animIn={left:0,top:0};opts.animOut={opacity:1};opts.cssBefore={top:0,left:0}};$.fn.cycle.transitions.toss=function($cont,$slides,opts){var w=$cont.css("overflow","visible").width();var h=$cont.height();opts.before.push(function(curr,next,opts){$.fn.cycle.commonReset(curr,next,opts,true,true,true);if(!opts.animOut.left&&!opts.animOut.top){opts.animOut={left:w*2,top:-h/2,opacity:0}}else{opts.animOut.opacity=0}});opts.cssBefore={left:0,top:0};opts.animIn={left:0}};$.fn.cycle.transitions.wipe=function($cont,$slides,opts){var w=$cont.css("overflow","hidden").width();var h=$cont.height();opts.cssBefore=opts.cssBefore||{};var clip;if(opts.clip){if(/l2r/.test(opts.clip)){clip="rect(0px 0px "+h+"px 0px)"}else{if(/r2l/.test(opts.clip)){clip="rect(0px "+w+"px "+h+"px "+w+"px)"}else{if(/t2b/.test(opts.clip)){clip="rect(0px "+w+"px 0px 0px)"}else{if(/b2t/.test(opts.clip)){clip="rect("+h+"px "+w+"px "+h+"px 0px)"}else{if(/zoom/.test(opts.clip)){var top=parseInt(h/2);var left=parseInt(w/2);clip="rect("+top+"px "+left+"px "+top+"px "+left+"px)"}}}}}}opts.cssBefore.clip=opts.cssBefore.clip||clip||"rect(0px 0px 0px 0px)";var d=opts.cssBefore.clip.match(/(\d+)/g);var t=parseInt(d[0]),r=parseInt(d[1]),b=parseInt(d[2]),l=parseInt(d[3]);opts.before.push(function(curr,next,opts){if(curr==next){return}var $curr=$(curr),$next=$(next);$.fn.cycle.commonReset(curr,next,opts,true,true,false);opts.cssAfter.display="block";var step=1,count=parseInt((opts.speedIn/13))-1;(function f(){var tt=t?t-parseInt(step*(t/count)):0;var ll=l?l-parseInt(step*(l/count)):0;var bb=b<h?b+parseInt(step*((h-b)/count||1)):h;var rr=r<w?r+parseInt(step*((w-r)/count||1)):w;$next.css({clip:"rect("+tt+"px "+rr+"px "+bb+"px "+ll+"px)"});(step++<=count)?setTimeout(f,13):$curr.css("display","none")})()});opts.cssBefore={display:"block",opacity:1,top:0,left:0};opts.animIn={left:0};opts.animOut={left:0}}})(jQuery);(function(){var special=jQuery.event.special,uid1="D"+(+new Date()),uid2="D"+(+new Date()+1);special.scrollstart={setup:function(){var timer,handler=function(evt){var _self=this,_args=arguments;if(timer){clearTimeout(timer)}else{evt.type="scrollstart";jQuery.event.handle.apply(_self,_args)}timer=setTimeout(function(){timer=null},special.scrollstop.latency)};jQuery(this).bind("scroll",handler).data(uid1,handler)},teardown:function(){jQuery(this).unbind("scroll",jQuery(this).data(uid1))}};special.scrollstop={latency:300,setup:function(){var timer,handler=function(evt){var _self=this,_args=arguments;if(timer){clearTimeout(timer)}timer=setTimeout(function(){timer=null;evt.type="scrollstop";jQuery.event.handle.apply(_self,_args)},special.scrollstop.latency)};jQuery(this).bind("scroll",handler).data(uid2,handler)},teardown:function(){jQuery(this).unbind("scroll",jQuery(this).data(uid2))}}})();(function(d){var k=d.scrollTo=function(a,i,e){d(window).scrollTo(a,i,e)};k.defaults={axis:"xy",duration:parseFloat(d.fn.jquery)>=1.3?0:1};k.window=function(a){return d(window)._scrollable()};d.fn._scrollable=function(){return this.map(function(){var a=this,i=!a.nodeName||d.inArray(a.nodeName.toLowerCase(),["iframe","#document","html","body"])!=-1;if(!i){return a}var e=(a.contentWindow||a).document||a.ownerDocument||a;return d.browser.safari||e.compatMode=="BackCompat"?e.body:e.documentElement})};d.fn.scrollTo=function(n,j,b){if(typeof j=="object"){b=j;j=0}if(typeof b=="function"){b={onAfter:b}}if(n=="max"){n=9000000000}b=d.extend({},k.defaults,b);j=j||b.speed||b.duration;b.queue=b.queue&&b.axis.length>1;if(b.queue){j/=2}b.offset=p(b.offset);b.over=p(b.over);return this._scrollable().each(function(){var q=this,r=d(q),f=n,s,g={},u=r.is("html,body");switch(typeof f){case"number":case"string":if(/^([+-]=)?\d+(\.\d+)?(px|%)?$/.test(f)){f=p(f);break}f=d(f,this);case"object":if(f.is||f.style){s=(f=d(f)).offset()}}d.each(b.axis.split(""),function(a,i){var e=i=="x"?"Left":"Top",h=e.toLowerCase(),c="scroll"+e,l=q[c],m=k.max(q,i);if(s){g[c]=s[h]+(u?0:l-r.offset()[h]);if(b.margin){g[c]-=parseInt(f.css("margin"+e))||0;g[c]-=parseInt(f.css("border"+e+"Width"))||0}g[c]+=b.offset[h]||0;if(b.over[h]){g[c]+=f[i=="x"?"width":"height"]()*b.over[h]}}else{var o=f[h];g[c]=o.slice&&o.slice(-1)=="%"?parseFloat(o)/100*m:o}if(/^\d+$/.test(g[c])){g[c]=g[c]<=0?0:Math.min(g[c],m)}if(!a&&b.queue){if(l!=g[c]){t(b.onAfterFirst)}delete g[c]}});t(b.onAfter);function t(a){r.animate(g,j,b.easing,a&&function(){a.call(this,n,b)})}}).end()};k.max=function(a,i){var e=i=="x"?"Width":"Height",h="scroll"+e;if(!d(a).is("html,body")){return a[h]-d(a)[e.toLowerCase()]()}var c="client"+e,l=a.ownerDocument.documentElement,m=a.ownerDocument.body;return Math.max(l[h],m[h])-Math.min(l[c],m[c])};function p(a){return typeof a=="object"?a:{top:a,left:a}}})(jQuery);jQuery.easing.jswing=jQuery.easing.swing;jQuery.extend(jQuery.easing,{def:"easeOutQuad",swing:function(x,t,b,c,d){return jQuery.easing[jQuery.easing.def](x,t,b,c,d)},easeInQuad:function(x,t,b,c,d){return c*(t/=d)*t+b},easeOutQuad:function(x,t,b,c,d){return -c*(t/=d)*(t-2)+b},easeInOutQuad:function(x,t,b,c,d){if((t/=d/2)<1){return c/2*t*t+b}return -c/2*((--t)*(t-2)-1)+b},easeInCubic:function(x,t,b,c,d){return c*(t/=d)*t*t+b},easeOutCubic:function(x,t,b,c,d){return c*((t=t/d-1)*t*t+1)+b},easeInOutCubic:function(x,t,b,c,d){if((t/=d/2)<1){return c/2*t*t*t+b}return c/2*((t-=2)*t*t+2)+b},easeInQuart:function(x,t,b,c,d){return c*(t/=d)*t*t*t+b},easeOutQuart:function(x,t,b,c,d){return -c*((t=t/d-1)*t*t*t-1)+b},easeInOutQuart:function(x,t,b,c,d){if((t/=d/2)<1){return c/2*t*t*t*t+b}return -c/2*((t-=2)*t*t*t-2)+b},easeInQuint:function(x,t,b,c,d){return c*(t/=d)*t*t*t*t+b},easeOutQuint:function(x,t,b,c,d){return c*((t=t/d-1)*t*t*t*t+1)+b},easeInOutQuint:function(x,t,b,c,d){if((t/=d/2)<1){return c/2*t*t*t*t*t+b}return c/2*((t-=2)*t*t*t*t+2)+b},easeInSine:function(x,t,b,c,d){return -c*Math.cos(t/d*(Math.PI/2))+c+b},easeOutSine:function(x,t,b,c,d){return c*Math.sin(t/d*(Math.PI/2))+b},easeInOutSine:function(x,t,b,c,d){return -c/2*(Math.cos(Math.PI*t/d)-1)+b},easeInExpo:function(x,t,b,c,d){return(t==0)?b:c*Math.pow(2,10*(t/d-1))+b},easeOutExpo:function(x,t,b,c,d){return(t==d)?b+c:c*(-Math.pow(2,-10*t/d)+1)+b},easeInOutExpo:function(x,t,b,c,d){if(t==0){return b}if(t==d){return b+c}if((t/=d/2)<1){return c/2*Math.pow(2,10*(t-1))+b}return c/2*(-Math.pow(2,-10*--t)+2)+b},easeInCirc:function(x,t,b,c,d){return -c*(Math.sqrt(1-(t/=d)*t)-1)+b},easeOutCirc:function(x,t,b,c,d){return c*Math.sqrt(1-(t=t/d-1)*t)+b},easeInOutCirc:function(x,t,b,c,d){if((t/=d/2)<1){return -c/2*(Math.sqrt(1-t*t)-1)+b}return c/2*(Math.sqrt(1-(t-=2)*t)+1)+b},easeInElastic:function(x,t,b,c,d){var s=1.70158;var p=0;var a=c;if(t==0){return b}if((t/=d)==1){return b+c}if(!p){p=d*0.3}if(a<Math.abs(c)){a=c;var s=p/4}else{var s=p/(2*Math.PI)*Math.asin(c/a)}return -(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b},easeOutElastic:function(x,t,b,c,d){var s=1.70158;var p=0;var a=c;if(t==0){return b}if((t/=d)==1){return b+c}if(!p){p=d*0.3}if(a<Math.abs(c)){a=c;var s=p/4}else{var s=p/(2*Math.PI)*Math.asin(c/a)}return a*Math.pow(2,-10*t)*Math.sin((t*d-s)*(2*Math.PI)/p)+c+b},easeInOutElastic:function(x,t,b,c,d){var s=1.70158;var p=0;var a=c;if(t==0){return b}if((t/=d/2)==2){return b+c}if(!p){p=d*(0.3*1.5)}if(a<Math.abs(c)){a=c;var s=p/4}else{var s=p/(2*Math.PI)*Math.asin(c/a)}if(t<1){return -0.5*(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b}return a*Math.pow(2,-10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p)*0.5+c+b},easeInBack:function(x,t,b,c,d,s){if(s==undefined){s=1.70158}return c*(t/=d)*t*((s+1)*t-s)+b},easeOutBack:function(x,t,b,c,d,s){if(s==undefined){s=1.70158}return c*((t=t/d-1)*t*((s+1)*t+s)+1)+b},easeInOutBack:function(x,t,b,c,d,s){if(s==undefined){s=1.70158}if((t/=d/2)<1){return c/2*(t*t*(((s*=(1.525))+1)*t-s))+b}return c/2*((t-=2)*t*(((s*=(1.525))+1)*t+s)+2)+b},easeInBounce:function(x,t,b,c,d){return c-jQuery.easing.easeOutBounce(x,d-t,0,c,d)+b},easeOutBounce:function(x,t,b,c,d){if((t/=d)<(1/2.75)){return c*(7.5625*t*t)+b}else{if(t<(2/2.75)){return c*(7.5625*(t-=(1.5/2.75))*t+0.75)+b}else{if(t<(2.5/2.75)){return c*(7.5625*(t-=(2.25/2.75))*t+0.9375)+b}else{return c*(7.5625*(t-=(2.625/2.75))*t+0.984375)+b}}}},easeInOutBounce:function(x,t,b,c,d){if(t<d/2){return jQuery.easing.easeInBounce(x,t*2,0,c,d)*0.5+b}return jQuery.easing.easeOutBounce(x,t*2-d,0,c,d)*0.5+c*0.5+b}});var mn={func:{curry:function(func,scope){return(function(i,savedArgs){var temp=arguments.callee,inner=function(){for(var args=savedArgs.concat(),n=args.length,i=0,l=arguments.length;i<l;i++){args[i+n]=arguments[i]}return temp(savedArgs.length-1,args)};return savedArgs.length>=func.length?func.apply(scope,savedArgs):inner}(0,[]))}},obj:{setProps:function(target,props){for(var prop in props){target[prop]=props[prop]}return target}},list:{filter:function(list,func,invert){invert=invert===true;for(var n=0,result=[],i=0,l=list.length;i<l;i++){if(func(list[i])!==invert){result[n++]=list[i]}}return result},indexOf:(function(){if(Array.prototype.indexOf){return function(list,item){return list.indexOf(item)}}return function(list,item){for(var i=0,l=list.length;i<l;i++){if(list[i]==item){return i}}return -1}})()},util:{Random:(function(){function Random(nextFloat){this.nextFloat=nextFloat||Math.random}Random.prototype={nextIntBetween:function(min,max){return Math.round(min+(max-min)*this.nextFloat())},nextFloatBetween:function(min,max){return min+(max-min)*this.nextFloat()},shuffle:function(list){var k,n=(list=list.slice()).length,temp;while(--n){if((k=Math.floor(this.nextFloat()*(n+1)))!=n){temp=list[n];list[n]=list[k];list[k]=temp}}return list},select:function(list){return list[Math.floor(this.nextFloat()*list.length)]}};return Random}()),Deferred:function(){var self=this;var callbacks=[],errbacks=[],cancelHandlers=[];var value=null;function runChain(){if(!(value===null||value instanceof mn.util.Deferred)){while(callbacks.length||errbacks.length){var callback=callbacks.shift();var errback=errbacks.shift();if(value instanceof Error){callback=errback}if(callback){try{value=callback(value)||value;if(value==self){value=new Error("Recursion error: Deferred object has been passed to itself.")}if(value instanceof mn.util.Deferred){value.resumeParent=function(newValue){value=newValue;runChain()};return}}catch(e){value=e}}}if(self.resumeParent){self.resumeParent(value);self.resumeParent=null}}}this.toString=function(){return"[object Deferred("+value+")]"};var addCallbacks=this.addCallbacks=function(callback,errback){var index=Math.max(callbacks.length,errbacks.length);callbacks[index]=callback;errbacks[index]=errback;if(index==0&&value!==null){runChain()}return self};this.addCallback=function(callback){return addCallbacks(callback,null)};this.addErrback=function(errback){return addCallbacks(null,errback)};this.addCancelHandler=function(handler){cancelHandlers.push(handler);return self};this.callback=function(initValue){if(value!=null){throw new Error("Unable to specify a callback value for a deferred object that has already been passed a value.")}value=initValue!=null?initValue:new Error("Null value passed to deferred.");runChain()};this.cancel=function(reason){if(reason===null){reason=new Error("Deferred was cancelled")}if(value instanceof mn.util.Deferred){value.resumeParent=null;value.cancel(reason)}while(cancelHandlers.length){cancelHandlers.shift()(reason)}value=reason;callbacks=[],errbacks=[];runChain()}}},geom:{Matrix:(function(){function Matrix(a,b,c,d,tx,ty){if(arguments.length){this.a=a,this.b=b,this.tx=tx;this.c=c,this.d=d,this.ty=ty}else{this.a=1,this.b=0,this.tx=0;this.c=0,this.d=1,this.ty=0}}Matrix.prototype={clone:function(){return new Matrix(this.a,this.b,this.c,this.d,this.tx,this.ty)},multiply:function(m2){var m1a=this.a,m1b=this.b,m1tx=this.tx;var m1c=this.c,m1d=this.d,m1ty=this.ty;var m2a=m2.a,m2b=m2.b,m2tx=m2.tx;var m2c=m2.c,m2d=m2.d,m2ty=m2.ty;this.a=m1a*m2a+m1c*m2c;this.b=m1a*m2b+m1c*m2d;this.c=m1b*m2a+m1d*m2c;this.d=m1b*m2b+m1d*m2d;this.tx=m1tx*m2a+m1ty*m2b+m2tx;this.ty=m1tx*m2c+m1ty*m2d+m2ty;return this},transformPoint:function(p){var x=p.x,y=p.y;p.x=this.a*x+this.b*y+this.tx;p.y=this.c*x+this.d*y+this.ty;return p}};return Matrix})()},canvas:{isExcanvas:(function(){return window.G_vmlCanvasManager!=null}()),create:function(width,height){var canvas=document.createElement("canvas");canvas.width=width;canvas.height=height;return this.isExcanvas?G_vmlCanvasManager.initElement(canvas):canvas},DisplayObject:(function(){function DisplayObject(){this.x=0;this.y=0;this.visible=true;this.transform=null;this.children=new Array();this.parent=null}DisplayObject.prototype.addChild=function(child,index){if(child.parent){child.parent.removeChild(child)}if(arguments.length==2&&index<this.children.length){this.children.splice(index<0?0:index,0,child)}else{this.children.push(child)}child.parent=this};DisplayObject.prototype.removeChild=function(child){if(child.parent!=this){return false}var i=mn.list.indexOf(this.children,child);if(i!=-1){this.children.splice(i,1)}child.parent=null;return true};DisplayObject.prototype.render=function(g){if(!this.visible){return}var numChildren=this.children.length;if(numChildren==0&&this.draw==null){return}var m=this.transform;if(m==null||m.a*m.d-m.b*m.c!=0){g.save();if(this.x!=0||this.y!=0){g.transform(1,0,0,1,this.x,this.y)}if(m){g.transform(m)}if(this.draw){this.draw.call(this,g)}for(var children=this.children.slice(),i=0;i<numChildren;i++){children[i].render(g)}g.restore()}};return DisplayObject}())}};var buzz=(function(){var isInteractive=false;var detailsBox;var columns=[];var rng=new mn.util.Random(Math.random);var imgCounter=0;var BuzzColumn=(function(){var ColumnGraphics=(function(){var colours={};function getColourString(colour){return colours[colour]="rgb("+((colour&16711680)>>16)+","+((colour&65280)>>8)+","+(colour&255)+")"}function ColumnGraphics(container,width,segmentHeight){this.container=container;this.width=width;this.segmentHeight=segmentHeight;this.segments=[];this.numSegments=0;this.transformStack=[];this.currentTransform=new mn.geom.Matrix();this.tempMatrix=new mn.geom.Matrix();this.x=this.y=0;this.height=0}ColumnGraphics.prototype.extendToSize=function(numSegments){for(var i=this.numSegments;i<numSegments;i++){var canvas=mn.canvas.create(this.width,this.segmentHeight);this.container.appendChild(canvas);mn.obj.setProps(canvas.style,{position:"absolute",left:"0px",top:(i*this.segmentHeight)+"px"});var segment=this.segments[i]=canvas.getContext("2d");segment.moveTo(this.x,this.y-i*this.segmentHeight)}this.height=i*this.segmentHeight;this.numSegments=i};ColumnGraphics.prototype.save=function(){this.transformStack.push(this.currentTransform.clone())};ColumnGraphics.prototype.restore=function(){if(this.transformStack.length){this.currentTransform=this.transformStack.pop()}};ColumnGraphics.prototype.reset=function(){this.currentTransform=new mn.geom.Matrix();this.transformStack=[]};ColumnGraphics.prototype.transform=function(){var tm;if(arguments.length===1){tm=arguments[0]}else{tm=this.tempMatrix;tm.a=arguments[0];tm.b=arguments[1];tm.c=arguments[2];tm.d=arguments[3];tm.tx=arguments[4];tm.ty=arguments[5]}this.currentTransform=tm.clone().multiply(this.currentTransform)};ColumnGraphics.prototype.applyStroke=function(lineWidth,colour){for(var i=0;i<this.numSegments;i++){var context=this.segments[i];context.lineWidth=lineWidth;context.strokeStyle=colours[colour]||getColourString(colour);context.stroke()}};ColumnGraphics.prototype.applyFill=function(colour){for(var i=0;i<this.numSegments;i++){var context=this.segments[i];context.fillStyle=colours[colour]||getColourString(colour);context.fill()}};ColumnGraphics.prototype.beginPath=function(){for(var i=0;i<this.numSegments;i++){this.segments[i].beginPath()}};ColumnGraphics.prototype.moveTo=function(x,y){var p=this.currentTransform.transformPoint({x:x,y:y});x=p.x,y=p.y;this.x=x;this.y=y;for(var i=0;i<this.numSegments;i++){this.segments[i].moveTo(x,y-i*this.segmentHeight)}};ColumnGraphics.prototype.lineTo=function(x,y){var p=this.currentTransform.transformPoint({x:x,y:y});x=p.x,y=p.y;var oldY=this.y;var i1=Math.floor((oldY<y?oldY:y)/this.segmentHeight);var i2=Math.floor((oldY<y?y:oldY)/this.segmentHeight);if(i2>=this.numSegments){this.extendToSize(i2+1)}for(var i=i1;i<=i2;i++){if(i<0){continue}var segment=this.segments[i];var yOffset=i*this.segmentHeight;segment.lineTo(this.x,this.y-yOffset);segment.lineTo(x,y-yOffset)}this.x=x;this.y=y};ColumnGraphics.prototype.quadraticCurveTo=function(cpx,cpy,x,y){var m=this.currentTransform;var segHeight=this.segmentHeight;var p=m.transformPoint({x:cpx,y:cpy});cpx=p.x,cpy=p.y;p.x=x,p.y=y;p=m.transformPoint(p);x=p.x,y=p.y;var oldY=this.y;var newMaxY=y>cpy?y:cpy;var i1=~~((oldY<newMaxY?oldY:newMaxY)/segHeight);var i2=~~((oldY<newMaxY?newMaxY:oldY)/segHeight);if(i2>=this.numSegments){this.extendToSize(i2+1)}var currentX=this.x,currentY=this.y;for(var i=i1;i<=i2;i++){if(i>=0){var yOffset=i*segHeight;var segment=this.segments[i];segment.lineTo(this.x,this.y-yOffset);segment.bezierCurveTo(currentX+(cpx-currentX)*2/3,currentY+(cpy-currentY)*2/3-yOffset,cpx+(x-currentX)/3,cpy+(y-currentY)/3-yOffset,x,y-yOffset)}}this.x=x;this.y=y};ColumnGraphics.prototype.drawImage=function(img,x,y){if(mn.canvas.isExcanvas){var m=this.currentTransform;var p=m.transformPoint({x:x,y:y});var id="buzzImg"+imgCounter;$(this.container).append('<img id="'+id+'" src="'+img.src+'"/>');$("#"+id).css("position","absolute").css("left",p.x+"px").css("top",p.y+"px").width(img.width*m.a).height(img.height*m.d);imgCounter++}else{var m=this.currentTransform;var p1=m.transformPoint({x:x,y:y});var p2=m.transformPoint({x:x+img.width,y:y+img.height});var i1=Math.floor(p1.y/this.segmentHeight);var i2=Math.floor(p2.y/this.segmentHeight);if(i2>=this.numSegments){this.extendToSize(i2+1)}for(var i=i1;i<=i2;i++){if(i<0){continue}var yOffset=i*this.segmentHeight;var segment=this.segments[i];segment.save();segment.setTransform(m.a,m.b,m.c,m.d,m.tx,m.ty-yOffset);segment.drawImage(img,x,y);segment.restore()}}};ColumnGraphics.prototype.setDrawMode=function(mode){for(var i=0;i<this.numSegments;i++){this.segments[i].globalCompositeOperation=mode}};return ColumnGraphics}());var drawFuncs={M:"moveTo",L:"lineTo",C:"quadraticCurveTo"};var renderTimer=-1;var instances=[];function startRendering(){if(renderTimer==-1){renderTimer=setTimeout(render,mn.canvas.isExcanvas?100:20)}}function render(){renderTimer=-1;for(var i=0;i<instances.length;i++){try{instances[i].render()}catch(e){if(e.message!="Interrupt rendering"){throw e}startRendering()}}renderQueue=[]}var resolveEntities=(function(){var chars={quot:34,amp:38,lt:60,gt:62,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,copy:169,ordf:170,laquo:171,not:172,shy:173,reg:174,macr:175,deg:176,plusmn:177,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,sup1:185,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,Agrave:192,Aacute:193,Acirc:194,Atilde:195,Auml:196,Aring:197,AElig:198,Ccedil:199,Egrave:200,Eacute:201,Ecirc:202,Euml:203,Igrave:204,Iacute:205,Icirc:206,Iuml:207,ETH:208,Ntilde:209,Ograve:210,Oacute:211,Ocirc:212,Otilde:213,Ouml:214,times:215,Oslash:216,Ugrave:217,Uacute:218,Ucirc:219,Uuml:220,Yacute:221,THORN:222,szlig:223,agrave:224,aacute:225,acirc:226,atilde:227,auml:228,aring:229,aelig:230,ccedil:231,egrave:232,eacute:233,ecirc:234,euml:235,igrave:236,iacute:237,icirc:238,iuml:239,eth:240,ntilde:241,ograve:242,oacute:243,ocirc:244,otilde:245,ouml:246,divide:247,oslash:248,ugrave:249,uacute:250,ucirc:251,uuml:252,yacute:253,thorn:254,yuml:255,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,circ:710,tilde:732,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,permil:8240,lsaquo:8249,rsaquo:8250,euro:8364};return function(text){return text.replace(/&#([0-9]+);|&([a-zA-Z]+);/g,function(){var code,entity;if(!!(code=arguments[1])&&code.length){return String.fromCharCode(parseInt(code))}if(!!(entity=arguments[2])&&chars[entity]){return String.fromCharCode(chars[entity])}return arguments[0]})}}());function generateWavePoints(numPoints,lengthInc,amplitude,cycles,phase){var points=[],thetaInc=Math.PI/numPoints*cycles;for(var i=0;i<=numPoints;i++){points[i]={x:Math.sin(phase+thetaInc*i)*amplitude,y:lengthInc*i}}return points}function getWaveSprite(points,colour,lineWidth){var sprite=new mn.canvas.DisplayObject();var i=0;if(mn.canvas.isExcanvas){sprite.draw=function(g){g.beginPath();g.moveTo(points[i].x,points[i++].y);for(var l=points.length;i<l;i++){g.lineTo(points[i].x,points[i].y)}g.applyStroke(lineWidth,colour);this.parent.removeChild(this);delete this.draw;throw new Error("Interrupt rendering")}}else{sprite.draw=function(g){if(i==points.length-1){this.parent.removeChild(this);delete this.draw}else{g.beginPath();g.moveTo(points[i].x,points[i++].y);g.lineTo(points[i].x,points[i].y);g.applyStroke(lineWidth,colour)}throw new Error("Interrupt rendering")}}return sprite}function getCharacterSprite(font,chr,colour){var tmp=font.chars[chr];if(tmp==null){return null}var chrWidth=font.widths[chr];var instructions=[],numInstructions=tmp.length;for(var i=0;i<numInstructions;i++){var instruction=tmp[i];instructions[i]=[drawFuncs[instruction[0]],instruction[1]]}var sprite=new mn.canvas.DisplayObject();sprite.width=chrWidth;sprite.draw=function(g){g.beginPath();for(var i=0;i<numInstructions;i++){var instruction=instructions[i];g[instruction[0]].apply(g,instruction[1])}g.applyFill(colour);delete this.draw;this.parent.removeChild(this);throw new Error("Interrupt rendering")};return sprite}function getTextOnPath(font,text,scale,colour,points,segLength){var getCurvePosition=function(x){var pi1=Math.floor(x/segLength),pi2=Math.ceil(x/segLength);if(pi1==pi2){return points[pi1]}var p1=points[pi1],p2=points[pi2];if(!(p1&&p2)){return null}var t=(x-(pi1*segLength))/segLength;return{x:p1.x+(p2.x-p1.x)*t,y:p1.y+(p2.y-p1.y)*t}};var container=new mn.canvas.DisplayObject();var xOffset=0;for(var i=0;i<text.length;i++){var chr=text.charAt(i);var chrSprite=getCharacterSprite(font,chr,colour);if(chrSprite==null){continue}var chrWidth=chrSprite.width*scale;var p1=getCurvePosition(xOffset);var p2=getCurvePosition(xOffset+=chrWidth);if(!(p1&&p2)){return container}var angle=Math.atan2(p2.y-p1.y,p2.x-p1.x);var c=Math.cos(angle),s=Math.sin(angle);chrSprite.transform=new mn.geom.Matrix(scale*c,scale*s,scale*-s,scale*c,p1.x,p1.y-100);container.addChild(chrSprite)}container.draw=function(){if(this.children.length==0){this.parent.removeChild(this)}};return container}function getTextLength(text,font,scale){for(var w=0,i=0;i<text.length;i++){var chr=text.charAt(i);if(font.widths[chr]){w+=font.widths[chr]*scale}}return w}var loadImage=(function(){var pendingList=[];var activeLoaders=0;function loadNext(){var item=pendingList.shift();if(item){var d=item.d;var img=new Image();img.onload=function(){d.callback(img);loadComplete()};img.onerror=function(){d.callback(new Error("Image load failed"));loadComplete()};img.src=item.url;d.addCancelHandler(function(){img.onload=img.onerror=null;img.src=""});activeLoaders++}}function loadComplete(value){activeLoaders--;setTimeout(loadNext,5)}return function(url){var d=new mn.util.Deferred();pendingList.push({url:url,d:d});if(activeLoaders<3){loadNext()}return d}}());return function(container,font,rng,width,x,segmentHeight,curveLengthInc,detailsBox){instances.push(this);var stage=new mn.canvas.DisplayObject();var lastY=-500;var imageOffset=rng.nextFloatBetween(-1,1)*segmentHeight;var div=document.createElement("div");mn.obj.setProps(div.style,{position:"absolute",left:x+"px",width:width+"px"});container.append(div);var graphics=new ColumnGraphics(div,width,segmentHeight);var hitAreas=this.hitAreas=[];var activeHitArea;function getHitAreaUnderMouse(mx,my){for(var i=0,l=hitAreas.length;i<l;i++){var area=hitAreas[i];if(mx>area.left&&mx<area.right&&my>area.top&&my<area.bottom){return area}}return null}div=$(div);var handleMouseInteraction=function(e){if(isInteractive){var offset=div.offset();var mx=e.pageX-offset.left;var my=e.pageY-offset.top;var area=getHitAreaUnderMouse(mx,my);if(area&&activeHitArea!=area){idleAnim.stop();detailsBox.show(area);activeHitArea=area}else{if(!area&&activeHitArea){idleAnim.start();detailsBox.hide();activeHitArea=null}}div.css("cursor",activeHitArea?"pointer":"default")}};div.mousemove(handleMouseInteraction);div.mouseout(handleMouseInteraction);div.click(function(){if(isInteractive&&activeHitArea){window.open(activeHitArea.data.link)}});this.render=function(){graphics.reset();stage.render(graphics)};this.update=function(height,colours,tweetData,imageData){graphics.extendToSize(Math.floor(height/segmentHeight));var minOffset=(segmentHeight/3);var maxOffset=(segmentHeight/2);while(lastY<height){var textItem=null;var textScale=1;var minCurveWidth=width/10;var maxCurveWidth=width/3;var curveWidth=minCurveWidth+(maxCurveWidth-minCurveWidth)*rng.nextFloat();var minCurveHeight=500;var maxCurveHeight=1000;var curveHeight=minCurveHeight+(maxCurveHeight-minCurveHeight)*rng.nextFloat();var colour=rng.select(colours);if(!mn.canvas.isExcanvas&&tweetData.length>0&&rng.nextFloat()<0.25){textItem=rng.select(tweetData);textScale=rng.nextFloatBetween(0.1,0.2);var textLength=getTextLength(textItem.summary,font,textScale);if(curveHeight<textLength){curveHeight=textLength}}var minCycles=1;var maxCycles=rng.nextFloatBetween(3,5);var cycles=minCycles+(curveHeight-minCurveHeight)/(maxCurveHeight-minCurveHeight)*maxCycles;var curve=generateWavePoints(curveHeight/curveLengthInc,curveLengthInc,curveWidth,cycles,rng.nextFloat()*Math.PI*2);var sprite;if(textItem){sprite=getTextOnPath(font,resolveEntities(textItem.summary),textScale,colour,curve,curveLengthInc)}else{sprite=getWaveSprite(curve,colour,rng.nextIntBetween(1,2))}sprite.x=width/2;sprite.y=lastY;stage.addChild(sprite);lastY+=rng.nextFloatBetween(curveHeight/4,curveHeight/3)}while(imageOffset<height){var imageSpacing=60;var numImages=rng.nextIntBetween(4,8);var curveWidth=width/3;var curveHeight=imageSpacing*numImages;var cycles=rng.nextFloatBetween(1,2);var curve=generateWavePoints(numImages,imageSpacing,curveWidth,cycles,rng.nextFloat()*Math.PI*2);for(var i=0;i<numImages;i++){var imageDataItem=rng.select(imageData);var image=imageDataItem.thumbnail_image;var imageSprite=new mn.canvas.DisplayObject();var pos=curve[i];imageSprite.x=width/2+pos.x;imageSprite.y=imageOffset+pos.y;stage.addChild(imageSprite);loadImage(image).addCallback(mn.func.curry(function(imageSprite,imageDataItem,img){var imageSize=rng.nextFloatBetween(20,50);var scale=Math.min(imageSize/img.width,imageSize/img.height);var m=new mn.geom.Matrix(scale,0,0,scale,0,0);var imgWidth=img.width*scale,imgHeight=img.height*scale;imageSprite.draw=function(g){hitAreas.push({left:imageSprite.x-imgWidth/2,top:imageSprite.y-imgHeight/2,right:imageSprite.x+imgWidth/2,bottom:imageSprite.y+imgHeight/2,data:imageDataItem,colour:rng.select(colours),container:div});g.setDrawMode("destination-over");g.save();g.transform(m);g.drawImage(img,-img.width/2,-img.height/2);g.restore();g.setDrawMode("source-over");delete this.draw;this.parent.removeChild(this);throw new Error("Interrupt rendering")};startRendering()},this)(imageSprite,imageDataItem))}imageOffset+=numImages*imageSpacing+rng.nextFloatBetween(0.25,1.5)*segmentHeight}startRendering()}}}());var DetailsBox=(function(){function getColourString(colour){var result=colour.toString(16);while(result.length<6){result="0"+result}return"#"+result}return function(container){var div=document.createElement("div");mn.obj.setProps(div.style,{position:"absolute"});var title=document.createElement("div");var summary=document.createElement("div");var source=document.createElement("div");div.appendChild(title);div.appendChild(summary);div.appendChild(source);container.append(div);div=$(div),title=$(title),summary=$(summary),source=$(source);div.addClass("buzzDetails");div.hide();title.addClass("title");summary.addClass("summary");source.addClass("source");var onFadeOut,onFadeIn;var visible=false;var fadingOut=false,fadingIn=false;this.show=function(area){var areaOffset=area.container.offset();var offset=container.offset();offset.top=areaOffset.top-offset.top;offset.left=areaOffset.left-offset.left;var data=area.data;title.css("color",getColourString(area.colour));title.html(data.screen_name);summary.html(data.summary);source.html("via "+data.source);var x=offset.left+area.right+10;var y=offset.top+area.top;var width=div.outerWidth();var height=div.outerHeight();var scrollBot=$(window).scrollTop()+$(window).height();if(x+width>container.width()){x=offset.left+(area.left-width)-10}if(y+height>scrollBot){y=offset.top+(area.bottom-height)}div.css("left",x+"px");div.css("top",y+"px");div.show()};this.hide=function(){div.hide()}}}());var idleAnim=(function(){var timer;function showNext(){var scrollTop=$(window).scrollTop();var scrollBot=scrollTop+$(window).height();var n=0,areas=[];for(var col,i=0;col=columns[i];i++){for(var area,j=0;area=col.hitAreas[j];j++){if(area.top>scrollTop){if(area.bottom<scrollBot){areas[n++]=area}else{break}}}}if(areas.length){detailsBox.show(rng.select(areas))}timer=setTimeout(showNext,5000)}return{start:function(){clearTimeout(timer);timer=setTimeout(showNext,2500)},stop:function(){clearTimeout(timer);detailsBox.hide()}}}());var data=(function(){var request;var pendingDeferred;function tweetFilter(item){return item.source=="Twitter"}function dataLoaded(json){request=null;var deferred=pendingDeferred;pendingDeferred=null;if(json&&json.length){data.tweets=mn.list.filter(json,tweetFilter);data.images=json;if(deferred){deferred.callback(json)}}else{if(deferred){deferred.callback(new Error("No data received"))}}}function dataLoadFailed(){request=null;if(pendingDeferred){var tmp=pendingDeferred;pendingDeferred=null;tmp.callback(new Error("Loading failed"))}}return{tweets:null,images:null,isLoading:function(){return request!=null},load:function(url,dataType){if(request){request.abort();var tmp=pendingDeferred;pendingDeferred=null;tmp.cancel(new Error("Loading was cancelled"))}var deferred=pendingDeferred=new mn.util.Deferred();request=$.ajax({url:url,dataType:dataType,success:dataLoaded,error:dataLoadFailed,timeout:10000});return deferred}}}());return(function(){var colours=[8245729,15192320,14590070,21864,10190265,35504,9949067,16358706,14628719,15897534,30656,7513235,7345152,11739159,4790125,438405,16560192,11383001,16372409,15885149];var isUpdatePending=false;var container;var numCols=4;var colWidth=100;function updateInternal(){var height=container.height();for(var i=0;i<numCols;i++){columns[i].update(height,colours,data.tweets,data.images)}}function dataLoaded(data){if(isUpdatePending){updateInternal()}return data.slice()}return{init:function(containerDiv,width){container=containerDiv;detailsBox=new DetailsBox(container);var font=new Arial();var colSpacing=(width-colWidth*numCols)/(numCols+1);for(var i=0;i<numCols;i++){columns[i]=new BuzzColumn(container,font,rng,colWidth,colSpacing+(colWidth+colSpacing)*i,500,20,detailsBox)}},load:function(url,dataType){return data.load(url,dataType).addCallback(dataLoaded)},update:function(){if(container){var docHeight=$(document).height();container.height(docHeight);if(!data.isLoading()&&data.tweets&&data.images&&(data.images.length>0||data.tweets.length>0)){isUpdatePending=false;updateInternal();return}}isUpdatePending=true},toggleInteraction:function(enable){(isInteractive=enable===true)?idleAnim.start():idleAnim.stop()}}}())}());(function($){$.extend($.fn,{validate:function(options){if(!this.length){options&&options.debug&&window.console&&console.warn("nothing selected, can't validate, returning nothing");return}var validator=$.data(this[0],"validator");if(validator){return validator}validator=new $.validator(options,this[0]);$.data(this[0],"validator",validator);if(validator.settings.onsubmit){this.find("input, button").filter(".cancel").click(function(){validator.cancelSubmit=true});if(validator.settings.submitHandler){this.find("input, button").filter(":submit").click(function(){validator.submitButton=this})}this.submit(function(event){if(validator.settings.debug){event.preventDefault()}function handle(){if(validator.settings.submitHandler){if(validator.submitButton){var hidden=$("<input type='hidden'/>").attr("name",validator.submitButton.name).val(validator.submitButton.value).appendTo(validator.currentForm)}validator.settings.submitHandler.call(validator,validator.currentForm);if(validator.submitButton){hidden.remove()}return false}return true}if(validator.cancelSubmit){validator.cancelSubmit=false;return handle()}if(validator.form()){if(validator.pendingRequest){validator.formSubmitted=true;return false}return handle()}else{validator.focusInvalid();return false}})}return validator},valid:function(){if($(this[0]).is("form")){return this.validate().form()}else{var valid=true;var validator=$(this[0].form).validate();this.each(function(){valid&=validator.element(this)});return valid}},removeAttrs:function(attributes){var result={},$element=this;$.each(attributes.split(/\s/),function(index,value){result[value]=$element.attr(value);$element.removeAttr(value)});return result},rules:function(command,argument){var element=this[0];if(command){var settings=$.data(element.form,"validator").settings;var staticRules=settings.rules;var existingRules=$.validator.staticRules(element);switch(command){case"add":$.extend(existingRules,$.validator.normalizeRule(argument));staticRules[element.name]=existingRules;if(argument.messages){settings.messages[element.name]=$.extend(settings.messages[element.name],argument.messages)}break;case"remove":if(!argument){delete staticRules[element.name];return existingRules}var filtered={};$.each(argument.split(/\s/),function(index,method){filtered[method]=existingRules[method];delete existingRules[method]});return filtered}}var data=$.validator.normalizeRules($.extend({},$.validator.metadataRules(element),$.validator.classRules(element),$.validator.attributeRules(element),$.validator.staticRules(element)),element);if(data.required){var param=data.required;delete data.required;data=$.extend({required:param},data)}return data}});$.extend($.expr[":"],{blank:function(a){return !$.trim(""+a.value)},filled:function(a){return !!$.trim(""+a.value)},unchecked:function(a){return !a.checked}});$.validator=function(options,form){this.settings=$.extend({},$.validator.defaults,options);this.currentForm=form;this.init()};$.validator.format=function(source,params){if(arguments.length==1){return function(){var args=$.makeArray(arguments);args.unshift(source);return $.validator.format.apply(this,args)}}if(arguments.length>2&&params.constructor!=Array){params=$.makeArray(arguments).slice(1)}if(params.constructor!=Array){params=[params]}$.each(params,function(i,n){source=source.replace(new RegExp("\\{"+i+"\\}","g"),n)});return source};$.extend($.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",validClass:"valid",errorElement:"label",focusInvalid:true,errorContainer:$([]),errorLabelContainer:$([]),onsubmit:true,ignore:[],ignoreTitle:false,onfocusin:function(element){this.lastActive=element;if(this.settings.focusCleanup&&!this.blockFocusCleanup){this.settings.unhighlight&&this.settings.unhighlight.call(this,element,this.settings.errorClass,this.settings.validClass);this.errorsFor(element).hide()}},onfocusout:function(element){if(!this.checkable(element)&&(element.name in this.submitted||!this.optional(element))){this.element(element)}},onkeyup:function(element){if(element.name in this.submitted||element==this.lastElement){this.element(element)}},onclick:function(element){if(element.name in this.submitted){this.element(element)}else{if(element.parentNode.name in this.submitted){this.element(element.parentNode)}}},highlight:function(element,errorClass,validClass){$(element).addClass(errorClass).removeClass(validClass)},unhighlight:function(element,errorClass,validClass){$(element).removeClass(errorClass).addClass(validClass)}},setDefaults:function(settings){$.extend($.validator.defaults,settings)},messages:{required:"This field is required.",remote:"Please fix this field.",email:"Please enter a valid email address.",url:"Please enter a valid URL.",date:"Please enter a valid date.",dateISO:"Please enter a valid date (ISO).",number:"Please enter a valid number.",digits:"Please enter only digits.",creditcard:"Please enter a valid credit card number.",equalTo:"Please enter the same value again.",accept:"Please enter a value with a valid extension.",maxlength:$.validator.format("Please enter no more than {0} characters."),minlength:$.validator.format("Please enter at least {0} characters."),rangelength:$.validator.format("Please enter a value between {0} and {1} characters long."),range:$.validator.format("Please enter a value between {0} and {1}."),max:$.validator.format("Please enter a value less than or equal to {0}."),min:$.validator.format("Please enter a value greater than or equal to {0}.")},autoCreateRanges:false,prototype:{init:function(){this.labelContainer=$(this.settings.errorLabelContainer);this.errorContext=this.labelContainer.length&&this.labelContainer||$(this.currentForm);this.containers=$(this.settings.errorContainer).add(this.settings.errorLabelContainer);this.submitted={};this.valueCache={};this.pendingRequest=0;this.pending={};this.invalid={};this.reset();var groups=(this.groups={});$.each(this.settings.groups,function(key,value){$.each(value.split(/\s/),function(index,name){groups[name]=key})});var rules=this.settings.rules;$.each(rules,function(key,value){rules[key]=$.validator.normalizeRule(value)});function delegate(event){var validator=$.data(this[0].form,"validator");validator.settings["on"+event.type]&&validator.settings["on"+event.type].call(validator,this[0])}$(this.currentForm).delegate("focusin focusout keyup",":text, :password, :file, select, textarea",delegate).delegate("click",":radio, :checkbox, select, option",delegate);if(this.settings.invalidHandler){$(this.currentForm).bind("invalid-form.validate",this.settings.invalidHandler)}},form:function(){this.checkForm();$.extend(this.submitted,this.errorMap);this.invalid=$.extend({},this.errorMap);if(!this.valid()){$(this.currentForm).triggerHandler("invalid-form",[this])}this.showErrors();return this.valid()},checkForm:function(){this.prepareForm();for(var i=0,elements=(this.currentElements=this.elements());elements[i];i++){this.check(elements[i])}return this.valid()},element:function(element){element=this.clean(element);this.lastElement=element;this.prepareElement(element);this.currentElements=$(element);var result=this.check(element);if(result){delete this.invalid[element.name]}else{this.invalid[element.name]=true}if(!this.numberOfInvalids()){this.toHide=this.toHide.add(this.containers)}this.showErrors();return result},showErrors:function(errors){if(errors){$.extend(this.errorMap,errors);this.errorList=[];for(var name in errors){this.errorList.push({message:errors[name],element:this.findByName(name)[0]})}this.successList=$.grep(this.successList,function(element){return !(element.name in errors)})}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors()},resetForm:function(){if($.fn.resetForm){$(this.currentForm).resetForm()}this.submitted={};this.prepareForm();this.hideErrors();this.elements().removeClass(this.settings.errorClass)},numberOfInvalids:function(){return this.objectLength(this.invalid)},objectLength:function(obj){var count=0;for(var i in obj){count++}return count},hideErrors:function(){this.addWrapper(this.toHide).hide()},valid:function(){return this.size()==0},size:function(){return this.errorList.length},focusInvalid:function(){if(this.settings.focusInvalid){try{$(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus()}catch(e){}}},findLastActive:function(){var lastActive=this.lastActive;return lastActive&&$.grep(this.errorList,function(n){return n.element.name==lastActive.name}).length==1&&lastActive},elements:function(){var validator=this,rulesCache={};return $([]).add(this.currentForm.elements).filter(":input").not(":submit, :reset, :image, [disabled]").not(this.settings.ignore).filter(function(){!this.name&&validator.settings.debug&&window.console&&console.error("%o has no name assigned",this);if(this.name in rulesCache||!validator.objectLength($(this).rules())){return false}rulesCache[this.name]=true;return true})},clean:function(selector){return $(selector)[0]},errors:function(){return $(this.settings.errorElement+"."+this.settings.errorClass,this.errorContext)},reset:function(){this.successList=[];this.errorList=[];this.errorMap={};this.toShow=$([]);this.toHide=$([]);this.currentElements=$([])},prepareForm:function(){this.reset();this.toHide=this.errors().add(this.containers)},prepareElement:function(element){this.reset();this.toHide=this.errorsFor(element)},check:function(element){element=this.clean(element);if(this.checkable(element)){element=this.findByName(element.name)[0]}var rules=$(element).rules();var dependencyMismatch=false;for(method in rules){var rule={method:method,parameters:rules[method]};try{var result=$.validator.methods[method].call(this,element.value.replace(/\r/g,""),element,rule.parameters);if(result=="dependency-mismatch"){dependencyMismatch=true;continue}dependencyMismatch=false;if(result=="pending"){this.toHide=this.toHide.not(this.errorsFor(element));return}if(!result){this.formatAndAdd(element,rule);return false}}catch(e){this.settings.debug&&window.console&&console.log("exception occured when checking element "+element.id+", check the '"+rule.method+"' method",e);throw e}}if(dependencyMismatch){return}if(this.objectLength(rules)){this.successList.push(element)}return true},customMetaMessage:function(element,method){if(!$.metadata){return}var meta=this.settings.meta?$(element).metadata()[this.settings.meta]:$(element).metadata();return meta&&meta.messages&&meta.messages[method]},customMessage:function(name,method){var m=this.settings.messages[name];return m&&(m.constructor==String?m:m[method])},findDefined:function(){for(var i=0;i<arguments.length;i++){if(arguments[i]!==undefined){return arguments[i]}}return undefined},defaultMessage:function(element,method){return this.findDefined(this.customMessage(element.name,method),this.customMetaMessage(element,method),!this.settings.ignoreTitle&&element.title||undefined,$.validator.messages[method],"<strong>Warning: No message defined for "+element.name+"</strong>")},formatAndAdd:function(element,rule){var message=this.defaultMessage(element,rule.method),theregex=/\$?\{(\d+)\}/g;if(typeof message=="function"){message=message.call(this,rule.parameters,element)}else{if(theregex.test(message)){message=jQuery.format(message.replace(theregex,"{$1}"),rule.parameters)}}this.errorList.push({message:message,element:element});this.errorMap[element.name]=message;this.submitted[element.name]=message},addWrapper:function(toToggle){if(this.settings.wrapper){toToggle=toToggle.add(toToggle.parent(this.settings.wrapper))}return toToggle},defaultShowErrors:function(){for(var i=0;this.errorList[i];i++){var error=this.errorList[i];this.settings.highlight&&this.settings.highlight.call(this,error.element,this.settings.errorClass,this.settings.validClass);this.showLabel(error.element,error.message)}if(this.errorList.length){this.toShow=this.toShow.add(this.containers)}if(this.settings.success){for(var i=0;this.successList[i];i++){this.showLabel(this.successList[i])}}if(this.settings.unhighlight){for(var i=0,elements=this.validElements();elements[i];i++){this.settings.unhighlight.call(this,elements[i],this.settings.errorClass,this.settings.validClass)}}this.toHide=this.toHide.not(this.toShow);this.hideErrors();this.addWrapper(this.toShow).show()},validElements:function(){return this.currentElements.not(this.invalidElements())},invalidElements:function(){return $(this.errorList).map(function(){return this.element})},showLabel:function(element,message){var label=this.errorsFor(element);if(label.length){label.removeClass().addClass(this.settings.errorClass);label.attr("generated")&&label.html(message)}else{label=$("<"+this.settings.errorElement+"/>").attr({"for":this.idOrName(element),generated:true}).addClass(this.settings.errorClass).html(message||"");if(this.settings.wrapper){label=label.hide().show().wrap("<"+this.settings.wrapper+"/>").parent()}if(!this.labelContainer.append(label).length){this.settings.errorPlacement?this.settings.errorPlacement(label,$(element)):label.insertAfter(element)}}if(!message&&this.settings.success){label.text("");typeof this.settings.success=="string"?label.addClass(this.settings.success):this.settings.success(label)}this.toShow=this.toShow.add(label)},errorsFor:function(element){var name=this.idOrName(element);return this.errors().filter(function(){return $(this).attr("for")==name})},idOrName:function(element){return this.groups[element.name]||(this.checkable(element)?element.name:element.id||element.name)},checkable:function(element){return/radio|checkbox/i.test(element.type)},findByName:function(name){var form=this.currentForm;return $(document.getElementsByName(name)).map(function(index,element){return element.form==form&&element.name==name&&element||null})},getLength:function(value,element){switch(element.nodeName.toLowerCase()){case"select":return $("option:selected",element).length;case"input":if(this.checkable(element)){return this.findByName(element.name).filter(":checked").length}}return value.length},depend:function(param,element){return this.dependTypes[typeof param]?this.dependTypes[typeof param](param,element):true},dependTypes:{"boolean":function(param,element){return param},string:function(param,element){return !!$(param,element.form).length},"function":function(param,element){return param(element)}},optional:function(element){return !$.validator.methods.required.call(this,$.trim(element.value),element)&&"dependency-mismatch"},startRequest:function(element){if(!this.pending[element.name]){this.pendingRequest++;this.pending[element.name]=true}},stopRequest:function(element,valid){this.pendingRequest--;if(this.pendingRequest<0){this.pendingRequest=0}delete this.pending[element.name];if(valid&&this.pendingRequest==0&&this.formSubmitted&&this.form()){$(this.currentForm).submit();this.formSubmitted=false}else{if(!valid&&this.pendingRequest==0&&this.formSubmitted){$(this.currentForm).triggerHandler("invalid-form",[this]);this.formSubmitted=false}}},previousValue:function(element){return $.data(element,"previousValue")||$.data(element,"previousValue",{old:null,valid:true,message:this.defaultMessage(element,"remote")})}},classRuleSettings:{required:{required:true},email:{email:true},url:{url:true},date:{date:true},dateISO:{dateISO:true},dateDE:{dateDE:true},number:{number:true},numberDE:{numberDE:true},digits:{digits:true},creditcard:{creditcard:true}},addClassRules:function(className,rules){className.constructor==String?this.classRuleSettings[className]=rules:$.extend(this.classRuleSettings,className)},classRules:function(element){var rules={};var classes=$(element).attr("class");classes&&$.each(classes.split(" "),function(){if(this in $.validator.classRuleSettings){$.extend(rules,$.validator.classRuleSettings[this])}});return rules},attributeRules:function(element){var rules={};var $element=$(element);for(method in $.validator.methods){var value=$element.attr(method);if(value){rules[method]=value}}if(rules.maxlength&&/-1|2147483647|524288/.test(rules.maxlength)){delete rules.maxlength}return rules},metadataRules:function(element){if(!$.metadata){return{}}var meta=$.data(element.form,"validator").settings.meta;return meta?$(element).metadata()[meta]:$(element).metadata()},staticRules:function(element){var rules={};var validator=$.data(element.form,"validator");if(validator.settings.rules){rules=$.validator.normalizeRule(validator.settings.rules[element.name])||{}}return rules},normalizeRules:function(rules,element){$.each(rules,function(prop,val){if(val===false){delete rules[prop];return}if(val.param||val.depends){var keepRule=true;switch(typeof val.depends){case"string":keepRule=!!$(val.depends,element.form).length;break;case"function":keepRule=val.depends.call(element,element);break}if(keepRule){rules[prop]=val.param!==undefined?val.param:true}else{delete rules[prop]}}});$.each(rules,function(rule,parameter){rules[rule]=$.isFunction(parameter)?parameter(element):parameter});$.each(["minlength","maxlength","min","max"],function(){if(rules[this]){rules[this]=Number(rules[this])}});$.each(["rangelength","range"],function(){if(rules[this]){rules[this]=[Number(rules[this][0]),Number(rules[this][1])]}});if($.validator.autoCreateRanges){if(rules.min&&rules.max){rules.range=[rules.min,rules.max];delete rules.min;delete rules.max}if(rules.minlength&&rules.maxlength){rules.rangelength=[rules.minlength,rules.maxlength];delete rules.minlength;delete rules.maxlength}}if(rules.messages){delete rules.messages}return rules},normalizeRule:function(data){if(typeof data=="string"){var transformed={};$.each(data.split(/\s/),function(){transformed[this]=true});data=transformed}return data},addMethod:function(name,method,message){$.validator.methods[name]=method;$.validator.messages[name]=message!=undefined?message:$.validator.messages[name];if(method.length<3){$.validator.addClassRules(name,$.validator.normalizeRule(name))}},methods:{required:function(value,element,param){if(!this.depend(param,element)){return"dependency-mismatch"}switch(element.nodeName.toLowerCase()){case"select":var val=$(element).val();return val&&val.length>0;case"input":if(this.checkable(element)){return this.getLength(value,element)>0}default:return $.trim(value).length>0}},remote:function(value,element,param){if(this.optional(element)){return"dependency-mismatch"}var previous=this.previousValue(element);if(!this.settings.messages[element.name]){this.settings.messages[element.name]={}}previous.originalMessage=this.settings.messages[element.name].remote;this.settings.messages[element.name].remote=previous.message;param=typeof param=="string"&&{url:param}||param;if(previous.old!==value){previous.old=value;var validator=this;this.startRequest(element);var data={};data[element.name]=value;$.ajax($.extend(true,{url:param,mode:"abort",port:"validate"+element.name,dataType:"json",data:data,success:function(response){validator.settings.messages[element.name].remote=previous.originalMessage;var valid=response===true;if(valid){var submitted=validator.formSubmitted;validator.prepareElement(element);validator.formSubmitted=submitted;validator.successList.push(element);validator.showErrors()}else{var errors={};var message=(previous.message=response||validator.defaultMessage(element,"remote"));errors[element.name]=$.isFunction(message)?message(value):message;validator.showErrors(errors)}previous.valid=valid;validator.stopRequest(element,valid)}},param));return"pending"}else{if(this.pending[element.name]){return"pending"}}return previous.valid},minlength:function(value,element,param){return this.optional(element)||this.getLength($.trim(value),element)>=param},maxlength:function(value,element,param){return this.optional(element)||this.getLength($.trim(value),element)<=param},rangelength:function(value,element,param){var length=this.getLength($.trim(value),element);return this.optional(element)||(length>=param[0]&&length<=param[1])},min:function(value,element,param){return this.optional(element)||value>=param},max:function(value,element,param){return this.optional(element)||value<=param},range:function(value,element,param){return this.optional(element)||(value>=param[0]&&value<=param[1])},email:function(value,element){return this.optional(element)||/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test(value)},url:function(value,element){return this.optional(element)||/^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(value)},date:function(value,element){return this.optional(element)||!/Invalid|NaN/.test(new Date(value))},dateISO:function(value,element){return this.optional(element)||/^\d{4}[\/-]\d{1,2}[\/-]\d{1,2}$/.test(value)},number:function(value,element){return this.optional(element)||/^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/.test(value)},digits:function(value,element){return this.optional(element)||/^\d+$/.test(value)},creditcard:function(value,element){if(this.optional(element)){return"dependency-mismatch"}if(/[^0-9-]+/.test(value)){return false}var nCheck=0,nDigit=0,bEven=false;value=value.replace(/\D/g,"");for(var n=value.length-1;n>=0;n--){var cDigit=value.charAt(n);var nDigit=parseInt(cDigit,10);if(bEven){if((nDigit*=2)>9){nDigit-=9}}nCheck+=nDigit;bEven=!bEven}return(nCheck%10)==0},accept:function(value,element,param){param=typeof param=="string"?param.replace(/,/g,"|"):"png|jpe?g|gif";return this.optional(element)||value.match(new RegExp(".("+param+")$","i"))},equalTo:function(value,element,param){var target=$(param).unbind(".validate-equalTo").bind("blur.validate-equalTo",function(){$(element).valid()});return value==target.val()}}});$.format=$.validator.format})(jQuery);(function($){var ajax=$.ajax;var pendingRequests={};$.ajax=function(settings){settings=$.extend(settings,$.extend({},$.ajaxSettings,settings));var port=settings.port;if(settings.mode=="abort"){if(pendingRequests[port]){pendingRequests[port].abort()}return(pendingRequests[port]=ajax.apply(this,arguments))}return ajax.apply(this,arguments)}})(jQuery);(function($){$.each({focus:"focusin",blur:"focusout"},function(original,fix){$.event.special[fix]={setup:function(){if($.browser.msie){return false}this.addEventListener(original,$.event.special[fix].handler,true)},teardown:function(){if($.browser.msie){return false}this.removeEventListener(original,$.event.special[fix].handler,true)},handler:function(e){arguments[0]=$.event.fix(e);arguments[0].type=fix;return $.event.handle.apply(this,arguments)}}});$.extend($.fn,{delegate:function(type,delegate,handler){return this.bind(type,function(event){var target=$(event.target);if(target.is(delegate)){return handler.apply(target,arguments)}})},triggerEvent:function(type,target){return this.triggerHandler(type,[$.event.fix({type:type,target:target})])}})})(jQuery);(function(jQuery){jQuery.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor","borderTopColor","color","outlineColor"],function(i,attr){jQuery.fx.step[attr]=function(fx){if(!fx.colorInit){fx.start=getColor(fx.elem,attr);fx.end=getRGB(fx.end);fx.colorInit=true}fx.elem.style[attr]="rgb("+[Math.max(Math.min(parseInt((fx.pos*(fx.end[0]-fx.start[0]))+fx.start[0]),255),0),Math.max(Math.min(parseInt((fx.pos*(fx.end[1]-fx.start[1]))+fx.start[1]),255),0),Math.max(Math.min(parseInt((fx.pos*(fx.end[2]-fx.start[2]))+fx.start[2]),255),0)].join(",")+")"}});function getRGB(color){var result;if(color&&color.constructor==Array&&color.length==3){return color}if(result=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(color)){return[parseInt(result[1]),parseInt(result[2]),parseInt(result[3])]}if(result=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(color)){return[parseFloat(result[1])*2.55,parseFloat(result[2])*2.55,parseFloat(result[3])*2.55]}if(result=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(color)){return[parseInt(result[1],16),parseInt(result[2],16),parseInt(result[3],16)]}if(result=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(color)){return[parseInt(result[1]+result[1],16),parseInt(result[2]+result[2],16),parseInt(result[3]+result[3],16)]}if(result=/rgba\(0, 0, 0, 0\)/.exec(color)){return colors.transparent}return colors[jQuery.trim(color).toLowerCase()]}function getColor(elem,attr){var color;do{color=jQuery.curCSS(elem,attr);if(color!=""&&color!="transparent"||jQuery.nodeName(elem,"body")){break}attr="backgroundColor"}while(elem=elem.parentNode);return getRGB(color)}var colors={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]}})(jQuery);(function(B){B.tinysort={id:"TinySort",version:"1.0.2",defaults:{order:"asc",attr:"",place:"start",returns:false}};B.fn.extend({tinysort:function(H,I){if(H&&typeof(H)!="string"){I=H;H=null}var E=B.extend({},B.tinysort.defaults,I);var O={};this.each(function(S){var U=(!H||H=="")?B(this):B(this).find(H);var T=E.order=="rand"?""+Math.random():(E.attr==""?U.text():U.attr(E.attr));var R=B(this).parent();if(!O[R]){O[R]={s:[],n:[]}}if(U.length>0){O[R].s.push({s:T,e:B(this),n:S})}else{O[R].n.push({e:B(this),n:S})}});for(var G in O){var D=O[G];D.s.sort(function J(T,S){var R=T.s.toLowerCase?T.s.toLowerCase():T.s;var U=S.s.toLowerCase?S.s.toLowerCase():S.s;if(C(T.s)&&C(S.s)){R=parseFloat(T.s);U=parseFloat(S.s)}return(E.order=="asc"?1:-1)*(R<U?-1:(R>U?1:0))})}var L=[];for(var G in O){var D=O[G];var M=[];var F=B(this).length;switch(E.place){case"first":B.each(D.s,function(R,S){F=Math.min(F,S.n)});break;case"org":B.each(D.s,function(R,S){M.push(S.n)});break;case"end":F=D.n.length;break;default:F=0}var P=[0,0];for(var K=0;K<B(this).length;K++){var N=K>=F&&K<F+D.s.length;if(A(M,K)){N=true}var Q=(N?D.s:D.n)[P[N?0:1]].e;Q.parent().append(Q);if(N||!E.returns){L.push(Q.get(0))}P[N?0:1]++}}return this.setArray(L)}});function C(D){return/^[\+-]?\d*\.?\d*$/.exec(D)}function A(E,F){var D=false;B.each(E,function(H,G){if(!D){D=G==F}});return D}B.fn.TinySort=B.fn.Tinysort=B.fn.tsort=B.fn.tinysort})(jQuery);(function(D){D.fn.extend({renderCalendar:function(P){var X=function(Y){return document.createElement(Y)};P=D.extend({},D.fn.datePicker.defaults,P);if(P.showHeader!=D.dpConst.SHOW_HEADER_NONE){var M=D(X("tr"));for(var S=Date.firstDayOfWeek;S<Date.firstDayOfWeek+7;S++){var H=S%7;var R=Date.dayNames[H];M.append(jQuery(X("th")).attr({scope:"col",abbr:R,title:R,"class":(H==0||H==6?"weekend":"weekday")}).html(P.showHeader==D.dpConst.SHOW_HEADER_SHORT?R.substr(0,1):R))}}var E=D(X("table")).attr({cellspacing:2,className:"jCalendar"}).append((P.showHeader!=D.dpConst.SHOW_HEADER_NONE?D(X("thead")).append(M):X("thead")));var F=D(X("tbody"));var U=(new Date()).zeroTime();var W=P.month==undefined?U.getMonth():P.month;var N=P.year||U.getFullYear();var K=new Date(N,W,1);var J=Date.firstDayOfWeek-K.getDay()+1;if(J>1){J-=7}var O=Math.ceil(((-1*J+1)+K.getDaysInMonth())/7);K.addDays(J-1);var V=function(){if(P.hoverClass){D(this).addClass(P.hoverClass)}};var G=function(){if(P.hoverClass){D(this).removeClass(P.hoverClass)}};var L=0;while(L++<O){var Q=jQuery(X("tr"));for(var S=0;S<7;S++){var I=K.getMonth()==W;var T=D(X("td")).text(K.getDate()+"").attr("className",(I?"current-month ":"other-month ")+(K.isWeekend()?"weekend ":"weekday ")+(I&&K.getTime()==U.getTime()?"today ":"")).hover(V,G);if(P.renderCallback){P.renderCallback(T,K,W,N)}Q.append(T);K.addDays(1)}F.append(Q)}E.append(F);return this.each(function(){D(this).empty().append(E)})},datePicker:function(E){if(!D.event._dpCache){D.event._dpCache=[]}E=D.extend({},D.fn.datePicker.defaults,E);return this.each(function(){var G=D(this);var I=true;if(!this._dpId){this._dpId=D.event.guid++;D.event._dpCache[this._dpId]=new A(this);I=false}if(E.inline){E.createButton=false;E.displayClose=false;E.closeOnSelect=false;G.empty()}var F=D.event._dpCache[this._dpId];F.init(E);if(!I&&E.createButton){F.button=D('<a href="#" class="dp-choose-date" title="'+D.dpText.TEXT_CHOOSE_DATE+'">'+D.dpText.TEXT_CHOOSE_DATE+"</a>").bind("click",function(){G.dpDisplay(this);this.blur();return false});G.after(F.button)}if(!I&&G.is(":text")){G.bind("dateSelected",function(K,J,L){this.value=J.asString()}).bind("change",function(){if(this.value!=""){var J=Date.fromString(this.value);if(J){F.setSelected(J,true,true)}}});if(E.clickInput){G.bind("click",function(){G.dpDisplay()})}var H=Date.fromString(this.value);if(this.value!=""&&H){F.setSelected(H,true,true)}}G.addClass("dp-applied")})},dpSetDisabled:function(E){return B.call(this,"setDisabled",E)},dpSetStartDate:function(E){return B.call(this,"setStartDate",E)},dpSetEndDate:function(E){return B.call(this,"setEndDate",E)},dpGetSelected:function(){var E=C(this[0]);if(E){return E.getSelected()}return null},dpSetSelected:function(G,F,E){if(F==undefined){F=true}if(E==undefined){E=true}return B.call(this,"setSelected",Date.fromString(G),F,E,true)},dpSetDisplayedMonth:function(E,F){return B.call(this,"setDisplayedMonth",Number(E),Number(F),true)},dpDisplay:function(E){return B.call(this,"display",E)},dpSetRenderCallback:function(E){return B.call(this,"setRenderCallback",E)},dpSetPosition:function(E,F){return B.call(this,"setPosition",E,F)},dpSetOffset:function(E,F){return B.call(this,"setOffset",E,F)},dpClose:function(){return B.call(this,"_closeCalendar",false,this[0])},_dpDestroy:function(){}});var B=function(G,F,E,I,H){return this.each(function(){var J=C(this);if(J){J[G](F,E,I,H)}})};function A(E){this.ele=E;this.displayedMonth=null;this.displayedYear=null;this.startDate=null;this.endDate=null;this.showYearNavigation=null;this.closeOnSelect=null;this.displayClose=null;this.selectMultiple=null;this.verticalPosition=null;this.horizontalPosition=null;this.verticalOffset=null;this.horizontalOffset=null;this.button=null;this.renderCallback=[];this.selectedDates={};this.inline=null;this.context="#dp-popup"}D.extend(A.prototype,{init:function(E){this.setStartDate(E.startDate);this.setEndDate(E.endDate);this.setDisplayedMonth(Number(E.month),Number(E.year));this.setRenderCallback(E.renderCallback);this.showYearNavigation=E.showYearNavigation;this.closeOnSelect=E.closeOnSelect;this.displayClose=E.displayClose;this.selectMultiple=E.selectMultiple;this.verticalPosition=E.verticalPosition;this.horizontalPosition=E.horizontalPosition;this.hoverClass=E.hoverClass;this.setOffset(E.verticalOffset,E.horizontalOffset);this.inline=E.inline;if(this.inline){this.context=this.ele;this.display()}},setStartDate:function(E){if(E){this.startDate=Date.fromString(E)}if(!this.startDate){this.startDate=(new Date()).zeroTime()}this.setDisplayedMonth(this.displayedMonth,this.displayedYear)},setEndDate:function(E){if(E){this.endDate=Date.fromString(E)}if(!this.endDate){this.endDate=(new Date("12/31/2999"))}if(this.endDate.getTime()<this.startDate.getTime()){this.endDate=this.startDate}this.setDisplayedMonth(this.displayedMonth,this.displayedYear)},setPosition:function(E,F){this.verticalPosition=E;this.horizontalPosition=F},setOffset:function(E,F){this.verticalOffset=parseInt(E)||0;this.horizontalOffset=parseInt(F)||0},setDisabled:function(E){$e=D(this.ele);$e[E?"addClass":"removeClass"]("dp-disabled");if(this.button){$but=D(this.button);$but[E?"addClass":"removeClass"]("dp-disabled");$but.attr("title",E?"":D.dpText.TEXT_CHOOSE_DATE)}if($e.is(":text")){$e.attr("disabled",E?"disabled":"")}},setDisplayedMonth:function(E,L,I){if(this.startDate==undefined||this.endDate==undefined){return}var H=new Date(this.startDate.getTime());H.setDate(1);var K=new Date(this.endDate.getTime());K.setDate(1);var G;if((!E&&!L)||(isNaN(E)&&isNaN(L))){G=new Date().zeroTime();G.setDate(1)}else{if(isNaN(E)){G=new Date(L,this.displayedMonth,1)}else{if(isNaN(L)){G=new Date(this.displayedYear,E,1)}else{G=new Date(L,E,1)}}}if(G.getTime()<H.getTime()){G=H}else{if(G.getTime()>K.getTime()){G=K}}var F=this.displayedMonth;var J=this.displayedYear;this.displayedMonth=G.getMonth();this.displayedYear=G.getFullYear();if(I&&(this.displayedMonth!=F||this.displayedYear!=J)){this._rerenderCalendar();D(this.ele).trigger("dpMonthChanged",[this.displayedMonth,this.displayedYear])}},setSelected:function(K,E,F,H){if(E==this.isSelected(K)){return}if(this.selectMultiple==false){this.selectedDates={};D("td.selected",this.context).removeClass("selected")}if(F&&this.displayedMonth!=K.getMonth()){this.setDisplayedMonth(K.getMonth(),K.getFullYear(),true)}this.selectedDates[K.toString()]=E;var I="td.";I+=K.getMonth()==this.displayedMonth?"current-month":"other-month";I+=':contains("'+K.getDate()+'")';var J;D(I,this.ele).each(function(){if(D(this).text()==K.getDate()){J=D(this);J[E?"addClass":"removeClass"]("selected")}});if(H){var G=this.isSelected(K);$e=D(this.ele);$e.trigger("dateSelected",[K,J,G]);$e.trigger("change")}},isSelected:function(E){return this.selectedDates[E.toString()]},getSelected:function(){var E=[];for(s in this.selectedDates){if(this.selectedDates[s]==true){E.push(Date.parse(s))}}return E},display:function(E){if(D(this.ele).is(".dp-disabled")){return}E=E||this.ele;var L=this;var H=D(E);var K=H.offset();var M;var N;var G;var I;if(L.inline){M=D(this.ele);N={id:"calendar-"+this.ele._dpId,className:"dp-popup dp-popup-inline"};I={}}else{M=D("body");N={id:"dp-popup",className:"dp-popup"};I={top:K.top+L.verticalOffset,left:K.left+L.horizontalOffset};var J=function(Q){var O=Q.target;var P=D("#dp-popup")[0];while(true){if(O==P){return true}else{if(O==document){L._closeCalendar();return false}else{O=D(O).parent()[0]}}}};this._checkMouse=J;this._closeCalendar(true)}M.append(D("<div></div>").attr(N).css(I).append(D("<h2></h2>"),D('<div class="dp-nav-prev"></div>').append(D('<a class="dp-nav-prev-year" href="#" title="'+D.dpText.TEXT_PREV_YEAR+'">&lt;&lt;</a>').bind("click",function(){return L._displayNewMonth.call(L,this,0,-1)}),D('<a class="dp-nav-prev-month" href="#" title="'+D.dpText.TEXT_PREV_MONTH+'">&lt;</a>').bind("click",function(){return L._displayNewMonth.call(L,this,-1,0)})),D('<div class="dp-nav-next"></div>').append(D('<a class="dp-nav-next-year" href="#" title="'+D.dpText.TEXT_NEXT_YEAR+'">&gt;&gt;</a>').bind("click",function(){return L._displayNewMonth.call(L,this,0,1)}),D('<a class="dp-nav-next-month" href="#" title="'+D.dpText.TEXT_NEXT_MONTH+'">&gt;</a>').bind("click",function(){return L._displayNewMonth.call(L,this,1,0)})),D("<div></div>").attr("className","dp-calendar")).bgIframe());var F=this.inline?D(".dp-popup",this.context):D("#dp-popup");if(this.showYearNavigation==false){D(".dp-nav-prev-year, .dp-nav-next-year",L.context).css("display","none")}if(this.displayClose){F.append(D('<a href="#" id="dp-close">'+D.dpText.TEXT_CLOSE+"</a>").bind("click",function(){L._closeCalendar();return false}))}L._renderCalendar();D(this.ele).trigger("dpDisplayed",F);if(!L.inline){if(this.verticalPosition==D.dpConst.POS_BOTTOM){F.css("top",K.top+H.height()-F.height()+L.verticalOffset)}if(this.horizontalPosition==D.dpConst.POS_RIGHT){F.css("left",K.left+H.width()-F.width()+L.horizontalOffset)}D(document).bind("mousedown",this._checkMouse)}},setRenderCallback:function(E){if(E==null){return}if(E&&typeof(E)=="function"){E=[E]}this.renderCallback=this.renderCallback.concat(E)},cellRender:function(J,E,H,G){var K=this.dpController;var I=new Date(E.getTime());J.bind("click",function(){var L=D(this);if(!L.is(".disabled")){K.setSelected(I,!L.is(".selected")||!K.selectMultiple,false,true);if(K.closeOnSelect){K._closeCalendar()}}});if(K.isSelected(I)){J.addClass("selected")}for(var F=0;F<K.renderCallback.length;F++){K.renderCallback[F].apply(this,arguments)}},_displayNewMonth:function(F,E,G){if(!D(F).is(".disabled")){this.setDisplayedMonth(this.displayedMonth+E,this.displayedYear+G,true)}F.blur();return false},_rerenderCalendar:function(){this._clearCalendar();this._renderCalendar()},_renderCalendar:function(){D("h2",this.context).html(Date.monthNames[this.displayedMonth]+" "+this.displayedYear);D(".dp-calendar",this.context).renderCalendar({month:this.displayedMonth,year:this.displayedYear,renderCallback:this.cellRender,dpController:this,hoverClass:this.hoverClass});if(this.displayedYear==this.startDate.getFullYear()&&this.displayedMonth==this.startDate.getMonth()){D(".dp-nav-prev-year",this.context).addClass("disabled");D(".dp-nav-prev-month",this.context).addClass("disabled");D(".dp-calendar td.other-month",this.context).each(function(){var H=D(this);if(Number(H.text())>20){H.addClass("disabled")}});var G=this.startDate.getDate();D(".dp-calendar td.current-month",this.context).each(function(){var H=D(this);if(Number(H.text())<G){H.addClass("disabled")}})}else{D(".dp-nav-prev-year",this.context).removeClass("disabled");D(".dp-nav-prev-month",this.context).removeClass("disabled");var G=this.startDate.getDate();if(G>20){var F=new Date(this.startDate.getTime());F.addMonths(1);if(this.displayedYear==F.getFullYear()&&this.displayedMonth==F.getMonth()){D("dp-calendar td.other-month",this.context).each(function(){var H=D(this);if(Number(H.text())<G){H.addClass("disabled")}})}}}if(this.displayedYear==this.endDate.getFullYear()&&this.displayedMonth==this.endDate.getMonth()){D(".dp-nav-next-year",this.context).addClass("disabled");D(".dp-nav-next-month",this.context).addClass("disabled");D(".dp-calendar td.other-month",this.context).each(function(){var H=D(this);if(Number(H.text())<14){H.addClass("disabled")}});var G=this.endDate.getDate();D(".dp-calendar td.current-month",this.context).each(function(){var H=D(this);if(Number(H.text())>G){H.addClass("disabled")}})}else{D(".dp-nav-next-year",this.context).removeClass("disabled");D(".dp-nav-next-month",this.context).removeClass("disabled");var G=this.endDate.getDate();if(G<13){var E=new Date(this.endDate.getTime());E.addMonths(-1);if(this.displayedYear==E.getFullYear()&&this.displayedMonth==E.getMonth()){D(".dp-calendar td.other-month",this.context).each(function(){var H=D(this);if(Number(H.text())>G){H.addClass("disabled")}})}}}},_closeCalendar:function(E,F){if(!F||F==this.ele){D(document).unbind("mousedown",this._checkMouse);this._clearCalendar();D("#dp-popup a").unbind();D("#dp-popup").empty().remove();if(!E){D(this.ele).trigger("dpClosed",[this.getSelected()])}}},_clearCalendar:function(){D(".dp-calendar td",this.context).unbind();D(".dp-calendar",this.context).empty()}});D.dpConst={SHOW_HEADER_NONE:0,SHOW_HEADER_SHORT:1,SHOW_HEADER_LONG:2,POS_TOP:0,POS_BOTTOM:1,POS_LEFT:0,POS_RIGHT:1};D.dpText={TEXT_PREV_YEAR:"Previous year",TEXT_PREV_MONTH:"Previous month",TEXT_NEXT_YEAR:"Next year",TEXT_NEXT_MONTH:"Next month",TEXT_CLOSE:"Close",TEXT_CHOOSE_DATE:"Choose date"};D.dpVersion="$Id: jquery.datePicker.js 15 2008-12-17 04:40:18Z kelvin.luck $";D.fn.datePicker.defaults={month:undefined,year:undefined,showHeader:D.dpConst.SHOW_HEADER_SHORT,startDate:undefined,endDate:undefined,inline:false,renderCallback:null,createButton:true,showYearNavigation:true,closeOnSelect:true,displayClose:false,selectMultiple:false,clickInput:false,verticalPosition:D.dpConst.POS_TOP,horizontalPosition:D.dpConst.POS_LEFT,verticalOffset:0,horizontalOffset:0,hoverClass:"dp-hover"};function C(E){if(E._dpId){return D.event._dpCache[E._dpId]}return false}if(D.fn.bgIframe==undefined){D.fn.bgIframe=function(){return this}}D(window).bind("unload",function(){var F=D.event._dpCache||[];for(var E in F){D(F[E].ele)._dpDestroy()}})})(jQuery);Date.dayNames=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];Date.abbrDayNames=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];Date.monthNames=["January","February","March","April","May","June","July","August","September","October","November","December"];Date.abbrMonthNames=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];Date.firstDayOfWeek=1;Date.format="dd/mm/yyyy";Date.fullYearStart="20";(function(){function add(name,method){if(!Date.prototype[name]){Date.prototype[name]=method}}add("isLeapYear",function(){var y=this.getFullYear();return(y%4==0&&y%100!=0)||y%400==0});add("isWeekend",function(){return this.getDay()==0||this.getDay()==6});add("isWeekDay",function(){return !this.isWeekend()});add("getDaysInMonth",function(){return[31,(this.isLeapYear()?29:28),31,30,31,30,31,31,30,31,30,31][this.getMonth()]});add("getDayName",function(abbreviated){return abbreviated?Date.abbrDayNames[this.getDay()]:Date.dayNames[this.getDay()]});add("getMonthName",function(abbreviated){return abbreviated?Date.abbrMonthNames[this.getMonth()]:Date.monthNames[this.getMonth()]});add("getDayOfYear",function(){var tmpdtm=new Date("1/1/"+this.getFullYear());return Math.floor((this.getTime()-tmpdtm.getTime())/86400000)});add("getWeekOfYear",function(){return Math.ceil(this.getDayOfYear()/7)});add("setDayOfYear",function(day){this.setMonth(0);this.setDate(day);return this});add("addYears",function(num){this.setFullYear(this.getFullYear()+num);return this});add("addMonths",function(num){var tmpdtm=this.getDate();this.setMonth(this.getMonth()+num);if(tmpdtm>this.getDate()){this.addDays(-this.getDate())}return this});add("addDays",function(num){this.setTime(this.getTime()+(num*86400000));return this});add("addHours",function(num){this.setHours(this.getHours()+num);return this});add("addMinutes",function(num){this.setMinutes(this.getMinutes()+num);return this});add("addSeconds",function(num){this.setSeconds(this.getSeconds()+num);return this});add("zeroTime",function(){this.setMilliseconds(0);this.setSeconds(0);this.setMinutes(0);this.setHours(0);return this});add("asString",function(format){var r=format||Date.format;return r.split("yyyy").join(this.getFullYear()).split("yy").join((this.getFullYear()+"").substring(2)).split("mmmm").join(this.getMonthName(false)).split("mmm").join(this.getMonthName(true)).split("mm").join(_zeroPad(this.getMonth()+1)).split("dd").join(_zeroPad(this.getDate())).split("hh").join(_zeroPad(this.getHours())).split("min").join(_zeroPad(this.getMinutes())).split("ss").join(_zeroPad(this.getSeconds()))});Date.fromString=function(s,format){var f=format||Date.format;var d=new Date("01/01/1977");var mLength=0;var iM=f.indexOf("mmmm");if(iM>-1){for(var i=0;i<Date.monthNames.length;i++){var mStr=s.substr(iM,Date.monthNames[i].length);if(Date.monthNames[i]==mStr){mLength=Date.monthNames[i].length-4;break}}d.setMonth(i)}else{iM=f.indexOf("mmm");if(iM>-1){var mStr=s.substr(iM,3);for(var i=0;i<Date.abbrMonthNames.length;i++){if(Date.abbrMonthNames[i]==mStr){break}}d.setMonth(i)}else{d.setMonth(Number(s.substr(f.indexOf("mm"),2))-1)}}var iY=f.indexOf("yyyy");if(iY>-1){if(iM<iY){iY+=mLength}d.setFullYear(Number(s.substr(iY,4)))}else{if(iM<iY){iY+=mLength}d.setFullYear(Number(Date.fullYearStart+s.substr(f.indexOf("yy"),2)))}var iD=f.indexOf("dd");if(iM<iD){iD+=mLength}d.setDate(Number(s.substr(iD,2)));if(isNaN(d.getTime())){return false}return d};var _zeroPad=function(num){var s="0"+num;return s.substring(s.length-2)}})();jQuery.cookie=function(name,value,options){if(typeof value!="undefined"){options=options||{};if(value===null){value="";options.expires=-1}var expires="";if(options.expires&&(typeof options.expires=="number"||options.expires.toUTCString)){var date;if(typeof options.expires=="number"){date=new Date();date.setTime(date.getTime()+(options.expires*24*60*60*1000))}else{date=options.expires}expires="; expires="+date.toUTCString()}var path=options.path?"; path="+(options.path):"";var domain=options.domain?"; domain="+(options.domain):"";var secure=options.secure?"; secure":"";document.cookie=[name,"=",encodeURIComponent(value),expires,path,domain,secure].join("")}else{var cookieValue=null;if(document.cookie&&document.cookie!=""){var cookies=document.cookie.split(";");for(var i=0;i<cookies.length;i++){var cookie=jQuery.trim(cookies[i]);if(cookie.substring(0,name.length+1)==(name+"=")){cookieValue=decodeURIComponent(cookie.substring(name.length+1));break}}}return cookieValue}};(function($){$.path={};var V={rotate:function(p,degrees){var radians=degrees*3.141592654/180;var c=Math.cos(radians),s=Math.sin(radians);return[c*p[0]-s*p[1],s*p[0]+c*p[1]]},scale:function(p,n){return[n*p[0],n*p[1]]},add:function(a,b){return[a[0]+b[0],a[1]+b[1]]},minus:function(a,b){return[a[0]-b[0],a[1]-b[1]]}};$.path.bezier=function(params){params.start=$.extend({angle:0,length:0.3333},params.start);params.end=$.extend({angle:0,length:0.3333},params.end);this.p1=[params.start.x,params.start.y];this.p4=[params.end.x,params.end.y];var v14=V.minus(this.p4,this.p1);var v12=V.scale(v14,params.start.length);v12=V.rotate(v12,params.start.angle);this.p2=V.add(this.p1,v12);var v41=V.scale(v14,-1);var v43=V.scale(v41,params.end.length);v43=V.rotate(v43,params.end.angle);this.p3=V.add(this.p4,v43);this.f1=function(t){return(t*t*t)};this.f2=function(t){return(3*t*t*(1-t))};this.f3=function(t){return(3*t*(1-t)*(1-t))};this.f4=function(t){return((1-t)*(1-t)*(1-t))};this.css=function(p){var f1=this.f1(p),f2=this.f2(p),f3=this.f3(p),f4=this.f4(p);var x=this.p1[0]*f1+this.p2[0]*f2+this.p3[0]*f3+this.p4[0]*f4;var y=this.p1[1]*f1+this.p2[1]*f2+this.p3[1]*f3+this.p4[1]*f4;return{top:y+"px",left:x+"px"}}};$.path.arc=function(params){for(var i in params){this[i]=params[i]}this.dir=this.dir||1;while(this.start>this.end&&this.dir>0){this.start-=360}while(this.start<this.end&&this.dir<0){this.start+=360}this.css=function(p){var a=this.start*(p)+this.end*(1-(p));a=a*3.1415927/180;var x=Math.sin(a)*this.radius+this.center[0];var y=Math.cos(a)*this.radius+this.center[1];return{top:y+"px",left:x+"px"}}};$.fx.step.path=function(fx){var css=fx.end.css(1-fx.pos);for(var i in css){fx.elem.style[i]=css[i]}}})(jQuery);(function(jQuery){jQuery.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor","borderTopColor","color","outlineColor"],function(i,attr){jQuery.fx.step[attr]=function(fx){if(!fx.colorInit){fx.start=getColor(fx.elem,attr);fx.end=getRGB(fx.end);fx.colorInit=true}fx.elem.style[attr]="rgb("+[Math.max(Math.min(parseInt((fx.pos*(fx.end[0]-fx.start[0]))+fx.start[0]),255),0),Math.max(Math.min(parseInt((fx.pos*(fx.end[1]-fx.start[1]))+fx.start[1]),255),0),Math.max(Math.min(parseInt((fx.pos*(fx.end[2]-fx.start[2]))+fx.start[2]),255),0)].join(",")+")"}});function getRGB(color){var result;if(color&&color.constructor==Array&&color.length==3){return color}if(result=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(color)){return[parseInt(result[1]),parseInt(result[2]),parseInt(result[3])]}if(result=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(color)){return[parseFloat(result[1])*2.55,parseFloat(result[2])*2.55,parseFloat(result[3])*2.55]}if(result=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(color)){return[parseInt(result[1],16),parseInt(result[2],16),parseInt(result[3],16)]}if(result=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(color)){return[parseInt(result[1]+result[1],16),parseInt(result[2]+result[2],16),parseInt(result[3]+result[3],16)]}if(result=/rgba\(0, 0, 0, 0\)/.exec(color)){return colors.transparent}return colors[jQuery.trim(color).toLowerCase()]}function getColor(elem,attr){var color;do{color=jQuery.curCSS(elem,attr);if(color!=""&&color!="transparent"||jQuery.nodeName(elem,"body")){break}attr="backgroundColor"}while(elem=elem.parentNode);return getRGB(color)}var colors={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]}})(jQuery);jQuery.fn.confirm=function(options){options=jQuery.extend({msg:"Are you sure?",stopAfter:"never",wrapper:"<span></span>",eventType:"click",dialogShow:"show",dialogSpeed:"",timeout:0},options);options.stopAfter=options.stopAfter.toLowerCase();if(!options.stopAfter in ["never","once","ok","cancel"]){options.stopAfter="never"}options.buttons=jQuery.extend({ok:"Yes",cancel:"No",wrapper:'<a href="#"></a>',separator:"/"},options.buttons);var type=options.eventType;return this.each(function(){var target=this;var $target=jQuery(target);var timer;var saveHandlers=function(){var events=jQuery.data(target,"events");if(!events&&target.href){$target.bind("click",function(){document.location=target.href});events=jQuery.data(target,"events")}else{if(!events){return}}target._handlers=new Array();for(var i in events[type]){target._handlers.push(events[type][i])}};var $ok=jQuery(options.buttons.wrapper).append(options.buttons.ok).click(function(){if(options.timeout!=0){clearTimeout(timer)}$target.unbind(type,handler);$target.show();$dialog.hide();if(target._handlers!=undefined){jQuery.each(target._handlers,function(){$target.click(this.handler)})}$target.click();if(options.stopAfter!="ok"&&options.stopAfter!="once"){$target.unbind(type);$target.one(type,handler)}return false});var $cancel=jQuery(options.buttons.wrapper).append(options.buttons.cancel).click(function(){if(options.timeout!=0){clearTimeout(timer)}if(options.stopAfter!="cancel"&&options.stopAfter!="once"){$target.one(type,handler)}$target.show();$dialog.hide();return false});if(options.buttons.cls){$ok.addClass(options.buttons.cls);$cancel.addClass(options.buttons.cls)}var $dialog=jQuery(options.wrapper).append(options.msg).append($ok).append(options.buttons.separator).append($cancel);var handler=function(){jQuery(this).hide();if(options.dialogShow!="show"){$dialog.hide()}$dialog.insertBefore(this);$dialog[options.dialogShow](options.dialogSpeed);if(options.timeout!=0){clearTimeout(timer);timer=setTimeout(function(){$cancel.click();$target.one(type,handler)},options.timeout)}return false};saveHandlers();$target.unbind(type);target._confirm=handler;target._confirmEvent=type;$target.one(type,handler)})};function VisitManchesterMap(id,options){this.Id=id;this.MarkersArray=[];this.Map=null;this.InfoWindowArray=[];this.CentreIcon="/assets/images/map/marker_searched.png";this.Icon="/assets/images/map/marker_searched.png";this.InitialZoom=14;this.HighlightColour="#fffff";this.BaseColour="#ffffff";this.AutoGeneratePinsAndColours=false;if(options!=null){if(options.icon){this.Icon=options.icon}if(options.highlightColour){this.HighlightColour=options.highlightColour}if(options.autoGeneratePinsAndColours){this.AutoGeneratePinsAndColours=options.autoGeneratePinsAndColours}if(options.baseColour){this.BaseColour=options.baseColour}}}VisitManchesterMap.prototype.Initialise=function(){trackEvent("Map","Initialised");var _this=this;if($(this.Id).find("p.no_results").length>0){return}$(this.Id).find("div.map_canvas").show();var viewport=JSON.parse('{"center":{"lat":"53.4766117","lng":"-2.2266063"},"span":{"lat":"0.106307","lng":"0.256119"},"sw":{"lat":"53.42756","lng":"-2.3624353"},"ne":{"lat":"53.533867","lng":"-2.1063166"}}');var viewportInput=$(_this.Id).find("#map_viewport");if(viewportInput.length>0&&viewportInput.attr("value")!==""){viewport=JSON.parse(viewportInput.attr("value"))}var neLat=new google.maps.LatLng(viewport.ne.lat,viewport.ne.lng);var swLat=new google.maps.LatLng(viewport.sw.lat,viewport.sw.lng);var myLatlng=new google.maps.LatLng(viewport.center.lat,viewport.center.lng);var myOptions={zoom:14,center:myLatlng,scrollwheel:false,mapTypeId:google.maps.MapTypeId.ROADMAP};_this.Map=new google.maps.Map($(_this.Id).find(".map_canvas").get(0),myOptions);_this.Map.fitBounds(new google.maps.LatLngBounds(swLat,neLat));google.maps.event.addListener(this.Map,"click",function(event){_this.Map.setOptions({scrollwheel:true});_this.ShowMarkers();_this.HideInfoWindows()});google.maps.event.addListener(this.Map,"mouseout",function(event){_this.Map.setOptions({scrollwheel:false});_this.ShowMarkers()});_this.InitMarkers();_this.OpenSearchedLocationInfoWindow();$(this.Id).find("a.map_link").click(function(e){e.preventDefault();var mapCanvas=$(_this.Id).find(".map_canvas");var currentListItem=$(this).parent().parent().parents("li");_this.CreateInfoWindow(currentListItem);_this.MoveListingToTop(currentListItem);$.scrollTo(mapCanvas.parent(),1000,{offset:{top:-200,left:0}})})};VisitManchesterMap.prototype.InitMarkers=function(){var _this=this;_this.ClearMarkers();_this.MarkersArray=[];var coordinatesList=$(this.Id).find("input[id*=coordinates]");coordinatesList.each(function(index,element){var currentListItem=$(this).parents("li");var currentHiddenCoordsInput=$(this);var marker=new google.maps.Marker({position:new google.maps.LatLng($(this).attr("value").split(",")[1],$(this).attr("value").split(",")[0]),map:_this.Map,title:$(this).siblings("h2,h4").eq(0).text(),icon:_this.GetIcon(currentListItem)});currentListItem.data("marker",marker);_this.AddMarker(marker);google.maps.event.addListener(marker,"click",function(event){_this.CreateInfoWindow(currentListItem);_this.MoveListingToTop(currentListItem)})})};VisitManchesterMap.prototype.OpenSearchedLocationInfoWindow=function(){var searchedLocation=$(this.Id).find("#map_searchedlocation_coords");if(searchedLocation.length>0&&searchedLocation.attr("value")!==""){var searchedLocationMarker=new google.maps.Marker({position:new google.maps.LatLng(searchedLocation.attr("value").split(",")[1],searchedLocation.attr("value").split(",")[0]),map:this.Map,title:$(this.Id).find("#map_searchedlocationname").attr("value"),icon:this.CentreIcon});this.AddMarker(searchedLocationMarker);var searchedInfoWindowContent="<div><h4>"+$(this.Id).find("#map_searchedlocationname").attr("value")+"</h4></div>";var searchedInfoWindow=new google.maps.InfoWindow({content:searchedInfoWindowContent});this.AddInfoWindow(searchedInfoWindow);var _this=this;setTimeout(function(){searchedInfoWindow.open(_this.Map,searchedLocationMarker)},1000)}};VisitManchesterMap.prototype.MoveListingToTop=function(currentListItem){if(currentListItem.parents("div.selected").length>0){currentListItem.animate({backgroundColor:this.HighlightColour},1000);currentListItem.animate({backgroundColor:"#ffffff"},1000);return}var listContainer=currentListItem.parents("div.discoverlistings,div.staylistings");var selectedItems=listContainer.find("div.selected ul");selectedItems.empty();listContainer.find("ul.listings_results").find(".movedToTop").each(function(){$(this).removeClass("movedToTop hide");var info=$(this).find("div.info");var controls=info.siblings("div.controls");controls.hide()});var newListItem=currentListItem.clone(true);newListItem.appendTo(selectedItems);currentListItem.addClass("hide movedToTop");newListItem.animate({backgroundColor:this.HighlightColour},1000);newListItem.animate({backgroundColor:"#ffffff"},1000);var info=selectedItems.find("li").find("div.info");var controls=info.siblings("div.controls");controls.hide()};VisitManchesterMap.prototype.CreateInfoWindow=function(listItem){this.HideInfoWindows();var info=listItem.find("div.info");var controls=info.siblings("div.controls");var rating=info.find("div.rating");var price=info.find("div.listing_price").html();var infoWindowContent="<div><h4>"+info.find("h2,h4").text()+"</h4>"+info.find("p").outerHTML()+((rating.length>0)?rating.outerHTML():"")+((price!==null&&price!=="")?"<p>"+price+"</p>":"")+"<br /><br />"+controls.find("a.discover_link,a.hotel_link").outerHTML()+"</div>";var infowindow=new google.maps.InfoWindow({content:infoWindowContent});infowindow.open(this.Map,listItem.data("marker"));this.AddInfoWindow(infowindow)};VisitManchesterMap.prototype.GetIconColour=function(item){var IconColour="#FFFFFF";if(item.hasClass("letter_orange")){IconColour="#F99D32"}if(item.hasClass("letter_blue")){IconColour="#008AB0"}if(item.hasClass("letter_pink")){IconColour="#F172AC"}if(item.hasClass("letter_purple")){IconColour="#97CF88"}if(item.hasClass("letter_green")){IconColour="#9B7DB9"}return IconColour};VisitManchesterMap.prototype.GetIcon=function(li){if(this.AutoGeneratePinsAndColours){var letter=$(li).find(".letter").text();var colour=this.GetIconColour($(li).find(".letter"));return"http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld="+letter+"|"+colour.substr(1)+"|000000"}return this.Icon};VisitManchesterMap.prototype.ClearMarkersExcept=function(marker){for(var i=0;i<this.MarkersArray.length;i++){if(this.MarkersArray[i]!==marker){this.MarkersArray[i].setMap(null)}}};VisitManchesterMap.prototype.ShowMarkers=function(){for(var i=0;i<this.MarkersArray.length;i++){if(this.MarkersArray[i].getMap()==null){this.MarkersArray[i].setMap(this.Map)}}};VisitManchesterMap.prototype.ClearMarkers=function(marker){for(var i=0;i<this.MarkersArray.length;i++){this.MarkersArray[i].setMap(null)}};VisitManchesterMap.prototype.AddMarker=function(marker){this.MarkersArray.push(marker)};VisitManchesterMap.prototype.AddInfoWindow=function(infowindow){this.InfoWindowArray.push(infowindow)};VisitManchesterMap.prototype.HideInfoWindows=function(){for(var i=0;i<this.InfoWindowArray.length;i++){this.InfoWindowArray[i].close()}};function BuzzPod(container,buzzlist,toggleFunction,options){this.Container=container;this.LastTimeOut=null;this.Buzz=buzzlist;this.Timeout=1000;this.ToggleFunction=toggleFunction;this.Index=0;this.UpperIcon="/assets/images/global/buzz_open_blue.gif";this.LowerIcon="/assets/images/global/buzz_close_blue.gif";this.TextColor="#008AB0";this.Stopped=false;if(options!=null){if(options.timeout){this.Timeout=options.timeout}if(options.upperIcon){this.UpperIcon=options.upperIcon}if(options.lowerIcon){this.LowerIcon=options.lowerIcon}if(options.textColor){this.TextColor=options.textColor}}}BuzzPod.prototype.Start=function(){var buzz=new Array();for(var i=0;i<this.Buzz.length;i++){if(this.Buzz[i].source=="Twitter"){buzz.push(this.Buzz[i])}}this.Buzz=buzz;if(this.Buzz.length==0){return}var _this=this;$(this.Container).find("div.upper>span").css("background","url("+this.UpperIcon+") no-repeat center left");$(this.Container).find("div.lower>span").css("background","url("+this.LowerIcon+") no-repeat center right");$(this.Container).find("a.buzz").click(function(e){trackEvent("Buzz","Switched on","From pod");e.preventDefault();return _this.ToggleFunction(false)});this.MoveNext();this.CheckHover()};BuzzPod.prototype.Stop=function(){clearTimeout(this.LastTimeOut)};BuzzPod.prototype.CheckHover=function(){var _this=this;$(this.Container).hover(function(){_this.Stopped=true;_this.Stop()},function(){_this.Stopped=false;_this.MoveNext()})};BuzzPod.prototype.MoveNext=function(){clearTimeout(this.LastTimeOut);var _this=this;if(this.Stopped===true){return}var newTimeout=this.Timeout;var buzzDiv=$(this.Container).find("div.buzzPlaceHolder");buzzDiv.fadeOut("slow",function(){buzzDiv.children().remove();if(_this.Index>_this.Buzz.length-1){_this.Index=0}var buzzItem=_this.Buzz[_this.Index++];var buzzItemSummaryLength=(buzzItem.summary.length/2)*100;newTimeout=buzzItemSummaryLength+1000;var content="";switch(buzzItem.source){case"YouTube":content='<div class="image" style="padding-top:10px"><a target="_blank" href="'+buzzItem.link+'"><img width="220" height="124" src="/umbraco/imagegen.ashx?image='+buzzItem.thumbnail_image+"&width=220&height=124&crop=resize&overlayimage="+VIDEO_OVERLAY_IMAGE+'&align=center&valign=center" alt="'+buzzItem.link_text+'"/></a></div>';break;case"Flickr":content='<div class="image"><a target="_blank" href="'+buzzItem.link+'"><img src="/umbraco/imagegen.ashx?image='+buzzItem.thumbnail_image+'&width=220&height=152&crop=resize" alt="'+buzzItem.link_text+'"/></a></div>';break;case"Twitter":default:content='<div class="text"><span class="notimportant"><a rel="nofollow" target="_blank" href="'+buzzItem.link+'">'+buzzItem.summary+" ... @"+buzzItem.screen_name+"</a></span></div>"}buzzDiv.append(content);buzzDiv.find("span.notimportant a").css("color",_this.TextColor);buzzDiv.fadeIn("slow")});this.LastTimeOut=setTimeout(function(){_this.MoveNext()},newTimeout)};function track(address){_gaq.push(["_setAccount",VM_GA_ACCOUNT]);_gaq.push(["_trackPageview",address])}function trackEvent(category,action,label){_gaq.push(["_setAccount",VM_GA_ACCOUNT]);_gaq.push(["_trackEvent",category,action,label])};var buzzIsOn=false;var IE6=false
/*@cc_on || @_jscript_version < 5.7 @*/
;var iPhoneCheck=function(){if(navigator.userAgent.match(/iPhone/i)||navigator.userAgent.match(/iPod/i)||navigator.userAgent.match(/iPad/i)){return true}};var clickScroll=false;var timeoutID=null;function cleanup(){$("#container").find("div.page").each(function(){$(this).prev("div.newpage").unbind().removefromdom();$(this).unbind().removefromdom()})}function isIE(versionNumber){var detect=navigator.userAgent.toLowerCase();if(!(navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase)){return false}else{if(detect.indexOf("msie")+1){var ver=function(){var rv=-1;if(navigator.appName=="Microsoft Internet Explorer"){var ua=navigator.userAgent;var re=new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})");if(re.exec(ua)!=null){rv=parseFloat(RegExp.$1)}}return rv};var valid=true;if((ver>-1)&&(ver<versionNumber)){valid=false}return valid}else{return false}}}jQuery.fn.removefromdom=function(s){if(!this){return}var bin=$("#IELeakGarbageBin");if(!bin.get(0)){bin=$("<div id='IELeakGarbageBin'></div>");$("body").append(bin)}$(this).children().each(function(){bin.append(this);document.getElementById("IELeakGarbageBin").innerHTML=""});this.remove();bin.append(this);document.getElementById("IELeakGarbageBin").innerHTML=""};function newWindowLinks(){$("#container").find("a[rel=external]").live("click",function(){window.open(this.href);trackEvent("External Link","Clicked",address);return false})}function printThis(){$("#container").find("a.print_this").live("click",function(){window.print();return false})}function buzzUpdate(id){setTimeout("buzzLoad('"+id+"');",1000)}function buzzLoad(id){var $buzz=$("div#buzz");var buzzUrl="";if(id===undefined||id===null||id===""){buzzUrl=BUZZ_ENDPOINT_URL_FORMAT.replace(/\{0\}/i,BUZZ_INITIAL_CONTEXT)}else{var buzzContext="";var buzzContextHolder=$("#buzzContext_"+id);if(buzzContextHolder.length>0){buzzContext=buzzContextHolder.attr("value")}buzzUrl=BUZZ_ENDPOINT_URL_FORMAT.replace(/\{0\}/i,buzzContext)}buzz.load(buzzUrl,"jsonp").addCallback(function(data){updateBuzzPod(id,data)}).addErrback(function(err){buzzPodErr(id,err)});buzz.update()}function theBuzz(){$("#buzz-background-pod").find("a.buzz").click(function(e){e.preventDefault();return toggleBuzz(true)});$("body").prepend('<div id="buzz"></div>');var $buzz=$("div#buzz");$buzz.width(920);$buzz.height(screen.height);buzz.init($buzz,$buzz.width());var id=vm.global.getPageId($("div.page"));buzzUpdate(id)}function updateBuzzPod(id,data){var buzzPodContainer=$("#buzzlinks_"+id);if(buzzPodContainer.length>0){var activeMenu=$("div#menu_and_search .nav a.active");var options={textColor:"#008AB0",lowerIcon:"/assets/images/global/buzz_close_blue.gif",upperIcon:"/assets/images/global/buzz_open_blue.gif",timeout:5000};if(activeMenu.length>0){options.textColor=activeMenu.css("backgroundColor");var activeMenuListItem=activeMenu.parents("li");switch(activeMenuListItem.attr("class")){case"n2":options.lowerIcon="/assets/images/global/buzz_close_orange.gif";options.upperIcon="/assets/images/global/buzz_open_orange.gif";break;case"n3":options.lowerIcon="/assets/images/global/buzz_close_pink.gif";options.upperIcon="/assets/images/global/buzz_open_pink.gif";break;case"n4":options.lowerIcon="/assets/images/global/buzz_close_green.gif";options.upperIcon="/assets/images/global/buzz_open_green.gif";break;case"n5":options.lowerIcon="/assets/images/global/buzz_close_purple.gif";options.upperIcon="/assets/images/global/buzz_open_purple.gif";break;default:options.lowerIcon="/assets/images/global/buzz_close_blue.gif";options.upperIcon="/assets/images/global/buzz_open_blue.gif";break}}var buzzPodObj=new BuzzPod(buzzPodContainer,data,toggleBuzz,options);buzzPodObj.Start()}}function buzzPodErr(id,err){var buzzPod=$("#buzzlinks_"+id);if(buzzPod.length>0){}}function removeDeletedCoak(){if($.cookie("vm_coak")===null){$("ul.cutout").find("li").remove()}}function hidePage($currentPageContent){$currentPageContent.css("min-height",$currentPageContent.height());$currentPageContent.children("div").hide()}function ajaxRender(link,address){if(!address){return}launchLightboxLoader();candyBarLoader(true);$.ajax({type:"GET",url:address,dataType:"html",contentType:"application/x-www-form-urlencoded",success:function(data){if(isIE()){var testForSection=/^\/\w*(?!\/).aspx/gm;if(testForSection.test(address)){cleanup()}}clearLightboxLoader();candyBarLoader(false);track(address);var body=$("#body");$(body).find("div.current").removeClass("current");var theData=$(data).find("div.page"),id=vm.global.getPageId(theData),newPageMarkup="<div class='newpage'><hr /></div><div class='page current' id='"+id+"'>"+theData.html()+"</div><div class='clear'></div>";$(body).append(newPageMarkup);var $currentPage=$(body).find("#"+id);var $currentPageContent=$currentPage.children("div.content");var $addThisLink=$("div#"+id+" a.addthis_button");if($addThisLink.length>0){var fullUrl=window.location.protocol+"//"+window.location.host+this.url;addthis.button($addThisLink[0],{},{url:fullUrl})}init_plugins(id);var currentHeight=$currentPage.height();var arrPageSizes=getPageSize();var windowHeight=arrPageSizes[3];if(currentHeight<windowHeight){$currentPage.css({"min-height":windowHeight})}if(link){var currentPosition=$(link).offset();$("#"+id).find("a.back").click(function(e){var pos=currentPosition.top;e.preventDefault();$.scrollTo(pos,1000,{onAfter:touchEnd()})})}fixHeaderFooterLinks();buzzUpdate(id);$.scrollTo($currentPage.prev("div.newpage"),1000,function(){if(iPhoneCheck()){headerReposition()}})},error:function(msg){clearLightboxLoader();candyBarLoader(false);ajaxRender(link,ERROR_ADDRESS)}})}function ajaxRenderForm(query,url){launchLightboxLoader();candyBarLoader(true);$.ajax({type:"GET",url:url,data:query,success:function(data){clearLightboxLoader();candyBarLoader(false);track(url+"?"+query);var searchType=url.indexOf("discover")!=-1?"discover search":url.indexOf("stay")!=-1?"stay search":"site-wide search";trackEvent("Search",searchType,query);var body=$("#body");$(body).find("div.current").removeClass("current");var theData=$(data).find("div.page"),id=vm.global.getPageId(theData),newPageMarkup="<div class='newpage'><hr /></div><div class='page current' id='"+id+"'>"+theData.html()+"</div><div class='clear'></div>";$(body).append(newPageMarkup);var $currentPage=$(body).find("#"+id),$currentPageContent=$currentPage.children("div.content");init_plugins(id);var currentHeight=$currentPage.height();var arrPageSizes=getPageSize();var windowHeight=arrPageSizes[3];if(currentHeight<windowHeight){$currentPage.css({"min-height":windowHeight})}fixHeaderFooterLinks();buzzUpdate(id);$.scrollTo($currentPage.prev("div.newpage"),1000,{offset:{top:0,left:0},onAfter:function(){if(iPhoneCheck()){headerReposition()}}})},error:function(msg){clearLightboxLoader();candyBarLoader(false);track(url+"?"+query);ajaxRender(null,ERROR_ADDRESS)}})}function launchLightboxLoader(){$("body").append('<div id="lightbox-overlay"></div><div id="lightbox-container"><div id="lightbox-fixed"><div id="lightbox-contents"></div></div></div>');var arrPageSizes=getPageSize();$("#lightbox-overlay").css({backgroundColor:"#000000",opacity:"0.0",width:arrPageSizes[0],height:arrPageSizes[1]}).fadeIn();$("#lightbox-overlay,#lightbox-container").click(function(){return false});$(window).resize(function(){var arrPageSizes=getPageSize();$("#lightbox-overlay").css({width:arrPageSizes[0],height:arrPageSizes[1]});var arrPageScroll=getPageScroll();$("#lightbox-contents").css({top:arrPageScroll[1]+(arrPageSizes[3]/10)})})}function clearLightboxLoader(){$("#lightbox-container").remove();$("#lightbox-overlay").remove();$("embed, object, select").css({visibility:"visible"})}function candyBarLoader(state){if(state){$("#header").append('<div id="candybar"></div>')}else{$("#candybar").remove()}}function getPageSize(){var xScroll,yScroll;if(window.innerHeight&&$.scrollMaxY){xScroll=window.innerWidth+$.scrollMaxX;yScroll=window.innerHeight+$.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<windowHeight){pageHeight=windowHeight}else{pageHeight=yScroll}if(xScroll<windowWidth){pageWidth=xScroll}else{pageWidth=windowWidth}arrayPageSize=[pageWidth,pageHeight,windowWidth,windowHeight];return arrayPageSize}function getPageScroll(){var xScroll,yScroll;if(self.pageYOffset){yScroll=self.pageYOffset;xScroll=self.pageXOffset}else{if(document.documentElement&&document.documentElement.scrollTop){yScroll=document.documentElement.scrollTop;xScroll=document.documentElement.scrollLeft}else{if(document.body){yScroll=document.body.scrollTop;xScroll=document.body.scrollLeft}}}arrayPageScroll=[xScroll,yScroll];return arrayPageScroll}function infiniteScroll(){$("#container").find("a:not(a.ignore, a[rel=external],a[href$='.pdf'])").live("click",function(){var address=$(this).attr("href");clickScroll=true;if((this.hostname.indexOf("visitmanchester.com")!=-1)&&(this.hostname.indexOf("shop.visitmanchester.com")==-1)&&(this.hostname.indexOf("conferences.visitmanchester.com")==-1)){if(address.indexOf("#")!=-1){address=address.substring(address.indexOf("#")+1);if(address.indexOf("visitmanchester.com")){address=address.substring(address.indexOf("visitmanchester.com"))}}if($(this).parent("li").parent("ul").hasClass("nav")){if($("#controls_buzz").find("a").hasClass("active")){$("#body").fadeIn("fast");$($("#controls_buzz").find("a")).removeClass("active")}$("ul.nav li a ").removeClass("active");$(this).addClass("active")}$("#header").find("div.panel").slideUp(300);ajaxRender(this,address);$.address.value(address);return false}else{if(!address.startsWith("mailto:")){window.open(address);trackEvent("External Link","Clicked",address);return false}}});var header=$("#header"),form=$(header).find("#search_form");$(form).validate({submitHandler:function(){var address=form.formSerialize(),url=form.attr("action");$(header).find("div.panel").slideUp(300,function(){$(header).find("a").removeClass("active")});ajaxRenderForm(address,url);return false},errorPlacement:function(error,element){var submitButton=element.siblings("input[type=submit]");submitButton.after('<div class="clear"></div>');error.insertAfter(submitButton.next("div.clear"))},errorClass:"invalid"})}function bindSideformInternal(bindform){bindform.validate({submitHandler:function(form){var address=$(form).formSerialize(),url=$(form).attr("action");var submitButton=$(form).find("input.sidebar_submit");if(submitButton&&submitButton.hasClass("homestay")){trackEvent("Search","Stay Search from Home Pod",address)}ajaxRenderForm(address,url);$.address.value(url+"?"+address);return false},errorPlacement:function(error,element){element.after('<div class="clear"></div>');error.insertAfter(element.next("div.clear"))},errorClass:"invalid"})}function bindSideform(id){$(id).find("form.sideform").each(function(){bindSideformInternal($(this))})}function headerFadeInOut(buzzOn){var $header=$("#header","#container");if(buzzOn===true){$header=$("#buzz-background-pod")}var fadeSpeed=100;if(!iPhoneCheck()){$(window).unbind("scrollstart").bind("scrollstart",function(){window.clearTimeout(timeoutID);if(!$.support.cssFloat){$header.hide()}else{if(!clickScroll){$header.hide()}}});$(window).unbind("scrollstop").bind("scrollstop",function(e){if(!$.support.cssFloat){$header.css("top",($(window).scrollTop()+10)+"px")}if(!clickScroll){if(buzzOn){$header=$("#buzz-background-pod")}timeoutID=window.setTimeout(function(){delayFadeUp($header)},500)}else{$header.fadeIn(fadeSpeed,function(e){$("#countFlash").fadeOut(500);clickScroll=false})}})}}function delayFadeUp(header){$(header).fadeIn(500,function(){$("#countFlash").fadeOut(500);clickScroll=false;timeoutID=null})}function touchStart(event){if(buzzIsOn===false){$("#header").hide()}else{$("#buzz-background-pod").hide()}}function touchEnd(event){if(iPhoneCheck()){headerReposition();$(window).scroll(function(){headerReposition()})}}function headerReposition(event){if(buzzIsOn===false){var top=window.pageYOffset+10;$("#header").css({top:top}).show()}else{var top=window.pageYOffset+10;$("#buzz-background-pod").css({top:top}).show()}}function touchEvents(touchStart,touchEnd){var body=$("#body")[0];body.addEventListener("touchstart",touchStart,false);document.addEventListener("touchend",touchEnd,false);$(window).scroll(function(){if(buzzIsOn===false){var top=window.pageYOffset+10;$("#header").hide();$("#header").css({top:top}).show()}else{var top=window.pageYOffset+10;$("#buzz-background-pod").hide();$("#buzz-background-pod").css({top:top}).show()}})}function headerControls(){var $header=$("#header"),$control=$header.find("h5 a,a.close"),$panel=$header.find("div.panel");var speed=300;$header.find("#h_controls").prepend('<div id="controls_buzz"><h5><a href="/pages/now.aspx" class="buzz"><span>Manchester Now</span></a></h5></div>');$control.live("click",function(){$control.not(this).removeClass("active");$panel.slideUp(speed);if($(this).hasClass("buzz")){if($(this).hasClass("active")){return toggleBuzz(true,this)}else{trackEvent("Buzz","Switched on","From menu");return toggleBuzz(false,this)}}else{$("#controls_buzz a.buzz").removeClass("active");$("#body").fadeIn("fast");if($(this).hasClass("active")){$(this).removeClass("active").parent("h5").next("div.panel").slideUp(speed);return false}else{if($(this).parent("h5").next("div.panel").find("ul.cutout").length>0){trackEvent("Saved content","Expanded items")}$(this).addClass("active").parent("h5").next("div.panel").slideDown(speed);return false}}});$("#controls_coak").show()}function toggleBuzz(off,element){if(off){$("a.buzz").removeClass("active");$("#body").show();buzzIsOn=false;headerFadeInOut(false);$("#header","#container").show();$("div.buzz-background-pod").hide();buzz.toggleInteraction(false);trackEvent("Buzz","Switched off");return false}else{$("a.buzz").addClass("active");$("#body").hide();buzzIsOn=true;headerFadeInOut(true);$("#header","#container").hide();$("div.buzz-background-pod").show();buzz.toggleInteraction(true);return false}}function newsLetterInit(id){var success=function(data){if(data.d.IsValid===true){$(id).parents("div.signupContainer").slideUp(function(){$(this).parents("div.sidebar_signup").find("h3").text("Thanks for signing up, we'll be in touch shortly");$(this).parents("div.sidebar_signup").find("h4, form, p").remove();$(this).remove()});trackEvent("Newsletter","Sign up",window.location.hash==""?window.location.pathname:window.location.hash.substr(1))}else{$.each(data.d.Errors,function(){$(id).find("#"+this.ControlId).after("<label class='invalid' generated='true' style='display:inline'>"+this.Error+"</label>")})}};var submitForm=function(){$.ajax({url:"/webservices/registration.asmx/Register",type:"POST",processData:false,contentType:"application/json; charset=utf-8",data:'{"json":'+JSON.stringify($(id).serializeNewsletter())+', "context":"'+id+'"}',dataType:"json",success:function(response){success(response)}});return false};$(id).validate({submitHandler:submitForm,errorClass:"invalid"});var postCode=$(id).find("#postcode");if($(id).find("#is_sweepstake").val()!="true"){$(id).find("#country").change(function(){var selectedCountry=$(this).find("option:selected").attr("value");var currentPostCodeValue=postCode.attr("value");if(selectedCountry=="United Kingdom"){if(currentPostCodeValue=="Zip code"||currentPostCodeValue=="N/A"){postCode.attr("value","Postcode")}postCode.show()}else{if(selectedCountry=="United States"){postCode.show();if(currentPostCodeValue=="Postcode"||currentPostCodeValue=="N/A"){postCode.attr("value","Zip code")}}else{postCode.hide();postCode.attr("value","N/A");if(postCode.next("label.invalid").length>0){postCode.next("label.invalid").hide()}}}})}}function competitionInit(id){$(id).find("input:text:not(input.ignoreFormFormatting), textarea").each(function(){if($(this).val()===""){$(this).val($(this).prev("label").text())}$(this).focus(function(){if($(this).val()===$(this).prev("label").text()){$(this).val("").addClass("focused")}});$(this).blur(function(){if($(this).val()===""){$(this).val($(this).prev("label").text()).removeClass("focused")}});$(this).prev("label").hide()});var success=function(data){if(data.d.IsValid===true){trackEvent("Competition","Competition",window.location.hash==""?window.location.pathname:window.location.hash.substr(1));if($(id).find("#is_sweepstake").val()=="true"){var postEntryPageUrl=$(id).find("#post_entry_page").val();if(postEntryPageUrl!=""){ajaxRender(null,postEntryPageUrl);return}}$(id).prev("h3").text("Good luck!");$(id).replaceWith("<div class='mt_10'><p>Thanks for entering our competition</p><p class='mt_10'></p></div>")}else{$.each(data.d.Errors,function(){$(id).find("#"+this.ControlId).after("<label class='invalid' generated='true' style='display:inline'>"+this.Error+"</label>")})}};var submitForm=function(){$.ajax({url:"/webservices/registration.asmx/Competition",type:"POST",processData:false,contentType:"application/json; charset=utf-8",data:'{"json":'+JSON.stringify($(id).serializeNewsletter())+', "context":"'+id+'"}',dataType:"json",success:function(response){success(response)}});return false};$(id).validate({submitHandler:submitForm,errorClass:"invalid"});$(id).find("#optin").click(function(){if($(id).find("#optin:checked").length){$(id).find(".opt_in_options").slideDown("fast")}else{$(id).find(".opt_in_options").slideUp("fast")}});var postCode=$(id).find("#postcode");$(id).find("#country").change(function(){var selectedCountry=$(this).find("option:selected").attr("value");var currentPostCodeValue=postCode.attr("value");if(selectedCountry=="United Kingdom"){if(currentPostCodeValue=="Zip code"||currentPostCodeValue=="N/A"){postCode.attr("value","Postcode")}postCode.show()}else{if(selectedCountry=="United States"){postCode.show();if(currentPostCodeValue=="Postcode"||currentPostCodeValue=="N/A"){postCode.attr("value","Zip code")}}else{postCode.hide();postCode.attr("value","N/A");if(postCode.next("label.invalid").length>0){postCode.next("label.invalid").hide()}}}});$(id).children(".opt_in_options").hide()}function sidebarAppend(){var $sidebar=$("#sidebar");$("#footer, div.sb_append").appendTo(sidebar);$("div.sb_prepend").prependTo(sidebar)}function listingsMap(id,options){var map=new VisitManchesterMap(id,options);map.Initialise();$(id).data("map",map)}function listingLinkInit(id){}function carousel(id){var thisCarousel=id;var realId=id.substr(1);$(thisCarousel+" ul.slider","#container").before('<div class="controls">').cycle({fx:"scrollLeft",timeout:4000,speed:500,pause:1,pauseOnPagerHover:1,pager:id+" div.controls"})}function hotelGallery(id){var thisGallery=id;$(thisGallery+" ul.slider","#container").cycle({timeout:0,fx:"scrollLeft",speed:500,pager:thisGallery+" div.controls",pagerAnchorBuilder:function(idx,slide){return'<a href="#"><img src="'+$(slide).find("img").attr("src")+'" width="60" height="42" /></a>'}})}function commentsAdd(id){var $commentsAdd=$(id).find("div.comments_add");$(id).find(".comments_add p label").hide();$commentsAdd.find("input:text, textarea").each(function(){if($(this).val()===""){$(this).val($(this).prev("label").text())}$(this).focus(function(){if($(this).val()===$(this).prev("label").text()){$(this).val("").addClass("focused")}});$(this).blur(function(){if($(this).val()===""){$(this).val($(this).prev("label").text()).removeClass("focused")}})})}function listingsControls(id){if($(id).hasClass("staylistings")){var $listItem=$(id).find("ul.listings_results li");$listItem.hover(function listingsControlsOver(){var infoHeight=$(this).children("div.info").height(),$controls=$(this).children("div.controls"),li=$(this).find("li"),height=null;var controls=$(this).find("div.controls li");if(li.length==1){li.css("width","400px")}else{if(controls.length==2){li.css("width","199px")}else{if(controls.length==3){li.css("width","133px")}}}if(infoHeight<153){height=91}else{height=infoHeight-61}$controls.hide().stop(true,true).fadeIn("fast").find("a").height(height)},function listingsControlsOut(){var $controls=$(this).children("div.controls");$controls.hide()})}else{if($(id).hasClass("discoverlistings")){var $listItem=$(id).find("ul.listings_results li");$listItem.each(function(){var controls=$(this).find("div.controls li");if(controls.length==1){controls.css("width","480px")}else{if(controls.length==2){controls.css("width","239px");$(controls[1]).css("border","0px")}else{if(controls.length==3){controls.css("width","159px");$(controls[2]).css("border","0px")}}}});$listItem.hover(function listingsControlsOver(){var infoHeight=$(this).children("div.info").height();var height=infoHeight-61;if(infoHeight<98){height=36}$(this).children("div.controls").show().stop(true,true).fadeIn("fast").find("a").height(height)},function listingsControlsOut(){$(this).children("div.controls").stop(true,true).fadeOut("fast")})}}}function close_sidebar(){$("#sidebar_extra, #sidebar_cutout, #sidebar_cutout_list").slideUp("slow",function(){$("#menu_and_search ul.nav").hide("slow",function(){$("#minimised").fadeIn("fast")})})}function open_sidebar(){$("#minimised").fadeOut();$("#menu_and_search ul.nav").show("slow",function(){$("#sidebar_extra, #sidebar_cutout").slideDown()})}function sidebarSignupSetupInputControls(signupPod){signupPod.find("input:text").each(function(){$(this).prev("label").hide();if($(this).val()===""){$(this).val($(this).prev("label").text())}$(this).focus(function(){if($(this).val()===$(this).prev("label").text()){$(this).val("").addClass("focused")}});$(this).blur(function(){if($(this).val()===""){$(this).val($(this).prev("label").text()).removeClass("focused")}})})}function sidebarSignup(id){var signupPod=$(id).find("div.sidebar_signup");var signupToggle=signupPod.find("h4");sidebarSignupSetupInputControls($(signupPod));signupToggle.click(function(){var expandForm=$(this).hasClass("downarrow");$(this).toggleClass("rightarrow").toggleClass("downarrow");if(expandForm){if($(signupPod).find("div.signupContainer").length==0){$(signupPod).append("<div class='signupContainer'></div>");$(signupPod).find("div.signupContainer").load("/Pages/NewsletterSignup.aspx div.sidebar_signup form",function(){var newid=$(signupPod).find("form").attr("id");newsLetterInit("#"+newid);sidebarSignupSetupInputControls(signupPod)})}$(signupPod).find("div.signupContainer").slideDown("fast")}else{$(signupPod).find("div.signupContainer").slideUp("fast")}return false})}function sidebarAccordion(id){var $expando=$(id).find("h3.expando");$expando.live("click",function(){$(this).toggleClass("rightarrow");$(this).toggleClass("downarrow");$(this).next().slideToggle(600)});if(id.indexOf("discoversidebar")==-1){$expando.click()}}function findUserLocation(id){var mygeo=null;if(navigator.geolocation){mygeo=navigator.geolocation}if(mygeo){primeButtons(id,mygeo)}}function foundUserLocation(position){var lat=position.coords.latitude;var lang=position.coords.longitude;var location=lat+","+lang;return location}function primeButtons(id,mygeo){var buttonsSetupDone=false;var nearYouMessage="Within 0.5 km of you";var setInputLocation=function(){$(id).find("input#place").val(nearYouMessage).attr("readonly","readonly").addClass("disabled")};var setUpButtons=function(location,check){if(buttonsSetupDone){return}var inputPlace=$(id).find("#place"),html='<div class="sidebar_location"><input type="hidden" id="yourlocation" name="yourlocation" value="'+location+'" /><input type="hidden" id="label" name="label" value="You are here" /><div class="first-child"><input type="radio" name="uselocation" value="false" class="radio_custom" '+(check?"":"checked")+' /> Near location</div><div><input type="radio" class="radio_location" name="uselocation" value="true" '+(check?"checked":"")+" /> Near me</div></div>";$(html).insertBefore(inputPlace);if(check){setInputLocation()}$(id).find("input.radio_location").live("click",function(){setInputLocation()});$(id).find("input.radio_custom").live("click",function(){$(id).find("input#place").val("").removeAttr("readonly").removeClass("disabled")});vm.global.location=location;buttonsSetupDone=true};var checkNearYou=false;if(nearYouMessage==$(id).find("input#place").val()){checkNearYou=true}if(vm.global.location!=""){setUpButtons(vm.global.location,checkNearYou)}else{mygeo.getCurrentPosition(function(position){var location=foundUserLocation(position);setUpButtons(location,checkNearYou)})}}function initHotelDetail(id){$(id).find("div.hotel_data h3 + div:not(div.hotel_data h3.rightarrow + div)").hide();$(id).find("h3.rightarrow").addClass("active");$(id).find("div.hotel_data h3").click(function(e){ToggleExpandatron(this,"Hotel","Hotel "+$(this).text()+" expanded",$(id).find(".title").text())});$(id).find("a.book_button_purple:not(a.laterooms_button)").click(function(e){trackEvent("Hotel","Book link clicked",$(id).find(".title").text()+" - "+$(this).parents("div.details_row").find("h4").text())});$(id).find("a.laterooms_button").click(function(e){trackEvent("Hotel","Laterooms Book link clicked",$(id).find(".title").text())})}function initDiscoverDetail(id){$(id).find("div.sidebar_details h3 + div").hide();$(id).find("div.sidebar_details h3").click(function(e){ToggleExpandatron(this,"Discover","Discover "+$(this).text()+" expanded",$(id).parents("div.content").find(".title").text())});$(id).find("a.nearby_link").click(function(){trackEvent("Discover","Find nearby hotels",$(id).parents("div.content").find(".title").text())});$(id).find("a.booking_link").click(function(){trackEvent("Discover","Book link click",$(id).parents("div.content").find(".title").text())})}function ToggleExpandatron(trigger,cat,action,label){$(trigger).toggleClass("rightarrow");$(trigger).toggleClass("downarrow");if($(trigger).hasClass("active")){$(trigger).removeClass("active").next("div").slideUp("fast");return false}else{$(trigger).addClass("active").next("div").slideDown("fast");trackEvent(cat,action,label);return false}}function ImageGenImage(){this.ImageNotAvailable="/assets/images/discover/imagenotavailable.jpg";this.VideoOverlay="/assets/images/global/play_overlay_button.png";this.Crop="";this.ImageUrl="";this.Width="";this.Height="";this.Alt="";this.HideOnNoImage=false;this.Overlay="";this.Pad="";this.BgColor="";this.Visible=true;this.Render=function(){if(typeof(this.ImageUrl)=="undefined"||this.ImageUrl==null||this.ImageUrl==""){this.Visible=!this.HideOnNoImage}else{if(this.ImageUrl.toLowerCase().indexOf("/umbraco/imagegen")!=-1){this.ImageUrl=this.ImageUrl.replace("/umbraco/ImageGen.ashx?image=","")}}if(this.IsVideo){this.Overlay="&overlayimage="+this.VideoOverlay+"&align=center&valign=center"}if(this.Visible){return'<img src="/umbraco/ImageGen.ashx?image='+this.ImageUrl+"&height="+this.Height+"&width="+this.Width+"&crop="+this.Crop+this.Overlay+(this.Pad==""?"":"&pad="+this.Pad)+(this.BgColor==""?"":"&bgcolor="+this.BgColor)+(this.ImageUrl!=""&&this.ImageUrl.indexOf("AltImage")!=-1?"":"&AltImage="+this.ImageNotAvailable)+'" alt="'+(this.Alt==null?"":this.Alt)+'" />'}return""}}function getSiteWideSearchListingItemHtml(listing){var image=new ImageGenImage();image.ImageUrl=listing.ImageUrl==null?"":listing.ImageUrl;image.Alt=listing.Heading==null?"":listing.Heading;image.Width="220";image.Height="152";image.Crop="resize";image.IsVideo=listing.ListingType=="Video Article";if(listing.Summary==null){listing.Summary=""}return'<li class="info"><a href="'+listing.Url+'">'+image.Render()+'</a><div class="info"><h2><a href="'+listing.Url+'">'+listing.Heading+'</a></h2><p class="time">'+listing.SubHeading+'</p><p><span class="orange_highlight">'+listing.ListingType+"</span>"+listing.Summary+'</p></div><div class="controls"><ul><li><a class="discover_link" href="'+listing.Url+'">More info</a></li></ul></div></li>'}function getDiscoverSearchListingItemHtml(listing){var image=new ImageGenImage();image.ImageUrl=listing.ImageUrl==null?"":listing.ImageUrl;image.Alt=listing.Heading==null?"":listing.Heading;image.Width="220";image.Height="152";image.Crop="resize";image.IsVideo=listing.ListingType=="Video Article";if(listing.Summary==null){listing.Summary=""}var mapLink=(listing.Coords==null||listing.Coords=="")?"":'<li><a class="ignore map_link" href="#map">View on map</a></li>';var bookLink=(listing.BookingUrl==null||listing.BookingUrl=="")?"":'<li><a class="ignore" target="_blank" href="'+listing.BookingUrl+'">Book now</a></li>';return'<li class="info"><a href="'+listing.Url+'">'+image.Render()+'</a><div class="info"><input type="hidden" id="'+listing.Id+'_coordinates" value="'+((listing.Coords==null||listing.Coords=="")?"":listing.Coords)+'"><h2><a href="'+listing.Url+'">'+listing.Heading+'</a></h2><p class="time">'+listing.SubHeading+'</p><p><span class="orange_highlight">'+listing.ListingType+"</span>"+listing.Summary+'</p></div><div class="controls"><ul><li><a class="discover_link" href="'+listing.Url+'">More info</a></li>'+mapLink+bookLink+"</ul></div></li>"}function getStaySearchListingItemHtml(listing,date,nights){var image=new ImageGenImage();image.ImageUrl=listing.ImageUrl==null?"":listing.ImageUrl;image.Alt=listing.Heading==null?"":listing.Heading;image.Width="220";image.Height="152";image.Crop="resize";image.IsVideo=listing.ListingType=="Video Article";if(listing.Summary==null){listing.Summary=""}var rating=(listing.Rating==null||listing.Rating=="")?"":'<div class="rating star'+listing.Rating+'"></div>';var mapLink=(listing.Coords==null||listing.Coords=="")?"":'<li><a class="ignore map_link" href="#map">View on map</a></li>';var bookLink=(listing.BookingUrl==null||listing.BookingUrl=="")?"":'<li><a class="ignore" target="_blank" href="'+listing.BookingUrl+'">Book now</a></li>';var listItem='<li class="info"><div class="image"><a href="'+listing.Url+"?date="+date+"&nights="+nights+'">'+image.Render()+'</a></div><div class="info"><input type="hidden" id="'+listing.Id+'_coordinates" value="'+((listing.Coords==null||listing.Coords=="")?"":listing.Coords)+'"><div class="listing_heading"><h4><a href="'+listing.Url+"?date="+date+"&nights="+nights+'">'+listing.Heading+"</a></h4>"+rating+'</div><div class="listing_price">'+OutputPriceInfo(listing.Price)+'</div><div class="clear"></div><p><span class="pink_highlight">'+listing.ListingType+"</span>"+listing.Summary+'</p></div><div class="controls"><ul><li><a class="hotel_link" href="'+listing.Url+"?date="+date+"&nights="+nights+'">More info</a></li>'+mapLink+bookLink+"</ul></div></li>";return listItem}function OutputPriceInfo(price){var returnValue="";if(price==""||price==null){return"Direct Bookings Only"}var priceValue=parseFloat(price);if(!isNaN(priceValue)){returnValue+='<div class="price_hidden" style="display:none">'+price+"</div>";returnValue+="From <strong>&pound;"+price+"</strong>"}else{returnValue+="<strong>"+price+"</strong>"}return returnValue}function pagerLoadingOn(){$.blockUI({message:null,overlayCSS:{backgroundColor:"#ffffff",opacity:0.5}});candyBarLoader(true)}function pagerLoadingOff(){$.unblockUI();candyBarLoader(false)}function clickPager(searchService,id,searchSort,targetPage,maximumRows){var startRowIndex=((targetPage-1)*maximumRows);var promo_ids=$(id).find(".promo_ids").val();pagerLoadingOn();var serviceData="";var serviceUrl="";var stay_date;var stay_nights;if(searchService=="site-wide"){serviceData='{keyword: "'+$(id).find("input.keyword").val()+'",searchSort:'+searchSort+",startRowIndex: "+startRowIndex+",maximumRows: "+maximumRows+',skipIds: "'+promo_ids+'"}';serviceUrl="/webservices/TopRightSearch.asmx/SearchByKeyword"}else{if(searchService=="discover"){serviceData='{keyword: "'+$(id).find("input.keyword").val()+'",categories: "'+$(id).find("input.discover_categories").val()+'",filter: "'+$(id).find("input.discover_filter").val()+'",startDate: "'+$(id).find("input.start_date").val()+'",endDate: "'+$(id).find("input.end_date").val()+'",searchSort:'+searchSort+",startRowIndex: "+startRowIndex+",maximumRows: "+maximumRows+',skipIds: "'+promo_ids+'"}';serviceUrl="/webservices/TopRightSearch.asmx/DiscoverSearch"}else{stay_date=$(id).find("input.stay_date").val();stay_nights=$(id).find("input.stay_nights").val();serviceData='{keyword: "'+$(id).find("input.keyword").val()+'",place: "'+$(id).find("input.stay_place").val()+'",date: "'+stay_date+'",nights: "'+stay_nights+'",searchSort:'+searchSort+",startRowIndex: "+startRowIndex+",maximumRows: "+maximumRows+',skipIds: "'+promo_ids+'"}';serviceUrl="/webservices/TopRightSearch.asmx/StaySearch"}}$.ajax({type:"POST",data:serviceData,url:serviceUrl,contentType:"application/json; charset=utf-8",dataType:"json",success:function(response){var data=(typeof response.d)=="string"?eval("("+response.d+")"):response.d;var $listing_main=$(id).find("ul#listing_main");$listing_main.find("li").remove();for(var i=0;i<data.length;i++){if(searchService=="site-wide"){$listing_main.append(getSiteWideSearchListingItemHtml(data[i]))}else{if(searchService=="discover"){$listing_main.append(getDiscoverSearchListingItemHtml(data[i]))}else{$listing_main.append(getStaySearchListingItemHtml(data[i],stay_date,stay_nights))}}}var pageCount=parseInt($(id).find(".page_count").val(),10);var totalRecords=parseInt($(id).find(".total_records").val(),10);$(id).find(".page_index").val(targetPage);$(id).find(".header_links,.footer_links").find("ul li.search_info").text((startRowIndex+1)+" TO "+(Math.min(startRowIndex+maximumRows,totalRecords))+" OF "+totalRecords);if(targetPage<pageCount){$(id).find(".header_links a.next,.footer_links a.next").removeClass("hide");if(targetPage==1){$(id).find(".header_links a.prev,.footer_links a.prev").addClass("hide")}else{$(id).find(".header_links a.prev,.footer_links a.prev").removeClass("hide")}}else{$(id).find(".header_links a.next,.footer_links a.next").addClass("hide");$(id).find(".header_links a.prev,.footer_links a.prev").removeClass("hide")}listingsControls(id);var map=$(id).data("map");if(map!=null){map.InitMarkers()}pagerLoadingOff()},error:function(msg){pagerLoadingOff();alert(msg.responseText)}})}function createSearchPagingLinks(id,layerClass){var $pageLinkList=$(id).find("."+layerClass+" ul");if($pageLinkList.find("li").length==2){$pageLinkList.prepend('<li><a class="prev top ignore hide" href="#">&lt;&nbsp;Previous</a>');$pageLinkList.append('<li><a class="next top ignore" href="#">Next&nbsp;&gt;</a>');var searchService="";if($pageLinkList.hasClass("page-stay")){searchService="stay"}else{if($pageLinkList.hasClass("page-discover")){searchService="discover"}else{searchService="site-wide"}}$pageLinkList.find("a.next").click(function(e){var sortField=$(id).find("select.listing-sort-by option:selected").attr("value");var pageIndex=parseInt($(id).find(".page_index").val(),10);clickPager(searchService,id,sortField,pageIndex+1,10);e.preventDefault();return false});$pageLinkList.find("a.prev").click(function(e){var sortField=$(id).find("select.listing-sort-by option:selected").attr("value");var pageIndex=parseInt($(id).find(".page_index").val(),10);clickPager(searchService,id,sortField,pageIndex-1,10);e.preventDefault();return false})}}function initShowall(id){var fadeIn=function(data){data.removeClass("hide");data.fadeIn("fast")};var pageCount=parseInt($(id).find(".page_count").val(),10);if(pageCount>1){createSearchPagingLinks(id,"header_links");createSearchPagingLinks(id,"footer_links")}}function sidebarChangeDates(id){}function sidebarCategories(id){$(id).find("#category").change(function(){var isHomepage=$(this).closest(".sidebar_item").attr("id")=="homesearchpod";var selected=$(this).find("option:selected");var dateRangeContainer=$(id).find("#startdate").parent().parent();if(selected.hasClass("showTime")){if(isHomepage){dateRangeContainer.css("visibility","visible")}else{dateRangeContainer.show()}}else{if(isHomepage){dateRangeContainer.css("visibility","hidden")}else{dateRangeContainer.hide()}}})}function initComments(id,guid){var submitForm=function(e){var json='{"json":'+JSON.stringify($(id).serializeCommentForm())+"}";var ajaxLoad=$("#comments_add_"+guid).find("div.ajax-load");ajaxLoad.css($("#comments_add_"+guid).position());ajaxLoad.css("height",$("#comments_add_"+guid).height());ajaxLoad.css("width",$("#comments_add_"+guid).width());ajaxLoad.show();$(id).hide();$.ajax({type:"POST",url:"/webservices/Feedback.asmx/FeedbackCreate",data:json,contentType:"application/json; charset=utf-8",dataType:"json",success:function(msg){$(id).hide();$("#comments_add_"+guid).find("div.ajax-load").hide();$("#"+guid).find("div.thanks").show();var newLi="<li><blockquote>"+htmlEncode($(id).find("#feedbackComment").attr("value"))+'</blockquote><span class="name">'+htmlEncode($(id).find("#firstname").attr("value"))+"&nbsp;"+htmlEncode($(id).find("#surname").attr("value"))+"</span></li>";$("#comments_list_"+guid).find("ul#feedbacklist").prepend(newLi);var commentsHeader=$("#show_comment_"+guid);var newCommentNumber=(1+parseInt(commentsHeader.text().replace(/\D/g,""),10));commentsHeader.text("comments ("+newCommentNumber+")");$("#"+guid).find("div.thanks").fadeOut("slow");trackEvent("Comments","Posted",$("#"+guid).find(".title").text())}});return false};$(id).validate({submitHandler:submitForm,errorClass:"invalid"});$("#comments_list_"+guid).find("#showmorelink").live("click",function(e){var containingDiv=$(this).closest("div.comments_list");var commentsToRequest=containingDiv.find("#feedbacklist>li").length+10;var url=("/pages/read-comments.aspx?feedbackCount="+commentsToRequest+"&foreignid="+containingDiv.find("#foreignid").attr("value")+"&contenttypename="+containingDiv.find("#contenttypename").attr("value"));containingDiv.find("#feedbackplaceholder").load(url,function(data){if($(data).find("li").length==containingDiv.find("#totalfeedback").attr("value")){containingDiv.find("#showmorelink").hide()}$.scrollTo(containingDiv.find("#feedbackplaceholder ul li:nth-child("+(commentsToRequest-10)+")"),1000)});return false})}function injectCoakIntoPage(json,source){var data=jQuery.parseJSON(json);var contentImage="";var contentHeading="";var contentSubheading="";var contentUrl="";var foreignId="";var contentId="";var liId="";$.each(data,function(){contentImage=this.contentImage;contentHeading=this.contentHeading;contentSubheading=this.contentSubheading;contentUrl=this.contentUrl;foreignId=this.foreignId;contentId=this.contentId;liId="coak_"+foreignId+"_"+contentId});if($.find("ul.cutout li#"+liId).length===0){injectCoak(foreignId,contentUrl,contentHeading,contentImage,contentSubheading,liId);injectAnimate(source)}}function IsItemAlreadySaved(id){return $("ul.cutout li[id^="+id+"]").length>0}function markAsSaved(startElement){var parentItem=$(startElement).parents(".article,.top5_introbox,.hotel_box,.discover_article");addHighlight(parentItem);$(startElement).attr("value","SAVED");$(startElement).parents("form").addClass("saved")}function initCoak(id){var spanid=$(id).find("span.coakcreate");spanid.find("span, input").hover(function(){spanid.addClass("hovered")},function(){spanid.removeClass("hovered")});$(id).show();var token=id.substring(id.indexOf("_")+1);var coakId=$("#feedback_form_"+token).find("#foreignId").attr("value");if(IsItemAlreadySaved("coak_"+coakId)){markAsSaved($(id).find("input.coak_button"));return}$(id).find("input.coak_button, span.coak_icon").click(function(){if(IsItemAlreadySaved("coak_"+coakId)){return}var json='{"json":'+JSON.stringify($(id).serializeCoak(token))+"}";var _this=this;$.ajax({type:"POST",url:"/webservices/CutOutAndKeep.asmx/CutOutAndKeepCreateGuid",data:json,contentType:"application/json; charset=utf-8",dataType:"json",success:function(msg){if($.cookie("vm_coak")===null){var options={path:"/",expires:90};$.cookie("vm_coak",msg.d,options);coakOffset=json.indexOf("cutOutAndKeepGuid");json=json.substr(0,coakOffset+20)+msg.d+json.substr(coakOffset+20,json.length-(coakOffset+20))}trackEvent("Saved content","Saved",$("#"+token).find(".title").text());$.ajax({type:"POST",url:"/webservices/CutOutAndKeep.asmx/CutOutAndKeepReadGuid",data:json,contentType:"application/json; charset=utf-8",dataType:"json",success:function(msg){injectCoakIntoPage(msg.d,_this)},error:function(request,status,error){}})},error:function(request,status,error){}})})}function initCoakPage(id){$(id).find("a.clear_coak_all").click(function(e){e.preventDefault();if($.cookie("vm_coak")===null){return false}var jsonObj={guid:$.cookie("vm_coak")};var json='{"json":'+JSON.stringify(jsonObj)+"}";$.ajax({type:"POST",url:"/webservices/CutOutAndKeep.asmx/RemoveAll",data:json,contentType:"application/json; charset=utf-8",dataType:"json",success:function(msg){$(id).find("ul.listings_results").remove();$(id).find("div.header_links").remove();$(id).find("p").text("Your list has been cleared.");var itemCountLength=0;$("ul.cutout").find("li").remove();flashCoakNumber(itemCountLength);updateCoakNumber(itemCountLength)},error:function(request,status,error){}})});$(id).find("a.clear_coak_all").confirm({dialogShow:"fadeIn",msg:"Are you sure?  "});$(id).find("a.clear_coak").click(function(e){e.preventDefault();if($.cookie("vm_coak")===null){return false}var contentId=parseInt($(this).attr("href").split("=")[1],10);var jsonObj={guid:$.cookie("vm_coak"),contentId:contentId};var coakLi=$(this).parents("li.info");var foreignId=coakLi.attr("id").substr(7);var json='{"json":'+JSON.stringify(jsonObj)+"}";$.ajax({type:"POST",url:"/webservices/CutOutAndKeep.asmx/Remove",data:json,contentType:"application/json; charset=utf-8",dataType:"json",success:function(msg){$(coakLi).fadeOut("slow",function(){$(this).remove()});$("#foreignId[value='"+foreignId+"']").each(function(){var coakButton=$(this).parents("div.page").find("input.coak_button");$(coakButton).attr("value","SAVE");$(coakButton).parents("form").removeClass("saved");$(coakButton).parents(".article,.top5_introbox,.hotel_box,.discover_article").removeClass("cutting")});var itemCountLength=getCoakCount()-1;flashCoakNumber(itemCountLength);updateCoakNumber(itemCountLength);$("ul.cutout").find("li[id$="+contentId+"]").remove();if(itemCountLength>0){var itemCountText=(itemCountLength==1)?"1 item":itemCountLength+" items";$(id).find("div.header_links").find("ul:first li:first").text(itemCountText)}else{$(id).find("div.header_links").remove();$(id).find("p").text("Your list is empty.")}},error:function(request,status,error){}})})}function addHighlight(parentItem){parentItem.addClass("cutting")}function removeHighlight(){$(".cutting").delay(1500).queue(function(){$(this).addClass("cutting1");$(this).dequeue()}).delay(75).queue(function(){$(this).addClass("cutting2");$(this).dequeue()}).delay(75).queue(function(){$(this).addClass("cutting3");$(this).dequeue()}).delay(75).queue(function(){$(this).removeClass("cutting cutting1 cutting2 cutting3");$(this).dequeue()})}function getCoakCount(){return $("ul.cutout>li").length}var injectAnimateTimeOut=null;function injectAnimate(startElement){if(timeoutID!==null){clearTimeout(injectAnimateTimeOut);injectAnimateTimeout=setTimeout(function(){injectAnimate(startElement)},500);return}markAsSaved(startElement);var endPosition=$("div#controls_coak");var initial=$(startElement).offset();var add_position_style="top:"+initial.top+"px; left:"+initial.left+"px";if($("#addCoak").length===0){$("#container").before('<div class="coak_icon" id="addCoak" style="'+add_position_style+'"></div>')}else{$("#addCoak").css({top:initial.top+"px",left:initial.left+"px"})}var add_element=$("#addCoak");var bezier_params=new $.path.bezier({start:{x:add_element.offset().left,y:add_element.offset().top,angle:45,length:0.3},end:{x:endPosition.offset().left+5,y:endPosition.offset().top+10,angle:-45,length:0.3}});add_element.animate({path:bezier_params},600,"swing",function(){add_element.fadeOut().remove();var itemCountLength=getCoakCount();flashCoakNumber(itemCountLength);removeHighlight()})}function initCoakShareBox(id){$(id).find(".create_coak_link").click(function(e){var _this=this;e.preventDefault();if($.cookie("vm_coak")===null){return false}var jsonObj={guid:$.cookie("vm_coak"),contentId:0};var json='{"json":'+JSON.stringify(jsonObj)+"}";$.ajax({type:"POST",url:"/webservices/CutOutAndKeep.asmx/Clone",data:json,contentType:"application/json; charset=utf-8",dataType:"json",success:function(msg){var share_url="http://"+window.location.hostname+"/saved-content/"+msg.d+".aspx";$(id).find(".coak_url").val(share_url);$(id).find(".coak_share_url").show();$(id).find(".coak_generate").hide();var clip=new ZeroClipboard.Client();clip.setText(share_url);var clipCont=$(id).find(".coak_share_url").find(".copy_button_container");var clipButton=$(id).find(".coak_share_url").find(".coak_copy");clipButton.click(function(e){e.preventDefault()});clip.glue(clipButton.get(0),clipCont.get(0));clip.setCSSEffects(true);clip.setHandCursor(true);clip.addEventListener("complete",function(client,text){$(id).find(".coak_share_url").stop().fadeOut(500).fadeIn(500).find(".coak_copy").empty().html("Copied")})},error:function(request,status,error){}})})}function flashCoakNumber(itemCountLength){var found=$("div#controls_coak h5").find("span#countFlash");if(found.length===0){$("div#controls_coak h5 a").before('<span id="countFlash">'+itemCountLength+"</span>")}found.text(itemCountLength);var $countFlash=$("span#countFlash");$countFlash.css("fontSize","11px");$countFlash.css("display","inline");$countFlash.css("zIndex","99");$countFlash.css("color","#fff");$countFlash.css("backgroundColor","#008ab0");$countFlash.css("position","absolute");$countFlash.css("textAlign","center");$countFlash.css("width","35px");$countFlash.css("height","22px");$countFlash.css("paddingTop","8px");$countFlash.css("fontWeight","bold");$countFlash.delay(1500).fadeOut(500)}function injectCoak(foreignId,contentUrl,contentHeading,contentImage,contentSubheading,liId){var cutoutItems=$("ul.cutout>li");if(cutoutItems.length>9){var itemToHide=$.find("ul.cutout li:nth-child(10)");if(itemToHide!==null&&itemToHide.length==1){$(itemToHide).hide()}}var html='<li class="clearfix" id="'+liId+'"><a href="'+contentUrl+'"><img width="60" height="42" class="fl_l" alt="'+contentHeading+'" src="'+contentImage+'" /></a><div class="cutitem"><h6><a href="'+contentUrl+'">'+contentHeading+"</a></h6><p>"+contentSubheading+"</p></div></li>";$(html).prependTo("ul.cutout");var itemCountLength=cutoutItems.length+1;updateCoakNumber(itemCountLength)}function updateCoakNumber(itemCount){$("span#itemCount").html((itemCount==1)?"&nbsp;1 item":"&nbsp;"+itemCount+" items")}function initSort(id){var sort=function(containerId,sortDropDown){var searchService="";if(sortDropDown.hasClass("sort-stay")){searchService="stay"}else{if(sortDropDown.hasClass("sort-discover")){searchService="discover"}else{searchService="site-wide"}}var sortField=sortDropDown.find("option:selected").attr("value");clickPager(searchService,containerId,sortField,1,10)};$(id).find("div.sort_by").show();$(id).find("select.listing-sort-by").change(function(){sort(id,$(this))})}function initShowCommentsLink(commentsLinkId,id){$("#comments_add_"+id).hide();$("#comments_list_"+id).hide();var commentCount=$("#comments_list_"+id).find("#totalfeedback").attr("value");$(commentsLinkId).text(commentCount==1?"Comment (1)":"Comments ("+commentCount+")");$(commentsLinkId).click(function(e){e.preventDefault();$("#comments_add_"+id).slideDown("fast");$("#comments_list_"+id).slideDown("fast");$.scrollTo($("#comments_add_"+id),1000,{offset:{top:-100,left:0}});trackEvent("Comments","Shown",$("#"+id).find(".title").text());return false})}function initBuzzPod(id){var bp=new BuzzPod(id,BUZZ_URL);bp.Initialise(bp.Start)}function trackAdverts(id){var ads=$(id).find("div.advert_list");if(ads.length>0){$(ads).find("li").each(function(){var adName=$(this).find("input[type=hidden]").attr("value");trackEvent("Adverts","Viewed",adName);$(this).find("a").click(function(){trackEvent("Adverts","Clicked",adName)})})}}function trackCampaigns(campaign){if($(campaign).length>0){var campaignName=$(campaign).find("input[type=hidden]").attr("value");$(campaign).find("a").click(function(){trackEvent("Campaigns","Banner Clicked",campaignName)})}}function trackProductDecoration(id){if($(id).length>0){$(id).find("input[type=hidden].productDecoration").each(function(){trackEvent("Promotion",$(this).attr("value"),$(this).find(".title").text())})}}function addThisInit(id){}function addProperty(o,k,v){if(o[k]){if(!o[k].push){o[k]=[o[k]]}o[k].push(v||"")}else{o[k]=v||""}}String.prototype.startsWith=function(str){return(this.indexOf(str)===0)};$.fn.serializeObject=function(){var o={};var a=this.serializeArray();$.each(a,function(){if(o[this.name]){if(!o[this.name].push){o[this.name]=[o[this.name]]}o[this.name].push(this.value||"")}else{o[this.name]=this.value||""}});return o};$.fn.serializeNewsletter=function(){var o={};var optin="false";if($("#optin",this).length>0&&$("#optin",this).attr("checked")){optin="true"}var thirdPartyoptin="false";if($("#thirdPartyoptin",this).length>0&&$("#thirdPartyoptin",this).attr("checked")){thirdPartyoptin="true"}var answer=($("#answer",this).length>0)?$(this).find("#answer").attr("value"):"notpresent";addProperty(o,"forename",$(this).find("#forename").attr("value"));addProperty(o,"surname",$(this).find("#surname").attr("value"));addProperty(o,"email",$(this).find("#email").attr("value"));addProperty(o,"postcode",$(this).find("#postcode").attr("value"));addProperty(o,"answer",answer);if($(this).find("#is_sweepstake").val()!="true"){addProperty(o,"country",$(this).find("#country>option:selected").text())}else{addProperty(o,"country",$(this).find("#country").val())}addProperty(o,"optin",optin);addProperty(o,"thirdPartyoptin",thirdPartyoptin);addProperty(o,"source",$(this).find("#source").attr("value"));addProperty(o,"telephone",$(this).find("#telephone").attr("value"));$(this).find("input[id^=question_]").each(function(){var q={};addProperty(q,"questionCode",$('label[for="'+$(this).attr("id")+'"]').text());addProperty(q,"questionAnswer",$(this).attr("checked")?"1":"0");addProperty(o,"questions",q)});return o};$.fn.serializeCommentForm=function(){var o={};addProperty(o,"firstname",$(this).find("#firstname").attr("value"));addProperty(o,"surname",$(this).find("#surname").attr("value"));addProperty(o,"feedbackComment",$(this).find("#feedbackComment").attr("value"));addProperty(o,"foreignId",$(this).find("#foreignId").attr("value"));addProperty(o,"contentTypeName",$(this).find("#contentTypeName").attr("value"));addProperty(o,"ipAddress",$(this).find("#ipAddress").attr("value"));return o};$.fn.serializeCompetition=function(){var o={};addProperty(o,"forename",$(this).find("#forename").attr("value"));addProperty(o,"surname",$(this).find("#surname").attr("value"));addProperty(o,"email",$(this).find("#email").attr("value"));addProperty(o,"postcode",$(this).find("#postcode").attr("value"));addProperty(o,"country",$(this).find("#country>option:selected").text());$(this).find("input[id^=question_]").each(function(){var q={};addProperty(q,"questionCode",$('label[for="'+$(this).attr("id")+'"]').text());addProperty(q,"questionAnswer",$(this).attr("checked")?"1":"0");addProperty(o,"questions",q)});return o};$.fn.serializeCoak=function(id){var o={};addProperty(o,"cutOutAndKeepGuid",$.cookie("vm_coak"));addProperty(o,"foreignId",$("#feedback_form_"+id).find("#foreignId").attr("value"));addProperty(o,"contentTypeName",$("#feedback_form_"+id).find("#contentTypeName").attr("value"));return o};$.fn.outerHTML=function(){return $("<div>").append(this.eq(0).clone()).html()};function htmlEncode(value){return $("<div/>").text(value).html()}function htmlDecode(value){return $("<div/>").html(value).text()}var hexDigits=new Array("0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f");function rgb2hex(rgb){rgb=rgb.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);return"#"+hex(rgb[1])+hex(rgb[2])+hex(rgb[3])}function hex(x){return isNaN(x)?"00":hexDigits[(x-x%16)/16]+hexDigits[x%16]}$.fn.getHexBackgroundColor=function(){return rgb2hex($(this).css("backgroundColor"))};var vm={global:{infiniteScroll:function(){infiniteScroll()},headerFadeInOut:function(){headerFadeInOut()},headerControls:function(){headerControls()},newWindowLinks:function(){newWindowLinks()},printThis:function(){printThis()},theBuzz:function(){theBuzz()},getPageId:function(data){return $(data).attr("id")},removeDeletedCoak:function(){removeDeletedCoak()},location:""},plugins:{carousel:function(id){return $(id).length!==0?carousel(id):false},hotelGallery:function(id){return $(id).length!==0?hotelGallery(id):false},listings:function(){return $(id).length!==0?listings(id):false},sidebarAppend:function(){return $(id).length!==0?sidebarAppend(id):false},sidebarSignup:function(id){return $(id).length!==0?sidebarSignup(id):false},sidebarAccordion:function(){return $(id).length!==0?sidebarAccordion(id):false},listingsMap:function(){return $(id).length!==0?listingsMap(id):false},newsLetterInit:function(id){return $(id).length!==0?newsLetterInit(id):false},competitionInit:function(id){return $(id).length!==0?competitionInit(id):false},staySearchListingsInit:function(id){if($(id).length>0){initSort(id);initShowall(id);var mapOptions={icon:"/assets/images/map/marker_stay.png",highlightColour:"#f7aacd"};listingsMap(id,mapOptions);listingsControls(id);listingLinkInit(id)}},staySearchInit:function(id){if($(id).length>0){$(id).find(".date-pick").datePicker().bind("dpClosed",function(){var newDate=Date.fromString(this.value);var today=new Date();if(newDate.getDate()==today.getDate()&&newDate.getMonth()==today.getMonth()&&newDate.getYear()==today.getYear()){this.value="Today"}});findUserLocation(id)}},discoverListingsInit:function(id){if($(id).length>0){var mapOptions={icon:"/assets/images/map/marker_discover.png",highlightColour:"#fbc484"};listingsMap(id,mapOptions);listingsControls(id);initShowall(id);initSort(id);listingLinkInit(id)}},discoverSidebar:function(id){if($(id).length!==0){sidebarAccordion(id);sidebarCategories(id);$(id).find("#category").change();$(id).find(".date-pick").datePicker().bind("dpClosed",function(){})}},feedback:function(id,guid){if($(id).length>0){initComments(id,guid)}},search:function(id){if($(id).length!==0){listingsControls(id);initShowall(id);initSort(id)}},coak:function(id){if($(id).length>0){initCoak(id)}},showCommentsLink:function(commentsLinkId,id){if($(commentsLinkId).length>0){initShowCommentsLink(commentsLinkId,id)}},hotelDetail:function(id){return $(id).length>0?initHotelDetail(id):false},discoverDetail:function(id){return $(id).length>0?initDiscoverDetail(id):false},coakListing:function(id){if($(id).length>0){listingsControls(id);initCoakPage(id);var mapOptions={highlightColour:"#fbc484",baseColour:"#F99D32",autoGeneratePinsAndColours:true};listingsMap(id,mapOptions)}},addThis:function(id){if($(id).length>0){addThisInit(id)}},bindSideForm:function(id){bindSideform(id)},commentsAdd:function(id){commentsAdd(id)},trackAdverts:function(id){trackAdverts(id)},trackCampaigns:function(id){trackCampaigns(id)},trackProductDecoration:function(id){trackProductDecoration(id)},initCoakShareBox:function(id){if($(id).length>0){initCoakShareBox(id)}}}};function init_plugins(id){vm.plugins.bindSideForm("#"+id);vm.plugins.sidebarSignup("#"+id);vm.plugins.commentsAdd("#"+id);vm.plugins.trackAdverts("#"+id);vm.plugins.trackProductDecoration("#"+id);vm.plugins.carousel("#carousel_"+id);vm.plugins.hotelGallery("#hotelGallery_"+id);vm.plugins.newsLetterInit("#register_"+id);vm.plugins.competitionInit("#competition_"+id);vm.plugins.staySearchListingsInit("#staylistings_"+id);vm.plugins.staySearchInit("#searchstay_"+id);vm.plugins.discoverListingsInit("#discoverlistings_"+id);vm.plugins.discoverSidebar("#discoversidebar_"+id);vm.plugins.feedback("#feedback_form_"+id,id);vm.plugins.search("#searchlistings_"+id);vm.plugins.coak("#coak_"+id);vm.plugins.showCommentsLink("#show_comment_"+id,id);vm.plugins.hotelDetail("#hotel_data_"+id);vm.plugins.discoverDetail("#discover_infocol_"+id);vm.plugins.coakListing("#coak_listing_"+id);vm.plugins.addThis("#"+id);vm.plugins.trackCampaigns("#campaign_"+id);vm.plugins.initCoakShareBox("#coak_share_box_"+id);initHomepageTabs("#"+id)}jQuery.validator.methods.oldRequired=jQuery.validator.methods.required;jQuery.validator.addMethod("required",function(value,element,param){if(value===$(element).prev().text()){return false}return jQuery.validator.methods.oldRequired.call(this,value,element,param)},jQuery.validator.messages.required);function checkForDirectLink(){var url=$.address.value();if(url.length>1){ajaxRender(null,url)}}function fixHeaderFooterLinks(){$(".footer_links li:first-child,.header_links li:first-child").addClass("first-child");$(".footer_links li:last-child,.header_links li:last-child").addClass("last-child")}function tooltip(){xOffset=15;$("#h_controls h5 a").live("mouseover mouseout mousemove",function(e){if(e.type=="mouseover"){$("body").append('<div id="tooltip"><p>'+$(this).text()+"</p></div>").css("top",(e.pageY)+"px").css("left",(e.pageX+xOffset)+"px").fadeIn("fast")}else{if(e.type=="mouseout"){$("#tooltip").remove()}else{if(e.type=="mousemove"){$("#tooltip").css("top",(e.pageY)+"px").css("left",(e.pageX+xOffset)+"px")}}}})}function initHomepageTabs(id){var $homesearchpod=$(id).find(".homesearchpod");if($homesearchpod.length>0){$homesearchpod.each(function(){$currenthomepod=$(this);var $forms=$currenthomepod.find("form");if($forms.length==2){var $tabstayform=$($forms[0]);var $tabwhatsonform=$($forms[1]);var $tabstay=$currenthomepod.find("#homesearchtab-stay");var $tabwhatson=$currenthomepod.find("#homesearchtab-whatson");$tabstay.find("a").click(function(event){if(!$(this).hasClass("on")){$tabstay.addClass("on");$tabwhatson.removeClass("on");$homesearchpod.removeClass("orange_side");$homesearchpod.addClass("pink_side");$tabstayform.attr("class","sideform");$tabwhatsonform.attr("class","sideform hide")}event.stopPropagation();return false});$tabwhatson.find("a").click(function(event){if(!$(this).hasClass("on")){$tabwhatson.addClass("on");$tabstay.removeClass("on");$homesearchpod.removeClass("pink_side");$homesearchpod.addClass("orange_side");$tabstayform.attr("class","sideform hide");$tabwhatsonform.attr("class","sideform")}event.stopPropagation();return false})}})}}$(document).ready(function(){var id=vm.global.getPageId($("div.page"));var $addThisLink=$("div#"+id+" a.addthis_button");if($addThisLink.length>0){addthis.button($addThisLink[0],{},{url:window.location.href})}init_plugins(id);removeDeletedCoak();checkForDirectLink();fixHeaderFooterLinks();tooltip();if(iPhoneCheck()){touchEvents(touchStart,touchEnd)}});$(window).load(function(){vm.global.headerControls();vm.global.theBuzz();vm.global.newWindowLinks();vm.global.printThis();if(!IE6){vm.global.headerFadeInOut();vm.global.infiniteScroll()}ZeroClipboard.setMoviePath("http://"+window.location.hostname+"/assets/swf/ZeroClipboard.swf")});var ZeroClipboard={version:"1.0.7",clients:{},moviePath:"ZeroClipboard.swf",nextId:1,$:function(thingy){if(typeof(thingy)=="string"){thingy=document.getElementById(thingy)}if(!thingy.addClass){thingy.hide=function(){this.style.display="none"};thingy.show=function(){this.style.display=""};thingy.addClass=function(name){this.removeClass(name);this.className+=" "+name};thingy.removeClass=function(name){var classes=this.className.split(/\s+/);var idx=-1;for(var k=0;k<classes.length;k++){if(classes[k]==name){idx=k;k=classes.length}}if(idx>-1){classes.splice(idx,1);this.className=classes.join(" ")}return this};thingy.hasClass=function(name){return !!this.className.match(new RegExp("\\s*"+name+"\\s*"))}}return thingy},setMoviePath:function(path){this.moviePath=path},dispatch:function(id,eventName,args){var client=this.clients[id];if(client){client.receiveEvent(eventName,args)}},register:function(id,client){this.clients[id]=client},getDOMObjectPosition:function(obj,stopObj){var info={left:0,top:0,width:obj.width?obj.width:obj.offsetWidth,height:obj.height?obj.height:obj.offsetHeight};while(obj&&(obj!=stopObj)){info.left+=obj.offsetLeft;info.top+=obj.offsetTop;obj=obj.offsetParent}return info},Client:function(elem){this.handlers={};this.id=ZeroClipboard.nextId++;this.movieId="ZeroClipboardMovie_"+this.id;ZeroClipboard.register(this.id,this);if(elem){this.glue(elem)}}};ZeroClipboard.Client.prototype={id:0,ready:false,movie:null,clipText:"",handCursorEnabled:true,cssEffects:true,handlers:null,glue:function(elem,appendElem,stylesToAdd){this.domElement=ZeroClipboard.$(elem);var zIndex=99;if(this.domElement.style.zIndex){zIndex=parseInt(this.domElement.style.zIndex,10)+1}if(typeof(appendElem)=="string"){appendElem=ZeroClipboard.$(appendElem)}else{if(typeof(appendElem)=="undefined"){appendElem=document.getElementsByTagName("body")[0]}}var box=ZeroClipboard.getDOMObjectPosition(this.domElement,appendElem);this.div=document.createElement("div");var style=this.div.style;style.position="absolute";style.left=""+box.left+"px";style.top=""+box.top+"px";style.width=""+box.width+"px";style.height=""+box.height+"px";style.zIndex=zIndex;if(typeof(stylesToAdd)=="object"){for(addedStyle in stylesToAdd){style[addedStyle]=stylesToAdd[addedStyle]}}appendElem.appendChild(this.div);this.div.innerHTML=this.getHTML(box.width,box.height)},getHTML:function(width,height){var html="";var flashvars="id="+this.id+"&width="+width+"&height="+height;if(navigator.userAgent.match(/MSIE/)){var protocol=location.href.match(/^https/i)?"https://":"http://";html+='<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="'+protocol+'download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="'+width+'" height="'+height+'" id="'+this.movieId+'" align="middle"><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="false" /><param name="movie" value="'+ZeroClipboard.moviePath+'" /><param name="loop" value="false" /><param name="menu" value="false" /><param name="quality" value="best" /><param name="bgcolor" value="#ffffff" /><param name="flashvars" value="'+flashvars+'"/><param name="wmode" value="transparent"/></object>'}else{html+='<embed id="'+this.movieId+'" src="'+ZeroClipboard.moviePath+'" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="'+width+'" height="'+height+'" name="'+this.movieId+'" align="middle" allowScriptAccess="always" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="'+flashvars+'" wmode="transparent" />'}return html},hide:function(){if(this.div){this.div.style.left="-2000px"}},show:function(){this.reposition()},destroy:function(){if(this.domElement&&this.div){this.hide();this.div.innerHTML="";var body=document.getElementsByTagName("body")[0];try{body.removeChild(this.div)}catch(e){}this.domElement=null;this.div=null}},reposition:function(elem){if(elem){this.domElement=ZeroClipboard.$(elem);if(!this.domElement){this.hide()}}if(this.domElement&&this.div){var box=ZeroClipboard.getDOMObjectPosition(this.domElement);var style=this.div.style;style.left=""+box.left+"px";style.top=""+box.top+"px"}},setText:function(newText){this.clipText=newText;if(this.ready){this.movie.setText(newText)}},addEventListener:function(eventName,func){eventName=eventName.toString().toLowerCase().replace(/^on/,"");if(!this.handlers[eventName]){this.handlers[eventName]=[]}this.handlers[eventName].push(func)},setHandCursor:function(enabled){this.handCursorEnabled=enabled;if(this.ready){this.movie.setHandCursor(enabled)}},setCSSEffects:function(enabled){this.cssEffects=!!enabled},receiveEvent:function(eventName,args){eventName=eventName.toString().toLowerCase().replace(/^on/,"");switch(eventName){case"load":this.movie=document.getElementById(this.movieId);if(!this.movie){var self=this;setTimeout(function(){self.receiveEvent("load",null)},1);return}if(!this.ready&&navigator.userAgent.match(/Firefox/)&&navigator.userAgent.match(/Windows/)){var self=this;setTimeout(function(){self.receiveEvent("load",null)},100);this.ready=true;return}this.ready=true;this.movie.setText(this.clipText);this.movie.setHandCursor(this.handCursorEnabled);break;case"mouseover":if(this.domElement&&this.cssEffects){this.domElement.addClass("hover");if(this.recoverActive){this.domElement.addClass("active")}}break;case"mouseout":if(this.domElement&&this.cssEffects){this.recoverActive=false;if(this.domElement.hasClass("active")){this.domElement.removeClass("active");this.recoverActive=true}this.domElement.removeClass("hover")}break;case"mousedown":if(this.domElement&&this.cssEffects){this.domElement.addClass("active")}break;case"mouseup":if(this.domElement&&this.cssEffects){this.domElement.removeClass("active");this.recoverActive=false}break}if(this.handlers[eventName]){for(var idx=0,len=this.handlers[eventName].length;idx<len;idx++){var func=this.handlers[eventName][idx];if(typeof(func)=="function"){func(this,args)}else{if((typeof(func)=="object")&&(func.length==2)){func[0][func[1]](this,args)}else{if(typeof(func)=="string"){window[func](this,args)}}}}}}};/*
 * jQuery blockUI plugin
 * Version 2.37 (29-JAN-2011)
 * @requires jQuery v1.2.3 or later
 *
 * Examples at: http://malsup.com/jquery/block/
 * Copyright (c) 2007-2010 M. Alsup
 * Dual licensed under the MIT and GPL licenses:
 * http://www.opensource.org/licenses/mit-license.php
 * http://www.gnu.org/licenses/gpl.html
 *
 * Thanks to Amir-Hossein Sobhi for some excellent contributions!
 */
(function($){if(/1\.(0|1|2)\.(0|1|2)/.test($.fn.jquery)||/^1.1/.test($.fn.jquery)){alert("blockUI requires jQuery v1.2.3 or later!  You are using v"+$.fn.jquery);return}$.fn._fadeIn=$.fn.fadeIn;var noOp=function(){};var mode=document.documentMode||0;var setExpr=$.browser.msie&&(($.browser.version<8&&!mode)||mode<8);var ie6=$.browser.msie&&/MSIE 6.0/.test(navigator.userAgent)&&!mode;$.blockUI=function(opts){install(window,opts)};$.unblockUI=function(opts){remove(window,opts)};$.growlUI=function(title,message,timeout,onClose){var $m=$('<div class="growlUI"></div>');if(title){$m.append("<h1>"+title+"</h1>")}if(message){$m.append("<h2>"+message+"</h2>")}if(timeout==undefined){timeout=3000}$.blockUI({message:$m,fadeIn:700,fadeOut:1000,centerY:false,timeout:timeout,showOverlay:false,onUnblock:onClose,css:$.blockUI.defaults.growlCSS})};$.fn.block=function(opts){return this.unblock({fadeOut:0}).each(function(){if($.css(this,"position")=="static"){this.style.position="relative"}if($.browser.msie){this.style.zoom=1}install(this,opts)})};$.fn.unblock=function(opts){return this.each(function(){remove(this,opts)})};$.blockUI.version=2.37;$.blockUI.defaults={message:"<h1>Please wait...</h1>",title:null,draggable:true,theme:false,css:{padding:0,margin:0,width:"30%",top:"40%",left:"35%",textAlign:"center",color:"#000",border:"3px solid #aaa",backgroundColor:"#fff",cursor:"wait"},themedCSS:{width:"30%",top:"40%",left:"35%"},overlayCSS:{backgroundColor:"#000",opacity:0.6,cursor:"wait"},growlCSS:{width:"350px",top:"10px",left:"",right:"10px",border:"none",padding:"5px",opacity:0.6,cursor:"default",color:"#fff",backgroundColor:"#000","-webkit-border-radius":"10px","-moz-border-radius":"10px","border-radius":"10px"},iframeSrc:/^https/i.test(window.location.href||"")?"javascript:false":"about:blank",forceIframe:false,baseZ:1000,centerX:true,centerY:true,allowBodyStretch:true,bindEvents:true,constrainTabKey:true,fadeIn:200,fadeOut:400,timeout:0,showOverlay:true,focusInput:true,applyPlatformOpacityRules:true,onBlock:null,onUnblock:null,quirksmodeOffsetHack:4,blockMsgClass:"blockMsg"};var pageBlock=null;var pageBlockEls=[];function install(el,opts){var full=(el==window);var msg=opts&&opts.message!==undefined?opts.message:undefined;opts=$.extend({},$.blockUI.defaults,opts||{});opts.overlayCSS=$.extend({},$.blockUI.defaults.overlayCSS,opts.overlayCSS||{});var css=$.extend({},$.blockUI.defaults.css,opts.css||{});var themedCSS=$.extend({},$.blockUI.defaults.themedCSS,opts.themedCSS||{});msg=msg===undefined?opts.message:msg;if(full&&pageBlock){remove(window,{fadeOut:0})}if(msg&&typeof msg!="string"&&(msg.parentNode||msg.jquery)){var node=msg.jquery?msg[0]:msg;var data={};$(el).data("blockUI.history",data);data.el=node;data.parent=node.parentNode;data.display=node.style.display;data.position=node.style.position;if(data.parent){data.parent.removeChild(node)}}var z=opts.baseZ;var lyr1=($.browser.msie||opts.forceIframe)?$('<iframe class="blockUI" style="z-index:'+(z++)+';display:none;border:none;margin:0;padding:0;position:absolute;width:100%;height:100%;top:0;left:0" src="'+opts.iframeSrc+'"></iframe>'):$('<div class="blockUI" style="display:none"></div>');var lyr2=$('<div class="blockUI blockOverlay" style="z-index:'+(z++)+';display:none;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0"></div>');var lyr3,s;if(opts.theme&&full){s='<div class="blockUI '+opts.blockMsgClass+' blockPage ui-dialog ui-widget ui-corner-all" style="z-index:'+z+';display:none;position:fixed"><div class="ui-widget-header ui-dialog-titlebar ui-corner-all blockTitle">'+(opts.title||"&nbsp;")+'</div><div class="ui-widget-content ui-dialog-content"></div></div>'}else{if(opts.theme){s='<div class="blockUI '+opts.blockMsgClass+' blockElement ui-dialog ui-widget ui-corner-all" style="z-index:'+z+';display:none;position:absolute"><div class="ui-widget-header ui-dialog-titlebar ui-corner-all blockTitle">'+(opts.title||"&nbsp;")+'</div><div class="ui-widget-content ui-dialog-content"></div></div>'}else{if(full){s='<div class="blockUI '+opts.blockMsgClass+' blockPage" style="z-index:'+z+';display:none;position:fixed"></div>'}else{s='<div class="blockUI '+opts.blockMsgClass+' blockElement" style="z-index:'+z+';display:none;position:absolute"></div>'}}}lyr3=$(s);if(msg){if(opts.theme){lyr3.css(themedCSS);lyr3.addClass("ui-widget-content")}else{lyr3.css(css)}}if(!opts.applyPlatformOpacityRules||!($.browser.mozilla&&/Linux/.test(navigator.platform))){lyr2.css(opts.overlayCSS)}lyr2.css("position",full?"fixed":"absolute");if($.browser.msie||opts.forceIframe){lyr1.css("opacity",0)}var layers=[lyr1,lyr2,lyr3],$par=full?$("body"):$(el);$.each(layers,function(){this.appendTo($par)});if(opts.theme&&opts.draggable&&$.fn.draggable){lyr3.draggable({handle:".ui-dialog-titlebar",cancel:"li"})}var expr=setExpr&&(!$.boxModel||$("object,embed",full?null:el).length>0);if(ie6||expr){if(full&&opts.allowBodyStretch&&$.boxModel){$("html,body").css("height","100%")}if((ie6||!$.boxModel)&&!full){var t=sz(el,"borderTopWidth"),l=sz(el,"borderLeftWidth");var fixT=t?"(0 - "+t+")":0;var fixL=l?"(0 - "+l+")":0}$.each([lyr1,lyr2,lyr3],function(i,o){var s=o[0].style;s.position="absolute";if(i<2){full?s.setExpression("height","Math.max(document.body.scrollHeight, document.body.offsetHeight) - (jQuery.boxModel?0:"+opts.quirksmodeOffsetHack+') + "px"'):s.setExpression("height",'this.parentNode.offsetHeight + "px"');full?s.setExpression("width",'jQuery.boxModel && document.documentElement.clientWidth || document.body.clientWidth + "px"'):s.setExpression("width",'this.parentNode.offsetWidth + "px"');if(fixL){s.setExpression("left",fixL)}if(fixT){s.setExpression("top",fixT)}}else{if(opts.centerY){if(full){s.setExpression("top",'(document.documentElement.clientHeight || document.body.clientHeight) / 2 - (this.offsetHeight / 2) + (blah = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "px"')}s.marginTop=0}else{if(!opts.centerY&&full){var top=(opts.css&&opts.css.top)?parseInt(opts.css.top):0;var expression="((document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "+top+') + "px"';s.setExpression("top",expression)}}}})}if(msg){if(opts.theme){lyr3.find(".ui-widget-content").append(msg)}else{lyr3.append(msg)}if(msg.jquery||msg.nodeType){$(msg).show()}}if(($.browser.msie||opts.forceIframe)&&opts.showOverlay){lyr1.show()}if(opts.fadeIn){var cb=opts.onBlock?opts.onBlock:noOp;var cb1=(opts.showOverlay&&!msg)?cb:noOp;var cb2=msg?cb:noOp;if(opts.showOverlay){lyr2._fadeIn(opts.fadeIn,cb1)}if(msg){lyr3._fadeIn(opts.fadeIn,cb2)}}else{if(opts.showOverlay){lyr2.show()}if(msg){lyr3.show()}if(opts.onBlock){opts.onBlock()}}bind(1,el,opts);if(full){pageBlock=lyr3[0];pageBlockEls=$(":input:enabled:visible",pageBlock);if(opts.focusInput){setTimeout(focus,20)}}else{center(lyr3[0],opts.centerX,opts.centerY)}if(opts.timeout){var to=setTimeout(function(){full?$.unblockUI(opts):$(el).unblock(opts)},opts.timeout);$(el).data("blockUI.timeout",to)}}function remove(el,opts){var full=(el==window);var $el=$(el);var data=$el.data("blockUI.history");var to=$el.data("blockUI.timeout");if(to){clearTimeout(to);$el.removeData("blockUI.timeout")}opts=$.extend({},$.blockUI.defaults,opts||{});bind(0,el,opts);var els;if(full){els=$("body").children().filter(".blockUI").add("body > .blockUI")}else{els=$(".blockUI",el)}if(full){pageBlock=pageBlockEls=null}if(opts.fadeOut){els.fadeOut(opts.fadeOut);setTimeout(function(){reset(els,data,opts,el)},opts.fadeOut)}else{reset(els,data,opts,el)}}function reset(els,data,opts,el){els.each(function(i,o){if(this.parentNode){this.parentNode.removeChild(this)}});if(data&&data.el){data.el.style.display=data.display;data.el.style.position=data.position;if(data.parent){data.parent.appendChild(data.el)}$(el).removeData("blockUI.history")}if(typeof opts.onUnblock=="function"){opts.onUnblock(el,opts)}}function bind(b,el,opts){var full=el==window,$el=$(el);if(!b&&(full&&!pageBlock||!full&&!$el.data("blockUI.isBlocked"))){return}if(!full){$el.data("blockUI.isBlocked",b)}if(!opts.bindEvents||(b&&!opts.showOverlay)){return}var events="mousedown mouseup keydown keypress";b?$(document).bind(events,opts,handler):$(document).unbind(events,handler)}function handler(e){if(e.keyCode&&e.keyCode==9){if(pageBlock&&e.data.constrainTabKey){var els=pageBlockEls;var fwd=!e.shiftKey&&e.target===els[els.length-1];var back=e.shiftKey&&e.target===els[0];if(fwd||back){setTimeout(function(){focus(back)},10);return false}}}var opts=e.data;if($(e.target).parents("div."+opts.blockMsgClass).length>0){return true}return $(e.target).parents().children().filter("div.blockUI").length==0}function focus(back){if(!pageBlockEls){return}var e=pageBlockEls[back===true?pageBlockEls.length-1:0];if(e){e.focus()}}function center(el,x,y){var p=el.parentNode,s=el.style;var l=((p.offsetWidth-el.offsetWidth)/2)-sz(p,"borderLeftWidth");var t=((p.offsetHeight-el.offsetHeight)/2)-sz(p,"borderTopWidth");if(x){s.left=l>0?(l+"px"):"0"}if(y){s.top=t>0?(t+"px"):"0"}}function sz(el,p){return parseInt($.css(el,p))||0}})(jQuery);
