Ojay.Overlay.on("show")._("body").addClass("overlay-open");Ojay.Overlay.on("hide")._("body").removeClass("overlay-open");Ojay.onDOMReady(function(){Ojay("a").forEach(function(A){A.node.hideFocus=true;if(A.hasClass("new-window")){A.node.target="_blank";var B=A.node.title;A.node.title=B?B+" (Opens in a new window)":"This link opens in a new window"}})});Ojay.onDOMReady(function(){var A=Ojay(".link-area");A.on("mouseover",function(B,D){var C=B.descendants("a");if(!C.node){return }B.addClass("link-area-hover");status="link.node.href"});A.on("mouseout",function(B,D){var C=B.descendants("a");if(!C.node){return }B.removeClass("link-area-hover");status=""});A.on("click",function(B,D){var C=B.descendants("a");if(!C.node){return }Ojay.HTTP.GET.redirectTo(C.node.href)})});if(window.GUnload){Ojay(window).on("unload",GUnload)}if(window.GMap2){JS.MethodChain.addMethods(GMap2)}LocationPicker=new JS.Class({extend:{WIDTH:600,HEIGHT:400,CONTAINER_CLASS:"location-picker",DEFAULT_LATITUDE:51.498945,DEFAULT_LONGITUDE:-0.080874,ZOOM_LEVEL:15,PRECISION:6,round:function(B){var A=Math.pow(10,this.PRECISION);return Math.round(B*A)/A},getGeocoder:function(){return this._9=this._9||new GClientGeocoder()}},initialize:function(C,B,A){this._3=Ojay(Ojay.HTML.div({className:this.klass.CONTAINER_CLASS}));this._4=A||{};this._5={};this._6=Ojay(this._4.latField).node;this._7=Ojay(this._4.lngField).node;Ojay(B).insert(this.getHTML(),C);this._0=new GMap2(this._5._0.node);this._0.enableScrollWheelZoom();this._0.enableContinuousZoom();this._0.disableDoubleClickZoom();this._0.addControl(new GSmallMapControl());GEvent.addListener(this._0,"dblclick",function(E,D){this._2=D;this.positionMarker()}.bind(this));this.pullLocation()},getHTML:function(){var A=this._5;if(A._3){return A._3}A._3=Ojay(Ojay.HTML.div({className:this.klass.CONTAINER_CLASS},function(B){A._a=Ojay(B.form(function(C){A._8=C.input({type:"text"});A._b=Ojay(C.button("Search"))}));A._0=Ojay(B.div())}));A._0.setStyle({width:(this._4.width||this.klass.WIDTH)+"px",height:(this._4.height||this.klass.HEIGHT)+"px"});A._a.on("submit",Ojay.stopDefault)._(this).search();return A._3},pullLocation:function(){var B=(this._6||{}).value,A=(this._7||{}).value;if(!B){B=this.klass.DEFAULT_LATITUDE}if(!A){A=this.klass.DEFAULT_LONGITUDE}this._2=new GLatLng(Number(B),Number(A));this._0.setCenter(this._2,this.klass.ZOOM_LEVEL);this.positionMarker()},pushLocation:function(){var A=this._1.getLatLng();(this._6||{}).value=this.klass.round(A.lat());(this._7||{}).value=this.klass.round(A.lng())},getMarker:function(){if(this._1){return this._1}this._1=new GMarker(this._2,{draggable:true});this._1.enableDragging();GEvent.addListener(this._1,"dragend",this.method("pushLocation"));this._0.addOverlay(this._1);return this._1},positionMarker:function(){this.getMarker().setLatLng(this._2);this.pushLocation()},search:function(){this.klass.getGeocoder().getLocations(this._5._8.value,function(B){var A=B.Placemark[0];if(!A){return }var F=A.Point.coordinates,E=A.ExtendedData.LatLonBox,D=new GLatLngBounds(new GLatLng(E.south,E.west),new GLatLng(E.north,E.east)),C=this._0.getBoundsZoomLevel(D);this._2=new GLatLng(F[1],F[0]);this._0.setCenter(this._2,C);this.positionMarker()}.bind(this))},setAddress:function(A){this._5._8.value=A}});MultiUpload=new JS.Class({include:Ojay.Observable,initialize:function(B,A,C){this._9=Ojay(B);this._a=A;this._9.insert(this.getHTML(),"after");this._b(C);this._0=[]},getHTML:function(){if(this._1){return this._1}var A=this;this._1=Ojay(Ojay.HTML.div({className:this.klass.CONTAINER_CLASS},function(B){B.div({className:A.klass.BUTTON_CLASS},function(C){A._c=C.div()});A._d=Ojay(B.div({className:A.klass.UPLOAD_CLASS},A.klass.UPLOAD_TEXT));A._e=Ojay(B.ul({className:A.klass.ERRORS_CLASS}));A._f=Ojay(B.ul({className:A.klass.QUEUE_CLASS}))}));this._d.on("click",function(C,B){this._2().startUpload()},this);return this._1},_b:function(A){this._2(A)},_2:function(F){if(this._7){return this._7}var E=this.klass.FLASH_URL;if(!E){throw"MultiUpload.FLASH_URL must specify SWFUpload .swf URL"}var F=F||{},A=F.button||{},D=this.method("method"),B=this.klass;this._3={flash_url:E,upload_url:this._a,file_size_limit:F.sizeLimit||B.SIZE_LIMIT,file_types:F.fileTypes||B.FILE_TYPES,file_types_description:F.fileDescription||B.FILE_DESCRIPTION,file_queue_limit:0,debug:false,button_placeholder:this._c,file_queued_handler:D("_g"),file_queue_error_handler:D("_h"),file_dialog_complete_handler:D("_i"),upload_start_handler:D("_j"),upload_progress_handler:D("_k"),upload_error_handler:D("_l"),upload_success_handler:D("_m"),upload_complete_handler:D("_n")};var C=function(H,G,J){var I=A[G];if(!I){return }if(J){I=J(I)}this._3[H]=I}.bind(this);C("button_width","width");C("button_height","height");C("button_image_url","image");C("button_text","text",function(G){return'<span class="mu-button-text">'+G+"</span>"});C("button_text_style","style",function(G){return".mu-button-text {"+G+"}"});C("button_text_left_padding","leftPadding");C("button_text_top_padding","topPadding");return this._7=new SWFUpload(this._3)},_g:function(B){var A=new this.klass.FileProgress(this,B);this.notifyObservers("queue",A);this._0.push(A);this._f.insert(A.getHTML())},_h:function(B,A,F){var E=new this.klass.FileProgress(this,B);this.notifyObservers("queueerror",E,A,F);this._0.push(E);var D=D=SWFUpload.QUEUE_ERROR,C=this.klass.MESSAGES[A];switch(A){case D.QUEUE_LIMIT_EXCEEDED:C+=" (limit: "+this._3.file_queue_limit+")";break;case D.FILE_EXCEEDS_SIZE_LIMIT:C+=" ("+this.klass.formatSize(this._3.file_size_limit*1024)+")";break;case D.INVALID_FILETYPE:C+=" (allowed: "+this._3.file_types+")";break}C+=": "+B.name+" ("+this.klass.formatSize(B.size)+")";this._e.insert(Ojay.HTML.li(C))},_i:function(){},_j:function(B){var A=this._0[B.index];if(!A){return }A.setStatus(B.filestatus);this.notifyObservers("uploadstart",A)},_k:function(B,A,D){var C=this._0[B.index];if(!C){return }C.setSentBytes(A);this.notifyObservers("uploadprogress",C,A,D)},_l:function(B,A,D){var C=this._0[B.index];if(!C){return }C.setStatus(B.filestatus);C.setError(D);this.notifyObservers("uploaderror",C,A,D)},_m:function(B,A){var C=this._0[B.index];if(!C){return }C.setStatus(B.filestatus);C.setSuccess();this.notifyObservers("uploadsuccess",C,A)},_n:function(B){var A=this._0[B.index];if(!A){return }this._2().startUpload();this.notifyObservers("uploadcomplete",A)},addPostParam:function(B,A){return this._2().addPostParam(B,A)},removePostParam:function(A){return this._2().removePostParam(A)},setPostParams:function(A){return this._2().setPostParams(A)},extend:{CONTAINER_CLASS:"multi-upload",ERRORS_CLASS:"errors",QUEUE_CLASS:"queue",FLASH_URL:null,SIZE_LIMIT:0,FILE_TYPES:"*.*",FILE_DESCRIPTION:"All files",BUTTON_CLASS:"browse-button",UPLOAD_CLASS:"upload-button",UPLOAD_TEXT:"Upload",PREFIXES:["","k","M","G","T"],formatSize:function(B){if(typeof B==="string"){return B}var A=(B===0)?0:Math.floor(Math.log(B)/Math.log(1024));return Math.round(B/Math.pow(1024,A))+" "+this.PREFIXES[A]+"B"},FileProgress:new JS.Class({include:Ojay.Observable,extend:{FILENAME_CLASS:"filename",PROGRESS_CLASS:"progress",BAR_CLASS:"progress-bar",READY_TEXT:"Ready",SENDING_TEXT:"Sending",COMPLETE_TEXT:"Complete"},initialize:function(B,A){this._q=B;this._4=A;this._5=MultiUpload.STATUSES[A.filestatus]},get:function(A){return this._4[A]},getHTML:function(){if(this._1){return this._1}var A=this;this._1=Ojay(Ojay.HTML.li({className:this._5},function(B){A._o=Ojay(B.p({className:A.klass.FILENAME_CLASS},A._4.name+" ("+MultiUpload.formatSize(A._4.size)+")"));A._6=Ojay(B.p({className:A.klass.PROGRESS_CLASS},A.klass.READY_TEXT));A._p=Ojay(B.div({className:A.klass.BAR_CLASS},function(C){A._8=Ojay(C.div())}))}));this._8.setStyle({overflow:"hidden",width:0,height:"100%"});return this._1},getFilenameElement:function(){return this._o},getProgressElement:function(){return this._6},getProgressBar:function(){return this._p},setStatus:function(A){this.getHTML().removeClass(this._5);this._5=MultiUpload.STATUSES[A];this.getHTML().addClass(this._5)},setSentBytes:function(B){var A=100*Math.round(B/this._4.size)+"%";this._6.setContent(this.klass.SENDING_TEXT+": "+A);this._8.setStyle({width:A})},setSuccess:function(){this._6.setContent(this.klass.COMPLETE_TEXT)},setError:function(A){this._6.setContent(A)}})}});(function(){var B=MultiUpload.MESSAGES={},A=SWFUpload.QUEUE_ERROR;B[A.QUEUE_LIMIT_EXCEEDED]="Queue limit exceeded";B[A.FILE_EXCEEDS_SIZE_LIMIT]="File exceeds size limit";B[A.ZERO_BYTE_FILE]="File contains no data";B[A.INVALID_FILETYPE]="Invalid filetype";var D=MultiUpload.STATUSES={},C=SWFUpload.FILE_STATUS;D[C.QUEUED]="queued";D[C.IN_PROGRESS]="sending";D[C.ERROR]="error";D[C.COMPLETE]="complete";D[C.CANCELLED]="cancelled"})()
