
if(dwr==null)var dwr={};if(dwr.engine==null)dwr.engine={};if(DWREngine==null)var DWREngine=dwr.engine;dwr.engine.setErrorHandler=function(handler){dwr.engine._errorHandler=handler;};dwr.engine.setWarningHandler=function(handler){dwr.engine._warningHandler=handler;};dwr.engine.setTextHtmlHandler=function(handler){dwr.engine._textHtmlHandler=handler;};dwr.engine.setTimeout=function(timeout){dwr.engine._timeout=timeout;};dwr.engine.setPreHook=function(handler){dwr.engine._preHook=handler;};dwr.engine.setPostHook=function(handler){dwr.engine._postHook=handler;};dwr.engine.setHeaders=function(headers){dwr.engine._headers=headers;};dwr.engine.setParameters=function(parameters){dwr.engine._parameters=parameters;};dwr.engine.XMLHttpRequest=1;dwr.engine.IFrame=2;dwr.engine.ScriptTag=3;dwr.engine.setRpcType=function(newType){if(newType!=dwr.engine.XMLHttpRequest&&newType!=dwr.engine.IFrame&&newType!=dwr.engine.ScriptTag){dwr.engine._handleError(null,{name:"dwr.engine.invalidRpcType",message:"RpcType must be one of dwr.engine.XMLHttpRequest or dwr.engine.IFrame or dwr.engine.ScriptTag"});return;}
dwr.engine._rpcType=newType;};dwr.engine.setHttpMethod=function(httpMethod){if(httpMethod!="GET"&&httpMethod!="POST"){dwr.engine._handleError(null,{name:"dwr.engine.invalidHttpMethod",message:"Remoting method must be one of GET or POST"});return;}
dwr.engine._httpMethod=httpMethod;};dwr.engine.setOrdered=function(ordered){dwr.engine._ordered=ordered;};dwr.engine.setAsync=function(async){dwr.engine._async=async;};dwr.engine.setActiveReverseAjax=function(activeReverseAjax){if(activeReverseAjax){if(dwr.engine._activeReverseAjax)return;dwr.engine._activeReverseAjax=true;dwr.engine._poll();}
else{if(dwr.engine._activeReverseAjax&&dwr.engine._pollReq)dwr.engine._pollReq.abort();dwr.engine._activeReverseAjax=false;}};dwr.engine.defaultErrorHandler=function(message,ex){dwr.engine._debug("Error: "+ex.name+", "+ex.message,true);if(message==null||message=="")alert("A server error has occured.");else if(message.indexOf("0x80040111")!=-1)dwr.engine._debug(message);else alert(message);};dwr.engine.defaultWarningHandler=function(message,ex){dwr.engine._debug(message);};dwr.engine.beginBatch=function(){if(dwr.engine._batch){dwr.engine._handleError(null,{name:"dwr.engine.batchBegun",message:"Batch already begun"});return;}
dwr.engine._batch=dwr.engine._createBatch();};dwr.engine.endBatch=function(options){var batch=dwr.engine._batch;if(batch==null){dwr.engine._handleError(null,{name:"dwr.engine.batchNotBegun",message:"No batch in progress"});return;}
dwr.engine._batch=null;if(batch.map.callCount==0)return;if(options)dwr.engine._mergeBatch(batch,options);if(dwr.engine._ordered&&dwr.engine._batchesLength!=0){dwr.engine._batchQueue[dwr.engine._batchQueue.length]=batch;}
else{dwr.engine._sendData(batch);}};dwr.engine.setPollMethod=function(type){dwr.engine.setPollType(type);};dwr.engine.setMethod=function(type){dwr.engine.setRpcType(type);};dwr.engine.setVerb=function(verb){dwr.engine.setHttpMethod(verb);};dwr.engine.setPollType=function(){dwr.engine._debug("Manually setting the Poll Type is not supported");};dwr.engine._origScriptSessionId=""+JAWR.dwr_scriptSessionId+"";dwr.engine._sessionCookieName="JSESSIONID";dwr.engine._allowGetForSafariButMakeForgeryEasier="";dwr.engine._scriptTagProtection="throw 'allowScriptTagRemoting is false.';";dwr.engine._defaultPath=""+JAWR.jawr_dwr_path+"";dwr.engine._pollWithXhr="false";dwr.engine._scriptSessionId=null;dwr.engine._getScriptSessionId=function(){if(dwr.engine._scriptSessionId==null){dwr.engine._scriptSessionId=dwr.engine._origScriptSessionId+Math.floor(Math.random()*1000);}
return dwr.engine._scriptSessionId;};dwr.engine._errorHandler=dwr.engine.defaultErrorHandler;dwr.engine._warningHandler=dwr.engine.defaultWarningHandler;dwr.engine._preHook=null;dwr.engine._postHook=null;dwr.engine._batches={};dwr.engine._batchesLength=0;dwr.engine._batchQueue=[];dwr.engine._rpcType=dwr.engine.XMLHttpRequest;dwr.engine._httpMethod="POST";dwr.engine._ordered=false;dwr.engine._async=true;dwr.engine._batch=null;dwr.engine._timeout=0;dwr.engine._DOMDocument=["Msxml2.DOMDocument.6.0","Msxml2.DOMDocument.5.0","Msxml2.DOMDocument.4.0","Msxml2.DOMDocument.3.0","MSXML2.DOMDocument","MSXML.DOMDocument","Microsoft.XMLDOM"];dwr.engine._XMLHTTP=["Msxml2.XMLHTTP.6.0","Msxml2.XMLHTTP.5.0","Msxml2.XMLHTTP.4.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"];dwr.engine._activeReverseAjax=false;dwr.engine._outstandingIFrames=[];dwr.engine._pollReq=null;dwr.engine._pollCometInterval=200;dwr.engine._pollRetries=0;dwr.engine._maxPollRetries=0;dwr.engine._textHtmlHandler=null;dwr.engine._headers=null;dwr.engine._parameters=null;dwr.engine._postSeperator="\n";dwr.engine._defaultInterceptor=function(data){return data;};dwr.engine._urlRewriteHandler=dwr.engine._defaultInterceptor;dwr.engine._contentRewriteHandler=dwr.engine._defaultInterceptor;dwr.engine._replyRewriteHandler=dwr.engine._defaultInterceptor;dwr.engine._nextBatchId=0;dwr.engine._propnames=["rpcType","httpMethod","async","timeout","errorHandler","warningHandler","textHtmlHandler"];dwr.engine._partialResponseNo=0;dwr.engine._partialResponseYes=1;dwr.engine._partialResponseFlush=2;dwr.engine._execute=function(path,scriptName,methodName,vararg_params){var singleShot=false;if(dwr.engine._batch==null){dwr.engine.beginBatch();singleShot=true;}
var batch=dwr.engine._batch;var args=[];for(var i=0;i<arguments.length-3;i++){args[i]=arguments[i+3];}
if(batch.path==null){batch.path=path;}
else{if(batch.path!=path){dwr.engine._handleError(batch,{name:"dwr.engine.multipleServlets",message:"Can't batch requests to multiple DWR Servlets."});return;}}
var callData;var lastArg=args[args.length-1];if(typeof lastArg=="function"||lastArg==null)callData={callback:args.pop()};else callData=args.pop();dwr.engine._mergeBatch(batch,callData);batch.handlers[batch.map.callCount]={exceptionHandler:callData.exceptionHandler,callback:callData.callback};var prefix="c"+batch.map.callCount+"-";batch.map[prefix+"scriptName"]=scriptName;batch.map[prefix+"methodName"]=methodName;batch.map[prefix+"id"]=batch.map.callCount;for(i=0;i<args.length;i++){dwr.engine._serializeAll(batch,[],args[i],prefix+"param"+i);}
batch.map.callCount++;if(singleShot)dwr.engine.endBatch();};dwr.engine._poll=function(){if(!dwr.engine._activeReverseAjax)return;var batch=dwr.engine._createBatch();batch.map.id=0;batch.map.callCount=1;batch.isPoll=true;if(dwr.engine._pollWithXhr=="true"){batch.rpcType=dwr.engine.XMLHttpRequest;batch.map.partialResponse=dwr.engine._partialResponseNo;}
else{if(navigator.userAgent.indexOf("Gecko/")!=-1){batch.rpcType=dwr.engine.XMLHttpRequest;batch.map.partialResponse=dwr.engine._partialResponseYes;}
else{batch.rpcType=dwr.engine.XMLHttpRequest;batch.map.partialResponse=dwr.engine._partialResponseNo;}}
batch.httpMethod="POST";batch.async=true;batch.timeout=0;batch.path=dwr.engine._defaultPath;batch.preHooks=[];batch.postHooks=[];batch.errorHandler=dwr.engine._pollErrorHandler;batch.warningHandler=dwr.engine._pollErrorHandler;batch.handlers[0]={callback:function(pause){dwr.engine._pollRetries=0;setTimeout("dwr.engine._poll()",pause);}};dwr.engine._sendData(batch);if(batch.rpcType==dwr.engine.XMLHttpRequest&&batch.map.partialResponse==dwr.engine._partialResponseYes){dwr.engine._checkCometPoll();}};dwr.engine._pollErrorHandler=function(msg,ex){dwr.engine._pollRetries++;dwr.engine._debug("Reverse Ajax poll failed (pollRetries="+dwr.engine._pollRetries+"): "+ex.name+" : "+ex.message);if(dwr.engine._pollRetries<dwr.engine._maxPollRetries){setTimeout("dwr.engine._poll()",10000);}
else{dwr.engine._activeReverseAjax=false;dwr.engine._debug("Giving up.");}};dwr.engine._createBatch=function(){var batch={map:{callCount:0,page:window.location.pathname+window.location.search,httpSessionId:dwr.engine._getJSessionId(),scriptSessionId:dwr.engine._getScriptSessionId()},charsProcessed:0,paramCount:0,parameters:{},headers:{},isPoll:false,handlers:{},preHooks:[],postHooks:[],rpcType:dwr.engine._rpcType,httpMethod:dwr.engine._httpMethod,async:dwr.engine._async,timeout:dwr.engine._timeout,errorHandler:dwr.engine._errorHandler,warningHandler:dwr.engine._warningHandler,textHtmlHandler:dwr.engine._textHtmlHandler};if(dwr.engine._preHook)batch.preHooks.push(dwr.engine._preHook);if(dwr.engine._postHook)batch.postHooks.push(dwr.engine._postHook);var propname,data;if(dwr.engine._headers){for(propname in dwr.engine._headers){data=dwr.engine._headers[propname];if(typeof data!="function")batch.headers[propname]=data;}}
if(dwr.engine._parameters){for(propname in dwr.engine._parameters){data=dwr.engine._parameters[propname];if(typeof data!="function")batch.parameters[propname]=data;}}
return batch;};dwr.engine._mergeBatch=function(batch,overrides){var propname,data;for(var i=0;i<dwr.engine._propnames.length;i++){propname=dwr.engine._propnames[i];if(overrides[propname]!=null)batch[propname]=overrides[propname];}
if(overrides.preHook!=null)batch.preHooks.unshift(overrides.preHook);if(overrides.postHook!=null)batch.postHooks.push(overrides.postHook);if(overrides.headers){for(propname in overrides.headers){data=overrides.headers[propname];if(typeof data!="function")batch.headers[propname]=data;}}
if(overrides.parameters){for(propname in overrides.parameters){data=overrides.parameters[propname];if(typeof data!="function")batch.map["p-"+propname]=""+data;}}};dwr.engine._getJSessionId=function(){var cookies=document.cookie.split(';');for(var i=0;i<cookies.length;i++){var cookie=cookies[i];while(cookie.charAt(0)==' ')cookie=cookie.substring(1,cookie.length);if(cookie.indexOf(dwr.engine._sessionCookieName+"=")==0){return cookie.substring(dwr.engine._sessionCookieName.length+1,cookie.length);}}
return"";};dwr.engine._checkCometPoll=function(){for(var i=0;i<dwr.engine._outstandingIFrames.length;i++){var text="";var iframe=dwr.engine._outstandingIFrames[i];try{text=dwr.engine._getTextFromCometIFrame(iframe);}
catch(ex){dwr.engine._handleWarning(iframe.batch,ex);}
if(text!="")dwr.engine._processCometResponse(text,iframe.batch);}
if(dwr.engine._pollReq){var req=dwr.engine._pollReq;var text=req.responseText;if(text!=null)dwr.engine._processCometResponse(text,req.batch);}
if(dwr.engine._outstandingIFrames.length>0||dwr.engine._pollReq){setTimeout("dwr.engine._checkCometPoll()",dwr.engine._pollCometInterval);}};dwr.engine._getTextFromCometIFrame=function(frameEle){var body=frameEle.contentWindow.document.body;if(body==null)return"";var text=body.innerHTML;if(text.indexOf("<PRE>")==0||text.indexOf("<pre>")==0){text=text.substring(5,text.length-7);}
return text;};dwr.engine._processCometResponse=function(response,batch){if(batch.charsProcessed==response.length)return;if(response.length==0){batch.charsProcessed=0;return;}
var firstStartTag=response.indexOf("//#DWR-START#",batch.charsProcessed);if(firstStartTag==-1){batch.charsProcessed=response.length;return;}
var lastEndTag=response.lastIndexOf("//#DWR-END#");if(lastEndTag==-1){return;}
if(response.charCodeAt(lastEndTag+11)==13&&response.charCodeAt(lastEndTag+12)==10){batch.charsProcessed=lastEndTag+13;}
else{batch.charsProcessed=lastEndTag+11;}
var exec=response.substring(firstStartTag+13,lastEndTag);dwr.engine._receivedBatch=batch;dwr.engine._eval(exec);dwr.engine._receivedBatch=null;};dwr.engine._sendData=function(batch){batch.map.batchId=dwr.engine._nextBatchId;dwr.engine._nextBatchId++;dwr.engine._batches[batch.map.batchId]=batch;dwr.engine._batchesLength++;batch.completed=false;for(var i=0;i<batch.preHooks.length;i++){batch.preHooks[i]();}
batch.preHooks=null;if(batch.timeout&&batch.timeout!=0){batch.interval=setInterval(function(){dwr.engine._abortRequest(batch);},batch.timeout);}
if(batch.rpcType==dwr.engine.XMLHttpRequest){if(window.XMLHttpRequest){batch.req=new XMLHttpRequest();}
else if(window.ActiveXObject&&!(navigator.userAgent.indexOf("Mac")>=0&&navigator.userAgent.indexOf("MSIE")>=0)){batch.req=dwr.engine._newActiveXObject(dwr.engine._XMLHTTP);}}
var prop,request;if(batch.req){if(batch.async){batch.req.onreadystatechange=function(){if(typeof dwr!='undefined')dwr.engine._stateChange(batch);};}
if(batch.isPoll){dwr.engine._pollReq=batch.req;if(!document.all)batch.req.batch=batch;}
var indexSafari=navigator.userAgent.indexOf("Safari/");if(indexSafari>=0){var version=navigator.userAgent.substring(indexSafari+7);if(parseInt(version,10)<400){if(dwr.engine._allowGetForSafariButMakeForgeryEasier=="true")batch.httpMethod="GET";else dwr.engine._handleWarning(batch,{name:"dwr.engine.oldSafari",message:"Safari GET support disabled. See getahead.org/dwr/server/servlet and allowGetForSafariButMakeForgeryEasier."});}}
batch.mode=batch.isPoll?dwr.engine._ModePlainPoll:dwr.engine._ModePlainCall;request=dwr.engine._constructRequest(batch);try{batch.req.open(batch.httpMethod,request.url,batch.async);try{for(prop in batch.headers){var value=batch.headers[prop];if(typeof value=="string")batch.req.setRequestHeader(prop,value);}
if(!batch.headers["Content-Type"])batch.req.setRequestHeader("Content-Type","text/plain");}
catch(ex){dwr.engine._handleWarning(batch,ex);}
batch.req.send(request.body);if(!batch.async)dwr.engine._stateChange(batch);}
catch(ex){dwr.engine._handleError(batch,ex);}}
else if(batch.rpcType!=dwr.engine.ScriptTag){var idname=batch.isPoll?"dwr-if-poll-"+batch.map.batchId:"dwr-if-"+batch.map["c0-id"];if(batch.isPoll&&window.ActiveXObject){batch.htmlfile=new window.ActiveXObject("htmlfile");batch.htmlfile.open();batch.htmlfile.write("<html>");batch.htmlfile.write("<div><iframe className='wibble' src='javascript:void(0)' id='"+idname+"' name='"+idname+"' onload='dwr.engine._iframeLoadingComplete("+batch.map.batchId+");'></iframe></div>");batch.htmlfile.write("</html>");batch.htmlfile.close();batch.htmlfile.parentWindow.dwr=dwr;batch.document=batch.htmlfile;}
else{batch.div=document.createElement("div");document.body.appendChild(batch.div);batch.div.innerHTML="<iframe src='javascript:void(0)' frameborder='0' style='width:0px;height:0px;border:0;' id='"+idname+"' name='"+idname+"' onload='dwr.engine._iframeLoadingComplete ("+batch.map.batchId+");'></iframe>";batch.document=document;}
batch.iframe=batch.document.getElementById(idname);batch.iframe.batch=batch;batch.mode=batch.isPoll?dwr.engine._ModeHtmlPoll:dwr.engine._ModeHtmlCall;if(batch.isPoll)dwr.engine._outstandingIFrames.push(batch.iframe);request=dwr.engine._constructRequest(batch);if(batch.httpMethod=="GET"){batch.iframe.setAttribute("src",request.url);}
else{batch.form=batch.document.createElement("form");batch.form.setAttribute("id","dwr-form");batch.form.setAttribute("action",request.url);batch.form.setAttribute("target",idname);batch.form.target=idname;batch.form.setAttribute("method",batch.httpMethod);for(prop in batch.map){var value=batch.map[prop];if(typeof value!="function"){var formInput=batch.document.createElement("input");formInput.setAttribute("type","hidden");formInput.setAttribute("name",prop);formInput.setAttribute("value",value);batch.form.appendChild(formInput);}}
batch.document.body.appendChild(batch.form);batch.form.submit();}}
else{batch.httpMethod="GET";batch.mode=batch.isPoll?dwr.engine._ModePlainPoll:dwr.engine._ModePlainCall;request=dwr.engine._constructRequest(batch);batch.script=document.createElement("script");batch.script.id="dwr-st-"+batch.map["c0-id"];batch.script.src=request.url;document.body.appendChild(batch.script);}};dwr.engine._ModePlainCall="/call/plaincall/";dwr.engine._ModeHtmlCall="/call/htmlcall/";dwr.engine._ModePlainPoll="/call/plainpoll/";dwr.engine._ModeHtmlPoll="/call/htmlpoll/";dwr.engine._constructRequest=function(batch){var request={url:batch.path+batch.mode,body:null};if(batch.isPoll==true){request.url+="ReverseAjax.dwr";}
else if(batch.map.callCount==1){request.url+=batch.map["c0-scriptName"]+"."+batch.map["c0-methodName"]+".dwr";}
else{request.url+="Multiple."+batch.map.callCount+".dwr";}
var sessionMatch=location.href.match(/jsessionid=([^?]+)/);if(sessionMatch!=null){request.url+=";jsessionid="+sessionMatch[1];}
var prop;if(batch.httpMethod=="GET"){batch.map.callCount=""+batch.map.callCount;request.url+="?";for(prop in batch.map){if(typeof batch.map[prop]!="function"){request.url+=encodeURIComponent(prop)+"="+encodeURIComponent(batch.map[prop])+"&";}}
request.url=request.url.substring(0,request.url.length-1);}
else{request.body="";for(prop in batch.map){if(typeof batch.map[prop]!="function"){request.body+=prop+"="+batch.map[prop]+dwr.engine._postSeperator;}}
request.body=dwr.engine._contentRewriteHandler(request.body);}
request.url=dwr.engine._urlRewriteHandler(request.url);return request;};dwr.engine._stateChange=function(batch){var toEval;if(batch.completed){dwr.engine._debug("Error: _stateChange() with batch.completed");return;}
var req=batch.req;try{if(req.readyState!=4)return;}
catch(ex){dwr.engine._handleWarning(batch,ex);dwr.engine._clearUp(batch);return;}
try{var reply=req.responseText;reply=dwr.engine._replyRewriteHandler(reply);var status=req.status;if(reply==null||reply==""){dwr.engine._handleWarning(batch,{name:"dwr.engine.missingData",message:"No data received from server"});}
else if(status!=200){dwr.engine._handleError(batch,{name:"dwr.engine.http."+status,message:req.statusText});}
else{var contentType=req.getResponseHeader("Content-Type");if(!contentType.match(/^text\/plain/)&&!contentType.match(/^text\/javascript/)){if(contentType.match(/^text\/html/)&&typeof batch.textHtmlHandler=="function"){batch.textHtmlHandler({status:status,responseText:reply,contentType:contentType});}
else{dwr.engine._handleWarning(batch,{name:"dwr.engine.invalidMimeType",message:"Invalid content type: '"+contentType+"'"});}}
else{if(batch.isPoll&&batch.map.partialResponse==dwr.engine._partialResponseYes){dwr.engine._processCometResponse(reply,batch);}
else{if(reply.search("//#DWR")==-1){dwr.engine._handleWarning(batch,{name:"dwr.engine.invalidReply",message:"Invalid reply from server"});}
else{toEval=reply;}}}}}
catch(ex){dwr.engine._handleWarning(batch,ex);}
dwr.engine._callPostHooks(batch);dwr.engine._receivedBatch=batch;if(toEval!=null)toEval=toEval.replace(dwr.engine._scriptTagProtection,"");dwr.engine._eval(toEval);dwr.engine._receivedBatch=null;dwr.engine._validateBatch(batch);dwr.engine._clearUp(batch);};dwr.engine._validateBatch=function(batch){if(!batch.completed){for(var i=0;i<batch.map.callCount;i++){if(batch.handlers[i]!=null){dwr.engine._handleWarning(batch,{name:"dwr.engine.incompleteReply",message:"Incomplete reply from server"});break;}}}}
dwr.engine._iframeLoadingComplete=function(batchId){var batch=dwr.engine._batches[batchId];if(batch)dwr.engine._validateBatch(batch);}
dwr.engine._remoteHandleCallback=function(batchId,callId,reply){var batch=dwr.engine._batches[batchId];if(batch==null){dwr.engine._debug("Warning: batch == null in remoteHandleCallback for batchId="+batchId,true);return;}
try{var handlers=batch.handlers[callId];batch.handlers[callId]=null;if(!handlers){dwr.engine._debug("Warning: Missing handlers. callId="+callId,true);}
else if(typeof handlers.callback=="function")handlers.callback(reply);}
catch(ex){dwr.engine._handleError(batch,ex);}};dwr.engine._remoteHandleException=function(batchId,callId,ex){var batch=dwr.engine._batches[batchId];if(batch==null){dwr.engine._debug("Warning: null batch in remoteHandleException",true);return;}
var handlers=batch.handlers[callId];batch.handlers[callId]=null;if(handlers==null){dwr.engine._debug("Warning: null handlers in remoteHandleException",true);return;}
if(ex.message==undefined)ex.message="";if(typeof handlers.exceptionHandler=="function")handlers.exceptionHandler(ex.message,ex);else if(typeof batch.errorHandler=="function")batch.errorHandler(ex.message,ex);};dwr.engine._remoteHandleBatchException=function(ex,batchId){var searchBatch=(dwr.engine._receivedBatch==null&&batchId!=null);if(searchBatch){dwr.engine._receivedBatch=dwr.engine._batches[batchId];}
if(ex.message==undefined)ex.message="";dwr.engine._handleError(dwr.engine._receivedBatch,ex);if(searchBatch){dwr.engine._receivedBatch=null;dwr.engine._clearUp(dwr.engine._batches[batchId]);}};dwr.engine._remotePollCometDisabled=function(ex,batchId){dwr.engine.setActiveReverseAjax(false);var searchBatch=(dwr.engine._receivedBatch==null&&batchId!=null);if(searchBatch){dwr.engine._receivedBatch=dwr.engine._batches[batchId];}
if(ex.message==undefined)ex.message="";dwr.engine._handleError(dwr.engine._receivedBatch,ex);if(searchBatch){dwr.engine._receivedBatch=null;dwr.engine._clearUp(dwr.engine._batches[batchId]);}};dwr.engine._remoteBeginIFrameResponse=function(iframe,batchId){if(iframe!=null)dwr.engine._receivedBatch=iframe.batch;dwr.engine._callPostHooks(dwr.engine._receivedBatch);};dwr.engine._remoteEndIFrameResponse=function(batchId){dwr.engine._clearUp(dwr.engine._receivedBatch);dwr.engine._receivedBatch=null;};dwr.engine._eval=function(script){if(script==null)return null;if(script==""){dwr.engine._debug("Warning: blank script",true);return null;}
return eval(script);};dwr.engine._abortRequest=function(batch){if(batch&&!batch.completed){clearInterval(batch.interval);dwr.engine._clearUp(batch);if(batch.req)batch.req.abort();dwr.engine._handleError(batch,{name:"dwr.engine.timeout",message:"Timeout"});}};dwr.engine._callPostHooks=function(batch){if(batch.postHooks){for(var i=0;i<batch.postHooks.length;i++){batch.postHooks[i]();}
batch.postHooks=null;}};dwr.engine._clearUp=function(batch){if(!batch){dwr.engine._debug("Warning: null batch in dwr.engine._clearUp()",true);return;}
if(batch.completed=="true"){dwr.engine._debug("Warning: Double complete",true);return;}
if(batch.div)batch.div.parentNode.removeChild(batch.div);if(batch.iframe){for(var i=0;i<dwr.engine._outstandingIFrames.length;i++){if(dwr.engine._outstandingIFrames[i]==batch.iframe){dwr.engine._outstandingIFrames.splice(i,1);}}
batch.iframe.parentNode.removeChild(batch.iframe);}
if(batch.form)batch.form.parentNode.removeChild(batch.form);if(batch.req){if(batch.req==dwr.engine._pollReq)dwr.engine._pollReq=null;delete batch.req;}
if(batch.map&&(batch.map.batchId||batch.map.batchId==0)){delete dwr.engine._batches[batch.map.batchId];dwr.engine._batchesLength--;}
batch.completed=true;if(dwr.engine._batchQueue.length!=0){var sendbatch=dwr.engine._batchQueue.shift();dwr.engine._sendData(sendbatch);}};dwr.engine._handleError=function(batch,ex){if(typeof ex=="string")ex={name:"unknown",message:ex};if(ex.message==null)ex.message="";if(ex.name==null)ex.name="unknown";if(batch&&typeof batch.errorHandler=="function")batch.errorHandler(ex.message,ex);else if(dwr.engine._errorHandler)dwr.engine._errorHandler(ex.message,ex);if(batch)dwr.engine._clearUp(batch);};dwr.engine._handleWarning=function(batch,ex){if(typeof ex=="string")ex={name:"unknown",message:ex};if(ex.message==null)ex.message="";if(ex.name==null)ex.name="unknown";if(batch&&typeof batch.warningHandler=="function")batch.warningHandler(ex.message,ex);else if(dwr.engine._warningHandler)dwr.engine._warningHandler(ex.message,ex);if(batch)dwr.engine._clearUp(batch);};dwr.engine._serializeAll=function(batch,referto,data,name){if(data==null){batch.map[name]="null:null";return;}
switch(typeof data){case"boolean":batch.map[name]="boolean:"+data;break;case"number":batch.map[name]="number:"+data;break;case"string":batch.map[name]="string:"+encodeURIComponent(data);break;case"object":if(data instanceof String)batch.map[name]="String:"+encodeURIComponent(data);else if(data instanceof Boolean)batch.map[name]="Boolean:"+data;else if(data instanceof Number)batch.map[name]="Number:"+data;else if(data instanceof Date)batch.map[name]="Date:"+data.getTime();else if(data&&data.join)batch.map[name]=dwr.engine._serializeArray(batch,referto,data,name);else batch.map[name]=dwr.engine._serializeObject(batch,referto,data,name);break;case"function":break;default:dwr.engine._handleWarning(null,{name:"dwr.engine.unexpectedType",message:"Unexpected type: "+typeof data+", attempting default converter."});batch.map[name]="default:"+data;break;}};dwr.engine._lookup=function(referto,data,name){var lookup;for(var i=0;i<referto.length;i++){if(referto[i].data==data){lookup=referto[i];break;}}
if(lookup)return"reference:"+lookup.name;referto.push({data:data,name:name});return null;};dwr.engine._serializeObject=function(batch,referto,data,name){var ref=dwr.engine._lookup(referto,data,name);if(ref)return ref;if(data.nodeName&&data.nodeType){return dwr.engine._serializeXml(batch,referto,data,name);}
var reply="Object_"+dwr.engine._getObjectClassName(data)+":{";var element;for(element in data){if(typeof data[element]!="function"){batch.paramCount++;var childName="c"+dwr.engine._batch.map.callCount+"-e"+batch.paramCount;dwr.engine._serializeAll(batch,referto,data[element],childName);reply+=encodeURIComponent(element)+":reference:"+childName+", ";}}
if(reply.substring(reply.length-2)==", "){reply=reply.substring(0,reply.length-2);}
reply+="}";return reply;};dwr.engine._errorClasses={"Error":Error,"EvalError":EvalError,"RangeError":RangeError,"ReferenceError":ReferenceError,"SyntaxError":SyntaxError,"TypeError":TypeError,"URIError":URIError};dwr.engine._getObjectClassName=function(obj){if(obj&&obj.constructor&&obj.constructor.toString)
{var str=obj.constructor.toString();var regexpmatch=str.match(/function\s+(\w+)/);if(regexpmatch&&regexpmatch.length==2){return regexpmatch[1];}}
if(obj&&obj.constructor){for(var errorname in dwr.engine._errorClasses){if(obj.constructor==dwr.engine._errorClasses[errorname])return errorname;}}
if(obj){var str=Object.prototype.toString.call(obj);var regexpmatch=str.match(/\[object\s+(\w+)/);if(regexpmatch&&regexpmatch.length==2){return regexpmatch[1];}}
return"Object";};dwr.engine._serializeXml=function(batch,referto,data,name){var ref=dwr.engine._lookup(referto,data,name);if(ref)return ref;var output;if(window.XMLSerializer)output=new XMLSerializer().serializeToString(data);else if(data.toXml)output=data.toXml;else output=data.innerHTML;return"XML:"+encodeURIComponent(output);};dwr.engine._serializeArray=function(batch,referto,data,name){var ref=dwr.engine._lookup(referto,data,name);if(ref)return ref;var reply="Array:[";for(var i=0;i<data.length;i++){if(i!=0)reply+=",";batch.paramCount++;var childName="c"+dwr.engine._batch.map.callCount+"-e"+batch.paramCount;dwr.engine._serializeAll(batch,referto,data[i],childName);reply+="reference:";reply+=childName;}
reply+="]";return reply;};dwr.engine._unserializeDocument=function(xml){var dom;if(window.DOMParser){var parser=new DOMParser();dom=parser.parseFromString(xml,"text/xml");if(!dom.documentElement||dom.documentElement.tagName=="parsererror"){var message=dom.documentElement.firstChild.data;message+="\n"+dom.documentElement.firstChild.nextSibling.firstChild.data;throw message;}
return dom;}
else if(window.ActiveXObject){dom=dwr.engine._newActiveXObject(dwr.engine._DOMDocument);dom.loadXML(xml);return dom;}
else{var div=document.createElement("div");div.innerHTML=xml;return div;}};dwr.engine._newActiveXObject=function(axarray){var returnValue;for(var i=0;i<axarray.length;i++){try{returnValue=new ActiveXObject(axarray[i]);break;}
catch(ex){}}
return returnValue;};dwr.engine._debug=function(message,stacktrace){var written=false;try{if(window.console){if(stacktrace&&window.console.trace)window.console.trace();window.console.log(message);written=true;}
else if(window.opera&&window.opera.postError){window.opera.postError(message);written=true;}}
catch(ex){}
if(!written){var debug=document.getElementById("dwr-debug");if(debug){var contents=message+"<br/>"+debug.innerHTML;if(contents.length>2048)contents=contents.substring(0,2048);debug.innerHTML=contents;}}};if(dwr==null)var dwr={};if(dwr.engine==null)dwr.engine={};if(DWREngine==null)var DWREngine=dwr.engine;if(ReviewVoteService==null)var ReviewVoteService={};ReviewVoteService._path=''+JAWR.jawr_dwr_path+'';ReviewVoteService.voteYesForReview=function(p0,callback){dwr.engine._execute(ReviewVoteService._path,'ReviewVoteService','voteYesForReview',p0,callback);}
ReviewVoteService.voteNoForReview=function(p0,callback){dwr.engine._execute(ReviewVoteService._path,'ReviewVoteService','voteNoForReview',p0,callback);}
if(PicturesService==null)var PicturesService={};PicturesService._path=''+JAWR.jawr_dwr_path+'';PicturesService.getPictures=function(p0,callback){dwr.engine._execute(PicturesService._path,'PicturesService','getPictures',p0,false,callback);}
if(MapModulePersistenceService==null)var MapModulePersistenceService={};MapModulePersistenceService._path=''+JAWR.jawr_dwr_path+'';MapModulePersistenceService.get=function(callback){dwr.engine._execute(MapModulePersistenceService._path,'MapModulePersistenceService','get',callback);}
MapModulePersistenceService.store=function(p0,p1,callback){dwr.engine._execute(MapModulePersistenceService._path,'MapModulePersistenceService','store',p0,p1,callback);}
if(ActivityCalendarService==null)var ActivityCalendarService={};ActivityCalendarService._path=''+JAWR.jawr_dwr_path+'';ActivityCalendarService.getActivityDates=function(p0,callback){dwr.engine._execute(ActivityCalendarService._path,'ActivityCalendarService','getActivityDates',p0,false,callback);}
if(FeedsDiscoveryService==null)var FeedsDiscoveryService={};FeedsDiscoveryService._path=''+JAWR.jawr_dwr_path+'';FeedsDiscoveryService.autodiscovery=function(p0,callback){dwr.engine._execute(FeedsDiscoveryService._path,'FeedsDiscoveryService','autodiscovery',p0,callback);}
if(TopListSettingsService==null)var TopListSettingsService={};TopListSettingsService._path=''+JAWR.jawr_dwr_path+'';TopListSettingsService.saveCategoryState=function(p0,p1,p2,callback){dwr.engine._execute(TopListSettingsService._path,'TopListSettingsService','saveCategoryState',p0,p1,p2,callback);}
if(PortalPersistenceService==null)var PortalPersistenceService={};PortalPersistenceService._path=''+JAWR.jawr_dwr_path+'';PortalPersistenceService.removePortlet=function(p0,callback){dwr.engine._execute(PortalPersistenceService._path,'PortalPersistenceService','removePortlet',p0,callback);}
PortalPersistenceService.moveBlock=function(p0,p1,callback){dwr.engine._execute(PortalPersistenceService._path,'PortalPersistenceService','moveBlock',p0,p1,callback);}
jQuery.viewPortSize=function(){var viewportWidth;var viewportHeight;if(typeof window.innerWidth!='undefined'){viewportWidth=window.innerWidth;viewportHeight=window.innerHeight;}else if(typeof document.documentElement!='undefined'&&typeof document.documentElement.clientWidth!='undefined'&&document.documentElement.clientWidth!=0){viewportWidth=document.documentElement.clientWidth;viewportHeight=document.documentElement.clientHeight;}else{viewportWidth=document.getElementsByTagName('body')[0].clientWidth;viewportHeight=document.getElementsByTagName('body')[0].clientHeight;}
return{width:viewportWidth,height:viewportHeight};};(function($){var _evalCallback=function(){var callback=$('#evalCallback').remove().html();if(callback!=null){eval(callback);}};var _getJsonData=function(){var data=$j("#jsonData").remove().html();if(data!=null){eval("data = {"+data+"};");return data;}else{return null;}};var _performRequest=function(opts,url,data){var $loading_img;$.ajax({url:url,type:opts.method,data:data,cache:opts.cache,contentType:opts.contentType,beforeSend:function(){opts.onStart(opts);if(opts.loading_img){var spinnerHome=opts.loading_target?typeof opts.loading_target==='string'?$(opts.loading_target):opts.loading_target:opts.target;$loading_img=$('<div />').attr('id','AjaxifyLoading').append($('<img />').attr({'src':opts.loading_img,'alt':'Loading...'})).appendTo(spinnerHome);}},success:function(HTML){$loading_img&&$loading_img.remove();var content;if(opts.tagToLoad){content=$(HTML).find(opts.tagToLoad).clone();}else{content=$(HTML);}
$(opts.target).empty().append(content);_evalCallback();opts.onSuccess(opts,_getJsonData());},complete:function(){opts.onComplete(opts);},error:function(){$loading_img&&$loading_img.remove();opts.onError(opts);}});};$.fn.ajaxify=function(options){if(!jQuery(this).size()){return false;}
return this.each(function(){var defaults=$.extend({},$.fn.ajaxify.defaults,options),$this=$(this),collectParams=function(){var paramString=defaults.params;if(defaults.forms){paramString+='&'+$(defaults.forms).serialize();}
return paramString;};var eventHandler=function(){_performRequest(defaults,defaults.link||($this.attr('action')||$this.attr('href')),collectParams());return false;};$this.bind(defaults.event,eventHandler);});};$.fn.ajaxify.defaults={event:'click',link:false,target:'#container',tagToLoad:false,method:'GET',loading_img:false,loading_target:false,forms:false,params:'ajax=true',cache:false,onStart:function(op){},onError:function(op){},onSuccess:function(op){},onComplete:function(op){}};})(jQuery);(function($){$.widget("ui.modalDialog",{_init:function(){this._overlayLayer=null;this._lockerLayer=null;this._closed=false;},update:function(){var wnd=$(window);var wndSize=jQuery.viewPortSize();var ww=wndSize.width,wh=wndSize.height,wl=wnd.scrollLeft(),ws=wnd.scrollTop();var dw=this.element.width(),dh=this.element.height();var top=(wh-dh)/2;if(top<0)top=0;top+=ws;var left=(ww-dw)/2;if(left<0)left=0;left+=wl;this.element.css({position:"absolute",zIndex:9999,top:top,left:left});},loadingOverlay:function(loading){if(this.options.overlay){this._showOverlay();if(loading){var overlayLoading=$("<img/>").attr("src",DDI.contextPath+"/img/overlay-loading.gif");$(this._overlayLayer).append(overlayLoading);}else{$("img",this._overlayLayer).remove();}}},_showOverlay:function(){if(this._overlayLayer){return;}
var _this=this;var overlayHeight=function(){var windowHeight=0;if(window.innerHeight&&window.scrollMaxY){windowHeight=window.innerHeight+window.scrollMaxY;}
else{if(document.documentElement&&document.documentElement.scrollHeight){windowHeight=document.documentElement.scrollHeight;}
else{if(document.body&&document.body.scrollHeight){windowHeight=document.body.scrollHeight;}}}
return windowHeight;};this._overlayLayer=$('<div/>').appendTo(document.body).addClass('overlay').css({borderWidth:0,margin:0,padding:0,position:'fixed',top:0,left:0,height:'100%',width:'100%',zIndex:7000});if(this.options.removable===true){this._overlayLayer.css({opacity:0.5,background:"black"}).click(function(){_this.close();});}else{this._overlayLayer.css({opacity:0,background:"black"});}
if($.browser.msie&&/6.0/.test(navigator.userAgent)){$('select').hide();}
var resizeCB=function(){_this.update();if($(document.body).height()>$(window).height()){return;}
var height=overlayHeight();_this._overlayLayer.height(height);_this._overlayLayer.height();};$(window).bind('resize.modaldialog',null,resizeCB);},_destroyOverlay:function(){this._overlayLayer!==null&&this._overlayLayer.remove();this._overlayLayer=null;$(window).unbind('resize.modaldialog');$.browser.msie&&/6.0/.test(navigator.userAgent)&&$('select').show();},open:function(){this._closed=false;this.update();if(this.options.overlay){this.loadingOverlay(false);this._showOverlay();}
this.element.show();this._overlayLayer.height();},closed:function(){return this._closed;},close:function(){this._destroyOverlay();this.element.hide();this.releaseResources();this._closed=true;},lock:function(){this._closed=false;this._lockerLayer=$("<div/>").appendTo(this.element).addClass('locker').css({width:this.element.width(),height:this.element.height()});},unlock:function(){this._lockerLayer!==null&&this._lockerLayer.remove();this._lockerLayer=null;},opened:function(){return this.element.css("display")!=="none";},locked:function(){return this._lockerLayer!==null;},closeHandler:function(fn){this.options.onDialogClose=fn;},removable:function(value){this.options.removable=value;},releaseResources:function(){this.options.onDialogClose();}});$.extend($.ui.modalDialog,{getter:"opened locked closed releaseResources",setter:"closeHandler",defaults:{overlay:true,removable:true,onDialogClose:function(){return false;}}});$(document).ready(function(){$("#modalDialog").modalDialog();});$.fn.extend({dialogAjaxify:function(params){var dialogSelector='#modalDialog';var dialogLayer=$(dialogSelector);var p=$.extend({update_position:true,target:dialogSelector,loading_target:dialogSelector+' .locker',loading_img:DDI.contextPath+'/img/loading.gif'},params);$.extend(p,{onStart:function(){if(params!==undefined&&params['onStart']!==undefined){params.onStart();}
dialogLayer.modalDialog("loadingOverlay",true);dialogLayer.modalDialog("releaseResources");dialogLayer.modalDialog("lock");},onSuccess:function(opts,jsonData){if(!dialogLayer.modalDialog("closed")){dialogLayer.modalDialog("unlock");dialogLayer.modalDialog("loadingOverlay",false);if(!dialogLayer.modalDialog("opened")){dialogLayer.modalDialog("open");}
if(p.update_position){dialogLayer.modalDialog("update");}}
if(params!==undefined&&params['onSuccess']!==undefined){params.onSuccess(jsonData);}
$('.dialogCancel',dialogLayer).click(function(){dialogLayer.modalDialog("close");return false;});}});this.ajaxify(p);},showOverlay:function(){var dialogSelector='#modalDialog';var dialogLayer=$(dialogSelector);dialogLayer.modalDialog("removable",false);dialogLayer.modalDialog("loadingOverlay",false);}});})(jQuery);
(function($){$.extend($.fn,{livequery:function(type,fn,fn2){var self=this,q;if($.isFunction(type))
fn2=fn,fn=type,type=undefined;$.each($.livequery.queries,function(i,query){if(self.selector==query.selector&&self.context==query.context&&type==query.type&&(!fn||fn.$lqguid==query.fn.$lqguid)&&(!fn2||fn2.$lqguid==query.fn2.$lqguid))
return(q=query)&&false;});q=q||new $.livequery(this.selector,this.context,type,fn,fn2);q.stopped=false;q.run();return this;},expire:function(type,fn,fn2){var self=this;if($.isFunction(type))
fn2=fn,fn=type,type=undefined;$.each($.livequery.queries,function(i,query){if(self.selector==query.selector&&self.context==query.context&&(!type||type==query.type)&&(!fn||fn.$lqguid==query.fn.$lqguid)&&(!fn2||fn2.$lqguid==query.fn2.$lqguid)&&!this.stopped)
$.livequery.stop(query.id);});return this;}});$.livequery=function(selector,context,type,fn,fn2){this.selector=selector;this.context=context||document;this.type=type;this.fn=fn;this.fn2=fn2;this.elements=[];this.stopped=false;this.id=$.livequery.queries.push(this)-1;fn.$lqguid=fn.$lqguid||$.livequery.guid++;if(fn2)fn2.$lqguid=fn2.$lqguid||$.livequery.guid++;return this;};$.livequery.prototype={stop:function(){var query=this;if(this.type)
this.elements.unbind(this.type,this.fn);else if(this.fn2)
this.elements.each(function(i,el){query.fn2.apply(el);});this.elements=[];this.stopped=true;},run:function(){if(this.stopped)return;var query=this;var oEls=this.elements,els=$(this.selector,this.context),nEls=els.not(oEls);this.elements=els;if(this.type){nEls.bind(this.type,this.fn);if(oEls.length>0)
$.each(oEls,function(i,el){if($.inArray(el,els)<0)
$.event.remove(el,query.type,query.fn);});}
else{nEls.each(function(){query.fn.apply(this);});if(this.fn2&&oEls.length>0)
$.each(oEls,function(i,el){if($.inArray(el,els)<0)
query.fn2.apply(el);});}}};$.extend($.livequery,{guid:0,queries:[],queue:[],running:false,timeout:null,checkQueue:function(){if($.livequery.running&&$.livequery.queue.length){var length=$.livequery.queue.length;while(length--)
$.livequery.queries[$.livequery.queue.shift()].run();}},pause:function(){$.livequery.running=false;},play:function(){$.livequery.running=true;$.livequery.run();},registerPlugin:function(){$.each(arguments,function(i,n){if(!$.fn[n])return;var old=$.fn[n];$.fn[n]=function(){var r=old.apply(this,arguments);$.livequery.run();return r;}});},run:function(id){if(id!=undefined){if($.inArray(id,$.livequery.queue)<0)
$.livequery.queue.push(id);}
else
$.each($.livequery.queries,function(id){if($.inArray(id,$.livequery.queue)<0)
$.livequery.queue.push(id);});if($.livequery.timeout)clearTimeout($.livequery.timeout);$.livequery.timeout=setTimeout($.livequery.checkQueue,20);},stop:function(id){if(id!=undefined)
$.livequery.queries[id].stop();else
$.each($.livequery.queries,function(id){$.livequery.queries[id].stop();});}});$.livequery.registerPlugin('append','prepend','after','before','wrap','attr','removeAttr','addClass','removeClass','toggleClass','empty','remove');$(function(){$.livequery.play();});var init=$.prototype.init;$.prototype.init=function(a,c){var r=init.apply(this,arguments);if(a&&a.selector)
r.context=a.context,r.selector=a.selector;if(typeof a=='string')
r.context=c||document,r.selector=a;return r;};$.prototype.init.prototype=$.prototype;})(jQuery);;(function($){$.fn.extend({autocomplete:function(urlOrData,options){var isUrl=typeof urlOrData=="string";options=$.extend({},$.Autocompleter.defaults,{url:isUrl?urlOrData:null,data:isUrl?null:urlOrData,delay:isUrl?$.Autocompleter.defaults.delay:10,max:options&&!options.scroll?10:150},options);options.highlight=options.highlight||function(value){return value;};options.formatMatch=options.formatMatch||options.formatItem;return this.each(function(){new $.Autocompleter(this,options);});},result:function(handler){return this.bind("result",handler);},search:function(handler){return this.trigger("search",[handler]);},flushCache:function(){return this.trigger("flushCache");},setOptions:function(options){return this.trigger("setOptions",[options]);},unautocomplete:function(){return this.trigger("unautocomplete");}});$.Autocompleter=function(input,options){var KEY={UP:38,DOWN:40,DEL:46,TAB:9,RETURN:13,ESC:27,COMMA:188,PAGEUP:33,PAGEDOWN:34,BACKSPACE:8};var $input=$(input).attr("autocomplete","off").addClass(options.inputClass);var timeout;var previousValue="";var cache=$.Autocompleter.Cache(options);var hasFocus=0;var lastKeyPressCode;var config={mouseDownOnSelect:false};var select=$.Autocompleter.Select(options,input,selectCurrent,config);var blockSubmit;$.browser.opera&&$(input.form).bind("submit.autocomplete",function(){if(blockSubmit){blockSubmit=false;return false;}});$input.bind(($.browser.opera?"keypress":"keydown")+".autocomplete",function(event){lastKeyPressCode=event.keyCode;switch(event.keyCode){case KEY.UP:event.preventDefault();if(select.visible()){select.prev();}else{onChange(0,true);}
break;case KEY.DOWN:event.preventDefault();if(select.visible()){select.next();}else{onChange(0,true);}
break;case KEY.PAGEUP:event.preventDefault();if(select.visible()){select.pageUp();}else{onChange(0,true);}
break;case KEY.PAGEDOWN:event.preventDefault();if(select.visible()){select.pageDown();}else{onChange(0,true);}
break;case options.multiple&&$.trim(options.multipleSeparator)==","&&KEY.COMMA:case KEY.TAB:case KEY.RETURN:if(selectCurrent()){event.preventDefault();blockSubmit=true;return false;}
break;case KEY.ESC:select.hide();break;default:clearTimeout(timeout);timeout=setTimeout(onChange,options.delay);break;}}).focus(function(){hasFocus++;}).blur(function(){hasFocus=0;if(!config.mouseDownOnSelect){hideResults();}}).click(function(){if(hasFocus++>1&&!select.visible()){onChange(0,true);}}).bind("search",function(){var fn=(arguments.length>1)?arguments[1]:null;function findValueCallback(q,data){var result;if(data&&data.length){for(var i=0;i<data.length;i++){if(data[i].result.toLowerCase()==q.toLowerCase()){result=data[i];break;}}}
if(typeof fn=="function")fn(result);else $input.trigger("result",result&&[result.data,result.value]);}
$.each(trimWords($input.val()),function(i,value){request(value,findValueCallback,findValueCallback);});}).bind("flushCache",function(){cache.flush();}).bind("setOptions",function(){$.extend(options,arguments[1]);if("data"in arguments[1])
cache.populate();}).bind("unautocomplete",function(){select.unbind();$input.unbind();$(input.form).unbind(".autocomplete");});function selectCurrent(){var selected=select.selected();if(!selected)
return false;var v=selected.result;previousValue=v;if(options.multiple){var words=trimWords($input.val());if(words.length>1){v=words.slice(0,words.length-1).join(options.multipleSeparator)+options.multipleSeparator+v;}
v+=options.multipleSeparator;}
$input.val(v);hideResultsNow();$input.trigger("result",[selected.data,selected.value]);return true;}
function onChange(crap,skipPrevCheck){if(lastKeyPressCode==KEY.DEL){select.hide();return;}
var currentValue=$input.val();if(!skipPrevCheck&&currentValue==previousValue)
return;previousValue=currentValue;currentValue=lastWord(currentValue);if(currentValue.length>=options.minChars){$input.addClass(options.loadingClass);if(!options.matchCase)
currentValue=currentValue.toLowerCase();request(currentValue,receiveData,hideResultsNow);}else{stopLoading();select.hide();}};function trimWords(value){if(!value){return[""];}
var words=value.split(options.multipleSeparator);var result=[];$.each(words,function(i,value){if($.trim(value))
result[i]=$.trim(value);});return result;}
function lastWord(value){if(!options.multiple)
return value;var words=trimWords(value);return words[words.length-1];}
function autoFill(q,sValue){if(options.autoFill&&(lastWord($input.val()).toLowerCase()==q.toLowerCase())&&lastKeyPressCode!=KEY.BACKSPACE){$input.val($input.val()+sValue.substring(lastWord(previousValue).length));$.Autocompleter.Selection(input,previousValue.length,previousValue.length+sValue.length);}};function hideResults(){clearTimeout(timeout);timeout=setTimeout(hideResultsNow,200);};function hideResultsNow(){var wasVisible=select.visible();select.hide();clearTimeout(timeout);stopLoading();if(options.mustMatch){$input.search(function(result){if(!result){if(options.multiple){var words=trimWords($input.val()).slice(0,-1);$input.val(words.join(options.multipleSeparator)+(words.length?options.multipleSeparator:""));}
else
$input.val("");}});}
if(wasVisible)
$.Autocompleter.Selection(input,input.value.length,input.value.length);};function receiveData(q,data){if(data&&data.length&&hasFocus){stopLoading();select.display(data,q);autoFill(q,data[0].value);select.show();}else{hideResultsNow();}};function request(term,success,failure){if(!options.matchCase)
term=term.toLowerCase();var data=cache.load(term);if(data&&data.length){success(term,data);}else if((typeof options.url=="string")&&(options.url.length>0)){var extraParams={timestamp:+new Date()};$.each(options.extraParams,function(key,param){extraParams[key]=typeof param=="function"?param():param;});$.ajax({mode:"abort",port:"autocomplete"+input.name,dataType:options.dataType,url:options.url,data:$.extend({q:lastWord(term),limit:options.max},extraParams),success:function(data){var parsed=options.parse&&options.parse(data)||parse(data);cache.add(term,parsed);success(term,parsed);}});}else{select.emptyList();failure(term);}};function parse(data){var parsed=[];var rows=data.split("\n");for(var i=0;i<rows.length;i++){var row=$.trim(rows[i]);if(row){row=row.split("|");parsed[parsed.length]={data:row,value:row[0],result:options.formatResult&&options.formatResult(row,row[0])||row[0]};}}
return parsed;};function stopLoading(){$input.removeClass(options.loadingClass);};};$.Autocompleter.defaults={inputClass:"ac_input",resultsClass:"ac_results",loadingClass:"ac_loading",minChars:1,delay:400,matchCase:false,matchSubset:true,matchContains:false,cacheLength:10,max:100,mustMatch:false,extraParams:{},selectFirst:true,formatItem:function(row){return row[0];},formatMatch:null,autoFill:false,width:0,multiple:false,multipleSeparator:", ",highlight:function(value,term){return value.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)("+term.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi,"\\$1")+")(?![^<>]*>)(?![^&;]+;)","gi"),"<strong>$1</strong>");},scroll:true,scrollHeight:180};$.Autocompleter.Cache=function(options){var data={};var length=0;function matchSubset(s,sub){if(!options.matchCase)
s=s.toLowerCase();var i=s.indexOf(sub);if(options.matchContains=="word"){i=s.toLowerCase().search("\\b"+sub.toLowerCase());}
if(i==-1)return false;return i==0||options.matchContains;};function add(q,value){if(length>options.cacheLength){flush();}
if(!data[q]){length++;}
data[q]=value;}
function populate(){if(!options.data)return false;var stMatchSets={},nullData=0;if(!options.url)options.cacheLength=1;stMatchSets[""]=[];for(var i=0,ol=options.data.length;i<ol;i++){var rawValue=options.data[i];rawValue=(typeof rawValue=="string")?[rawValue]:rawValue;var value=options.formatMatch(rawValue,i+1,options.data.length);if(value===false)
continue;var firstChar=value.charAt(0).toLowerCase();if(!stMatchSets[firstChar])
stMatchSets[firstChar]=[];var row={value:value,data:rawValue,result:options.formatResult&&options.formatResult(rawValue)||value};stMatchSets[firstChar].push(row);if(nullData++<options.max){stMatchSets[""].push(row);}};$.each(stMatchSets,function(i,value){options.cacheLength++;add(i,value);});}
setTimeout(populate,25);function flush(){data={};length=0;}
return{flush:flush,add:add,populate:populate,load:function(q){if(!options.cacheLength||!length)
return null;if(!options.url&&options.matchContains){var csub=[];for(var k in data){if(k.length>0){var c=data[k];$.each(c,function(i,x){if(matchSubset(x.value,q)){csub.push(x);}});}}
return csub;}else
if(data[q]){return data[q];}else
if(options.matchSubset){for(var i=q.length-1;i>=options.minChars;i--){var c=data[q.substr(0,i)];if(c){var csub=[];$.each(c,function(i,x){if(matchSubset(x.value,q)){csub[csub.length]=x;}});return csub;}}}
return null;}};};$.Autocompleter.Select=function(options,input,select,config){var CLASSES={ACTIVE:"ac_over"};var listItems,active=-1,data,term="",needsInit=true,element,list;function init(){if(!needsInit)
return;element=$("<div/>").hide().addClass(options.resultsClass).css("position","absolute").appendTo(document.body);list=$("<ul/>").appendTo(element).mouseover(function(event){if(target(event).nodeName&&target(event).nodeName.toUpperCase()=='LI'){active=$("li",list).removeClass(CLASSES.ACTIVE).index(target(event));$(target(event)).addClass(CLASSES.ACTIVE);}}).click(function(event){$(target(event)).addClass(CLASSES.ACTIVE);select();input.focus();return false;}).mousedown(function(){config.mouseDownOnSelect=true;}).mouseup(function(){config.mouseDownOnSelect=false;});if(options.width>0)
element.css("width",options.width);needsInit=false;}
function target(event){var element=event.target;while(element&&element.tagName!="LI")
element=element.parentNode;if(!element)
return[];return element;}
function moveSelect(step){listItems.slice(active,active+1).removeClass(CLASSES.ACTIVE);movePosition(step);var activeItem=listItems.slice(active,active+1).addClass(CLASSES.ACTIVE);if(options.scroll){var offset=0;listItems.slice(0,active).each(function(){offset+=this.offsetHeight;});if((offset+activeItem[0].offsetHeight-list.scrollTop())>list[0].clientHeight){list.scrollTop(offset+activeItem[0].offsetHeight-list.innerHeight());}else if(offset<list.scrollTop()){list.scrollTop(offset);}}};function movePosition(step){active+=step;if(active<0){active=listItems.size()-1;}else if(active>=listItems.size()){active=0;}}
function limitNumberOfItems(available){return options.max&&options.max<available?options.max:available;}
function fillList(){list.empty();var max=limitNumberOfItems(data.length);for(var i=0;i<max;i++){if(!data[i])
continue;var formatted=options.formatItem(data[i].data,i+1,max,data[i].value,term);if(formatted===false)
continue;var li=$("<li/>").html(options.highlight(formatted,term)).addClass(i%2==0?"ac_even":"ac_odd").appendTo(list)[0];$.data(li,"ac_data",data[i]);}
listItems=list.find("li");if(options.selectFirst){listItems.slice(0,1).addClass(CLASSES.ACTIVE);active=0;}
if($.fn.bgiframe)
list.bgiframe();}
return{display:function(d,q){init();data=d;term=q;fillList();},next:function(){moveSelect(1);},prev:function(){moveSelect(-1);},pageUp:function(){if(active!=0&&active-8<0){moveSelect(-active);}else{moveSelect(-8);}},pageDown:function(){if(active!=listItems.size()-1&&active+8>listItems.size()){moveSelect(listItems.size()-1-active);}else{moveSelect(8);}},hide:function(){element&&element.hide();listItems&&listItems.removeClass(CLASSES.ACTIVE);active=-1;},visible:function(){return element&&element.is(":visible");},current:function(){return this.visible()&&(listItems.filter("."+CLASSES.ACTIVE)[0]||options.selectFirst&&listItems[0]);},show:function(){var offset=$(input).offset();element.css({width:typeof options.width=="string"||options.width>0?options.width:$(input).width(),top:offset.top+input.offsetHeight,left:offset.left}).show();if(options.scroll){list.scrollTop(0);list.css({maxHeight:options.scrollHeight,overflow:'auto'});if($.browser.msie&&typeof document.body.style.maxHeight==="undefined"){var listHeight=0;listItems.each(function(){listHeight+=this.offsetHeight;});var scrollbarsVisible=listHeight>options.scrollHeight;list.css('height',scrollbarsVisible?options.scrollHeight:listHeight);if(!scrollbarsVisible){listItems.width(list.width()-parseInt(listItems.css("padding-left"))-parseInt(listItems.css("padding-right")));}}}},selected:function(){var selected=listItems&&listItems.filter("."+CLASSES.ACTIVE).removeClass(CLASSES.ACTIVE);return selected&&selected.length&&$.data(selected[0],"ac_data");},emptyList:function(){list&&list.empty();},unbind:function(){element&&element.remove();}};};$.Autocompleter.Selection=function(field,start,end){if(field.createTextRange){var selRange=field.createTextRange();selRange.collapse(true);selRange.moveStart("character",start);selRange.moveEnd("character",end);selRange.select();}else if(field.setSelectionRange){field.setSelectionRange(start,end);}else{if(field.selectionStart){field.selectionStart=start;field.selectionEnd=end;}}
field.focus();};})(jQuery);(function($){var autocompleteCounter=1;var id;$.fn.extend({ddiAutocomplete:function(options){id=autocompleteCounter++;var defaults={width:320,max:150,autoFill:false,highlight:false,url:DDI.contextPath+"/geochoice/suggest/",formatItem:function(row,i,total,value,term){var matched=row[0];if(row[1]!=undefined){var resulted=row[1];}
matched=matched.replace(new RegExp("(^"+term+")","gi"),"<strong>$1</strong>");return'<div><div style="float:left">'+matched+'</div>'
+(resulted!=undefined?'<div style="float:right">'+resulted+'</div></div>':'</div>');},formatResult:function(row){var result=row[1];if(row[1]==undefined){result=row[0];}
return result;},resultsClass:'ac_results '+id};var opts=$.extend(defaults,options);$(this).autocomplete(opts.url,opts);if($.browser.msie){var this_=this;$("div.ac_results."+id+" ul").livequery('scroll',function(){this_.focus();$(this).trigger('mouseup');});}},ddiAutocompleteDetach:function(){$(this).unautocomplete();$("div.ac_results."+id).remove().hide();}});})(jQuery);;(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;$.blockUI=function(opts){install(window,opts);};$.unblockUI=function(opts){remove(window,opts);};$.growlUI=function(title,message,timeout){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,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.18;$.blockUI.defaults={message:'<h1>Please wait...</h1>',css:{padding:0,margin:0,width:'30%',top:'40%',left:'35%',textAlign:'center',color:'#000',border:'3px solid #aaa',backgroundColor:'#fff',cursor:'wait'},overlayCSS:{backgroundColor:'#000',opacity:'0.6'},growlCSS:{width:'350px',top:'10px',left:'',right:'10px',border:'none',padding:'5px',opacity:'0.6',cursor:null,color:'#fff',backgroundColor:'#000','-webkit-border-radius':'10px','-moz-border-radius':'10px'},iframeSrc:'javascript:false',forceIframe:false,baseZ:1000,centerX:true,centerY:true,allowBodyStretch:true,constrainTabKey:true,fadeIn:200,fadeOut:400,timeout:0,showOverlay:true,focusInput:true,applyPlatformOpacityRules:true,onUnblock:null,quirksmodeOffsetHack:4};var ie6=$.browser.msie&&/MSIE 6.0/.test(navigator.userAgent);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||{});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)?$('<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;cursor:wait;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0"></div>');var lyr3=full?$('<div class="blockUI blockMsg blockPage" style="z-index:'+z+';display:none;position:fixed"></div>'):$('<div class="blockUI blockMsg blockElement" style="z-index:'+z+';display:none;position:absolute"></div>');if(msg)
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)
lyr1.css('opacity','0.0');$([lyr1[0],lyr2[0],lyr3[0]]).appendTo(full?'body':el);var expr=$.browser.msie&&($.browser.version<8||!$.boxModel)&&(!$.boxModel||$('object,embed',full?null:el).length>0);if(ie6||(expr&&lyr3[0].style.setExpression)){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){lyr3.append(msg);if(msg.jquery||msg.nodeType)
$(msg).show();}
if($.browser.msie&&opts.showOverlay)
lyr1.show();if(opts.fadeIn){if(opts.showOverlay)
lyr2._fadeIn(opts.fadeIn);if(msg)
lyr3.fadeIn(opts.fadeIn);}
else{if(opts.showOverlay)
lyr2.show();if(msg)
lyr3.show();}
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=full?$('body').children().filter('.blockUI'):$('.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);$(data.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(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;}}}
if($(e.target).parents('div.blockMsg').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);
(function($){$.widget("ui.dropdown",{_init:function(){this.dropDownVisible=false;var _this=this;this.dropDownObserver=function(event){var isChildOf=$(event.target)[0]==$(_this.element)[0];if(!isChildOf){$(event.target).parents().each(function(){isChildOf=isChildOf||$(this)[0]==$(_this.element)[0];});}
if(!isChildOf){_this.hideDropDown();}};$(this.options.opener).click(function(){if(!_this.visible()){_this.showDropDown();}else{_this.hideDropDown();}
return false;});},showDropDown:function(){this.dropDownVisible=true;$(document).bind("click.dropdown_"+this.options.id,null,this.dropDownObserver);this.options.onShow&&this.options.onShow.call($(this.element),$(this.options.opener));this.options.showFn.call($(this.element),this.options.toggleSpeed);},hideDropDown:function(){this.dropDownVisible=false;$(document).unbind("click.dropdown_"+this.options.id,null,this.dropDownObserver);this.options.hideFn.call($(this.element),this.options.toggleSpeed);this.options.afterHide&&this.options.afterHide.call($(this.element),$(this.options.opener));},visible:function(){return this.dropDownVisible;}});$.extend($.ui.dropdown,{getter:"visible",defaults:{id:"",opener:undefined,toggleSpeed:undefined,onShow:undefined,afterHide:undefined,showFn:$().show,hideFn:$().hide}});})(jQuery);(function($){$.widget("ui.dropdownWizard",{_init:function(){this._currentlyOpen=-1;this._stepElements=this._prepareStepElements(this.options.stepElements);var _this=this;this.hideWizardObserver=function(event){if(!event.isPropagationStopped()&&_this.visible()){var currentElement=$(_this._stepElements[_this._currentlyOpen].element)[0];var isChildOf=$(event.target)[0]==currentElement;if(!isChildOf){$(event.target).parents().each(function(){isChildOf=isChildOf||$(this)[0]==currentElement;});}
if(!isChildOf){_this.hideWizard();}}};$(this.options.opener).click(function(){if(!_this.visible()){_this.showWizard();}else{_this.hideWizard();}
return false;});if(this.options.fwdSwitcher){$(this.options.fwdSwitcher).live('click',function(event){event.stopPropagation();_this.stepForward();return false;});}
if(this.options.backSwitcher){$(this.options.backSwitcher).live('click',function(event){event.stopPropagation();_this.stepBack();return false;});}},_prepareStepElements:function(optionsElements){if(optionsElements.length>1&&this.options.content){throw new Error("'content' may be specified if there is only one element.");}
var resultElements=new Array();for(var i=0;i<optionsElements.length;i++){var optionsElement=optionsElements[i];if(optionsElement.element){resultElements[i]=optionsElement;}else{resultElements[i]={element:optionsElement};}
if(this.options.content){resultElements[i].content=this.options.content;}}
return resultElements;},showWizard:function(){var firstStep=this._stepElements[0];if(firstStep){this._currentlyOpen=0;$(document).bind("click.dropdownWizard_"+this.options.id,null,this.hideWizardObserver);this._loadStep(firstStep);}},_loadStep:function(stepInfo){var $stepElement=$(stepInfo.element);var callback=this._createStepShowCallback(this.options,stepInfo);if(stepInfo.content&&!$stepElement.children().length){$stepElement.load(stepInfo.content.url,this._createStepInitCallback(stepInfo,callback));}else{callback();}},_createStepShowCallback:function(options,stepInfo){return function(){var $stepElement=$(stepInfo.element);options.onShow&&options.onShow.call($stepElement);options.showFn.call($stepElement,options.toggleSpeed,stepInfo.afterShow);};},_createStepInitCallback:function(stepInfo,callback){if(!stepInfo.content.init){return callback;}else{return function(){stepInfo.content.init();callback();};}},hideWizard:function(){var wasOpen=this._currentlyOpen;this._currentlyOpen=-1;var wasOpenStep=this._stepElements[wasOpen];if(wasOpenStep){$(document).unbind("click.dropdownWizard_"+this.options.id,null,this.hideWizardObserver);this._hideStep(this.options,wasOpenStep);}},_hideStep:function(options,stepInfo){var $stepElement=$(stepInfo.element);options.hideFn.call($stepElement,options.toggleSpeed,stepInfo.afterHide);options.afterHide&&options.afterHide.call($stepElement);},stepForward:function(){this.switchToStep(this._currentlyOpen+1);},stepBack:function(){this.switchToStep(this._currentlyOpen-1);},switchToStep:function(stepNum){if(this.visible()){var previous=this._currentlyOpen;var previousStep=this._stepElements[previous];var futureStep=this._stepElements[stepNum];if(futureStep){this._currentlyOpen=stepNum;this._hideStep(this.options,previousStep);this._loadStep(futureStep);}}},visible:function(){return this._currentlyOpen>-1&&this._stepElements[this._currentlyOpen];}});$.extend($.ui.dropdownWizard,{defaults:{id:"",opener:undefined,fwdSwitcher:undefined,backSwitcher:undefined,stepElements:[],toggleSpeed:undefined,onShow:undefined,afterHide:undefined,content:null,showFn:$().show,hideFn:$().hide}});})(jQuery);
DDI.Dialog={openDialog:function(url,postParams,callback){$j("#modalDialog").load(url,postParams,function(data,textStatus){if(!$j(this).modalDialog("opened")){$j(this).modalDialog("open");}
if(callback!==undefined){callback(data,textStatus);}});},closeDialog:function(){$j("#modalDialog").modalDialog("close");},isDialogClosed:function(){return $j("#modalDialog").modalDialog("closed");}};(function($){DDI.GeoChoice={mapContainerSelector:null,countyIdMapping:null,initGeoChoice:function(opts){if(opts==null||opts.mapContainerSelector==null||opts.countyIdMapping==null){throw new Error("Illegal argument exception! Required arguments are not specified!");}
this.mapContainerSelector=opts.mapContainerSelector;this.countyIdMapping=opts.countyIdMapping;},detachAutocompleter:function(){$('#munNameAutocomplete').ddiAutocompleteDetach();},createAutocompleter:function(){$('#munNameAutocomplete').ddiAutocomplete({width:250});}};})(jQuery);(function($){$.extend(DDI.GeoChoice,{initMap:function(){var that=this;$("area",this.mapContainerSelector).each(function(){var countyId=that.countyIdMapping[this.id];var thisAreaElement=this;$(this).click(function(){that._loadMunicipalities(countyId);return false;});$("#countyLink"+countyId).click(function(){$(thisAreaElement).click();return false;});$("#countyLink"+countyId).mouseover(function(){$(thisAreaElement).mouseover();});$("#countyLink"+countyId).mouseout(function(){$(thisAreaElement).mouseout();});});},_loadMunicipalities:function(countyId){if(this.currentRequest){this.currentRequest.abort();}
var loader='<img src="'+DDI.contextPath+'/img/ajax-loader.gif" style="top: 50px; left: 45%; position: relative;">';$("#mapCounties").hide();$("#mapRes").empty().append(loader);this.currentRequest=$.ajax({type:"GET",url:DDI.contextPath+"/geochoice/county/",data:{id:countyId},success:function(response){$("#mapRes").html(response);DDI.GeoChoice.initMunicipalityLinks();}});},initChooseForm:function(){var that=this;$('#municipalityForm').submit(function(){var municipalityName=$("#municipalityForm input[name='name']").val();if($.trim(municipalityName).length==0){that._showEmptyMunicipalityError();return false;}
var isMunicipalityNameValid=that._validateMunicipalityName(municipalityName);if(isMunicipalityNameValid||false){$(".geoSelectorWrapper").dropdownWizard("hideWizard");return true;}else{that._showWrongMunicipalityNameError(municipalityName);return false;}});},_validateMunicipalityName:function(municipalityName){var result;$.ajax({type:"GET",url:DDI.contextPath+"/geochoice/validate/",data:{name:municipalityName},dataType:'json',async:false,success:function(response){result=response.valid;}});return result;},_showEmptyMunicipalityError:function(){var formErrors=$("#municipalityForm .msg");$("#municipalityErrorCause",formErrors).html(i18n.validation.errors.blank_query()).show();$("#municipalityErrorHint",formErrors).html(i18n.geochoice.error.suggestion()).show();formErrors.show();},_showWrongMunicipalityNameError:function(municipalityName){var formErrors=$("#municipalityForm .msg");$("#municipalityErrorCause",formErrors).html(i18n.geochoice.error.didnt_match(this._getShortName(municipalityName))).show();$("#municipalityErrorHint",formErrors).html(i18n.geochoice.error.suggestion()).show();formErrors.show();},_getShortName:function(municipalityName){var shortMunicipalityName;if(municipalityName&&municipalityName.length>20){shortMunicipalityName=municipalityName.substring(0,20)+"...";}else{shortMunicipalityName=municipalityName;}
return shortMunicipalityName;},initMunicipalityLinks:function(){$(".municipalityLink").click(function(){$(".geoSelectorWrapper").dropdownWizard("hideWizard");return true;});}});})(jQuery);<!--
function MM_preloadImages(){var d=document;if(d.images){if(!d.MM_p)d.MM_p=new Array();var i,j=d.MM_p.length,a=MM_preloadImages.arguments;for(i=0;i<a.length;i++)
if(a[i].indexOf("#")!=0){d.MM_p[j]=new Image;d.MM_p[j++].src=a[i];}}}
function MM_swapImgRestore(){var i,x,a=document.MM_sr;for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++)x.src=x.oSrc;}
function MM_findObj(n,d){var p,i,x;if(!d)d=document;if((p=n.indexOf("?"))>0&&parent.frames.length){d=parent.frames[n.substring(p+1)].document;n=n.substring(0,p);}
if(!(x=d[n])&&d.all)x=d.all[n];for(i=0;!x&&i<d.forms.length;i++)x=d.forms[i][n];for(i=0;!x&&d.layers&&i<d.layers.length;i++)x=MM_findObj(n,d.layers[i].document);if(!x&&d.getElementById)x=d.getElementById(n);return x;}
function MM_swapImage(){var i,j=0,x,a=MM_swapImage.arguments;document.MM_sr=new Array;for(i=0;i<(a.length-2);i+=3)
if((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x;if(!x.oSrc)x.oSrc=x.src;x.src=a[i+2];}}
(function($){DDI.Favorites={loader:'<img class="loader" src="'+DDI.contextPath+'/img/ajax-loader.gif">',init:function(){var _this=this;var showLoader=function(){if($("#favorite-panel").is(":visible")){$("#favorite-panel .list").append(_this.loader);}else{$(".favorite").append(_this.loader);}};var hideLoader=function(){$(".favoritesWrapper .loader").remove();};var updateFavoritesList=function(htmlResponse){$("#favorite-panel .list").empty().html(htmlResponse);};var performFavoritesChange=function(id,action,callback){unBindAll();showLoader();$.ajax({type:"GET",url:DDI.contextPath+"/favorite",data:{id:id,action:action},success:function(response){updateFavoritesList(response);if(callback){callback.call(this);}},complete:function(){hideLoader();bindAll();}});};var addCurrentToFavorites=function(){performFavoritesChange(DDI.municipalityId,"add",function(){$("#saved-msg").slideToggle("slow");window.setTimeout(function(){$("#saved-msg").fadeOut(1000);},5000);$(".addToFavoritesBtn").addClass("added");});return false;};var removeFromFavorites=function(){var id=this.id.replace("delete_","");performFavoritesChange(id,"remove",function(){if(id==DDI.municipalityId){$(".addToFavoritesBtn").removeClass("added");$("#saved-msg").hide();}});return false;};var removeCurrentFromFavorites=function(){$("#saved-msg").hide();performFavoritesChange(DDI.municipalityId,"remove",function(){$(".addToFavoritesBtn").removeClass("added");});return false;};var bindAll=function(){$(".addToFavoritesBtn").live("click",function(){var $this=$(this);if($this.not('.added')){addCurrentToFavorites();}
return false;});$("#undoAddFavorite").live('click',removeCurrentFromFavorites);$("#favorite-panel .delete").click(removeFromFavorites);};var unBindAll=function(){$(".addToFavoritesBtn").unbind("click",addCurrentToFavorites);$("#undoAddFavorite").unbind("click",removeCurrentFromFavorites);$("#favorite-panel .delete").unbind("click",removeFromFavorites);};bindAll();}};})(jQuery);DDI.FBLoginButton={init:function(){var handle_facebook_login=function(){window.location.href=DDI.contextPath+'/auth/facebook';};$j("#fbLogin").click(function(){handle_facebook_login();return false;});}};(function($){$(function(){$.ajaxSetup({cache:false});});})(jQuery);(function($){$(function(){$.blockUI.defaults.message='<img src="'+DDI.contextPath+'/img/loading.gif"/>';$.blockUI.defaults.css.border='none';$.blockUI.defaults.css.backgroundColor='';$.blockUI.defaults.overlayCSS.opacity='0.1';});})(jQuery);(function($){$(function(){$("#favorites-message-container").load(DDI.contextPath+'/fragment/favotire-message.html');$(".save-area").dropdownWizard({id:"favorite",opener:".save-area.favorite-btn",stepElements:["#favorite-panel"],toggleSpeed:"slow",showFn:$().slideDown,hideFn:$().slideUp,content:{url:DDI.contextPath+'/fragment/favorites.html'},onShow:function(){$(".save-area.favorite-btn").addClass("active");$(".geoSelectorWrapper").dropdownWizard("hideWizard");},afterHide:function(){$(".save-area.favorite-btn").removeClass("active");}});DDI.Favorites.init();});})(jQuery);(function($){$(function(){$(".geoSelectorWrapper").dropdownWizard({id:"geoSelect",opener:"#geoSelect, .change-area.area-btn",fwdSwitcher:"#openGeochoice",backSwitcher:"#backToGeoSelect",stepElements:[{element:"#area-panel",content:{url:DDI.contextPath+'/fragment/select-area.html',init:function(){DDI.GeoChoice.createAutocompleter();$("#municipalityForm input[name='name']").ezpz_hint({hintClass:'qHint'});}}},{element:"#map-panel",content:{url:DDI.contextPath+'/fragment/map.html',init:function(){DDI.GeoChoice.initMap();DDI.GeoChoice.initChooseForm();}}}],toggleSpeed:"slow",showFn:$().slideDown,hideFn:$().slideUp,onShow:function(){$(".change-area.area-btn").addClass("active");$("#municipalityForm .msg").hide();var input=$("#municipalityForm input[name='name']");input.val("");input[0].tryShowHint();$("#mapRes").empty();$("#mapCounties").show();$(".save-area").dropdownWizard("hideWizard");},afterHide:function(){$(".change-area.area-btn").removeClass("active");}});});})(jQuery);(function($){$(function(){$("#openLogin").dialogAjaxify({onSuccess:DDI.FBLoginButton.init});$("#openFBLogin").dialogAjaxify({onSuccess:DDI.FBLoginButton.init});$("#createLogin").dialogAjaxify({onSuccess:DDI.FBLoginButton.init});});})(jQuery);(function($){$(function(){$("#mainSearchForm").submit(function(){var q=$j("#mainSearchForm input[name=q]").val();if($.trim(q).length==0){return false;}});$("#mainSearchForm .searchBtn").click(function(){var link=$(this).attr("href")||$(this).parents('form').attr('action');$('#mainSearchForm').attr("action",link).submit();return false;});});})(jQuery);DDI.SignIn={ajaxifyLinks:function(){$j("#forgotPwdLink").dialogAjaxify();$j("#signinSignupLink").dialogAjaxify();}};DDI.ForgotPwd={initDialog:function(){$j("#forgotPwdCancel").click(function(){DDI.Dialog.closeDialog();return false;});}};(function($){$.fn.ezpz_hint=function(options){var defaults={hintClass:'ezpz-hint',hintName:'ezpz_hint_dummy_input'};var settings=$.extend(defaults,options);return this.each(function(i){var hint=new EzpzHint($(this),i,settings);$.extend(this,{tryShowHint:function(){hint.tryShowHint();},hideHint:function(){hint.hideHint();}});});};var EzpzHint=function(input,i,settings){this._init(input,i,settings);};EzpzHint.prototype={_init:function(input,i,settings){var _this=this;_this.inputField=input;_this.hintField=_this._createHintField(i,settings);_this.inputField.attr('autocomplete','off');_this.hintField.focus(function(){_this.hideHint();});_this.inputField.blur(function(){_this.tryShowHint();});_this.hideHint();_this.tryShowHint();},_createHintField:function(i,settings){var input=this.inputField;var id=settings.hintName+'_'+i;var text=input.attr('title');var hint=$('<input type="text" id="'+id+'" value="" />').insertBefore(input);hint.attr('class',input.attr('class'));hint.attr('size',input.attr('size'));hint.attr('autocomplete','off');hint.attr('tabIndex',input.attr('tabIndex'));hint.addClass(settings.hintClass);hint.val(text);return hint;},tryShowHint:function(){if($.trim(this.inputField.val()).length==0){this.inputField.hide();this.hintField.show();}},hideHint:function(){this.inputField.show().focus();this.hintField.hide();}};})(jQuery);(function($){$(function(){$(".searchField").ezpz_hint({hintClass:'qHint'});setTimeout(function(){$(".searchField:first").focus();},1);});})(jQuery);(function($){$.fn.catchEnterAndSendTo=function(target,passEvent){this.bind('keypress.catchEnter',null,function(event){if(event.keyCode==13){target.trigger('click',event.data);return passEvent||false;}});return this;}})(jQuery);(function($){var initSubmitLinks=function(){$(".formSubmitter").live("click",function(){$(this).parents("form:first").submit();return false;});};initSubmitLinks();})(jQuery);(function($){var isFormChanged=false;var listenFormChanges=function(){$('form.prevent-leaving input[type!="submit"][type!="button"], form.prevent-leaving textarea').live('change',processFormDataChanged).bind('change',processFormDataChanged);$('form.prevent-leaving').live('submit',function(){isFormChanged=false;});};var processFormDataChanged=function(){isFormChanged=true;};var displayPopup=function(){if(isFormChanged){return i18n.common.forms.leaving_confirmation();}};if(!window.onbeforeunload){$(listenFormChanges);window.onbeforeunload=displayPopup;}})(jQuery);
(function($){$.fn.extend({ddiCalendar:function(options){$.extend($,{ddiCalendar:{getMonthName:function(date){return Date.CultureInfo.monthNames[date.getMonth()];}}});var $container=this;var defaults={nextMonth:$('.ddi-cal-next',$container),prevMonth:$('.ddi-cal-prev',$container),tableClass:'table.calender',isWeeksTurnOn:false,current:Date.today(),today:Date.today(),beforeDayRender:function(){},onMonthChange:function(){},onShow:function(){}};var o=this.o=$.fn.extend({},defaults,options);$.extend(o,{rows:6});this._initOverlay();this.update(o.current);o.onMonthChange.call(this,o.current);var parent=this;o.nextMonth.click(function(){var newDate=o.current.addMonths(1);o.onMonthChange.call(parent,newDate.clone());return false;});o.prevMonth.click(function(){var newDate=o.current.addMonths(-1);o.onMonthChange.call(parent,newDate.clone());return false;});return this;},update:function(date){this._generateBody(date);},showOverlay:function(){this._overlayLayer.css({width:$(this).width(),height:$(this.o.tableClass,this).height()}).show();},hideOverlay:function(){this._overlayLayer.hide();},_generateBody:function(date){var o=this.o;var daysInMonth=Date.getDaysInMonth(date.getYear(),date.getMonth());var firstDayOfMonth=date.clone().moveToFirstDayOfMonth();var lastDayOfMonth=date.clone().moveToLastDayOfMonth();var firstDayOfNextMonth=date.clone().next().month().moveToFirstDayOfMonth();var container=[];var resultTable=$(o.tableClass,this).empty();var tableHeader=$('<thead></thead>').appendTo(resultTable);var tableHeaderRow=$('<tr></tr>').appendTo(tableHeader);tableHeaderRow.append(o.isWeeksTurnOn?$('<th scope="col">&#32;</th>'):'');var firstDayIdx=Date.CultureInfo.firstDayOfWeek;for(var i=firstDayIdx;i<7;i++){tableHeaderRow.append($('<th scope="col">'+i18n.date.short_names[i]()+'</th>'));}
for(var i=0;i<firstDayIdx;i++){tableHeaderRow.append($('<th scope="col">'+i18n.date.short_names[i]()+'</th>'));}
var tableBody=$('<tbody></tbody>').appendTo(resultTable);var firstDayWeekNumber=firstDayOfMonth.getDay()+(firstDayOfMonth.getDay()<firstDayIdx?7:0);for(var i=firstDayIdx;i<firstDayWeekNumber;i++){container.push(firstDayOfMonth.clone().add({days:-firstDayWeekNumber+i}));}
for(var i=0;i<daysInMonth;i++){container.push(firstDayOfMonth.clone().add({days:i}));}
var nextMonthDays=o.rows*7-container.length;for(var i=0;i<nextMonthDays;i++){container.push(firstDayOfNextMonth.clone().add({days:i}));}
for(var i=0;i<o.rows;i++){var tableBodyRow=$('<tr></tr>');tableBodyRow.append(o.isWeeksTurnOn?$('<th scope="row">'+(container[7*i].getWeekOfYear()+1)+'</th>'):'');for(var j=0;j<7;j++){var idate=container[j+7*i];var dateElement=o.beforeDayRender.call(this,idate,firstDayOfMonth,lastDayOfMonth);dateElement.appendTo(tableBodyRow);if(o.today.equals(idate)){dateElement.addClass('today');}}
tableBodyRow.appendTo(tableBody);}
return resultTable;},_initOverlay:function(){this._overlayLayer=$('<div/>').css({borderWidth:0,margin:0,padding:0,position:'absolute',opacity:0.1,background:'#000',zIndex:1000,display:'none'});$('<img src="'+DDI.contextPath+'/img/loading.gif"/>').appendTo(this._overlayLayer).css({top:'41%',left:'45%',position:'relative'});$(this.o.tableClass,this).before(this._overlayLayer);}});})(jQuery);DDI.UrlHelper={rebuildUrl:function(urlParams,pathName){if(urlParams==undefined){urlParams={};}
if(pathName==null){pathName=window.location.href;}
var params=this._changeParameters(this._getParams(pathName),urlParams);var paramsString=this._toParamsString(params);var url=this._getUrl(pathName);return url+(paramsString!=''?('?'+paramsString):'');},getParamValue:function(name){if(name==undefined){return;}
return this._getParams(window.location.search)[name];},navigateWithReferrer:function(url){var fakeLink=document.createElement("a");if(typeof(fakeLink.click)=='undefined'){window.location.href=url;}else{fakeLink.href=url;document.body.appendChild(fakeLink);fakeLink.click();}},_getParams:function(url){var params=new Object();var idx=url.indexOf('?');if(idx<0)return params;var paramsString=url.substring(idx+1);var pairs=paramsString.split('&');for(var i=0;i<pairs.length;i++){var pos=pairs[i].indexOf('=');if(pos==-1)continue;var paramName=pairs[i].substring(0,pos);params[paramName]=pairs[i].substring(pos+1);}
return params;},_changeParameters:function(params,paramsToAdd){var paramsFiltered={};for(var paramName in paramsToAdd){params[paramName]=paramsToAdd[paramName];}
for(var paramName in params){if(params[paramName]!=null){paramsFiltered[paramName]=params[paramName];}}
return paramsFiltered;},_toParamsString:function(params){var paramsArray=[];for(var paramsName in params){paramsArray.push(paramsName+'='+params[paramsName]);}
return paramsArray.join("&");},_getUrl:function(replacePathName){var wndLoc=window.location;var href=wndLoc.protocol+"//"+wndLoc.host;if(replacePathName&&replacePathName.indexOf(href)<0){href+=(replacePathName.indexOf("/")!=0?"/":"")+replacePathName;}else if(replacePathName){href=replacePathName;}else{href+=wndLoc.pathname;}
var idx=href.indexOf("?");if(idx<0){return href;}else{return href.substring(0,idx);}}};(function($){$.fn.extend({activityCalendar:function(options){var selectedDays=options.selectedDays==null?[]:options.selectedDays;var q=options.q;var municipality=options.municipality;var region=options.region;var activityDays=[];var $container=this;var timerId;var opts={nextMonth:$("#ddi-calendar-next",$container),prevMonth:$("#ddi-calendar-prev",$container),today:Date.today(),isWeeksTurnOn:options.isWeeksTurnOn,current:selectedDays.length>0?selectedDays[0].clone():Date.today(),beforeDayRender:function(date,firstDayOfMonth,lastDayOfMonth){var innerElement=date.getDate();var dateElement=$j('<td></td>');for(var i=0;i<activityDays.length;i++){var aDay=activityDays[i];if(aDay.getDate()==date.getDate()&&aDay.getMonth()==date.getMonth()&&aDay.getYear()==date.getYear()){var url=DDI.UrlHelper.rebuildUrl({startDate:aDay.toString("dd-MM-yyyy"),endDate:null,offset:null,category:null},options.linkToPath);innerElement=$j('<a href="'+url+'">'+aDay.getDate()+'</a>');break;}}
dateElement.append(innerElement);if(!date.between(firstDayOfMonth,lastDayOfMonth)){dateElement.addClass('lastNext');}
if(selectedDays.length>1){if(date.between(selectedDays[0],selectedDays[1])){dateElement.addClass('selected');}}else if(selectedDays[0]!=null){if(selectedDays[0].getFullYear()==date.getFullYear()&&selectedDays[0].getMonth()==date.getMonth()&&selectedDays[0].getDate()==date.getDate()){dateElement.addClass('selected');}}
return dateElement;},onMonthChange:function(newDate){$j('div.calNav p',$container).text($j.ddiCalendar.getMonthName(newDate)+' '+newDate.getFullYear());var target=this;target.showOverlay();function submitHandler(){var command={q:q,municipality:municipality,startDate:newDate.clone().moveToFirstDayOfMonth().toString("dd-MM-yyyy"),endDate:newDate.clone().moveToLastDayOfMonth().toString("dd-MM-yyyy")};var r=region;if(region==undefined||region==''){r=DDI.UrlHelper.getParamValue('region');}
if(r!=undefined&&r!=''){$j.extend(command,{region:r});}
ActivityCalendarService.getActivityDates(command,function(adates){activityDays.splice(0,activityDays.length);for(var i=0;i<adates.length;i++){var d=Date.parseExact(adates[i],"yyyy-MM-dd");activityDays.push(d);}
target.update(newDate);target.hideOverlay();});}
if(timerId!=undefined){clearTimeout(timerId);}
timerId=setTimeout(submitHandler,500);}};this.ddiCalendar(opts);}});})(jQuery);;(function($){var $scrollTo=$.scrollTo=function(target,duration,settings){$(window).scrollTo(target,duration,settings);};$scrollTo.defaults={axis:'xy',duration:parseFloat($.fn.jquery)>=1.3?0:1};$scrollTo.window=function(scope){return $(window).scrollable();};$.fn.scrollable=function(){return this.map(function(){var elem=this,isWin=!elem.nodeName||$.inArray(elem.nodeName.toLowerCase(),['iframe','#document','html','body'])!=-1;if(!isWin)
return elem;var doc=(elem.contentWindow||elem).document||elem.ownerDocument||elem;return $.browser.safari||doc.compatMode=='BackCompat'?doc.body:doc.documentElement;});};$.fn.scrollTo=function(target,duration,settings){if(typeof duration=='object'){settings=duration;duration=0;}
if(typeof settings=='function')
settings={onAfter:settings};if(target=='max')
target=9e9;settings=$.extend({},$scrollTo.defaults,settings);duration=duration||settings.speed||settings.duration;settings.queue=settings.queue&&settings.axis.length>1;if(settings.queue)
duration/=2;settings.offset=both(settings.offset);settings.over=both(settings.over);return this.scrollable().each(function(){var elem=this,$elem=$(elem),targ=target,toff,attr={},win=$elem.is('html,body');switch(typeof targ){case'number':case'string':if(/^([+-]=)?\d+(\.\d+)?(px)?$/.test(targ)){targ=both(targ);break;}
targ=$(targ,this);case'object':if(targ.is||targ.style)
toff=(targ=$(targ)).offset();}
$.each(settings.axis.split(''),function(i,axis){var Pos=axis=='x'?'Left':'Top',pos=Pos.toLowerCase(),key='scroll'+Pos,old=elem[key],Dim=axis=='x'?'Width':'Height';if(toff){attr[key]=toff[pos]+(win?0:old-$elem.offset()[pos]);if(settings.margin){attr[key]-=parseInt(targ.css('margin'+Pos))||0;attr[key]-=parseInt(targ.css('border'+Pos+'Width'))||0;}
attr[key]+=settings.offset[pos]||0;if(settings.over[pos])
attr[key]+=targ[Dim.toLowerCase()]()*settings.over[pos];}else
attr[key]=targ[pos];if(/^\d+$/.test(attr[key]))
attr[key]=attr[key]<=0?0:Math.min(attr[key],max(Dim));if(!i&&settings.queue){if(old!=attr[key])
animate(settings.onAfterFirst);delete attr[key];}});animate(settings.onAfter);function animate(callback){$elem.animate(attr,duration,settings.easing,callback&&function(){callback.call(this,target,settings);});};function max(Dim){var scroll='scroll'+Dim;if(!win)
return elem[scroll];var size='client'+Dim,html=elem.ownerDocument.documentElement,body=elem.ownerDocument.body;return Math.max(html[scroll],body[scroll])
-Math.min(html[size],body[size]);};}).end();};function both(val){return typeof val=='object'?val:{top:val,left:val};};})(jQuery);;(function($){var $preload=$.preload=function(original,settings){if(original.split)
original=$(original);settings=$.extend({},$preload.defaults,settings);var sources=$.map(original,function(source){if(!source)
return;if(source.split)
return settings.base+source+settings.ext;var url=source.src||source.href;if(typeof settings.placeholder=='string'&&source.src)
source.src=settings.placeholder;if(url&&settings.find)
url=url.replace(settings.find,settings.replace);return url||null;});var data={loaded:0,failed:0,next:0,done:0,total:sources.length};if(!data.total)
return finish();var imgs=$(Array(settings.threshold+1).join('<img/>')).load(handler).error(handler).bind('abort',handler).each(fetch);function handler(e){data.element=this;data.found=e.type=='load';data.image=this.src;data.index=this.index;var orig=data.original=original[this.index];data[data.found?'loaded':'failed']++;data.done++;if(settings.enforceCache)
$preload.cache.push($('<img/>').attr('src',data.image)[0]);if(settings.placeholder&&orig.src)
orig.src=data.found?data.image:settings.notFound||orig.src;if(settings.onComplete)
settings.onComplete(data);if(data.done<data.total)
fetch(0,this);else{if(imgs&&imgs.unbind)
imgs.unbind('load').unbind('error').unbind('abort');imgs=null;finish();}};function fetch(i,img,retry){if(img.attachEvent&&data.next&&data.next%$preload.gap==0&&!retry){setTimeout(function(){fetch(i,img,true);},0);return false;}
if(data.next==data.total)return false;img.index=data.next;img.src=sources[data.next++];if(settings.onRequest){data.index=img.index;data.element=img;data.image=img.src;data.original=original[data.next-1];settings.onRequest(data);}};function finish(){if(settings.onFinish)
settings.onFinish(data);};};$preload.gap=14;$preload.cache=[];$preload.defaults={threshold:2,base:'',ext:'',replace:''};$.fn.preload=function(settings){$preload(this,settings);return this;};})(jQuery);(function($){$.widget('ui.imageslider',{_init:function(){var o=this.options;this.options.blocker=$(this.element);this.container=$(o.container,this.element);this.pickedClass='pickedElement';this.pickedClassFilter='.pickedElement';this.centralClass='centralElement';this.centralClassFilter='.centralElement';var widget=this;var initialCommand={offset:o.initialOffset,count:o.initialSize,callback:function(model){widget.maxoffset=model.maxoffset;if(model.pictures.length>0){$(o.nextLink,widget.element).click(widget._createClickHandler('next'));$(o.prevLink,widget.element).click(widget._createClickHandler('prev'));var placeholders=widget._appendToTheRight(model.count);for(var i=0;i<model.count;i++){$('img',placeholders[i]).attr('id',model.pictures[i].id).attr('src',widget.options.base+'/thumb/'+model.pictures[i].id+'/').get(0).asset=model.pictures[i];}
$(o.unit,widget.container).eq(Math.ceil(model.count/2)-1).addClass(widget.centralClass).addClass(widget.pickedClass);widget.leftOffset=model.offset;widget.rightOffset=(model.offset+model.count)%model.maxoffset;$('img',$(placeholders)).preload({onFinish:function(){o.onBeforeShow();$(widget.element).show();widget._markPickedElement();widget.move();widget._invokeHandler();}});}else{o.onEmptyContent();}},errorHandler:function(){o.onEmptyContent();}};this.load(initialCommand);},load:function(command){var params={offset:command.offset,count:command.count};$(this.options.blocker).block();var widget=this;PicturesService.getPictures(params,{callback:function(model){command.callback(model);$(widget.options.blocker).unblock();},errorHandler:function(errorString,exception){command.errorHandler();$(widget.options.blocker).unblock();}});},synch:function(){this.update();},isEmpty:function(){return $(this.options.unit,this.container).length==0;},update:function(speed){this._highlightPickedElements();this._updateWidth();var central=this._get(this.centralClassFilter);if(central.length>0){var displayOffset=this.options.getOffset.call(this,central);var distanceToCenter=this._getDistanceTo(central);var containerLeft=parseInt(this.container.css('left'),10);containerLeft=isNaN(containerLeft)?0:containerLeft;var delta=containerLeft+distanceToCenter;if(containerLeft<0&&delta+displayOffset<0){containerLeft+=-(displayOffset+delta);var widget=this;this.container.animate({'left':containerLeft+'px'},speed,'linear',function(){widget._scrollTo(central,speed);});}else{this._scrollTo(central,speed);}}},move:function(){var elements=this._get();var central=elements.filter(this.centralClassFilter);var centralIndex=elements.index(central);var elementsSize=elements.size();if(this.options.displaySize<elementsSize){if(centralIndex+this.options.threshold>=elementsSize){this._addToTheRight();}
else if(centralIndex-this.options.threshold<=0){this._addToTheLeft();}else{this.update(this.options.scrollSpeed);}}},_get:function(filter){var elements=$(this.options.unit,this.container);return filter?elements.filter(filter):elements;},_getDistanceTo:function(target){var elements=this._get();var index=elements.index(target);var distance=0;for(var i=0;i<index;i++){distance+=elements.outerWidth(true);}
return distance;},_scrollTo:function(target,speed){var displayOffset=this.options.getOffset.call(this,target);$(this.options.decorator,this.element).scrollTo(target,speed,{axis:'x',offset:{left:displayOffset}});},_updateWidth:function(){var elements=this._get();var containerWidth=0;for(var i=0;i<elements.length;i++){containerWidth+=elements.eq(i).outerWidth(true);}
this.container.width(containerWidth);},_addToTheRight:function(){var count=this.options.loadCount>this.maxoffset?this.maxoffset:this.options.loadCount;var widget=this;var rightCommand={offset:widget.rightOffset,count:count,callback:function(model){widget.maxoffset=model.maxoffset;widget.rightOffset=(widget.rightOffset+model.count)%widget.maxoffset;var placeholders=widget._appendToTheRight(model.count);for(var i=0;i<model.pictures.length;i++){$('img',placeholders[i]).attr('id',model.pictures[i].id).attr('src',widget.options.base+'/thumb/'+model.pictures[i].id+'/').get(0).asset=model.pictures[i];}
widget.update(widget.options.scrollSpeed);},errorHandler:function(){widget.update(widget.options.scrollSpeed);}};this.load(rightCommand);},_addToTheLeft:function(){var count=this.options.loadCount>this.maxoffset?this.maxoffset:this.options.loadCount;var offset=(this.leftOffset-count)<0?(this.leftOffset-count)+this.maxoffset:(this.leftOffset-count);var widget=this;var leftCommand={offset:offset,count:count,callback:function(model){widget.maxoffset=model.maxoffset;var offset=widget.leftOffset-model.count;if(offset<0){offset=widget.maxoffset+offset;}
widget.leftOffset=offset;var placeholders=widget._prependToTheLeft(model.count);for(var i=0;i<model.pictures.length;i++){$('img',placeholders[i]).attr('id',model.pictures[i].id).attr('src',widget.options.base+'/thumb/'+model.pictures[i].id+'/').get(0).asset=model.pictures[i];;}
widget.update(widget.options.scrollSpeed);},errorHandler:function(){widget.update(widget.options.scrollSpeed);}};this.load(leftCommand);},_markPickedElement:function(){var picked=this._get(this.pickedClassFilter);$('img.active',this.container).removeClass('active');$('img',picked).addClass('active');},_highlightPickedElements:function(){var picked=this._get(this.pickedClassFilter);var pictureId=$('img',picked).get(0).asset.id;$('img[id="'+pictureId+'"]',this.container).addClass('active');},_invokeHandler:function(){var central=this._get(this.centralClassFilter);this.options.onImageClick.call($('img',central).get(0));},_createClickHandler:function(direction){var widget=this;var linkTimer=0;return function(){var target=$(widget.options.unit,widget.container).filter(widget.centralClassFilter);for(var i=0;i<widget.options.stepSize;i++){target=target[direction]();}
if(target.length>0){widget._toggleClass(target,widget.centralClass);target.addClass(widget.centralClass);clearTimeout(linkTimer);linkTimer=setTimeout(function(){widget.move();},widget.options.clickWaitTime);}};},_toggleClass:function(target,className){var source=$(this.options.unit+'.'+className,this.container);source.removeClass(className);target.addClass(className);},_appendToTheRight:function(count){var placeholders=this._createPlaceholders(count);for(var i=0;i<placeholders.length;i++){this.container.append(placeholders[i]);}
$(placeholders).each(function(){$(this).removeClass('placeholder');});return placeholders;},_prependToTheLeft:function(count){var widget=this;var placeholders=this._createPlaceholders(count);$(placeholders).each(function(){$(this).hide().prependTo(widget.container).removeClass('placeholder');});var containerLeft=parseInt(this.container.css('left'),10);containerLeft=isNaN(containerLeft)?0:containerLeft;var left=-placeholders.length*placeholders[0].outerWidth(true)+containerLeft;this.container.css('left',left+'px');$(placeholders).each(function(){$(this).removeAttr('style');});return placeholders.reverse();},_createPlaceholders:function(count){var widget=this;var items=new Array();for(var i=0;i<count;i++){var img=$('<img/>').attr('src',this.options.smallPlaceholderUrl).addClass('thumbnail');var item=$('<'+this.options.unit+'/>').addClass('placeholder').append(img).click(function(){widget._toggleClass($(this),widget.centralClass);widget._toggleClass($(this),widget.pickedClass);widget._markPickedElement();widget.move();widget._invokeHandler();return false;});items.push(item);}
return items;}});$.extend($.ui.imageslider,{getter:"isEmpty",defaults:{nextLink:'div.arrow-right',prevLink:'div.arrow-left',container:'div.scroll div.pics',unit:'div',decorator:'div.scroll',initialOffset:0,initialSize:12,displaySize:5,threshold:6,loadCount:8,stepSize:2,scrollSpeed:'slow',clickWaitTime:300,base:DDI.contextPath+'/localpics',smallPlaceholderUrl:DDI.contextPath+'/img/local-pictures/placeholder-small.png',onImageClick:function(){},onEmptyContent:function(){},onBeforeShow:function(){},getOffset:function(current){return-1*($(this.options.decorator,this.element).outerWidth()-current.width())/2;}}});})(jQuery);
(function($){$.fn.extend({ddiTabs:function(options){var pri={options:{selectionOffset:94,choiceContainer:'td'},_currentTab:function(){var divMain=$(this);var div=$('.tabs',divMain),divContainer=$('.tabsContainer',div);var selectedTab=$('.selected:first',divContainer);return selectedTab==null||selectedTab.size()==0?$(this.options.choiceContainer+':first',divContainer):selectedTab;},_scrollTo:function(target,speed){var divMain=$(this);var div=$('.tabs',divMain);div.scrollTo(target,speed,{axis:'x',offset:{left:-1*_this.options.selectionOffset}});},_createNavHandler:function(direction){return function(){var target=_this._currentTab()[direction]();if(target.length>0){$('.selected',divContainer).toggleClass("selected");target.addClass("selected");_this._scrollTo(target[0],_this.options.scrollSpeed);_this._handleTabSwitch($('a',target));}
return false;};},_fetchContent:function(url){if(_this.options.blocker){_this.options.blocker.block();}
$(_this.options.target).load(url,function(){if(_this.options.blocker){_this.options.blocker.unblock();}});},_handleTabSwitch:function(sender){var tabs=$(".tabsContainer a",this);var idx=tabs.index(sender);if(_this.options.switchTab==null||_this.options.switchTab(sender,idx)){var url=$(sender).attr('href');_this._fetchContent(url);}}};$.extend(this,pri);var _this=this;$.extend(this.options,options);var divMain=$(this);var div=$('.tabs',divMain),divContainer=$('.tabsContainer',div),divList=$(this.options.choiceContainer,divContainer);var current=this._currentTab()[0];this._scrollTo(current);divList.each(function(){var link=$("a",this);var parent=$(this);link.click(function(){$('.selected',divContainer).toggleClass("selected");parent.addClass("selected");_this._scrollTo(parent[0],_this.options.scrollSpeed);_this._handleTabSwitch(this);return false;});});return{updateView:function(){_this._scrollTo(_this._currentTab()[0]);},synchView:function(){_this._scrollTo(_this._currentTab()[0]);},updateContent:function(){$(_this.options.target).stop();_this._handleTabSwitch($('a',_this._currentTab()));},init:function(skipUpdateContent){var div=$('.tabs',divMain),divContainer=$('.tabsContainer',div),navLeft=$('.navL',_this),navRight=$('.navR',_this);if(divContainer.outerWidth(true)>div.width()){navLeft.show();navRight.show();navRight.click(_this._createNavHandler('next'));navLeft.click(_this._createNavHandler('prev'));}
else{navLeft.hide();navRight.hide();div.css('width','100%');}
this.show(skipUpdateContent);return true;},show:function(skipUpdateContent){this.updateView();if(!skipUpdateContent){this.updateContent();}}};}});})(jQuery);
(function($){$.fn.catchEnterAndSendTo=function(target,passEvent){this.bind('keypress.catchEnter',null,function(event){if(event.keyCode==13){target.trigger('click',event.data);return passEvent||false;}});return this;}})(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};options=$.extend({url:this.attr('action')||window.location.toString(),type:this.attr('method')||'GET'},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){for(var i=0,max=callbacks.length;i<max;i++)
callbacks[i].apply(options,[data,status,$form]);};var files=$('input:file',this).fieldValue();var found=false;for(var j=0;j<files.length;j++)
if(files[j])
found=true;if(options.iframe||found){if($.browser.safari&&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=jQuery.extend(true,{},$.extend(true,{},$.ajaxSettings),opts);var id='jqFormIO'+(new Date().getTime());var $io=$('<iframe id="'+id+'" name="'+id+'" />');var io=$io[0];if($.browser.msie||$.browser.opera)
io.src='javascript:false;document.write("");';$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','about:blank');}};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&&jQuery.active--;return;}
if(xhr.aborted)
return;var cbInvoked=0;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){options.extraData=options.extraData||{};options.extraData[n]=sub.value;if(sub.type=="image"){options.extraData[name+'.x']=form.clk_x;options.extraData[name+'.y']=form.clk_y;}}}
setTimeout(function(){var t=$form.attr('target'),a=$form.attr('action');$form.attr({target:id,method:'POST',action:opts.url});if(!options.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(options.extraData)
for(var n in options.extraData)
extraInputs.push($('<input type="hidden" name="'+n+'" value="'+options.extraData[n]+'" />').appendTo(form)[0]);$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();}
finally{$form.attr('action',a);t?$form.attr('target',t):$form.removeAttr('target');$(extraInputs).remove();}},10);function cb(){if(cbInvoked++)return;io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var operaHack=0;var ok=true;try{if(timedOut)throw'timeout';var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if(doc.body==null&&!operaHack&&$.browser.opera){operaHack=1;cbInvoked--;setTimeout(cb,100);return;}
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];xhr.responseText=ta?ta.value:xhr.responseText;}
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.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(){$(this).ajaxSubmit(options);return false;}).each(function(){$(":submit,input:image",this).bind('click.form-plugin',function(e){var form=this.form;form.clk=this;if(this.type=='image'){if(e.offsetX!=undefined){form.clk_x=e.offsetX;form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$(this).offset();form.clk_x=e.pageX-offset.left;form.clk_y=e.pageY-offset.top;}else{form.clk_x=e.pageX-this.offsetLeft;form.clk_y=e.pageY-this.offsetTop;}}
setTimeout(function(){form.clk=form.clk_x=form.clk_y=null;},10);});});};$.fn.ajaxFormUnbind=function(){this.unbind('submit.form-plugin');return this.each(function(){$(":submit,input:image",this).unbind('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+'.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 inputs=form.getElementsByTagName("input");for(var i=0,max=inputs.length;i<max;i++){var input=inputs[i];var n=input.name;if(n&&!input.disabled&&input.type=="image"&&form.clk==input)
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=$.browser.msie&&!(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($){$.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);jQuery.extend({__stringPrototype:{JSONFilter:/^\/\*-secure-([\s\S]*)\*\/\s*$/,ScriptFragment:'<script[^>]*>([\\S\\s]*?)<\/script>',specialChar:{'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','\\':'\\\\'},blank:function(s){return/^\s*$/.test(this.s(s)||' ');},camelize:function(s){var a=this.s(s).split('-'),i;s=[a[0]];for(i=1;i<a.length;i++){s.push(a[i].charAt(0).toUpperCase()+a[i].substring(1));}
s=s.join('');return this.r(arguments,0,s);},capitalize:function(s){s=this.s(s);s=s.charAt(0).toUpperCase()+s.substring(1).toLowerCase();return this.r(arguments,0,s);},dasherize:function(s){s=this.s(s).split('_').join('-');return this.r(arguments,0,s);},empty:function(s){return this.s(s)==='';},endsWith:function(pattern,s){s=this.s(s);var d=s.length-pattern.length;return d>=0&&s.lastIndexOf(pattern)===d;},escapeHTML:function(s){s=this.s(s).replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;');return this.r(arguments,0,s);},evalJSON:function(sanitize,s){s=this.s(s);var json=this.unfilterJSON(false,s);try{if(!sanitize||this.isJSON(json)){return eval('('+json+')');}}catch(e){}
throw new SyntaxError('Badly formed JSON string: '+s);},evalScripts:function(s){var scriptTags=this.extractScripts(this.s(s)),results=[];if(scriptTags.length>0){for(var i=0;i<scriptTags.length;i++){results.push(eval(scriptTags[i]));}}
return results;},extractScripts:function(s){var matchAll=new RegExp(this.ScriptFragment,'img'),matchOne=new RegExp(this.ScriptFragment,'im'),scriptMatches=this.s(s).match(matchAll)||[],scriptTags=[];if(scriptMatches.length>0){for(var i=0;i<scriptMatches.length;i++){scriptTags.push(scriptMatches[i].match(matchOne)[1]||'');}}
return scriptTags;},gsub:function(pattern,replacement,s){s=this.s(s);if(jQuery.isFunction(replacement)){s=this.sub(pattern,replacement,-1,s);}
else{s=s.split(pattern).join(replacement);}
return this.r(arguments,2,s);},include:function(pattern,s){return this.s(s).indexOf(pattern)>-1;},inspect:function(useDoubleQuotes,s){s=this.s(s);var escapedString;try{escapedString=this.sub(/[\x00-\x1f\\]/,function(match){var character=jQuery.__stringPrototype.specialChar[match[0]];return character?character:'\\u00'+match[0].charCodeAt().toPaddedString(2,16);},-1,s);}catch(e){escapedString=s;}
s=(useDoubleQuotes)?'"'+escapedString.replace(/"/g,'\\"')+'"':"'"+escapedString.replace(/'/g,'\\\'')+"'";return this.r(arguments,1,s);},interpolate:function(obj,pattern,s){s=this.s(s);if(!pattern){pattern=/(\#\{\s*(\w+)\s*\})/;}
var gpattern=new RegExp(pattern.source,"g");var matches=s.match(gpattern),i;for(i=0;i<matches.length;i++){s=s.replace(matches[i],obj[matches[i].match(pattern)[2]]);}
return this.r(arguments,2,s);},isJSON:function(s){s=this.s(s);if(this.blank(s)){return false;}
s=s.replace(/\\./g,'@').replace(/"[^"\\\n\r]*"/g,'');return(/^[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]*$/).test(s);},scan:function(pattern,replacement,s){s=this.s(s);this.sub(pattern,replacement,-1,s);return this.r(arguments,2,s);},startsWith:function(pattern,s){return this.s(s).indexOf(pattern)===0;},strip:function(s){s=jQuery.trim(this.s(s));return this.r(arguments,0,s);},stripScripts:function(s){s=this.s(s).replace(new RegExp(this.ScriptFragment,'img'),'');return this.r(arguments,0,s);},stripTags:function(s){s=this.s(s).replace(/<\/?[^>]+>/gi,'');return this.r(arguments,0,s);},sub:function(pattern,replacement,count,s){s=this.s(s);if(pattern.source&&!pattern.global){var patternMods=(pattern.ignoreCase)?"ig":"g";patternMods+=(pattern.multiline)?"m":"";pattern=new RegExp(pattern.source,patternMods);}
var sarray=s.split(pattern),matches=s.match(pattern);if(jQuery.browser.msie){if(s.indexOf(matches[0])==0)sarray.unshift("");if(s.lastIndexOf(matches[matches.length-1])==s.length-matches[matches.length-1].length)sarray.push("");}
count=(count<0)?(sarray.length-1):count||1;s=sarray[0];for(var i=1;i<sarray.length;i++){if(i<=count){if(jQuery.isFunction(replacement)){s+=replacement(matches[i-1]||matches)+sarray[i];}else{s+=replacement+sarray[i];}}else{s+=(matches[i-1]||matches)+sarray[i];}}
return this.r(arguments,3,s);},succ:function(s){s=this.s(s);s=s.slice(0,s.length-1)+String.fromCharCode(s.charCodeAt(s.length-1)+1);return this.r(arguments,0,s);},times:function(count,s){s=this.s(s);var newS="";for(var i=0;i<count;i++){newS+=s;}
return this.r(arguments,1,newS);},toJSON:function(s){return this.r(arguments,0,this.inspect(true,this.s(s)));},toQueryParams:function(separator,s){s=this.s(s);var paramsList=s.substring(s.indexOf('?')+1).split('#')[0].split(separator||'&'),params={},i,key,value,pair;for(i=0;i<paramsList.length;i++){pair=paramsList[i].split('=');key=decodeURIComponent(pair[0]);value=(pair[1])?decodeURIComponent(pair[1]):undefined;if(params[key]){if(typeof params[key]=="string"){params[key]=[params[key]];}
params[key].push(value);}else{params[key]=value;}}
return params;},truncate:function(length,truncation,s){s=this.s(s);length=length||30;truncation=(!truncation)?'...':truncation;s=(s.length>length)?s.slice(0,length-truncation.length)+truncation:String(s);return this.r(arguments,2,s);},underscore:function(s){s=this.sub(/[A-Z]/,function(c){return"_"+c.toLowerCase();},-1,this.s(s));if(s.charAt(0)=="_")s=s.substring(1);return this.r(arguments,0,s);},unescapeHTML:function(s){s=this.stripTags(this.s(s)).replace(/&amp;/g,'&').replace(/&lt;/g,'<').replace(/&gt;/g,'>');return this.r(arguments,0,s);},unfilterJSON:function(filter,s){s=this.s(s);filter=filter||this.JSONFilter;var filtered=s.match(filter);s=(filtered!==null)?filtered[1]:s;return this.r(arguments,1,jQuery.trim(s));},r:function(args,size,s){if(args.length>size||this.str===undefined){return s;}else{this.str=''+s;return this;};},s:function(s){if(s===''||s){return s;}
if(this.str===''||this.str){return this.str;}
return this;}},string:function(str){if(str===String.prototype){jQuery.extend(String.prototype,jQuery.__stringPrototype);}
else{return jQuery.extend({str:str},jQuery.__stringPrototype);}}});jQuery.__stringPrototype.parseQuery=jQuery.__stringPrototype.toQueryParams;(function($)
{$.fn.animatedResize=function(html,speed,callback)
{this.each(function()
{var el=$(this);var finish={width:'auto',height:'auto'};var cur={width:el.width()+'px',height:el.height()+'px'};el.html(html);el.show();var next={width:el.width()+'px',height:el.height()+'px'};el.css(cur).animate(next,speed,function()
{el.css(finish);if($.isFunction(callback))callback();});});};})(jQuery);(function($){$.widget("ui.choosepane",{_init:function(){this.currentPage=0;this.update();},_getPanes:function(){return $(this.options.paneSelector,this.element);},_getLastPane:function(){return $(this.options.paneSelector+":last",this.element);},update:function(){var panes=this._getPanes();for(var i=0;i<panes.length;i++){if(i>=this.currentPage&&i<this.currentPage+this.options.visiblePanes){$(panes[i]).parent("td").show();}else{$(panes[i]).parent("td").hide();}}
this.options.update(this.element,this.currentPage,this.hasPrev(),this.hasNext());},hasNext:function(){return this.currentPage<this._getPanes().length-this.options.visiblePanes;},flipNext:function(){if(this.hasNext()){this.currentPage+=1;this.update();}},hasPrev:function(){return this.currentPage>0;},flipPrev:function(){if(this.hasPrev()){this.currentPage-=1;this.update();}},flipFirst:function(){this.currentPage=0;this.update();},flipLast:function(){var panes=this._getPanes();var lastPaneIdx=panes.length-this.options.visiblePanes;this.currentPage=lastPaneIdx>0?lastPaneIdx:0;this.update();},rebuild:function(initElements){var panes=this._getPanes();var elements=$j(this.options.elementSelector,panes).remove();for(var i=0;i<elements.length;i++){$(panes[Math.floor(i/this.options.paneSize)]).append(elements[i]);if(initElements!==undefined){initElements(elements[i]);}}
this._clearPanes();},_clearPanes:function(){this._getPanes().each(function(idx,el){var it=$(el);if(it.children().length==0){it.parent("td").remove();}});},removeElement:function(e,initElements){var elem;if(typeof(e)==="number"){elem=$(this.options.elementSelector,this._getPanes()).get(e);}else{elem=$(e);}
if(elem){elem.remove();this.rebuild(initElements);}},_createPane:function(){var pane=$(this.options.paneSpawner);$("tr",this.element).append(pane);return $("ul",pane);},_addElement:function(elementSpawner){var lastPane=this._getLastPane();if(lastPane.length==0||$(this.options.elementSelector,lastPane).length>=this.options.paneSize){lastPane=this._createPane();}
var newElement=$(elementSpawner);lastPane.append(newElement);return newElement;},addElement:function(elementSpawner,initElement){var newElement=this._addElement(elementSpawner);this.update();if(initElement!==undefined){initElement(newElement);}
if(this.currentPage<this._getPanes().length-this.options.visiblePanes){this.flipLast();}
return newElement;}});$.extend($.ui.choosepane,{getter:"addElement hasNext hasPrev",defaults:{visiblePanes:3,paneSize:6,elementSelector:"li",paneSelector:"tr td ul",paneSpawner:"<td><ul></ul></td>",update:function(){}}});})(jQuery);(function($){var optionsPanelSelector='#news-panel';DDI.Portal={initPage:function(){$('#manage-content').click(function(){DDI.Portal.showPortalOptions(false);return false;});if(!$('#block-rss .col > *').length){DDI.Portal.showPortalOptions(false);}},showPortalOptions:function(enableScroll){var $optsPortal=$(optionsPanelSelector);if($optsPortal.is(":hidden")){$optsPortal.slideToggle("slow",function(){$optsPortal.block({overlayCSS:{opacity:'0'}});$optsPortal.load(DDI.contextPath+'/portaloptions/',function(){DDI.PortalOptions.init();$('input[name=redirectTo]').val('/');$('#portalOptionsCancelBtn').click(function(){$optsPortal.slideToggle("slow");$(optionsPanelSelector+' > *').remove();});$optsPortal.unblock();});});if(enableScroll){$(document.body).stop().scrollTo($optsPortal,800);}}else{$optsPortal.slideToggle("slow");}}};})(jQuery);DDI.Portlet={init:function(params){var bodyDiv=params.bodyDiv;var settingsBodyDiv=$j('#portletSettingsBody-'+params.portletId);var settingsDiv=$j('#portletSettingsDiv-'+params.portletId);var settingsForm=$j('#portletSettingsForm-'+params.portletId);var editLink=$j('#portletEditLink-'+params.portletId);var collapseBtn=$j('#portletCollapseBtn-'+params.portletId);var cancelBtn=$j('#portletCancelBtn-'+params.portletId);var saveBtn=$j('#portletSaveBtn-'+params.portletId);var addContentLink=$j('#addContentLink-'+params.portletId);var removeContentLink=$j('#removeContentLink-'+params.portletId);var deleteLink=$j('#portletDeleteLink-'+params.portletId);var viewUrl=params.viewUrl;var editUrl=params.editUrl;var addContentUrl=params.addContentUrl;var removeContentUrl=params.removeContentUrl;var _this=this;bodyDiv.load(viewUrl);editLink.bind('click',function(){DDI.Portlet.showEditOptions(params.portletId,editUrl,false);return false;});deleteLink.bind('click',function(){if(confirm(params.deleteConfirmation)){PortalPersistenceService.removePortlet(params.portletId);$j('#enpoPortlet-'+params.portletId).remove();}
return false;});collapseBtn.bind('click',function(){if($j(this).hasClass('open')&&!settingsDiv.is(':hidden')){settingsDiv.slideUp('slow');}
$j(this).toggleClass('open');$j(this).toggleClass('closed');bodyDiv.slideToggle('slow',function(){PortalPersistenceService.setPortletCollapsed(params.portletId,bodyDiv.is(':hidden'));if(bodyDiv.is(':hidden')){bodyDiv.unblock();}else{fireOnExpand();}});return false;});addContentLink.bind('click',function(){if(!addContentLink.hasClass('disabled')){fireOnAddRemove(addContentUrl);}
return false;});removeContentLink.bind('click',function(){if(!removeContentLink.hasClass('disabled')){fireOnAddRemove(removeContentUrl);}
return false;});settingsForm.ajaxForm({success:function(data){if($j.trim(data).length==0){bodyDiv.load(viewUrl);settingsDiv.slideUp("slow");}else{settingsBodyDiv.html(data);}}});cancelBtn.bind('click',function(){settingsBodyDiv.load(editUrl,function(){settingsDiv.slideUp("slow");});return false;});saveBtn.bind('click',function(){settingsForm.submit();return false;});function blockBody(){if(!bodyDiv.is(':hidden')){bodyDiv.block();}}
function fireOnAddRemove(url){_this.listeners[params.portletId].onAddRemove(url);}
function initListeners(){if(_this.listeners==undefined){_this.listeners={};}
_this.listeners[params.portletId]={onAddRemove:function(url){bodyDiv.stop();blockBody();$j.get(url+"&count="+_this.variables[params.portletId]["count"],function(content){bodyDiv.unblock();if(bodyDiv.is(':hidden')){bodyDiv.empty().append(content);}else{bodyDiv.animatedResize(content,'fast');}});}};}
initListeners();if(this.variables==undefined){this.variables={};}
this.variables[params.portletId]={};},updateAddRemoveContent:function(portletId,min,max,current){var removeLink=$j('#removeContentLink-'+portletId);var addLink=$j('#addContentLink-'+portletId);if(current<max){if(addLink.hasClass('disabled')){addLink.removeClass('disabled').removeAttr("tabindex");}}else{addLink.addClass('disabled').attr("tabindex",-1);}
if(current>min){if(removeLink.hasClass('disabled')){removeLink.removeClass('disabled').removeAttr("tabindex");}}else{removeLink.addClass('disabled').attr("tabindex",-1);}
this.variables[portletId]["count"]=current;},fireEvent:function(type,portletId){this.listeners[portletId]['on'+type]();},addListener:function(portletId,listener){$j.extend(this.listeners[portletId],listener);},getBody:function(portletId){return $j('#portletBody-'+portletId);},makeFeedsCollapsable:function(portletId){var $empty=$j([]),EXPANDED_PROP='expanded',$currentPortlet=$j('#portletBody-'+portletId),toggleEntryView=function(elem){elem.parent('.title').siblings('div.more').slideToggle("fast");elem.toggleClass("boxShow").toggleClass("boxHide");return elem;};$j('div.feedsMore .more',$currentPortlet).hide();$j.data($currentPortlet,'expanded',$empty);$j('div.feedsMore .boxShow',$currentPortlet).each(function(index,elem){var $this=$j.extend($j(elem),{"idx":index});$this.click(function(){var $current=$j.data($currentPortlet,EXPANDED_PROP);toggleEntryView($this);if($current.idx!==undefined){if(($current.idx!==$this.idx)){toggleEntryView($current);$j.data($currentPortlet,EXPANDED_PROP,$this);}else{$j.data($currentPortlet,EXPANDED_PROP,$empty);}}else{$j.data($currentPortlet,EXPANDED_PROP,$this);}
return false;});});},showEditOptions:function(portletId,editUrl,enableScroll){var settingsBodyDiv=$j('#portletSettingsBody-'+portletId);var settingsDiv=$j('#portletSettingsDiv-'+portletId);if(settingsDiv.is(":hidden")){settingsBodyDiv.load(editUrl,function(){settingsDiv.slideDown("slow");});if(enableScroll){$j(document.body).stop().scrollTo($j('#portletTitle-'+portletId),800);}}else{settingsDiv.slideUp("slow");}}};(function($){var defaultOptionsPanelSelector='#news-panel';var makePaneUpdateHolder=function(holderSelector){var $holder=$(holderSelector);return function(sender,curentPage,hasPrevPage,hasNextPage){if(!hasPrevPage&&!hasNextPage){$holder.find(".nav").hide();return;}else{$holder.find(".nav").show();}
if(hasPrevPage){$holder.find("span.flipPrev.fake").hide();$holder.find("a.flipPrev").show();}else{$holder.find("a.flipPrev").hide();$holder.find("span.flipPrev.fake").show();}
if(hasNextPage){$holder.find("span.flipNext.fake").hide();$holder.find("a.flipNext").show();}else{$holder.find("a.flipNext").hide();$holder.find("span.flipNext.fake").show();}};};DDI.PortalOptions={options:{optionsPanelSelector:defaultOptionsPanelSelector,numColumns:2},toggleMenuButtons:function(selectedListItem){var $optionsPanel=$(this.options.optionsPanelSelector);var $optionsPanelMenu=$optionsPanel.find('.menu');$optionsPanelMenu.find('li.selected').removeClass('selected');$optionsPanelMenu.find('li span').hide();$optionsPanelMenu.find('li a').show();var $selectedItem=$(selectedListItem);$selectedItem.find('a').hide();$selectedItem.find('span').show();$selectedItem.addClass('selected');},displaySelectedLocalTab:function(){var $optionsPanel=$(this.options.optionsPanelSelector);var $areas=$optionsPanel.find(".areas a");var selected=$($areas).filter(".selected");var idx=$($areas).index(selected);if(idx<0)return;$optionsPanel.find(".categoryLocal h3").text($(selected).text());var selectedFeedsList=$optionsPanel.find(".categoryLocal .feedsList").hide().get(idx);$(selectedFeedsList).show().choosepane("update");},initPane:function(selector,options){var holderSelector=this.options.optionsPanelSelector+' '+selector;var extOpt=jQuery.extend({update:makePaneUpdateHolder(holderSelector)},options);var $holder=$(holderSelector);$holder.find("table").choosepane(extOpt);$holder.find(".flipPrev").click(function(){$(".feedsList:visible",holderSelector).choosepane("flipPrev");return false;});$holder.find(".flipNext").click(function(){$(".feedsList:visible",holderSelector).choosepane("flipNext");return false;});$holder.find(".feedsList:visible").choosepane("update");},init:function(options){var _this=this;$.extend(this.options,options);var $optionsPanel=$(this.options.optionsPanelSelector);var $optionsPanelMenu=$optionsPanel.find('.menu');$optionsPanelMenu.find('a.localTab').click(function(){DDI.PortalOptions.toggleMenuButtons($(this).parent("li"));$optionsPanel.find(".areas, .sources, .sourcesLarge").hide();$optionsPanel.find(".areas, .categoryLocal").show();return false;});$optionsPanelMenu.find('a.nationalTab').click(function(){DDI.PortalOptions.toggleMenuButtons($(this).parent("li"));$optionsPanel.find(".areas, .sources, .sourcesLarge").hide();$optionsPanel.find(".categoryNational").show();return false;});$optionsPanelMenu.find('a.nrkTab').click(function(){DDI.PortalOptions.toggleMenuButtons($(this).parent("li"));$optionsPanel.find(".areas, .sources, .sourcesLarge").hide();$optionsPanel.find(".categoryNrk").show();return false;});$optionsPanelMenu.find('a.otherTab').click(function(){DDI.PortalOptions.toggleMenuButtons($(this).parent("li"));$optionsPanel.find(".areas, .sources, .sourcesLarge").hide();$optionsPanel.find(".categoryOther").show();return false;});$optionsPanelMenu.find('a.usersTab').click(function(){DDI.PortalOptions.toggleMenuButtons($(this).parent("li"));$optionsPanel.find(".areas, .sources, .sourcesLarge").hide();$optionsPanel.find(".categoryUserdefined").show();return false;});$optionsPanel.find(".areas a").click(function(){$optionsPanel.find(".areas a").removeClass("selected");$(this).addClass("selected");DDI.PortalOptions.displaySelectedLocalTab();return false;});$optionsPanel.find('.areas').scrollTo("a.selected",{offset:-5});$('.findFeeds input[name=feed]').catchEnterAndSendTo($('.findFeeds input[type=button]'));$('.findFeeds .btn').click(function(){$optionsPanel.block({message:null,overlayCSS:{opacity:'0'}});var response=$('.findFeeds .response');var feedUrl=jQuery.trim($('.findFeeds .txtField').val());response.html('<strong>'+i18n.portal.options.searching()+'</strong>');response.show();FeedsDiscoveryService.autodiscovery(feedUrl,function(result){if(result&&result.length>0){var addedFeedsCount=0;var firstFeedTitle=null;for(var i=0;i<result.length;i++){var feed=result[i];if($optionsPanel.find('.categoryUserdefined > table input[value='+feed.url+']').length>0)continue;var feedTitleEscaped=jQuery.string(feed.title).escapeHTML().str;var deleteButtonImg=DDI.contextPath+'/img/icons/icon-delete-opt.gif';var ranId=new Date().getTime();var elementSpawner='<li><a class="delete" href="#"><img height="12" width="12" src="'+deleteButtonImg+'"/></a> '+'<input name="selectedUserFeeds" type="checkbox" checked="true" id=userFeed'+ranId+' value="'+feed.url+'"/> '+'<input name="userFeeds" type="hidden" value="'+feed.url+'"/> '+'<label for="userFeed'+ranId+'" title="'+feedTitleEscaped+'">'+feedTitleEscaped+'</label></li>';var initDeleteButtons=function(parent){$(parent).find(".delete").click(function(){$optionsPanel.find(".categoryUserdefined .feedsList").choosepane("removeElement",$(this).parent("li"),initDeleteButtons);return false;});};$optionsPanel.find(".categoryUserdefined .feedsList").choosepane("addElement",elementSpawner,initDeleteButtons);firstFeedTitle=firstFeedTitle||feedTitleEscaped;++addedFeedsCount;}
if(addedFeedsCount==0){response.html('<strong class="error">'+i18n.portal.options.already_exists()+'</strong>');}else{var message;if(addedFeedsCount==1){message='<strong>'+i18n.portal.options.feeds_added[1]()+': <span title="'+firstFeedTitle+'">'+firstFeedTitle+'</span>';}else{message='<strong>'+i18n.portal.options.feeds_added[1]()+' '+addedFeedsCount+' '+
i18n.portal.options.feeds_added[2]()+'</strong>';}
$(response).html(message);$('.findFeeds input[name=feed]').val("http://");}}else{var feedUrlEscaped=$.string(feedUrl).escapeHTML().str;response.html('<strong class="error">'+i18n.portal.options.not_found()+':</strong> '+'<span title="'+feedUrlEscaped+'">'+feedUrlEscaped+'</span>');}
$optionsPanel.unblock();});return false;});DDI.PortalOptions.initPane(".categoryLocal",{visiblePanes:_this.options.numColumns-1});DDI.PortalOptions.initPane(".categoryNational",{visiblePanes:_this.options.numColumns});DDI.PortalOptions.initPane(".categoryOther",{visiblePanes:_this.options.numColumns});DDI.PortalOptions.initPane(".categoryUserdefined",{paneSize:4,visiblePanes:_this.options.numColumns});DDI.PortalOptions.displaySelectedLocalTab();$(".categoryLocal").choosepane("update");}};})(jQuery);(function($){var BLOCKS_SELECTOR='.dd-container .moduleHolder';var MOVE_UP_SELECTOR='.moveHolder .move.up';var MOVE_DOWN_SELECTOR='.moveHolder .move.down';var BLOCK_ID_RE=/^block-(.+)$/;var showButtons=function(){var $blocks=$(BLOCKS_SELECTOR);$blocks.find(MOVE_UP_SELECTOR).show();$blocks.filter(':first').find(MOVE_UP_SELECTOR).hide();$blocks.find(MOVE_DOWN_SELECTOR).show();$blocks.filter(':last').find(MOVE_DOWN_SELECTOR).hide();};var bindButtons=function(){var $blocks=$(BLOCKS_SELECTOR);var $upButtons=$blocks.find(MOVE_UP_SELECTOR);var $downButtons=$blocks.find(MOVE_DOWN_SELECTOR);$upButtons.click(createMoveBlockCallback('up'));$downButtons.click(createMoveBlockCallback('down'));};var getBlockForButton=function(button){return $(button).parents(BLOCKS_SELECTOR).get(0);};var moveBlock=function(block,direction){var $block=$(block);var $swapBlock;switch(direction){case'up':$swapBlock=getPreviousMovableBlock($block);break;case'down':$swapBlock=getNextMovableBlock($block);break;default:throw new Error("Unknown direction");}
swapBlocks($block.get(0),$swapBlock.get(0));showButtons();var blockId=getBlockId(block);PortalPersistenceService.moveBlock(blockId,direction.toUpperCase());$(document.body).stop().scrollTo(block,700);};var createMoveBlockCallback=function(direction){return function(){var pressedButton=this;var block=getBlockForButton(pressedButton);moveBlock(block,direction);};};var getBlockId=function(block){var match=BLOCK_ID_RE.exec(block.id);if(!match||match.length!=2){if(console){console.error("Could not extract block id",block,BLOCK_ID_RE);}
throw new Error("Could not extract block id");}
return match[1];};var getPreviousMovableBlock=function($block){var $prev=$block.prev();if(!$prev.length){throw new Error("Unable to get previous element for first child.");};if($prev.is('.movable')){return $prev;}else{return getPreviousMovableBlock($prev);}};var getNextMovableBlock=function($block){var $next=$block.next();if(!$next.length){throw new Error("Unable to get next element for last child.");}
if($next.is('.movable')){return $next;}else{return getNextMovableBlock($next);}};var swapBlocks=function(sourceElement,targetElement){var sourceParent=sourceElement.parentNode;var sourceNextSibling=sourceElement.nextSibling===targetElement?sourceElement:sourceElement.nextSibling;targetElement.parentNode.insertBefore(sourceElement,targetElement);sourceParent.insertBefore(targetElement,sourceNextSibling);};$(function(){bindButtons();showButtons();});})(jQuery);OpenLayers.Control.Panel=OpenLayers.Class(OpenLayers.Control,{controls:null,defaultControl:null,initialize:function(options){OpenLayers.Control.prototype.initialize.apply(this,[options]);this.controls=[];},destroy:function(){OpenLayers.Control.prototype.destroy.apply(this,arguments);for(var i=this.controls.length-1;i>=0;i--){if(this.controls[i].events){this.controls[i].events.un({"activate":this.redraw,"deactivate":this.redraw,scope:this});}
OpenLayers.Event.stopObservingElement(this.controls[i].panel_div);this.controls[i].panel_div=null;}},activate:function(){if(OpenLayers.Control.prototype.activate.apply(this,arguments)){for(var i=0,len=this.controls.length;i<len;i++){if(this.controls[i]==this.defaultControl){this.controls[i].activate();}}
this.redraw();return true;}else{return false;}},deactivate:function(){if(OpenLayers.Control.prototype.deactivate.apply(this,arguments)){for(var i=0,len=this.controls.length;i<len;i++){this.controls[i].deactivate();}
return true;}else{return false;}},draw:function(){OpenLayers.Control.prototype.draw.apply(this,arguments);for(var i=0,len=this.controls.length;i<len;i++){this.map.addControl(this.controls[i]);this.controls[i].deactivate();this.controls[i].events.on({"activate":this.redraw,"deactivate":this.redraw,scope:this});}
this.activate();return this.div;},redraw:function(){this.div.innerHTML="";if(this.active){for(var i=0,len=this.controls.length;i<len;i++){var element=this.controls[i].panel_div;if(this.controls[i].active){element.className=this.controls[i].displayClass+"ItemActive";}else{element.className=this.controls[i].displayClass+"ItemInactive";}
this.div.appendChild(element);}}},activateControl:function(control){if(!this.active){return false;}
if(control.type==OpenLayers.Control.TYPE_BUTTON){control.trigger();this.redraw();return;}
if(control.type==OpenLayers.Control.TYPE_TOGGLE){if(control.active){control.deactivate();}else{control.activate();}
this.redraw();return;}
for(var i=0,len=this.controls.length;i<len;i++){if(this.controls[i]!=control){if(this.controls[i].type!=OpenLayers.Control.TYPE_TOGGLE){this.controls[i].deactivate();}}}
control.activate();},addControls:function(controls){if(!(controls instanceof Array)){controls=[controls];}
this.controls=this.controls.concat(controls);for(var i=0,len=controls.length;i<len;i++){var element=document.createElement("div");var textNode=document.createTextNode(" ");controls[i].panel_div=element;if(controls[i].title!=""){controls[i].panel_div.title=controls[i].title;}
OpenLayers.Event.observe(controls[i].panel_div,"click",OpenLayers.Function.bind(this.onClick,this,controls[i]));OpenLayers.Event.observe(controls[i].panel_div,"mousedown",OpenLayers.Function.bindAsEventListener(OpenLayers.Event.stop));}
if(this.map){for(var i=0,len=controls.length;i<len;i++){this.map.addControl(controls[i]);controls[i].deactivate();controls[i].events.on({"activate":this.redraw,"deactivate":this.redraw,scope:this});}
this.redraw();}},onClick:function(ctrl,evt){OpenLayers.Event.stop(evt?evt:window.event);this.activateControl(ctrl);},getControlsBy:function(property,match){var test=(typeof match.test=="function");var found=OpenLayers.Array.filter(this.controls,function(item){return item[property]==match||(test&&match.test(item[property]));});return found;},getControlsByName:function(match){return this.getControlsBy("name",match);},getControlsByClass:function(match){return this.getControlsBy("CLASS_NAME",match);},CLASS_NAME:"OpenLayers.Control.Panel"});(function($){DDI.IndexMap=function(){this.map=this._createMap();var nav=this._getNavigationControl();this.map.addControl(nav);nav.disableZoomWheel();this.poiPanel=this._getPoiPanel(document.getElementById('mapsPoiPanel'));this.map.addControl(this.poiPanel);var toggleControl=new DDI.Maps.ToggleControl({content:'<a href="#">'+i18n.maps.poi.combo.panel.header()+"</a>"});toggleControl.events.on({"activate":function(){$(this.poiPanel.div).slideDown("slow");},"deactivate":function(){$(this.poiPanel.div).slideUp("slow");},"scope":this});var headerPanel=new DDI.Maps.PoiPanel({div:document.getElementById('poiPanelHeader')});headerPanel.addControls(toggleControl);this.map.addControl(headerPanel);DDI.Maps.PopupContentLoader.activate();this.panelDisabler=new DDI.Maps.PoiPanelDisabler({div:document.getElementById('mapsPoiPanelContainer')});this.map.addControl(this.panelDisabler);this.poiMapHelper=this._getPoiHelper(this.map,this.poiPanel,this.panelDisabler,this.projection);this.setEventListners();this.poiPanel.getPoiControlsState((function(helper){return function(){helper.setEventListners();helper.performSearch();};})(this.poiMapHelper));};DDI.IndexMap.prototype={projection:new OpenLayers.Projection('EPSG:4326'),_createMap:function(){return new Eniro.API.Map('mapContainer',DDI.contextPath+'/mapsv2',{activeLayers:[Eniro.Map.LAYER_MAP],layerSelector:false,zoomBar:false,keyboardControl:false,navigationControl:false});},_getPoiPanel:function(targetDiv){return new DDI.Maps.PoiPanel({div:targetDiv,poiOptions:DDI.Maps.PoiPanelControls,panelDivClass:'mapIconHolder',poiContentGenerator:function(className,title){return'<div class="'+className+(this.active?' selected':'')+'">'+title+'</div>';}});},_getPoiHelper:function(map,poiPanel,panelDisabler,backendProjection){return new DDI.Maps.PoiHelper(this.map,{getMapExtent:function(){var cropper=new DDI.Maps.BoundsManager(map);cropper.cropBottom(".eniro-controlbar-footer-underlay");return cropper.getExtent().transform(map.projection,backendProjection);},getSearchCategories:function(){return poiPanel.getActivePois();},getCategoryOptions:function(poiType){return poiPanel.getPoiOptions(poiType);},addCategoryMarkers:function(poiType,markers){poiPanel.setControlHasResults(poiType,markers.length>0);DDI.Maps.PoiHelper.prototype.addCategoryMarkers.apply(this,arguments);},performCategorySearch:function(category){panelDisabler.disableControl(poiPanel.getControlByName(category));DDI.Maps.PoiHelper.prototype.performCategorySearch.apply(this,arguments);},onMarkersRequestComplete:function(category,status){panelDisabler.enableControl(poiPanel.getControlByName(category));if(status!="success"){poiPanel.setControlHasResults(category,false);}}});},_getNavigationControl:function(){return new OpenLayers.Control.Navigation();},setCenter:function(lon,lat,zoom){zoom=10;var position=new OpenLayers.LonLat(lon,lat);var lonlat=position.transform(this.projection,this.map.projection);this.map.setCenter(lonlat,zoom,false,true);},setEventListners:function(){this.poiPanel.events.on({"beforeControlStateChanged":this.beforeControlStateChanged,scope:this});},beforeControlStateChanged:function(event){if(event.control.active){this.poiMapHelper.performCategorySearch(event.control.name);}else{this.poiMapHelper.removeCategoryResults(event.control.name);}}};})(jQuery);(function($){var groups={};var decorateAjaxRequest=function(groupName,originalRequest){var decoratedRequest=$.extend({},originalRequest);if('complete'in decoratedRequest){decoratedRequest['complete']=function(){delete groups[groupName];originalRequest['complete'].apply(this,arguments);};}else{decoratedRequest['complete']=function(){delete groups[groupName];};}
return decoratedRequest;};jQuery.groupedAjax=function(groupName,ajaxRequest){if(arguments.length!=2){throw new Error("'groupedAjax' expects exaclty two arguments.");}
if(groupName in groups){groups[groupName].abort();delete groups[groupName];}
var decoratedAjaxRequest=decorateAjaxRequest(groupName,ajaxRequest);groups[groupName]=$.ajax(decoratedAjaxRequest);};})(jQuery);DDI.Maps.PoiHelper=function(){DDI.Maps.PoiHelper.prototype.initialize.apply(this,arguments);};(function($){DDI.Maps.PoiHelper.prototype={projection:new OpenLayers.Projection('EPSG:4326'),getSearchCategories:function(){return[];},getCategoryOptions:function(){return{};},initialize:function(map,options){this.map=map;if(options){$.extend(this,options);}},setEventListners:function(){this.map.events.on({"moveend":this.performSearch,scope:this});},performSearch:function(){if(this.map.getExtent()==null)return;var extent=this.getMapExtent();var callback=(function(helper){return function(idx,poi){helper.performCategorySearch(poi,extent);};})(this);$.each(this.getSearchCategories(),callback);},performCategorySearch:function(category,extent){if(!extent){extent=this.getMapExtent();}
var this_=this;jQuery.groupedAjax(category,{url:DDI.contextPath+'/mapmodule/search',dataType:'json',data:{north:extent.top,south:extent.bottom,west:extent.left,east:extent.right,category:category,zoom:this.map.getZoom()-3},success:function(data){this_.setMarkers(data);},complete:function(xhr,status){this_.onMarkersRequestComplete(category,status);}});},onMarkersRequestComplete:function(){},removeCategoryResults:function(category){this.map.removeFeatureGroup("poiMarkers-"+category);},getMapExtent:function(){return this.map.getExtent().transform(this.map.projection,this.projection);},setMarkers:function(markers){for(var category in markers){this.removeCategoryResults(category);this.addCategoryMarkers(category,markers[category]);}},addCategoryMarkers:function(category,markers){var categoryOptions=this.getCategoryOptions(category);this._createMapFeatures("poiMarkers-"+category,categoryOptions,markers);},_createMapFeatures:function(featureGroupName,poiOptions,markers){for(var i=0,c=markers.length;i<c;i++){var position=new OpenLayers.LonLat(markers[i].lon,markers[i].lat);position.transform(this.projection,this.map.projection);this.map.addFeature(this._createMapFeature(poiOptions,position,markers[i]),featureGroupName);}},_createMapFeature:function(options,position,marker){var featureClass=options.featureClass;return new featureClass(position,marker,options);}};})(jQuery);(function($){var DEBUG=true;DDI.Maps.BoundsManager=OpenLayers.Class({CLASS_NAME:"DDI.Maps.BoundsManager",initialize:function(map){this._map=map;this._extend={top:0,right:0,bottom:0,left:0};},crop:function(side,value){var v=this._getMixedParamValue(side,value);if(this._extend[side]>-v){this._extend[side]=-v;}},cropTop:function(value){this.crop("top",value);},cropRight:function(value){this.crop("right",value);},cropBottom:function(value){this.crop("bottom",value);},cropLeft:function(value){this.crop("left",value);},_getMixedParamValue:function(side,mixed){if(typeof mixed=="number"){return mixed;}
if(typeof mixed=="string"){mixed=$(mixed);}
switch(side){case"top":case"bottom":return mixed.attr("offsetHeight");case"right":case"left":return mixed.attr("offsetWidth");}},extend:function(side,value){var v=this._getMixedParamValue(side,value);if(this._extend[side]<v){this._extend[side]=v;}},extendTop:function(value){this.extend("top",value);},extendRight:function(value){this.extend("right",value);},extendBottom:function(value){this.extend("bottom",value);},extendLeft:function(value){this.extend("left",value);},getExtent:function(){var extent=this._map.getExtent();extent.top+=this._extend["top"]*this._map.getResolution();extent.bottom-=this._extend["bottom"]*this._map.getResolution();extent.left-=this._extend["left"]*this._map.getResolution();extent.right+=this._extend["right"]*this._map.getResolution();return extent;}});})(jQuery);(function($){DDI.Maps.PopupContentLoader={};DDI.Maps.PopupContentLoader.handler=function(e){var loadContent=e.feature.loadContent;if(loadContent){var size=new OpenLayers.Size(190,100);jQuery.get(loadContent.url,loadContent.data,function(data){if(e.popup.id){e.popup.setSize(size);e.popup.setContentHTML(data);}});}};DDI.Maps.PopupContentLoader.activate=function(){Eniro.AppEvents.on({onPopupOpened:DDI.Maps.PopupContentLoader.handler});};DDI.Maps.PopupContentLoader.deactivate=function(){Eniro.AppEvents.un({onPopupOpened:DDI.Maps.PopupContentLoader.handler});};})(jQuery);DDI.Maps.PoiPopupAbstractFeature=OpenLayers.Class(Eniro.Feature.PopupFeature,{initialize:function(position,marker,controlOptions,featureAttributes,featureOptions){featureAttributes=featureAttributes||{};featureOptions=featureOptions||{};featureOptions.style=this._getStyle(marker,controlOptions);if(typeof(featureOptions.popupContents)=="undefined"){featureOptions.popupContents="<p>"+i18n.common.loading()+"</p>";}
var args=[position,featureAttributes,featureOptions];Eniro.Feature.PopupFeature.prototype.initialize.apply(this,args);},_getStyle:function(marker,options){return{externalGraphic:DDI.contextPath+"/img/icons-map/map-module/"+options.markerName+".png",graphicWidth:27,graphicHeight:37,graphicXOffset:-11,graphicYOffset:-35};}});DDI.Maps.PoiPopupLoadContentFeature=OpenLayers.Class(DDI.Maps.PoiPopupAbstractFeature,{initialize:function(position,marker,controlOptions){DDI.Maps.PoiPopupAbstractFeature.prototype.initialize.apply(this,[position,marker,controlOptions]);this.loadContent={url:DDI.contextPath+"/map/popup",data:{hide_controls:true,id:marker.id}};}});DDI.Maps.PoiPopupRenderContentFeature=OpenLayers.Class(DDI.Maps.PoiPopupAbstractFeature,{initialize:function(position,marker,controlOptions){DDI.Maps.PoiPopupAbstractFeature.prototype.initialize.apply(this,[position,marker,controlOptions]);this._templateData=marker.data;this._markerName=marker.name;this._poiType=controlOptions.name;this._rendered=false;},openPopup:function(){DDI.Maps.PoiPopupAbstractFeature.prototype.openPopup.apply(this,arguments);if(!this._rendered){this._renderTemplate();}},_renderTemplate:function(){var callback=(function(feature){return function(result){feature._templateRenderedCallback(result);};})(this);var templateData=this._templateData;astral.template.Template.load('popup/'+this._poiType,function(template){template.render(callback,templateData);});},_templateRenderedCallback:function(result){this._rendered=true;this.popupContents=result;if(this.popup.id){this.popup.setSize(new OpenLayers.Size(190,100));this.popup.setContentHTML(result);this.popup.updateSize();}}});DDI.Maps.PoiPopupWeatherFeature=OpenLayers.Class(DDI.Maps.PoiPopupRenderContentFeature,{_getStyle:function(marker,options){return{externalGraphic:DDI.contextPath+"/img/yr/b38/"+marker.data.symbolIcon+".png",graphicWidth:38,graphicHeight:38,graphicXOffset:-19,graphicYOffset:-38};}});var Base=function(){};Base.extend=function(_instance,_static){var extend=Base.prototype.extend;Base._prototyping=true;var proto=new this;extend.call(proto,_instance);proto.base=function(){};delete Base._prototyping;var constructor=proto.constructor;var klass=proto.constructor=function(){if(!Base._prototyping){if(this._constructing||this.constructor==klass){this._constructing=true;constructor.apply(this,arguments);delete this._constructing;}else if(arguments[0]!=null){return(arguments[0].extend||extend).call(arguments[0],proto);}}};klass.ancestor=this;klass.extend=this.extend;klass.forEach=this.forEach;klass.implement=this.implement;klass.prototype=proto;klass.toString=this.toString;klass.valueOf=function(type){return(type=="object")?klass:constructor.valueOf();};extend.call(klass,_static);if(typeof klass.init=="function")klass.init();return klass;};Base.prototype={extend:function(source,value){if(arguments.length>1){var ancestor=this[source];if(ancestor&&(typeof value=="function")&&(!ancestor.valueOf||ancestor.valueOf()!=value.valueOf())&&/\bbase\b/.test(value)){var method=value.valueOf();value=function(){var previous=this.base||Base.prototype.base;this.base=ancestor;var returnValue=method.apply(this,arguments);this.base=previous;return returnValue;};value.valueOf=function(type){return(type=="object")?value:method;};value.toString=Base.toString;}
this[source]=value;}else if(source){var extend=Base.prototype.extend;if(!Base._prototyping&&typeof this!="function"){extend=this.extend||extend;}
var proto={toSource:null};var hidden=["constructor","toString","valueOf"];var i=Base._prototyping?0:1;while(key=hidden[i++]){if(source[key]!=proto[key]){extend.call(this,key,source[key]);}}
for(var key in source){if(!proto[key])extend.call(this,key,source[key]);}}
return this;}};Base=Base.extend({constructor:function(){this.extend(arguments[0]);}},{ancestor:Object,version:"1.1",forEach:function(object,block,context){for(var key in object){if(this.prototype[key]===undefined){block.call(context,object[key],key,object);}}},implement:function(){for(var i=0;i<arguments.length;i++){if(typeof arguments[i]=="function"){arguments[i](this.prototype);}else{this.prototype.extend(arguments[i]);}}
return this;},toString:function(){return String(this.valueOf());}});(function(){if(!window.astral)astral={};if(!astral.queue)astral.queue={};astral.queue.Context=function(data,parent){this.data=data;this.parent=parent;};astral.queue.Context.prototype={push:function(){return new astral.queue.Context(astral.queue.clone(this.data),this);},pull:function(){return this.parent?this.parent:new astral.queue.Context({});},set:function(name,value){this.data[name]=value;},get:function(name){return this.data[name]||'';}};})();(function(){if(!window.astral)astral={};if(!astral.queue)astral.queue={};var sizeOf=function(array){var length=0;for(var k in array){if(array.hasOwnProperty(k)){length++;}}
return length;};astral.queue.clone=function(obj,ignore,seenObjects,mappingArray){if(obj==null||typeof(obj)!='object'){return obj;}
seenObjects=seenObjects||[];mappingArray=mappingArray||[];var temp=new obj.constructor();seenObjects.push(obj);mappingArray.push(temp);for(var key in obj){if(obj.hasOwnProperty(key)){if(ignore&&ignore(obj[key],key)){temp[key]=obj[key];continue;}
var index=seenObjects.indexOf(obj[key]);if(index==-1){temp[key]=astral.queue.clone(obj[key],ignore,seenObjects,mappingArray);seenObjects.push(obj[key]);mappingArray.push(temp[key]);}else{temp[key]=mappingArray[index];}}}
return temp;};astral.queue.Task=Base.extend({constructor:function(process){this.process=process;this.completeCallbacks=[];},onComplete:function(callback){this.completeCallbacks.push(callback);},complete:function(result,error){for(var i=0;i<this.completeCallbacks.length;i++){this.completeCallbacks[i](result,error);}}},{create:function(process){return new SyncTask(process);}});astral.queue.Queue=Base.extend({constructor:function(tasks){this.tasks=tasks||[];this.results=[];this.completeCallbacks=[];this.completed=false;},clone:function(){if(this.completed){throw new Error("Unable to clone completed queue");}
return astral.queue.clone(this,function(node){return node instanceof astral.template.Template});},addTask:function(task){if(this.completed){throw new Error("Queue already completed");}
this.tasks.push(task);},onComplete:function(callback){if(this.completed){this._runCallback(callback);}else{this.completeCallbacks.push(callback);}},complete:function(){this.completed=true;if(!this.completeCallbacks.length)return;for(var i=0;i<this.completeCallbacks.length;i++){this._runCallback(this.completeCallbacks[i],this.results);}},_runCallback:function(callback,result){astral.queue.Task.create(function(){callback(result);}).run();},run:function(context){if(this.completed){throw new Error("Unable to run completed queue");}
if(!this.tasks.length){this.complete();return;}
this._processNext(context);},_processNext:function(context){var task=this.tasks[this.results.length];if(astral.queue.DEBUG){console.log('Processing next task ('+(this.results.length+1)+'/'+this.tasks.length+'):');console.debug(task);}
task.onComplete(this._makeTaskCallback(this.results.length,context));task.run(context);},_makeTaskCallback:function(taskOrder,context){var queue=this;return function(result,error){if(error&&astral.queue.DEBUG)console.error(error);queue.results.push(result);if(queue.results.length==queue.tasks.length){queue.complete();}else{queue._processNext(context);}};}});var SyncTask=astral.queue.Task.extend({run:function(context){var task=this;setTimeout(function(){task._run(context);},0);},_run:function(context){try{var result=this.process(context);}catch(e){if(astral.queue.DEBUG)console.debug('Got error while running task',e);this.complete('',e);return;}
this.complete(result);}});})();(function(){if(!window.astral)astral={};if(!astral.template)astral.template={};astral.template.Block=Base.extend({constructor:function(){this.useElse=this.constructor.useElse?true:false;},setArguments:function(args){this.args=args;},setInclusionTokens:function(tokens){if(!this.useElse){this.inclusionTokens=tokens;}else{var elseFound=false;this.inclusionTokens=[[],[]];for(var i=0;i<tokens.length;i++){var token=tokens[i];if(token.tagName=='else'){elseFound=true;continue;}
this.inclusionTokens[elseFound?1:0].push(token);}}}},{registry:{},register:function(name,block){this.registry[name]=block;},get:function(name){if(!this.registry[name]){throw new Error("Unknown block: "+name);}
return this.registry[name];},create:function(name){return new(this.get(name));}});with(astral.template){Block.register('each',Block.extend({render:function(token){if(this.args[1]!='as'){throw new Error('"each block usage:\n<@ each list as varName @>\n... code accessing varName ...\n<@ endeach @>"');}
var groups=jQuery.map(this.inclusionTokens,function(group){var result=jQuery.map(group,function(token){return token.render().replace(/\n/g,'\n\t');});if(!result.length){return'null';}else{return'new astral.queue.Queue([\n\t\t'+
result.join(',\n').replace(/\n/g,'\n\t\t')+'\n\t'+'])';}});var clause="function (context) { with (context.data) { return "+this.args[0]+"; } }";return"each("+clause+", '"+this.args[2]+"',\n\t"+"function () {\n\t\t"+"return "+groups[0].replace(/\n/g,'\n\t')+";\n\t"+"},\n\t"+
groups[1]+"\n"+")";}},{useInclusion:true,useElse:true}));Block.register('if',Block.extend({render:function(){var groups=jQuery.map(this.inclusionTokens,function(group){var result=jQuery.map(group,function(token){return token.render().replace(/\n/g,'\n\t');});if(!result.length){return'null';}else{return'new astral.queue.Queue([\n\t\t'+
result.join(',\n').replace(/\n/g,'\n\t\t')+'\n\t'+'])';}});return'checkIf(\n'+' function (context) {\n'+'  with (context.data) {\n'+'   return '+this.args.join(' ')+';\n'+'  }\n'+' },\n\t'+
groups.join(',\n\t')+'\n'+')';}},{useInclusion:true,useElse:true}));Block.register('else',Block.extend({render:function(){throw new Error("'else' block not allowed here");}}));Block.register('include',Block.extend({render:function(){return'include('+this.args[0]+')';}},{useInclusion:false}));Block.register('source',Block.extend({setInclusionTokens:function(tokens){if(tokens.length>1){throw new Error("source tag can contain only source javascript code.");}
this.source=tokens[0].source;},render:function(){return"astral.queue.Task.create(function (context) {\n"+" with (context.data) {\n"+"  "+this.source+"\n"+" }\n"+"})";}},{useInclusion:true}));Block.register('call',Block.extend({render:function(){if(this.args.length>1){throw new Error("<@ call @> accepts only method name.");}
return"delegate(function (context) {\n"+" return helper.bind(context)."+this.args[0]+"();\n"+"})";}},{useInclusion:false}));Block.register('super',Block.extend({render:function(){return"__super()";}}));}})();(function(){if(!window.astral)astral={};if(!astral.template)astral.template={};astral.template.Control=Base.extend({constructor:function(){},setArguments:function(args){this.args=args;},setContent:function(content){this.content=content;}},{registry:{},register:function(name,instanceAttrs,staticAttrs){this.registry[name]=this.extend(instanceAttrs,staticAttrs);},get:function(name){if(!this.registry[name]){throw new Error("Unknown control: "+name);}
return this.registry[name];},create:function(name){return new(this.registry[name]);}});with(astral.template){Control.register('def',{render:function(){return this.args[0]+': function () {\n'+' var helper = this;\n'+' var __super = (function(method, obj){return function () {return method.apply(obj);}})(helper.base, helper);\n'+' with (this.context.data) {\n'+'  return new astral.queue.Queue([\n\t\t\t'+
this.content.replace(/\n/g,'\n\t\t\t')+'\n'+'  ]);\n'+' }\n'+'}';}},{useInclusion:true});Control.register('extends',{render:function(){throw new Error("The <? extends ?> tag MUST be the first tag in template.");}},{useInclusion:false});}})();(function(){if(!window.astral)astral={};if(!astral.template)astral.template={};astral.template.Token=Base.extend({constructor:function(source,sourceName,lineno){while(source[0]=='\n'){source=source.substring(1);lineno+=1;}
this.source=source;this.sourceName=sourceName;this.lineno=lineno;this.tagName=null;this.useInclusion=false;this.subtokens=[];},setInclusionTokens:function(tokens){this.subtokens=tokens;},is:function(type){return this instanceof astral.template.Token.get(type);},ignore:false},{registry:{},register:function(type,token){this.registry[type]=token;},get:function(type){if(!this.registry[type]){throw new Error("No token registered for type "+type);}
return this.registry[type];},create:function(type,source,sourceName,lineno){return new(this.get(type))(source,sourceName,lineno);}});with(astral.template){astral.template.BaseTextToken=Token.extend({constructor:function(source){this.base.apply(this,arguments);this._is_blank=!/S/.test(source);},isBlank:function(){return this._is_blank;}});var DelegatingToken=Token.extend({constructor:function(source){this.base.apply(this,arguments);this.bits=DelegatingToken.splitSource(source);this.tagName=this.bits.shift();}},{splitSource:function(source){var r=/([^\s"]*"(?:[^"\\]*(?:\\.[^"\\]*)*)"\S*|[^\s']*'(?:[^'\\]*(?:\\.[^'\\]*)*)'\S*|\S+)/g;var result=source.match(r);return jQuery.map(result,function(item){return/\S/.test(item)?item:[];});}});astral.template.ControlTextToken=BaseTextToken.extend({render:function(){return this.source;}});Token.register('control',DelegatingToken.extend({constructor:function(){this.base.apply(this,arguments);if(this.tagName.substring(0,3)!='end'){this.useInclusion=Control.get(this.tagName).useInclusion;}},render:function(){var control=Control.create(this.tagName);control.setArguments(this.bits);if(this.useInclusion){var content=(jQuery.map(this.subtokens,function(token){return token.source;})).join('');var lexer=new QueueLexer(content,this.sourceName,this.lineno);control.setContent(lexer.parse());}
return control.render();}}));astral.template.QueueTextToken=BaseTextToken.extend({render:function(){return'push("'+this.source.replace(/\\/g,'\\\\').replace(/"/g,'\\"').replace(/\n/g,'\\n')+'", "'+this.sourceName+'", '+this.lineno+')';}});Token.register('comment',Token.extend({ignore:true}));Token.register('queue',DelegatingToken.extend({constructor:function(){this.base.apply(this,arguments);if(!this.isSpecialTokenName(this.tagName)){this.useInclusion=Block.get(this.tagName).useInclusion;}},isSpecialTokenName:function(name){return name.substring(0,3)=='end'||name=='else';},render:function(){var block=Block.create(this.tagName);block.setArguments(this.bits);if(this.useInclusion){block.setInclusionTokens(this.subtokens);}
return block.render(this);}}));Token.register('variable',Token.extend({render:function(){return'delegate(function(context){with(context.data){return push('+this.source+')}}, "'+this.sourceName+'", '+this.lineno+')';}}));}})();(function(){if(!window.astral)astral={};if(!astral.template)astral.template={};with(astral.template){var treeTokens=function(tokensList,getUntil){var tokensTree=[];while(tokensList.length){var token=tokensList.shift();if(getUntil&&token.tagName==getUntil){return tokensTree;}
if(token.useInclusion){token.setInclusionTokens(treeTokens(tokensList,'end'+token.tagName));}
if(!token.ignore){tokensTree.push(token);}}
if(getUntil){throw new Error("Unmatched close block: "+getUntil);}
return tokensTree;};var BaseLexer=Base.extend({constructor:function(templateString,sourceName,lineno){this.templateString=templateString.replace(/^\s+/,'');this.sourceName=sourceName;this.lineno=lineno||1;this.textTokenClass=this.constructor.textTokenClass;this._sortTags();this._initRe();},_sortTags:function(){var _class=this.constructor;if(_class._tagsSorted){this.tags=_class.tags;return;}
var tagsList=[];for(var name in _class.tags){tagsList.push({'name':name,'tags':_class.tags[name]});}
tagsList=tagsList.sort(function(a,b){if(a.tags[0].length>b.tags[0].length)return-1;if(a.tags[0].length<b.tags[0].length)return 1;return 0;});var tagsHash={};while(tagsList.length)with(tagsList.shift())tagsHash[name]=tags;_class.tags=tagsHash;_class._tagsSorted=true;this._sortTags();},_initRe:function(){var escape=function(string){return string.replace(/([.*+?|()\[\]{}\\])/g,'\\$1');}
var bits=[];for(var tag in this.tags){bits.push(escape(this.tags[tag][0])+'.*?'+escape(this.tags[tag][1]));}
this.tagRe=new RegExp('('+bits.join('|')+')','g');},getTokens:function(){return treeTokens(this.listTokens());},listTokens:function(){var
insideTag=false,result=[];var _matchedTokens=this.templateString.match(this.tagRe);if(!_matchedTokens){var tokenStrings=[this.templateString];}else{var tokenStrings=[];var _templateString=this.templateString;for(var i=0;i<_matchedTokens.length;i++){var _start=_templateString.indexOf(_matchedTokens[i]);tokenStrings.push(_templateString.substring(0,_start));tokenStrings.push(_matchedTokens[i]);_templateString=_templateString.substring(_start+_matchedTokens[i].length);}
tokenStrings.push(_templateString);}
if(astral.template.DEBUG)console.debug(tokenStrings);for(var i=0;i<tokenStrings.length;i++){if(tokenStrings[i]){var token=this.createToken(tokenStrings[i],insideTag,this.lineno);if(token){result.push(token);}}
this.lineno+=tokenStrings[i].split("\n").length-1;insideTag=!insideTag;}
return result;},createToken:function(tokenString,insideTag,lineno){if(insideTag){for(var tag in this.tags){var tagStart=this.tags[tag][0];if(tokenString.substring(0,tagStart.length)==tagStart){var cut=tokenString.length-this.tags[tag][1].length;return Token.create(tag,jQuery.trim(tokenString.substring(tagStart.length,cut)),this.sourceName,lineno);}}
throw new Error("Unable to parse token: "+tokenString);}else{return new(this.textTokenClass)(tokenString,this.sourceName,lineno);}}},{_tagsSorted:false});astral.template.HelperLexer=BaseLexer.extend({constructor:function(){this.base.apply(this,arguments);this.baseHelper=true;},parse:function(){var tokens=this.getTokens();if(tokens[0].tagName=='extends'){return this.processExtentionTemplate(tokens.shift(),tokens);}else{return this.processBaseTemplate(tokens);}},processExtentionTemplate:function(extendsToken,tokens){tokens=jQuery.map(tokens,function(token){if(token.is('control')){return token;}else if(token instanceof astral.template.BaseTextToken&&token.isBlank()){}else{if(astral.template.DEBUG)console.debug(token);throw new Error("Extention template MUST NOT contain own non-control tokens");}});this.baseHelper=false;var extend=extendsToken.bits[0];if(!(extend[0]=='"'||extend[0]=="'")){extend='function (context) { return context.data.'+extend+'; }';}
return'registerTemplateHelper('+extend+', {\n\t'+
this._renderTokens(tokens)+'\n'+'})';},processBaseTemplate:function(tokens){var mainQueue=tokens.pop();if(mainQueue.is('control')){throw new Error("Base template MUST define non-control tokens");}
var def=Token.create('control','def _createMainQueue',this.sourceName,mainQueue.lineno);def.setInclusionTokens([mainQueue]);tokens.push(def);return'registerTemplateHelper({\n\t'+
this._renderTokens(tokens)+'\n'+'})';},_renderTokens:function(tokens){return(jQuery.map(tokens,function(token){return token.render();})).join(',\n').replace(/\n/g,'\n\t');}},{tags:{control:['<?','?>']},textTokenClass:astral.template.ControlTextToken});astral.template.QueueLexer=BaseLexer.extend({parse:function(){return(jQuery.map(this.getTokens(),function(token){return token.render();})).join(',\n');}},{tags:{queue:['<@','@>'],variable:['<%=','%>'],comment:['<#','#>']},textTokenClass:astral.template.QueueTextToken});}})();(function(){if(!window.astral)astral={};if(!astral.template)astral.template={};if(!astral.template.helpers)astral.template.helpers={};astral.template.helpers.push=function(string,sourceName,lineno){var task=astral.queue.Task.create(function(){return string;});if(astral.template.DEBUG){task.sourceName=sourceName;task.lineno=lineno;task.helper='push';}
return task;};var DelegationCall=astral.queue.Task.extend({run:function(context){var
task=this,subtask=this.process(context);subtask.onComplete(function(result,error){task.complete(result,error);});subtask.run(context);}});astral.template.helpers.delegate=function(delegation,sourceName,lineno){var task=new DelegationCall(delegation);if(astral.template.DEBUG){task.sourceName=sourceName;task.lineno=lineno;task.helper='delegate';}
return task;};var EachIterator=astral.queue.Task.extend({constructor:function(listGetter,itemName,makeTask,elseQueue){this.listGetter=listGetter;this.itemName=itemName;this.makeTask=makeTask;this.elseQueue=elseQueue;this.completeCallbacks=[];},run:function(context){var list=this.listGetter(context);if(!list||!list.length){this.runElse(context);}else{this.runEach(context,list);}},runEach:function(context,list){var
itemName=this.itemName,queue=new astral.queue.Queue(),makeTask=this.makeTask;for(var i=0;i<list.length;i++){queue.addTask(astral.queue.Task.create((function(iterationValue){return function(context){context.set(itemName,iterationValue);};})(list[i])));queue.addTask(makeTask());}
var iterator=this;queue.onComplete(function(result){iterator.complete(result);});queue.run(context);},runElse:function(context){if(this.elseQueue){var
iterator=this,task=this.elseQueue.clone();task.onComplete(function(result){iterator.complete(result);});task.run(context);}else{this.complete(null);}}});astral.template.helpers.each=function(listName,itemName,makeCallback,elseQueue,sourceName,lineno){var task=new EachIterator(listName,itemName,makeCallback,elseQueue);if(astral.template.DEBUG){task.sourceName=sourceName;task.lineno=lineno;task.helper='each';}
return task;};var IfStatement=astral.queue.Task.extend({constructor:function(checker,trueQueue,falseQueue){this.checker=checker;this.trueQueue=trueQueue;this.falseQueue=falseQueue;this.completeCallbacks=[];},run:function(context){var
check=false,task=this;try{check=this.checker(context);}catch(e){}
var queue=check?this.trueQueue:this.falseQueue;if(!queue){this.complete(null);}else{queue=queue.clone();queue.onComplete(function(result){task.complete(result);})
queue.run(context);}}});astral.template.helpers.checkIf=function(checker,trueQueue,falseQueue,sourceName,lineno){var task=new IfStatement(checker,trueQueue,falseQueue);if(astral.template.DEBUG){task.sourceName=sourceName;task.lineno=lineno;task.helper='if';}
return task;};var Includer=astral.queue.Task.extend({constructor:function(template){this.template=template;this.completeCallbacks=[];this.load=astral.template.Template.getLoader();},run:function(context){var includer=this;this.load(this.template,function(template){template.render(function(result){includer.complete(result);},context.data);});}});astral.template.helpers.include=function(template){var task=new Includer(template);if(astral.template.DEBUG){task.helper='include';}
return task;};var BaseTemplateHelper=Base.extend({constructor:function(){},bind:function(context){this.context=context;return this;},createMainQueue:function(template){var queue=this._createMainQueue();if(template){template.renderQueue=queue.clone();}
return queue;}});var TemplateHelperRegister=astral.queue.Task.extend({constructor:function(template,extend,attrs){if(!attrs){attrs=extend;extend=null;}
this.template=template;this.extend=extend;this.attrs=attrs;this.completeCallbacks=[];},run:function(context){if(this.template.helperClass){this.complete(this.template.helperClass);}else{var
task=this,subtask=this._makeTask();if(astral.template.DEBUG)subtask.task=task;subtask.onComplete(function(result,error){task.complete(result,error);});subtask.run(context.push());}},_helperLoader:astral.queue.Task.extend({constructor:function(loader,extend,attrs){this.loader=loader;this.extend=extend;this.attrs=attrs;this.completeCallbacks=[];},run:function(context){var
task=this,attrs=this.attrs;this.loader(this.extend,function(template){var helperCreator=template.createHelper(context);helperCreator.onComplete(function(){attrs['parentClass']=template.helperClass;var newClass=template.helperClass.extend(attrs,{parentClass:template.helperClass});task.complete(newClass);});helperCreator.run(context);});}}),_makeTask:function(){var attrs=this.attrs;if(this.extend){return new this._helperLoader(astral.template.Template.getLoader(),this.extend,attrs);}else{return astral.queue.Task.create(function(){return BaseTemplateHelper.extend(attrs);});}},complete:function(helperClass,error){this.template.helperClass=helperClass;this.template.helper=new helperClass();this.base(null,error);}});astral.template.helpers.registerTemplateHelper=function(extend,attrs){return function(){var task=new TemplateHelperRegister(this,extend,attrs);if(astral.template.DEBUG){task.helper='registerTemplateHelper';}
return task;};};})();(function(){if(!window.astral)astral={};if(!astral.template)astral.template={};var flatten=function(list,filter){var result=[];for(var i=0;i<list.length;i++){if(typeof(list[i])=="undefined"&&filter)continue;result=result.concat(list[i]&&list[i].constructor==Array?flatten(list[i],filter):[list[i]]);}
return result;};astral.template.Template=Base.extend({constructor:function(renderQueue){this.renderQueue=renderQueue;},getHelper:function(context){return this.helper.bind(context);},render:function(target,data){var queue=this.renderQueue.clone();queue.onComplete(this.makeCallback(target));queue.run(new astral.queue.Context(data||{}));},makeCallback:function(target){if(typeof(target)=='string'){return function(result){jQuery(target).html(flatten(result).join(''));};}else return function(result){target(flatten(result).join(''));};}},{fromSource:function(templateCode,sourceName){var lexer=new astral.template.HelperLexer(templateCode,sourceName);var code=lexer.parse();var compileCode='with (astral.template.helpers) {\n'+' currentTemplate.createHelper = '+code.replace(/\n/g,'\n\t')+';\n'+' currentTemplate.renderQueue = new astral.queue.Queue([\n'+'  currentTemplate.createHelper(),\n'+'  delegate(function (context) {\n'+'   return currentTemplate.getHelper(context).createMainQueue(currentTemplate);\n'+'  }, "'+sourceName+'", -1)\n'+' ]);\n'+'}';if(astral.template.DEBUG){console.log('Creating new template:');console.log(compileCode);}
var template=new this;(new Function('currentTemplate',compileCode))(template);return template;},registerLoader:function(loader){this.loader=loader;},getLoader:function(){if(!this.loader){throw new Error("No template loader registered");}
return this.loader;},load:function(name,callback){this.getLoader()(name,callback);}});})();(function(){var _templatesCache={};astral.template.Template.registerLoader(function(name,callback){if(!_templatesCache[name]){jQuery.get(DDI.contextPath+'/templates/'+name+'.html',function(result){_templatesCache[name]=astral.template.Template.fromSource(result.replace(/\r\n/g,'\n'));callback(_templatesCache[name]);});}else{callback(_templatesCache[name]);}});})();DDI.Maps.PoiPanelControls=[{title:i18n.maps.poi.panel.button.events(),className:'events',name:'activities',markerName:'poi-icon-event',featureClass:DDI.Maps.PoiPopupLoadContentFeature},{title:i18n.maps.poi.panel.button.attractions(),className:'attractions',name:'attractions',markerName:'poi-icon-attractions',featureClass:DDI.Maps.PoiPopupLoadContentFeature},{title:i18n.maps.poi.panel.button.restaurants(),className:'restaurant',name:'restaurants',markerName:'poi-icon-restaurant',featureClass:DDI.Maps.PoiPopupLoadContentFeature},{title:i18n.maps.poi.panel.button.cinema(),className:'cinema',name:'cinema',markerName:'poi-icon-cinema',featureClass:DDI.Maps.PoiPopupLoadContentFeature},{title:i18n.maps.poi.panel.button.shopping(),className:'shopping',name:'shopping',markerName:'poi-icon-shopping',featureClass:DDI.Maps.PoiPopupLoadContentFeature},{title:i18n.maps.poi.panel.button.kindergarten(),className:'kindergarten',name:'kindergarden',markerName:'poi-icon-kindergarten',featureClass:DDI.Maps.PoiPopupLoadContentFeature},{title:i18n.maps.poi.panel.button.schools(),className:'schools',name:'schools',markerName:'poi-icon-schools',featureClass:DDI.Maps.PoiPopupLoadContentFeature},{title:i18n.maps.poi.panel.button.health(),className:'health',name:'health',markerName:'poi-icon-health',featureClass:DDI.Maps.PoiPopupLoadContentFeature},{title:i18n.maps.poi.panel.button.clubs_and_orgs(),className:'groups',name:'clubs',markerName:'poi-icon-clubs-orgs',featureClass:DDI.Maps.PoiPopupLoadContentFeature},{title:i18n.maps.poi.panel.button.bunkruptcies(),className:'bankruptcies',name:'bunkruptcies',markerName:'poi-icon-bankruptcies',featureClass:DDI.Maps.PoiPopupRenderContentFeature},{title:i18n.maps.poi.panel.button.new_ventures(),className:'newventures',name:'ventures',markerName:'poi-icon-new-ventures',featureClass:DDI.Maps.PoiPopupRenderContentFeature},{title:i18n.maps.poi.panel.button.rejta(),className:'ratings',name:'rejta',markerName:'poi-icon-ratings',featureClass:DDI.Maps.PoiPopupRenderContentFeature},{title:i18n.maps.poi.panel.button.weather(),className:'yr',name:'weather',featureClass:DDI.Maps.PoiPopupWeatherFeature}];(function($){DDI.Maps.PoiPanel=OpenLayers.Class(OpenLayers.Control.Panel,{EVENT_TYPES:["activate","deactivate","beforeControlStateChanged","afterControlStateChanged"],trackControlsState:true,poiOptions:[],poisState:{},initialize:function(options){OpenLayers.Control.Panel.prototype.initialize.apply(this,[options]);},_populatePoiControl:function(options){var control=new DDI.Maps.PoiPanel.Control(jQuery.extend({},{contentGenerator:this.poiContentGenerator,panelDivClass:this.panelDivClass},options));control.events.on({"enable":this.redraw,"disable":this.redraw,"activate":this.storeControlState,"deactivate":this.storeControlState,scope:this});return control;},storeControlState:function(event){this.poisState[event.object.name]=event.object.active;var events=this.events;if(this.trackControlsState){events.triggerEvent("beforeControlStateChanged",{control:event.object});MapModulePersistenceService.store(event.object.name,event.object.active,function(){events.triggerEvent("afterControlStateChanged");});}},getActivePois:function(){var activePois=[];for(var poi in this.poisState){if(this.poisState[poi]){activePois.push(poi);}}
return activePois;},draw:function(){OpenLayers.Control.prototype.draw.apply(this,arguments);for(var i=0,len=this.controls.length;i<len;i++){this.map.addControl(this.controls[i]);}
this.activate();return this.div;},redraw:function(){this.div.innerHTML="";if(this.active){for(var i=0,len=this.controls.length;i<len;i++){this.div.appendChild(this._getDomElementForControl(this.controls[i]));}}},poiContentGenerator:function(className,title){return'<div class="'+className+'">'+title+'</div>';},_getDomElementForControl:function(control){var element;if('getPanelDiv'in control){element=control.getPanelDiv();}else{element=control.panel_div;if(control.active){element.className=control.displayClass+"ItemActive";}else{element.className=control.displayClass+"ItemInactive";}}
return element;},isControlActive:function(controlName){var control=this.getControlByName(controlName);return control.active;},getControlByName:function(name){for(var i=0,len=this.controls.length;i<len;i++){if(this.controls[i].name==name){return this.controls[i];}}
throw new Error('No control with name "'+name+'" found. Available controls: '+this._getControlNames());},setControlHasResults:function(control,hasResults){if(typeof(hasResults)=="undefined"){hasResults=true;}
if(typeof control=="string"){control=this.getControlByName(control);}
control.setHasResults(hasResults);},getPoiControlsState:function(callback){var this_=this;MapModulePersistenceService.get(function(controlStates){this_.trackControlsState=false;this_.poisState=controlStates;for(var name in controlStates){var control=this_._populatePoiControl(this_.getPoiOptions(name),this_.poisClass);this_.addControls(control);if(controlStates[name]){this_.activateControl(control);}}
this_.trackControlsState=true;if(callback){callback();}});},getPoiOptions:function(poiName){for(var i=0;i<this.poiOptions.length;i++){if(this.poiOptions[i].name==poiName){return this.poiOptions[i];}}
throw new Error("Options for poi '"+poiName+"' not found. Available pois: "+this._getPoiNames());},_getPoiNames:function(){return jQuery.map(this.poiOptions,function(poi){return poi.name;});},CLASS_NAME:"DDI.Maps.PoiPanel"});})(jQuery);(function($){DDI.Maps.ToggleControl=OpenLayers.Class(OpenLayers.Control,{type:OpenLayers.Control.TYPE_TOGGLE,active:true,initialize:function(options){OpenLayers.Control.prototype.initialize.apply(this,[options]);},_getElementClassName:function(){if(this.active){return"header";}else{return"headerOpen";}},getPanelDiv:function(){if('content'in this){if(typeof(this.content)=="function"){this.panel_div.innerHTML=this.content();}else{this.panel_div.innerHTML=this.content;}}
this.panel_div.className=this._getElementClassName();return this.panel_div;},CLASS_NAME:"DDI.Maps.ToggleControl"});})(jQuery);(function($){DDI.Maps.PoiPanel.Control=OpenLayers.Class(OpenLayers.Control,{type:OpenLayers.Control.TYPE_TOGGLE,EVENT_TYPES:["activate","deactivate"],initialize:function(options){this._className=options.className;delete options.className;this.hasResults=true;this.markerName=options.markerName;OpenLayers.Control.prototype.initialize.apply(this,[options]);},setMap:function(){OpenLayers.Control.prototype.setMap.apply(this,arguments);this.drawPanelDiv();},setHasResults:function(hasResults){this.hasResults=hasResults;this.drawPanelDiv();},activate:function(){OpenLayers.Control.prototype.activate.apply(this,arguments);this.drawPanelDiv();},deactivate:function(){OpenLayers.Control.prototype.deactivate.apply(this,arguments);this.drawPanelDiv();},drawPanelDiv:function(){if(this.panelDivClass!=null){this.panel_div.className=this.panelDivClass;}
this.panel_div.innerHTML=this.contentGenerator(this._getElementClassName(),this.title);},getPanelDiv:function(){this.drawPanelDiv();return this.panel_div;},_getElementClassName:function(){var resultingClass=this._className+'-';if(!this.active){resultingClass+="off";}else if(!this.hasResults){resultingClass+="none";}else{resultingClass+="on";}
return resultingClass;},CLASS_NAME:"DDI.Maps.PoiPanel.Control"});})(jQuery);(function($){var control_disablers={};DDI.Maps.PoiPanelDisabler=OpenLayers.Class(OpenLayers.Control,{draw:function(){if(this.div==null){throw new Error("Panel disabler MUST have target div specified.");}
return OpenLayers.Control.prototype.draw.apply(this,arguments);},disableControl:function(control){if(control.name in control_disablers){control_disablers[control.name].show();}else{this._createControlDisabler(control);}},enableControl:function(control){if(control.name in control_disablers){control_disablers[control.name].fadeOut('slow');}},_createControlDisabler:function(control){var disabler=$("<div/>").addClass("disablePoiControl").css("position","absolute").css("left",control.panel_div.offsetLeft+"px").css("top",control.panel_div.offsetTop+"px").css("width",control.panel_div.offsetWidth+"px").css("height",control.panel_div.offsetHeight+"px");disabler.appendTo(this.div);control_disablers[control.name]=disabler;return disabler;}});})(jQuery);;(function($){$.fn.extend({autocomplete:function(urlOrData,options){var isUrl=typeof urlOrData=="string";options=$.extend({},$.Autocompleter.defaults,{url:isUrl?urlOrData:null,data:isUrl?null:urlOrData,delay:isUrl?$.Autocompleter.defaults.delay:10,max:options&&!options.scroll?10:150},options);options.highlight=options.highlight||function(value){return value;};options.formatMatch=options.formatMatch||options.formatItem;return this.each(function(){new $.Autocompleter(this,options);});},result:function(handler){return this.bind("result",handler);},search:function(handler){return this.trigger("search",[handler]);},flushCache:function(){return this.trigger("flushCache");},setOptions:function(options){return this.trigger("setOptions",[options]);},unautocomplete:function(){return this.trigger("unautocomplete");}});$.Autocompleter=function(input,options){var KEY={UP:38,DOWN:40,DEL:46,TAB:9,RETURN:13,ESC:27,COMMA:188,PAGEUP:33,PAGEDOWN:34,BACKSPACE:8};var $input=$(input).attr("autocomplete","off").addClass(options.inputClass);var timeout;var previousValue="";var cache=$.Autocompleter.Cache(options);var hasFocus=0;var lastKeyPressCode;var config={mouseDownOnSelect:false};var select=$.Autocompleter.Select(options,input,selectCurrent,config);var blockSubmit;$.browser.opera&&$(input.form).bind("submit.autocomplete",function(){if(blockSubmit){blockSubmit=false;return false;}});$input.bind(($.browser.opera?"keypress":"keydown")+".autocomplete",function(event){lastKeyPressCode=event.keyCode;switch(event.keyCode){case KEY.UP:event.preventDefault();if(select.visible()){select.prev();}else{onChange(0,true);}
break;case KEY.DOWN:event.preventDefault();if(select.visible()){select.next();}else{onChange(0,true);}
break;case KEY.PAGEUP:event.preventDefault();if(select.visible()){select.pageUp();}else{onChange(0,true);}
break;case KEY.PAGEDOWN:event.preventDefault();if(select.visible()){select.pageDown();}else{onChange(0,true);}
break;case options.multiple&&$.trim(options.multipleSeparator)==","&&KEY.COMMA:case KEY.TAB:case KEY.RETURN:if(selectCurrent()){event.preventDefault();blockSubmit=true;return false;}
break;case KEY.ESC:select.hide();break;default:clearTimeout(timeout);timeout=setTimeout(onChange,options.delay);break;}}).focus(function(){hasFocus++;}).blur(function(){hasFocus=0;if(!config.mouseDownOnSelect){hideResults();}}).click(function(){if(hasFocus++>1&&!select.visible()){onChange(0,true);}}).bind("search",function(){var fn=(arguments.length>1)?arguments[1]:null;function findValueCallback(q,data){var result;if(data&&data.length){for(var i=0;i<data.length;i++){if(data[i].result.toLowerCase()==q.toLowerCase()){result=data[i];break;}}}
if(typeof fn=="function")fn(result);else $input.trigger("result",result&&[result.data,result.value]);}
$.each(trimWords($input.val()),function(i,value){request(value,findValueCallback,findValueCallback);});}).bind("flushCache",function(){cache.flush();}).bind("setOptions",function(){$.extend(options,arguments[1]);if("data"in arguments[1])
cache.populate();}).bind("unautocomplete",function(){select.unbind();$input.unbind();$(input.form).unbind(".autocomplete");});function selectCurrent(){var selected=select.selected();if(!selected)
return false;var v=selected.result;previousValue=v;if(options.multiple){var words=trimWords($input.val());if(words.length>1){v=words.slice(0,words.length-1).join(options.multipleSeparator)+options.multipleSeparator+v;}
v+=options.multipleSeparator;}
$input.val(v);hideResultsNow();$input.trigger("result",[selected.data,selected.value]);return true;}
function onChange(crap,skipPrevCheck){if(lastKeyPressCode==KEY.DEL){select.hide();return;}
var currentValue=$input.val();if(!skipPrevCheck&&currentValue==previousValue)
return;previousValue=currentValue;currentValue=lastWord(currentValue);if(currentValue.length>=options.minChars){$input.addClass(options.loadingClass);if(!options.matchCase)
currentValue=currentValue.toLowerCase();request(currentValue,receiveData,hideResultsNow);}else{stopLoading();select.hide();}};function trimWords(value){if(!value){return[""];}
var words=value.split(options.multipleSeparator);var result=[];$.each(words,function(i,value){if($.trim(value))
result[i]=$.trim(value);});return result;}
function lastWord(value){if(!options.multiple)
return value;var words=trimWords(value);return words[words.length-1];}
function autoFill(q,sValue){if(options.autoFill&&(lastWord($input.val()).toLowerCase()==q.toLowerCase())&&lastKeyPressCode!=KEY.BACKSPACE){$input.val($input.val()+sValue.substring(lastWord(previousValue).length));$.Autocompleter.Selection(input,previousValue.length,previousValue.length+sValue.length);}};function hideResults(){clearTimeout(timeout);timeout=setTimeout(hideResultsNow,200);};function hideResultsNow(){var wasVisible=select.visible();select.hide();clearTimeout(timeout);stopLoading();if(options.mustMatch){$input.search(function(result){if(!result){if(options.multiple){var words=trimWords($input.val()).slice(0,-1);$input.val(words.join(options.multipleSeparator)+(words.length?options.multipleSeparator:""));}
else
$input.val("");}});}
if(wasVisible)
$.Autocompleter.Selection(input,input.value.length,input.value.length);};function receiveData(q,data){if(data&&data.length&&hasFocus){stopLoading();select.display(data,q);autoFill(q,data[0].value);select.show();}else{hideResultsNow();}};function request(term,success,failure){if(!options.matchCase)
term=term.toLowerCase();var data=cache.load(term);if(data&&data.length){success(term,data);}else if((typeof options.url=="string")&&(options.url.length>0)){var extraParams={timestamp:+new Date()};$.each(options.extraParams,function(key,param){extraParams[key]=typeof param=="function"?param():param;});$.ajax({mode:"abort",port:"autocomplete"+input.name,dataType:options.dataType,url:options.url,data:$.extend({q:lastWord(term),limit:options.max},extraParams),success:function(data){var parsed=options.parse&&options.parse(data)||parse(data);cache.add(term,parsed);success(term,parsed);}});}else{select.emptyList();failure(term);}};function parse(data){var parsed=[];var rows=data.split("\n");for(var i=0;i<rows.length;i++){var row=$.trim(rows[i]);if(row){row=row.split("|");parsed[parsed.length]={data:row,value:row[0],result:options.formatResult&&options.formatResult(row,row[0])||row[0]};}}
return parsed;};function stopLoading(){$input.removeClass(options.loadingClass);};};$.Autocompleter.defaults={inputClass:"ac_input",resultsClass:"ac_results",loadingClass:"ac_loading",minChars:1,delay:400,matchCase:false,matchSubset:true,matchContains:false,cacheLength:10,max:100,mustMatch:false,extraParams:{},selectFirst:true,formatItem:function(row){return row[0];},formatMatch:null,autoFill:false,width:0,multiple:false,multipleSeparator:", ",highlight:function(value,term){return value.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)("+term.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi,"\\$1")+")(?![^<>]*>)(?![^&;]+;)","gi"),"<strong>$1</strong>");},scroll:true,scrollHeight:180};$.Autocompleter.Cache=function(options){var data={};var length=0;function matchSubset(s,sub){if(!options.matchCase)
s=s.toLowerCase();var i=s.indexOf(sub);if(options.matchContains=="word"){i=s.toLowerCase().search("\\b"+sub.toLowerCase());}
if(i==-1)return false;return i==0||options.matchContains;};function add(q,value){if(length>options.cacheLength){flush();}
if(!data[q]){length++;}
data[q]=value;}
function populate(){if(!options.data)return false;var stMatchSets={},nullData=0;if(!options.url)options.cacheLength=1;stMatchSets[""]=[];for(var i=0,ol=options.data.length;i<ol;i++){var rawValue=options.data[i];rawValue=(typeof rawValue=="string")?[rawValue]:rawValue;var value=options.formatMatch(rawValue,i+1,options.data.length);if(value===false)
continue;var firstChar=value.charAt(0).toLowerCase();if(!stMatchSets[firstChar])
stMatchSets[firstChar]=[];var row={value:value,data:rawValue,result:options.formatResult&&options.formatResult(rawValue)||value};stMatchSets[firstChar].push(row);if(nullData++<options.max){stMatchSets[""].push(row);}};$.each(stMatchSets,function(i,value){options.cacheLength++;add(i,value);});}
setTimeout(populate,25);function flush(){data={};length=0;}
return{flush:flush,add:add,populate:populate,load:function(q){if(!options.cacheLength||!length)
return null;if(!options.url&&options.matchContains){var csub=[];for(var k in data){if(k.length>0){var c=data[k];$.each(c,function(i,x){if(matchSubset(x.value,q)){csub.push(x);}});}}
return csub;}else
if(data[q]){return data[q];}else
if(options.matchSubset){for(var i=q.length-1;i>=options.minChars;i--){var c=data[q.substr(0,i)];if(c){var csub=[];$.each(c,function(i,x){if(matchSubset(x.value,q)){csub[csub.length]=x;}});return csub;}}}
return null;}};};$.Autocompleter.Select=function(options,input,select,config){var CLASSES={ACTIVE:"ac_over"};var listItems,active=-1,data,term="",needsInit=true,element,list;function init(){if(!needsInit)
return;element=$("<div/>").hide().addClass(options.resultsClass).css("position","absolute").appendTo(document.body);list=$("<ul/>").appendTo(element).mouseover(function(event){if(target(event).nodeName&&target(event).nodeName.toUpperCase()=='LI'){active=$("li",list).removeClass(CLASSES.ACTIVE).index(target(event));$(target(event)).addClass(CLASSES.ACTIVE);}}).click(function(event){$(target(event)).addClass(CLASSES.ACTIVE);select();input.focus();return false;}).mousedown(function(){config.mouseDownOnSelect=true;}).mouseup(function(){config.mouseDownOnSelect=false;});if(options.width>0)
element.css("width",options.width);needsInit=false;}
function target(event){var element=event.target;while(element&&element.tagName!="LI")
element=element.parentNode;if(!element)
return[];return element;}
function moveSelect(step){listItems.slice(active,active+1).removeClass(CLASSES.ACTIVE);movePosition(step);var activeItem=listItems.slice(active,active+1).addClass(CLASSES.ACTIVE);if(options.scroll){var offset=0;listItems.slice(0,active).each(function(){offset+=this.offsetHeight;});if((offset+activeItem[0].offsetHeight-list.scrollTop())>list[0].clientHeight){list.scrollTop(offset+activeItem[0].offsetHeight-list.innerHeight());}else if(offset<list.scrollTop()){list.scrollTop(offset);}}};function movePosition(step){active+=step;if(active<0){active=listItems.size()-1;}else if(active>=listItems.size()){active=0;}}
function limitNumberOfItems(available){return options.max&&options.max<available?options.max:available;}
function fillList(){list.empty();var max=limitNumberOfItems(data.length);for(var i=0;i<max;i++){if(!data[i])
continue;var formatted=options.formatItem(data[i].data,i+1,max,data[i].value,term);if(formatted===false)
continue;var li=$("<li/>").html(options.highlight(formatted,term)).addClass(i%2==0?"ac_even":"ac_odd").appendTo(list)[0];$.data(li,"ac_data",data[i]);}
listItems=list.find("li");if(options.selectFirst){listItems.slice(0,1).addClass(CLASSES.ACTIVE);active=0;}
if($.fn.bgiframe)
list.bgiframe();}
return{display:function(d,q){init();data=d;term=q;fillList();},next:function(){moveSelect(1);},prev:function(){moveSelect(-1);},pageUp:function(){if(active!=0&&active-8<0){moveSelect(-active);}else{moveSelect(-8);}},pageDown:function(){if(active!=listItems.size()-1&&active+8>listItems.size()){moveSelect(listItems.size()-1-active);}else{moveSelect(8);}},hide:function(){element&&element.hide();listItems&&listItems.removeClass(CLASSES.ACTIVE);active=-1;},visible:function(){return element&&element.is(":visible");},current:function(){return this.visible()&&(listItems.filter("."+CLASSES.ACTIVE)[0]||options.selectFirst&&listItems[0]);},show:function(){var offset=$(input).offset();element.css({width:typeof options.width=="string"||options.width>0?options.width:$(input).width(),top:offset.top+input.offsetHeight,left:offset.left}).show();if(options.scroll){list.scrollTop(0);list.css({maxHeight:options.scrollHeight,overflow:'auto'});if($.browser.msie&&typeof document.body.style.maxHeight==="undefined"){var listHeight=0;listItems.each(function(){listHeight+=this.offsetHeight;});var scrollbarsVisible=listHeight>options.scrollHeight;list.css('height',scrollbarsVisible?options.scrollHeight:listHeight);if(!scrollbarsVisible){listItems.width(list.width()-parseInt(listItems.css("padding-left"))-parseInt(listItems.css("padding-right")));}}}},selected:function(){var selected=listItems&&listItems.filter("."+CLASSES.ACTIVE).removeClass(CLASSES.ACTIVE);return selected&&selected.length&&$.data(selected[0],"ac_data");},emptyList:function(){list&&list.empty();},unbind:function(){element&&element.remove();}};};$.Autocompleter.Selection=function(field,start,end){if(field.createTextRange){var selRange=field.createTextRange();selRange.collapse(true);selRange.moveStart("character",start);selRange.moveEnd("character",end);selRange.select();}else if(field.setSelectionRange){field.setSelectionRange(start,end);}else{if(field.selectionStart){field.selectionStart=start;field.selectionEnd=end;}}
field.focus();};})(jQuery);(function($){$.fn.extend({categorySuggestion:function(options){var defaults={resultsClass:'autoSuggest',width:350,max:10,scroll:false,autoFill:false,highlight:false,url:DDI.contextPath+"/businesscategory/suggest/",formatItem:function(row,i,total,value,term){var matched=row[0];matched=matched.replace(new RegExp("(^"+term+")","gi"),"<strong>$1</strong>");return matched;}};var opts=$.extend(defaults,options);$(this).autocomplete(opts.url,opts);},categorySuggestionDetach:function(){$(this).unautocomplete();$("div.autoSuggest").remove().hide();}});})(jQuery);(function($){$(function(){var $input=$('#autocomplete-main');$input.categorySuggestion();$(".autoSuggest").dropdown(function(){$input.categorySuggestionDetach();});});})(jQuery);
(function($){$(document).ready(function(){var meld={contextPath:DDI.contextPath,contentUrl:"/meld/reports/get-weather-reports",meldUrl:"http://www.meld.no",profileUrl:"http://www.meld.no/Profile",locationUrl:"http://www.meld.no/location",rowCount:5,maxCommentLength:45,maxUserLocationLength:22,refreshPeriod:1000*60*2,refresh:false,start:function(options){$.extend(meld,options);meld.repaintList();if(meld.refresh){window.setInterval(meld.addNew,meld.refreshPeriod);}},repaintList:function(){$.getJSON(meld.contextPath+meld.contentUrl,{count:meld.rowCount},function(content){var list=meld._getList();for(var entryId in content){var row=content[entryId];list.append(meld._generateRow(row));}});},addNew:function(){$.getJSON(meld.contextPath+meld.contentUrl,{count:meld.rowCount},function(content){var list=meld._getList();var items=list.children();var newItems=[];for(var entryId in content){if(!meld._isExists(entryId,items)){var row=content[entryId];newItems.push(meld._generateRow(row));}}
var restItems=$("#meldWeather > li:gt("+(items.length-newItems.length-1)+")");restItems.remove();for(var i=Math.max((newItems.length-1),4);i>=0;i--){list.prepend(newItems[i]);}});},_getList:function(){if(!meld.weatherList){meld.weatherList=$("#meldWeather");}
return meld.weatherList;},_isExists:function(id,items){for(var i=0;i<items.length;i++){if(items[i].id==id){return true;}}
return false;},_generateRow:function(row){var weatherItem=$("<li>");weatherItem.attr("id",row.id);weatherItem.addClass("weatherItem");weatherItem.append(meld._generateTimeStamp(row));weatherItem.append(meld._generateImage(row));weatherItem.append(meld._generateInfo(row));weatherItem.append(meld._generateMessage(row));weatherItem.append(meld._generateIcon(row));return weatherItem;},_generateTimeStamp:function(row){var timeStamp=$("<span>");timeStamp.addClass("timeStamp");var time=(Date.parse(row.time)).toString('HH:mm');timeStamp.attr("title",time);timeStamp.append(time);return timeStamp;},_generateImage:function(row){var imageElem=$("<img>");imageElem.attr("width",32);imageElem.attr("height",32);if(row.user.avatar){imageElem.attr("src",meld.meldUrl+row.user.avatar+"_32.jpg");}else{imageElem.attr("src",meld.contextPath+"/img/meld-no/avatar_32.jpg");}
imageElem.addClass("imageHolder");return imageElem;},_generateInfo:function(row){var infoDiv=$("<div>");infoDiv.addClass("info");var span=$("<span>");span.addClass("float");span.append(meld._generateUserLink(row));if(row.location_level_1){span.append(meld._generateLocationLink(row));}else{span.append("&nbsp;(");span.append(meld._trimUserNameOrLocation(row,row.location))
span.append(")");}
span.append("&nbsp;har&nbsp;");infoDiv.append(span);infoDiv.append(meld._generateLocationMapLink(row));return infoDiv;},_getUserLocationTitleLength:function(row){return(row.user.login+row.location).length;},_trimUserNameOrLocation:function(row,userNameOrLocation){var userLocationTitleLength=meld._getUserLocationTitleLength(row);if((meld.maxUserLocationLength<userLocationTitleLength)&&(meld.maxUserLocationLength/2<userNameOrLocation.length)){userNameOrLocation=userNameOrLocation.substr(0,meld.maxUserLocationLength/2-3)+"...";}
return userNameOrLocation;},_generateUserLink:function(row){var userLink=$("<a>");userLink.addClass("userLink");userLink.attr("href",meld.profileUrl+"/"+row.user.login);userLink.attr("title",row.user.login);var innerSpan=$("<span>");innerSpan.addClass("userlogin");innerSpan.attr("title",row.user.login);innerSpan.append(meld._trimUserNameOrLocation(row,row.user.login));userLink.append(innerSpan);return userLink;},_getLocationLink:function(row){var locationLink=meld.locationUrl;if(row.location_level_0){locationLink+="/"+row.location_level_0;}
if(row.location_level_1){locationLink+="/"+row.location_level_1;}
return locationLink;},_generateLocationLink:function(row){var span=$("<span>");span.addClass("locationLink");var location=row.location;span.attr("title",location);var link=$("<a>");link.attr("href",meld._getLocationLink(row));link.append(meld._trimUserNameOrLocation(row,location));span.append("&nbsp;(");span.append(link);span.append(")");return span;},_generateLocationMapLink:function(row){var link=$("<a>");link.addClass("locationMapLink");link.attr("href","#");var iconSpan=$("<span>");iconSpan.addClass("wicon");iconSpan.addClass("wicon"+row.icon);iconSpan.attr("title","");var tempSpan=$("<span>");tempSpan.addClass("temperature");tempSpan.append(row.temp);link.append(iconSpan);link.append(tempSpan);return link;},_generateMessage:function(row){var messageDiv=$("<div>");messageDiv.addClass("messages");var link=$("<a>");link.attr("href",meld.profileUrl+"/"+row.user.login+"/report/"+row.id);var text=row.text;link.attr("title",text);var trimmedText;if(text&&text.length>meld.maxCommentLength){trimmedText=text.substring(0,meld.maxCommentLength-3)+"...";}else{trimmedText=text;}
link.append(trimmedText);messageDiv.append(link);return messageDiv;},_generateIcon:function(row){var iconDiv=$("<div>");iconDiv.addClass("icons");var link=$("<a>");link.attr("href",meld.profileUrl+"/"+row.user.login+"/report/"+row.user.uid);var span=$("<span>");if(row.commentcount>0){iconDiv.addClass("imgmargin");span.append("kommentarer");link.append(row.commentcount);link.addClass("has-comments");link.attr("title","les kommentarene");}else{link.addClass("no-comments");span.append("Ingen kommentarer");link.attr("title","skriv den f\u00F8rste kommentaren");}
link.append(span);iconDiv.append(link);return iconDiv;}};DDI.Meld={};$.extend(DDI.Meld,meld);});})(jQuery);
(function(){function init(){$j('#whatsOnModuleAddActivity.signinDialog').dialogAjaxify();}
if($j.browser.msie){$j(window).load(init);}else{$j(document).ready(init);}})();
(function($){DDI.Carousel=function(){this._currentIndex=0;this._timer=undefined;this._timerDisabled=false;this._slidesNumber=0;};DDI.Carousel.prototype={options:{componentAreaSelector:".carousel",selectedClass:"selected",indexedNavsSelector:".carousel .nav .bullets a",nextNavSelector:".carousel .nav .next",previousNavSelector:".carousel .nav .previous",slideBodysSelector:".carousel .slide-body",timeout:5000,firstIndex:0,getNextSlide:function(currentIndex,totalNumber){return(currentIndex+1)%totalNumber;},getPreviousSlide:function(currentIndex,totalNumber){return currentIndex==0?totalNumber-1:currentIndex-1;},selectNavItem:function(navItem){navItem.addClass(this.selectedClass);},deselectNavItem:function(navItem){navItem.removeClass(this.selectedClass);},handleSelectorClick:function(index){return DDI.Carousel.prototype.defaultSelectorClickHandler.apply(this,[index]);}},_switchSlideToNext:function(){this._switchSlideTo(this.options.getNextSlide(this._currentIndex,this._slidesNumber));},_switchSlideToPrevious:function(){this._switchSlideTo(this.options.getPreviousSlide(this._currentIndex,this._slidesNumber));},_pauseTimer:function(){if(this._timer){clearTimeout(this._timer);}},_resumeTimer:function(){if(!this._timerDisabled){var _this=this;var switchCompany=function(){_this._switchSlideToNext();};this._timer=setTimeout(switchCompany,this.options.timeout);}},_stopTimer:function(){this._pauseTimer();this._timerDisabled=true;},_startTimer:function(){this._timerDisabled=false;this._resumeTimer();},_switchSlideTo:function(newIndex){this._pauseTimer();this._hideSlide(this._currentIndex);this._currentIndex=newIndex;this._showSlide(this._currentIndex);this._resumeTimer();},_hideSlide:function(index){$(this.options.slideBodysSelector).eq(index).hide();this.options.deselectNavItem&&this.options.deselectNavItem($(this.options.indexedNavsSelector).eq(index));},_showSlide:function(index){var slideBody=$(this.options.slideBodysSelector).eq(index);var slideIndexNav=$(this.options.indexedNavsSelector).eq(index);if(slideBody.is(":empty")){this._loadSlideContent(index);}else{this._doShowSlide(index);}
this.options.selectNavItem&&this.options.selectNavItem(slideIndexNav);},_doShowSlide:function(index){var slideBody=$(this.options.slideBodysSelector).eq(index);slideBody.show();$(document.body).trigger("carouselSlideShown",slideBody);},_loadSlideContent:function(index){var _this=this;var slideBody=$(this.options.slideBodysSelector).eq(index);var slideIndexNav=$(this.options.indexedNavsSelector).eq(index);var link=slideIndexNav.find("a");if(link.length){var url=link.attr("href");jQuery.ajax({url:url,type:'GET',data:{format:'fragment'},dataType:'html',success:function(content){slideBody.html(content);_this._doShowSlide(index);}});}},defaultSelectorClickHandler:function(index){this._switchSlideTo(index);this._stopTimer();return false;},init:function(options){var _this=this;$.extend(this.options,options);this._slidesNumber=$(this.options.slideBodysSelector).length;this._currentIndex=this.options.firstIndex;this._showSlide(this._currentIndex);$(this.options.indexedNavsSelector).each(function(index){$(this).click(function(){return _this.options.handleSelectorClick.apply(_this,[index]);});});if(this.options.previousNavSelector){$(this.options.previousNavSelector).click(function(){_this._switchSlideToPrevious();_this._stopTimer();return false;});}
if(this.options.nextNavSelector){$(this.options.nextNavSelector).click(function(){_this._switchSlideToNext();_this._stopTimer();return false;});}
if(this.options.componentAreaSelector){$(this.options.componentAreaSelector).hover(function(){_this._pauseTimer();},function(){_this._resumeTimer();});}
this._startTimer();}};})(jQuery);DDI.DDIBox={init:function(autoSwitchableIndexes){var carousel=new DDI.Carousel();carousel.init({componentAreaSelector:"#block-ddi-box .ddiBox",selectedClass:"selected",indexedNavsSelector:"#block-ddi-box .ddiBox .tabs li",nextNavSelector:null,previousNavSelector:null,slideBodysSelector:"#block-ddi-box .ddiBox .tabContent",timeout:20000,firstIndex:autoSwitchableIndexes&&autoSwitchableIndexes.length>0?autoSwitchableIndexes[0]:0,autoSwitchableIndexes:autoSwitchableIndexes?autoSwitchableIndexes:[0],getNextSlide:function(currentIndex){for(var i=0;i<this.autoSwitchableIndexes.length;i++){if(this.autoSwitchableIndexes[i]>currentIndex){return this.autoSwitchableIndexes[i];}}
return this.autoSwitchableIndexes[0];},handleSelectorClick:function(index){if(carousel._currentIndex==index){return true;}else{return DDI.Carousel.prototype.defaultSelectorClickHandler.apply(this,[index]);}}});}};
(function($){DDI.LocalPictures={initImageSlider:function(portletId,municipalityName){var ajaxStatus={lastSelectedPictureId:undefined,isLoadingNow:false};function unblock(){$('#image-result-'+portletId+'-wrapper').unblock({onUnblock:function(el){$(el).css('position','');ajaxStatus.isLoadingNow=false;processLoading();}});}
function processLoading(){if(!ajaxStatus.isLoadingNow&&ajaxStatus.lastSelectedPictureId){var id=ajaxStatus.lastSelectedPictureId;ajaxStatus.lastSelectedPictureId=undefined;ajaxStatus.isLoadingNow=true;$('#image-result-'+portletId+'-wrapper').block();$('#image-result-'+portletId+'').load(DDI.contextPath+'/portlet/result/localpics/?pictureId='+id+'&portletId='+portletId+'',function(){$('#image-result-'+portletId+'-wrapper').unblock();$('#image-result-'+portletId+'-wrapper').block();var image=new Image();$(image).load(function(){$(this).css('display','none');$('div.picture a','#image-result-'+portletId+'').empty().append(this);$(this).fadeIn(unblock);}).error(unblock).attr('src',DDI.contextPath+'/localpics/small/'+id+'/');});}}
var options={initialSize:16,threshold:3,initialOffset:0,onImageClick:function(){ajaxStatus.lastSelectedPictureId=this.asset.id;processLoading();},onEmptyContent:function(){$('#localPicturesContent-'+portletId+'').prepend('<div class="modMsg">'+i18n.local_pictures.no_images(municipalityName)+'</div>');$('#localPicturesContent-'+portletId+'').unblock({onUnblock:function(){$('#localPicturesContent-'+portletId+'').css('position','');}});if($('#image-slider-'+portletId+'').imageslider('isEmpty')){$('#image-result-'+portletId+'-wrapper').remove();$('#more-'+portletId+'').remove();$('#image-slider-'+portletId+'').hide();}},getOffset:function(current){return-1*($('div.scroll','#image-slider-'+portletId+'').outerWidth()-(current.width()-parseInt($('img',current).css('marginRight'))))/2;},onBeforeShow:function(){$('#localPicturesContent-'+portletId+'').unblock({onUnblock:function(){$('#localPicturesContent-'+portletId+'').css('position','');}});$('#image-result-'+portletId+'-wrapper').show();}};$('#localPicturesContent-'+portletId+'').block();return $('#image-slider-'+portletId+'').imageslider(options);}};})(jQuery);
(function($){var truncateNicely={htmlSinglets:['br','col','link','base','img','param','area','hr','input'],tagRe:new RegExp("<(/)?([^ ]+?)(?: (/)| .*?)?>"),searchRe:new RegExp("&.*?;|<.*?>|."),truncateLines:function(element,lines){var $element=$(element);if(!$element.is(":visible")||$element.data("truncated")){return;}
var height=this.suggestLinesHeight($element,lines);var text=$element.html();$element.html('');$element.html(this.truncate({element:$element,text:text,height:height}));$element.data("truncated",true);},suggestLinesHeight:function($element,lines){var $clone=$element.clone().empty();$clone.insertBefore($element);$element.remove();for(var i=0;i<lines;i++){$clone.append('W<br/>');}
var maxHeight=this.elementHeight($clone[0]);$element.insertBefore($clone);$clone.remove();return maxHeight;},elementHeight:function(element){return element.scrollHeight>0?element.scrollHeight:element.offsetHeight;},truncate:function(options){options=$.extend({},options);var $element=$(options.element);var $container=$element.clone().css({visibility:'hidden'}).empty().appendTo($element.parent());var container=$container.get(0);if(this.elementHeight(container)>=options.height){options.height=this.elementHeight(container);}
this.stack=['',''];this.processLines(container,options);$container.remove();return this.stack[0];},processLines:function(container,options){this.cutSymbols=0;this.openTags=[];while(this.elementHeight(container)<=options.height){this.stack.shift();var m=this.searchRe.exec(options.text.substring(this.cutSymbols));if(!m){break;}
var matchedString=m[0];if(matchedString.length>1){if(matchedString[0]=='<'){this.processTag(matchedString,options.tagName);}}
this.cutSymbols+=matchedString.length;var truncatedString=this.getTruncatedString(options.text);$(container).html(truncatedString);this.stack.push(truncatedString);}},processTag:function(matchedString,tagName){var tagInfo=this.tagRe.exec(matchedString),tag={name:tagInfo[2],isClosing:tagInfo[1],selfClosing:tagInfo[3]};if(!tag.selfClosing&&(jQuery.inArray(tag.name,this.htmlSinglets)==-1)){if(tag.isClosing){var tagIndex=jQuery.inArray(tagName,this.openTags);if(tagIndex!=-1){this.openTags=this.openTags.slice(tagIndex+1);}}else{this.openTags.unshift(tagName);}}},getTruncatedString:function(text){if(this.cutSymbols<text.length){var interimString=text.substring(0,this.cutSymbols)+'&hellip;';for(var i=0;i<this.openTags.length;i++){interimString+='</'+this.openTags[i]+'>';}}else{interimString=text;}
return interimString;}};$.fn.truncateNicely=function(nLines){return this.each(function(){truncateNicely.truncateLines(this,nLines);});};})(jQuery);(function($){var init=function(){var initTruncation=function(target){$(".truncate-1",target).truncateNicely(1);$(".truncate-2",target).truncateNicely(2);$(".truncate-3",target).truncateNicely(3);};initTruncation($(document.body));$(document.body).bind("carouselSlideShown",function(event,target){initTruncation(target);});};if($.browser.msie){$(window).load(init);}else{$(document).ready(init);}})(jQuery);
