if(dwr==null){var dwr={}
}if(dwr.engine==null){dwr.engine={}
}if(DWREngine==null){var DWREngine=dwr.engine
}if(JAMLiteAPI==null){var JAMLiteAPI={}
}JAMLiteAPI._path=window.location.pathname.match(/\/[^\/]*\//i)+"dwr";
JAMLiteAPI.initApplication=function(D,B,A,C){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","initApplication",D,B,A,C)
};
JAMLiteAPI.updateFeature=function(C,A,B){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","updateFeature",C,A,B)
};
JAMLiteAPI.removeTemporaryItem=function(C,A,B){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","removeTemporaryItem",C,A,B)
};
JAMLiteAPI.getFeatureById=function(E,C,B,A,D){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","getFeatureById",E,C,B,A,D)
};
JAMLiteAPI.addTemporaryItem=function(C,A,B){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","addTemporaryItem",C,A,B)
};
JAMLiteAPI.getTemporaryItem=function(C,A,B){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","getTemporaryItem",C,A,B)
};
JAMLiteAPI.getArea=function(B,A){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","getArea",B,A)
};
JAMLiteAPI.getViewSetCategories=function(C,A,B){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","getViewSetCategories",C,A,B)
};
JAMLiteAPI.getSearchCase=function(A){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","getSearchCase",A)
};
JAMLiteAPI.batchInit1=function(B,A){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","batchInit1",B,A)
};
JAMLiteAPI.batchInit2=function(E,C,B,A,D){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","batchInit2",E,C,B,A,D)
};
JAMLiteAPI.batchInit3=function(A){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","batchInit3",A)
};
JAMLiteAPI.getServiceMetadata=function(A){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","getServiceMetadata",A)
};
JAMLiteAPI.getViewSetTree=function(A){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","getViewSetTree",A)
};
JAMLiteAPI.getOuterPeriodLayers=function(A){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","getOuterPeriodLayers",A)
};
JAMLiteAPI.getTimeFeatureLayers=function(A){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","getTimeFeatureLayers",A)
};
JAMLiteAPI.getThematicVectorFeature=function(C,A,B){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","getThematicVectorFeature",C,A,B)
};
JAMLiteAPI.getThematicVectorFeatureWithCondition=function(E,C,B,A,D){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","getThematicVectorFeatureWithCondition",E,C,B,A,D)
};
JAMLiteAPI.getFeatureByPoint=function(F,D,C,B,A,E){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","getFeatureByPoint",F,D,C,B,A,E)
};
JAMLiteAPI.getCodeCategory=function(B,A){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","getCodeCategory",B,A)
};
JAMLiteAPI.notifyLayerState=function(B,A){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","notifyLayerState",B,A)
};
JAMLiteAPI.setHighlightFeature=function(D,B,A,C){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","setHighlightFeature",D,B,A,C)
};
JAMLiteAPI.clearHighlightFeature=function(A){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","clearHighlightFeature",A)
};
JAMLiteAPI.searchInstance=function(E,C,B,A,D){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","searchInstance",E,C,B,A,D)
};
JAMLiteAPI.searchChildInstance=function(F,D,C,B,A,E){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","searchChildInstance",F,D,C,B,A,E)
};
JAMLiteAPI.deleteFeature=function(D,B,A,C){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","deleteFeature",D,B,A,C)
};
JAMLiteAPI.getLength=function(B,A){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","getLength",B,A)
};
JAMLiteAPI.getUserInfo=function(A){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","getUserInfo",A)
};
JAMLiteAPI.setTime=function(B,A){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","setTime",B,A)
};
JAMLiteAPI.saveStartState=function(C,A,B){dwr.engine._execute(JAMLiteAPI._path,"JAMLiteAPI","saveStartState",C,A,B)
};
if(dwr==null){var dwr={}
}if(dwr.engine==null){dwr.engine={}
}if(DWREngine==null){var DWREngine=dwr.engine
}dwr.engine.setErrorHandler=function(A){dwr.engine._errorHandler=A
};
dwr.engine.setWarningHandler=function(A){dwr.engine._warningHandler=A
};
dwr.engine.setTextHtmlHandler=function(A){dwr.engine._textHtmlHandler=A
};
dwr.engine.setTimeout=function(A){dwr.engine._timeout=A
};
dwr.engine.setPreHook=function(A){dwr.engine._preHook=A
};
dwr.engine.setPostHook=function(A){dwr.engine._postHook=A
};
dwr.engine.setHeaders=function(A){dwr.engine._headers=A
};
dwr.engine.setParameters=function(A){dwr.engine._parameters=A
};
dwr.engine.XMLHttpRequest=1;
dwr.engine.IFrame=2;
dwr.engine.ScriptTag=3;
dwr.engine.setRpcType=function(A){if(A!=dwr.engine.XMLHttpRequest&&A!=dwr.engine.IFrame&&A!=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=A
};
dwr.engine.setHttpMethod=function(A){if(A!="GET"&&A!="POST"){dwr.engine._handleError(null,{name:"dwr.engine.invalidHttpMethod",message:"Remoting method must be one of GET or POST"});
return 
}dwr.engine._httpMethod=A
};
dwr.engine.setOrdered=function(A){dwr.engine._ordered=A
};
dwr.engine.setAsync=function(A){dwr.engine._async=A
};
dwr.engine.setActiveReverseAjax=function(A){if(A){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.setPollType=function(A){if(A!=dwr.engine.XMLHttpRequest&&A!=dwr.engine.IFrame){dwr.engine._handleError(null,{name:"dwr.engine.invalidPollType",message:"PollType must be one of dwr.engine.XMLHttpRequest or dwr.engine.IFrame"});
return 
}dwr.engine._pollType=A
};
dwr.engine.defaultErrorHandler=function(B,A){dwr.engine._debug("Error: "+A.name+", "+A.message,true);
if(B==null||B==""){alert("A server error has occured. More information may be available in the console.")
}else{if(B.indexOf("0x80040111")!=-1){dwr.engine._debug(B)
}else{alert(B)
}}};
dwr.engine.defaultWarningHandler=function(B,A){dwr.engine._debug(B)
};
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(B){var A=dwr.engine._batch;
if(A==null){dwr.engine._handleError(null,{name:"dwr.engine.batchNotBegun",message:"No batch in progress"});
return 
}dwr.engine._batch=null;
if(A.map.callCount==0){return 
}if(B){dwr.engine._mergeBatch(A,B)
}if(dwr.engine._ordered&&dwr.engine._batchesLength!=0){dwr.engine._batchQueue[dwr.engine._batchQueue.length]=A
}else{dwr.engine._sendData(A)
}};
dwr.engine.setPollMethod=function(A){dwr.engine.setPollType(A)
};
dwr.engine.setMethod=function(A){dwr.engine.setRpcType(A)
};
dwr.engine.setVerb=function(A){dwr.engine.setHttpMethod(A)
};
dwr.engine._origScriptSessionId="F1D19225847A1FAA7F36BA3351C5C47B";
dwr.engine._sessionCookieName="JSESSIONID";
dwr.engine._allowGetForSafariButMakeForgeryEasier="false";
dwr.engine._scriptTagProtection="throw 'allowScriptTagRemoting is false.';";
dwr.engine._defaultPath=window.location.pathname.match(/\/[^\/]*\//i)+"dwr";
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._pollType=dwr.engine.XMLHttpRequest;
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(A){return A
};
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(K,B,I,H){var E=false;
if(dwr.engine._batch==null){dwr.engine.beginBatch();
E=true
}var D=dwr.engine._batch;
var G=[];
for(var C=0;
C<arguments.length-3;
C++){G[C]=arguments[C+3]
}if(D.path==null){D.path=K
}else{if(D.path!=K){dwr.engine._handleError(D,{name:"dwr.engine.multipleServlets",message:"Can't batch requests to multiple DWR Servlets."});
return 
}}var A;
var J=G[G.length-1];
if(typeof J=="function"||J==null){A={callback:G.pop()}
}else{A=G.pop()
}dwr.engine._mergeBatch(D,A);
D.handlers[D.map.callCount]={exceptionHandler:A.exceptionHandler,callback:A.callback};
var F="c"+D.map.callCount+"-";
D.map[F+"scriptName"]=B;
D.map[F+"methodName"]=I;
D.map[F+"id"]=D.map.callCount;
for(C=0;
C<G.length;
C++){dwr.engine._serializeAll(D,[],G[C],F+"param"+C)
}D.map.callCount++;
if(E){dwr.engine.endBatch()
}};
dwr.engine._poll=function(B){if(!dwr.engine._activeReverseAjax){return 
}var A=dwr.engine._createBatch();
A.map.id=0;
A.map.callCount=1;
A.isPoll=true;
if(navigator.userAgent.indexOf("Gecko/")!=-1){A.rpcType=dwr.engine._pollType;
A.map.partialResponse=dwr.engine._partialResponseYes
}else{if(document.all){A.rpcType=dwr.engine.IFrame;
A.map.partialResponse=dwr.engine._partialResponseFlush
}else{A.rpcType=dwr.engine._pollType;
A.map.partialResponse=dwr.engine._partialResponseNo
}}A.httpMethod="POST";
A.async=true;
A.timeout=0;
A.path=(B)?B:dwr.engine._defaultPath;
A.preHooks=[];
A.postHooks=[];
A.errorHandler=dwr.engine._pollErrorHandler;
A.warningHandler=dwr.engine._pollErrorHandler;
A.handlers[0]={callback:function(C){dwr.engine._pollRetries=0;
setTimeout("dwr.engine._poll()",C)
}};
dwr.engine._sendData(A);
if(A.rpcType==dwr.engine.XMLHttpRequest){dwr.engine._checkCometPoll()
}};
dwr.engine._pollErrorHandler=function(B,A){dwr.engine._pollRetries++;
dwr.engine._debug("Reverse Ajax poll failed (pollRetries="+dwr.engine._pollRetries+"): "+A.name+" : "+A.message);
if(dwr.engine._pollRetries<dwr.engine._maxPollRetries){setTimeout("dwr.engine._poll()",10000)
}else{dwr.engine._debug("Giving up.")
}};
dwr.engine._createBatch=function(){var A={map:{callCount:0,page:window.location.pathname+window.location.search,httpSessionId:dwr.engine._getJSessionId(),scriptSessionId:dwr.engine._getScriptSessionId()},charsProcessed:0,paramCount:0,headers:[],parameters:[],isPoll:false,headers:{},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){A.preHooks.push(dwr.engine._preHook)
}if(dwr.engine._postHook){A.postHooks.push(dwr.engine._postHook)
}var C,B;
if(dwr.engine._headers){for(C in dwr.engine._headers){B=dwr.engine._headers[C];
if(typeof B!="function"){A.headers[C]=B
}}}if(dwr.engine._parameters){for(C in dwr.engine._parameters){B=dwr.engine._parameters[C];
if(typeof B!="function"){A.parameters[C]=B
}}}return A
};
dwr.engine._mergeBatch=function(A,D){var E,C;
for(var B=0;
B<dwr.engine._propnames.length;
B++){E=dwr.engine._propnames[B];
if(D[E]!=null){A[E]=D[E]
}}if(D.preHook!=null){A.preHooks.unshift(D.preHook)
}if(D.postHook!=null){A.postHooks.push(D.postHook)
}if(D.headers){for(E in D.headers){C=D.headers[E];
if(typeof C!="function"){A.headers[E]=C
}}}if(D.parameters){for(E in D.parameters){C=D.parameters[E];
if(typeof C!="function"){A.map["p-"+E]=""+C
}}}};
dwr.engine._getJSessionId=function(){var C=document.cookie.split(";");
for(var B=0;
B<C.length;
B++){var A=C[B];
while(A.charAt(0)==" "){A=A.substring(1,A.length)
}if(A.indexOf(dwr.engine._sessionCookieName+"=")==0){return A.substring(11,A.length)
}}return""
};
dwr.engine._checkCometPoll=function(){for(var B=0;
B<dwr.engine._outstandingIFrames.length;
B++){var E="";
var C=dwr.engine._outstandingIFrames[B];
try{E=dwr.engine._getTextFromCometIFrame(C)
}catch(A){dwr.engine._handleWarning(C.batch,A)
}if(E!=""){dwr.engine._processCometResponse(E,C.batch)
}}if(dwr.engine._pollReq){var D=dwr.engine._pollReq;
var E=D.responseText;
dwr.engine._processCometResponse(E,D.batch)
}if(dwr.engine._outstandingIFrames.length>0||dwr.engine._pollReq){setTimeout("dwr.engine._checkCometPoll()",dwr.engine._pollCometInterval)
}};
dwr.engine._getTextFromCometIFrame=function(B){var A=B.contentWindow.document.body;
if(A==null){return""
}var C=A.innerHTML;
if(C.indexOf("<PRE>")==0||C.indexOf("<pre>")==0){C=C.substring(5,C.length-7)
}return C
};
dwr.engine._processCometResponse=function(D,E){if(E.charsProcessed==D.length){return 
}if(D.length==0){E.charsProcessed=0;
return 
}var B=D.indexOf("//#DWR-START#",E.charsProcessed);
if(B==-1){E.charsProcessed=D.length;
return 
}var A=D.lastIndexOf("//#DWR-END#");
if(A==-1){return 
}if(D.charCodeAt(A+11)==13&&D.charCodeAt(A+12)==10){E.charsProcessed=A+13
}else{E.charsProcessed=A+11
}var C=D.substring(B+13,A);
dwr.engine._receivedBatch=E;
dwr.engine._eval(C);
dwr.engine._receivedBatch=null
};
dwr.engine._sendData=function(E){E.map.batchId=dwr.engine._nextBatchId++;
dwr.engine._batches[E.map.batchId]=E;
dwr.engine._batchesLength++;
E.completed=false;
for(var D=0;
D<E.preHooks.length;
D++){E.preHooks[D]()
}E.preHooks=null;
if(E.timeout&&E.timeout!=0){E.interval=setInterval(function(){dwr.engine._abortRequest(E)
},E.timeout)
}if(E.rpcType==dwr.engine.XMLHttpRequest){if(window.XMLHttpRequest){E.req=new XMLHttpRequest()
}else{if(window.ActiveXObject&&!(navigator.userAgent.indexOf("Mac")>=0&&navigator.userAgent.indexOf("MSIE")>=0)){E.req=dwr.engine._newActiveXObject(dwr.engine._XMLHTTP)
}}}var A,C;
if(E.req){if(E.async){E.req.onreadystatechange=function(){dwr.engine._stateChange(E)
}
}if(E.isPoll){dwr.engine._pollReq=E.req;
E.req.batch=E
}var B=navigator.userAgent.indexOf("Safari/");
if(B>=0){var G=navigator.userAgent.substring(B+7);
if(parseInt(G,10)<400){if(dwr.engine._allowGetForSafariButMakeForgeryEasier=="true"){E.httpMethod="GET"
}else{dwr.engine._handleWarning(E,{name:"dwr.engine.oldSafari",message:"Safari GET support disabled. See getahead.org/dwr/server/servlet and allowGetForSafariButMakeForgeryEasier."})
}}}E.mode=E.isPoll?dwr.engine._ModePlainPoll:dwr.engine._ModePlainCall;
C=dwr.engine._constructRequest(E);
try{E.req.open(E.httpMethod,C.url,E.async);
try{for(A in E.headers){var I=E.headers[A];
if(typeof I=="string"){E.req.setRequestHeader(A,I)
}}if(!E.headers["Content-Type"]){E.req.setRequestHeader("Content-Type","text/plain")
}}catch(H){dwr.engine._handleWarning(E,H)
}E.req.send(C.body);
if(!E.async){dwr.engine._stateChange(E)
}}catch(H){dwr.engine._handleError(E,H)
}}else{if(E.rpcType!=dwr.engine.ScriptTag){var F=E.isPoll?"dwr-if-poll-"+E.map.batchId:"dwr-if-"+E.map["c0-id"];
E.div=document.createElement("div");
E.div.innerHTML="<iframe src='javascript:void(0)' frameborder='0' style='width:0px;height:0px;border:0;' id='"+F+"' name='"+F+"'></iframe>";
document.body.appendChild(E.div);
E.iframe=document.getElementById(F);
E.iframe.batch=E;
E.mode=E.isPoll?dwr.engine._ModeHtmlPoll:dwr.engine._ModeHtmlCall;
if(E.isPoll){dwr.engine._outstandingIFrames.push(E.iframe)
}C=dwr.engine._constructRequest(E);
if(E.httpMethod=="GET"){E.iframe.setAttribute("src",C.url)
}else{E.form=document.createElement("form");
E.form.setAttribute("id","dwr-form");
E.form.setAttribute("action",C.url);
E.form.setAttribute("target",F);
E.form.target=F;
E.form.setAttribute("method",E.httpMethod);
for(A in E.map){var I=E.map[A];
if(typeof I!="function"){var J=document.createElement("input");
J.setAttribute("type","hidden");
J.setAttribute("name",A);
J.setAttribute("value",I);
E.form.appendChild(J)
}}document.body.appendChild(E.form);
E.form.submit()
}}else{E.httpMethod="GET";
E.mode=E.isPoll?dwr.engine._ModePlainPoll:dwr.engine._ModePlainCall;
C=dwr.engine._constructRequest(E);
E.script=document.createElement("script");
E.script.id="dwr-st-"+E.map["c0-id"];
E.script.src=C.url;
document.body.appendChild(E.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(A){var B={url:A.path+A.mode,body:null};
if(A.isPoll==true){B.url+="ReverseAjax.dwr"
}else{if(A.map.callCount==1){B.url+=A.map["c0-scriptName"]+"."+A.map["c0-methodName"]+".dwr"
}else{B.url+="Multiple."+A.map.callCount+".dwr"
}}var D=location.href.match(/jsessionid=([^?]+)/);
if(D!=null){B.url+=";jsessionid="+D[1]
}var C;
if(A.httpMethod=="GET"){A.map.callCount=""+A.map.callCount;
B.url+="?";
for(C in A.map){if(typeof A.map[C]!="function"){B.url+=encodeURIComponent(C)+"="+encodeURIComponent(A.map[C])+"&"
}}B.url=B.url.substring(0,B.url.length-1)
}else{B.body="";
for(C in A.map){if(typeof A.map[C]!="function"){B.body+=C+"="+A.map[C]+dwr.engine._postSeperator
}}B.body=dwr.engine._contentRewriteHandler(B.body)
}B.url=dwr.engine._urlRewriteHandler(B.url);
return B
};
dwr.engine._stateChange=function(C){var B;
if(C.completed){dwr.engine._debug("Error: _stateChange() with batch.completed");
return 
}var F=C.req;
try{if(F.readyState!=4){return 
}}catch(D){dwr.engine._handleWarning(C,D);
dwr.engine._clearUp(C);
return 
}try{var E=F.responseText;
E=dwr.engine._replyRewriteHandler(E);
var A=F.status;
if(E==null||E==""){dwr.engine._handleWarning(C,{name:"dwr.engine.missingData",message:"No data received from server"})
}else{if(A!=200){dwr.engine._handleError(C,{name:"dwr.engine.http."+A,message:F.statusText})
}else{var G=F.getResponseHeader("Content-Type");
if(!G.match(/^text\/plain/)&&!G.match(/^text\/javascript/)){if(G.match(/^text\/html/)&&typeof C.textHtmlHandler=="function"){C.textHtmlHandler()
}else{dwr.engine._handleWarning(C,{name:"dwr.engine.invalidMimeType",message:"Invalid content type: '"+G+"'"})
}}else{if(C.isPoll&&C.map.partialResponse==dwr.engine._partialResponseYes){dwr.engine._processCometResponse(E,C)
}else{if(E.search("//#DWR")==-1){dwr.engine._handleWarning(C,{name:"dwr.engine.invalidReply",message:"Invalid reply from server"})
}else{B=E
}}}}}}catch(D){dwr.engine._handleWarning(C,D)
}dwr.engine._callPostHooks(C);
dwr.engine._receivedBatch=C;
if(B!=null){B=B.replace(dwr.engine._scriptTagProtection,"")
}dwr.engine._eval(B);
dwr.engine._receivedBatch=null;
dwr.engine._clearUp(C)
};
dwr.engine._remoteHandleCallback=function(A,F,E){var C=dwr.engine._batches[A];
if(C==null){dwr.engine._debug("Warning: batch == null in remoteHandleCallback for batchId="+A,true);
return 
}try{var B=C.handlers[F];
if(!B){dwr.engine._debug("Warning: Missing handlers. callId="+F,true)
}else{if(typeof B.callback=="function"){B.callback(E)
}}}catch(D){dwr.engine._handleError(C,D)
}};
dwr.engine._remoteHandleException=function(A,E,D){var C=dwr.engine._batches[A];
if(C==null){dwr.engine._debug("Warning: null batch in remoteHandleException",true);
return 
}var B=C.handlers[E];
if(B==null){dwr.engine._debug("Warning: null handlers in remoteHandleException",true);
return 
}if(D.message==undefined){D.message=""
}if(typeof B.exceptionHandler=="function"){B.exceptionHandler(D.message,D)
}else{if(typeof C.errorHandler=="function"){C.errorHandler(D.message,D)
}}};
dwr.engine._remoteHandleBatchException=function(C,A){var B=(dwr.engine._receivedBatch==null&&A!=null);
if(B){dwr.engine._receivedBatch=dwr.engine._batches[A]
}if(C.message==undefined){C.message=""
}dwr.engine._handleError(dwr.engine._receivedBatch,C);
if(B){dwr.engine._receivedBatch=null;
dwr.engine._clearUp(dwr.engine._batches[A])
}};
dwr.engine._remotePollCometDisabled=function(C,A){dwr.engine.setActiveReverseAjax(false);
var B=(dwr.engine._receivedBatch==null&&A!=null);
if(B){dwr.engine._receivedBatch=dwr.engine._batches[A]
}if(C.message==undefined){C.message=""
}dwr.engine._handleError(dwr.engine._receivedBatch,C);
if(B){dwr.engine._receivedBatch=null;
dwr.engine._clearUp(dwr.engine._batches[A])
}};
dwr.engine._remoteBeginIFrameResponse=function(B,A){if(B!=null){dwr.engine._receivedBatch=B.batch
}dwr.engine._callPostHooks(dwr.engine._receivedBatch)
};
dwr.engine._remoteEndIFrameResponse=function(A){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(A){if(A&&!A.completed){clearInterval(A.interval);
dwr.engine._clearUp(A);
if(A.req){A.req.abort()
}dwr.engine._handleError(A,{name:"dwr.engine.timeout",message:"Timeout"})
}};
dwr.engine._callPostHooks=function(A){if(A.postHooks){for(var B=0;
B<A.postHooks.length;
B++){A.postHooks[B]()
}A.postHooks=null
}};
dwr.engine._clearUp=function(B){if(!B){dwr.engine._debug("Warning: null batch in dwr.engine._clearUp()",true);
return 
}if(B.completed=="true"){dwr.engine._debug("Warning: Double complete",true);
return 
}if(B.div){B.div.parentNode.removeChild(B.div)
}if(B.iframe){for(var C=0;
C<dwr.engine._outstandingIFrames.length;
C++){if(dwr.engine._outstandingIFrames[C]==B.iframe){dwr.engine._outstandingIFrames.splice(C,1)
}}B.iframe.parentNode.removeChild(B.iframe)
}if(B.form){B.form.parentNode.removeChild(B.form)
}if(B.req){if(B.req==dwr.engine._pollReq){dwr.engine._pollReq=null
}delete B.req
}if(B.map&&B.map.batchId){delete dwr.engine._batches[B.map.batchId];
dwr.engine._batchesLength--
}B.completed=true;
if(dwr.engine._batchQueue.length!=0){var A=dwr.engine._batchQueue.shift();
dwr.engine._sendData(A)
}};
dwr.engine._handleError=function(A,B){if(typeof B=="string"){B={name:"unknown",message:B}
}if(B.message==null){B.message=""
}if(B.name==null){B.name="unknown"
}if(A&&typeof A.errorHandler=="function"){A.errorHandler(B.message,B)
}else{if(dwr.engine._errorHandler){dwr.engine._errorHandler(B.message,B)
}}dwr.engine._clearUp(A)
};
dwr.engine._handleWarning=function(A,B){if(typeof B=="string"){B={name:"unknown",message:B}
}if(B.message==null){B.message=""
}if(B.name==null){B.name="unknown"
}if(A&&typeof A.warningHandler=="function"){A.warningHandler(B.message,B)
}else{if(dwr.engine._warningHandler){dwr.engine._warningHandler(B.message,B)
}}dwr.engine._clearUp(A)
};
dwr.engine._serializeAll=function(B,D,C,A){if(C==null){B.map[A]="null:null";
return 
}switch(typeof C){case"boolean":B.map[A]="boolean:"+C;
break;
case"number":B.map[A]="number:"+C;
break;
case"string":B.map[A]="string:"+encodeURIComponent(C);
break;
case"object":if(C instanceof String){B.map[A]="String:"+encodeURIComponent(C)
}else{if(C instanceof Boolean){B.map[A]="Boolean:"+C
}else{if(C instanceof Number){B.map[A]="Number:"+C
}else{if(C instanceof Date){B.map[A]="Date:"+C.getTime()
}else{if(C&&C.join){B.map[A]=dwr.engine._serializeArray(B,D,C,A)
}else{B.map[A]=dwr.engine._serializeObject(B,D,C,A)
}}}}}break;
case"function":break;
default:dwr.engine._handleWarning(null,{name:"dwr.engine.unexpectedType",message:"Unexpected type: "+typeof C+", attempting default converter."});
B.map[A]="default:"+C;
break
}};
dwr.engine._lookup=function(E,C,A){var D;
for(var B=0;
B<E.length;
B++){if(E[B].data==C){D=E[B];
break
}}if(D){return"reference:"+D.name
}E.push({data:C,name:A});
return null
};
dwr.engine._serializeObject=function(C,H,G,B){var F=dwr.engine._lookup(H,G,B);
if(F){return F
}if(G.nodeName&&G.nodeType){return dwr.engine._serializeXml(C,H,G,B)
}var E="Object_"+dwr.engine._getObjectClassName(G)+":{";
var D;
for(D in G){if(typeof G[D]!="function"){C.paramCount++;
var A="c"+dwr.engine._batch.map.callCount+"-e"+C.paramCount;
dwr.engine._serializeAll(C,H,G[D],A);
E+=encodeURIComponent(D)+":reference:"+A+", "
}}if(E.substring(E.length-2)==", "){E=E.substring(0,E.length-2)
}E+="}";
return E
};
dwr.engine._errorClasses={Error:Error,EvalError:EvalError,RangeError:RangeError,ReferenceError:ReferenceError,SyntaxError:SyntaxError,TypeError:TypeError,URIError:URIError};
dwr.engine._getObjectClassName=function(C){if(C&&C.constructor&&C.constructor.toString){var D=C.constructor.toString();
var A=D.match(/function\s+(\w+)/);
if(A&&A.length==2){return A[1]
}}if(C&&C.constructor){for(var B in dwr.engine._errorClasses){if(C.constructor==dwr.engine._errorClasses[B]){return B
}}}if(C){var D=Object.prototype.toString.call(C);
var A=D.match(/\[object\s+(\w+)/);
if(A&&A.length==2){return A[1]
}}return"Object"
};
dwr.engine._serializeXml=function(C,F,E,B){var D=dwr.engine._lookup(F,E,B);
if(D){return D
}var A;
if(window.XMLSerializer){A=new XMLSerializer().serializeToString(E)
}else{if(E.toXml){A=E.toXml
}else{A=E.innerHTML
}}return"XML:"+encodeURIComponent(A)
};
dwr.engine._serializeArray=function(C,H,G,B){var F=dwr.engine._lookup(H,G,B);
if(F){return F
}var E="Array:[";
for(var D=0;
D<G.length;
D++){if(D!=0){E+=","
}C.paramCount++;
var A="c"+dwr.engine._batch.map.callCount+"-e"+C.paramCount;
dwr.engine._serializeAll(C,H,G[D],A);
E+="reference:";
E+=A
}E+="]";
return E
};
dwr.engine._unserializeDocument=function(A){var C;
if(window.DOMParser){var E=new DOMParser();
C=E.parseFromString(A,"text/xml");
if(!C.documentElement||C.documentElement.tagName=="parsererror"){var B=C.documentElement.firstChild.data;
B+="\n"+C.documentElement.firstChild.nextSibling.firstChild.data;
throw B
}return C
}else{if(window.ActiveXObject){C=dwr.engine._newActiveXObject(dwr.engine._DOMDocument);
C.loadXML(A);
return C
}else{var D=document.createElement("div");
D.innerHTML=A;
return D
}}};
dwr.engine._newActiveXObject=function(A){var D;
for(var C=0;
C<A.length;
C++){try{D=new ActiveXObject(A[C]);
break
}catch(B){}}return D
};
dwr.engine._debug=function(F,D){var A=false;
try{if(window.console){if(D&&window.console.trace){window.console.trace()
}window.console.log(F);
A=true
}else{if(window.opera&&window.opera.postError){window.opera.postError(F);
A=true
}}}catch(C){}if(!A){var B=document.getElementById("dwr-debug");
if(B){var E=F+"<br/>"+B.innerHTML;
if(E.length>2048){E=E.substring(0,2048)
}B.innerHTML=E
}}};
function getExpDate(D,A,C){var B=new Date();
if(typeof D=="number"&&typeof A=="number"&&typeof A=="number"){B.setDate(B.getDate()+parseInt(D));
B.setHours(B.getHours()+parseInt(A));
B.setMinutes(B.getMinutes()+parseInt(C));
return B.toGMTString()
}}function getCookieVal(B){var A=document.cookie.indexOf(";",B);
if(A==-1){A=document.cookie.length
}return unescape(document.cookie.substring(B,A))
}function getCookie(D){var B=D+"=";
var F=B.length;
var A=document.cookie.length;
var E=0;
while(E<A){var C=E+F;
if(document.cookie.substring(E,C)==B){return getCookieVal(C)
}E=document.cookie.indexOf(" ",E)+1;
if(E==0){break
}}return null
}function setCookie(B,D,A,F,C,E){document.cookie=B+"="+escape(D)+((A)?"; expires="+A:"")+((F)?"; path="+F:"")+((C)?"; domain="+C:"")+((E)?"; secure":"")
}function deleteCookie(A,C,B){if(getCookie(A)){document.cookie=A+"="+((C)?"; path="+C:"")+((B)?"; domain="+B:"")+"; expires=Thu, 01-Jan-70 00:00:01 GMT"
}}var isCSS,isW3C,isIE4,isNN4;
function initDHTMLAPI(){if(document.images){isCSS=(document.body&&document.body.style)?true:false;
isW3C=(isCSS&&document.getElementById)?true:false;
isIE4=(isCSS&&document.all)?true:false;
isNN4=(document.layers)?true:false;
isIE6CSS=(document.compatMode&&document.compatMode.indexOf("CSS1")>=0)?true:false
}}window.onload=initDHTMLAPI;
function seekLayer(D,B){var A;
for(var C=0;
C<D.layers.length;
C++){if(D.layers[C].name==B){A=D.layers[C];
break
}if(D.layers[C].document.layers.length>0){A=seekLayer(document.layers[C].document,B)
}}return A
}function getRawObject(B){var A;
if(typeof B=="string"){if(isW3C){A=document.getElementById(B)
}else{if(isIE4){A=document.all(B)
}else{if(isNN4){A=seekLayer(document,B)
}}}}else{A=B
}return A
}function getObject(B){var A=getRawObject(B);
if(A&&isCSS){A=A.style
}return A
}function shiftTo(D,A,E){var C=getObject(D);
if(C){if(isCSS){var B=(typeof C.left=="string")?"px":0;
C.left=A+B;
C.top=E+B
}else{if(isNN4){C.moveTo(A,E)
}}}}function shiftBy(E,B,A){var D=getObject(E);
if(D){if(isCSS){var C=(typeof D.left=="string")?"px":0;
D.left=getObjectLeft(E)+B+C;
D.top=getObjectTop(E)+A+C
}else{if(isNN4){D.moveBy(B,A)
}}}}function setZIndex(C,B){var A=getObject(C);
if(A){A.zIndex=B
}}function setBGColor(C,B){var A=getObject(C);
if(A){if(isNN4){A.bgColor=B
}else{if(isCSS){A.backgroundColor=B
}}}}function show(B){var A=getObject(B);
if(A){A.visibility="visible"
}}function hide(B){var A=getObject(B);
if(A){A.visibility="hidden"
}}function getObjectLeft(E){var C=getRawObject(E);
var A=0;
if(document.defaultView){var B=document.defaultView;
var D=B.getComputedStyle(C,"");
A=D.getPropertyValue("left")
}else{if(C.currentStyle){A=C.currentStyle.left
}else{if(C.style){A=C.style.left
}else{if(isNN4){A=C.left
}}}}return parseInt(A)
}function getObjectTop(E){var C=getRawObject(E);
var A=0;
if(document.defaultView){var B=document.defaultView;
var D=B.getComputedStyle(C,"");
A=D.getPropertyValue("top")
}else{if(C.currentStyle){A=C.currentStyle.top
}else{if(C.style){A=C.style.top
}else{if(isNN4){A=C.top
}}}}return parseInt(A)
}function getObjectWidth(C){var B=getRawObject(C);
var A=0;
if(B.offsetWidth){A=B.offsetWidth
}else{if(B.clip&&B.clip.width){A=B.clip.width
}else{if(B.style&&B.style.pixelWidth){A=B.style.pixelWidth
}}}return parseInt(A)
}function getObjectHeight(C){var B=getRawObject(C);
var A=0;
if(B.offsetHeight){A=B.offsetHeight
}else{if(B.clip&&B.clip.height){A=B.clip.height
}else{if(B.style&&B.style.pixelHeight){A=B.style.pixelHeight
}}}return parseInt(A)
}function getInsideWindowWidth(){if(window.innerWidth){return window.innerWidth
}else{if(isIE6CSS){return document.body.parentElement.clientWidth
}else{if(document.body&&document.body.clientWidth){return document.body.clientWidth
}}}return 0
}function getInsideWindowHeight(){if(window.innerHeight){return window.innerHeight
}else{if(isIE6CSS){return document.body.parentElement.clientHeight
}else{if(document.body&&document.body.clientHeight){return document.body.clientHeight
}}}return 0
}function object2String(C){var D,A="";
if(C){A+="{";
for(var B in C){D=C[B];
switch(typeof D){case ("object"):if(D[0]){A+=B+":"+array2String(D)+","
}else{A+=B+":"+object2String(D)+","
}break;
case ("string"):A+=B+":'"+escape(D)+"',";
break;
default:A+=B+":"+D+","
}}A=A.substring(0,A.length-1)+"}"
}return A
}function array2String(C){var A="";
if(C){A+="[";
for(var B in C){val=C[B];
switch(typeof val){case ("object"):if(val[0]){A+=array2String(val)+","
}else{A+=object2String(val)+","
}break;
case ("string"):A+="'"+escape(val)+"',";
break;
default:A+=val+","
}}A=A.substring(0,A.length-1)+"]"
}return A
}function string2Object(string){eval("var result = "+string);
return result
}function string2Array(string){eval("var result = "+string);
return result
}var Prototype={Version:"1.5.1",Browser:{IE:!!(window.attachEvent&&!window.opera),Opera:!!window.opera,WebKit:navigator.userAgent.indexOf("AppleWebKit/")>-1,Gecko:navigator.userAgent.indexOf("Gecko")>-1&&navigator.userAgent.indexOf("KHTML")==-1},BrowserFeatures:{XPath:!!document.evaluate,ElementExtensions:!!window.HTMLElement,SpecificElementExtensions:(document.createElement("div").__proto__!==document.createElement("form").__proto__)},ScriptFragment:"<script[^>]*>([\u0001-\uFFFF]*?)<\/script>",JSONFilter:/^\/\*-secure-\s*(.*)\s*\*\/\s*$/,emptyFunction:function(){},K:function(A){return A
}};
var Class={create:function(){return function(){this.initialize.apply(this,arguments)
}
}};
var Abstract=new Object();
Object.extend=function(A,C){for(var B in C){A[B]=C[B]
}return A
};
Object.extend(Object,{inspect:function(A){try{if(A===undefined){return"undefined"
}if(A===null){return"null"
}return A.inspect?A.inspect():A.toString()
}catch(B){if(B instanceof RangeError){return"..."
}throw B
}},toJSON:function(A){var C=typeof A;
switch(C){case"undefined":case"function":case"unknown":return ;
case"boolean":return A.toString()
}if(A===null){return"null"
}if(A.toJSON){return A.toJSON()
}if(A.ownerDocument===document){return 
}var B=[];
for(var E in A){var D=Object.toJSON(A[E]);
if(D!==undefined){B.push(E.toJSON()+": "+D)
}}return"{"+B.join(", ")+"}"
},keys:function(A){var B=[];
for(var C in A){B.push(C)
}return B
},values:function(B){var A=[];
for(var C in B){A.push(B[C])
}return A
},clone:function(A){return Object.extend({},A)
}});
Function.prototype.bind=function(){var A=this,C=$A(arguments),B=C.shift();
return function(){return A.apply(B,C.concat($A(arguments)))
}
};
Function.prototype.bindAsEventListener=function(C){var A=this,B=$A(arguments),C=B.shift();
return function(D){return A.apply(C,[D||window.event].concat(B))
}
};
Object.extend(Number.prototype,{toColorPart:function(){return this.toPaddedString(2,16)
},succ:function(){return this+1
},times:function(A){$R(0,this,true).each(A);
return this
},toPaddedString:function(C,B){var A=this.toString(B||10);
return"0".times(C-A.length)+A
},toJSON:function(){return isFinite(this)?this.toString():"null"
}});
Date.prototype.toJSON=function(){return'"'+this.getFullYear()+"-"+(this.getMonth()+1).toPaddedString(2)+"-"+this.getDate().toPaddedString(2)+"T"+this.getHours().toPaddedString(2)+":"+this.getMinutes().toPaddedString(2)+":"+this.getSeconds().toPaddedString(2)+'"'
};
var Try={these:function(){var C;
for(var B=0,D=arguments.length;
B<D;
B++){var A=arguments[B];
try{C=A();
break
}catch(E){}}return C
}};
var PeriodicalExecuter=Class.create();
PeriodicalExecuter.prototype={initialize:function(B,A){this.callback=B;
this.frequency=A;
this.currentlyExecuting=false;
this.registerCallback()
},registerCallback:function(){this.timer=setInterval(this.onTimerEvent.bind(this),this.frequency*1000)
},stop:function(){if(!this.timer){return 
}clearInterval(this.timer);
this.timer=null
},onTimerEvent:function(){if(!this.currentlyExecuting){try{this.currentlyExecuting=true;
this.callback(this)
}finally{this.currentlyExecuting=false
}}}};
Object.extend(String,{interpret:function(A){return A==null?"":String(A)
},specialChar:{"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r","\\":"\\\\"}});
Object.extend(String.prototype,{gsub:function(E,C){var A="",D=this,B;
C=arguments.callee.prepareReplacement(C);
while(D.length>0){if(B=D.match(E)){A+=D.slice(0,B.index);
A+=String.interpret(C(B));
D=D.slice(B.index+B[0].length)
}else{A+=D,D=""
}}return A
},sub:function(C,A,B){A=this.gsub.prepareReplacement(A);
B=B===undefined?1:B;
return this.gsub(C,function(D){if(--B<0){return D[0]
}return A(D)
})
},scan:function(B,A){this.gsub(B,A);
return this
},truncate:function(B,A){B=B||30;
A=A===undefined?"...":A;
return this.length>B?this.slice(0,B-A.length)+A:this
},strip:function(){return this.replace(/^\s+/,"").replace(/\s+$/,"")
},stripTags:function(){return this.replace(/<\/?[^>]+>/gi,"")
},stripScripts:function(){return this.replace(new RegExp(Prototype.ScriptFragment,"img"),"")
},extractScripts:function(){var B=new RegExp(Prototype.ScriptFragment,"img");
var A=new RegExp(Prototype.ScriptFragment,"im");
return(this.match(B)||[]).map(function(C){return(C.match(A)||["",""])[1]
})
},evalScripts:function(){return this.extractScripts().map(function(script){return eval(script)
})
},escapeHTML:function(){var A=arguments.callee;
A.text.data=this;
return A.div.innerHTML
},unescapeHTML:function(){var A=document.createElement("div");
A.innerHTML=this.stripTags();
return A.childNodes[0]?(A.childNodes.length>1?$A(A.childNodes).inject("",function(B,C){return B+C.nodeValue
}):A.childNodes[0].nodeValue):""
},toQueryParams:function(B){var A=this.strip().match(/([^?#]*)(#.*)?$/);
if(!A){return{}
}return A[1].split(B||"&").inject({},function(E,F){if((F=F.split("="))[0]){var C=decodeURIComponent(F.shift());
var D=F.length>1?F.join("="):F[0];
if(D!=undefined){D=decodeURIComponent(D)
}if(C in E){if(E[C].constructor!=Array){E[C]=[E[C]]
}E[C].push(D)
}else{E[C]=D
}}return E
})
},toArray:function(){return this.split("")
},succ:function(){return this.slice(0,this.length-1)+String.fromCharCode(this.charCodeAt(this.length-1)+1)
},times:function(C){var A="";
for(var B=0;
B<C;
B++){A+=this
}return A
},camelize:function(){var D=this.split("-"),A=D.length;
if(A==1){return D[0]
}var C=this.charAt(0)=="-"?D[0].charAt(0).toUpperCase()+D[0].substring(1):D[0];
for(var B=1;
B<A;
B++){C+=D[B].charAt(0).toUpperCase()+D[B].substring(1)
}return C
},capitalize:function(){return this.charAt(0).toUpperCase()+this.substring(1).toLowerCase()
},underscore:function(){return this.gsub(/::/,"/").gsub(/([A-Z]+)([A-Z][a-z])/,"#{1}_#{2}").gsub(/([a-z\d])([A-Z])/,"#{1}_#{2}").gsub(/-/,"_").toLowerCase()
},dasherize:function(){return this.gsub(/_/,"-")
},inspect:function(B){var A=this.gsub(/[\x00-\x1f\\]/,function(C){var D=String.specialChar[C[0]];
return D?D:"\\u00"+C[0].charCodeAt().toPaddedString(2,16)
});
if(B){return'"'+A.replace(/"/g,'\\"')+'"'
}return"'"+A.replace(/'/g,"\\'")+"'"
},toJSON:function(){return this.inspect(true)
},unfilterJSON:function(A){return this.sub(A||Prototype.JSONFilter,"#{1}")
},evalJSON:function(sanitize){var json=this.unfilterJSON();
try{if(!sanitize||(/^("(\\.|[^"\\\n\r])*?"|[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t])+?$/.test(json))){return eval("("+json+")")
}}catch(e){}throw new SyntaxError("Badly formed JSON string: "+this.inspect())
},include:function(A){return this.indexOf(A)>-1
},startsWith:function(A){return this.indexOf(A)===0
},endsWith:function(A){var B=this.length-A.length;
return B>=0&&this.lastIndexOf(A)===B
},empty:function(){return this==""
},blank:function(){return/^\s*$/.test(this)
}});
if(Prototype.Browser.WebKit||Prototype.Browser.IE){Object.extend(String.prototype,{escapeHTML:function(){return this.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")
},unescapeHTML:function(){return this.replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">")
}})
}String.prototype.gsub.prepareReplacement=function(B){if(typeof B=="function"){return B
}var A=new Template(B);
return function(C){return A.evaluate(C)
}
};
String.prototype.parseQuery=String.prototype.toQueryParams;
Object.extend(String.prototype.escapeHTML,{div:document.createElement("div"),text:document.createTextNode("")});
with(String.prototype.escapeHTML){div.appendChild(text)
}var Template=Class.create();
Template.Pattern=/(^|.|\r|\n)(#\{(.*?)\})/;
Template.prototype={initialize:function(A,B){this.template=A.toString();
this.pattern=B||Template.Pattern
},evaluate:function(A){return this.template.gsub(this.pattern,function(B){var C=B[1];
if(C=="\\"){return B[2]
}return C+String.interpret(A[B[3]])
})
}};
var $break={},$continue=new Error('"throw $continue" is deprecated, use "return" instead');
var Enumerable={each:function(B){var A=0;
try{this._each(function(D){B(D,A++)
})
}catch(C){if(C!=$break){throw C
}}return this
},eachSlice:function(C,B){var A=-C,D=[],E=this.toArray();
while((A+=C)<E.length){D.push(E.slice(A,A+C))
}return D.map(B)
},all:function(B){var A=true;
this.each(function(D,C){A=A&&!!(B||Prototype.K)(D,C);
if(!A){throw $break
}});
return A
},any:function(B){var A=false;
this.each(function(D,C){if(A=!!(B||Prototype.K)(D,C)){throw $break
}});
return A
},collect:function(B){var A=[];
this.each(function(D,C){A.push((B||Prototype.K)(D,C))
});
return A
},detect:function(B){var A;
this.each(function(D,C){if(B(D,C)){A=D;
throw $break
}});
return A
},findAll:function(B){var A=[];
this.each(function(D,C){if(B(D,C)){A.push(D)
}});
return A
},grep:function(C,B){var A=[];
this.each(function(F,E){var D=F.toString();
if(D.match(C)){A.push((B||Prototype.K)(F,E))
}});
return A
},include:function(A){var B=false;
this.each(function(C){if(C==A){B=true;
throw $break
}});
return B
},inGroupsOf:function(B,A){A=A===undefined?null:A;
return this.eachSlice(B,function(C){while(C.length<B){C.push(A)
}return C
})
},inject:function(A,B){this.each(function(D,C){A=B(A,D,C)
});
return A
},invoke:function(B){var A=$A(arguments).slice(1);
return this.map(function(C){return C[B].apply(C,A)
})
},max:function(B){var A;
this.each(function(D,C){D=(B||Prototype.K)(D,C);
if(A==undefined||D>=A){A=D
}});
return A
},min:function(B){var A;
this.each(function(D,C){D=(B||Prototype.K)(D,C);
if(A==undefined||D<A){A=D
}});
return A
},partition:function(C){var B=[],A=[];
this.each(function(E,D){((C||Prototype.K)(E,D)?B:A).push(E)
});
return[B,A]
},pluck:function(B){var A=[];
this.each(function(D,C){A.push(D[B])
});
return A
},reject:function(B){var A=[];
this.each(function(D,C){if(!B(D,C)){A.push(D)
}});
return A
},sortBy:function(A){return this.map(function(C,B){return{value:C,criteria:A(C,B)}
}).sort(function(E,D){var C=E.criteria,B=D.criteria;
return C<B?-1:C>B?1:0
}).pluck("value")
},toArray:function(){return this.map()
},zip:function(){var B=Prototype.K,A=$A(arguments);
if(typeof A.last()=="function"){B=A.pop()
}var C=[this].concat(A).map($A);
return this.map(function(E,D){return B(C.pluck(D))
})
},size:function(){return this.toArray().length
},inspect:function(){return"#<Enumerable:"+this.toArray().inspect()+">"
}};
Object.extend(Enumerable,{map:Enumerable.collect,find:Enumerable.detect,select:Enumerable.findAll,member:Enumerable.include,entries:Enumerable.toArray});
var $A=Array.from=function(D){if(!D){return[]
}if(D.toArray){return D.toArray()
}else{var B=[];
for(var A=0,C=D.length;
A<C;
A++){B.push(D[A])
}return B
}};
if(Prototype.Browser.WebKit){$A=Array.from=function(D){if(!D){return[]
}if(!(typeof D=="function"&&D=="[object NodeList]")&&D.toArray){return D.toArray()
}else{var B=[];
for(var A=0,C=D.length;
A<C;
A++){B.push(D[A])
}return B
}}
}Object.extend(Array.prototype,Enumerable);
if(!Array.prototype._reverse){Array.prototype._reverse=Array.prototype.reverse
}Object.extend(Array.prototype,{_each:function(B){for(var A=0,C=this.length;
A<C;
A++){B(this[A])
}},clear:function(){this.length=0;
return this
},first:function(){return this[0]
},last:function(){return this[this.length-1]
},compact:function(){return this.select(function(A){return A!=null
})
},flatten:function(){return this.inject([],function(B,A){return B.concat(A&&A.constructor==Array?A.flatten():[A])
})
},without:function(){var A=$A(arguments);
return this.select(function(B){return !A.include(B)
})
},indexOf:function(A){for(var B=0,C=this.length;
B<C;
B++){if(this[B]==A){return B
}}return -1
},reverse:function(A){return(A!==false?this:this.toArray())._reverse()
},reduce:function(){return this.length>1?this:this[0]
},uniq:function(A){return this.inject([],function(D,C,B){if(0==B||(A?D.last()!=C:!D.include(C))){D.push(C)
}return D
})
},clone:function(){return[].concat(this)
},size:function(){return this.length
},inspect:function(){return"["+this.map(Object.inspect).join(", ")+"]"
},toJSON:function(){var A=[];
this.each(function(B){var C=Object.toJSON(B);
if(C!==undefined){A.push(C)
}});
return"["+A.join(", ")+"]"
}});
Array.prototype.toArray=Array.prototype.clone;
function $w(A){A=A.strip();
return A?A.split(/\s+/):[]
}if(Prototype.Browser.Opera){Array.prototype.concat=function(){var E=[];
for(var B=0,C=this.length;
B<C;
B++){E.push(this[B])
}for(var B=0,C=arguments.length;
B<C;
B++){if(arguments[B].constructor==Array){for(var A=0,D=arguments[B].length;
A<D;
A++){E.push(arguments[B][A])
}}else{E.push(arguments[B])
}}return E
}
}var Hash=function(A){if(A instanceof Hash){this.merge(A)
}else{Object.extend(this,A||{})
}};
Object.extend(Hash,{toQueryString:function(B){var A=[];
A.add=arguments.callee.addPair;
this.prototype._each.call(B,function(D){if(!D.key){return 
}var C=D.value;
if(C&&typeof C=="object"){if(C.constructor==Array){C.each(function(E){A.add(D.key,E)
})
}return 
}A.add(D.key,C)
});
return A.join("&")
},toJSON:function(A){var B=[];
this.prototype._each.call(A,function(D){var C=Object.toJSON(D.value);
if(C!==undefined){B.push(D.key.toJSON()+": "+C)
}});
return"{"+B.join(", ")+"}"
}});
Hash.toQueryString.addPair=function(A,C,B){A=encodeURIComponent(A);
if(C===undefined){this.push(A)
}else{this.push(A+"="+(C==null?"":encodeURIComponent(C)))
}};
Object.extend(Hash.prototype,Enumerable);
Object.extend(Hash.prototype,{_each:function(B){for(var A in this){var C=this[A];
if(C&&C==Hash.prototype[A]){continue
}var D=[A,C];
D.key=A;
D.value=C;
B(D)
}},keys:function(){return this.pluck("key")
},values:function(){return this.pluck("value")
},merge:function(A){return $H(A).inject(this,function(B,C){B[C.key]=C.value;
return B
})
},remove:function(){var A;
for(var B=0,C=arguments.length;
B<C;
B++){var D=this[arguments[B]];
if(D!==undefined){if(A===undefined){A=D
}else{if(A.constructor!=Array){A=[A]
}A.push(D)
}}delete this[arguments[B]]
}return A
},toQueryString:function(){return Hash.toQueryString(this)
},inspect:function(){return"#<Hash:{"+this.map(function(A){return A.map(Object.inspect).join(": ")
}).join(", ")+"}>"
},toJSON:function(){return Hash.toJSON(this)
}});
function $H(A){if(A instanceof Hash){return A
}return new Hash(A)
}if(function(){var A=0,C=function(D){this.key=D
};
C.prototype.key="foo";
for(var B in new C("bar")){A++
}return A>1
}()){Hash.prototype._each=function(C){var A=[];
for(var B in this){var D=this[B];
if((D&&D==Hash.prototype[B])||A.include(B)){continue
}A.push(B);
var E=[B,D];
E.key=B;
E.value=D;
C(E)
}}
}ObjectRange=Class.create();
Object.extend(ObjectRange.prototype,Enumerable);
Object.extend(ObjectRange.prototype,{initialize:function(C,A,B){this.start=C;
this.end=A;
this.exclusive=B
},_each:function(A){var B=this.start;
while(this.include(B)){A(B);
B=B.succ()
}},include:function(A){if(A<this.start){return false
}if(this.exclusive){return A<this.end
}return A<=this.end
}});
var $R=function(C,A,B){return new ObjectRange(C,A,B)
};
var Ajax={getTransport:function(){return Try.these(function(){return new XMLHttpRequest()
},function(){return new ActiveXObject("Msxml2.XMLHTTP")
},function(){return new ActiveXObject("Microsoft.XMLHTTP")
})||false
},activeRequestCount:0};
Ajax.Responders={responders:[],_each:function(A){this.responders._each(A)
},register:function(A){if(!this.include(A)){this.responders.push(A)
}},unregister:function(A){this.responders=this.responders.without(A)
},dispatch:function(D,B,C,A){this.each(function(E){if(typeof E[D]=="function"){try{E[D].apply(E,[B,C,A])
}catch(F){}}})
}};
Object.extend(Ajax.Responders,Enumerable);
Ajax.Responders.register({onCreate:function(){Ajax.activeRequestCount++
},onComplete:function(){Ajax.activeRequestCount--
}});
Ajax.Base=function(){};
Ajax.Base.prototype={setOptions:function(A){this.options={method:"post",asynchronous:true,contentType:"application/x-www-form-urlencoded",encoding:"UTF-8",parameters:""};
Object.extend(this.options,A||{});
this.options.method=this.options.method.toLowerCase();
if(typeof this.options.parameters=="string"){this.options.parameters=this.options.parameters.toQueryParams()
}}};
Ajax.Request=Class.create();
Ajax.Request.Events=["Uninitialized","Loading","Loaded","Interactive","Complete"];
Ajax.Request.prototype=Object.extend(new Ajax.Base(),{_complete:false,initialize:function(B,A){this.transport=Ajax.getTransport();
this.setOptions(A);
this.request(B)
},request:function(A){this.url=A;
this.method=this.options.method;
var C=Object.clone(this.options.parameters);
if(!["get","post"].include(this.method)){C._method=this.method;
this.method="post"
}this.parameters=C;
if(C=Hash.toQueryString(C)){if(this.method=="get"){this.url+=(this.url.include("?")?"&":"?")+C
}else{if(/Konqueror|Safari|KHTML/.test(navigator.userAgent)){C+="&_="
}}}try{if(this.options.onCreate){this.options.onCreate(this.transport)
}Ajax.Responders.dispatch("onCreate",this,this.transport);
this.transport.open(this.method.toUpperCase(),this.url,this.options.asynchronous);
if(this.options.asynchronous){setTimeout(function(){this.respondToReadyState(1)
}.bind(this),10)
}this.transport.onreadystatechange=this.onStateChange.bind(this);
this.setRequestHeaders();
this.body=this.method=="post"?(this.options.postBody||C):null;
this.transport.send(this.body);
if(!this.options.asynchronous&&this.transport.overrideMimeType){this.onStateChange()
}}catch(B){this.dispatchException(B)
}},onStateChange:function(){var A=this.transport.readyState;
if(A>1&&!((A==4)&&this._complete)){this.respondToReadyState(this.transport.readyState)
}},setRequestHeaders:function(){var E={"X-Requested-With":"XMLHttpRequest","X-Prototype-Version":Prototype.Version,Accept:"text/javascript, text/html, application/xml, text/xml, */*"};
if(this.method=="post"){E["Content-type"]=this.options.contentType+(this.options.encoding?"; charset="+this.options.encoding:"");
if(this.transport.overrideMimeType&&(navigator.userAgent.match(/Gecko\/(\d{4})/)||[0,2005])[1]<2005){E.Connection="close"
}}if(typeof this.options.requestHeaders=="object"){var C=this.options.requestHeaders;
if(typeof C.push=="function"){for(var B=0,D=C.length;
B<D;
B+=2){E[C[B]]=C[B+1]
}}else{$H(C).each(function(F){E[F.key]=F.value
})
}}for(var A in E){this.transport.setRequestHeader(A,E[A])
}},success:function(){return !this.transport.status||(this.transport.status>=200&&this.transport.status<300)
},respondToReadyState:function(A){var C=Ajax.Request.Events[A];
var F=this.transport,B=this.evalJSON();
if(C=="Complete"){try{this._complete=true;
(this.options["on"+this.transport.status]||this.options["on"+(this.success()?"Success":"Failure")]||Prototype.emptyFunction)(F,B)
}catch(D){this.dispatchException(D)
}var E=this.getHeader("Content-type");
if(E&&E.strip().match(/^(text|application)\/(x-)?(java|ecma)script(;.*)?$/i)){this.evalResponse()
}}try{(this.options["on"+C]||Prototype.emptyFunction)(F,B);
Ajax.Responders.dispatch("on"+C,this,F,B)
}catch(D){this.dispatchException(D)
}if(C=="Complete"){this.transport.onreadystatechange=Prototype.emptyFunction
}},getHeader:function(A){try{return this.transport.getResponseHeader(A)
}catch(B){return null
}},evalJSON:function(){try{var A=this.getHeader("X-JSON");
return A?A.evalJSON():null
}catch(B){return null
}},evalResponse:function(){try{return eval((this.transport.responseText||"").unfilterJSON())
}catch(e){this.dispatchException(e)
}},dispatchException:function(A){(this.options.onException||Prototype.emptyFunction)(this,A);
Ajax.Responders.dispatch("onException",this,A)
}});
Ajax.Updater=Class.create();
Object.extend(Object.extend(Ajax.Updater.prototype,Ajax.Request.prototype),{initialize:function(A,C,B){this.container={success:(A.success||A),failure:(A.failure||(A.success?null:A))};
this.transport=Ajax.getTransport();
this.setOptions(B);
var D=this.options.onComplete||Prototype.emptyFunction;
this.options.onComplete=(function(F,E){this.updateContent();
D(F,E)
}).bind(this);
this.request(C)
},updateContent:function(){var B=this.container[this.success()?"success":"failure"];
var A=this.transport.responseText;
if(!this.options.evalScripts){A=A.stripScripts()
}if(B=$(B)){if(this.options.insertion){new this.options.insertion(B,A)
}else{B.update(A)
}}if(this.success()){if(this.onComplete){setTimeout(this.onComplete.bind(this),10)
}}}});
Ajax.PeriodicalUpdater=Class.create();
Ajax.PeriodicalUpdater.prototype=Object.extend(new Ajax.Base(),{initialize:function(A,C,B){this.setOptions(B);
this.onComplete=this.options.onComplete;
this.frequency=(this.options.frequency||2);
this.decay=(this.options.decay||1);
this.updater={};
this.container=A;
this.url=C;
this.start()
},start:function(){this.options.onComplete=this.updateComplete.bind(this);
this.onTimerEvent()
},stop:function(){this.updater.options.onComplete=undefined;
clearTimeout(this.timer);
(this.onComplete||Prototype.emptyFunction).apply(this,arguments)
},updateComplete:function(A){if(this.options.decay){this.decay=(A.responseText==this.lastText?this.decay*this.options.decay:1);
this.lastText=A.responseText
}this.timer=setTimeout(this.onTimerEvent.bind(this),this.decay*this.frequency*1000)
},onTimerEvent:function(){this.updater=new Ajax.Updater(this.container,this.url,this.options)
}});
function $(B){if(arguments.length>1){for(var A=0,D=[],C=arguments.length;
A<C;
A++){D.push($(arguments[A]))
}return D
}if(typeof B=="string"){B=document.getElementById(B)
}return Element.extend(B)
}if(Prototype.BrowserFeatures.XPath){document._getElementsByXPath=function(F,A){var C=[];
var E=document.evaluate(F,$(A)||document,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);
for(var B=0,D=E.snapshotLength;
B<D;
B++){C.push(E.snapshotItem(B))
}return C
};
document.getElementsByClassName=function(B,A){var C=".//*[contains(concat(' ', @class, ' '), ' "+B+" ')]";
return document._getElementsByXPath(C,A)
}
}else{document.getElementsByClassName=function(D,A){var C=($(A)||document.body).getElementsByTagName("*");
var F=[],G;
for(var B=0,E=C.length;
B<E;
B++){G=C[B];
if(Element.hasClassName(G,D)){F.push(Element.extend(G))
}}return F
}
}if(!window.Element){var Element={}
}Element.extend=function(E){var G=Prototype.BrowserFeatures;
if(!E||!E.tagName||E.nodeType==3||E._extended||G.SpecificElementExtensions||E==window){return E
}var B={},D=E.tagName,A=Element.extend.cache,C=Element.Methods.ByTag;
if(!G.ElementExtensions){Object.extend(B,Element.Methods),Object.extend(B,Element.Methods.Simulated)
}if(C[D]){Object.extend(B,C[D])
}for(var I in B){var H=B[I];
if(typeof H=="function"&&!(I in E)){E[I]=A.findOrStore(H)
}}E._extended=Prototype.emptyFunction;
return E
};
Element.extend.cache={findOrStore:function(A){return this[A]=this[A]||function(){return A.apply(null,[this].concat($A(arguments)))
}
}};
Element.Methods={visible:function(A){return $(A).style.display!="none"
},toggle:function(A){A=$(A);
Element[Element.visible(A)?"hide":"show"](A);
return A
},hide:function(A){$(A).style.display="none";
return A
},show:function(A){$(A).style.display="";
return A
},remove:function(A){A=$(A);
A.parentNode.removeChild(A);
return A
},update:function(B,A){A=typeof A=="undefined"?"":A.toString();
$(B).innerHTML=A.stripScripts();
setTimeout(function(){A.evalScripts()
},10);
return B
},replace:function(C,B){C=$(C);
B=typeof B=="undefined"?"":B.toString();
if(C.outerHTML){C.outerHTML=B.stripScripts()
}else{var A=C.ownerDocument.createRange();
A.selectNodeContents(C);
C.parentNode.replaceChild(A.createContextualFragment(B.stripScripts()),C)
}setTimeout(function(){B.evalScripts()
},10);
return C
},inspect:function(B){B=$(B);
var A="<"+B.tagName.toLowerCase();
$H({id:"id",className:"class"}).each(function(F){var E=F.first(),C=F.last();
var D=(B[E]||"").toString();
if(D){A+=" "+C+"="+D.inspect(true)
}});
return A+">"
},recursivelyCollect:function(A,C){A=$(A);
var B=[];
while(A=A[C]){if(A.nodeType==1){B.push(Element.extend(A))
}}return B
},ancestors:function(A){return $(A).recursivelyCollect("parentNode")
},descendants:function(A){return $A($(A).getElementsByTagName("*")).each(Element.extend)
},firstDescendant:function(A){A=$(A).firstChild;
while(A&&A.nodeType!=1){A=A.nextSibling
}return $(A)
},immediateDescendants:function(A){if(!(A=$(A).firstChild)){return[]
}while(A&&A.nodeType!=1){A=A.nextSibling
}if(A){return[A].concat($(A).nextSiblings())
}return[]
},previousSiblings:function(A){return $(A).recursivelyCollect("previousSibling")
},nextSiblings:function(A){return $(A).recursivelyCollect("nextSibling")
},siblings:function(A){A=$(A);
return A.previousSiblings().reverse().concat(A.nextSiblings())
},match:function(B,A){if(typeof A=="string"){A=new Selector(A)
}return A.match($(B))
},up:function(B,D,A){B=$(B);
if(arguments.length==1){return $(B.parentNode)
}var C=B.ancestors();
return D?Selector.findElement(C,D,A):C[A||0]
},down:function(B,C,A){B=$(B);
if(arguments.length==1){return B.firstDescendant()
}var D=B.descendants();
return C?Selector.findElement(D,C,A):D[A||0]
},previous:function(B,D,A){B=$(B);
if(arguments.length==1){return $(Selector.handlers.previousElementSibling(B))
}var C=B.previousSiblings();
return D?Selector.findElement(C,D,A):C[A||0]
},next:function(C,D,B){C=$(C);
if(arguments.length==1){return $(Selector.handlers.nextElementSibling(C))
}var A=C.nextSiblings();
return D?Selector.findElement(A,D,B):A[B||0]
},getElementsBySelector:function(){var A=$A(arguments),B=$(A.shift());
return Selector.findChildElements(B,A)
},getElementsByClassName:function(A,B){return document.getElementsByClassName(B,A)
},readAttribute:function(C,A){C=$(C);
if(Prototype.Browser.IE){if(!C.attributes){return null
}var B=Element._attributeTranslations;
if(B.values[A]){return B.values[A](C,A)
}if(B.names[A]){A=B.names[A]
}var D=C.attributes[A];
return D?D.nodeValue:null
}return C.getAttribute(A)
},getHeight:function(A){return $(A).getDimensions().height
},getWidth:function(A){return $(A).getDimensions().width
},classNames:function(A){return new Element.ClassNames(A)
},hasClassName:function(A,B){if(!(A=$(A))){return 
}var C=A.className;
if(C.length==0){return false
}if(C==B||C.match(new RegExp("(^|\\s)"+B+"(\\s|$)"))){return true
}return false
},addClassName:function(A,B){if(!(A=$(A))){return 
}Element.classNames(A).add(B);
return A
},removeClassName:function(A,B){if(!(A=$(A))){return 
}Element.classNames(A).remove(B);
return A
},toggleClassName:function(A,B){if(!(A=$(A))){return 
}Element.classNames(A)[A.hasClassName(B)?"remove":"add"](B);
return A
},observe:function(){Event.observe.apply(Event,arguments);
return $A(arguments).first()
},stopObserving:function(){Event.stopObserving.apply(Event,arguments);
return $A(arguments).first()
},cleanWhitespace:function(B){B=$(B);
var C=B.firstChild;
while(C){var A=C.nextSibling;
if(C.nodeType==3&&!/\S/.test(C.nodeValue)){B.removeChild(C)
}C=A
}return B
},empty:function(A){return $(A).innerHTML.blank()
},descendantOf:function(B,A){B=$(B),A=$(A);
while(B=B.parentNode){if(B==A){return true
}}return false
},scrollTo:function(A){A=$(A);
var B=Position.cumulativeOffset(A);
window.scrollTo(B[0],B[1]);
return A
},getStyle:function(B,C){B=$(B);
C=C=="float"?"cssFloat":C.camelize();
var D=B.style[C];
if(!D){var A=document.defaultView.getComputedStyle(B,null);
D=A?A.getPropertyValue(C):null
}if(C=="opacity"){return D?parseFloat(D):1
}return D=="auto"?null:D
},getOpacity:function(A){return $(A).getStyle("opacity")
},setStyle:function(A,C,B){A=$(A);
var E=A.style;
for(var D in C){if(D=="opacity"){A.setOpacity(C[D])
}else{E[(D=="float"||D=="cssFloat")?(E.styleFloat===undefined?"cssFloat":"styleFloat"):(B?D:D.camelize())]=C[D]
}}return A
},setOpacity:function(A,B){A=$(A);
A.style.opacity=(B==1||B==="")?"":(B<0.00001)?0:B;
return A
},getDimensions:function(C){C=$(C);
var G=$(C).getStyle("display");
if(G!="none"&&G!=null){return{width:C.offsetWidth,height:C.offsetHeight}
}var B=C.style;
var F=B.visibility;
var D=B.position;
var A=B.display;
B.visibility="hidden";
B.position="absolute";
B.display="block";
var H=C.clientWidth;
var E=C.clientHeight;
B.display=A;
B.position=D;
B.visibility=F;
return{width:H,height:E}
},makePositioned:function(A){A=$(A);
var B=Element.getStyle(A,"position");
if(B=="static"||!B){A._madePositioned=true;
A.style.position="relative";
if(window.opera){A.style.top=0;
A.style.left=0
}}return A
},undoPositioned:function(A){A=$(A);
if(A._madePositioned){A._madePositioned=undefined;
A.style.position=A.style.top=A.style.left=A.style.bottom=A.style.right=""
}return A
},makeClipping:function(A){A=$(A);
if(A._overflow){return A
}A._overflow=A.style.overflow||"auto";
if((Element.getStyle(A,"overflow")||"visible")!="hidden"){A.style.overflow="hidden"
}return A
},undoClipping:function(A){A=$(A);
if(!A._overflow){return A
}A.style.overflow=A._overflow=="auto"?"":A._overflow;
A._overflow=null;
return A
}};
Object.extend(Element.Methods,{childOf:Element.Methods.descendantOf,childElements:Element.Methods.immediateDescendants});
if(Prototype.Browser.Opera){Element.Methods._getStyle=Element.Methods.getStyle;
Element.Methods.getStyle=function(A,B){switch(B){case"left":case"top":case"right":case"bottom":if(Element._getStyle(A,"position")=="static"){return null
}default:return Element._getStyle(A,B)
}}
}else{if(Prototype.Browser.IE){Element.Methods.getStyle=function(A,B){A=$(A);
B=(B=="float"||B=="cssFloat")?"styleFloat":B.camelize();
var C=A.style[B];
if(!C&&A.currentStyle){C=A.currentStyle[B]
}if(B=="opacity"){if(C=(A.getStyle("filter")||"").match(/alpha\(opacity=(.*)\)/)){if(C[1]){return parseFloat(C[1])/100
}}return 1
}if(C=="auto"){if((B=="width"||B=="height")&&(A.getStyle("display")!="none")){return A["offset"+B.capitalize()]+"px"
}return null
}return C
};
Element.Methods.setOpacity=function(A,D){A=$(A);
var C=A.getStyle("filter"),B=A.style;
if(D==1||D===""){B.filter=C.replace(/alpha\([^\)]*\)/gi,"");
return A
}else{if(D<0.00001){D=0
}}B.filter=C.replace(/alpha\([^\)]*\)/gi,"")+"alpha(opacity="+(D*100)+")";
return A
};
Element.Methods.update=function(C,B){C=$(C);
B=typeof B=="undefined"?"":B.toString();
var A=C.tagName.toUpperCase();
if(["THEAD","TBODY","TR","TD"].include(A)){var D=document.createElement("div");
switch(A){case"THEAD":case"TBODY":D.innerHTML="<table><tbody>"+B.stripScripts()+"</tbody></table>";
depth=2;
break;
case"TR":D.innerHTML="<table><tbody><tr>"+B.stripScripts()+"</tr></tbody></table>";
depth=3;
break;
case"TD":D.innerHTML="<table><tbody><tr><td>"+B.stripScripts()+"</td></tr></tbody></table>";
depth=4
}$A(C.childNodes).each(function(E){C.removeChild(E)
});
depth.times(function(){D=D.firstChild
});
$A(D.childNodes).each(function(E){C.appendChild(E)
})
}else{C.innerHTML=B.stripScripts()
}setTimeout(function(){B.evalScripts()
},10);
return C
}
}else{if(Prototype.Browser.Gecko){Element.Methods.setOpacity=function(A,B){A=$(A);
A.style.opacity=(B==1)?0.999999:(B==="")?"":(B<0.00001)?0:B;
return A
}
}}}Element._attributeTranslations={names:{colspan:"colSpan",rowspan:"rowSpan",valign:"vAlign",datetime:"dateTime",accesskey:"accessKey",tabindex:"tabIndex",enctype:"encType",maxlength:"maxLength",readonly:"readOnly",longdesc:"longDesc"},values:{_getAttr:function(A,B){return A.getAttribute(B,2)
},_flag:function(A,B){return $(A).hasAttribute(B)?B:null
},style:function(A){return A.style.cssText.toLowerCase()
},title:function(A){var B=A.getAttributeNode("title");
return B.specified?B.nodeValue:null
}}};
(function(){Object.extend(this,{href:this._getAttr,src:this._getAttr,type:this._getAttr,disabled:this._flag,checked:this._flag,readonly:this._flag,multiple:this._flag})
}).call(Element._attributeTranslations.values);
Element.Methods.Simulated={hasAttribute:function(B,D){var A=Element._attributeTranslations,C;
D=A.names[D]||D;
C=$(B).getAttributeNode(D);
return C&&C.specified
}};
Element.Methods.ByTag={};
Object.extend(Element,Element.Methods);
if(!Prototype.BrowserFeatures.ElementExtensions&&document.createElement("div").__proto__){window.HTMLElement={};
window.HTMLElement.prototype=document.createElement("div").__proto__;
Prototype.BrowserFeatures.ElementExtensions=true
}Element.hasAttribute=function(A,B){if(A.hasAttribute){return A.hasAttribute(B)
}return Element.Methods.Simulated.hasAttribute(A,B)
};
Element.addMethods=function(C){var I=Prototype.BrowserFeatures,D=Element.Methods.ByTag;
if(!C){Object.extend(Form,Form.Methods);
Object.extend(Form.Element,Form.Element.Methods);
Object.extend(Element.Methods.ByTag,{FORM:Object.clone(Form.Methods),INPUT:Object.clone(Form.Element.Methods),SELECT:Object.clone(Form.Element.Methods),TEXTAREA:Object.clone(Form.Element.Methods)})
}if(arguments.length==2){var B=C;
C=arguments[1]
}if(!B){Object.extend(Element.Methods,C||{})
}else{if(B.constructor==Array){B.each(H)
}else{H(B)
}}function H(F){F=F.toUpperCase();
if(!Element.Methods.ByTag[F]){Element.Methods.ByTag[F]={}
}Object.extend(Element.Methods.ByTag[F],C)
}function A(M,K,F){F=F||false;
var L=Element.extend.cache;
for(var O in M){var N=M[O];
if(!F||!(O in K)){K[O]=L.findOrStore(N)
}}}function E(L){var F;
var K={OPTGROUP:"OptGroup",TEXTAREA:"TextArea",P:"Paragraph",FIELDSET:"FieldSet",UL:"UList",OL:"OList",DL:"DList",DIR:"Directory",H1:"Heading",H2:"Heading",H3:"Heading",H4:"Heading",H5:"Heading",H6:"Heading",Q:"Quote",INS:"Mod",DEL:"Mod",A:"Anchor",IMG:"Image",CAPTION:"TableCaption",COL:"TableCol",COLGROUP:"TableCol",THEAD:"TableSection",TFOOT:"TableSection",TBODY:"TableSection",TR:"TableRow",TH:"TableCell",TD:"TableCell",FRAMESET:"FrameSet",IFRAME:"IFrame"};
if(K[L]){F="HTML"+K[L]+"Element"
}if(window[F]){return window[F]
}F="HTML"+L+"Element";
if(window[F]){return window[F]
}F="HTML"+L.capitalize()+"Element";
if(window[F]){return window[F]
}window[F]={};
window[F].prototype=document.createElement(L).__proto__;
return window[F]
}if(I.ElementExtensions){A(Element.Methods,HTMLElement.prototype);
A(Element.Methods.Simulated,HTMLElement.prototype,true)
}if(I.SpecificElementExtensions){for(var J in Element.Methods.ByTag){var G=E(J);
if(typeof G=="undefined"){continue
}A(D[J],G.prototype)
}}Object.extend(Element,Element.Methods);
delete Element.ByTag
};
var Toggle={display:Element.toggle};
Abstract.Insertion=function(A){this.adjacency=A
};
Abstract.Insertion.prototype={initialize:function(B,C){this.element=$(B);
this.content=C.stripScripts();
if(this.adjacency&&this.element.insertAdjacentHTML){try{this.element.insertAdjacentHTML(this.adjacency,this.content)
}catch(D){var A=this.element.tagName.toUpperCase();
if(["TBODY","TR"].include(A)){this.insertContent(this.contentFromAnonymousTable())
}else{throw D
}}}else{this.range=this.element.ownerDocument.createRange();
if(this.initializeRange){this.initializeRange()
}this.insertContent([this.range.createContextualFragment(this.content)])
}setTimeout(function(){C.evalScripts()
},10)
},contentFromAnonymousTable:function(){var A=document.createElement("div");
A.innerHTML="<table><tbody>"+this.content+"</tbody></table>";
return $A(A.childNodes[0].childNodes[0].childNodes)
}};
var Insertion=new Object();
Insertion.Before=Class.create();
Insertion.Before.prototype=Object.extend(new Abstract.Insertion("beforeBegin"),{initializeRange:function(){this.range.setStartBefore(this.element)
},insertContent:function(A){A.each((function(B){this.element.parentNode.insertBefore(B,this.element)
}).bind(this))
}});
Insertion.Top=Class.create();
Insertion.Top.prototype=Object.extend(new Abstract.Insertion("afterBegin"),{initializeRange:function(){this.range.selectNodeContents(this.element);
this.range.collapse(true)
},insertContent:function(A){A.reverse(false).each((function(B){this.element.insertBefore(B,this.element.firstChild)
}).bind(this))
}});
Insertion.Bottom=Class.create();
Insertion.Bottom.prototype=Object.extend(new Abstract.Insertion("beforeEnd"),{initializeRange:function(){this.range.selectNodeContents(this.element);
this.range.collapse(this.element)
},insertContent:function(A){A.each((function(B){this.element.appendChild(B)
}).bind(this))
}});
Insertion.After=Class.create();
Insertion.After.prototype=Object.extend(new Abstract.Insertion("afterEnd"),{initializeRange:function(){this.range.setStartAfter(this.element)
},insertContent:function(A){A.each((function(B){this.element.parentNode.insertBefore(B,this.element.nextSibling)
}).bind(this))
}});
Element.ClassNames=Class.create();
Element.ClassNames.prototype={initialize:function(A){this.element=$(A)
},_each:function(A){this.element.className.split(/\s+/).select(function(B){return B.length>0
})._each(A)
},set:function(A){this.element.className=A
},add:function(A){if(this.include(A)){return 
}this.set($A(this).concat(A).join(" "))
},remove:function(A){if(!this.include(A)){return 
}this.set($A(this).without(A).join(" "))
},toString:function(){return $A(this).join(" ")
}};
Object.extend(Element.ClassNames.prototype,Enumerable);
var Selector=Class.create();
Selector.prototype={initialize:function(A){this.expression=A.strip();
this.compileMatcher()
},compileMatcher:function(){if(Prototype.BrowserFeatures.XPath&&!(/\[[\w-]*?:/).test(this.expression)){return this.compileXPathMatcher()
}var e=this.expression,ps=Selector.patterns,h=Selector.handlers,c=Selector.criteria,le,p,m;
if(Selector._cache[e]){this.matcher=Selector._cache[e];
return 
}this.matcher=["this.matcher = function(root) {","var r = root, h = Selector.handlers, c = false, n;"];
while(e&&le!=e&&(/\S/).test(e)){le=e;
for(var i in ps){p=ps[i];
if(m=e.match(p)){this.matcher.push(typeof c[i]=="function"?c[i](m):new Template(c[i]).evaluate(m));
e=e.replace(m[0],"");
break
}}}this.matcher.push("return h.unique(n);\n}");
eval(this.matcher.join("\n"));
Selector._cache[this.expression]=this.matcher
},compileXPathMatcher:function(){var E=this.expression,F=Selector.patterns,B=Selector.xpath,D,A;
if(Selector._cache[E]){this.xpath=Selector._cache[E];
return 
}this.matcher=[".//*"];
while(E&&D!=E&&(/\S/).test(E)){D=E;
for(var C in F){if(A=E.match(F[C])){this.matcher.push(typeof B[C]=="function"?B[C](A):new Template(B[C]).evaluate(A));
E=E.replace(A[0],"");
break
}}}this.xpath=this.matcher.join("");
Selector._cache[this.expression]=this.xpath
},findElements:function(A){A=A||document;
if(this.xpath){return document._getElementsByXPath(this.xpath,A)
}return this.matcher(A)
},match:function(A){return this.findElements(document).include(A)
},toString:function(){return this.expression
},inspect:function(){return"#<Selector:"+this.expression.inspect()+">"
}};
Object.extend(Selector,{_cache:{},xpath:{descendant:"//*",child:"/*",adjacent:"/following-sibling::*[1]",laterSibling:"/following-sibling::*",tagName:function(A){if(A[1]=="*"){return""
}return"[local-name()='"+A[1].toLowerCase()+"' or local-name()='"+A[1].toUpperCase()+"']"
},className:"[contains(concat(' ', @class, ' '), ' #{1} ')]",id:"[@id='#{1}']",attrPresence:"[@#{1}]",attr:function(A){A[3]=A[5]||A[6];
return new Template(Selector.xpath.operators[A[2]]).evaluate(A)
},pseudo:function(A){var B=Selector.xpath.pseudos[A[1]];
if(!B){return""
}if(typeof B==="function"){return B(A)
}return new Template(Selector.xpath.pseudos[A[1]]).evaluate(A)
},operators:{"=":"[@#{1}='#{3}']","!=":"[@#{1}!='#{3}']","^=":"[starts-with(@#{1}, '#{3}')]","$=":"[substring(@#{1}, (string-length(@#{1}) - string-length('#{3}') + 1))='#{3}']","*=":"[contains(@#{1}, '#{3}')]","~=":"[contains(concat(' ', @#{1}, ' '), ' #{3} ')]","|=":"[contains(concat('-', @#{1}, '-'), '-#{3}-')]"},pseudos:{"first-child":"[not(preceding-sibling::*)]","last-child":"[not(following-sibling::*)]","only-child":"[not(preceding-sibling::* or following-sibling::*)]",empty:"[count(*) = 0 and (count(text()) = 0 or translate(text(), ' \t\r\n', '') = '')]",checked:"[@checked]",disabled:"[@disabled]",enabled:"[not(@disabled)]",not:function(B){var H=B[6],G=Selector.patterns,A=Selector.xpath,E,B,C;
var F=[];
while(H&&E!=H&&(/\S/).test(H)){E=H;
for(var D in G){if(B=H.match(G[D])){C=typeof A[D]=="function"?A[D](B):new Template(A[D]).evaluate(B);
F.push("("+C.substring(1,C.length-1)+")");
H=H.replace(B[0],"");
break
}}}return"[not("+F.join(" and ")+")]"
},"nth-child":function(A){return Selector.xpath.pseudos.nth("(count(./preceding-sibling::*) + 1) ",A)
},"nth-last-child":function(A){return Selector.xpath.pseudos.nth("(count(./following-sibling::*) + 1) ",A)
},"nth-of-type":function(A){return Selector.xpath.pseudos.nth("position() ",A)
},"nth-last-of-type":function(A){return Selector.xpath.pseudos.nth("(last() + 1 - position()) ",A)
},"first-of-type":function(A){A[6]="1";
return Selector.xpath.pseudos["nth-of-type"](A)
},"last-of-type":function(A){A[6]="1";
return Selector.xpath.pseudos["nth-last-of-type"](A)
},"only-of-type":function(A){var B=Selector.xpath.pseudos;
return B["first-of-type"](A)+B["last-of-type"](A)
},nth:function(E,C){var F,G=C[6],B;
if(G=="even"){G="2n+0"
}if(G=="odd"){G="2n+1"
}if(F=G.match(/^(\d+)$/)){return"["+E+"= "+F[1]+"]"
}if(F=G.match(/^(-?\d*)?n(([+-])(\d+))?/)){if(F[1]=="-"){F[1]=-1
}var D=F[1]?Number(F[1]):1;
var A=F[2]?Number(F[2]):0;
B="[((#{fragment} - #{b}) mod #{a} = 0) and ((#{fragment} - #{b}) div #{a} >= 0)]";
return new Template(B).evaluate({fragment:E,a:D,b:A})
}}}},criteria:{tagName:'n = h.tagName(n, r, "#{1}", c);   c = false;',className:'n = h.className(n, r, "#{1}", c); c = false;',id:'n = h.id(n, r, "#{1}", c);        c = false;',attrPresence:'n = h.attrPresence(n, r, "#{1}"); c = false;',attr:function(A){A[3]=(A[5]||A[6]);
return new Template('n = h.attr(n, r, "#{1}", "#{3}", "#{2}"); c = false;').evaluate(A)
},pseudo:function(A){if(A[6]){A[6]=A[6].replace(/"/g,'\\"')
}return new Template('n = h.pseudo(n, "#{1}", "#{6}", r, c); c = false;').evaluate(A)
},descendant:'c = "descendant";',child:'c = "child";',adjacent:'c = "adjacent";',laterSibling:'c = "laterSibling";'},patterns:{laterSibling:/^\s*~\s*/,child:/^\s*>\s*/,adjacent:/^\s*\+\s*/,descendant:/^\s/,tagName:/^\s*(\*|[\w\-]+)(\b|$)?/,id:/^#([\w\-\*]+)(\b|$)/,className:/^\.([\w\-\*]+)(\b|$)/,pseudo:/^:((first|last|nth|nth-last|only)(-child|-of-type)|empty|checked|(en|dis)abled|not)(\((.*?)\))?(\b|$|\s|(?=:))/,attrPresence:/^\[([\w]+)\]/,attr:/\[((?:[\w-]*:)?[\w-]+)\s*(?:([!^$*~|]?=)\s*((['"])([^\]]*?)\4|([^'"][^\]]*?)))?\]/},handlers:{concat:function(B,A){for(var C=0,D;
D=A[C];
C++){B.push(D)
}return B
},mark:function(A){for(var B=0,C;
C=A[B];
B++){C._counted=true
}return A
},unmark:function(A){for(var B=0,C;
C=A[B];
B++){C._counted=undefined
}return A
},index:function(A,D,F){A._counted=true;
if(D){for(var B=A.childNodes,E=B.length-1,C=1;
E>=0;
E--){node=B[E];
if(node.nodeType==1&&(!F||node._counted)){node.nodeIndex=C++
}}}else{for(var E=0,C=1,B=A.childNodes;
node=B[E];
E++){if(node.nodeType==1&&(!F||node._counted)){node.nodeIndex=C++
}}}},unique:function(B){if(B.length==0){return B
}var D=[],E;
for(var C=0,A=B.length;
C<A;
C++){if(!(E=B[C])._counted){E._counted=true;
D.push(Element.extend(E))
}}return Selector.handlers.unmark(D)
},descendant:function(A){var D=Selector.handlers;
for(var C=0,B=[],E;
E=A[C];
C++){D.concat(B,E.getElementsByTagName("*"))
}return B
},child:function(A){var F=Selector.handlers;
for(var E=0,D=[],G;
G=A[E];
E++){for(var B=0,C=[],H;
H=G.childNodes[B];
B++){if(H.nodeType==1&&H.tagName!="!"){D.push(H)
}}}return D
},adjacent:function(A){for(var C=0,B=[],E;
E=A[C];
C++){var D=this.nextElementSibling(E);
if(D){B.push(D)
}}return B
},laterSibling:function(A){var D=Selector.handlers;
for(var C=0,B=[],E;
E=A[C];
C++){D.concat(B,Element.nextSiblings(E))
}return B
},nextElementSibling:function(A){while(A=A.nextSibling){if(A.nodeType==1){return A
}}return null
},previousElementSibling:function(A){while(A=A.previousSibling){if(A.nodeType==1){return A
}}return null
},tagName:function(B,A,E,H){E=E.toUpperCase();
var D=[],F=Selector.handlers;
if(B){if(H){if(H=="descendant"){for(var C=0,G;
G=B[C];
C++){F.concat(D,G.getElementsByTagName(E))
}return D
}else{B=this[H](B)
}if(E=="*"){return B
}}for(var C=0,G;
G=B[C];
C++){if(G.tagName.toUpperCase()==E){D.push(G)
}}return D
}else{return A.getElementsByTagName(E)
}},id:function(B,A,H,F){var G=$(H),D=Selector.handlers;
if(!B&&A==document){return G?[G]:[]
}if(B){if(F){if(F=="child"){for(var C=0,E;
E=B[C];
C++){if(G.parentNode==E){return[G]
}}}else{if(F=="descendant"){for(var C=0,E;
E=B[C];
C++){if(Element.descendantOf(G,E)){return[G]
}}}else{if(F=="adjacent"){for(var C=0,E;
E=B[C];
C++){if(Selector.handlers.previousElementSibling(G)==E){return[G]
}}}else{B=D[F](B)
}}}}for(var C=0,E;
E=B[C];
C++){if(E==G){return[G]
}}return[]
}return(G&&Element.descendantOf(G,A))?[G]:[]
},className:function(B,A,C,D){if(B&&D){B=this[D](B)
}return Selector.handlers.byClassName(B,A,C)
},byClassName:function(C,B,F){if(!C){C=Selector.handlers.descendant([B])
}var H=" "+F+" ";
for(var E=0,D=[],G,A;
G=C[E];
E++){A=G.className;
if(A.length==0){continue
}if(A==F||(" "+A+" ").include(H)){D.push(G)
}}return D
},attrPresence:function(C,B,A){var E=[];
for(var D=0,F;
F=C[D];
D++){if(Element.hasAttribute(F,A)){E.push(F)
}}return E
},attr:function(A,H,G,I,B){if(!A){A=H.getElementsByTagName("*")
}var J=Selector.operators[B],D=[];
for(var E=0,C;
C=A[E];
E++){var F=Element.readAttribute(C,G);
if(F===null){continue
}if(J(F,I)){D.push(C)
}}return D
},pseudo:function(B,C,E,A,D){if(B&&D){B=this[D](B)
}if(!B){B=A.getElementsByTagName("*")
}return Selector.pseudos[C](B,E,A)
}},pseudos:{"first-child":function(B,F,A){for(var D=0,C=[],E;
E=B[D];
D++){if(Selector.handlers.previousElementSibling(E)){continue
}C.push(E)
}return C
},"last-child":function(B,F,A){for(var D=0,C=[],E;
E=B[D];
D++){if(Selector.handlers.nextElementSibling(E)){continue
}C.push(E)
}return C
},"only-child":function(B,G,A){var E=Selector.handlers;
for(var D=0,C=[],F;
F=B[D];
D++){if(!E.previousElementSibling(F)&&!E.nextElementSibling(F)){C.push(F)
}}return C
},"nth-child":function(B,C,A){return Selector.pseudos.nth(B,C,A)
},"nth-last-child":function(B,C,A){return Selector.pseudos.nth(B,C,A,true)
},"nth-of-type":function(B,C,A){return Selector.pseudos.nth(B,C,A,false,true)
},"nth-last-of-type":function(B,C,A){return Selector.pseudos.nth(B,C,A,true,true)
},"first-of-type":function(B,C,A){return Selector.pseudos.nth(B,"1",A,false,true)
},"last-of-type":function(B,C,A){return Selector.pseudos.nth(B,"1",A,true,true)
},"only-of-type":function(B,D,A){var C=Selector.pseudos;
return C["last-of-type"](C["first-of-type"](B,D,A),D,A)
},getIndices:function(B,A,C){if(B==0){return A>0?[A]:[]
}return $R(1,C).inject([],function(D,E){if(0==(E-A)%B&&(E-A)/B>=0){D.push(E)
}return D
})
},nth:function(A,L,N,K,C){if(A.length==0){return[]
}if(L=="even"){L="2n+0"
}if(L=="odd"){L="2n+1"
}var J=Selector.handlers,I=[],B=[],E;
J.mark(A);
for(var H=0,D;
D=A[H];
H++){if(!D.parentNode._counted){J.index(D.parentNode,K,C);
B.push(D.parentNode)
}}if(L.match(/^\d+$/)){L=Number(L);
for(var H=0,D;
D=A[H];
H++){if(D.nodeIndex==L){I.push(D)
}}}else{if(E=L.match(/^(-?\d*)?n(([+-])(\d+))?/)){if(E[1]=="-"){E[1]=-1
}var O=E[1]?Number(E[1]):1;
var M=E[2]?Number(E[2]):0;
var P=Selector.pseudos.getIndices(O,M,A.length);
for(var H=0,D,F=P.length;
D=A[H];
H++){for(var G=0;
G<F;
G++){if(D.nodeIndex==P[G]){I.push(D)
}}}}}J.unmark(A);
J.unmark(B);
return I
},empty:function(B,F,A){for(var D=0,C=[],E;
E=B[D];
D++){if(E.tagName=="!"||(E.firstChild&&!E.innerHTML.match(/^\s*$/))){continue
}C.push(E)
}return C
},not:function(A,D,I){var G=Selector.handlers,J,C;
var H=new Selector(D).findElements(I);
G.mark(H);
for(var F=0,E=[],B;
B=A[F];
F++){if(!B._counted){E.push(B)
}}G.unmark(H);
return E
},enabled:function(B,F,A){for(var D=0,C=[],E;
E=B[D];
D++){if(!E.disabled){C.push(E)
}}return C
},disabled:function(B,F,A){for(var D=0,C=[],E;
E=B[D];
D++){if(E.disabled){C.push(E)
}}return C
},checked:function(B,F,A){for(var D=0,C=[],E;
E=B[D];
D++){if(E.checked){C.push(E)
}}return C
}},operators:{"=":function(B,A){return B==A
},"!=":function(B,A){return B!=A
},"^=":function(B,A){return B.startsWith(A)
},"$=":function(B,A){return B.endsWith(A)
},"*=":function(B,A){return B.include(A)
},"~=":function(B,A){return(" "+B+" ").include(" "+A+" ")
},"|=":function(B,A){return("-"+B.toUpperCase()+"-").include("-"+A.toUpperCase()+"-")
}},matchElements:function(F,G){var E=new Selector(G).findElements(),D=Selector.handlers;
D.mark(E);
for(var C=0,B=[],A;
A=F[C];
C++){if(A._counted){B.push(A)
}}D.unmark(E);
return B
},findElement:function(B,C,A){if(typeof C=="number"){A=C;
C=false
}return Selector.matchElements(B,C||"*")[A||0]
},findChildElements:function(E,G){var H=G.join(","),G=[];
H.scan(/(([\w#:.~>+()\s-]+|\*|\[.*?\])+)\s*(,|$)/,function(I){G.push(I[1].strip())
});
var D=[],F=Selector.handlers;
for(var C=0,B=G.length,A;
C<B;
C++){A=new Selector(G[C].strip());
F.concat(D,A.findElements(E))
}return(B>1)?F.unique(D):D
}});
function $$(){return Selector.findChildElements(document,$A(arguments))
}var Form={reset:function(A){$(A).reset();
return A
},serializeElements:function(C,A){var B=C.inject({},function(D,F){if(!F.disabled&&F.name){var E=F.name,G=$(F).getValue();
if(G!=null){if(E in D){if(D[E].constructor!=Array){D[E]=[D[E]]
}D[E].push(G)
}else{D[E]=G
}}}return D
});
return A?B:Hash.toQueryString(B)
}};
Form.Methods={serialize:function(B,A){return Form.serializeElements(Form.getElements(B),A)
},getElements:function(A){return $A($(A).getElementsByTagName("*")).inject([],function(B,C){if(Form.Element.Serializers[C.tagName.toLowerCase()]){B.push(Element.extend(C))
}return B
})
},getInputs:function(G,C,D){G=$(G);
var A=G.getElementsByTagName("input");
if(!C&&!D){return $A(A).map(Element.extend)
}for(var E=0,H=[],F=A.length;
E<F;
E++){var B=A[E];
if((C&&B.type!=C)||(D&&B.name!=D)){continue
}H.push(Element.extend(B))
}return H
},disable:function(A){A=$(A);
Form.getElements(A).invoke("disable");
return A
},enable:function(A){A=$(A);
Form.getElements(A).invoke("enable");
return A
},findFirstElement:function(A){return $(A).getElements().find(function(B){return B.type!="hidden"&&!B.disabled&&["input","select","textarea"].include(B.tagName.toLowerCase())
})
},focusFirstElement:function(A){A=$(A);
A.findFirstElement().activate();
return A
},request:function(B,A){B=$(B),A=Object.clone(A||{});
var C=A.parameters;
A.parameters=B.serialize(true);
if(C){if(typeof C=="string"){C=C.toQueryParams()
}Object.extend(A.parameters,C)
}if(B.hasAttribute("method")&&!A.method){A.method=B.method
}return new Ajax.Request(B.readAttribute("action"),A)
}};
Form.Element={focus:function(A){$(A).focus();
return A
},select:function(A){$(A).select();
return A
}};
Form.Element.Methods={serialize:function(A){A=$(A);
if(!A.disabled&&A.name){var B=A.getValue();
if(B!=undefined){var C={};
C[A.name]=B;
return Hash.toQueryString(C)
}}return""
},getValue:function(A){A=$(A);
var B=A.tagName.toLowerCase();
return Form.Element.Serializers[B](A)
},clear:function(A){$(A).value="";
return A
},present:function(A){return $(A).value!=""
},activate:function(A){A=$(A);
try{A.focus();
if(A.select&&(A.tagName.toLowerCase()!="input"||!["button","reset","submit"].include(A.type))){A.select()
}}catch(B){}return A
},disable:function(A){A=$(A);
A.blur();
A.disabled=true;
return A
},enable:function(A){A=$(A);
A.disabled=false;
return A
}};
var Field=Form.Element;
var $F=Form.Element.Methods.getValue;
Form.Element.Serializers={input:function(A){switch(A.type.toLowerCase()){case"checkbox":case"radio":return Form.Element.Serializers.inputSelector(A);
default:return Form.Element.Serializers.textarea(A)
}},inputSelector:function(A){return A.checked?A.value:null
},textarea:function(A){return A.value
},select:function(A){return this[A.type=="select-one"?"selectOne":"selectMany"](A)
},selectOne:function(B){var A=B.selectedIndex;
return A>=0?this.optionValue(B.options[A]):null
},selectMany:function(D){var A,E=D.length;
if(!E){return null
}for(var C=0,A=[];
C<E;
C++){var B=D.options[C];
if(B.selected){A.push(this.optionValue(B))
}}return A
},optionValue:function(A){return Element.extend(A).hasAttribute("value")?A.value:A.text
}};
Abstract.TimedObserver=function(){};
Abstract.TimedObserver.prototype={initialize:function(A,B,C){this.frequency=B;
this.element=$(A);
this.callback=C;
this.lastValue=this.getValue();
this.registerCallback()
},registerCallback:function(){setInterval(this.onTimerEvent.bind(this),this.frequency*1000)
},onTimerEvent:function(){var A=this.getValue();
var B=("string"==typeof this.lastValue&&"string"==typeof A?this.lastValue!=A:String(this.lastValue)!=String(A));
if(B){this.callback(this.element,A);
this.lastValue=A
}}};
Form.Element.Observer=Class.create();
Form.Element.Observer.prototype=Object.extend(new Abstract.TimedObserver(),{getValue:function(){return Form.Element.getValue(this.element)
}});
Form.Observer=Class.create();
Form.Observer.prototype=Object.extend(new Abstract.TimedObserver(),{getValue:function(){return Form.serialize(this.element)
}});
Abstract.EventObserver=function(){};
Abstract.EventObserver.prototype={initialize:function(A,B){this.element=$(A);
this.callback=B;
this.lastValue=this.getValue();
if(this.element.tagName.toLowerCase()=="form"){this.registerFormCallbacks()
}else{this.registerCallback(this.element)
}},onElementEvent:function(){var A=this.getValue();
if(this.lastValue!=A){this.callback(this.element,A);
this.lastValue=A
}},registerFormCallbacks:function(){Form.getElements(this.element).each(this.registerCallback.bind(this))
},registerCallback:function(A){if(A.type){switch(A.type.toLowerCase()){case"checkbox":case"radio":Event.observe(A,"click",this.onElementEvent.bind(this));
break;
default:Event.observe(A,"change",this.onElementEvent.bind(this));
break
}}}};
Form.Element.EventObserver=Class.create();
Form.Element.EventObserver.prototype=Object.extend(new Abstract.EventObserver(),{getValue:function(){return Form.Element.getValue(this.element)
}});
Form.EventObserver=Class.create();
Form.EventObserver.prototype=Object.extend(new Abstract.EventObserver(),{getValue:function(){return Form.serialize(this.element)
}});
if(!window.Event){var Event=new Object()
}Object.extend(Event,{KEY_BACKSPACE:8,KEY_TAB:9,KEY_RETURN:13,KEY_ESC:27,KEY_LEFT:37,KEY_UP:38,KEY_RIGHT:39,KEY_DOWN:40,KEY_DELETE:46,KEY_HOME:36,KEY_END:35,KEY_PAGEUP:33,KEY_PAGEDOWN:34,element:function(A){return $(A.target||A.srcElement)
},isLeftClick:function(A){return(((A.which)&&(A.which==1))||((A.button)&&(A.button==1)))
},pointerX:function(A){return A.pageX||(A.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft))
},pointerY:function(A){return A.pageY||(A.clientY+(document.documentElement.scrollTop||document.body.scrollTop))
},stop:function(A){if(A.preventDefault){A.preventDefault();
A.stopPropagation()
}else{A.returnValue=false;
A.cancelBubble=true
}},findElement:function(C,B){var A=Event.element(C);
while(A.parentNode&&(!A.tagName||(A.tagName.toUpperCase()!=B.toUpperCase()))){A=A.parentNode
}return A
},observers:false,_observeAndCache:function(D,C,B,A){if(!this.observers){this.observers=[]
}if(D.addEventListener){this.observers.push([D,C,B,A]);
D.addEventListener(C,B,A)
}else{if(D.attachEvent){this.observers.push([D,C,B,A]);
D.attachEvent("on"+C,B)
}}},unloadCache:function(){if(!Event.observers){return 
}for(var A=0,B=Event.observers.length;
A<B;
A++){Event.stopObserving.apply(this,Event.observers[A]);
Event.observers[A][0]=null
}Event.observers=false
},observe:function(D,C,B,A){D=$(D);
A=A||false;
if(C=="keypress"&&(Prototype.Browser.WebKit||D.attachEvent)){C="keydown"
}Event._observeAndCache(D,C,B,A)
},stopObserving:function(D,C,B,A){D=$(D);
A=A||false;
if(C=="keypress"&&(Prototype.Browser.WebKit||D.attachEvent)){C="keydown"
}if(D.removeEventListener){D.removeEventListener(C,B,A)
}else{if(D.detachEvent){try{D.detachEvent("on"+C,B)
}catch(E){}}}}});
if(Prototype.Browser.IE){Event.observe(window,"unload",Event.unloadCache,false)
}var Position={includeScrollOffsets:false,prepare:function(){this.deltaX=window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0;
this.deltaY=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0
},realOffset:function(B){var A=0,C=0;
do{A+=B.scrollTop||0;
C+=B.scrollLeft||0;
B=B.parentNode
}while(B);
return[C,A]
},cumulativeOffset:function(B){var A=0,C=0;
do{A+=B.offsetTop||0;
C+=B.offsetLeft||0;
B=B.offsetParent
}while(B);
return[C,A]
},positionedOffset:function(B){var A=0,D=0;
do{A+=B.offsetTop||0;
D+=B.offsetLeft||0;
B=B.offsetParent;
if(B){if(B.tagName=="BODY"){break
}var C=Element.getStyle(B,"position");
if(C=="relative"||C=="absolute"){break
}}}while(B);
return[D,A]
},offsetParent:function(A){if(A.offsetParent){return A.offsetParent
}if(A==document.body){return A
}while((A=A.parentNode)&&A!=document.body){if(Element.getStyle(A,"position")!="static"){return A
}}return document.body
},within:function(B,A,C){if(this.includeScrollOffsets){return this.withinIncludingScrolloffsets(B,A,C)
}this.xcomp=A;
this.ycomp=C;
this.offset=this.cumulativeOffset(B);
return(C>=this.offset[1]&&C<this.offset[1]+B.offsetHeight&&A>=this.offset[0]&&A<this.offset[0]+B.offsetWidth)
},withinIncludingScrolloffsets:function(B,A,D){var C=this.realOffset(B);
this.xcomp=A+C[0]-this.deltaX;
this.ycomp=D+C[1]-this.deltaY;
this.offset=this.cumulativeOffset(B);
return(this.ycomp>=this.offset[1]&&this.ycomp<this.offset[1]+B.offsetHeight&&this.xcomp>=this.offset[0]&&this.xcomp<this.offset[0]+B.offsetWidth)
},overlap:function(B,A){if(!B){return 0
}if(B=="vertical"){return((this.offset[1]+A.offsetHeight)-this.ycomp)/A.offsetHeight
}if(B=="horizontal"){return((this.offset[0]+A.offsetWidth)-this.xcomp)/A.offsetWidth
}},page:function(D){var A=0,C=0;
var B=D;
do{A+=B.offsetTop||0;
C+=B.offsetLeft||0;
if(B.offsetParent==document.body){if(Element.getStyle(B,"position")=="absolute"){break
}}}while(B=B.offsetParent);
B=D;
do{if(!window.opera||B.tagName=="BODY"){A-=B.scrollTop||0;
C-=B.scrollLeft||0
}}while(B=B.parentNode);
return[C,A]
},clone:function(C,E){var A=Object.extend({setLeft:true,setTop:true,setWidth:true,setHeight:true,offsetTop:0,offsetLeft:0},arguments[2]||{});
C=$(C);
var D=Position.page(C);
E=$(E);
var F=[0,0];
var B=null;
if(Element.getStyle(E,"position")=="absolute"){B=Position.offsetParent(E);
F=Position.page(B)
}if(B==document.body){F[0]-=document.body.offsetLeft;
F[1]-=document.body.offsetTop
}if(A.setLeft){E.style.left=(D[0]-F[0]+A.offsetLeft)+"px"
}if(A.setTop){E.style.top=(D[1]-F[1]+A.offsetTop)+"px"
}if(A.setWidth){E.style.width=C.offsetWidth+"px"
}if(A.setHeight){E.style.height=C.offsetHeight+"px"
}},absolutize:function(B){B=$(B);
if(B.style.position=="absolute"){return 
}Position.prepare();
var D=Position.positionedOffset(B);
var F=D[1];
var E=D[0];
var C=B.clientWidth;
var A=B.clientHeight;
B._originalLeft=E-parseFloat(B.style.left||0);
B._originalTop=F-parseFloat(B.style.top||0);
B._originalWidth=B.style.width;
B._originalHeight=B.style.height;
B.style.position="absolute";
B.style.top=F+"px";
B.style.left=E+"px";
B.style.width=C+"px";
B.style.height=A+"px"
},relativize:function(A){A=$(A);
if(A.style.position=="relative"){return 
}Position.prepare();
A.style.position="relative";
var C=parseFloat(A.style.top||0)-(A._originalTop||0);
var B=parseFloat(A.style.left||0)-(A._originalLeft||0);
A.style.top=C+"px";
A.style.left=B+"px";
A.style.height=A._originalHeight;
A.style.width=A._originalWidth
}};
if(Prototype.Browser.WebKit){Position.cumulativeOffset=function(B){var A=0,C=0;
do{A+=B.offsetTop||0;
C+=B.offsetLeft||0;
if(B.offsetParent==document.body){if(Element.getStyle(B,"position")=="absolute"){break
}}B=B.offsetParent
}while(B);
return[C,A]
}
}Element.addMethods();
var Scriptaculous={Version:"1.7.1_beta3",require:function(A){document.write('<script type="text/javascript" src="'+A+'"><\/script>')
},REQUIRED_PROTOTYPE:"1.5.1",load:function(){function A(B){var C=B.split(".");
return parseInt(C[0])*100000+parseInt(C[1])*1000+parseInt(C[2])
}if((typeof Prototype=="undefined")||(typeof Element=="undefined")||(typeof Element.Methods=="undefined")||(A(Prototype.Version)<A(Scriptaculous.REQUIRED_PROTOTYPE))){throw ("script.aculo.us requires the Prototype JavaScript framework >= "+Scriptaculous.REQUIRED_PROTOTYPE)
}$A(document.getElementsByTagName("script")).findAll(function(B){return(B.src&&B.src.match(/scriptaculous\.js(\?.*)?$/))
}).each(function(C){var D=C.src.replace(/scriptaculous\.js(\?.*)?$/,"");
var B=C.src.match(/\?.*load=([a-z,]*)/);
(B?B[1]:"builder,effects,dragdrop,controls,slider,sound").split(",").each(function(E){Scriptaculous.require(D+E+".js")
})
})
}};
Scriptaculous.load();
String.prototype.parseColor=function(){var A="#";
if(this.slice(0,4)=="rgb("){var C=this.slice(4,this.length-1).split(",");
var B=0;
do{A+=parseInt(C[B]).toColorPart()
}while(++B<3)
}else{if(this.slice(0,1)=="#"){if(this.length==4){for(var B=1;
B<4;
B++){A+=(this.charAt(B)+this.charAt(B)).toLowerCase()
}}if(this.length==7){A=this.toLowerCase()
}}}return(A.length==7?A:(arguments[0]||this))
};
Element.collectTextNodes=function(A){return $A($(A).childNodes).collect(function(B){return(B.nodeType==3?B.nodeValue:(B.hasChildNodes()?Element.collectTextNodes(B):""))
}).flatten().join("")
};
Element.collectTextNodesIgnoreClass=function(A,B){return $A($(A).childNodes).collect(function(C){return(C.nodeType==3?C.nodeValue:((C.hasChildNodes()&&!Element.hasClassName(C,B))?Element.collectTextNodesIgnoreClass(C,B):""))
}).flatten().join("")
};
Element.setContentZoom=function(A,B){A=$(A);
A.setStyle({fontSize:(B/100)+"em"});
if(Prototype.Browser.WebKit){window.scrollBy(0,0)
}return A
};
Element.getInlineOpacity=function(A){return $(A).style.opacity||""
};
Element.forceRerendering=function(A){try{A=$(A);
var C=document.createTextNode(" ");
A.appendChild(C);
A.removeChild(C)
}catch(B){}};
Array.prototype.call=function(){var A=arguments;
this.each(function(B){B.apply(this,A)
})
};
var Effect={_elementDoesNotExistError:{name:"ElementDoesNotExistError",message:"The specified DOM element does not exist, but is required for this effect to operate"},tagifyText:function(A){if(typeof Builder=="undefined"){throw ("Effect.tagifyText requires including script.aculo.us' builder.js library")
}var B="position:relative";
if(Prototype.Browser.IE){B+=";zoom:1"
}A=$(A);
$A(A.childNodes).each(function(C){if(C.nodeType==3){C.nodeValue.toArray().each(function(D){A.insertBefore(Builder.node("span",{style:B},D==" "?String.fromCharCode(160):D),C)
});
Element.remove(C)
}})
},multiple:function(B,C){var E;
if(((typeof B=="object")||(typeof B=="function"))&&(B.length)){E=B
}else{E=$(B).childNodes
}var A=Object.extend({speed:0.1,delay:0},arguments[2]||{});
var D=A.delay;
$A(E).each(function(G,F){new C(G,Object.extend(A,{delay:F*A.speed+D}))
})
},PAIRS:{slide:["SlideDown","SlideUp"],blind:["BlindDown","BlindUp"],appear:["Appear","Fade"]},toggle:function(B,C){B=$(B);
C=(C||"appear").toLowerCase();
var A=Object.extend({queue:{position:"end",scope:(B.id||"global"),limit:1}},arguments[2]||{});
Effect[B.visible()?Effect.PAIRS[C][1]:Effect.PAIRS[C][0]](B,A)
}};
var Effect2=Effect;
Effect.Transitions={linear:Prototype.K,sinoidal:function(A){return(-Math.cos(A*Math.PI)/2)+0.5
},reverse:function(A){return 1-A
},flicker:function(A){var A=((-Math.cos(A*Math.PI)/4)+0.75)+Math.random()/4;
return(A>1?1:A)
},wobble:function(A){return(-Math.cos(A*Math.PI*(9*A))/2)+0.5
},pulse:function(B,A){A=A||5;
return(Math.round((B%(1/A))*A)==0?((B*A*2)-Math.floor(B*A*2)):1-((B*A*2)-Math.floor(B*A*2)))
},none:function(A){return 0
},full:function(A){return 1
}};
Effect.ScopedQueue=Class.create();
Object.extend(Object.extend(Effect.ScopedQueue.prototype,Enumerable),{initialize:function(){this.effects=[];
this.interval=null
},_each:function(A){this.effects._each(A)
},add:function(B){var C=new Date().getTime();
var A=(typeof B.options.queue=="string")?B.options.queue:B.options.queue.position;
switch(A){case"front":this.effects.findAll(function(D){return D.state=="idle"
}).each(function(D){D.startOn+=B.finishOn;
D.finishOn+=B.finishOn
});
break;
case"with-last":C=this.effects.pluck("startOn").max()||C;
break;
case"end":C=this.effects.pluck("finishOn").max()||C;
break
}B.startOn+=C;
B.finishOn+=C;
if(!B.options.queue.limit||(this.effects.length<B.options.queue.limit)){this.effects.push(B)
}if(!this.interval){this.interval=setInterval(this.loop.bind(this),15)
}},remove:function(A){this.effects=this.effects.reject(function(B){return B==A
});
if(this.effects.length==0){clearInterval(this.interval);
this.interval=null
}},loop:function(){var C=new Date().getTime();
for(var B=0,A=this.effects.length;
B<A;
B++){this.effects[B]&&this.effects[B].loop(C)
}}});
Effect.Queues={instances:$H(),get:function(A){if(typeof A!="string"){return A
}if(!this.instances[A]){this.instances[A]=new Effect.ScopedQueue()
}return this.instances[A]
}};
Effect.Queue=Effect.Queues.get("global");
Effect.DefaultOptions={transition:Effect.Transitions.sinoidal,duration:1,fps:100,sync:false,from:0,to:1,delay:0,queue:"parallel"};
Effect.Base=function(){};
Effect.Base.prototype={position:null,start:function(options){function codeForEvent(options,eventName){return((options[eventName+"Internal"]?"this.options."+eventName+"Internal(this);":"")+(options[eventName]?"this.options."+eventName+"(this);":""))
}if(options.transition===false){options.transition=Effect.Transitions.linear
}this.options=Object.extend(Object.extend({},Effect.DefaultOptions),options||{});
this.currentFrame=0;
this.state="idle";
this.startOn=this.options.delay*1000;
this.finishOn=this.startOn+(this.options.duration*1000);
this.fromToDelta=this.options.to-this.options.from;
this.totalTime=this.finishOn-this.startOn;
this.totalFrames=this.options.fps*this.options.duration;
eval('this.render = function(pos){ if(this.state=="idle"){this.state="running";'+codeForEvent(options,"beforeSetup")+(this.setup?"this.setup();":"")+codeForEvent(options,"afterSetup")+'};if(this.state=="running"){pos=this.options.transition(pos)*'+this.fromToDelta+"+"+this.options.from+";this.position=pos;"+codeForEvent(options,"beforeUpdate")+(this.update?"this.update(pos);":"")+codeForEvent(options,"afterUpdate")+"}}");
this.event("beforeStart");
if(!this.options.sync){Effect.Queues.get(typeof this.options.queue=="string"?"global":this.options.queue.scope).add(this)
}},loop:function(C){if(C>=this.startOn){if(C>=this.finishOn){this.render(1);
this.cancel();
this.event("beforeFinish");
if(this.finish){this.finish()
}this.event("afterFinish");
return 
}var B=(C-this.startOn)/this.totalTime,A=Math.round(B*this.totalFrames);
if(A>this.currentFrame){this.render(B);
this.currentFrame=A
}}},cancel:function(){if(!this.options.sync){Effect.Queues.get(typeof this.options.queue=="string"?"global":this.options.queue.scope).remove(this)
}this.state="finished"
},event:function(A){if(this.options[A+"Internal"]){this.options[A+"Internal"](this)
}if(this.options[A]){this.options[A](this)
}},inspect:function(){var A=$H();
for(property in this){if(typeof this[property]!="function"){A[property]=this[property]
}}return"#<Effect:"+A.inspect()+",options:"+$H(this.options).inspect()+">"
}};
Effect.Parallel=Class.create();
Object.extend(Object.extend(Effect.Parallel.prototype,Effect.Base.prototype),{initialize:function(A){this.effects=A||[];
this.start(arguments[1])
},update:function(A){this.effects.invoke("render",A)
},finish:function(A){this.effects.each(function(B){B.render(1);
B.cancel();
B.event("beforeFinish");
if(B.finish){B.finish(A)
}B.event("afterFinish")
})
}});
Effect.Event=Class.create();
Object.extend(Object.extend(Effect.Event.prototype,Effect.Base.prototype),{initialize:function(){var A=Object.extend({duration:0},arguments[0]||{});
this.start(A)
},update:Prototype.emptyFunction});
Effect.Opacity=Class.create();
Object.extend(Object.extend(Effect.Opacity.prototype,Effect.Base.prototype),{initialize:function(B){this.element=$(B);
if(!this.element){throw (Effect._elementDoesNotExistError)
}if(Prototype.Browser.IE&&(!this.element.currentStyle.hasLayout)){this.element.setStyle({zoom:1})
}var A=Object.extend({from:this.element.getOpacity()||0,to:1},arguments[1]||{});
this.start(A)
},update:function(A){this.element.setOpacity(A)
}});
Effect.Move=Class.create();
Object.extend(Object.extend(Effect.Move.prototype,Effect.Base.prototype),{initialize:function(B){this.element=$(B);
if(!this.element){throw (Effect._elementDoesNotExistError)
}var A=Object.extend({x:0,y:0,mode:"relative"},arguments[1]||{});
this.start(A)
},setup:function(){this.element.makePositioned();
this.originalLeft=parseFloat(this.element.getStyle("left")||"0");
this.originalTop=parseFloat(this.element.getStyle("top")||"0");
if(this.options.mode=="absolute"){this.options.x=this.options.x-this.originalLeft;
this.options.y=this.options.y-this.originalTop
}},update:function(A){this.element.setStyle({left:Math.round(this.options.x*A+this.originalLeft)+"px",top:Math.round(this.options.y*A+this.originalTop)+"px"})
}});
Effect.MoveBy=function(B,A,C){return new Effect.Move(B,Object.extend({x:C,y:A},arguments[3]||{}))
};
Effect.Scale=Class.create();
Object.extend(Object.extend(Effect.Scale.prototype,Effect.Base.prototype),{initialize:function(B,C){this.element=$(B);
if(!this.element){throw (Effect._elementDoesNotExistError)
}var A=Object.extend({scaleX:true,scaleY:true,scaleContent:true,scaleFromCenter:false,scaleMode:"box",scaleFrom:100,scaleTo:C},arguments[2]||{});
this.start(A)
},setup:function(){this.restoreAfterFinish=this.options.restoreAfterFinish||false;
this.elementPositioning=this.element.getStyle("position");
this.originalStyle={};
["top","left","width","height","fontSize"].each(function(B){this.originalStyle[B]=this.element.style[B]
}.bind(this));
this.originalTop=this.element.offsetTop;
this.originalLeft=this.element.offsetLeft;
var A=this.element.getStyle("font-size")||"100%";
["em","px","%","pt"].each(function(B){if(A.indexOf(B)>0){this.fontSize=parseFloat(A);
this.fontSizeType=B
}}.bind(this));
this.factor=(this.options.scaleTo-this.options.scaleFrom)/100;
this.dims=null;
if(this.options.scaleMode=="box"){this.dims=[this.element.offsetHeight,this.element.offsetWidth]
}if(/^content/.test(this.options.scaleMode)){this.dims=[this.element.scrollHeight,this.element.scrollWidth]
}if(!this.dims){this.dims=[this.options.scaleMode.originalHeight,this.options.scaleMode.originalWidth]
}},update:function(A){var B=(this.options.scaleFrom/100)+(this.factor*A);
if(this.options.scaleContent&&this.fontSize){this.element.setStyle({fontSize:this.fontSize*B+this.fontSizeType})
}this.setDimensions(this.dims[0]*B,this.dims[1]*B)
},finish:function(A){if(this.restoreAfterFinish){this.element.setStyle(this.originalStyle)
}},setDimensions:function(A,D){var E={};
if(this.options.scaleX){E.width=Math.round(D)+"px"
}if(this.options.scaleY){E.height=Math.round(A)+"px"
}if(this.options.scaleFromCenter){var C=(A-this.dims[0])/2;
var B=(D-this.dims[1])/2;
if(this.elementPositioning=="absolute"){if(this.options.scaleY){E.top=this.originalTop-C+"px"
}if(this.options.scaleX){E.left=this.originalLeft-B+"px"
}}else{if(this.options.scaleY){E.top=-C+"px"
}if(this.options.scaleX){E.left=-B+"px"
}}}this.element.setStyle(E)
}});
Effect.Highlight=Class.create();
Object.extend(Object.extend(Effect.Highlight.prototype,Effect.Base.prototype),{initialize:function(B){this.element=$(B);
if(!this.element){throw (Effect._elementDoesNotExistError)
}var A=Object.extend({startcolor:"#ffff99"},arguments[1]||{});
this.start(A)
},setup:function(){if(this.element.getStyle("display")=="none"){this.cancel();
return 
}this.oldStyle={};
if(!this.options.keepBackgroundImage){this.oldStyle.backgroundImage=this.element.getStyle("background-image");
this.element.setStyle({backgroundImage:"none"})
}if(!this.options.endcolor){this.options.endcolor=this.element.getStyle("background-color").parseColor("#ffffff")
}if(!this.options.restorecolor){this.options.restorecolor=this.element.getStyle("background-color")
}this._base=$R(0,2).map(function(A){return parseInt(this.options.startcolor.slice(A*2+1,A*2+3),16)
}.bind(this));
this._delta=$R(0,2).map(function(A){return parseInt(this.options.endcolor.slice(A*2+1,A*2+3),16)-this._base[A]
}.bind(this))
},update:function(A){this.element.setStyle({backgroundColor:$R(0,2).inject("#",function(B,C,D){return B+(Math.round(this._base[D]+(this._delta[D]*A)).toColorPart())
}.bind(this))})
},finish:function(){this.element.setStyle(Object.extend(this.oldStyle,{backgroundColor:this.options.restorecolor}))
}});
Effect.ScrollTo=Class.create();
Object.extend(Object.extend(Effect.ScrollTo.prototype,Effect.Base.prototype),{initialize:function(A){this.element=$(A);
this.start(arguments[1]||{})
},setup:function(){Position.prepare();
var B=Position.cumulativeOffset(this.element);
if(this.options.offset){B[1]+=this.options.offset
}var A=window.innerHeight?window.height-window.innerHeight:document.body.scrollHeight-(document.documentElement.clientHeight?document.documentElement.clientHeight:document.body.clientHeight);
this.scrollStart=Position.deltaY;
this.delta=(B[1]>A?A:B[1])-this.scrollStart
},update:function(A){Position.prepare();
window.scrollTo(Position.deltaX,this.scrollStart+(A*this.delta))
}});
Effect.Fade=function(C){C=$(C);
var A=C.getInlineOpacity();
var B=Object.extend({from:C.getOpacity()||1,to:0,afterFinishInternal:function(D){if(D.options.to!=0){return 
}D.element.hide().setStyle({opacity:A})
}},arguments[1]||{});
return new Effect.Opacity(C,B)
};
Effect.Appear=function(B){B=$(B);
var A=Object.extend({from:(B.getStyle("display")=="none"?0:B.getOpacity()||0),to:1,afterFinishInternal:function(C){C.element.forceRerendering()
},beforeSetup:function(C){C.element.setOpacity(C.options.from).show()
}},arguments[1]||{});
return new Effect.Opacity(B,A)
};
Effect.Puff=function(B){B=$(B);
var A={opacity:B.getInlineOpacity(),position:B.getStyle("position"),top:B.style.top,left:B.style.left,width:B.style.width,height:B.style.height};
return new Effect.Parallel([new Effect.Scale(B,200,{sync:true,scaleFromCenter:true,scaleContent:true,restoreAfterFinish:true}),new Effect.Opacity(B,{sync:true,to:0})],Object.extend({duration:1,beforeSetupInternal:function(C){Position.absolutize(C.effects[0].element)
},afterFinishInternal:function(C){C.effects[0].element.hide().setStyle(A)
}},arguments[1]||{}))
};
Effect.BlindUp=function(A){A=$(A);
A.makeClipping();
return new Effect.Scale(A,0,Object.extend({scaleContent:false,scaleX:false,restoreAfterFinish:true,afterFinishInternal:function(B){B.element.hide().undoClipping()
}},arguments[1]||{}))
};
Effect.BlindDown=function(B){B=$(B);
var A=B.getDimensions();
return new Effect.Scale(B,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:0,scaleMode:{originalHeight:A.height,originalWidth:A.width},restoreAfterFinish:true,afterSetup:function(C){C.element.makeClipping().setStyle({height:"0px"}).show()
},afterFinishInternal:function(C){C.element.undoClipping()
}},arguments[1]||{}))
};
Effect.SwitchOff=function(B){B=$(B);
var A=B.getInlineOpacity();
return new Effect.Appear(B,Object.extend({duration:0.4,from:0,transition:Effect.Transitions.flicker,afterFinishInternal:function(C){new Effect.Scale(C.element,1,{duration:0.3,scaleFromCenter:true,scaleX:false,scaleContent:false,restoreAfterFinish:true,beforeSetup:function(D){D.element.makePositioned().makeClipping()
},afterFinishInternal:function(D){D.element.hide().undoClipping().undoPositioned().setStyle({opacity:A})
}})
}},arguments[1]||{}))
};
Effect.DropOut=function(B){B=$(B);
var A={top:B.getStyle("top"),left:B.getStyle("left"),opacity:B.getInlineOpacity()};
return new Effect.Parallel([new Effect.Move(B,{x:0,y:100,sync:true}),new Effect.Opacity(B,{sync:true,to:0})],Object.extend({duration:0.5,beforeSetup:function(C){C.effects[0].element.makePositioned()
},afterFinishInternal:function(C){C.effects[0].element.hide().undoPositioned().setStyle(A)
}},arguments[1]||{}))
};
Effect.Shake=function(B){B=$(B);
var A={top:B.getStyle("top"),left:B.getStyle("left")};
return new Effect.Move(B,{x:20,y:0,duration:0.05,afterFinishInternal:function(C){new Effect.Move(C.element,{x:-40,y:0,duration:0.1,afterFinishInternal:function(D){new Effect.Move(D.element,{x:40,y:0,duration:0.1,afterFinishInternal:function(E){new Effect.Move(E.element,{x:-40,y:0,duration:0.1,afterFinishInternal:function(F){new Effect.Move(F.element,{x:40,y:0,duration:0.1,afterFinishInternal:function(G){new Effect.Move(G.element,{x:-20,y:0,duration:0.05,afterFinishInternal:function(H){H.element.undoPositioned().setStyle(A)
}})
}})
}})
}})
}})
}})
};
Effect.SlideDown=function(C){C=$(C).cleanWhitespace();
var A=C.down().getStyle("bottom");
var B=C.getDimensions();
return new Effect.Scale(C,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:window.opera?0:1,scaleMode:{originalHeight:B.height,originalWidth:B.width},restoreAfterFinish:true,afterSetup:function(D){D.element.makePositioned();
D.element.down().makePositioned();
if(window.opera){D.element.setStyle({top:""})
}D.element.makeClipping().setStyle({height:"0px"}).show()
},afterUpdateInternal:function(D){D.element.down().setStyle({bottom:(D.dims[0]-D.element.clientHeight)+"px"})
},afterFinishInternal:function(D){D.element.undoClipping().undoPositioned();
D.element.down().undoPositioned().setStyle({bottom:A})
}},arguments[1]||{}))
};
Effect.SlideUp=function(B){B=$(B).cleanWhitespace();
var A=B.down().getStyle("bottom");
return new Effect.Scale(B,window.opera?0:1,Object.extend({scaleContent:false,scaleX:false,scaleMode:"box",scaleFrom:100,restoreAfterFinish:true,beforeStartInternal:function(C){C.element.makePositioned();
C.element.down().makePositioned();
if(window.opera){C.element.setStyle({top:""})
}C.element.makeClipping().show()
},afterUpdateInternal:function(C){C.element.down().setStyle({bottom:(C.dims[0]-C.element.clientHeight)+"px"})
},afterFinishInternal:function(C){C.element.hide().undoClipping().undoPositioned().setStyle({bottom:A});
C.element.down().undoPositioned()
}},arguments[1]||{}))
};
Effect.Squish=function(A){return new Effect.Scale(A,window.opera?1:0,{restoreAfterFinish:true,beforeSetup:function(B){B.element.makeClipping()
},afterFinishInternal:function(B){B.element.hide().undoClipping()
}})
};
Effect.Grow=function(C){C=$(C);
var B=Object.extend({direction:"center",moveTransition:Effect.Transitions.sinoidal,scaleTransition:Effect.Transitions.sinoidal,opacityTransition:Effect.Transitions.full},arguments[1]||{});
var A={top:C.style.top,left:C.style.left,height:C.style.height,width:C.style.width,opacity:C.getInlineOpacity()};
var G=C.getDimensions();
var H,F;
var E,D;
switch(B.direction){case"top-left":H=F=E=D=0;
break;
case"top-right":H=G.width;
F=D=0;
E=-G.width;
break;
case"bottom-left":H=E=0;
F=G.height;
D=-G.height;
break;
case"bottom-right":H=G.width;
F=G.height;
E=-G.width;
D=-G.height;
break;
case"center":H=G.width/2;
F=G.height/2;
E=-G.width/2;
D=-G.height/2;
break
}return new Effect.Move(C,{x:H,y:F,duration:0.01,beforeSetup:function(I){I.element.hide().makeClipping().makePositioned()
},afterFinishInternal:function(I){new Effect.Parallel([new Effect.Opacity(I.element,{sync:true,to:1,from:0,transition:B.opacityTransition}),new Effect.Move(I.element,{x:E,y:D,sync:true,transition:B.moveTransition}),new Effect.Scale(I.element,100,{scaleMode:{originalHeight:G.height,originalWidth:G.width},sync:true,scaleFrom:window.opera?1:0,transition:B.scaleTransition,restoreAfterFinish:true})],Object.extend({beforeSetup:function(J){J.effects[0].element.setStyle({height:"0px"}).show()
},afterFinishInternal:function(J){J.effects[0].element.undoClipping().undoPositioned().setStyle(A)
}},B))
}})
};
Effect.Shrink=function(C){C=$(C);
var B=Object.extend({direction:"center",moveTransition:Effect.Transitions.sinoidal,scaleTransition:Effect.Transitions.sinoidal,opacityTransition:Effect.Transitions.none},arguments[1]||{});
var A={top:C.style.top,left:C.style.left,height:C.style.height,width:C.style.width,opacity:C.getInlineOpacity()};
var F=C.getDimensions();
var E,D;
switch(B.direction){case"top-left":E=D=0;
break;
case"top-right":E=F.width;
D=0;
break;
case"bottom-left":E=0;
D=F.height;
break;
case"bottom-right":E=F.width;
D=F.height;
break;
case"center":E=F.width/2;
D=F.height/2;
break
}return new Effect.Parallel([new Effect.Opacity(C,{sync:true,to:0,from:1,transition:B.opacityTransition}),new Effect.Scale(C,window.opera?1:0,{sync:true,transition:B.scaleTransition,restoreAfterFinish:true}),new Effect.Move(C,{x:E,y:D,sync:true,transition:B.moveTransition})],Object.extend({beforeStartInternal:function(G){G.effects[0].element.makePositioned().makeClipping()
},afterFinishInternal:function(G){G.effects[0].element.hide().undoClipping().undoPositioned().setStyle(A)
}},B))
};
Effect.Pulsate=function(C){C=$(C);
var B=arguments[1]||{};
var A=C.getInlineOpacity();
var E=B.transition||Effect.Transitions.sinoidal;
var D=function(F){return E(1-Effect.Transitions.pulse(F,B.pulses))
};
D.bind(E);
return new Effect.Opacity(C,Object.extend(Object.extend({duration:2,from:0,afterFinishInternal:function(F){F.element.setStyle({opacity:A})
}},B),{transition:D}))
};
Effect.Fold=function(B){B=$(B);
var A={top:B.style.top,left:B.style.left,width:B.style.width,height:B.style.height};
B.makeClipping();
return new Effect.Scale(B,5,Object.extend({scaleContent:false,scaleX:false,afterFinishInternal:function(C){new Effect.Scale(B,1,{scaleContent:false,scaleY:false,afterFinishInternal:function(D){D.element.hide().undoClipping().setStyle(A)
}})
}},arguments[1]||{}))
};
Effect.Morph=Class.create();
Object.extend(Object.extend(Effect.Morph.prototype,Effect.Base.prototype),{initialize:function(C){this.element=$(C);
if(!this.element){throw (Effect._elementDoesNotExistError)
}var B=Object.extend({style:{}},arguments[1]||{});
if(typeof B.style=="string"){if(B.style.indexOf(":")==-1){var D="",A="."+B.style;
$A(document.styleSheets).reverse().each(function(E){if(E.cssRules){cssRules=E.cssRules
}else{if(E.rules){cssRules=E.rules
}}$A(cssRules).reverse().each(function(F){if(A==F.selectorText){D=F.style.cssText;
throw $break
}});
if(D){throw $break
}});
this.style=D.parseStyle();
B.afterFinishInternal=function(E){E.element.addClassName(E.options.style);
E.transforms.each(function(F){if(F.style!="opacity"){E.element.style[F.style]=""
}})
}
}else{this.style=B.style.parseStyle()
}}else{this.style=$H(B.style)
}this.start(B)
},setup:function(){function A(B){if(!B||["rgba(0, 0, 0, 0)","transparent"].include(B)){B="#ffffff"
}B=B.parseColor();
return $R(0,2).map(function(C){return parseInt(B.slice(C*2+1,C*2+3),16)
})
}this.transforms=this.style.map(function(G){var F=G[0],E=G[1],D=null;
if(E.parseColor("#zzzzzz")!="#zzzzzz"){E=E.parseColor();
D="color"
}else{if(F=="opacity"){E=parseFloat(E);
if(Prototype.Browser.IE&&(!this.element.currentStyle.hasLayout)){this.element.setStyle({zoom:1})
}}else{if(Element.CSS_LENGTH.test(E)){var C=E.match(/^([\+\-]?[0-9\.]+)(.*)$/);
E=parseFloat(C[1]);
D=(C.length==3)?C[2]:null
}}}var B=this.element.getStyle(F);
return{style:F.camelize(),originalValue:D=="color"?A(B):parseFloat(B||0),targetValue:D=="color"?A(E):E,unit:D}
}.bind(this)).reject(function(B){return((B.originalValue==B.targetValue)||(B.unit!="color"&&(isNaN(B.originalValue)||isNaN(B.targetValue))))
})
},update:function(A){var D={},B,C=this.transforms.length;
while(C--){D[(B=this.transforms[C]).style]=B.unit=="color"?"#"+(Math.round(B.originalValue[0]+(B.targetValue[0]-B.originalValue[0])*A)).toColorPart()+(Math.round(B.originalValue[1]+(B.targetValue[1]-B.originalValue[1])*A)).toColorPart()+(Math.round(B.originalValue[2]+(B.targetValue[2]-B.originalValue[2])*A)).toColorPart():B.originalValue+Math.round(((B.targetValue-B.originalValue)*A)*1000)/1000+B.unit
}this.element.setStyle(D,true)
}});
Effect.Transform=Class.create();
Object.extend(Effect.Transform.prototype,{initialize:function(A){this.tracks=[];
this.options=arguments[1]||{};
this.addTracks(A)
},addTracks:function(A){A.each(function(B){var C=$H(B).values().first();
this.tracks.push($H({ids:$H(B).keys().first(),effect:Effect.Morph,options:{style:C}}))
}.bind(this));
return this
},play:function(){return new Effect.Parallel(this.tracks.map(function(A){var B=[$(A.ids)||$$(A.ids)].flatten();
return B.map(function(C){return new A.effect(C,Object.extend({sync:true},A.options))
})
}).flatten(),this.options)
}});
Element.CSS_PROPERTIES=$w("backgroundColor backgroundPosition borderBottomColor borderBottomStyle borderBottomWidth borderLeftColor borderLeftStyle borderLeftWidth borderRightColor borderRightStyle borderRightWidth borderSpacing borderTopColor borderTopStyle borderTopWidth bottom clip color fontSize fontWeight height left letterSpacing lineHeight marginBottom marginLeft marginRight marginTop markerOffset maxHeight maxWidth minHeight minWidth opacity outlineColor outlineOffset outlineWidth paddingBottom paddingLeft paddingRight paddingTop right textIndent top width wordSpacing zIndex");
Element.CSS_LENGTH=/^(([\+\-]?[0-9\.]+)(em|ex|px|in|cm|mm|pt|pc|\%))|0$/;
String.prototype.parseStyle=function(){var B=document.createElement("div");
B.innerHTML='<div style="'+this+'"></div>';
var C=B.childNodes[0].style,A=$H();
Element.CSS_PROPERTIES.each(function(D){if(C[D]){A[D]=C[D]
}});
if(Prototype.Browser.IE&&this.indexOf("opacity")>-1){A.opacity=this.match(/opacity:\s*((?:0|1)?(?:\.\d*)?)/)[1]
}return A
};
Element.morph=function(A,B){new Effect.Morph(A,Object.extend({style:B},arguments[2]||{}));
return A
};
["getInlineOpacity","forceRerendering","setContentZoom","collectTextNodes","collectTextNodesIgnoreClass","morph"].each(function(A){Element.Methods[A]=Element[A]
});
Element.Methods.visualEffect=function(B,C,A){s=C.dasherize().camelize();
effect_class=s.charAt(0).toUpperCase()+s.substring(1);
new Effect[effect_class](B,A);
return $(B)
};
Element.addMethods();
if(typeof Effect=="undefined"){throw ("dragdrop.js requires including script.aculo.us' effects.js library")
}var Droppables={drops:[],remove:function(A){this.drops=this.drops.reject(function(B){return B.element==$(A)
})
},add:function(B){B=$(B);
var A=Object.extend({greedy:true,hoverclass:null,tree:false},arguments[1]||{});
if(A.containment){A._containers=[];
var C=A.containment;
if((typeof C=="object")&&(C.constructor==Array)){C.each(function(D){A._containers.push($(D))
})
}else{A._containers.push($(C))
}}if(A.accept){A.accept=[A.accept].flatten()
}Element.makePositioned(B);
A.element=B;
this.drops.push(A)
},findDeepestChild:function(A){deepest=A[0];
for(i=1;
i<A.length;
++i){if(Element.isParent(A[i].element,deepest.element)){deepest=A[i]
}}return deepest
},isContained:function(B,A){var C;
if(A.tree){C=B.treeNode
}else{C=B.parentNode
}return A._containers.detect(function(D){return C==D
})
},isAffected:function(A,C,B){return((B.element!=C)&&((!B._containers)||this.isContained(C,B))&&((!B.accept)||(Element.classNames(C).detect(function(D){return B.accept.include(D)
})))&&Position.within(B.element,A[0],A[1]))
},deactivate:function(A){if(A.hoverclass){Element.removeClassName(A.element,A.hoverclass)
}this.last_active=null
},activate:function(A){if(A.hoverclass){Element.addClassName(A.element,A.hoverclass)
}this.last_active=A
},show:function(A,B){if(!this.drops.length){return 
}var C=[];
if(this.last_active){this.deactivate(this.last_active)
}this.drops.each(function(D){if(Droppables.isAffected(A,B,D)){C.push(D)
}});
if(C.length>0){drop=Droppables.findDeepestChild(C);
Position.within(drop.element,A[0],A[1]);
if(drop.onHover){drop.onHover(B,drop.element,Position.overlap(drop.overlap,drop.element))
}Droppables.activate(drop)
}},fire:function(B,A){if(!this.last_active){return 
}Position.prepare();
if(this.isAffected([Event.pointerX(B),Event.pointerY(B)],A,this.last_active)){if(this.last_active.onDrop){this.last_active.onDrop(A,this.last_active.element,B);
return true
}}},reset:function(){if(this.last_active){this.deactivate(this.last_active)
}}};
var Draggables={drags:[],observers:[],register:function(A){if(this.drags.length==0){this.eventMouseUp=this.endDrag.bindAsEventListener(this);
this.eventMouseMove=this.updateDrag.bindAsEventListener(this);
this.eventKeypress=this.keyPress.bindAsEventListener(this);
Event.observe(document,"mouseup",this.eventMouseUp);
Event.observe(document,"mousemove",this.eventMouseMove);
Event.observe(document,"keypress",this.eventKeypress)
}this.drags.push(A)
},unregister:function(A){this.drags=this.drags.reject(function(B){return B==A
});
if(this.drags.length==0){Event.stopObserving(document,"mouseup",this.eventMouseUp);
Event.stopObserving(document,"mousemove",this.eventMouseMove);
Event.stopObserving(document,"keypress",this.eventKeypress)
}},activate:function(A){if(A.options.delay){this._timeout=setTimeout(function(){Draggables._timeout=null;
window.focus();
Draggables.activeDraggable=A
}.bind(this),A.options.delay)
}else{window.focus();
this.activeDraggable=A
}},deactivate:function(){this.activeDraggable=null
},updateDrag:function(A){if(!this.activeDraggable){return 
}var B=[Event.pointerX(A),Event.pointerY(A)];
if(this._lastPointer&&(this._lastPointer.inspect()==B.inspect())){return 
}this._lastPointer=B;
this.activeDraggable.updateDrag(A,B)
},endDrag:function(A){if(this._timeout){clearTimeout(this._timeout);
this._timeout=null
}if(!this.activeDraggable){return 
}this._lastPointer=null;
this.activeDraggable.endDrag(A);
this.activeDraggable=null
},keyPress:function(A){if(this.activeDraggable){this.activeDraggable.keyPress(A)
}},addObserver:function(A){this.observers.push(A);
this._cacheObserverCallbacks()
},removeObserver:function(A){this.observers=this.observers.reject(function(B){return B.element==A
});
this._cacheObserverCallbacks()
},notify:function(B,A,C){if(this[B+"Count"]>0){this.observers.each(function(D){if(D[B]){D[B](B,A,C)
}})
}if(A.options[B]){A.options[B](A,C)
}},_cacheObserverCallbacks:function(){["onStart","onEnd","onDrag"].each(function(A){Draggables[A+"Count"]=Draggables.observers.select(function(B){return B[A]
}).length
})
}};
var Draggable=Class.create();
Draggable._dragging={};
Draggable.prototype={initialize:function(B){var C={handle:false,reverteffect:function(F,E,D){var G=Math.sqrt(Math.abs(E^2)+Math.abs(D^2))*0.02;
new Effect.Move(F,{x:-D,y:-E,duration:G,queue:{scope:"_draggable",position:"end"}})
},endeffect:function(E){var D=typeof E._opacity=="number"?E._opacity:1;
new Effect.Opacity(E,{duration:0.2,from:0.7,to:D,queue:{scope:"_draggable",position:"end"},afterFinish:function(){Draggable._dragging[E]=false
}})
},zindex:1000,revert:false,quiet:false,scroll:false,scrollSensitivity:20,scrollSpeed:15,snap:false,delay:0};
if(!arguments[1]||typeof arguments[1].endeffect=="undefined"){Object.extend(C,{starteffect:function(D){D._opacity=Element.getOpacity(D);
Draggable._dragging[D]=true;
new Effect.Opacity(D,{duration:0.2,from:D._opacity,to:0.7})
}})
}var A=Object.extend(C,arguments[1]||{});
this.element=$(B);
if(A.handle&&(typeof A.handle=="string")){this.handle=this.element.down("."+A.handle,0)
}if(!this.handle){this.handle=$(A.handle)
}if(!this.handle){this.handle=this.element
}if(A.scroll&&!A.scroll.scrollTo&&!A.scroll.outerHTML){A.scroll=$(A.scroll);
this._isScrollChild=Element.childOf(this.element,A.scroll)
}Element.makePositioned(this.element);
this.delta=this.currentDelta();
this.options=A;
this.dragging=false;
this.eventMouseDown=this.initDrag.bindAsEventListener(this);
Event.observe(this.handle,"mousedown",this.eventMouseDown);
Draggables.register(this)
},destroy:function(){Event.stopObserving(this.handle,"mousedown",this.eventMouseDown);
Draggables.unregister(this)
},currentDelta:function(){return([parseInt(Element.getStyle(this.element,"left")||"0"),parseInt(Element.getStyle(this.element,"top")||"0")])
},initDrag:function(A){if(typeof Draggable._dragging[this.element]!="undefined"&&Draggable._dragging[this.element]){return 
}if(Event.isLeftClick(A)){var C=Event.element(A);
if((tag_name=C.tagName.toUpperCase())&&(tag_name=="INPUT"||tag_name=="SELECT"||tag_name=="OPTION"||tag_name=="BUTTON"||tag_name=="TEXTAREA")){return 
}var B=[Event.pointerX(A),Event.pointerY(A)];
var D=Position.cumulativeOffset(this.element);
this.offset=[0,1].map(function(E){return(B[E]-D[E])
});
Draggables.activate(this);
Event.stop(A)
}},startDrag:function(B){this.dragging=true;
if(this.options.zindex){this.originalZ=parseInt(Element.getStyle(this.element,"z-index")||0);
this.element.style.zIndex=this.options.zindex
}if(this.options.ghosting){this._clone=this.element.cloneNode(true);
Position.absolutize(this.element);
this.element.parentNode.insertBefore(this._clone,this.element)
}if(this.options.scroll){if(this.options.scroll==window){var A=this._getWindowScroll(this.options.scroll);
this.originalScrollLeft=A.left;
this.originalScrollTop=A.top
}else{this.originalScrollLeft=this.options.scroll.scrollLeft;
this.originalScrollTop=this.options.scroll.scrollTop
}}Draggables.notify("onStart",this,B);
if(this.options.starteffect){this.options.starteffect(this.element)
}},updateDrag:function(event,pointer){if(!this.dragging){this.startDrag(event)
}if(!this.options.quiet){Position.prepare();
Droppables.show(pointer,this.element)
}Draggables.notify("onDrag",this,event);
this.draw(pointer);
if(this.options.change){this.options.change(this)
}if(this.options.scroll){this.stopScrolling();
var p;
if(this.options.scroll==window){with(this._getWindowScroll(this.options.scroll)){p=[left,top,left+width,top+height]
}}else{p=Position.page(this.options.scroll);
p[0]+=this.options.scroll.scrollLeft+Position.deltaX;
p[1]+=this.options.scroll.scrollTop+Position.deltaY;
p.push(p[0]+this.options.scroll.offsetWidth);
p.push(p[1]+this.options.scroll.offsetHeight)
}var speed=[0,0];
if(pointer[0]<(p[0]+this.options.scrollSensitivity)){speed[0]=pointer[0]-(p[0]+this.options.scrollSensitivity)
}if(pointer[1]<(p[1]+this.options.scrollSensitivity)){speed[1]=pointer[1]-(p[1]+this.options.scrollSensitivity)
}if(pointer[0]>(p[2]-this.options.scrollSensitivity)){speed[0]=pointer[0]-(p[2]-this.options.scrollSensitivity)
}if(pointer[1]>(p[3]-this.options.scrollSensitivity)){speed[1]=pointer[1]-(p[3]-this.options.scrollSensitivity)
}this.startScrolling(speed)
}if(Prototype.Browser.WebKit){window.scrollBy(0,0)
}Event.stop(event)
},finishDrag:function(B,E){this.dragging=false;
if(this.options.quiet){Position.prepare();
var D=[Event.pointerX(B),Event.pointerY(B)];
Droppables.show(D,this.element)
}if(this.options.ghosting){Position.relativize(this.element);
Element.remove(this._clone);
this._clone=null
}var F=false;
if(E){F=Droppables.fire(B,this.element);
if(!F){F=false
}}if(F&&this.options.onDropped){this.options.onDropped(this.element)
}Draggables.notify("onEnd",this,B);
var A=this.options.revert;
if(A&&typeof A=="function"){A=A(this.element)
}var C=this.currentDelta();
if(A&&this.options.reverteffect){if(F==0||A!="failure"){this.options.reverteffect(this.element,C[1]-this.delta[1],C[0]-this.delta[0])
}}else{this.delta=C
}if(this.options.zindex){this.element.style.zIndex=this.originalZ
}if(this.options.endeffect){this.options.endeffect(this.element)
}Draggables.deactivate(this);
Droppables.reset()
},keyPress:function(A){if(A.keyCode!=Event.KEY_ESC){return 
}this.finishDrag(A,false);
Event.stop(A)
},endDrag:function(A){if(!this.dragging){return 
}this.stopScrolling();
this.finishDrag(A,true);
Event.stop(A)
},draw:function(A){var F=Position.cumulativeOffset(this.element);
if(this.options.ghosting){var C=Position.realOffset(this.element);
F[0]+=C[0]-Position.deltaX;
F[1]+=C[1]-Position.deltaY
}var E=this.currentDelta();
F[0]-=E[0];
F[1]-=E[1];
if(this.options.scroll&&(this.options.scroll!=window&&this._isScrollChild)){F[0]-=this.options.scroll.scrollLeft-this.originalScrollLeft;
F[1]-=this.options.scroll.scrollTop-this.originalScrollTop
}var D=[0,1].map(function(G){return(A[G]-F[G]-this.offset[G])
}.bind(this));
if(this.options.snap){if(typeof this.options.snap=="function"){D=this.options.snap(D[0],D[1],this)
}else{if(this.options.snap instanceof Array){D=D.map(function(G,H){return Math.round(G/this.options.snap[H])*this.options.snap[H]
}.bind(this))
}else{D=D.map(function(G){return Math.round(G/this.options.snap)*this.options.snap
}.bind(this))
}}}var B=this.element.style;
if((!this.options.constraint)||(this.options.constraint=="horizontal")){B.left=D[0]+"px"
}if((!this.options.constraint)||(this.options.constraint=="vertical")){B.top=D[1]+"px"
}if(B.visibility=="hidden"){B.visibility=""
}},stopScrolling:function(){if(this.scrollInterval){clearInterval(this.scrollInterval);
this.scrollInterval=null;
Draggables._lastScrollPointer=null
}},startScrolling:function(A){if(!(A[0]||A[1])){return 
}this.scrollSpeed=[A[0]*this.options.scrollSpeed,A[1]*this.options.scrollSpeed];
this.lastScrolled=new Date();
this.scrollInterval=setInterval(this.scroll.bind(this),10)
},scroll:function(){var current=new Date();
var delta=current-this.lastScrolled;
this.lastScrolled=current;
if(this.options.scroll==window){with(this._getWindowScroll(this.options.scroll)){if(this.scrollSpeed[0]||this.scrollSpeed[1]){var d=delta/1000;
this.options.scroll.scrollTo(left+d*this.scrollSpeed[0],top+d*this.scrollSpeed[1])
}}}else{this.options.scroll.scrollLeft+=this.scrollSpeed[0]*delta/1000;
this.options.scroll.scrollTop+=this.scrollSpeed[1]*delta/1000
}Position.prepare();
Droppables.show(Draggables._lastPointer,this.element);
Draggables.notify("onDrag",this);
if(this._isScrollChild){Draggables._lastScrollPointer=Draggables._lastScrollPointer||$A(Draggables._lastPointer);
Draggables._lastScrollPointer[0]+=this.scrollSpeed[0]*delta/1000;
Draggables._lastScrollPointer[1]+=this.scrollSpeed[1]*delta/1000;
if(Draggables._lastScrollPointer[0]<0){Draggables._lastScrollPointer[0]=0
}if(Draggables._lastScrollPointer[1]<0){Draggables._lastScrollPointer[1]=0
}this.draw(Draggables._lastScrollPointer)
}if(this.options.change){this.options.change(this)
}},_getWindowScroll:function(w){var T,L,W,H;
with(w.document){if(w.document.documentElement&&documentElement.scrollTop){T=documentElement.scrollTop;
L=documentElement.scrollLeft
}else{if(w.document.body){T=body.scrollTop;
L=body.scrollLeft
}}if(w.innerWidth){W=w.innerWidth;
H=w.innerHeight
}else{if(w.document.documentElement&&documentElement.clientWidth){W=documentElement.clientWidth;
H=documentElement.clientHeight
}else{W=body.offsetWidth;
H=body.offsetHeight
}}}return{top:T,left:L,width:W,height:H}
}};
var SortableObserver=Class.create();
SortableObserver.prototype={initialize:function(B,A){this.element=$(B);
this.observer=A;
this.lastValue=Sortable.serialize(this.element)
},onStart:function(){this.lastValue=Sortable.serialize(this.element)
},onEnd:function(){Sortable.unmark();
if(this.lastValue!=Sortable.serialize(this.element)){this.observer(this.element)
}}};
var Sortable={SERIALIZE_RULE:/^[^_\-](?:[A-Za-z0-9\-\_]*)[_](.*)$/,sortables:{},_findRootElement:function(A){while(A.tagName.toUpperCase()!="BODY"){if(A.id&&Sortable.sortables[A.id]){return A
}A=A.parentNode
}},options:function(A){A=Sortable._findRootElement($(A));
if(!A){return 
}return Sortable.sortables[A.id]
},destroy:function(A){var B=Sortable.options(A);
if(B){Draggables.removeObserver(B.element);
B.droppables.each(function(C){Droppables.remove(C)
});
B.draggables.invoke("destroy");
delete Sortable.sortables[B.element.id]
}},create:function(C){C=$(C);
var B=Object.extend({element:C,tag:"li",dropOnEmpty:false,tree:false,treeTag:"ul",overlap:"vertical",constraint:"vertical",containment:C,handle:false,only:false,delay:0,hoverclass:null,ghosting:false,quiet:false,scroll:false,scrollSensitivity:20,scrollSpeed:15,format:this.SERIALIZE_RULE,elements:false,handles:false,onChange:Prototype.emptyFunction,onUpdate:Prototype.emptyFunction},arguments[1]||{});
this.destroy(C);
var A={revert:true,quiet:B.quiet,scroll:B.scroll,scrollSpeed:B.scrollSpeed,scrollSensitivity:B.scrollSensitivity,delay:B.delay,ghosting:B.ghosting,constraint:B.constraint,handle:B.handle};
if(B.starteffect){A.starteffect=B.starteffect
}if(B.reverteffect){A.reverteffect=B.reverteffect
}else{if(B.ghosting){A.reverteffect=function(F){F.style.top=0;
F.style.left=0
}
}}if(B.endeffect){A.endeffect=B.endeffect
}if(B.zindex){A.zindex=B.zindex
}var D={overlap:B.overlap,containment:B.containment,tree:B.tree,hoverclass:B.hoverclass,onHover:Sortable.onHover};
var E={onHover:Sortable.onEmptyHover,overlap:B.overlap,containment:B.containment,hoverclass:B.hoverclass};
Element.cleanWhitespace(C);
B.draggables=[];
B.droppables=[];
if(B.dropOnEmpty||B.tree){Droppables.add(C,E);
B.droppables.push(C)
}(B.elements||this.findElements(C,B)||[]).each(function(H,F){var G=B.handles?$(B.handles[F]):(B.handle?$(H).getElementsByClassName(B.handle)[0]:H);
B.draggables.push(new Draggable(H,Object.extend(A,{handle:G})));
Droppables.add(H,D);
if(B.tree){H.treeNode=C
}B.droppables.push(H)
});
if(B.tree){(Sortable.findTreeElements(C,B)||[]).each(function(F){Droppables.add(F,E);
F.treeNode=C;
B.droppables.push(F)
})
}this.sortables[C.id]=B;
Draggables.addObserver(new SortableObserver(C,B.onUpdate))
},findElements:function(B,A){return Element.findChildren(B,A.only,A.tree?true:false,A.tag)
},findTreeElements:function(B,A){return Element.findChildren(B,A.only,A.tree?true:false,A.treeTag)
},onHover:function(E,D,A){if(Element.isParent(D,E)){return 
}if(A>0.33&&A<0.66&&Sortable.options(D).tree){return 
}else{if(A>0.5){Sortable.mark(D,"before");
if(D.previousSibling!=E){var B=E.parentNode;
E.style.visibility="hidden";
D.parentNode.insertBefore(E,D);
if(D.parentNode!=B){Sortable.options(B).onChange(E)
}Sortable.options(D.parentNode).onChange(E)
}}else{Sortable.mark(D,"after");
var C=D.nextSibling||null;
if(C!=E){var B=E.parentNode;
E.style.visibility="hidden";
D.parentNode.insertBefore(E,C);
if(D.parentNode!=B){Sortable.options(B).onChange(E)
}Sortable.options(D.parentNode).onChange(E)
}}}},onEmptyHover:function(E,G,H){var I=E.parentNode;
var A=Sortable.options(G);
if(!Element.isParent(G,E)){var F;
var C=Sortable.findElements(G,{tag:A.tag,only:A.only});
var B=null;
if(C){var D=Element.offsetSize(G,A.overlap)*(1-H);
for(F=0;
F<C.length;
F+=1){if(D-Element.offsetSize(C[F],A.overlap)>=0){D-=Element.offsetSize(C[F],A.overlap)
}else{if(D-(Element.offsetSize(C[F],A.overlap)/2)>=0){B=F+1<C.length?C[F+1]:null;
break
}else{B=C[F];
break
}}}}G.insertBefore(E,B);
Sortable.options(I).onChange(E);
A.onChange(E)
}},unmark:function(){if(Sortable._marker){Sortable._marker.hide()
}},mark:function(B,A){var D=Sortable.options(B.parentNode);
if(D&&!D.ghosting){return 
}if(!Sortable._marker){Sortable._marker=($("dropmarker")||Element.extend(document.createElement("DIV"))).hide().addClassName("dropmarker").setStyle({position:"absolute"});
document.getElementsByTagName("body").item(0).appendChild(Sortable._marker)
}var C=Position.cumulativeOffset(B);
Sortable._marker.setStyle({left:C[0]+"px",top:C[1]+"px"});
if(A=="after"){if(D.overlap=="horizontal"){Sortable._marker.setStyle({left:(C[0]+B.clientWidth)+"px"})
}else{Sortable._marker.setStyle({top:(C[1]+B.clientHeight)+"px"})
}}Sortable._marker.show()
},_tree:function(E,B,F){var D=Sortable.findElements(E,B)||[];
for(var C=0;
C<D.length;
++C){var A=D[C].id.match(B.format);
if(!A){continue
}var G={id:encodeURIComponent(A?A[1]:null),element:E,parent:F,children:[],position:F.children.length,container:$(D[C]).down(B.treeTag)};
if(G.container){this._tree(G.container,B,G)
}F.children.push(G)
}return F
},tree:function(D){D=$(D);
var C=this.options(D);
var B=Object.extend({tag:C.tag,treeTag:C.treeTag,only:C.only,name:D.id,format:C.format},arguments[1]||{});
var A={id:null,parent:null,children:[],container:D,position:0};
return Sortable._tree(D,B,A)
},_constructIndex:function(B){var A="";
do{if(B.id){A="["+B.position+"]"+A
}}while((B=B.parent)!=null);
return A
},sequence:function(B){B=$(B);
var A=Object.extend(this.options(B),arguments[1]||{});
return $(this.findElements(B,A)||[]).map(function(C){return C.id.match(A.format)?C.id.match(A.format)[1]:""
})
},setSequence:function(B,C){B=$(B);
var A=Object.extend(this.options(B),arguments[2]||{});
var D={};
this.findElements(B,A).each(function(E){if(E.id.match(A.format)){D[E.id.match(A.format)[1]]=[E,E.parentNode]
}E.parentNode.removeChild(E)
});
C.each(function(E){var F=D[E];
if(F){F[1].appendChild(F[0]);
delete D[E]
}})
},serialize:function(C){C=$(C);
var B=Object.extend(Sortable.options(C),arguments[1]||{});
var A=encodeURIComponent((arguments[1]&&arguments[1].name)?arguments[1].name:C.id);
if(B.tree){return Sortable.tree(C,arguments[1]).children.map(function(D){return[A+Sortable._constructIndex(D)+"[id]="+encodeURIComponent(D.id)].concat(D.children.map(arguments.callee))
}).flatten().join("&")
}else{return Sortable.sequence(C,arguments[1]).map(function(D){return A+"[]="+encodeURIComponent(D)
}).join("&")
}}};
Element.isParent=function(B,A){if(!B.parentNode||B==A){return false
}if(B.parentNode==A){return true
}return Element.isParent(B.parentNode,A)
};
Element.findChildren=function(D,B,A,C){if(!D.hasChildNodes()){return null
}C=C.toUpperCase();
if(B){B=[B].flatten()
}var E=[];
$A(D.childNodes).each(function(G){if(G.tagName&&G.tagName.toUpperCase()==C&&(!B||(Element.classNames(G).detect(function(H){return B.include(H)
})))){E.push(G)
}if(A){var F=Element.findChildren(G,B,A,C);
if(F){E.push(F)
}}});
return(E.length>0?E.flatten():[])
};
Element.offsetSize=function(A,B){return A["offset"+((B=="vertical"||B=="height")?"Height":"Width")]
};
var coordUtil=new CoordinateUtil();
function CoordinateUtil(){var B=0.0254;
var A=96;
this.calcMapRect=function(M,L,F,D,R){var T=D/A*B*F;
var S=R/A*B*F;
var H=this.toRadians(L);
var Q=this.calcMN(H);
var K=S/Q[0];
var I=T/Q[1]/Math.cos(H);
var O=this.toDegrees(K);
var J=this.toDegrees(I);
var C=M-J/2;
var N=L-O/2;
var G=M+J/2;
var E=L+O/2;
return new Spatial.BoundingBox(C,N,G,E)
};
this.fitRectInScale=function(C,L,G,E,D,M,I){var K=(G+C)/2;
var J=(E+L)/2;
for(var F=0;
F<I.length;
F++){var H=this.calcMapRect(K,J,I[F].scale,D,M);
if(H.xmin<=C&&H.ymin<=L&&H.xmax>=G&&H.ymax>=E){return new View(new Spatial.Point(K,J),I[F].scale,D,M)
}}return new View(new Spatial.Point(K,J),I[I.length-1].scale,D,M)
};
this.calcScale=function(F,J,I,H,G,K){var E=G/A*B;
var C=K/A*B;
var D=this.calcMapDistance(F,J,I,H);
return Math.sqrt(D[0]*D[0]+D[1]*D[1])/Math.sqrt(E*E+C*C)
};
this.calcMapDistance=function(C,O,F,E){var D=this.toRadians(E);
var L=this.toRadians(C);
var Q=this.toRadians(O);
var I=this.toRadians(F);
var H=(D+Q)/2;
var K=D-Q;
var J=I-L;
var N=this.calcMN(H);
var M=J*Math.cos(H)*N[1];
var G=K*N[0];
return[M,G]
};
this.calcMN=function(E){var D=1-0.006674*Math.sin(E)*Math.sin(E);
var C=6334834/Math.sqrt(D*D*D);
var F=6377397/Math.sqrt(D);
return[C,F]
};
this.toRadians=function(C){return C/180*Math.PI
};
this.toDegrees=function(C){return C*180/Math.PI
};
this.calcPixelPoint=function(D,L,C,K,G,F,H,E){var J=(H-C)*D/(G-C);
var I=(F-E)*L/(F-K);
return new Spatial.Point(J,I)
};
this.calcXYPoint=function(D,L,C,K,G,F,H,E){var J=C+(G-C)*H/D;
var I=F-(F-K)*E/L;
return new Spatial.Point(J,I)
}
}function DownloadManager(C){var A=C;
var D;
var B=A.configuration.feature;
this.init=function(){if(A.configuration.download&&A.configuration.download.type=="window"){D=new WindowManager(A.configuration.download.window,null);
A.eventHandler.addEventListener(LiteEvent.UNLOAD,D.close.bind(D))
}};
this.download=function(){if(A.featureManager.checkToshiModeViewSet()){var E=A.featureManager.getIconPosition();
var J=A.viewManager.currentView;
if(E!=null){var G=E.x;
var F=E.y;
var I=A.viewManager.currentView.getBoundingBox();
if(((G<I.xmax)&&(G>I.xmin))&&((F<I.ymax)&&(G>I.ymin))){if(!this.checkOnlyAttrInToshiGroup(G,F,J.scale)){return 
}A.viewManager.moveCenter(G,F);
A.viewManager.refresh()
}}else{if(!this.checkOnlyAttrInToshiGroup(J.center.x,J.center.y,J.scale)){return 
}}}var H=A.configuration.download;
if(!H){return 
}if(H.type=="window"){D.open()
}else{location.href=H.window.url
}};
this.checkOnlyAttrInToshiGroup=function(E,G,F){if(!A.featureManager.checkOnlyAttrInToshiGroup(E,G,F)){alert("指定された位置は、計画区域等の境界線付近のため情報の特定ができません。\nお手数ですが、クリックする位置を少しずらして、再度検索してください。\n");
A.featureManager.innerCloseAttrDetailByUIImpl();
return false
}return true
}
}var AttributeType=new Object();
Object.extend(AttributeType,{STRING:0,INT:1,DOUBLE:2,ABSOLUTE_URL:3,RELATIVE_URL:4,FILE:5,B_PERIOD:6,E_PERIOD:7});
var SpatialType=new Object();
Object.extend(SpatialType,{POINT:1,LINE:2,AREA:3,TEXT:4});
var WindowType=new Object();
Object.extend(WindowType,{WINDOW:0,DIV:1});
function FeatureManager(r){var W=r;
var T;
var q=W.configuration.feature;
var M=q.message.beforeSearch;
var S=q.message.result0;
var g="";
var E=false;
var c;
var a;
var Q;
var j;
var Y;
var R;
var A;
var D=null;
var L;
var X=new Icon(q.icon);
var F;
var f=W.configuration.prefix+"attrTable";
var G;
var d;
var N;
var V;
var C;
var H;
var K;
var O;
var m;
var P;
var I;
var Z=null;
var o=W.configuration.prefix+"featureAttr";
var b=o+"Form";
var U=b+"Validation";
var k=b+"Tr";
var B=null;
var J;
this.init=function(t){T=t;
R=this.closeAttrDetailByUI.bind(this);
A=this.closeClickableByUI.bind(this);
J=this.editFrameLoaded.bind(this);
if(t){Z=new FeatureSpatialEdit(W);
Z.init(t)
}if(h()){Q=new WindowManager(q.window,this.initWindow.bind(this));
W.eventHandler.addEventListener(LiteEvent.UNLOAD,Q.close.bind(Q))
}else{Q=null;
this.initWindowImpl(window)
}this.initIcon();
this.initCalendar()
};
this.initIcon=function(){L=document.createElement("div");
L.style.zIndex="25";
hide(L);
var t=W.viewManager.getMainView();
t.appendChild(L)
};
this.initWindow=function(u,t){var v=u.document.getElementById(q.divId);
if(!v){if(h()){if(t){t++
}else{t=1
}if(t<=W.configuration.pageLoadCheckCount){setTimeout(this.initWindow.bind(this,u,t),W.configuration.pageLoadCheckInterval)
}}return 
}this.initWindowImpl(u);
if(h()){this.showInit();
Element.Methods.observe(j,"unload",R,false)
}};
this.initWindowImpl=function(x){j=x;
var z=x.document.getElementById(q.divId);
if(!z){return 
}z.style.textAlign="center";
z.style.marginLeft="auto";
z.style.marginRight="auto";
Element.Methods.addClassName(z,q.divClass);
I=x.document.createElement("div");
I.className=q.title.className;
var y=x.document.createTextNode(q.title.titleValue);
I.appendChild(y);
var v=x.document.createElement("div");
v.id=f;
v.className=q.page.className;
G=x.document.createElement("div");
G.className=q.button.className;
var u=this.createArrowButtonDiv(x);
var t=this.createEditButtonDiv(x);
var w=this.createCloseButton(x);
d=x.document.createElement("div");
d.appendChild(t);
G.appendChild(d);
G.appendChild(w);
z.appendChild(I);
z.appendChild(u);
z.appendChild(v);
z.appendChild(G);
this.clearFeature("")
};
this.createArrowButtonDiv=function(t){K=t.document.createElement("input");
K.type="image";
K.src="image/K_feature_first_off.gif";
K.alt="最初へ";
K.onclick=this.showFirst.bind(this);
K.onmouseover=this.onFeatureBtn.bind(this,K,"K_feature_first");
K.onmouseout=this.offFeatureBtn.bind(this,K,"K_feature_first");
O=t.document.createElement("input");
O.type="image";
O.src="image/K_feature_prev_off.gif";
O.alt="前へ";
O.onclick=this.showPrev.bind(this);
O.onmouseover=this.onFeatureBtn.bind(this,O,"K_feature_prev");
O.onmouseout=this.offFeatureBtn.bind(this,O,"K_feature_prev");
m=t.document.createElement("input");
m.type="image";
m.src="image/K_feature_next_off.gif";
m.alt="次へ";
m.onclick=this.showNext.bind(this);
m.onmouseover=this.onFeatureBtn.bind(this,m,"K_feature_next");
m.onmouseout=this.offFeatureBtn.bind(this,m,"K_feature_next");
P=t.document.createElement("input");
P.type="image";
P.src="image/K_feature_end_off.gif";
P.alt="最後へ";
P.onclick=this.showLast.bind(this);
P.onmouseover=this.onFeatureBtn.bind(this,P,"K_feature_end");
P.onmouseout=this.offFeatureBtn.bind(this,P,"K_feature_end");
N=t.document.createElement("div");
N.appendChild(K);
N.appendChild(O);
N.appendChild(m);
N.appendChild(P);
return N
};
this.createEditButtonDiv=function(v){V=v.document.createElement("input");
V.type="image";
V.className=q.button.btnClass;
V.alt="図形編集";
V.src="image/zukei.gif";
V.onclick=this.onclickEditSpatialButton.bind(this);
V.onmouseover=this.onmouseoverAttributeButton.bind(this,V);
V.onmouseout=this.onmouseoutAttributeButton.bind(this,V);
V.style.display="none";
C=v.document.createElement("input");
C.type="image";
C.className=q.button.btnClass;
C.src="image/zokusei.gif";
C.alt="属性編集";
C.onclick=this.onclickEditAttributeButton.bind(this);
C.onmouseover=this.onmouseoverAttributeButton.bind(this,C);
C.onmouseout=this.onmouseoutAttributeButton.bind(this,C);
C.style.display="none";
H=v.document.createElement("input");
H.type="image";
H.className=q.button.btnClass;
H.src="image/sakujyo.gif";
H.value="削除";
H.onclick=this.onclickDeleteButton.bind(this);
H.onmouseover=this.onmouseoverAttributeButton.bind(this,H);
H.onmouseout=this.onmouseoutAttributeButton.bind(this,H);
H.style.display="none";
var u=v.document.createElement("div");
u.appendChild(V);
u.appendChild(C);
u.appendChild(H);
var t=W.service.getUserInfo();
if(t.result==null){u.style.display="none"
}return u
};
this.onmouseoverAttributeButton=function(t){if(t.src.search(/_r\.gif$/i)==-1){t.src=t.src.replace(".gif","_r.gif")
}};
this.onmouseoutAttributeButton=function(t){t.src=t.src.replace("_r.gif",".gif")
};
this.createCloseButton=function(u){var t;
if(h()){t=u.document.createElement("input");
t.type="image";
t.src="image/close_off.gif";
t.alt="閉じる";
t.onclick=Q.close.bind(Q);
t.onmouseover=this.onFeatureBtn.bind(this,t,"close");
t.onmouseout=this.offFeatureBtn.bind(this,t,"close")
}else{t=u.document.createElement("input");
t.type="image";
t.src="image/clear_off.gif";
t.value="クリア";
t.onclick=this.closeAttrDetailByUI.bind(this);
t.onmouseover=this.onFeatureBtn.bind(this,t,"clear");
t.onmouseout=this.offFeatureBtn.bind(this,t,"clear")
}return t
};
this.onFeatureBtn=function(u,t){u.src="image/"+t+"_on.gif"
};
this.offFeatureBtn=function(u,t){u.src="image/"+t+"_off.gif"
};
this.drawIcon=function(){if(F){show(L);
var u=W.viewManager.currentView;
var v=u.width;
var t=u.height;
var w=W.viewManager.calcPixelPoint(F.x,F.y);
X.drawIcon(L,w.x,w.y,v,t)
}};
this.getIconPosition=function(){return F
};
this.searchPoint=function(u,w){if(this.isCancelShowDetail()){return 
}if(this.isBlock()){return 
}var t=W.service.getFeatureByPoint(u,w,null,false);
if(t.statusId!="success"){E=false;
return 
}if(this.checkToshiModeViewSet()){t=this.unifyFeature(t)
}this.clearHighlight();
F=u;
this.drawIcon();
var v=t.result;
if(v&&v.length>0){this.setRasterHighlightAndRedrawIfNeed(v[0].featureId,v[0].instanceId)
}else{this.setRasterHighlightAndRedrawIfNeed(null,null)
}this.setFeatures(t.result)
};
this.clickVectorFeature=function(y,u,x){if(this.isCancelShowDetail()){return 
}if(this.isBlock()){return 
}this.clearHighlight();
W.vectorManager.highlightPOI(y,u);
var v=-1;
if(x==VectorClick.MOVE_CENTER){this.closeAttrDetail();
this.closeClickableWindow();
this.setRasterHighlight(u.featureId,u.instanceId);
this.moveCenter(u);
v=W.configuration.vector.click.moveCenterInterval;
E=false
}else{if(x==VectorClick.ATTRIBUTE){this.setRasterHighlightAndRedrawIfNeed(u.featureId,u.instanceId);
this.showVector(u);
if(u.url){v=W.configuration.vector.click.showAttributeInterval
}}else{if(x==VectorClick.BOTH){this.setRasterHighlight(u.featureId,u.instanceId);
this.showVector(u);
this.moveCenter(u);
if(u.url){v=W.configuration.vector.click.showAttributeInterval
}}else{if(x==VectorClick.CONDITION_SEARCH){this.setRasterHighlight(u.featureId,u.instanceId);
this.showVector(u);
var t=u.point;
W.viewManager.moveCenter(t.x,t.y);
var z=W.viewManager.currentView.scale;
var w=W.layerManager.getLayerByFeatureId(u.featureId);
if(w){W.layerManager.setVisibleLayerByFeatureId(u.featureId,true);
if(w.minScale&&z<w.minScale){W.viewManager.scaleChange(w.minScale,true)
}else{if(w.maxScale&&z>w.maxScale){W.viewManager.scaleChange(w.maxScale,false)
}}}if(z==W.viewManager.currentView.scale){W.viewManager.refresh()
}if(u.url){v=W.configuration.vector.click.showAttributeInterval
}}else{logger.warn("クリック時の動作が定義されていません。["+x+"]");
E=false
}}}}this.startHighlightTimer(v)
};
this.isBlock=function(){if(E){return true
}if(!h()&&!j.document.getElementById(q.divId)){return true
}this.stopHighlightTimer();
E=true;
return false
};
this.clearHighlight=function(){F=null;
hide(L);
W.vectorManager.clearHighlightPOI();
try{if(Y&&!Y.closed){Element.Methods.stopObserving(Y,"unload",A,false)
}}catch(t){}};
this.showVector=function(u){if(u.url){this.closeAttrDetail();
var v=u.url;
var z=false;
try{z=Y&&!Y.closed
}catch(x){}if(z){try{Element.Methods.stopObserving(Y,"unload",A,false)
}catch(x){}Y.location.replace(v);
Y.focus()
}else{Y=window.open(v,q.clickable.target,q.clickable.param)
}setTimeout(this.setClickableWindowCallback.bind(this,Y),0);
E=false
}else{var y=new Array();
var t=W.service.getFeatureById(u.featureId,u.instanceId,false);
if(t.statusId=="success"){var w=t.result;
y[0]=t.result
}this.setFeatures(y)
}};
this.setClickableWindowCallback=function(u){try{Element.Methods.observe(u,"unload",A,false)
}catch(t){}};
this.moveCenter=function(u){var t=u.point;
W.viewManager.moveCenter(t.x,t.y);
W.viewManager.refresh()
};
this.setFeatures=function(t){c=t;
B=null;
if(h()){if(Q.open()){return 
}}this.showInit()
};
this.showInit=function(){if(B){var u=B.layer;
var t=B.feature;
var v=B.featureInfo;
B=null;
this.showEditAttr(u,t,v)
}else{this.show(0,false);
E=false
}};
this.showFirst=function(){this.showOtherPageByUI(0)
};
this.showLast=function(){this.showOtherPageByUI(c.length-1)
};
this.showNext=function(){this.showOtherPageByUI(a+1)
};
this.showPrev=function(){this.showOtherPageByUI(a-1)
};
this.showOtherPageByUI=function(t){setTimeout(this.showAndHighlight.bind(this,t),0)
};
this.showAndHighlight=function(t){E=true;
var u=this.show(t);
if(u==null){this.setRasterHighlightAndRedrawIfNeed(null,null)
}else{this.setRasterHighlightAndRedrawIfNeed(u.featureId,u.instanceId)
}E=false
};
this.show=function(t){I.innerHTML=q.title.titleValue;
var u=null;
if(c){if(c.length>0){if(t<0){t=0
}else{if(t>=c.length){t=c.length-1
}}a=t;
u=this.showFeature();
this.updateButtonState();
document.getElementById("attr2").style.height=g
}else{a=0;
this.clearFeature(S);
this.updateButtonState()
}}else{this.clearFeature("")
}return u
};
this.setRasterHighlight=function(v,u){var w=false;
if(!this.checkToshiModeViewSet()){var t=W.service.clearHighlightFeature();
if(t.result){w=true
}if(v&&u){t=W.service.setHighlightFeature(v,u,false);
if(t.result){w=true
}}W.eventHandler.fireEvent(LiteEvent.HIGHLIGHT_CHANGE)
}return w
};
this.setRasterHighlightAndRedrawIfNeed=function(u,t){if(this.setRasterHighlight(u,t)){W.viewManager.drawThematicRaster()
}};
this.updateButtonState=function(){if(a>0){K.src="image/K_feature_first_off.gif";
K.disabled=false;
O.src="image/K_feature_prev_off.gif";
O.disabled=false
}else{K.src="image/K_feature_first_disable.gif";
K.disabled=true;
O.src="image/K_feature_prev_disable.gif";
O.disabled=true
}if(c&&a<c.length-1){m.src="image/K_feature_next_off.gif";
m.disabled=false;
P.src="image/K_feature_end_off.gif";
P.disabled=false
}else{m.src="image/K_feature_next_disable.gif";
m.disabled=true;
P.src="image/K_feature_end_disable.gif";
P.disabled=true
}if(c&&c.length>1){Element.Methods.show(N)
}else{Element.Methods.hide(N)
}if(h()){Element.Methods.show(d)
}else{Element.Methods.show(G)
}if(c&&c.length==0){Element.Methods.hide(d)
}else{Element.Methods.show(d)
}};
this.showFeature=function(){var AY=c[a];
Element.Methods.show(G);
V.style.display="none";
C.style.display="none";
H.style.display="none";
var AZ=q.table;
var z=W.service.getUserInfo().result;
var AB=W.layerManager.getFeature(AY.featureId);
if(AB==null){var y=j.document.getElementById(f);
y.innerHTML="";
if(log4javascript.isEnabled()){var AN=j.document.createTextNode("無効な地物("+AY.featureId+")");
y.appendChild(AN)
}return null
}var AU=this.toAttrMap(AY);
var Ab=W.layerManager.getLayerByFeatureId(AY.featureId);
var w=!(Ab&&Ab.editable&&Ab.features.length==1);
if(w){w="none"
}else{w="inline"
}V.style.display=w;
C.style.display=w;
H.style.display=w;
this.onmouseoutAttributeButton(V);
this.onmouseoutAttributeButton(C);
this.onmouseoutAttributeButton(H);
var AR=j.document.createElement("div");
AR.className=AZ.layerNameClass;
var AN=j.document.createTextNode(Ab.caption);
AR.appendChild(AN);
var AW=j.document.createElement("table");
AW.rules="all";
AW.className=AZ.tableClass;
this.createHeaderPart(AW,AZ);
var t=j.document.createElement("tbody");
var AM=AB.attributes;
if(AM.length==0){var u=j.document.createElement("tr");
var AD=j.document.createElement("td");
AD.className=AZ.nameCellClass;
AD.innerHTML="-";
u.appendChild(AD);
var AA=j.document.createElement("td");
AA.className=AZ.valueCellClass;
AA.innerHTML="-";
u.appendChild(AA);
t.appendChild(u)
}else{for(var AT=0;
AT<AM.length;
AT++){var AP=AM[AT];
var u=j.document.createElement("tr");
var AD=j.document.createElement("td");
AD.className=AZ.nameCellClass;
var AN=j.document.createTextNode(AP.caption);
AD.appendChild(AN);
u.appendChild(AD);
var AA=j.document.createElement("td");
AA.className=AZ.valueCellClass;
u.appendChild(AA);
var AL=AU[AP.name];
if(AL==null){AA.appendChild(j.document.createElement("div"))
}else{var v=AL.values;
for(var AS=0;
AS<v.length;
AS++){var AJ=j.document.createElement("div");
if(AP.codeId){var AX=this.getCode(AP.codeId,v[AS].value);
if(AX){var AH=j.document.createTextNode(AX);
AJ.appendChild(AH)
}else{if(log4javascript.isEnabled()){var AG=j.document.createTextNode(v[AS].value+"(コードエラー)");
AJ.appendChild(AG)
}}}else{if(v[AS].url){var AC=j.document.createElement("a");
AC.href=v[AS].url;
if(!v[AS].url.match(/filedownload\?a=/i)){AC.target="_blank"
}var AF=j.document.createTextNode(v[AS].value);
AC.appendChild(AF);
AJ.appendChild(AC);
AJ.style.overflow="hidden";
AJ.style.wordBreak="break-all"
}else{var AI=j.document.createTextNode(v[AS].value);
AJ.appendChild(AI)
}}AA.appendChild(AJ)
}}t.appendChild(u)
}}AW.appendChild(t);
var AK=null;
if(T.timeConfig==3&&null!=z){var AE=AB.beginPeriod;
var AQ=AB.endPeriod;
if(AE!=null||AQ!=null){AK=j.document.createElement("table");
AK.rules="all";
AK.className=AZ.timeTableClass;
var AV=j.document.createElement("tbody");
if(AE!=null){var u=j.document.createElement("tr");
var AD=j.document.createElement("td");
AD.className=AZ.timeNameCellClass;
var AG=j.document.createTextNode(AE.caption);
AD.appendChild(AG);
u.appendChild(AD);
var AL=AY.beginPeriod;
var AA=j.document.createElement("td");
AA.className=AZ.timeValueCellClass;
u.appendChild(AA);
var AJ=j.document.createElement("div");
var AO;
if(AL){AO=AL.value.value
}AJ.innerHTML=n(AO);
AA.appendChild(AJ);
AV.appendChild(u)
}if(AQ!=null){var u=j.document.createElement("tr");
var AD=j.document.createElement("td");
AD.className=AZ.timeNameCellClass;
var AF=j.document.createTextNode(AQ.caption);
AD.appendChild(AF);
u.appendChild(AD);
var AL=AY.endPeriod;
var AA=j.document.createElement("td");
AA.className=AZ.timeValueCellClass;
u.appendChild(AA);
var AJ=j.document.createElement("div");
var AO;
if(AL){AO=AL.value.value
}AJ.innerHTML=n(AO);
AA.appendChild(AJ);
AV.appendChild(u)
}AK.appendChild(AV)
}}var x=j.document.createElement("div");
x.innerHTML=(a+1)+"/"+c.length;
var y=j.document.getElementById(f);
y.className=q.page.className;
y.innerHTML="";
y.appendChild(AR);
y.appendChild(AW);
if(AK!=null){var Aa=j.document.createElement("div");
Aa.className=AZ.timeNameClass;
Aa.innerHTML="■有効期間";
y.appendChild(Aa);
y.appendChild(AK)
}y.appendChild(x);
return AY
};
function n(t){if(t&&t.length==10&&t!="9999-99-99"&&t!="0000-00-00"){var v=t.substring(0,4);
var w=t.substring(5,7);
var u=t.substring(8,10);
return v+"年"+w+"月"+u+"日"
}else{return"指定なし"
}}this.createHeaderPart=function(u,t){var w=j.document.createElement("thead");
var x=j.document.createElement("tr");
w.appendChild(x);
var v=j.document.createElement("th");
v.className=t.headerClass;
v.innerHTML="項目名";
x.appendChild(v);
var y=j.document.createElement("th");
y.className=t.headerClass;
y.innerHTML="値";
x.appendChild(y);
u.appendChild(w)
};
this.toAttrMap=function(v){var t=v.attrMap;
if(t==null){t=new Object();
var w=v.attributes;
if(w){for(var u=0;
u<w.length;
u++){t[w[u].name]=w[u]
}}v.attrMap=t
}return t
};
this.getCode=function(x,y){var t=W.service.getCodeCategory(x);
if(t.statusId=="success"){var w=t.result;
var u=w.codes;
for(var v=0;
v<u.length;
v++){if(u[v].code==y){return u[v].value
}}}return null
};
this.clearFeature=function(u){Element.Methods.hide(N);
if(h()){Element.Methods.hide(d)
}else{Element.Methods.hide(G)
}a=0;
var t=j.document.getElementById(f);
if(!u||u.length==0){u=M
}t.innerHTML=u;
document.getElementById("attr2").style.height=""
};
this.open=function(){if(h()){Q.open()
}};
var h=function(){return q.type==WindowType.WINDOW
};
this.close=function(){if(h()){Q.close()
}};
this.closeClickableByUI=function(){this.closeAttrDetailByUI()
};
this.closeAttrDetailByUI=function(){setTimeout(this.closeAttrDetailByUIImpl.bind(this),0)
};
this.closeAttrDetailByUIImpl=function(){this.innerCloseAttrDetailByUIImpl(true)
};
this.innerCloseAttrDetailByUIImpl=function(u){var t=false;
if(Z.removeEditTemporaryItem()){t=true
}this.closeAttrDetail();
if(this.setRasterHighlight(null,null)){t=true
}this.clearHighlight();
if(u&&t){W.viewManager.drawThematicRaster()
}};
this.closeAttrDetail=function(){if(h()){try{if(j&&!j.closed){Element.Methods.stopObserving(j,"unload",R,false);
Q.close()
}}catch(t){}}else{this.clearFeature("")
}c=null
};
this.closeClickableWindow=function(){};
this.startHighlightTimer=function(t){if(t>0){D=window.setTimeout(this.clearPoiHighlight.bind(this),t)
}};
this.stopHighlightTimer=function(){if(D){window.clearTimeout(D);
D=null
}};
this.clearPoiHighlight=function(){this.stopHighlightTimer();
this.setRasterHighlightAndRedrawIfNeed(null,null);
this.clearHighlight()
};
this.layerStateChanged=function(t){if(W.vectorManager.isHighlightLayerOff(t)){this.clearPoiHighlight()
}};
this.onclickEditSpatialButton=function(){var t=c[a];
window.focus();
this.editFeatureSpatial(t)
};
this.onclickEditAttributeButton=function(){var t=c[a];
setTimeout(this.editFeatureAttribute.bind(this,t),0)
};
this.onclickDeleteButton=function(){var t=c[a];
this.deleteFeature(t)
};
this.beginAddFeature=function(t){var v=W.layerManager.getLayerById(t);
if(v==null||!v.editable||!v.features||v.features.length!=1){logger.error("レイヤを編集できません["+t+"]");
return 
}var u=v.features[0];
logger.info("地物登録[layerId="+t+",featureId="+u.featureId+"]");
if(Z){Z.beginEditSpatial(v,null,this.callback_addFeature.bind(this))
}};
this.beginTextUpload=function(u){var t=_context+"/point/import?bunrui4No="+u;
var w="org";
var x="width=520,height=520,scrollbars=yes,resizable=yes,location=no,status=yes";
var v=window.open(t,w,x)
};
this.editFeatureSpatial=function(v){var u=W.layerManager.getLayerByFeatureId(v.featureId);
if(u==null||!u.editable||!u.features||u.features.length!=1){logger.error("レイヤを編集できません["+u.layerId+"]");
return 
}var t=u.features[0];
logger.info("図形編集[layerId="+u.layerId+",featureId="+t.featureId+",instanceId="+v.instanceId+"]");
if(Z){Z.beginEditSpatial(u,v,this.callback_editFeatureSpatial.bind(this))
}};
this.editFeatureAttribute=function(v){var u=W.layerManager.getLayerByFeatureId(v.featureId);
if(u==null||!u.editable||!u.features||u.features.length!=1){logger.error("レイヤを編集できません["+u.layerId+"]");
return 
}var t=u.features[0];
logger.info("属性編集[layerId="+u.layerId+",id="+t.featureId+",instanceId="+v.instanceId+"]");
this.showEditAttr(u,t,v)
};
this.deleteFeature=function(w){var v=W.layerManager.getLayerByFeatureId(w.featureId);
if(v==null||!v.editable||!v.features||v.features.length!=1){logger.error("レイヤを編集できません["+v.layerId+"]");
return 
}if(!j.confirm("削除してもよろしいですか？")){return 
}var u=v.features[0];
logger.info("地物削除[layerId="+v.layerId+",featureId="+u.featureId+",instanceId="+w.instanceId+"]");
var t=_service.deleteFeature(v.layerId,w.featureId,w.instanceId);
if(t.statusId!="success"){j.alert("削除に失敗しました。")
}else{c[a]=null;
c=c.compact();
this.showOtherPageByUI(a);
W.vectorManager.setReSearch()
}};
this.callback_addFeature=function(w,x){var v=w.features[0];
var u=false;
if(v.attributes&&v.attributes.length>0){u=true
}else{if(T.timeConfig==3){if(v.beginPeriod!=null||v.endPeriod!=null){u=true
}}}if(u){if(window.confirm("作図を確定してもよろしいですか？\nOKボタンを押下すると属性の入力に移ります。")){this.setRasterHighlightAndRedrawIfNeed(null,null);
this.clearHighlight();
if(h()){B={layer:w,feature:v,featureInfo:x};
if(Q.open()){return 
}B=null
}this.showEditAttr(w,v,x)
}else{if(Z.removeEditTemporaryItem()){W.viewManager.drawThematicRaster()
}}}else{if(window.confirm("作図を確定してもよろしいですか？\nOKボタンを押下すると地物の登録を行います。(入力する属性はありません。)")){logger.info("地物登録(属性なし)");
x.attributes=new Array();
var t=W.service.updateFeature(w.layerId,x);
if(t.statusId!="success"){window.alert("地物登録に失敗しました。")
}W.vectorManager.setReSearch()
}if(Z.removeEditTemporaryItem()){W.viewManager.drawThematicRaster()
}}};
this.callback_editFeatureSpatial=function(u,v){if(window.confirm("作図を確定してもよろしいですか？\nOKボタンを押下すると図形を更新します。")){var t=W.service.updateFeature(u.layerId,v);
if(t.statusId!="success"){window.alert("図形編集に失敗しました。")
}W.vectorManager.setReSearch()
}if(Z.removeEditTemporaryItem()){W.viewManager.drawThematicRaster()
}};
this.showEditAttr=function(y,AC,t){var x=j.document.createTextNode(q.title.titleEditValue);
I.innerHTML="";
I.appendChild(x);
Element.Methods.hide(G);
Element.Methods.hide(N);
var w=q.table;
var z=j.document.createElement("div");
z.className=w.layerNameClass;
var AA=j.document.createTextNode(y.caption);
z.appendChild(AA);
var u=this.createFormPart(y,AC,t,w);
var AB=j.document.createElement("div");
AB.innerHTML="<iframe id='"+o+"'name='"+o+"' style='width:0px;height:0px;border-width:0px;'></iframe>";
var v=j.document.getElementById(f);
v.innerHTML="";
v.appendChild(z);
v.appendChild(u);
v.appendChild(AB);
return t
};
this.createFormPart=function(AU,y,AR,AS){var AQ=j.document.createElement("table");
AQ.rules="all";
AQ.className=AS.tableClass;
this.createHeaderPart(AQ,AS);
var v=j.document.createElement("form");
v.id=b;
v.method="post";
v.action=W.service.getUpdateFeatureWithFileUrl();
v.target=o;
v.enctype="multipart/form-data";
v.encoding="multipart/form-data";
v.onsubmit=this.returnFalse;
this.appendParameter(v,AU.layerId,AR);
var AG=j.document.createElement("div");
AG.id=U;
AG.className=AS.invalidMessageClassName;
v.appendChild(AG);
v.appendChild(AQ);
var AO=this.toAttrMap(AR);
var w=AR.instanceId?true:false;
var t=j.document.createElement("tbody");
AQ.appendChild(t);
var AJ=y.attributes;
if(AJ.length==0){var u=j.document.createElement("tr");
var z=j.document.createElement("td");
z.className=AS.nameCellClass;
z.innerHTML="-";
u.appendChild(z);
var x=j.document.createElement("td");
x.className=AS.valueCellClass;
x.innerHTML="-";
u.appendChild(x);
t.appendChild(u)
}else{for(var AN=0;
AN<AJ.length;
AN++){var AK=AJ[AN];
var u=j.document.createElement("tr");
u.id=this.getFormItemTrId(AK.name);
var z=j.document.createElement("td");
z.className=AS.nameCellClass;
var AF=j.document.createTextNode(AK.caption);
z.appendChild(AF);
u.appendChild(z);
if(AK.required){var AM=j.document.createElement("span");
var AE=j.document.createTextNode(AS.requiredValue);
AM.appendChild(AE);
AM.className=AS.requiredValueClassName;
z.appendChild(AM)
}var x=j.document.createElement("td");
x.className=AS.valueCellClass;
var AI=AO[AK.name];
if(AI==null){AI={name:AK.name,values:null}
}if(!AI.values){AI.values=new Array(1);
AI.values[0]={value:"",url:""}
}x.appendChild(this.createAttributeEdit(AK,AI,w));
u.appendChild(x);
t.appendChild(u)
}}if(T.timeConfig==3){var AB=y.beginPeriod;
var AL=y.endPeriod;
if(AB!=null||AL!=null){var AT=j.document.createElement("div");
AT.className=AS.timeNameClass;
AT.innerHTML="■有効期間";
v.appendChild(AT);
var AH=j.document.createElement("table");
AH.rules="all";
AH.className=AS.timeTableClass;
var AP=j.document.createElement("tbody");
if(AB!=null){var u=j.document.createElement("tr");
u.id=this.getFormItemTrId(AB.name);
var z=j.document.createElement("td");
z.className=AS.timeEditNameCellClass;
var AC=j.document.createTextNode(AB.caption);
z.appendChild(AC);
u.appendChild(z);
var AI=AR.beginPeriod;
var x=j.document.createElement("td");
x.className=AS.timeEditValueCellClass;
u.appendChild(x);
x.appendChild(this.createAttributeEdit(AB,AI,w));
AP.appendChild(u)
}if(AL!=null){var u=j.document.createElement("tr");
u.id=this.getFormItemTrId(AL.name);
var z=j.document.createElement("td");
z.className=AS.timeEditNameCellClass;
var AA=j.document.createTextNode(AL.caption);
z.appendChild(AA);
u.appendChild(z);
var AI=AR.endPeriod;
var x=j.document.createElement("td");
x.className=AS.timeEditValueCellClass;
u.appendChild(x);
x.appendChild(this.createAttributeEdit(AL,AI,w));
AP.appendChild(u)
}AH.appendChild(AP);
v.appendChild(AH)
}}var AD=this.createButtonPart();
v.appendChild(AD);
return v
};
this.returnFalse=function(){return false
};
this.createButtonPart=function(){var u=j.document.createElement("input");
u.type="button";
u.value="完了";
u.className=q.button.btnClass;
u.onclick=this._onSumbitEditAttr.bind(this);
var v=j.document.createElement("input");
v.type="button";
v.value="キャンセル";
v.className=q.button.btnClass;
v.onclick=this.onCancelEditAttr.bind(this);
var t=j.document.createElement("div");
t.appendChild(u);
t.appendChild(v);
return t
};
this.appendParameter=function(v,w,t){if(w){var y=j.document.createElement("input");
y.id=this.getFormItemId("__layerId");
y.type="hidden";
y.name="__layerId";
y.value=w;
v.appendChild(y)
}if(t.featureId){var x=t.featureId;
var y=j.document.createElement("input");
y.id=this.getFormItemId("__featureId");
y.type="hidden";
y.name="__featureId";
y.value=x;
v.appendChild(y)
}if(t.instanceId){var AA=t.instanceId;
var y=j.document.createElement("input");
y.id=this.getFormItemId("__instanceId");
y.type="hidden";
y.name="__instanceId";
y.value=AA;
v.appendChild(y)
}if(t.style){var u=t.style;
var y=j.document.createElement("input");
y.id=this.getFormItemId("__style");
y.type="hidden";
y.name="__style";
y.value=u;
v.appendChild(y)
}if(t.text){var AB=t.text;
var y=j.document.createElement("input");
y.id=this.getFormItemId("__text");
y.type="hidden";
y.name="__text";
y.value=AB;
v.appendChild(y)
}if(t.spatial){var z=t.spatial;
if(z.spatialType=="point"){var y=j.document.createElement("input");
y.id=this.getFormItemId("__point");
y.type="hidden";
y.name="__point";
y.value=z.point.toString();
v.appendChild(y)
}else{if(z.spatialType=="curve"){var y=j.document.createElement("input");
y.id=this.getFormItemId("__curve");
y.type="hidden";
y.name="__curve";
y.value=z.curve.toString();
v.appendChild(y)
}else{if(z.spatialType=="surface"){var y=j.document.createElement("input");
y.id=this.getFormItemId("__surface");
y.type="hidden";
y.name="__surface";
y.value=z.surface.exterior.toString();
v.appendChild(y)
}}}}};
this.isAddMode=function(){return this.getValueByInput("__instanceId")==null
};
this.isCancelShowDetail=function(){try{if(j){var t=j.document.getElementById(b);
if(t){if(!j.confirm("属性の編集をキャンセルしてもよろしいですか？")){return true
}this.onCancelEditAttrImpl()
}}if(W.viewManager.getDrawPurpose()==DRAW_PURPOSE.EDIT_FEATURE){if(!j.confirm("図形の編集をキャンセルしてもよろしいですか？")){return true
}W.viewManager.drawCancel()
}}catch(u){}return false
};
this.getFormItemId=function(t){return b+t
};
this.getFormItemTrId=function(t){return k+t
};
this.createAttributeEdit=function(t,y,x){var z=j.document.createElement("div");
if(t.codeId){this.createCodeAttribute(z,t,y)
}else{if(y&&y.values&&y.values.length>1){var u=y.values;
var w="";
for(var v=0;
v<u.length;
v++){if(v!=0){w+="<br />"
}w+=u[v].value
}z.innerHTML=w;
return z
}switch(t.type){case AttributeType.STRING:case AttributeType.INT:case AttributeType.DOUBLE:this.createInputAttribute(z,t,y);
break;
case AttributeType.ABSOLUTE_URL:this.createInputAttribute(z,t,y);
break;
case AttributeType.RELATIVE_URL:this.createRelativeURLAttribute(z,t,y);
break;
case AttributeType.FILE:this.createFileAttribute(z,t,y,x);
break;
case AttributeType.B_PERIOD:case AttributeType.E_PERIOD:this.createTimeAttribute(z,t,y);
break;
default:break
}}return z
};
this.createCodeAttribute=function(u,AC,AF){var AH=AF.values;
if(AH&&AH.length==1){var AG=null;
if(AF!=null){AG=AH[0].value
}try{var AE=j.document.createElement("select");
AE.id=this.getFormItemId(AC.name);
AE.name=AC.name;
var y=null;
var w=j.document.createElement("option");
w.text="";
w.value="";
try{AE.add(w,y)
}catch(AB){y=-1;
AE.add(w,y)
}var AD=0;
var t=this.getCodeItems(AC.codeId);
for(var AA=0;
AA<t.length;
AA++){var w=j.document.createElement("option");
w.text=t[AA].value;
w.value=t[AA].code;
AE.add(w,y);
if(t[AA].code==AG){AD=AA+1
}}AE.selectedIndex=AD;
u.appendChild(AE);
return 
}catch(AB){var x=AB.description?AB.description:AB;
logger.error("コード属性["+AC.name+"]のselect要素作成でエラーが発生しました。 : "+x)
}}if(AH){for(var AA=0;
AA<AH.length;
AA++){if(AA!=0){var AI=j.document.createElement("br");
u.appendChild(AI)
}var v=this.getCode(AC.codeId,AH[AA].value);
var z=j.document.createTextNode(v);
u.appendChild(z)
}}};
this.createInputAttribute=function(x,t,w){var v=j.document.createElement("input");
v.id=this.getFormItemId(t.name);
v.type="text";
v.name=t.name;
var u=w.values;
if(u&&u.length==1){v.value=u[0].value
}x.appendChild(v)
};
this.createTimeAttribute=function(x,t,w){var u=j.document.createElement("a");
u.id=t.name;
u.href="javascript:void(0)";
if(w&&w.value){u.innerHTML=n(w.value.value)
}else{u.innerHTML=n("")
}u.onclick=this.showCalendar.bind(this,t.type);
x.appendChild(u);
var v=j.document.createElement("input");
v.type="hidden";
v.name=t.name;
v.id=this.getFormItemId(t.name);
if(w&&w.value&&w.value.value&&w.value.value.length==10){v.value=w.value.value
}else{if(t.type==AttributeType.B_PERIOD){v.value="0000-00-00"
}else{v.value="9999-99-99"
}}x.appendChild(v)
};
this.createRelativeURLAttribute=function(y,t,x){var w=j.document.createTextNode(t.baseUrl);
y.appendChild(w);
var v=j.document.createElement("input");
v.id=this.getFormItemId(t.name);
v.type="text";
v.name=t.name;
var u=x.values;
if(u&&u.length==1){v.value=u[0].value
}y.appendChild(v)
};
this.createFileAttribute=function(u,AA,AC,t){var y=j.document.createElement("div");
var x=j.document.createTextNode(AC.values[0].value);
y.appendChild(x);
u.appendChild(y);
var v;
if(t){var w=j.document.createElement("div");
v=j.document.createElement("input");
v.type="checkbox";
var z=j.document.createElement("label");
z.appendChild(v);
z.appendChild(j.document.createTextNode("削除または差替え"));
w.appendChild(z);
u.appendChild(w)
}var AB=j.document.createElement("input");
AB.id=this.getFormItemId(AA.name);
AB.type="file";
AB.name=AA.name;
AB.disabled=t;
AB.defaultValue=AC.values[0].value;
u.appendChild(AB);
if(t){v.onclick=this.fileAttributeCheckClicked.bind(this,v,AB)
}};
this.fileAttributeCheckClicked=function(t,u){u.disabled=!t.checked
};
this.getCodeItems=function(v){var t=W.service.getCodeCategory(v);
if(t.statusId=="success"){var u=t.result;
return u.codes
}return new Array()
};
this._onSumbitEditAttr=function(){setTimeout(this._onSumbitEditAttrImpl.bind(this),0)
};
this._onSumbitEditAttrImpl=function(){var u=j.document.getElementById(b);
j.document.getElementById(U).innerHTML="";
var AC=this.getValueByInput("__layerId");
var Aa=new Object();
var AS=this.getValueByInput("__featureId");
if(AS){Aa.featureId=AS
}var AX=this.getValueByInput("__instanceId");
if(AX){Aa.instanceId=AX
}var AU=this.getValueByInput("__style");
if(AU){Aa.style=AU
}var AH=this.getValueByInput("__text");
if(AH){Aa.text=AH
}logger.info("地物登録/属性更新 [layerId="+AC+",featureId="+AS+",instanceId="+AX+",__style="+AU+",__text="+AH+"]");
var AM=false;
var AP=false;
var AW=q.table.invalidTrClassName;
var AV=new Array();
Aa.attributes=AV;
var z=W.layerManager.getFeature(AS);
var AL=z.attributes;
for(var AT=0;
AT<AL.length;
AT++){if(AL[AT].type==AttributeType.FILE){AP=true
}var AY=j.document.getElementById(this.getFormItemId(AL[AT].name));
if(!AY){continue
}var AQ=null;
if(AL[AT].codeId){AQ=this.getValueBySelect(AL[AT].name)
}else{if(AL[AT].type==AttributeType.FILE){AQ=this.getValueByInputFile(AL[AT].name)
}else{AQ=this.getValueByInput(AL[AT].name)
}}var AJ=this.validation(AL[AT],AQ);
var t=j.document.getElementById(this.getFormItemTrId(AL[AT].name));
if(!AJ){AM=true;
var AE=j.document.getElementById(U);
var AG=j.document.createElement("div");
var AK=j.document.createTextNode(this.getAttrTypeName(AL[AT])+"型の属性["+AL[AT].caption+"]の値が無効です。");
AG.appendChild(AK);
AE.appendChild(AG);
Element.Methods.addClassName(t,AW);
logger.error("invalid attr value [name:"+AL[AT].name+", value:"+AQ+"]")
}else{Element.Methods.removeClassName(t,AW)
}AV[AV.length]={name:AL[AT].name,values:[{value:AQ}]};
logger.debug("  [name:"+AL[AT].name+", value:"+AQ+"]")
}if(T.timeConfig==3){var v=new Array(z.beginPeriod,z.endPeriod);
var AA=new Array("00000000","99999999");
for(var AT=0;
AT<v.length;
AT++){if(v[AT]==null){continue
}var AY=j.document.getElementById(this.getFormItemId(v[AT].name));
var AQ=this.getValueByInput(v[AT].name);
AA[AT]=AQ;
var AJ=this.validation(v[AT],AQ);
var t=j.document.getElementById(this.getFormItemTrId(v[AT].name));
if(!AJ){AM=true;
var AE=j.document.getElementById(U);
var AG=j.document.createElement("div");
var AK=j.document.createTextNode(this.getAttrTypeName(v[AT])+"型の属性["+v[AT].caption+"]の値が無効です。");
AG.appendChild(AK);
AE.appendChild(AG);
Element.Methods.addClassName(t,AW);
logger.error("invalid attr value [name:"+v[AT].name+", value:"+AQ+"]")
}else{Element.Methods.removeClassName(t,AW)
}AV[AV.length]={name:v[AT].name,values:[{value:AQ}]};
logger.debug("  [name:"+v[AT].name+", value:"+AQ+"]")
}if(v[0]!=null&&v[1]!=null){if(AA[0]>AA[1]){AM=true;
var AE=j.document.getElementById(U);
var AG=j.document.createElement("div");
AG.innerHTML="有効期間が不正です。";
AE.appendChild(AG);
var Ab=j.document.getElementById(this.getFormItemTrId(v[0].name));
var AZ=j.document.getElementById(this.getFormItemTrId(v[1].name));
Element.Methods.addClassName(Ab,AW);
Element.Methods.addClassName(AZ,AW);
logger.error("invalid begin/end"+AA[0]+" : "+AA[1])
}}}if(AM){j.alert("無効な属性値があります。");
return 
}var AR=this.getValueByInput("__point");
if(AR){var y=new Spatial.Information();
y.spatialType="point";
var AO=AR.split(",");
y.point=new Spatial.Point(AO[0],AO[1]);
Aa.spatial=y
}var AI=this.getValueByInput("__curve");
if(AI){var y=new Spatial.Information();
y.spatialType="curve";
y.curve=Spatial.pointstr2curve(AI);
Aa.spatial=y
}var AN=this.getValueByInput("__surface");
if(AN){var y=new Spatial.Information();
y.spatialType="surface";
y.surface=new Spatial.Surface();
y.surface.exterior=Spatial.pointstr2curve(AN);
Aa.spatial=y
}var AD=this.isAddMode();
var w=null;
var x=u.getElementsByTagName("input");
for(var AT=0;
AT<x.length;
AT++){if(x[AT].type=="button"){x[AT].disabled=true
}}if(AP){var AB=j.document.getElementById(o);
Element.Methods.observe(AB,"load",J,false);
u.submit()
}else{var AF=W.service.updateFeature(AC,Aa);
this.afterEditAttr(AF)
}};
this.editFrameLoaded=function(){setTimeout(this.editFrameLoadedImpl.bind(this),0)
};
this.editFrameLoadedImpl=function(){var u=j.document.getElementById(o);
Element.Methods.stopObserving(u,"load",J,false);
var t=new Object();
var v=u.contentWindow.document;
v=v.getElementById("result");
var w=this.getXMLNodeValue(v.getElementsByTagName("statusId"));
if(w=="success"){t.statusId="success";
t.result={featureId:this.getXMLNodeValue(v.getElementsByTagName("featureId")),instanceId:this.getXMLNodeValue(v.getElementsByTagName("instanceId"))}
}else{t.statusId="error"
}this.afterEditAttr(t)
};
this.getXMLNodeValue=function(t){var u=null;
if(t&&t.length>0){var v=t[0];
if(v&&v.firstChild&&v.firstChild.nodeValue){v.normalize();
u=v.firstChild.nodeValue
}}return u
};
this.afterEditAttr=function(t){var u=this.isAddMode();
var w=null;
var x=null;
if(t.statusId!="success"){if(u){j.alert("地物登録に失敗しました。")
}else{j.alert("属性編集に失敗しました。")
}}else{if(u){j.alert("地物を登録しました。")
}else{j.alert("属性を更新しました。")
}w=t.result;
var v=W.service.getFeatureById(w.featureId,w.instanceId,false);
if(v.statusId=="success"){x=v.result;
if(!u&&c&&c.length>a){c[a]=x
}else{c=new Array(1);
c[0]=x;
a=0
}}}if(u){var y=false;
if(Z.removeEditTemporaryItem()){y=true
}if(w){if(this.setRasterHighlight(w.featureId,w.instanceId)){y=true
}this.show(a)
}else{if(this.setRasterHighlight(null,null)){y=true
}this.closeAttrDetail()
}if(y){W.vectorManager.setReSearch();
W.viewManager.drawThematicRaster()
}}else{this.show(a);
if(null==x){W.viewManager.drawThematicRaster();
W.featureManager.innerCloseAttrDetailByUIImpl(false)
}W.vectorManager.setReSearch();
W.vectorManager.drawThematicVector()
}};
this.getValueBySelect=function(v){var t=j.document.getElementById(this.getFormItemId(v));
if(!t||!t.options){return null
}if(t.options.length){var u=t.options;
for(var w=0;
w<u.length;
w++){if(u[w].selected){return u[w].value
}}}else{if(t.options.selected){return t.options.value
}}return null
};
this.getValueByInput=function(u){var t=j.document.getElementById(this.getFormItemId(u));
if(t&&t.value.length>0){return t.value
}return null
};
this.getValueByInputFile=function(u){var v=null;
var t=j.document.getElementById(this.getFormItemId(u));
if(t.disabled){v=t.defaultValue
}else{v=t.value
}if(v&&v.length>0){return v
}return null
};
this.validation=function(t,w){var x=t.required;
var v=false;
switch(t.type){case AttributeType.STRING:v=Validator.string(x,w);
break;
case AttributeType.INT:v=Validator.integer(x,w);
break;
case AttributeType.DOUBLE:v=Validator.real(x,w);
break;
case AttributeType.ABSOLUTE_URL:v=Validator.url(x,w);
break;
case AttributeType.RELATIVE_URL:var u=t.baseUrl+w;
v=Validator.url(x,u);
break;
case AttributeType.FILE:if(!x||w){v=true
}break;
case AttributeType.B_PERIOD:case AttributeType.E_PERIOD:v=Validator.date(x,w);
default:break
}return v
};
this.getAttrTypeName=function(t){switch(t.type){case AttributeType.STRING:return"文字列";
case AttributeType.INT:return"整数";
case AttributeType.DOUBLE:return"小数";
case AttributeType.ABSOLUTE_URL:return"絶対URL";
case AttributeType.RELATIVE_URL:return"相対URL";
case AttributeType.FILE:return"ファイル";
case AttributeType.B_PERIOD:case AttributeType.E_PERIOD:return"日付";
default:return"不明な"
}};
this.onCancelEditAttr=function(){setTimeout(this.onCancelEditAttrImpl.bind(this),0)
};
this.onCancelEditAttrImpl=function(){if(this.isAddMode()){if(Z.removeEditTemporaryItem()){W.viewManager.drawThematicRaster()
}this.closeAttrDetail()
}else{this.show(a)
}try{if(p&&!p.closed){p.close()
}}catch(t){}};
var p;
this.initCalendar=function(){p=new WindowManager(W.configuration.time.window,this.initCalendarDialog1.bind(this));
W.eventHandler.addEventListener(LiteEvent.UNLOAD,p.close.bind(p))
};
this.showCalendar=function(t){if(t==AttributeType.B_PERIOD){p.setInitCallback(this.initCalendarDialog1.bind(this))
}else{p.setInitCallback(this.initCalendarDialog2.bind(this))
}p.open()
};
this.initCalendarDialog1=function(){calendar_callback=this.callbackBeginTime.bind(this);
p.getWindow().callback=this.callbackBeginTime.bind(this)
};
this.initCalendarDialog2=function(){calendar_callback=this.callbackEndTime.bind(this);
p.getWindow().callback=this.callbackEndTime.bind(this)
};
this.callbackBeginTime=function(y,z,w){var x=this.formatNumber(y,4);
var v=this.formatNumber(z,2);
var t=this.formatNumber(w,2);
var u=x+""+v+""+t;
if(u=="99999999"){u="00000000"
}this.updateTimeView("__b_period",u)
};
this.callbackEndTime=function(y,z,w){var x=this.formatNumber(y,4);
var v=this.formatNumber(z,2);
var t=this.formatNumber(w,2);
var u=x+""+v+""+t;
this.updateTimeView("__e_period",u)
};
this.formatNumber=function(u,t){var v=String(u);
while(v.length<t){v="0"+v
}return v
};
this.updateTimeView=function(x,v){var t=this.formatHyphenDateString(v);
var w=document.getElementById(x);
var u;
if(w){u=n(t);
w.innerHTML=u
}j.document.getElementById(this.getFormItemId(x)).value=t
};
this.formatHyphenDateString=function(t){var v=t.substring(0,4);
var w=t.substring(4,6);
var u=t.substring(6,8);
return v+"-"+w+"-"+u
};
this.unifyFeature=function(t){var x=t.result;
var z=new Array;
for(var w=0;
w<x.length;
w++){z.push(x[w]);
if(w+1<x.length){for(var v=w+1;
v<x.length;
v++){var y=false;
if(x[w].featureId==x[v].featureId){for(var u=0;
u<x[w].attributes.length;
u++){if((x[w].attributes[u])&&(x[v].attributes[u])&&(x[w].attributes[u].name==x[v].attributes[u].name)&&(x[w].attributes[u].values[0].value==x[v].attributes[u].values[0].value)){y=true
}else{y=false;
break
}}if(y){z.pop();
break
}}if(y){break
}}}}t.result=z;
return t
};
this.checkOnlyAttrInToshiGroup=function(AE,AD,AH){var v=true;
var AF=new Spatial.Point(AE,AD);
var AI=W.service.getFeatureByPoint(AF,AH,null,false);
AI=this.unifyFeature(AI);
var u=AI.result;
for(var AA=0;
AA<u.length;
AA++){if(AA+1<u.length){var t=null;
var AB=_gisApp.getViewSet().viewSetId;
var AG=toshiModeViewSet[AB];
for(var AE=0;
AE<AG.featureIds.length;
AE++){for(var AD=0;
AD<AG.featureIds[AE].length;
AD++){if(AG.featureIds[AE][AD]==u[AA].featureId){t=AE;
break
}}if(t){break
}}if(t){for(var w=AA+1;
w<u.length;
w++){for(var AC=0;
AC<AG.featureIds[t].length;
AC++){if(AG.featureIds[t][AC]==u[w].featureId){v=false;
return v
}}}}}}return v
};
this.checkToshiModeViewSet=function(){var t=_gisApp.getViewSet().viewSetId;
if(typeof toshiModeViewSet!="undefined"){if(toshiModeViewSet[t]){return true
}}return false
}
}function FeatureSpatialEdit(L){var A=L;
var I=A.configuration.featureEdit;
var B;
var D="styleDiv";
var G;
var E;
var H;
var F;
var M;
var J;
var K;
var C;
this.init=function(N){B=N.style;
G=new WindowManager(I.window,this.initWindow.bind(this));
A.eventHandler.addEventListener(LiteEvent.UNLOAD,G.close.bind(G));
E=new StyleUI(A.configuration.style);
E.init(B,G);
E.showStylePage=this.showStylePage.bind(this);
E.okButtonActionPerformed=this.okButtonActionPerformed.bind(this)
};
this.beginEditSpatial=function(P,Q,U){A.viewManager.drawCancel();
J=null;
K=null;
H=P;
M=U;
if(Q){F=Q.instanceId;
J=Q.style;
K=Q.text
}else{F=null
}var O=H.features[0];
switch(O.spatialType){case SpatialType.POINT:if(H.styleName&&H.styleName.match(/_INSTANCE_/)){if(J){var N=J.split("_");
if(N.length>=4){E.initIcon(N[1])
}}}else{G.close();
J=H.styleName;
var T=Input.MODE.POINT;
var S=this.callback_drawPoint.bind(this);
var R=A.configuration.drawPanel.hint.FEATURE_POINT;
A.viewManager.drawInit(T,S,R,DRAW_PURPOSE.EDIT_FEATURE);
return 
}break;
case SpatialType.LINE:G.close();
var T=Input.MODE.POLYLINE;
var S=this.callback_drawLine.bind(this);
var R=A.configuration.drawPanel.hint.FEATURE_POLYLINE;
A.viewManager.drawInit(T,S,R,DRAW_PURPOSE.EDIT_FEATURE);
return ;
case SpatialType.AREA:break;
case SpatialType.TEXT:E.initText(K);
break;
default:return 
}if(G.open()){return 
}E.updateStylePage();
this.adjustWindowSize()
};
this.initWindow=function(O,N){var P=O.document.getElementById(I.divId);
if(!P){if(N){N++
}else{N=1
}if(N<=A.configuration.pageLoadCheckCount){setTimeout(this.initWindow.bind(this,O,N),A.configuration.pageLoadCheckInterval)
}return 
}this.initWindowImpl()
};
this.initWindowImpl=function(){var R=G.getWindow();
var Q=R.document.getElementsByTagName("head");
var N=Q[0];
var O=R.document.createElement("link");
O.type="text/css";
O.rel="stylesheet";
O.href=I.cssUrl;
N.appendChild(O);
var P=R.document.getElementById(I.divId);
var S=R.document.createElement("div");
S.id=D;
S.className=I.styleDivClassName;
P.appendChild(S);
E.updateStylePage();
this.adjustWindowSize()
};
this.adjustWindowSize=function(){var O;
var N;
switch(H.features[0].spatialType){case SpatialType.POINT:O=I.windowSize.point.width;
N=I.windowSize.point.height;
break;
case SpatialType.AREA:O=I.windowSize.area.width;
N=I.windowSize.area.height;
break;
case SpatialType.TEXT:O=I.windowSize.text.width;
N=I.windowSize.text.height;
break;
default:return 
}var P=G.getWindow();
P.resizeTo(O,N)
};
this.showStylePage=function(){var O=G.getWindow();
var N=O.document.getElementById(D);
N.innerHTML="";
switch(H.features[0].spatialType){case SpatialType.POINT:this.showIconPage();
break;
case SpatialType.LINE:break;
case SpatialType.AREA:this.showAreaPage();
break;
case SpatialType.TEXT:this.showTextPage();
break;
default:break
}};
this.showIconPage=function(){var Q=G.getWindow();
var P=E.createIconCategoryPart();
var R=E.createIconPart();
var N=E.createButtonPart();
var O=Q.document.getElementById(D);
O.appendChild(P);
O.appendChild(R);
O.appendChild(N)
};
this.showAreaPage=function(){var Q=G.getWindow();
var P=E.createAreaDrawTypePart();
var N=E.createButtonPart();
var O=Q.document.getElementById(D);
O.appendChild(P);
O.appendChild(N)
};
this.showTextPage=function(){var Q=G.getWindow();
var P=E.createTextPart();
var N=E.createButtonPart();
var O=Q.document.getElementById(D);
O.appendChild(P);
O.appendChild(N)
};
this.okButtonActionPerformed=function(N){switch(H.features[0].spatialType){case SpatialType.POINT:this.okButtonActionPerformed_Point(N);
break;
case SpatialType.AREA:this.okButtonActionPerformed_Area(N);
break;
case SpatialType.TEXT:this.okButtonActionPerformed_Text(N);
break;
default:G.close();
break
}};
this.okButtonActionPerformed_Point=function(N){if(N.icon==null){var O=G.getWindow();
O.alert("アイコンを選択してください");
return 
}J=H.styleName.replace("INSTANCE",N.icon.iconId);
var Q=Input.MODE.POINT;
var R=this.callback_drawPoint.bind(this);
var P=A.configuration.drawPanel.hint.FEATURE_POINT;
A.viewManager.drawInit(Q,R,P,DRAW_PURPOSE.EDIT_FEATURE);
G.close()
};
this.okButtonActionPerformed_Area=function(N){var P;
var O;
if(N.areaType.drawType=="rect"){P=Input.MODE.RECT;
O=A.configuration.drawPanel.hint.FEATURE_RECT
}else{if(N.areaType.drawType=="circle"){P=Input.MODE.CIRCLE;
O=A.configuration.drawPanel.hint.FEATURE_CIRCLE
}else{P=Input.MODE.POLYGON;
O=A.configuration.drawPanel.hint.FEATURE_POLYGON
}}var Q=this.callback_drawArea.bind(this);
A.viewManager.drawInit(P,Q,O,DRAW_PURPOSE.EDIT_FEATURE);
G.close()
};
this.okButtonActionPerformed_Text=function(N){if(N.text==null||N.text.length==0){var O=G.getWindow();
O.alert("テキストを入力してください");
return 
}K=N.text;
var Q=Input.MODE.POINT;
var R=this.callback_drawText.bind(this);
var P=A.configuration.drawPanel.hint.FEATURE_TEXT;
A.viewManager.drawInit(Q,R,P,DRAW_PURPOSE.EDIT_FEATURE);
G.close()
};
this.callback_drawPoint=function(O){logger.debug("点地物("+J+") : "+O.getCoords());
var P=O.getPoint();
var N=new Spatial.Information();
N.spatialType="point";
N.point=A.viewManager.calcXYPoint(P.getX(),P.getY());
this.drawCommon(N)
};
this.callback_drawLine=function(P){logger.debug("線地物 : "+P.getCoords());
var O=new Spatial.Information();
O.spatialType="curve";
var N=A.viewManager.currentView;
O.curve=Spatial.points2curve(P.getCoords().split(","),N.getBoundingBox(),N.width,N.height);
this.drawCommon(O)
};
this.callback_drawArea=function(Q){logger.debug("面地物 : "+Q.getCoords());
var P=new Spatial.Information();
P.spatialType="surface";
var N=new Spatial.Surface();
var O=A.viewManager.currentView;
N.exterior=Spatial.points2curve(Q.getCoords().split(","),O.getBoundingBox(),O.width,O.height);
P.surface=N;
this.drawCommon(P)
};
this.callback_drawText=function(O){logger.debug("テキスト地物("+K+") : "+O.getCoords());
var P=O.getPoint();
var N=new Spatial.Information();
N.spatialType="point";
N.point=A.viewManager.calcXYPoint(P.getX(),P.getY());
this.drawCommon(N)
};
this.drawCommon=function(O){var R=new Object();
R.featureId=H.features[0].featureId;
R.instanceId=F;
R.style=J;
R.text=K;
R.spatial=O;
var P=new Spatial.TemporaryItem();
switch(H.features[0].spatialType){case SpatialType.POINT:P.itemType="point";
P.styleName=R.style;
P.point=O.point;
break;
case SpatialType.LINE:P.itemType="curve";
P.styleName=H.styleName;
P.curve=O.curve;
break;
case SpatialType.AREA:P.itemType="surface";
P.styleName=H.styleName;
P.surface=O.surface;
break;
case SpatialType.TEXT:P.itemType="text";
P.styleName=H.styleName;
var Q=new Spatial.Text();
Q.point=O.point;
Q.text=R.text;
P.text=Q;
break;
default:break
}var N=new Array();
N[0]=P;
A.service.addTemporaryItem(TemporaryItemCategory.EDIT_FEATURE,N);
C=true;
A.viewManager.drawThematicRaster();
A.viewManager.drawCancel();
M(H,R)
};
this.removeEditTemporaryItem=function(){var N=C;
if(C){A.service.removeTemporaryItem([TemporaryItemCategory.EDIT_FEATURE],null)
}C=false;
return N
}
}var Validator={string:function(B,A){if(B){if(!A||A.length==0){return false
}}else{}return true
},integer:function(D,B){if(B){B=B.toString().strip()
}else{B=""
}var C=/^[-]?\d+$/;
var A=B.match(C);
if(D){return A?true:false
}else{return(B.length==0||(A?true:false))
}},real:function(D,B){if(B){B=B.toString().strip()
}else{B=""
}var C=/^[-]?\d*\.?\d*$/;
var A=(B.match(/\d/)&&B.match(C));
if(D){return A?true:false
}else{return(B.length==0||(A?true:false))
}},url:function(D,B){if(B){B=B.toString().strip()
}else{B=""
}var C=/^(ftp|https?):\/\/([A-Za-z0-9\.-]{3,})([-_.!~*\'()a-zA-Z0-9;\/?:\@&=+\$,%#]*)$/;
var A=B.match(C);
A=A?true:false;
if(D){return A
}else{return(B.length==0||A)
}},date:function(F,D){if(F){if(!D||D.length==0){return false
}}if(!D||D.length!=10){return false
}if(D=="9999-99-99"||D=="0000-00-00"){return true
}var C=D.substring(0,4);
var E=D.substring(5,7);
var B=D.substring(8,10);
var A=new Date(C,E-1,B);
if((A.getDate()!=B)||(A.getMonth()!=E-1)||(A.getFullYear()!=C)){return false
}return true
}};
function Icon(A){this.src=A.src;
this.width=A.width;
this.height=A.height;
this.baseX=A.baseX;
this.baseY=A.baseY;
this.drawIcon=function(G,C,I,F,B){if(!G.iconImg){var E=document.createElement("img");
E.alt="";
E.src=this.src;
E.style.width=this.width+"px";
E.style.height=this.height+"px";
E.style.position="relative";
E.style.left=-1*this.baseX+"px";
E.style.top=-1*this.baseY+"px";
E.galleryImg="no";
G.appendChild(E);
G.iconImg=E
}var D=(C/F*100);
var H=(I/B*100);
G.style.position="absolute";
G.style.left=D+"%";
G.style.top=H+"%"
}
}var Input=new Object();
Input.MODE={NONE:"none",POINT:"point",LINE:"line",POLYLINE:"polyline",POLYGON:"polygon",RECT:"rect",CIRCLE:"cirle"};
Input.TYPE={NONE:"none",POINT:"point",LINE:"line",POLYLINE:"polyline",POLYGON:"polygon",RECT:"rect",CIRCLE:"cirle"};
Input.CSS={POINT:"rubberband",ICON:"icon",RECT:"rect"};
Input.image={IMAGE_BLANK:"../image/input/blank.gif",IMAGE_POINT:"../image/input/point.gif",IMAGE_ICON:"../image/input/blank.gif"};
Input.param={circle:{CIRCLE_DIVIDE_COORD:60,CIRCLE_DIVIDE_DRAW:720},zIndex:"299"};
Input.Control=function(N){var H=Input.MODE.NONE;
var A=null;
var X=0;
var O=200;
var L=new Array();
var G=200;
var T=null;
var E=null;
var U=null;
var P=2;
var B=null;
var Q=null;
var C=null;
var W=new Logger("debug");
var V=null;
var S=false;
if(!N){N="K_input"
}var K=N+"_pn_";
var D=N+"_ln_";
var F=N+"_pl_";
var I=N+"_pg_";
var R=N+"_rc_";
var J=N+"_cl_";
N=null;
this.oncomplete;
this.onclear;
this.initRubberBand=function(){for(var Y=0;
Y<M.length;
Y++){M[M[Y].mode]=M[Y]
}H=Input.MODE.NONE;
A=null;
U=null;
X=0;
L=new Array()
};
this.startInput=function(c,b,Z){this.clearInput();
H=c;
A=new Input.InputImage(b);
C=Z;
var Y=M[H];
var a=A.getNode();
if(Y){G=parseInt(Y.interval);
O=parseInt(Y.maxPoints);
if(a){a.onclick=Y.click;
a.ondblclick=Y.dblclick;
a.onmousedown=Y.mousedown;
a.onmouseup=Y.mouseup;
a.onmousemove=Y.mousemove;
if(V==null){V=a.style.zIndex;
a.style.zIndex=Input.param.zIndex
}}}else{G=500;
O=150;
if(a){a.onclick=null;
a.ondblclick=null;
a.onmousedown=null;
a.onmouseup=null;
a.onmousemove=null
}}T=window.setInterval(this.checkEvent.bind(this),G)
};
this.clearInput=function(){this.clearEvent();
this.clearItem();
X=0;
H=Input.MODE.NONE;
A=null;
if(this.onclear){this.onclear()
}};
this.clearEvent=function(){G=-1;
if(T){window.clearInterval(T);
T=null
}if(A){var Y=A.getNode();
Y.coordsClick=null;
Y.coordsClickPrev=null;
Y.coordsDblClick=null;
Y.coordsMouseDown=null;
Y.coordsMouseDownPrev=null;
Y.coordsMouseUp=null;
Y.coordsMouseUpPrev=null;
Y.coordsMouseMove=null;
Y.coordsMouseMovePrev=null;
Y.executing=false;
if(V!=null){Y.style.zIndex=V;
V=null
}}E=null
};
this.clearItem=function(){if(L){var Y;
for(Y=0;
Y<L.length;
Y++){L[Y].clear()
}L.length=0
}if(B){B.clear();
B=null
}if(Q){Q.clear();
Q=null
}if(U){U.parentNode.removeChild(U);
U=null
}};
this.cancelPreviousInput=function(){var Y=false;
switch(H){case Input.MODE.POINT:break;
case Input.MODE.LINE:if(X>0){L[X-1].clear();
X--;
L.length=X;
Y=true
}break;
case Input.MODE.POLYLINE:if(X>0){L[X-1].clear();
X--;
L.length=X;
Y=true
}break;
case Input.MODE.POLYGON:if(X>0){L[X-1].clear();
X--;
L.length=X;
Y=true
}if(X==1){L[0].clear();
X--;
L.length=X;
Y=true
}else{if(X>0){var a=L[0].getPoint1();
var Z=L[X-1].getPoint2();
a.setX(Z.getX());
a.setY(Z.getY());
L[0].redraw()
}}break;
case Input.MODE.RECT:if(X>0){L[X-1].clear();
X--;
L.length=X;
U.style.visibility="hidden";
Y=true
}break;
case Input.MODE.CIRCLE:if(B){B.clear();
B=null;
Y=true
}break;
case Input.MODE.NONE:break;
default:break
}return Y
};
this.endInput=function(){var Y=false;
switch(H){case Input.MODE.POINT:break;
case Input.MODE.LINE:break;
case Input.MODE.POLYLINE:if(X>=2){L[X-1].clear();
X--;
L.length=X;
this.completeInput(new Input.SimpleItem(L,Input.TYPE.POLYLINE));
Y=true
}break;
case Input.MODE.POLYGON:if(X>3){var a=L[0].getPoint1();
var Z=L[X-1].getPoint1();
a.setX(Z.getX());
a.setY(Z.getY());
L[0].redraw();
L[X-1].clear();
X--;
L.length=X;
this.completeInput(new Input.SimpleItem(L,Input.TYPE.POLYGON));
Y=true
}break;
case Input.MODE.RECT:break;
case Input.MODE.CIRCLE:break;
case Input.MODE.NONE:break;
default:break
}return Y
};
this.completeInput=function(Y){H=Input.MODE.NONE;
this.clearEvent();
X=0;
if(C){C(Y)
}if(this.oncomplete){this.oncomplete()
}};
this.reloadView=function(){if(L&&H!=Input.MODE.RECT){for(var Y=0;
Y<L.length;
Y++){L[Y].redraw()
}}if(B){B.redraw()
}if(Q){Q.redraw()
}if(U){}S=false
};
this.scrollBy=function(Y,b){S=true;
if(A){if(L){var a=H==Input.MODE.RECT;
for(var Z=0;
Z<L.length;
Z++){L[Z].scrollBy(Y,b)
}}if(B){B.scrollBy(Y,b)
}if(Q){Q.scrollBy(Y,b)
}if(U){}}};
this.zoomBy=function(c){S=true;
if(A){var Z=A.getWidth();
var b=A.getHeight();
var Y=Z/2;
var f=b/2;
if(L){var d=H==Input.MODE.RECT;
for(var a=0;
a<L.length;
a++){L[a].zoomBy(Y,f,c)
}}if(B){B.zoomBy(Y,f,c)
}if(Q){Q.zoomBy(Y,f,c)
}if(U){}}};
this.checkEvent=function(){var Y=A.getNode();
if(!Y.executing&&!S){Y.executing=true;
if(Y.coordsDblClick){W.debug("dblclick");
if(E&&E.type==Input.Event.EVENT_CLICK){Y.coordsDblClick=E.coords
}this.onDblClickCommon(Y.coordsDblClick);
E=new Input.Event(Input.Event.EVENT_DBLCLICK,Y.coordsDblClick);
Y.coordsDblClick=null;
Y.coordsMouseDown=null;
Y.coordsMouseDownPrev=null;
Y.coordsMouseUp=null;
Y.coordsMouseUpPrev=null;
Y.coordsMouseMove=null;
Y.coordsMouseMovePrev=null;
Y.coordsClick=null;
Y.coordsClickPrev=null
}if(Y.coordsMouseMove){W.debug("move");
if(!Y.coordsMouseMove.equals(Y.coordsMouseMovePrev)){this.onMouseMoveCommon(Y.coordsMouseMove)
}E=new Input.Event(Input.Event.EVENT_MOUSE_MOVE,Y.coordsMouseMove);
Y.coordsMouseMovePrev=Y.coordsMouseMove;
Y.coordsMouseMove=null
}if(Y.coordsMouseDown){W.debug("down");
if(!Y.coordsMouseDown.equals(Y.coordsMouseDownPrev)){this.onMouseDownCommon(Y.coordsMouseDown)
}E=new Input.Event(Input.Event.EVENT_MOUSE_DOWN,Y.coordsMouseDown);
Y.coordsMouseDownPrev=Y.coordsMouseDown;
Y.coordsMouseDown=null
}if(Y.coordsMouseUp){W.debug("up");
if(!Y.coordsMouseUp.equals(Y.coordsMouseUpPrev)){this.onMouseUpCommon(Y.coordsMouseUp)
}E=new Input.Event(Input.Event.EVENT_MOUSE_UP,Y.coordsMouseUp);
Y.coordsMouseUpPrev=Y.coordsMouseUp;
Y.coordsMouseUp=null
}if(Y.coordsClick){W.debug("click");
if(!Y.coordsClick.isNeighbor(Y.coordsClickPrev)){this.onClickCommon(Y.coordsClick)
}E=new Input.Event(Input.Event.EVENT_CLICK,Y.coordsClick);
Y.coordsClickPrev=Y.coordsClick;
Y.coordsClick=null
}Y.executing=false
}};
this.onClick=function(Z){var Y=(Z||window.event);
var b=Event.element(Y);
if(!b.executing&&!S){var a=getPositionedEventCoords(Y);
b.coordsClick=new Input.Coords(a.left,a.top)
}};
this.onClickCommon=function(g){switch(H){case Input.MODE.POINT:if(X==0){X=1;
var Z=new Input.Point(g.left,g.top);
Q=new Input.Icon(A,Z,Input.image.IMAGE_ICON);
Q.draw();
this.completeInput(Q)
}break;
case Input.MODE.LINE:if(X==0){X=1;
var m=new Input.Point(g.left,g.top);
var k=new Input.Point(g.left,g.top);
L[0]=new Input.LineSegment(A,m,k,D+"0",O);
L[0].draw()
}else{L[0].getPoint2().setX(g.left);
L[0].getPoint2().setY(g.top);
this.completeInput(new Input.SimpleItem(L,Input.TYPE.LINE))
}break;
case Input.MODE.POLYLINE:if(X>0){var Z=L[X-1].getPoint2();
Z.setX(g.left);
Z.setY(g.top);
L[X-1].redraw()
}var f=new Input.Point(g.left,g.top);
var d=new Input.Point(g.left,g.top);
L[X]=new Input.LineSegment(A,f,d,F+X,O);
L[X].draw();
X++;
break;
case Input.MODE.POLYGON:if(X>0){var Z=L[X-1].getPoint2();
Z.setX(g.left);
Z.setY(g.top);
L[X-1].redraw()
}else{var f=new Input.Point(g.left,g.top);
var d=new Input.Point(g.left,g.top);
L[X]=new Input.LineSegment(A,f,d,I+X,O);
L[X].draw();
X++
}var f=new Input.Point(g.left,g.top);
var d=new Input.Point(g.left,g.top);
L[X]=new Input.LineSegment(A,f,d,I+X,O);
L[X].draw();
X++;
break;
case Input.MODE.RECT:if(X==0){X=1;
var m=new Input.Point(g.left,g.top);
var k=new Input.Point(g.left,g.top);
L[0]=new Input.LineSegment(A,m,k,R);
if(!U){U=document.createElement("img");
U.className=Input.CSS.RECT;
U.src=Input.image.IMAGE_BLANK;
A.getNode().parentNode.appendChild(U)
}U.style.left=A.getLeft()+g.left+"px";
U.style.top=A.getTop()+g.top+"px";
U.style.width=0+"px";
U.style.height=0+"px";
U.style.visibility="visible"
}else{L[0].getPoint2().setX(g.left);
L[0].getPoint2().setY(g.top);
var m=L[0].getPoint1();
var j=L[0].getPoint2();
var k=new Input.Point(m.getX(),j.getY());
var h=new Input.Point(j.getX(),m.getY());
var b=new Array();
b[0]=new Input.LineSegment(A,m,k,"rcr_0");
b[1]=new Input.LineSegment(A,k,j,"rcr_1");
b[2]=new Input.LineSegment(A,j,h,"rcr_2");
b[3]=new Input.LineSegment(A,h,m,"rcr_3");
this.completeInput(new Input.SimpleItem(b,Input.TYPE.RECT))
}break;
case Input.MODE.CIRCLE:if(!B){var a=new Input.Point(g.left,g.top);
var Y=1;
B=new Input.Circle(A,a,Y,J+"0",O);
B.xmin=0;
B.ymin=0;
B.xmax=A.getWidth();
B.ymax=A.getHeight();
B.draw()
}else{var a=B.getCenter();
var Y=parseInt(Math.sqrt((a.getX()-g.left)*(a.getX()-g.left)+(a.getY()-g.top)*(a.getY()-g.top)));
B.setRadius(Y);
this.completeInput(B)
}break;
case Input.MODE.NONE:break;
default:break
}};
this.onDblClick=function(Z){var Y=(Z||window.event);
var b=Event.element(Y);
if(!b.executing&&!S){var a=getPositionedEventCoords(Y);
b.coordsDblClick=new Input.Coords(a.left,a.top)
}};
this.onDblClickCommon=function(Y){switch(H){case Input.MODE.LINE:break;
case Input.MODE.POLYLINE:if(X>0){var a=L[X-1].getPoint1();
var Z=L[X-1].getPoint2();
Z.setX(Y.left);
Z.setY(Y.top);
if(a.equals(Z)){L[X-1].clear();
X--;
L.length=X
}else{L[X-1].redraw()
}}if(X>=1){this.completeInput(new Input.SimpleItem(L,Input.TYPE.POLYLINE))
}else{alert("線には最低２点必要です")
}break;
case Input.MODE.POLYGON:if(X>0){var b=L[0].getPoint1();
b.setX(Y.left);
b.setY(Y.top);
L[0].redraw();
var a=L[X-1].getPoint1();
var Z=L[X-1].getPoint2();
Z.setX(Y.left);
Z.setY(Y.top);
if(a.equals(Z)){L[X-1].clear();
X--;
L.length=X
}else{L[X-1].redraw()
}}if(X>=3){this.completeInput(new Input.SimpleItem(L,Input.TYPE.POLYGON))
}else{alert("面には最低３点必要です")
}break;
case Input.MODE.RECT:break;
case Input.MODE.CIRCLE:break;
case Input.MODE.NONE:break;
default:break
}};
this.onMouseDown=function(Z){var Y=(Z||window.event);
var b=Event.element(Y);
if(!b.executing&&!S){var a=getPositionedEventCoords(Y);
b.coordsMouseDown=new Input.Coords(a.left,a.top)
}};
this.onMouseDownCommon=function(Y){switch(H){case Input.MODE.LINE:break;
case Input.MODE.POLYLINE:break;
case Input.MODE.POLYGON:break;
case Input.MODE.RECT:break;
case Input.MODE.CIRCLE:break;
case Input.MODE.NONE:break;
default:break
}};
this.onMouseUp=function(Z){var Y=(Z||window.event);
var b=Event.element(Y);
if(!b.executing&&!S){var a=getPositionedEventCoords(Y);
b.coordsMouseUp=new Input.Coords(a.left,a.top)
}};
this.onMouseUpDocument=function(Z){var Y=(Z||window.event);
var b=Event.element(Y);
if(!b.executing&&!S){var a=getPositionedEventCoords(Y);
a.left-=A.getLeft();
a.top-=A.getTop();
b.coordsMouseUp=new Input.Coords(a.left,a.top)
}};
this.onMouseUpCommon=function(Y){switch(H){case Input.MODE.LINE:break;
case Input.MODE.POLYLINE:break;
case Input.MODE.POLYGON:break;
case Input.MODE.RECT:break;
case Input.MODE.CIRCLE:this.completeInput(new Input.SimpleItem(L,Input.TYPE.CIRCLE));
break;
case Input.MODE.NONE:break;
default:break
}};
this.onMouseMove=function(Z){var Y=(Z||window.event);
var b=Event.element(Y);
if(!b.executing&&!S){var a=getPositionedEventCoords(Y);
b.coordsMouseMove=new Input.Coords(a.left,a.top)
}};
this.onMouseMoveDocument=function(a){var Y=(event||window.event);
var a=Event.element(Y);
if(!a.executing&&!S){if(!Y&&window.event){Y=window.event
}var Z=getPositionedEventCoords(Y);
Z.left=Z.left-A.getLeft();
Z.top=Z.top-A.getTop();
a.coordsMouseMove=new Input.Coords(Z.left,Z.top)
}};
this.onMouseMoveCommon=function(Z){switch(H){case Input.MODE.LINE:if(X>0){var b=L[X-1].getPoint2();
if(b){b.setX(Z.left);
b.setY(Z.top);
L[X-1].redraw()
}}break;
case Input.MODE.POLYLINE:if(X>0){var b=L[X-1].getPoint2();
if(b){b.setX(Z.left);
b.setY(Z.top);
L[X-1].redraw()
}}break;
case Input.MODE.POLYGON:if(X>0){var g=L[0].getPoint1();
if(g){g.setX(Z.left);
g.setY(Z.top)
}var b=L[X-1].getPoint2();
if(b){b.setX(Z.left);
b.setY(Z.top)
}if(g){L[0].redraw()
}if(b){L[X-1].redraw()
}}break;
case Input.MODE.RECT:if(X>0){var d=L[0].getPoint1();
var a=L[0].getPoint2();
a.setX(Z.left);
a.setY(Z.top);
if(U){U.style.left=A.getLeft()+Math.min(d.getX(),a.getX())+"px";
U.style.top=A.getTop()+Math.min(d.getY(),a.getY())+"px";
U.style.width=Math.max(Math.abs(a.getX()-d.getX())-P,0)+"px";
U.style.height=Math.max(Math.abs(a.getY()-d.getY())-P,0)+"px"
}}break;
case Input.MODE.CIRCLE:if(B){var f=B.getCenter();
var Y=parseInt(Math.sqrt((f.getX()-Z.left)*(f.getX()-Z.left)+(f.getY()-Z.top)*(f.getY()-Z.top)));
B.setRadius(Y);
B.redraw()
}break;
case Input.MODE.NONE:break;
default:break
}};
var M=[{mode:Input.MODE.NONE,interval:0,maxPoints:0,click:null,dblclick:null,mousedown:null,mouseup:null,mousemove:null},{mode:Input.MODE.POINT,interval:100,maxPoints:1,click:this.onClick,dblclick:null,mousedown:null,mouseup:null,mousemove:null},{mode:Input.MODE.LINE,interval:100,maxPoints:200,click:this.onClick,dblclick:this.onDblClick,mousedown:null,mouseup:null,mousemove:this.onMouseMove},{mode:Input.MODE.POLYLINE,interval:150,maxPoints:200,click:this.onClick,dblclick:this.onDblClick,mousedown:null,mouseup:null,mousemove:this.onMouseMove},{mode:Input.MODE.POLYGON,interval:250,maxPoints:150,click:this.onClick,dblclick:this.onDblClick,mousedown:null,mouseup:null,mousemove:this.onMouseMove},{mode:Input.MODE.RECT,interval:100,maxPoints:200,click:this.onClick,dblclick:null,mousedown:null,mouseup:null,mousemove:this.onMouseMove},{mode:Input.MODE.CIRCLE,interval:200,maxPoints:400,click:this.onClick,dblclick:null,mousedown:null,mouseup:null,mousemove:this.onMouseMove}]
};
Input.Event=function(A,B){this.type=A;
this.coords=B
};
Input.Event.prototype={EVENT_CLICK:"click",EVENT_DBLCLICK:"dblclick",EVENT_MOUSE_DOWN:"mousedown",EVENT_MOUSE_UP:"mouseup",EVENT_MOUSE_MOVE:"mousemove"};
Input.Coords=function(A,B){this.left=A;
this.top=B;
this.toString=function(){return this.left+","+this.top
};
this.equals=function(C){if(C){return(this.left==C.left)&&(this.top==C.top)
}else{return false
}};
this.isNeighbor=function(C){if(C){return(Math.abs(this.left-C.left)<2)&&(Math.abs(this.top-C.top)<2)
}else{return false
}}
};
Input.Point=function(A,D){var C=parseInt(A);
var B=parseInt(D);
this.getX=function(){return C
};
this.getXReal=function(G,E,F){return G+C*(E-G)/F
};
this.getY=function(){return B
};
this.getYReal=function(G,F,E){return G+(E-B)*(F-G)/E
};
this.setX=function(E){C=parseInt(E)
};
this.setY=function(E){B=parseInt(E)
};
this.toString=function(){return C+","+B
};
this.toStringReal=function(J,H,G,F,I,E){return this.getXReal(J,G,I)+","+this.getYReal(H,F,E)
};
this.equals=function(E){return(C==E.getX())&&(B==E.getY())
};
this.isNeighbor=function(E){if(E){return(Math.abs(C-E.getX())<2)&&(Math.abs(B-E.getY())<2)
}else{return false
}};
this.scrollBy=function(E,F){C+=E;
B+=F
};
this.zoomBy=function(E,G,F){C=E+Math.round((C-E)*F);
B=G+Math.round((B-G)*F)
}
};
Input.LineSegment=function(H,J,I,A,K){if(!H||!J||!I||!A){alert("LineSegment : コンストラクタの引数が不正です");
return 
}var D=J;
var C=I;
var B=A+"_";
var M=K;
var F=new Array();
var L=H;
if(M){var G;
for(G=0;
G<M;
G++){var E=document.createElement("img");
E.id=B+G;
E.className=Input.CSS.POINT;
E.src=Input.image.IMAGE_POINT;
E.style.visibility="hidden";
L.getNode().parentNode.appendChild(E);
F[G]=E
}}this.getPoint1=function(){return D
};
this.getPoint2=function(){return C
};
this.toString=function(){return D.toString()+","+C.toString()
};
this.toStringReal=function(S,Q,P,O,R,N){return D.toStringReal(S,Q,P,O,R,N)+","+C.toStringReal(S,Q,P,O,R,N)
};
this.redraw=function(){if(!M){this.clear()
}this.draw()
};
this.draw=function(){var W=Math.abs(D.getX()-C.getX());
var U=Math.abs(D.getY()-C.getY());
var S=Math.max(W,U);
var X=L.parentNode;
var Y=L.getLeft();
var R=L.getTop();
var O=D.getX();
var V=D.getY();
var N=C.getX();
var T=C.getY();
if(M){if(M>=S){var Q;
for(Q=S;
Q<M;
Q++){var P=F[Q];
if(P){P.style.visibility="hidden"
}}for(Q=0;
Q<S;
Q++){var P=F[Q];
if(P){P.style.left=Y+O+(N-O)*Q/S+"px";
P.style.top=R+V+(T-V)*Q/S+"px";
P.style.visibility="visible"
}}}else{var Y=L.getLeft();
var R=L.getTop();
var O=D.getX();
var V=D.getY();
var N=C.getX();
var T=C.getY();
for(Q=0;
Q<M;
Q++){var P=F[Q];
if(P){P.style.left=Y+O+(N-O)*Q/M+"px";
P.style.top=R+V+(T-V)*Q/M+"px";
P.style.visibility="visible"
}}}}else{var Q;
for(Q=0;
Q<S;
Q++){var P=document.createElement("img");
P.id=B+Q;
P.className=Input.CSS.POINT;
P.src=Input.image.IMAGE_POINT;
P.style.left=Y+O+(N-O)*Q/S+"px";
P.style.top=R+V+(T-V)*Q/S+"px";
P.style.visibility="visible";
L.getNode().parentNode.appendChild(P)
}}};
this.clear=function(){var O=Math.abs(D.getX()-C.getX());
var N=Math.abs(D.getY()-C.getY());
var R=Math.max(O,N);
if(M){var P;
for(P=0;
P<M;
P++){var Q=document.getElementById(B+P);
if(Q){Q.parentNode.removeChild(Q)
}}}else{var P;
for(P=0;
P<R;
P++){var Q=document.getElementById(B+P);
if(Q){Q.parentNode.removeChild(Q)
}}}};
this.scrollBy=function(N,O){D.scrollBy(N,O);
C.scrollBy(N,O)
};
this.zoomBy=function(N,P,O){D.zoomBy(N,P,O);
C.zoomBy(N,P,O)
}
};
Input.Icon=function(H,A,C){if(!H||!A||!C){alert("Icon : コンストラクタの引数が不正です");
return 
}var F=A;
var E=C;
var B=new Image();
var D=null;
var G=H;
if(E){B.src=C;
D=document.createElement("img");
D.className=Input.CSS.ICON;
D.src=C;
D.style.visibility="hidden";
G.getNode().parentNode.appendChild(D)
}this.getPoint=function(){return F
};
this.getWidth=function(){if(B){return B.width
}else{return 0
}};
this.getHeight=function(){if(B){return B.height
}else{return 0
}};
this.redraw=function(){this.draw()
};
this.draw=function(){if(D){D.src=E;
D.style.left=G.getLeft()+F.getX()-this.getWidth()/2+"px";
D.style.top=G.getTop()+F.getY()-this.getHeight()/2+"px";
D.style.visibility="visible"
}};
this.clear=function(){if(D){D.parentNode.removeChild(D);
D=null
}};
this.getType=function(){return Input.TYPE.POINT
};
this.getCoords=function(){return F.toString()
};
this.getCoordsReal=function(N,L,K,J,M,I){return F.toStringReal(N,L,K,J,M,I)
};
this.getExtent=function(){var L=F.getX()-this.getWidth()/2;
var K=F.getY()-this.getHeight()/2;
var J=F.getX()+this.getWidth()/2;
var I=F.getY()+this.getHeight()/2;
return new Input.BoundingBox(L,K,J,I)
};
this.getExtentReal=function(J,V,R,O,M,W){var T=F.getX()-this.getWidth()/2;
var K=F.getY()-this.getHeight()/2;
var I=F.getX()+this.getWidth()/2;
var Q=F.getY()+this.getHeight()/2;
var N=new Input.Point(T,K);
var S=new Input.Point(I,Q);
var P=Math.min(N.getXReal(J,R,M),S.getXReal(J,R,M));
var L=Math.min(N.getYReal(V,O,W),S.getYReal(V,O,W));
var X=Math.max(N.getXReal(J,R,M),S.getXReal(J,R,M));
var U=Math.max(N.getYReal(V,O,W),S.getYReal(V,O,W));
return new Input.BoundingBox(P,L,X,U)
};
this.scrollBy=function(I,J){F.scrollBy(I,J)
};
this.zoomBy=function(I,K,J){F.zoomBy(I,K,J)
}
};
Input.Circle=function(K,C,J,A,L){if(!K||!C||!J||!A){alert("Circle : コンストラクタの引数が不正です");
return 
}var I=C;
var B=J;
var D=A;
var E=parseInt(360*J/100);
var N=L;
var G=new Array();
var M=K;
if(N){var H;
for(H=0;
H<N;
H++){var F=document.createElement("img");
F.id=D+H;
F.className=Input.CSS.POINT;
F.src=Input.image.IMAGE_POINT;
F.style.visibility="hidden";
M.getNode().parentNode.appendChild(F);
G[H]=F
}}this.xmin=0;
this.ymin=0;
this.xmax=Number.MAX_VALUE;
this.ymax=Number.MAX_VALUE;
this.getCenter=function(){return I
};
this.getRadius=function(){return B
};
this.setRadius=function(O){B=parseInt(O);
E=parseInt(Input.param.circle.CIRCLE_DIVIDE_DRAW*O/100)
};
this.redraw=function(){if(!N){this.clear()
}this.draw()
};
this.draw=function(){if(N){if(N>=E){var P;
for(P=E;
P<N;
P++){var Q=G[P];
if(Q){Q.style.visibility="hidden"
}}for(P=0;
P<E;
P++){var Q=G[P];
if(Q){var O=I.getX()+B*Math.cos(Math.PI*2*P/E);
var S=I.getY()+B*Math.sin(Math.PI*2*P/E);
var R=(O>=this.xmin&&O<=this.xmax&&S>=this.ymin&&S<=this.ymax);
Q.style.left=M.getLeft()+O+"px";
Q.style.top=M.getTop()+S+"px";
Q.style.visibility=(R?"visible":"hidden")
}}}else{for(P=0;
P<N;
P++){var Q=G[P];
if(Q){var O=I.getX()+B*Math.cos(Math.PI*2*P/N);
var S=I.getY()+B*Math.sin(Math.PI*2*P/N);
var R=(O>=this.xmin&&O<=this.xmax&&S>=this.ymin&&S<=this.ymax);
Q.style.left=M.getLeft()+O+"px";
Q.style.top=M.getTop()+S+"px";
Q.style.visibility=(R?"visible":"hidden")
}}}}else{var P;
for(P=0;
P<E;
P++){var Q=document.createElement("img");
Q.id=D+P;
Q.className=Input.CSS.POINT;
Q.src=Input.image.IMAGE_POINT;
Q.style.left=M.getLeft()+I.getX()+B*Math.cos(Math.PI*2*P/E)+"px";
Q.style.top=M.getTop()+I.getY()+B*Math.sin(Math.PI*2*P/E)+"px";
Q.style.visibility="visible";
M.getNode().parentNode.appendChild(Q)
}}};
this.clear=function(){if(N){var O;
for(O=0;
O<N;
O++){var P=document.getElementById(D+O);
if(P){P.parentNode.removeChild(P)
}}}else{var O;
for(O=0;
O<E;
O++){var P=document.getElementById(D+O);
if(P){P.parentNode.removeChild(P)
}}}};
this.getType=function(){return Input.TYPE.CIRCLE
};
this.getCoords=function(){var Q="";
var P;
var T=Input.param.circle.CIRCLE_DIVIDE_COORD*B/100;
for(P=0;
P<T;
P++){var O=I.getX()+B*Math.cos(Math.PI*2*P/T);
var S=I.getY()+B*Math.sin(Math.PI*2*P/T);
var R=new Input.Point(O,S);
Q+=(""!=Q?",":"")+R.toString()
}if(T>0){var O=I.getX()+B;
var S=I.getY();
var R=new Input.Point(O,S);
Q+=(""!=Q?",":"")+R.toString()
}return Q
};
this.getCoordsReal=function(O,Y,U,R,Q,Z){var X="";
var T;
var S=Input.param.circle.CIRCLE_DIVIDE_COORD*B/100;
for(T=0;
T<S;
T++){var W=I.getX()+B*Math.cos(Math.PI*2*T/S);
var V=I.getY()+B*Math.sin(Math.PI*2*T/S);
var P=new Input.Point(W,V);
X+=(""!=X?",":"")+P.toStringReal(O,Y,U,R,Q,Z)
}if(S>0){var W=I.getX()+B;
var V=I.getY();
var P=new Input.Point(W,V);
X+=(""!=X?",":"")+P.toStringReal(O,Y,U,R,Q,Z)
}return X
};
this.getExtent=function(){var R=I.getX()-B;
var Q=I.getY()-B;
var P=I.getX()+B;
var O=I.getY()+B;
return new Input.BoundingBox(R,Q,P,O)
};
this.getExtentReal=function(P,b,X,U,S,c){var Z=I.getX()-B;
var Q=I.getY()-B;
var O=I.getX()+B;
var W=I.getY()+B;
var T=new Input.Point(Z,Q);
var Y=new Input.Point(O,W);
var V=Math.min(T.getXReal(P,X,S),Y.getXReal(P,X,S));
var R=Math.min(T.getYReal(b,U,c),Y.getYReal(b,U,c));
var d=Math.max(T.getXReal(P,X,S),Y.getXReal(P,X,S));
var a=Math.max(T.getYReal(b,U,c),Y.getYReal(b,U,c));
return new Input.BoundingBox(V,R,d,a)
};
this.scrollBy=function(O,P){I.scrollBy(O,P)
};
this.zoomBy=function(O,Q,P){I.zoomBy(O,Q,P)
}
};
Input.BoundingBox=function(D,C,B,A){this.xmin=D;
this.ymin=C;
this.xmax=B;
this.ymax=A;
this.toString=function(){return this.xmin+","+this.ymin+","+this.xmax+","+this.ymax
}
};
Input.SimpleItem=function(A,D){var C=A;
var B=D;
this.getType=function(){return B
};
this.getCoords=function(){var F="";
var E;
if(C){for(E=0;
E<C.length;
E++){F+=(""!=F?",":"")+C[E].getPoint1().toString()
}if(C.length>0){F+=","+C[C.length-1].getPoint2().toString()
}}return F
};
this.getCoordsReal=function(L,I,G,F,J,E){var K="";
if(C){var H;
for(H=0;
H<C.length;
H++){K+=(""!=K?",":"")+C[H].getPoint1().toStringReal(L,I,G,F,J,E)
}if(C.length>0){K+=","+C[C.length-1].getPoint2().toStringReal(L,I,G,F,J,E)
}}return K
};
this.getExtent=function(){var F=new Input.BoundingBox(Number.MAX_VALUE,Number.MAX_VALUE,Number.MIN_VALUE,Number.MIN_VALUE);
if(C){var E;
for(E=0;
E<C.length;
E++){var H=C[E].getPoint1();
F.xmin=Math.min(F.xmin,H.getX());
F.ymin=Math.min(F.ymin,H.getY());
F.xmax=Math.max(F.xmax,H.getX());
F.ymax=Math.max(F.ymax,H.getY());
var G=C[E].getPoint2();
F.xmin=Math.min(F.xmin,G.getX());
F.ymin=Math.min(F.ymin,G.getY());
F.xmax=Math.max(F.xmax,G.getX());
F.ymax=Math.max(F.ymax,G.getY())
}}return F
};
this.getExtentReal=function(E,J,I,G,F,M){var N=new Input.BoundingBox(Number.MAX_VALUE,Number.MAX_VALUE,Number.MIN_VALUE,Number.MIN_VALUE);
if(C){var H;
for(H=0;
H<C.length;
H++){var L=C[H].getPoint1();
N.xmin=Math.min(N.xmin,L.getXReal(E,I,F));
N.ymin=Math.min(N.ymin,L.getYReal(J,G,M));
N.xmax=Math.max(N.xmax,L.getXReal(E,I,F));
N.ymax=Math.max(N.ymax,L.getYReal(J,G,M));
var K=C[H].getPoint2();
N.xmin=Math.min(N.xmin,K.getXReal(E,I,F));
N.ymin=Math.min(N.ymin,K.getYReal(J,G,M));
N.xmax=Math.max(N.xmax,K.getXReal(E,I,F));
N.ymax=Math.max(N.ymax,K.getYReal(J,G,M))
}}return N
}
};
Input.InputImage=function(G){var C=document.getElementById(G);
var D=0;
var F=0;
var E=Element.Methods.getDimensions(C);
var A=E.width;
var B=E.height;
E=null;
this.getNode=function(){return C
};
this.getLeft=function(){return D
};
this.getTop=function(){return F
};
this.getWidth=function(){return A
};
this.getHeight=function(){return B
}
};
function Logger(A){this.nodeId=A;
this.debug=function(C){var B=document.getElementById(A);
if(B){B.value=B.value+"\n"+C
}}
}function LayerManager(J){var B=J;
var E;
var F;
var C=new Object();
var D=new Array();
var H;
var A=B.configuration.prefix+"editLegend";
var K=B.configuration.prefix+"legend";
var I=null;
var G=3;
this.init=function(M){E=M;
if(!E.layers){E.layers=new Array()
}if(!E.bgTree){E.bgTree=new Array()
}this.initLayer(E.bgTree);
this.initLayer(E.layers);
var N=null;
if(E.type=="tree"){var L=E.bgTree.concat(E.layers);
this.createTreeUI(L)
}else{this.createButtonUI(E.bgTree);
this.createTreeUI(E.layers)
}B.eventHandler.addEventListener(LiteEvent.UNLOAD,this.closeInfoPage.bind(this))
};
this.initLayer=function(O){if(!O){return 
}for(var N=0;
N<O.length;
N++){var L=O[N];
if(L.type==LayerType.NODE){this.initLayer(L.subLayers)
}else{if(L.type==LayerType.BACK){B.viewManager.initBgLayer(L)
}else{if(L.type==LayerType.VECTOR||L.type==LayerType.RASTER){if(L.features!=null&&L.features.length>0){for(var M=0;
M<L.features.length;
M++){C[L.features[M].featureId]=L
}}}}}if(L.type!=LayerType.NODE){D[D.length]=L
}}};
this.createTreeUI=function(P){var M=B.configuration.layer.tree;
var X=$(M.targetId);
if(!X){return 
}F=P;
X.style.position="relative";
var S=document.createElement("img");
S.id=A;
S.galleryImg="no";
S.alt="";
S.style.position="absolute";
S.style.overflow="visible";
S.style.border="1px solid gray";
S.style.zIndex="99999";
Element.Methods.hide(S);
X.appendChild(S);
var V=document.createElement("table");
V.style.width="100%";
var R=document.createElement("thead");
R.className="layerUpdateBtn";
var N=document.createElement("tr");
var L=document.createElement("td");
var U=document.createElement("input");
U.type="image";
U.src="image/reloadbtn_off.gif";
U.alt=M.updateButtonCaption||"更新";
U.onclick=this.updateTreeLayer.bind(this);
U.onmouseover=this.onUpdateBtn.bind(this,U);
U.onmouseout=this.offUpdateBtn.bind(this,U);
L.appendChild(U);
N.appendChild(L);
R.appendChild(N);
V.appendChild(R);
var O=document.createElement("tbody");
var Q=document.createElement("tr");
var W=document.createElement("td");
var T=document.createElement("div");
T.className=M.treeClassName;
W.appendChild(T);
Q.appendChild(W);
O.appendChild(Q);
V.appendChild(O);
this.createTreeItem(T,P,1,null);
X.appendChild(V);
this.initLayerCheck();
this.updateLayerCheck(P)
};
this.onUpdateBtn=function(L){L.src="image/reloadbtn_on.gif"
};
this.offUpdateBtn=function(L){L.src="image/reloadbtn_off.gif"
};
this.createTreeItem=function(S,T,M,g){if(!T){return 
}var O=document.createElement("div");
var p=E.viewSetId;
var k=E.caption;
var W=G;
var R=B.configuration.layer.tree;
var c={v1:R.dispBunrui1,v2:R.dispBunrui2,v3:R.dispBunrui3,v4:R.dispBunrui4};
if(typeof customLayerOpenLevel!="undefined"){for(var d=0;
d<customLayerOpenLevel.length;
d++){var Q=customLayerOpenLevel[d];
if((null==Q.id||p.match(Q.id))&&(null==Q.title||k.match(Q.title))){W=Q.level;
c.v1=Q.v1;
c.v2=Q.v2;
c.v3=Q.v3;
c.v4=Q.v4;
break
}}}var n=M;
for(var d=0;
d<T.length;
d++){var a=T[d];
var h=document.createElement("div");
h.className="layerItemNoDisp";
var V=new ThreeStateCheckbox();
V.addClassName("layerCheck");
V.onclick=this.clickLayerCheck.bind(this,a);
var U;
var N="TH:";
if(a.legendUrl&&!(a.legendUrl.match(/#/i))&&!((a.legendUrl.match(/INSTANCE.png$/))&&!(a.editable))){U=document.createElement("a");
U.href="javascript:void(0);";
var f=a.styleName?a.styleName.indexOf(N):-1;
if(-1<f){var X=a.styleName.substring(f+N.length).split("_")[0];
var o=B.configuration.infoPage;
U.onclick=this.showInfoPage.bind(this,o.servletPath+"?id="+X)
}else{if(n<4){U.onclick=this.showInfoPage.bind(this,a.legendUrl)
}else{U.className="layerItem4WithLegend";
U.onmouseover=this.onEditButtonMouseover.bindAsEventListener(this,a.legendUrl);
U.onmouseout=this.onEditButtonMouseout.bind(this)
}}var Z=document.createTextNode(a.caption);
U.appendChild(Z)
}else{U=document.createTextNode(a.caption)
}a.checkbox=V;
if((n==1&&c.v1!=0)||(n==2&&c.v2!=0)||(n==3&&c.v3!=0)||(n==4&&c.v4!=0)){h.className="layerItem"+n;
if(a.type==LayerType.NODE){var m=n<=W;
this.initOpenClose(h,m)
}h.appendChild(V.getNode());
h.appendChild(U)
}if(a.type==LayerType.NODE){n++;
this.createTreeItem(h,a.subLayers,n,a);
n--
}else{if(g){V.setTooltip(g.caption+"／"+a.caption)
}if(a.editable){var Y=document.createElement("img");
Y.alt="図形を登録します";
Y.title="図形を登録します";
Y.style.cursor="pointer";
Y.galleryImg="no";
Y.src=B.configuration.layer.tree.editButtonUrl;
Y.onclick=B.featureManager.beginAddFeature.bind(B.featureManager,a.layerId);
h.appendChild(Y)
}if(a.editable&&_importable&&!((a.styleName.match(/^P_INSTANCE/)))&&a.features!=null&&a.features.length==1&&a.features[0].spatialType==1){var P=false;
for(var b=0;
b<a.features[0].attributes.length;
b++){if(a.features[0].attributes[b].type==5){P=true;
break
}}if(!P){var L=document.createElement("img");
L.alt="座標つきテキストファイルをインポートします";
L.title="座標つきテキストファイルをインポートします";
L.style.cursor="pointer";
L.galleryImg="no";
L.src=B.configuration.layer.tree.uploadButtonUrl;
L.onclick=B.featureManager.beginTextUpload.bind(B.featureManager,a.bunrui4No);
h.appendChild(L)
}}}O.appendChild(h)
}S.appendChild(O)
};
this.initOpenClose=function(N,L){var M=document.createElement("img");
M.className="layer_open_close";
M.alt="";
M.title="";
M.onclick=this.onclickOpenClose.bind(this,M);
N.appendChild(M);
this.onclickOpenClose(M);
if(L){this.onclickOpenClose(M)
}};
this.onclickOpenClose=function(L){var M=L.parentNode;
if(Element.Methods.hasClassName(M,"close")){Element.Methods.removeClassName(M,"close");
L.src="image/minus.gif"
}else{Element.Methods.addClassName(M,"close");
L.src="image/plus.gif"
}};
this.initLayerCheck=function(){for(var M=0;
M<D.length;
M++){var L=D[M];
if(L.checkbox){L.checkbox.setChecked(L.visible)
}}};
this.createButtonUI=function(N){var O=document.createElement("div");
O.style.zIndex="30";
O.style.overflow="visible";
O.style.position="absolute";
O.className=B.configuration.layer.button.className;
var M=$(B.configuration.mapFrameId);
this.createTuggleButton(O,N);
var L=document.createElement("div");
L.id=K;
L.className=B.configuration.layer.button.legendPanelClassName;
L.style.position="absolute";
L.onmouseover=this.cancelTuggleLegendLink.bind(this);
L.onmouseout=this.hideTuggleLegendLink.bind(this);
Element.Methods.hide(L);
O.appendChild(L);
M.appendChild(O)
};
this.createTuggleButton=function(Q,O){for(var N=0;
N<O.length;
N++){var L=O[N];
if(L.type==LayerType.NODE){this.createTuggleButton(Q,L.subLayers)
}else{var M=document.createElement("span");
var P=document.createTextNode(L.caption);
M.appendChild(P);
L.button=M;
this.setVisibleBgLayer(L,L.visible);
M.onclick=this.clickLayerButtonExclusive.bind(this,L);
Q.appendChild(M);
if(L.legendUrl){M.onmouseover=this.showTuggleLegendLink.bindAsEventListener(this,L);
M.onmouseout=this.hideTuggleLegendLink.bind(this)
}else{M.onmouseover=this.hideTuggleLegendLinkImpl.bind(this)
}}}};
this.showTuggleLegendLink=function(M,P){this.cancelTuggleLegendLink();
var T=(M||window.event);
var Q=Event.element(T);
var L=$(K);
L.innerHTML="";
var S=document.createElement("a");
S.href="javascript:void(0);";
S.onclick=this.showInfoPage.bind(this,P.legendUrl);
S.innerHTML="凡例";
L.appendChild(S);
var O=Element.Methods.getDimensions(Q);
Position.clone(Q,L);
L.style.width="auto";
L.style.height="auto";
var N=getObjectLeft(L)+(O.width/2)+2;
var R=getObjectTop(L)+O.height+2;
L.style.left=N+"px";
L.style.top=R+"px";
Element.Methods.show(L)
};
this.cancelTuggleLegendLink=function(){if(I!=null){clearTimeout(I)
}I=null
};
this.hideTuggleLegendLink=function(){this.cancelTuggleLegendLink();
var L=B.configuration.layer.button.legendPanelOffInterval;
I=setTimeout(this.hideTuggleLegendLinkImpl.bind(this),L)
};
this.hideTuggleLegendLinkImpl=function(){var L=$(K);
Element.Methods.hide(L)
};
this.updateTreeLayer=function(){var L=new Array();
for(var N=0;
N<D.length;
N++){var M=D[N];
if(!M.checkbox){continue
}var P=M.checkbox.isChecked();
if(M.visible!=P){L[L.length]=new ViewLayer(M.layerId,P);
if(M.type==LayerType.BACK){B.viewManager.setVisibleBgLayer(M.layerId,P)
}M.visible=P
}}var O=false;
var Q=true;
this.fireLayerStateChange(L,O,Q)
};
this.fireLayerStateChange=function(M,O,P){if(M&&M.length>0){var L=B.service.notifyLayerState(M);
if(L.statusId!="success"){window.alert("レイヤの更新に失敗しました。");
return 
}var N=L.result;
B.eventHandler.fireEvent(LiteEvent.LAYER_STATE_CHANGE,M,O,N);
if(P){if(O){B.viewManager.refreshForBackLayer()
}else{B.viewManager.refresh()
}}}};
this.isViewThematicVecter=function(){for(var M=0;
M<D.length;
M++){var L=D[M];
if(!L.checkbox){continue
}if(L.type!=LayerType.VECTOR){continue
}if(L.visible){return true
}}return false
};
this.clickLayerButton=function(N){var M=N.button;
if(M&&!B.viewManager.isBlocking()){var P=!N.visible;
if(N.type==LayerType.BACK){B.viewManager.setVisibleBgLayer(N.layerId,P)
}if(P){M.className=B.configuration.layer.button.onClassName
}else{M.className=B.configuration.layer.button.offClassName
}var L=new Array();
L[0]=new ViewLayer(N.layerId,P);
N.visible=P;
var O=true;
var Q=true;
this.fireLayerStateChange(L,O,Q)
}};
this.searchBgLayer=function(O){for(var N=0;
N<O.length;
N++){var M=O[N];
if(M.type==LayerType.NODE){var L=this.searchBgLayer(M.subLayers);
if(L){return L
}}else{if(M.visible){return M
}}}return null
};
this.clickLayerButtonExclusive=function(O){var N=O.button;
if(N&&!B.viewManager.isBlocking()){var L=new Array();
var M=O.visible;
while(true){var P=this.searchBgLayer(E.bgTree);
if(!P){break
}L[L.length]=this.setVisibleBgLayer(P,false)
}if(!M){L[L.length]=this.setVisibleBgLayer(O,true)
}var Q=true;
var R=true;
this.fireLayerStateChange(L,Q,R)
}};
this.setVisibleBgLayer=function(M,O){var L=M.button;
if(L){var N=B.configuration.layer.button.offClassName;
if(O){N=B.configuration.layer.button.onClassName
}L.className=N
}M.visible=O;
B.viewManager.setVisibleBgLayer(M.layerId,O);
return new ViewLayer(M.layerId,O)
};
this.clickLayerCheck=function(L){var M=L.checkbox.getState();
this.subLayerCheck(L,M);
this.updateLayerCheck(F)
};
this.subLayerCheck=function(M,O){if(M.type==LayerType.NODE){var N=M.subLayers;
for(var L=0;
L<N.length;
L++){N[L].checkbox.setState(O);
this.subLayerCheck(N[L],O)
}}};
this.updateLayerCheck=function(P){var O=-1;
for(var M=0;
M<P.length;
M++){var L=P[M];
if(!L.checkbox){continue
}var N;
if(L.type==LayerType.NODE){N=this.updateLayerCheck(L.subLayers);
L.checkbox.setState(N)
}else{N=L.checkbox.getState()
}if(O==-1){O=N
}else{if(O!=N){O=2
}}}return O
};
this.showInfoPage=function(M){var O=false;
try{O=H&&!H.closed
}catch(N){}if(O){H.location.href=M;
H.focus()
}else{var L=B.configuration.infoPage;
H=window.open(M,L.target,L.param)
}};
this.closeInfoPage=function(){try{if(H&&!H.closed){H.close()
}}catch(L){}};
this.getFeature=function(O){var M=C[O];
if(M){var N=M.features;
for(var L=0;
L<N.length;
L++){if(N[L].featureId==O){return N[L]
}}}return null
};
this.getLayerByFeatureId=function(L){return C[L]
};
this.getLayerById=function(L){for(var N=0;
N<D.length;
N++){var M=D[N];
if(M.layerId==L){return M
}}return null
};
this.getVectorLayers=function(){var N=new Array();
for(var M=0;
M<D.length;
M++){var L=D[M];
if(L.type==LayerType.VECTOR){N[N.length]=L
}}return N
};
this.getTreeLayers=function(){return F
};
this.getBgLayers=function(){var N=new Array();
for(var M=0;
M<D.length;
M++){var L=D[M];
if(L.type==LayerType.BACK){N[N.length]=L
}}return N
};
this.onEditButtonMouseover=function(M,L){var Y=(M||window.event);
var W=Event.element(Y);
var V=$(A);
V.src=L;
var N=V.parentNode;
var S=W;
var T=0;
var P=0;
do{T+=S.scrollLeft;
P+=S.scrollTop;
S=S.parentNode
}while(S!=N);
S=W;
var R=0;
var O=0;
do{R+=S.offsetLeft;
O+=S.offsetTop;
S=S.offsetParent
}while(S!=N);
var Q=R-T;
var X=O-P;
var U=Element.Methods.getDimensions(W);
if(U.width<135){V.style.left=Q+parseInt(U.width)+"px"
}else{V.style.left=Q+parseInt(135)+"px"
}V.style.top=X-22+"px";
Element.Methods.show(V)
};
this.onEditButtonMouseout=function(){var L=$(A);
if(L){Element.Methods.hide(L)
}};
this.setVisibleLayerByFeatureId=function(P,O){var M=this.getLayerByFeatureId(P);
if(M&&M.visible!=O){M.visible=O;
if(M.checkbox){M.checkbox.setChecked(O)
}this.updateLayerCheck(F);
var L=new Array();
L[0]=new ViewLayer(M.layerId,O);
var N=false;
var Q=false;
this.fireLayerStateChange(L,N,Q)
}};
this.getExtent=function(){return E.extent
}
}var SearchType=new Object();
Object.extend(SearchType,{FREE:0,ADDRESS:1,FACILITY:2,UNDEFINED:9});
function LocationSearch(c,a){var X=c;
var J=a;
this.prefix="_"+new Date().getTime().toString(16)+"_";
var S=J.linkDisableClass;
var O;
var L;
var R=null;
var F="locationSearchCase";
var b="locationSearchContents";
var Y="addressSelectId_";
var I="addressbuttonId";
var B="facilityDivId_";
var K="facilityCateTdId";
var G="facilitySelectId_";
var M="facilityButtonId";
var Q="searchFreeKeyword";
var E="searchResultDivId";
var U="pageResultDivId";
var N="pageControlDivId";
var P="pageBackLinkId";
var T="pageNextLinkId";
var H="pageBackLinkBtnId";
var D="pageNextLinkBtnId";
var C;
var W;
var V;
function Z(){var d;
var g;
var f
}var A;
this.init=function(d){this.initSearch();
this.createSearchForm();
O=d
};
this.setSelectChanged=function(d){L=d
};
this.initSearch=function(){var h=$(J.searchDivId);
if(h){var j=document.createElement("select");
j.id=F;
var g=document.createElement("div");
g.id=b;
if(!R){R=X.getSearchCase().result
}if(R){for(var f=0;
f<R.length;
f++){var d=R[f];
j.options[f]=new Option(d.dispName,d.caseId)
}j.onchange=this.createSearchForm.bind(this)
}h.appendChild(j);
h.appendChild(g)
}};
this.getSearchCase=function(){if(R){var d=$(F);
if(d){return R[d.selectedIndex]
}}return null
};
this.getSearchType=function(){var d=this.getSearchCase();
if(d){if(d.searchType=="keyword"){return SearchType.FREE
}else{if(d.searchType=="list"){if(d.caseId.match("^"+J.facilityPref+".*")){return SearchType.FACILITY
}else{return SearchType.ADDRESS
}}}logger.warn("getSearchType - selected undefined search type '"+d.searchType+"'")
}return SearchType.UNDEFINED
};
this.createSearchForm=function(){var d=this.getSearchType();
if(d==SearchType.FREE){this.createFreewordSearchForm()
}else{if(d==SearchType.FACILITY){this.createFacilityListSearchForm();
this.updateFacilityList(0)
}else{if(d==SearchType.ADDRESS){this.createAddressListSearchForm();
this.updateAddressList(0)
}}}};
this.createAddressListSearchForm=function(){var n=this.getSearchCase();
if(n){var j=$(b);
j.innerHTML="";
var q=document.createElement("table");
var d=document.createElement("tbody");
q.appendChild(d);
j.appendChild(q);
var f=n.targetTypes;
for(var g=0;
g<f.length;
g++){var p=document.createElement("tr");
d.appendChild(p);
var m=document.createElement("td");
m.appendChild(document.createTextNode(f[g].dispName));
p.appendChild(m);
var k=document.createElement("td");
p.appendChild(k);
var h=document.createElement("select");
h.id=Y+g;
h.onchange=this.updateAddressList.bind(this,g+1);
k.appendChild(h)
}var o=document.createElement("input");
o.type="image";
o.alt="決定";
o.src="image/ketteibtn_off.gif";
o.id=I;
o.onclick=this.selectAddressList.bind(this,0);
o.onmouseover=this.onListBtn.bind(this,o);
o.onmouseout=this.offListBtn.bind(this,o);
j.appendChild(o)
}};
this.resetAddressList=function(d){var f=$(Y+d);
if(f){f.innerHTML="";
f.disabled=true;
this.resetAddressList(d+1)
}};
this.updateAddressList=function(f){var j=$(Y+f);
if(j){this.resetAddressList(f);
var d=this.getSearchCase();
var m=d.targetTypes[f];
var h=J.maxCntByList;
if(0==f){X.searchInstance(null,m.typeName,0,h,this.onSearchAddress.bind(this,f))
}else{var g=$(Y+(f-1));
if(0<g.selectedIndex){var k=d.targetTypes[f-1];
X.searchChildInstance(k.typeName,g.value,m.typeName,0,h,this.onSearchAddress.bind(this,f))
}}}else{if(f==1){if(0>=$(Y+"0").selectedIndex){$(I).disabled=true;
$(I).src="image/ketteibtn_disable.gif"
}else{$(I).disabled=false;
$(I).src="image/ketteibtn_off.gif"
}}if(f>0){var g=$(Y+(f-1));
this.listSelectChanged(g)
}}};
this.onSearchAddress=function(q,t){var f=$(Y+q);
var d=t.result;
f.options[0]=new Option("","");
if(d){var p=null;
if(q==0&&getRequestParameter){var h=getRequestParameter("groupId");
if(h&&(typeof customLocation!="undefined")){var g=customLocation[h];
if(g){p=g.locId
}}}var k=0;
for(var n=0;
n<d.length;
n++){var r=d[n];
var o=new Option(r.dispName,r.geoId);
if(p==r.geoId){k=n
}f.options[n+1]=o
}f.instances=d;
if(q==0&&p){document.getElementById("addressSelectId_0").options[k+1].selected=true;
this.updateAddressList(1)
}}else{logger.error("updateAddressList - failed load instance")
}f.disabled=false;
if(0>=$(Y+"0").selectedIndex){$(I).disabled=true;
$(I).src="image/ketteibtn_disable.gif"
}else{$(I).disabled=false;
$(I).src="image/ketteibtn_off.gif"
}if(q>0){var m=$(Y+(q-1));
this.listSelectChanged(m)
}};
this.onListBtn=function(d){d.src="image/ketteibtn_on.gif"
};
this.offListBtn=function(d){d.src="image/ketteibtn_off.gif"
};
this.selectAddressList=function(g){var h=$(Y+g);
if(h&&0<h.selectedIndex){if(!this.selectAddressList(g+1)){var f=h.instances[h.selectedIndex-1];
var d=f.xmin+(f.xmax-f.xmin)/2;
var j=f.ymin+(f.ymax-f.ymin)/2;
this.moveInstance(d,j)
}return true
}return false
};
this.createFacilityListSearchForm=function(){var d=this.getSearchCase();
if(d){var g=$(b);
g.innerHTML="";
var f=document.createElement("div");
f.id=B+"0";
g.appendChild(f);
var h=document.createElement("input");
h.type="image";
h.alt="決定";
h.src="image/ketteibtn_off.gif";
h.id=M;
h.onclick=this.selectFacilityList.bind(this,0);
h.onmouseover=this.onListBtn.bind(this,h);
h.onmouseout=this.offListBtn.bind(this,h);
g.appendChild(h)
}};
this.updateFacilityList=function(o){var v=$(B+o);
if(v&&!v.isEnd){v.innerHTML="";
var y=this.getSearchCase();
var u;
if(o<J.facilityOrgCate.length&&null!=J.facilityOrgCate[o]){u=J.facilityOrgCate[o]
}else{u=J.facilityDefCate.replace("$NUM$",o+1)
}var p=document.createElement("table");
var x=document.createElement("tbody");
p.appendChild(x);
v.appendChild(p);
var n=document.createElement("tr");
x.appendChild(n);
var g=document.createElement("td");
g.appendChild(document.createTextNode(u));
g.id=K;
n.appendChild(g);
var f=document.createElement("td");
n.appendChild(f);
var w=document.createElement("select");
w.id=G+o;
w.onchange=this.updateFacilityList.bind(this,o+1);
f.appendChild(w);
var d=document.createElement("div");
d.id=B+(o+1);
v.appendChild(d);
w.options[0]=new Option("","");
var t=1;
if(0==o){var h=y.targetTypes;
for(var AB=0;
AB<h.length;
AB++){var z=h[AB];
if(null==z.parentName||0==z.parentName.length){w.options[t]=new Option(z.dispName,z.typeName);
t++
}}}else{var m=$(G+(o-1));
if(0<m.selectedIndex){var r=m.options[m.selectedIndex].value;
var h=y.targetTypes;
for(var AB=0;
AB<h.length;
AB++){var z=h[AB];
var q=z.parentName;
if(null!=q){for(var AA=0;
AA<q.length;
AA++){if(r==q[AA]){w.options[t]=new Option(z.dispName,z.typeName);
t++
}}}}if(1==t){var AC=J.maxCntByList;
X.searchInstance(null,r,0,AC,this.onSearchFacility.bind(this,o))
}}else{v.innerHTML=""
}}}if(!v.isEnd||0>=$(G+v.index).selectedIndex){$(M).disabled=true;
$(M).src="image/ketteibtn_disable.gif"
}else{$(M).disabled=false;
$(M).src="image/ketteibtn_off.gif";
var j=$(G+v.index);
this.listSelectChanged(j)
}};
this.onSearchFacility=function(m,p){var k=$(B+m);
var j=$(G+m);
var n=$(B+(m+1));
var d=p.result;
if(d){for(var g=0;
g<d.length;
g++){var o=d[g];
var h=new Option(o.dispName,o.geoId);
j.options[g+1]=h
}j.instances=d
}n.index=m;
n.isEnd=true;
if(!k.isEnd||0>=$(G+k.index).selectedIndex){$(M).disabled=true;
$(M).src="image/ketteibtn_disable.gif"
}else{$(M).disabled=false;
$(M).src="image/ketteibtn_off.gif";
var f=$(G+k.index);
this.listSelectChanged(f)
}};
this.selectFacilityList=function(g){var h=$(G+g);
if(h&&0<h.selectedIndex){if(!this.selectFacilityList(g+1)){var f=h.instances[h.selectedIndex-1];
var d=f.xmin+(f.xmax-f.xmin)/2;
var j=f.ymin+(f.ymax-f.ymin)/2;
this.moveInstance(d,j)
}return true
}return false
};
this.createFreewordSearchForm=function(){var d=this.getSearchCase();
if(d){var h=$(b);
h.innerHTML="";
var g=document.createElement("form");
g.onsubmit=this.freeWordSearch.bind(this);
var j=document.createElement("input");
j.id=Q;
j.type="text";
g.appendChild(j);
var k=document.createElement("input");
k.type="image";
k.alt="検索";
k.src="image/kensakubtn_off.gif";
k.className="kensakubtn";
g.appendChild(k);
k.onmouseover=this.onFreeBtn.bind(this,k);
k.onmouseout=this.offFreeBtn.bind(this,k);
h.appendChild(g);
var f=document.createElement("div");
f.id=E;
h.appendChild(f)
}};
this.onFreeBtn=function(d){d.src="image/kensakubtn_on.gif"
};
this.offFreeBtn=function(d){d.src="image/kensakubtn_off.gif"
};
this.freeWordSearch=function(){var d=this.getSearchCase();
var h=d.targetTypes;
W=new Array(h.length);
V=new Array(3);
for(var f=0;
f<V.length;
f++){V[f]=new Z();
V[f].searchResult=null;
V[f].locTypeIndex=0;
V[f].columnOffset=0
}var g=$(Q).value;
g=g.replace(/　/g," ");
g=g.replace(/  /g," ");
C=g.split(" ");
this.createResultForm();
A=null;
this.pageNext(false);
this.pageNext(false);
this.pageUpdate();
return false
};
this.createResultForm=function(){var m=$(E);
m.innerHTML="";
var j=document.createElement("div");
j.id=U;
m.appendChild(j);
var d=document.createElement("div");
d.id=N;
m.appendChild(d);
var f=document.createElement("img");
f.id=H;
f.alt="前へ";
f.src="image/K_feature_prev_off.gif";
f.onmouseover=this.onPrevBtn.bind(this,f);
f.onmouseout=this.offPrevBtn.bind(this,f);
var h=document.createElement("a");
h.appendChild(f);
h.id=P;
h.href="javascript:void(0)";
h.onclick=this.pageBack.bind(this,true);
d.appendChild(h);
d.appendChild(document.createTextNode(" "));
var k=document.createElement("img");
k.id=D;
k.alt="次へ";
k.src="image/K_feature_next_off.gif";
k.onmouseover=this.onNextBtn.bind(this,k);
k.onmouseout=this.offNextBtn.bind(this,k);
var g=document.createElement("a");
g.appendChild(k);
g.href="javascript:void(0)";
g.id=T;
g.onclick=this.pageNext.bind(this,true);
d.appendChild(g)
};
this.onPrevBtn=function(f){var d=$(H);
if(!$(d).disabled){f.src="image/K_feature_prev_on.gif"
}};
this.offPrevBtn=function(f){var d=$(H);
if(!$(d).disabled){f.src="image/K_feature_prev_off.gif"
}};
this.onNextBtn=function(f){var d=$(D);
if(!$(d).disabled){f.src="image/K_feature_next_on.gif"
}};
this.offNextBtn=function(f){var d=$(D);
if(!$(d).disabled){f.src="image/K_feature_next_off.gif"
}};
this.pageUpdate=function(){var h=$(U);
h.innerHTML="";
var f;
var g=V[1].searchResult;
if(g&&0<g.length){for(f=0;
f<J.maxCntByPage;
f++){var o=document.createElement("div");
if(f<g.length){var p=g[f];
o.id=this.toHTMLId(p.geoId);
var j=document.createElement("a");
j.appendChild(document.createTextNode(p.dispName));
j.href="#";
var m=p.xmin+(p.xmax-p.xmin)/2;
var k=p.ymin+(p.ymax-p.ymin)/2;
j.onclick=this.selectKeywordInstance.bind(this,p.geoId,m,k);
o.appendChild(j)
}else{o.appendChild(document.createTextNode("　"))
}h.appendChild(o)
}}else{h.appendChild(document.createTextNode("検索結果はありません"))
}var d=$(P);
var r=$(H);
if(V[0].searchResult){enable(d);
d.className="";
$(r).disabled=false;
r.src="image/K_feature_prev_off.gif"
}else{disable(d);
d.className=S;
$(r).disabled=true;
r.src="image/K_feature_prev_disable.gif"
}var n=$(T);
var q=$(D);
if(V[2].searchResult){enable(n);
n.className="";
$(q).disabled=false;
q.src="image/K_feature_next_off.gif"
}else{disable(n);
n.className=S;
$(q).disabled=true;
q.src="image/K_feature_next_disable.gif"
}this.updateKeywordHighlight(A)
};
this.pageLoad=function(g){var f=this.getSearchCase();
var m=f.targetTypes;
var j=new Array();
for(var h=V[g].locTypeIndex;
h<m.length;
h++){var k=J.maxCntByPage-j.length;
var d=X.searchInstance(C,m[h].typeName,V[g].columnOffset,k,null);
if(d.result){j=j.concat(d.result);
V[g].columnOffset+=d.result.length;
if(j.length==J.maxCntByPage){break
}}W[h]=V[g].columnOffset;
V[g].locTypeIndex=h+1;
V[g].columnOffset=0
}if(0<j.length){V[g].searchResult=j
}else{V[g].searchResult=null
}};
this.pageNext=function(d){if($(T).className==S){return false
}V[0].searchResult=V[1].searchResult;
V[0].locTypeIndex=V[1].locTypeIndex;
V[0].columnOffset=V[1].columnOffset;
V[1].searchResult=V[2].searchResult;
V[1].locTypeIndex=V[2].locTypeIndex;
V[1].columnOffset=V[2].columnOffset;
this.pageLoad(2);
if(d){this.pageUpdate()
}};
this.pageBack=function(g){if($(P).className==S){return false
}V[2].searchResult=V[1].searchResult;
V[2].locTypeIndex=V[1].locTypeIndex;
V[2].columnOffset=V[1].columnOffset;
V[1].searchResult=V[0].searchResult;
V[1].locTypeIndex=V[0].locTypeIndex;
V[1].columnOffset=V[0].columnOffset;
var d=J.maxCntByPage*2;
for(var f=V[0].locTypeIndex;
f>=0;
f--){if(V[0].columnOffset>=d){V[0].locTypeIndex=f;
V[0].columnOffset-=d;
d=0;
break
}d-=V[0].columnOffset;
V[0].columnOffset=0<f?W[f-1]:0
}if(0==d){this.pageLoad(0)
}else{V[0].searchResult=null
}if(g){this.pageUpdate()
}};
this.selectKeywordInstance=function(f,d,g){this.updateKeywordHighlight(f);
this.moveInstance(d,g);
return false
};
this.updateKeywordHighlight=function(d){var f=$(this.toHTMLId(A));
if(f){Element.Methods.removeClassName(f,J.keywordHighlightClassName)
}var g=$(this.toHTMLId(d));
if(g){Element.Methods.addClassName(g,J.keywordHighlightClassName)
}A=d
};
this.toHTMLId=function(d){return this.prefix+"location_"+d
};
this.moveInstance=function(d,f){if(O){O(d,f)
}};
this.listSelectChanged=function(g){if(g&&L){if(0<g.selectedIndex){var f=g.instances[g.selectedIndex-1];
var d=f.xmin+(f.xmax-f.xmin)/2;
var h=f.ymin+(f.ymax-f.ymin)/2;
L(d,h)
}}}
}function GIS(B,A){this.service=A;
this.configuration=B;
this.eventHandler=new EventHandler();
this.viewManager=new ViewManager(this);
this.imageLoader=new ImageLoader(1000)
}function Config(){}var LiteEvent=new Object();
Object.extend(LiteEvent,{UNLOAD:"unload",VIEW_CHANGE:"view_change",THEMATIC_RASTER_CLEAR:"thematic_raster_clear",THEMATIC_RASTER_DRAWED:"thematic_raster_drawed",LAYER_STATE_CHANGE:"layer_state_change",TEMPORARY_ITEM_STATE_CHANGE:"temporaryItem_state_change",HIGHLIGHT_CHANGE:"highlight_change",SCALE_CHANGE:"scale_change",AREA_SEARCH_MODE_CHANGE:"area_search_mode_change"});
function EventHandler(){var A=new Object();
this.addEventListener=function(B,C){var D=A[B];
if(!D){D=new Array();
A[B]=D
}D[D.length]=C
};
this.fireEvent=function(){var C=$A(arguments);
var B=C.shift();
var E=A[B];
if(E){for(var D=0;
D<E.length;
D++){E[D].apply(this,C)
}}};
Element.Methods.observe(window,"unload",this.fireEvent.bind(this,LiteEvent.UNLOAD),false)
}function TimeManager(H){var A=H;
var G;
var B;
var F;
var I=null;
var D=null;
var C=A.configuration.prefix+"layerMessagePanel";
var E=C+"_content";
this.init=function(K,J){G=K;
B=J;
I=this.normalizeTime(B.time);
F=new WindowManager(A.configuration.time.window,this.initCalendar.bind(this));
A.eventHandler.addEventListener(LiteEvent.UNLOAD,F.close.bind(F));
this.initUI()
};
this.normalizeTime=function(J){if(!J||J.length!=8||J=="99999999"||J=="00000000"){return null
}return J
};
this.initCalendar=function(){calendar_callback=this._callback_calendar.bind(this);
F.getWindow().callback=this._callback_calendar.bind(this)
};
this.initUI=function(){if(G.timeConfig==2||G.timeConfig==3){var K=$(A.configuration.time.layerInfo.targetId);
if(K){var J=document.createElement("img");
J.src=A.configuration.time.layerInfo.iconSrc;
J.border=0;
var L=document.createElement("a");
L.href="javascript:void(0);";
L.onclick=this._callback_layerInfo.bind(this);
L.appendChild(J);
K.appendChild(L)
}this.createMessagePanel();
if(A.configuration.time.layerInfo.firstOpen){if(B.viewSetId.startsWith("1_")){this._callback_layerInfo()
}}var M=$(A.configuration.time.targetId);
if(M){if(B.viewSetId.startsWith("1_")){var L=document.createElement("a");
L.href="javascript:void(0);";
L.onclick=F.open.bind(F);
D=L;
M.appendChild(L)
}else{D=M
}}this.updateTime()
}};
this.createMessagePanel=function(){var M=document.createElement("div");
M.id=C;
M.className=A.configuration.time.layerInfo.messegePanel.className;
M.style.zIndex="999";
M.style.position="absolute";
var K=document.createElement("div");
K.className=A.configuration.time.layerInfo.messegePanel.titleClassName;
var J=document.createElement("img");
J.galleryImg="no";
J.onclick=this.setVisibleMessagePanel.bind(this,false);
J.src=A.configuration.time.layerInfo.messegePanel.closeImgUrl;
try{J.style.cursor="pointer"
}catch(O){}K.appendChild(J);
var L=document.createElement("div");
L.id=E;
L.className=A.configuration.time.layerInfo.messegePanel.contentClassName;
M.appendChild(K);
M.appendChild(L);
var N=$(A.configuration.mapFrameId);
N.appendChild(M);
this.setVisibleMessagePanel(false)
};
this.setVisibleMessagePanel=function(K){var J=$(C);
if(J){if(K){Element.Methods.show(J)
}else{Element.Methods.hide(J)
}}};
this._callback_layerInfo=function(){var J=A.service.getOuterPeriodLayers().result;
var N=A.service.getTimeFeatureLayers().result;
if(J&&N){var M=A.configuration.time.layerInfo.messegePanel.message;
var L=$(E);
L.innerHTML="";
if(B.viewSetId.startsWith("1_")){L.appendChild(document.createTextNode(M.linkClick));
L.appendChild(document.createElement("br"))
}if(null!=I){L.appendChild(document.createTextNode(M.outerPeriod));
L.appendChild(document.createElement("br"));
if(0==J.length){L.appendChild(document.createTextNode(M.notFound));
L.appendChild(document.createElement("br"))
}else{for(var K=0;
K<J.length;
K++){L.appendChild(document.createTextNode(M.resultPrefix));
L.appendChild(document.createTextNode(J[K]));
L.appendChild(document.createElement("br"))
}}if(G.timeConfig==3){L.appendChild(document.createElement("br"));
L.appendChild(document.createTextNode(M.timeFeature));
L.appendChild(document.createElement("br"));
if(0==N.length){L.appendChild(document.createTextNode(M.notFound));
L.appendChild(document.createElement("br"))
}else{for(var K=0;
K<N.length;
K++){L.appendChild(document.createTextNode(M.resultPrefix));
L.appendChild(document.createTextNode(N[K]));
L.appendChild(document.createElement("br"))
}}}}this.setVisibleMessagePanel(true)
}};
this._callback_calendar=function(Q,O,M){var K=this.formatNumber(Q,4);
var R=this.formatNumber(O,2);
var N=this.formatNumber(M,2);
var P=K+""+R+""+N;
var L=I;
I=this.normalizeTime(P);
this.updateTime();
if(I!=L){var J=location.href.replace(/d=[0-9]{8}/,"");
if(I){J+=(J.match(/&$/)?"":"&")+"d="+I
}location.replace(J)
}};
this.formatNumber=function(K,J){var L=String(K);
while(L.length<J){L="0"+L
}return L
};
this.updateTime=function(){if(D){D.innerHTML=this.formatDateString(I)
}};
this.formatDateString=function(L){if(L&&L.length==8&&L!="99999999"&&L!="00000000"){try{var K=L.substring(0,4);
var N=L.substring(4,6);
var J=L.substring(6,8);
return K+"年"+N+"月"+J+"日"
}catch(M){}}return"日付指定なし"
};
this.showCalendar=function(){_preview=new WindowManager(configuration.preview.window,this.initPreview.bind(this))
};
this.getTime=function(){return I
}
}var ImageLoader=function(A){this.initialize(A)
};
ImageLoader.prototype={interval:-1,intervalId:null,targetArray:new Array(),initialize:function(A){this.interval=A
},reload:function(){this.cancel();
if(this.interval>=0){this.intervalId=window.setTimeout(this.checkImage.bind(this),this.interval)
}},cancel:function(){if(this.intervalId){window.clearTimeout(this.intervalId);
this.intervalId=null
}},attach:function(A){this.targetArray[this.targetArray.length]=A
},checkImage:function(){for(var A=0;
A<this.targetArray.length;
A++){var B=this.targetArray[A];
B.src=B.src
}this.targetArray.length=0
}};
var MeasureStatus=new Object();
Object.extend(MeasureStatus,{WAITING:0,DRAWING:1});
function MeasureManager(F){var A=F;
var D;
var E="m2";
var B="m";
var C="k";
this.init=function(G){D=G
};
this.startDrawLength=function(){var G=A.configuration.drawPanel.hint.MEASURE_LENGTH;
A.viewManager.drawInit(Input.MODE.POLYLINE,this.endMeasureLength.bind(this),G,DRAW_PURPOSE.MEASURE)
};
this.startDrawArea=function(){var G=A.configuration.drawPanel.hint.MEASURE_AREA;
A.viewManager.drawInit(Input.MODE.POLYGON,this.endMeasureArea.bind(this),G,DRAW_PURPOSE.MEASURE)
};
this.erazeDrawResult=function(){A.viewManager.drawCancel();
var G=D.measureInfo;
var H=new Array(1);
H[0]=TemporaryItemCategory.MEASURE;
var I=A.service.removeTemporaryItem(H,null).result;
this.refresh(I)
};
this.restoreDraw=function(){A.viewManager.drawBack()
};
this.result2string=function(G){var J=3;
var H=G.value.toString(10).replace(/0+$/,"");
while(H.replace(/[-\.]/g,"").replace(/^0+/,"").replace(/0+$/,"").length>J){H=H.replace(/[1-9](0*\.?0*)$/,"0")+RegExp.$1
}H=H.replace(/\.0*$/,"");
H=H.replace(/\.([0-9]*[1-9]+)0+$/,"");
if(RegExp.$1.length>0){H+="."+RegExp.$1
}var I=G.unit.replace("m2",E).replace("k",C).replace("m",B);
return H+I
};
this.points2curve=function(J){var H=A.viewManager.currentView;
var K=H.getBoundingBox();
var I=H.width;
var G=H.height;
return Spatial.points2curve(J,K,I,G)
};
this.centerPoint=function(J,H){var G=0;
var K=0;
for(var I=0;
I<J.elements.length;
I++){if(H&&0==I){continue
}G+=J.elements[I].x;
K+=J.elements[I].y
}G/=J.elements.length-(H?1:0);
K/=J.elements.length-(H?1:0);
return new Spatial.Point(G,K)
};
this.endMeasureLength=function(K){var J=new Spatial.Information();
J.spatialType="curve";
J.curve=this.points2curve(K.getCoords().split(","));
A.viewManager.drawCancel();
var H=A.service.getLength(J);
if(H&&H.result){var G=D.measureInfo;
var M=new Spatial.Text();
if(J.curve.elements.length==2){M.point=this.centerPoint(J.curve,false)
}else{M.point=J.curve.elements[Math.floor(J.curve.elements.length/2)]
}M.text=this.result2string(H.result);
var L=new Array(2);
L[0]=Spatial.createCurveTemporaryItem(J.curve,G.lengthStyle);
L[1]=Spatial.createTextTemporaryItem(M,G.textStyle);
var I=A.service.addTemporaryItem(TemporaryItemCategory.MEASURE,L).result;
this.refresh(I)
}};
this.endMeasureArea=function(K){var J=new Spatial.Information();
J.spatialType="surface";
J.surface=new Spatial.Surface();
J.surface.exterior=this.points2curve(K.getCoords().split(","));
A.viewManager.drawCancel();
var H=A.service.getArea(J);
if(H&&H.result){var G=D.measureInfo;
var M=new Spatial.Text();
M.point=this.centerPoint(J.surface.exterior,true);
M.text=this.result2string(H.result);
var L=new Array(2);
L[0]=Spatial.createSurfaceTemporaryItem(J.surface,G.areaStyle);
L[1]=Spatial.createTextTemporaryItem(M,G.textStyle);
var I=A.service.addTemporaryItem(TemporaryItemCategory.MEASURE,L).result;
this.refresh(I)
}};
this.refresh=function(G){A.eventHandler.fireEvent(LiteEvent.TEMPORARY_ITEM_STATE_CHANGE,G);
A.viewManager.drawThematicRaster()
}
}var MemoType=new Object();
Object.extend(MemoType,{ICON:0,LINE:1,AREA:2,TEXT:3});
function MemoManager(I){var A=I;
var H=A.configuration.memo;
var C;
var D="styleDiv";
var G;
var F;
var E=MemoType.ICON;
var B;
var J;
this.init=function(K){C=K;
G=new WindowManager(H.window,this.initWindow.bind(this));
A.eventHandler.addEventListener(LiteEvent.UNLOAD,G.close.bind(G));
F=new StyleUI(A.configuration.style);
F.init(C,G);
F.showStylePage=this.showStylePage.bind(this);
F.okButtonActionPerformed=this.okButtonActionPerformed.bind(this)
};
this.addMemo=function(K){A.viewManager.drawCancel();
E=K;
J="";
B=null;
if(G.open()){return 
}F.updateStylePage()
};
this.clearMemo=function(){this.removeTemporaryItem(null)
};
this.removeMemo=function(){var K=A.configuration.drawPanel.hint.MEMO_CLEAR;
A.viewManager.drawInit(Input.MODE.POINT,this.callback_removeMemo.bind(this),K,DRAW_PURPOSE.MEMO)
};
this.initWindow=function(L,K){var M=L.document.getElementById(H.divId);
if(!M){if(K){K++
}else{K=1
}if(K<=A.configuration.pageLoadCheckCount){setTimeout(this.initWindow.bind(this,L,K),A.configuration.pageLoadCheckInterval)
}return 
}this.initWindowImpl()
};
this.initWindowImpl=function(){var O=G.getWindow();
var T=O.document.getElementsByTagName("head");
var S=T[0];
var K=O.document.createElement("link");
K.type="text/css";
K.rel="stylesheet";
K.href=H.cssUrl;
S.appendChild(K);
var P=O.document.getElementById(H.divId);
var M=O.document.createElement("div");
M.id="tabMenu";
var U=["目印","線","面","文字"];
var R=["tab_memo_icon_off.gif","tab_memo_line_off.gif","tab_memo_area_off.gif","tab_memo_text_off.gif"];
for(var N=0;
N<U.length;
N++){var L=O.document.createElement("input");
L.type="image";
L.alt=U[N];
L.src="image/"+R[N];
M.appendChild(L)
}P.appendChild(M);
var Q=O.document.createElement("div");
Q.id=D;
Q.className=H.styleDivClassName;
P.appendChild(Q);
F.updateStylePage()
};
this.showStylePage=function(){var P=G.getWindow();
var N=P.document.getElementById("tabMenu");
var K=N.getElementsByTagName("input");
var M=["tab_memo_icon_off.gif","tab_memo_line_off.gif","tab_memo_area_off.gif","tab_memo_text_off.gif"];
var Q=["tab_memo_icon_on.gif","tab_memo_line_on.gif","tab_memo_area_on.gif","tab_memo_text_on.gif"];
for(var L=0;
L<K.length;
L++){if(L==E){K[L].onclick=null;
K[L].src="image/"+Q[L]
}else{K[L].onclick=this.changeStylePage.bind(this,L);
K[L].src="image/"+M[L]
}}var O=P.document.getElementById(D);
O.innerHTML="";
switch(E){case MemoType.ICON:this.showIconPage();
break;
case MemoType.LINE:this.showLinePage();
break;
case MemoType.AREA:this.showAreaPage();
break;
case MemoType.TEXT:this.showTextPage();
break;
default:logger.warn("不正なメモ図形種別を指定されました["+E+"]。アイコン画面を表示します。");
this.showIconPage();
break
}};
this.showIconPage=function(){var N=G.getWindow();
var M=F.createIconCategoryPart();
var O=F.createIconPart();
var K=F.createButtonPart();
var L=N.document.getElementById(D);
L.appendChild(M);
L.appendChild(O);
L.appendChild(K)
};
this.showLinePage=function(){var O=G.getWindow();
var M=F.createLineTypePart();
var L=F.createColorPart("lineColor");
var K=F.createButtonPart();
var N=O.document.getElementById(D);
N.appendChild(M);
N.appendChild(L);
N.appendChild(K)
};
this.showAreaPage=function(){var P=G.getWindow();
var O=F.createAreaTypePart();
var L=F.createColorPart("areaColor");
var M=F.createAreaFillPart();
var K=F.createButtonPart();
var N=P.document.getElementById(D);
N.appendChild(O);
N.appendChild(L);
N.appendChild(M);
N.appendChild(K)
};
this.showTextPage=function(){var P=G.getWindow();
var O=F.createTextPart();
var L=F.createColorPart("textColor");
var M=F.createTextSizePart(H.textSize);
var K=F.createButtonPart();
var N=P.document.getElementById(D);
N.appendChild(O);
N.appendChild(L);
N.appendChild(M);
N.appendChild(K)
};
this.changeStylePage=function(K){E=K;
F.updateStylePage()
};
this.okButtonActionPerformed=function(K){var L=null;
var P=null;
var Q=null;
var O=null;
var M=G.getWindow();
switch(E){case MemoType.ICON:if(K.icon==null){M.alert("アイコンを選択してください");
return 
}L="P_"+K.icon.iconId+"_"+H.iconSize+"_"+A.viewManager.currentView.scale;
P=Input.MODE.POINT;
Q=this.callback_addMemoIcon.bind(this);
O=A.configuration.drawPanel.hint.MEMO_ICON;
break;
case MemoType.LINE:if(K.lineType==null){M.alert("線種を選択してください");
return 
}if(K.lineColor==null){M.alert("色を選択くしてください");
return 
}L="L_"+K.lineType.lineTypeId+"_"+K.lineColor.colorId;
P=Input.MODE.POLYLINE;
Q=this.callback_addMemoLine.bind(this);
O=A.configuration.drawPanel.hint.MEMO_POLYLINE;
break;
case MemoType.AREA:if(K.areaType==null){M.alert("面の線種を選択してください");
return 
}if(K.areaColor==null){M.alert("色を選択くしてください");
return 
}if(K.areaFill){var N=K.areaColor.colorId;
L="A_SOLID_"+N+"_"+N+"_";
if(K.areaTrans){L+=H.areaTransparency
}else{L+="1"
}L+="_"+K.areaType.areaTypeId+"_"+N
}else{L="A_EMPTY_NOTHING_NOTHING_1_"+K.areaType.areaTypeId+"_"+K.areaColor.colorId
}if(K.areaType.drawType=="rect"){P=Input.MODE.RECT;
O=A.configuration.drawPanel.hint.MEMO_RECT
}else{if(K.areaType.drawType=="circle"){P=Input.MODE.CIRCLE;
O=A.configuration.drawPanel.hint.MEMO_CIRCLE
}else{P=Input.MODE.POLYGON;
O=A.configuration.drawPanel.hint.MEMO_POLYGON
}}Q=this.callback_addMemoArea.bind(this);
break;
case MemoType.TEXT:if(K.text==null||K.text.length==0){M.alert("テキストを入力してください");
return 
}if(K.textColor==null){M.alert("色を選択くしてください");
return 
}if(!K.textSize){M.alert("文字の大きさを選択くしてください");
return 
}L="T_"+K.textSize+"_"+A.viewManager.currentView.scale+"_"+K.textColor.colorId;
P=Input.MODE.POINT;
Q=this.callback_addMemoText.bind(this);
O=A.configuration.drawPanel.hint.MEMO_TEXT;
break;
default:G.close();
return 
}B=L;
J=K.text;
A.viewManager.drawInit(P,Q,O,DRAW_PURPOSE.MEMO);
G.close()
};
this.callback_addMemoIcon=function(M){var N=M.getPoint();
var K=A.viewManager.calcXYPoint(N.getX(),N.getY());
var L=Spatial.createPointTemporaryItem(K,B);
if(log4javascript.isEnabled()){logger.info("メモ作成(アイコン)");
logger.info("  category="+C.memoIconCategory);
logger.info("  style="+B);
logger.info("  座標="+K.toString())
}this.addTemporaryItem(TemporaryItemCategory.MEMO_POINT,L)
};
this.callback_addMemoLine=function(M){var K=A.viewManager.currentView;
var N=Spatial.points2curve(M.getCoords().split(","),K.getBoundingBox(),K.width,K.height);
var L=Spatial.createCurveTemporaryItem(N,B);
if(log4javascript.isEnabled()){logger.info("メモ作成(線)");
logger.info("  category="+C.memoLineCategory);
logger.info("  style="+B);
logger.info("  座標="+N.toString())
}this.addTemporaryItem(TemporaryItemCategory.MEMO_LINE,L)
};
this.callback_addMemoArea=function(N){var K=new Spatial.Surface();
var L=A.viewManager.currentView;
K.exterior=Spatial.points2curve(N.getCoords().split(","),L.getBoundingBox(),L.width,L.height);
var M=Spatial.createSurfaceTemporaryItem(K,B);
if(log4javascript.isEnabled()){logger.info("メモ作成(面)");
logger.info("  category="+C.memoAreaCategory);
logger.info("  style="+B);
logger.info("  座標="+K.exterior.toString())
}this.addTemporaryItem(TemporaryItemCategory.MEMO_AREA,M)
};
this.callback_addMemoText=function(M){var N=M.getPoint();
var K=A.viewManager.calcXYPoint(N.getX(),N.getY());
var O=new Spatial.Text();
O.point=K;
O.text=J;
var L=Spatial.createTextTemporaryItem(O,B);
if(log4javascript.isEnabled()){logger.info("メモ作成(テキスト)");
logger.info("  category="+C.memoTextCategory);
logger.info("  style="+B);
logger.info("  text="+J);
logger.info("  座標="+K.toString())
}this.addTemporaryItem(TemporaryItemCategory.MEMO_TEXT,L)
};
this.callback_removeMemo=function(N){var O=N.getPoint();
var L=A.viewManager.calcXYPoint(O.getX(),O.getY());
var M=Spatial.createPointTemporaryItem(L,B);
if(log4javascript.isEnabled()){logger.info("メモ削除(地点指定)");
logger.info("  座標="+L.toString())
}var K=new Spatial.BoundingBox(L.x,L.y,L.x,L.y);
this.removeTemporaryItem(K)
};
this.addTemporaryItem=function(N,M){A.viewManager.drawCancel();
var O=new Array(1);
O[0]=M;
var K=A.service.addTemporaryItem(N,O);
if(K.statusId=="success"){var L=K.result;
this.temporaryItemCommon(L)
}};
this.removeTemporaryItem=function(N){A.viewManager.drawCancel();
var L=new Array(4);
L[0]=TemporaryItemCategory.MEMO_POINT;
L[1]=TemporaryItemCategory.MEMO_LINE;
L[2]=TemporaryItemCategory.MEMO_AREA;
L[3]=TemporaryItemCategory.MEMO_TEXT;
var K=A.service.removeTemporaryItem(L,N);
if(K.statusId=="success"){var M=K.result;
this.temporaryItemCommon(M)
}};
this.temporaryItemCommon=function(K){A.eventHandler.fireEvent(LiteEvent.TEMPORARY_ITEM_STATE_CHANGE,K);
A.viewManager.drawThematicRaster()
}
}var Move8Type=new Object();
Object.extend(Move8Type,{CLICKABLE:"clickable",SEPARATE:"separate"});
function Move(F){var D=null;
var B=null;
var E=50;
var C=300;
var A=F;
this.init=function(G,H){if(H){if(H.ratio){E=H.ratio
}if(H.interval){C=H.interval
}if(H.type==Move8Type.CLICKABLE){this.initClickable(G,H)
}else{this.initSeparate(G,H)
}if(H.enablekey){Event.observe(document,"keypress",this.keydownHandler.bind(this),false)
}}};
this.initClickable=function(K,M){var I=document.createElement("div");
I.id=M.id;
var H=M.clickableParam.url;
var G=M.clickableParam.areas;
I.innerHTML="<img alt='8方向移動' src='"+H+"' usemap='#move8' class='move8'/><map id='"+M.id+":move8map' name='move8'/>";
K.appendChild(I);
var L=$(M.id+":move8map");
if(G.tl){var J=this.initArea(G.tl,-1,-1);
L.appendChild(J)
}if(G.tc){var J=this.initArea(G.tc,0,-1);
L.appendChild(J)
}if(G.tr){var J=this.initArea(G.tr,1,-1);
L.appendChild(J)
}if(G.ml){var J=this.initArea(G.ml,-1,0);
L.appendChild(J)
}if(G.mr){var J=this.initArea(G.mr,1,0);
L.appendChild(J)
}if(G.bl){var J=this.initArea(G.bl,-1,1);
L.appendChild(J)
}if(G.bc){var J=this.initArea(G.bc,0,1);
L.appendChild(J)
}if(G.br){var J=this.initArea(G.br,1,1);
L.appendChild(J)
}};
this.initArea=function(I,G,J){var H=document.createElement("area");
H.shape=I.shape;
H.alt="";
H.coords=I.coords;
H.href="javascript:void(0)";
H.moveX=G;
H.moveY=J;
H.onmousedown=this.moveStart.bind(this,H);
return H
};
this.initSeparate=function(K,H){var O=H.separateParam.urlTemplate;
var G=H.separateParam.width;
var P=H.separateParam.height;
var L=document.createElement("div");
L.id=H.id;
L.className="move8";
L.style.width=(G*3)+"px";
L.style.height=(P*3)+"px";
var I=[["tl","tc","tr"],["ml",null,"mr"],["bl","bc","br"]];
for(var M=0;
M<I.length;
M++){for(var N=0;
N<I[M].length;
N++){if(I[M][N]==null){continue
}var J=document.createElement("img");
J.src=O.replace("$DIRECTION$",I[M][N]);
J.alt="";
J.moveX=N-1;
J.moveY=M-1;
J.style.position="absolute";
J.style.width=G+"px";
J.style.height=P+"px";
J.style.left=(G*N)+"px";
J.style.top=(P*M)+"px";
J.onmousedown=this.moveStart.bind(this,J);
L.appendChild(J)
}}K.appendChild(L)
};
this.moveStart=function(H){if(D){return 
}if(H){H.onmouseup=this.moveEnd.bind(this,H);
H.onmouseout=this.moveEnd.bind(this,H)
}var G=H.moveX;
var I=H.moveY;
this.move(G,I);
D=setInterval(this.move.bind(this,G,I),C)
};
this.moveEnd=function(G){if(D!=null){clearInterval(D);
D=null
}if(G){G.onmouseup=null;
G.onmouseout=null
}};
this.move=function(H,J){if(H==0&&J==0){return 
}if(A){var G=-1*E*H;
var I=-1*E*J;
A(G,I)
}};
this.keydownHandler=function(I){var H;
var G=(I||window.event);
if(G.keyCode){H=G.keyCode
}else{if(G.which){H=G.which
}}var J=Event.element(G);
var K=J.nodeName.toUpperCase();
if(K=="INPUT"||K=="SELECT"||K=="TEXTAREA"){return true
}switch(H){case Event.KEY_LEFT:this.keyMove(-1,0,H);
break;
case Event.KEY_UP:this.keyMove(0,-1,H);
break;
case Event.KEY_RIGHT:this.keyMove(1,0,H);
break;
case Event.KEY_DOWN:this.keyMove(0,1,H);
break;
default:return true
}Event.stop(G);
return false
};
this.keyMove=function(G,I,H){if(B){return 
}document.documentElement.onkeyup=this.keyupHandler.bindAsEventListener(this,H);
this.move(G,I);
B=setInterval(this.move.bind(this,G,I),C)
};
this.keyupHandler=function(I,K){var H;
var G=(I||window.event);
if(G.keyCode){H=G.keyCode
}else{if(G.which){H=G.which
}}var J=Event.element(G);
var L=J.nodeName.toUpperCase();
if(L=="INPUT"||L=="SELECT"||L=="TEXTAREA"){return true
}if(H==K){clearInterval(B);
B=null;
document.documentElement.onkeyup=null
}switch(H){case Event.KEY_LEFT:case Event.KEY_UP:case Event.KEY_RIGHT:case Event.KEY_DOWN:return false;
default:return true
}}
}var ScaleBarType=new Object();
Object.extend(ScaleBarType,{BUTTON:"button",SLIDER:"slider"});
function Scale(F){var I=F;
this.onViewExtent;
this.onZoomIn;
this.onZoomOut;
this.onScaleChange;
var L="scalediv";
var H="extent";
var N="zoomin";
var G="zoomout";
var B="scale_";
var M="slider";
var E="handle";
var D;
var A;
var C;
var K=null;
var J=null;
this.init=function(O){D=O;
if(I.type==ScaleBarType.BUTTON){this.initButtonUI()
}else{if(I.type==ScaleBarType.SLIDER){this.initSliderUI()
}}};
this.update=function(O){var P=O.scale;
if(I.type==ScaleBarType.BUTTON){this.updateScaleButton(P)
}else{if(I.type==ScaleBarType.SLIDER){this.updateSliderBar(P)
}}};
this.getId=function(O){return I.targetId+"_"+O
};
this.initSliderUI=function(){var Q=$(I.targetId);
if(Q){var R=document.createElement("div");
R.id=this.getId(L);
R.style.position="relative";
var W=document.createElement("table");
W.style.marginLeft="auto";
W.style.marginRight="auto";
R.appendChild(W);
var P=document.createElement("tbody");
W.appendChild(P);
var V=document.createElement("tr");
P.appendChild(V);
var T=document.createElement("td");
V.appendChild(T);
var U=this.createSliderDiv();
T.style.width=U.style.width;
T.style.height=U.style.height;
T.appendChild(U);
var S=document.createElement("td");
V.appendChild(S);
var O=this.createExtentButton();
S.appendChild(O);
Q.appendChild(R)
}};
this.createExtentButton=function(){var O=document.createElement("input");
O.id=this.getId(H);
O.type="image";
O.className=I.extentButtonClassName;
O.src=I.button.image.baseURL+I.button.image.extent;
O.onclick=this.onclick_ViewExtent.bind(this);
O.onmouseover=this.onExtentBtn.bind(this,O);
O.onmouseout=this.offExtentBtn.bind(this,O);
return O
};
this.onExtentBtn=function(O){O.src="image/scale_extent_on.gif"
};
this.offExtentBtn=function(O){O.src="image/scale_extent_off.gif"
};
this.createSliderDiv=function(){var O=document.createElement("div");
O.id=this.getId(M);
O.style.width=D.length*I.slider.image.width+"px";
O.style.height=I.slider.image.tag.height+I.slider.image.bar.height+"px";
try{O.style.cursor=I.slider.cursor
}catch(P){}O.onclick=this.onSliderClick.bindAsEventListener(this);
O.appendChild(this.createSliderImageTable());
O.appendChild(this.createSliderHandleDiv());
return O
};
this.createSliderHandleDiv=function(){var O=document.createElement("div");
O.id=this.getId(E);
O.style.position="absolute";
O.style.left=I.slider.image.handle.left+"px";
O.style.top=I.slider.image.handle.top+"px";
O.style.width=I.slider.image.handle.width+"px";
O.style.height=I.slider.image.handle.height+"px";
var P=document.createElement("img");
P.src=I.slider.image.baseURL+I.slider.image.handle.src;
P.galleryImg="no";
P.width=I.slider.image.handle.width;
P.height=I.slider.image.handle.height;
O.appendChild(P);
O.onmousedown=this.onSliderHandleMouseDown.bindAsEventListener(this);
return O
};
this.createSliderImageTable=function(){var S=document.createElement("table");
S.border="0";
S.cellspacing="0";
S.cellpadding="0";
var Q=document.createElement("tbody");
S.appendChild(Q);
var T=document.createElement("tr");
Q.appendChild(T);
for(var P=0;
P<D.length;
P++){var O=document.createElement("td");
T.appendChild(O);
var V=document.createElement("img");
V.src=I.slider.image.baseURL+I.slider.image.tag.src.replace("$VALUE$",D[P]);
V.galleryImg="no";
V.width=I.slider.image.width;
V.height=I.slider.image.tag.height;
O.appendChild(V)
}var R=document.createElement("tr");
Q.appendChild(R);
for(var P=1;
P<=D.length;
P++){var O=document.createElement("td");
R.appendChild(O);
var U;
if(1==P){U=I.slider.image.baseURL+I.slider.image.bar.srcLeft
}else{if(P==D.length){U=I.slider.image.baseURL+I.slider.image.bar.srcRight
}else{U=I.slider.image.baseURL+I.slider.image.bar.srcCenter
}}var V=document.createElement("img");
V.src=U;
V.galleryImg="no";
V.width=I.slider.image.width;
V.height=I.slider.image.bar.height;
O.appendChild(V)
}return S
};
this.onSliderHandleMouseDown=function(P){var O=(P||window.event);
if(!Event.isLeftClick(O)){return 
}var Q=$(this.getId(E));
var R=Position.cumulativeOffset(Q);
K=Event.pointerX(O)-R[0];
J=Event.element(O);
A=document.documentElement.onmousemove;
C=document.documentElement.onmouseup;
document.documentElement.onmousemove=this.onSliderHandleMouseMove.bindAsEventListener(this);
document.documentElement.onmouseup=this.onSliderHandleMouseUp.bindAsEventListener(this);
Event.stop(O)
};
this.onSliderHandleMouseMove=function(P){if(K==null){return 
}var O=(P||window.event);
var S=Position.cumulativeOffset($(this.getId(M)));
var R=Event.pointerX(O)-K-S[0];
R=Math.max(I.slider.image.handle.left,R);
R=Math.min((D.length-1)*I.slider.image.width+I.slider.image.handle.left,R);
var Q=$(this.getId(E));
Q.style.left=R+"px";
Event.stop(O)
};
this.onSliderHandleMouseUp=function(Q){var P=(Q||window.event);
var O=Event.pointerX(P)-K+parseInt(I.slider.image.handle.width/2);
K=null;
document.documentElement.onmousemove=A;
document.documentElement.onmouseup=C;
this.fitSliderHandle(O);
Event.stop(P)
};
this.onSliderClick=function(P){var O=P||window.event;
var Q=Event.element(O);
if(Q!=J){this.fitSliderHandle(Event.pointerX(O))
}Event.stop(O)
};
this.fitSliderHandle=function(O){var P=$(this.getId(M));
var R=Position.cumulativeOffset(P);
var Q=(O-R[0])/I.slider.image.width;
Q=Math.floor(Math.min(Math.max(0,Q),D.length-1));
this.moveHandle(Q);
this.onclick_ScaleChange(D[Q])
};
this.moveHandle=function(O){var P=I.slider.image.handle.left+O*I.slider.image.width+"px";
$(this.getId(E)).style.left=P
};
this.updateSliderBar=function(P){if(D){for(var O=0;
O<D.length;
O++){if(D[O]==P){this.moveHandle(O);
break
}}}};
this.initButtonUI=function(){var T=$(I.targetId);
if(T){var X=document.createElement("div");
X.id=this.getId(L);
var Y=document.createElement("table");
X.appendChild(Y);
var S=document.createElement("tbody");
Y.appendChild(S);
var W=document.createElement("tr");
S.appendChild(W);
var P=document.createElement("td");
W.appendChild(P);
var U=document.createElement("input");
U.id=this.getId(N);
U.type="image";
U.className=I.zoomButtonClassName;
U.onclick=this.onclick_ZoomIn.bind(this);
P.appendChild(U);
for(var R=0;
R<D.length;
R++){var P=document.createElement("td");
W.appendChild(P);
var V=document.createElement("input");
V.id=this.getId(B)+D[R];
V.type="image";
V.className=I.scaleButtonClassName;
V.scale=D[R];
V.onclick=this.onclick_ScaleChange.bind(this,D[R]);
P.appendChild(V)
}var P=document.createElement("td");
W.appendChild(P);
var Q=this.createExtentButton();
P.appendChild(Q);
var P=document.createElement("td");
W.appendChild(P);
var O=document.createElement("input");
O.id=this.getId(G);
O.type="image";
O.className=I.zoomButtonClassName;
O.onclick=this.onclick_ZoomOut.bind(this);
P.appendChild(O);
T.appendChild(X)
}};
this.updateScaleButton=function(S){var Q=I.button.image;
var W=Q.baseURL;
var X;
for(var U=0;
U<D.length;
U++){var O=this.getId(B)+D[U];
var P=$(O);
if(P){var T;
if(P.scale==S){X=U;
T=Q.scaleOn;
P.disabled=true
}else{T=Q.scaleOff;
P.disabled=false
}T=T.replace("$VALUE$",D[U]);
P.src=W+T
}}var V=$(this.getId(N));
if(V){if(X==0){V.disabled=true;
V.src=W+Q.zoomInOff
}else{V.disabled=false;
V.src=W+Q.zoomInOn
}}var R=$(this.getId(G));
if(R){if(X==D.length-1){R.disabled=true;
R.src=W+Q.zoomOutOff
}else{R.disabled=false;
R.src=W+Q.zoomOutOn
}}};
this.onclick_ViewExtent=function(){if(this.onViewExtent){this.onViewExtent()
}};
this.onclick_ZoomIn=function(){if(this.onZoomIn){this.onZoomIn()
}};
this.onclick_ZoomOut=function(){if(this.onZoomOut){this.onZoomOut()
}};
this.onclick_ScaleChange=function(O){if(this.onScaleChange){this.onScaleChange(O)
}};
this.setVisible=function(P){var O=$(this.getId(L));
if(O){if(P){show(O)
}else{hide(O)
}}}
}function MouseScroll(){this.initScroll=function(G){G.onmousedown=F;
G.onmouseout=null;
G.onmouseup=null;
G.onmousemove=null;
G.onclick=B;
G.ondblclick=null
};
function F(G){if(C(G)){return false
}var O=(G||window.event);
var K=Event.element(O);
var N=K.scroll;
if(!N){return true
}N.mode=1;
N.startCoord=getEventCoord(O);
N.disableClickEvent=true;
N.prevCoord=N.startCoord;
if(N.onscrollbegin){N.onscrollbegin()
}var H=$(N.moveTargetId);
var L=Position.positionedOffset(H);
var I=L[0];
var M=L[1];
N.startPos.left=I;
N.startPos.top=M;
N.targetZIndex=K.style.zIndex;
N.targetCursor=K.style.cursor;
K.onmouseout=D;
try{K.style.cursor=N.moveCursor
}catch(J){}if(N.moveZIndex){K.style.zIndex=N.moveZIndex
}K.onmouseup=E;
K.onmousemove=A;
return false
}function A(G){var O=(G||window.event);
var H=Event.element(O);
var M=H.scroll;
if(1==M.mode&&!M.moving){M.moving=true;
var I=getEventCoord(O);
M.prevCoord=I;
var L=I.x-M.startCoord.x;
var K=I.y-M.startCoord.y;
if(M.onscrollnow){var N=M.startPos.left+L;
var J=M.startPos.top+K;
M.onscrollnow(N,J)
}M.moving=false
}return false
}function E(G){if(C(G)){return true
}return D(G)
}function D(H){var R=(H||window.event);
var K=Event.element(R);
var Q=K.scroll;
var G=1;
var L=getEventCoord(R);
if(L==null){L=Q.prevCoord
}var P=L.x-Q.startCoord.x;
var N=L.y-Q.startCoord.y;
if(Math.abs(P)<G&&Math.abs(N)<G){Q.disableClickEvent=false
}K.onmouseout=null;
try{K.style.cursor=Q.targetCursor
}catch(J){}K.style.zIndex=Q.targetZIndex;
K.onmouseup=null;
K.onmousemove=null;
if(Q.onscrollnow){var O=Q.startPos.left+P;
var M=Q.startPos.top+N;
Q.onscrollnow(O,M)
}Q.mode=0;
Q.startCoord=null;
if(Q.onscrollend){var I=Q.disableClickEvent;
Q.onscrollend(P,N,I)
}return false
}function B(J){if(C(J)){return false
}var I=(J||window.event);
var L=Event.element(I);
var H=L.scroll;
if(H==null){return false
}if(H.disableClickEvent){H.disableClickEvent=false;
return false
}var K=getPositionedEventCoords(I);
var G=getElementPositionRelative(L);
K.left+=G.left;
K.top+=G.top;
if(K.left>=0&&K.top>=0&&H.onclick){H.onclick(K.left,K.top)
}return false
}function C(H){var G=(H||window.event);
if(G.button){return G.button&2
}else{if(G.which){return G.which==3
}}return false
}}function ScrollState(B,E,A,D,C){this.moveTargetId=B;
this.mode=1;
this.moving=false;
this.startPos={left:0,top:0};
this.startCoord=null;
this.disableClickEvent=false;
this.prevCoord=null;
this.targetZIndex;
this.targetCursor;
this.moveZIndex=99999;
this.moveCursor="move";
this.onscrollbegin=E;
this.onscrollnow=A;
this.onscrollend=D;
this.onclick=C
}function SearchManager(E){var B=E;
var C;
var A=null;
var F=B.configuration.prefix+"searchTarget";
var D=new Icon(B.configuration.locationSearch.targetIcon);
this.init=function(){B.configuration.locationSearch.linkDisableClass=B.configuration.linkDisableClass;
C=new LocationSearch(B.service,B.configuration.locationSearch);
C.init(this.moveInstance.bind(this));
var G=B.viewManager.getMainView();
targetDiv=document.createElement("div");
targetDiv.id=F;
targetDiv.style.position="absolute";
targetDiv.style.borderWidth="0px";
targetDiv.style.zIndex="25";
targetDiv.isSearchTarget=true;
Element.Methods.hide(targetDiv);
G.appendChild(targetDiv)
};
this.moveInstance=function(G,I){this.cancelEraseSearchTargetTimer();
B.viewManager.moveCenter(G,I);
B.viewManager.refresh();
var H=$(F);
H.x=G;
H.y=I;
this.adjustTargetIcon();
Element.Methods.show(H);
this.beginEraseSearchTargetTimer()
};
this.adjustTargetIcon=function(){var J=$(F);
if(J){var H=B.viewManager.currentView;
var I=H.width;
var G=H.height;
var K=B.viewManager.calcPixelPoint(J.x,J.y);
D.drawIcon(J,K.x,K.y,I,G)
}};
this.beginEraseSearchTargetTimer=function(){this.cancelEraseSearchTargetTimer();
var G=B.configuration.locationSearch.iconViewTime;
if(G>=0){A=setTimeout(this.eraseSearchTarget.bind(this),G)
}};
this.cancelEraseSearchTargetTimer=function(){if(A!=null){clearTimeout(A)
}A=null
};
this.eraseSearchTarget=function(){var G=$(F);
if(G){Element.Methods.hide(G)
}A=null
}
}var Spatial=new Object();
Spatial.Point=function(A,D){var C=(A?parseFloat(A):0);
var B=(D?parseFloat(D):0);
this.x=C;
this.y=B;
this.toString=function(){return this.x+","+this.y
}
};
Spatial.Curve=function(){this.elements=new Array();
this.toString=function(){var A="";
for(var B=0;
B<this.elements.length;
B++){if(B!=0){A+=","
}A+=this.elements[B].toString()
}return A
}
};
Spatial.Surface=function(){this.exterior=new Spatial.Curve();
this.interiors=new Array()
};
Spatial.Information=function(){this.spatialType;
this.point;
this.curve;
this.surface
};
Spatial.BoundingBox=function(A,H,C,B){var I=(A?parseFloat(A):0);
var G=(H?parseFloat(H):0);
var E=(C?parseFloat(C):0);
var D=(B?parseFloat(B):0);
var F=5;
this.xmin=I;
this.ymin=G;
this.xmax=E;
this.ymax=D;
this.toString=function(){var M=this.xmin.toString();
var L=this.ymin.toString();
var K=this.xmax.toString();
var J=this.ymax.toString();
var N=M.indexOf(".");
if(N!=-1){M=M.substring(0,N+1)+M.substring(N+1,N+1+F)
}var N=L.indexOf(".");
if(N!=-1){L=L.substring(0,N+1)+L.substring(N+1,N+1+F)
}var N=K.indexOf(".");
if(N!=-1){K=K.substring(0,N+1)+K.substring(N+1,N+1+F)
}var N=J.indexOf(".");
if(N!=-1){J=J.substring(0,N+1)+J.substring(N+1,N+1+F)
}return M+","+L+","+K+","+J
}
};
Spatial.Text=function(){this.point;
this.text
};
Spatial.TemporaryItem=function(){this.itemType;
this.styleName;
this.point;
this.curve;
this.surface;
this.text
};
Spatial.points2curve=function(D,E,C,A){if(0!=D.length){logger.info("points2curve - points is odd number")
}var F=new Spatial.Curve();
for(var B=0;
B<D.length;
B+=2){F.elements[B/2]=coordUtil.calcXYPoint(C,A,E.xmin,E.ymin,E.xmax,E.ymax,D[B],D[B+1])
}return F
};
Spatial.pointstr2curve=function(D){var B=D.split(",");
var C=new Spatial.Curve();
for(var A=0;
A<B.length;
A+=2){C.elements[A/2]=new Spatial.Point(B[A],B[A+1])
}return C
};
Spatial.box2curve=function(A){var B=new Spatial.Curve();
B.elements[0]=new Spatial.Point(A.xmin,A.ymin);
B.elements[1]=new Spatial.Point(A.xmax,A.ymin);
B.elements[2]=new Spatial.Point(A.xmax,A.ymax);
B.elements[3]=new Spatial.Point(A.xmin,A.ymax);
B.elements[4]=new Spatial.Point(A.xmin,A.ymin);
return B
};
Spatial.createPointTemporaryItem=function(A,C){var B=new Spatial.TemporaryItem();
B.itemType="point";
B.point=A;
B.styleName=C;
return B
};
Spatial.createCurveTemporaryItem=function(C,B){var A=new Spatial.TemporaryItem();
A.itemType="curve";
A.curve=C;
A.styleName=B;
return A
};
Spatial.createSurfaceTemporaryItem=function(A,C){var B=new Spatial.TemporaryItem();
B.itemType="surface";
B.styleName=C;
B.surface=A;
return B
};
Spatial.createTextTemporaryItem=function(C,B){var A=new Spatial.TemporaryItem();
A.itemType="text";
A.text=C;
A.styleName=B;
return A
};
function StyleUI(C){var F=C;
C=null;
var A;
var E;
var G="imageLoadCheck";
var B=null;
var D=new Object();
D.iconCategory=null;
D.icon=null;
D.lineType=null;
D.lineColor=null;
D.areaType=null;
D.areaColor=null;
D.areaFill=false;
D.areaTrans=false;
D.text="";
D.textColor=null;
D.textSize=null;
this.init=function(K,L){A=K;
E=L;
var H=A.colors;
if(H){for(var J=0;
J<H.length;
J++){var M=H[J].colorId;
if(M.length>0&&M.charAt(0)=="#"&&M.length<7){var I="#";
for(var N=M.length;
N<7;
N++){I+="0"
}I+=M.substring(1);
H[J].colorId=I;
logger.info(H[J].caption+"["+M+"] ⇒ "+H[J].colorId)
}}}};
this.updateStylePage=function(){this.showStylePage();
this.afterShowStylePage()
};
this.showStylePage=function(){};
this.okButtonActionPerformed=function(H){};
this.afterShowStylePage=function(){var J=E.getWindow();
var I=J.document.getElementById("fill");
if(I){I.checked=D.areaFill
}var H=J.document.getElementById("trans");
if(H){H.checked=D.areaTrans
}var K=J.document.getElementById("text");
if(K){K.focus();
K.select()
}B=J.setTimeout(this.imageLoadCheck.bind(this),F.imageLoadCheckInterval)
};
this.imageLoaded=function(H){H.loaded=true
};
this.imageLoadCheck=function(){logger.info("imageLoadCheck");
try{var J=E.getWindow();
if(E.isOpen()){var K=J.document.getElementsByClassName(G);
for(var H=0;
H<K.length;
H++){if(!K[H].loaded){logger.warn("reload : "+K[H].src);
K[H].onload=null;
K[H].src=K[H].src
}}}}catch(I){}logger.info("END imageLoadCheck")
};
this.toUrl=function(I,H){return I+H
};
this.initIcon=function(M){D.iconCategory=null;
D.icon=null;
var H=A.iconCategories;
if(!H||H.length==0){return 
}for(var K=0;
K<H.length;
K++){var N=H[K];
var J=N.icons;
if(!J||J.length==0){continue
}for(var I=0;
I<J.length;
I++){var L=J[I];
if(L.iconId==M){D.iconCategory=N;
D.icon=L;
return 
}}}};
this.initText=function(H){D.text=H
};
this.createButtonPart=function(){var K=E.getWindow();
var H=K.document.createElement("div");
H.className=F.partClassName;
var I=K.document.createElement("input");
I.type="image";
I.src="image/ketteibtn_memo_off.gif";
I.className=F.okButtonClassName;
I.alt="決定";
I.onclick=this.okButtonActionPerformed.bind(this,D);
I.onmouseover=this.onOktBtn.bind(this,I);
I.onmouseout=this.offOkBtn.bind(this,I);
var J=K.document.createElement("input");
J.type="image";
J.src="image/cancelbtn_memo_off.gif";
J.alt="キャンセル";
J.className=F.cancelButtonClassName;
J.onclick=E.close.bind(E);
J.onmouseover=this.onCanceltBtn.bind(this,J);
J.onmouseout=this.offCancelBtn.bind(this,J);
H.appendChild(I);
H.appendChild(J);
return H
};
this.onOktBtn=function(H){H.src="image/ketteibtn_memo_on.gif"
};
this.offOkBtn=function(H){H.src="image/ketteibtn_memo_off.gif"
};
this.onCanceltBtn=function(H){H.src="image/cancelbtn_memo_on.gif"
};
this.offCancelBtn=function(H){H.src="image/cancelbtn_memo_off.gif"
};
this.createColorPart=function(P){var O=E.getWindow();
var R=O.document.createElement("div");
var H=A.colors;
if(!H||H.length==0){D[P]=null
}else{if(D[P]==null){D[P]=H[0];
if(A.defaultColorId){for(var N=0;
N<H.length;
N++){if(H[N].colorId==A.defaultColorId){D[P]=H[N];
break
}}}}var Q=10;
var J=(100/Q)+"%";
var T=O.document.createElement("table");
T.className=F.colorTableClassName;
var M=O.document.createElement("tbody");
T.appendChild(M);
var S=null;
for(var N=0;
N<H.length;
N++){var L=H[N];
if(N%Q==0){S=O.document.createElement("tr");
M.appendChild(S)
}var K=O.document.createElement("td");
K.style.width=J;
S.appendChild(K);
var I=O.document.createElement("div");
I.title=L.caption;
I.style.backgroundColor=L.colorId;
if(L==D[P]){Element.Methods.addClassName(K,F.highlight)
}else{I.onclick=this.selectColor.bind(this,L,P);
I.onmouseover=this.onImageMouseOver.bind(this,K);
I.onmouseout=this.onImageMouseOut.bind(this,K)
}K.appendChild(I)
}R.appendChild(T)
}return this.createPartCommon("色を選択してください",R)
};
this.createPartCommon=function(M,J){var K=E.getWindow();
var H=K.document.createElement("div");
H.className=F.partClassName;
if(M){var I=K.document.createElement("div");
I.className=F.descriptionClassName;
var L=K.document.createTextNode(M);
I.appendChild(L);
H.appendChild(I)
}if(J){Element.Methods.addClassName(J,F.partContentClassName);
H.appendChild(J)
}return H
};
this.createIconCategoryPart=function(){var M=E.getWindow();
var O=M.document.createElement("div");
var L=A.iconCategories;
if(!L||L.length==0){D.iconCategory=null;
D.icon=null
}else{if(D.iconCategory==null){D.iconCategory=L[0]
}var H=M.document.createElement("div");
H.className=F.iconCategoryClassName;
var N=0;
for(var K=0;
K<L.length;
K++){var I=L[K];
if(!I.icons||I.icons.length==0){continue
}var P=M.document.createElement("a");
P.href="javascript:void(0)";
var J=M.document.createTextNode(I.caption);
P.appendChild(J);
if(I==D.iconCategory){Element.Methods.addClassName(P,F.highlight)
}else{P.onclick=this.selectIconCategory.bind(this,I)
}if(N>0){H.appendChild(M.document.createElement("span"))
}H.appendChild(P);
N++
}O.appendChild(H)
}return this.createPartCommon("目印の種類を選択してください",O)
};
this.createIconPart=function(){var O=E.getWindow();
var Q=O.document.createElement("div");
var R=A.baseUrl;
if(D.iconCategory!=null){var T=D.iconCategory.icons;
if(!T||T.length==0){D.icon=null
}else{var K=null;
for(var N=0;
N<T.length;
N++){if(T[N]==D.icon){K=T[N];
break
}}if(K==null){D.icon=T[0]
}var P=4;
var I=(100/P)+"%";
var U=O.document.createElement("table");
U.className=F.iconTableClassName;
var M=O.document.createElement("tbody");
U.appendChild(M);
var S=null;
var N;
for(N=0;
N<T.length;
N++){if(N%P==0){S=O.document.createElement("tr");
M.appendChild(S)
}var J=O.document.createElement("td");
J.style.width=I;
S.appendChild(J);
var H=O.document.createElement("div");
var L=O.document.createElement("img");
L.className=G;
L.onload=this.imageLoaded.bind(this,L);
L.src=this.toUrl(R,T[N].legendUrl);
L.alt=T[N].caption;
L.title=T[N].caption;
if(T[N]==D.icon){Element.Methods.addClassName(J,F.highlight)
}else{J.onclick=this.selectIcon.bind(this,T[N])
}J.onmouseover=this.onImageMouseOver.bind(this,J);
J.onmouseout=this.onImageMouseOut.bind(this,J);
H.appendChild(L);
J.appendChild(H);
J.appendChild(O.document.createTextNode(T[N].caption))
}N=N%4;
if(N>0){for(;
N<P;
N++){var J=O.document.createElement("td");
J.style.width=I;
S.appendChild(J)
}}Q.appendChild(U)
}}return this.createPartCommon("記入する目印を選択してください",Q)
};
this.createLineTypePart=function(){var N=E.getWindow();
var P=N.document.createElement("div");
var Q=A.baseUrl;
var S=A.lineTypes;
if(!S||S.length==0){D.lineType=null
}else{if(D.lineType==null){D.lineType=S[0]
}var O=2;
var H=(100/O)+"%";
var T=N.document.createElement("table");
T.className=F.lineTypeTableClassName;
var L=N.document.createElement("tbody");
T.appendChild(L);
var R=null;
for(var K=0;
K<S.length;
K++){var M=S[K];
if(K%O==0){R=N.document.createElement("tr");
L.appendChild(R)
}var I=N.document.createElement("td");
I.style.width=H;
R.appendChild(I);
var J=N.document.createElement("img");
J.className=G;
J.onload=this.imageLoaded.bind(this,J);
J.src=this.toUrl(Q,M.legendUrl);
J.alt=M.caption;
J.title=M.caption;
if(M==D.lineType){Element.Methods.addClassName(I,F.highlight)
}else{J.onclick=this.selectLineType.bind(this,M)
}J.onmouseover=this.onImageMouseOver.bind(this,I);
J.onmouseout=this.onImageMouseOut.bind(this,I);
I.appendChild(J)
}P.appendChild(T)
}return this.createPartCommon("線の種類を選択してください",P)
};
this.createAreaTypePart=function(){var H=A.areaTypes;
return this.createAreaTypePartImpl(H)
};
this.createAreaDrawTypePart=function(){var H=A.areaTypes;
if(H){var J=new Array();
for(var I=0;
I<H.length;
I++){if(!J[H[I].drawType]){J[H[I].drawType]=H[I];
J[J.length]=H[I]
}}H=J
}return this.createAreaTypePartImpl(H)
};
this.createAreaTypePartImpl=function(J){var O=E.getWindow();
var Q=O.document.createElement("div");
var R=A.baseUrl;
if(!J||J.length==0){D.areaType=null
}else{if(D.areaType==null){D.areaType=J[0]
}var P=3;
var I=(100/P)+"%";
var T=O.document.createElement("table");
T.className=F.areaTypeTableClassName;
var N=O.document.createElement("tbody");
T.appendChild(N);
var S=null;
for(var M=0;
M<J.length;
M++){var H=J[M];
if(M%P==0){S=O.document.createElement("tr");
N.appendChild(S)
}var K=O.document.createElement("td");
K.style.width=I;
S.appendChild(K);
var L=O.document.createElement("img");
L.className=G;
L.onload=this.imageLoaded.bind(this,L);
L.src=this.toUrl(R,H.legendUrl);
L.alt=H.caption;
L.title=H.caption;
if(H==D.areaType){Element.Methods.addClassName(K,F.highlight)
}else{L.onclick=this.selectAreaType.bind(this,H)
}L.onmouseover=this.onImageMouseOver.bind(this,K);
L.onmouseout=this.onImageMouseOut.bind(this,K);
K.appendChild(L)
}Q.appendChild(T)
}return this.createPartCommon("描画する図形の種類を選択してください",Q)
};
this.createAreaFillPart=function(){var M=E.getWindow();
var K=M.document.createElement("div");
var L=M.document.createElement("input");
L.type="checkbox";
L.id="fill";
L.onclick=this.onFillCheckboxClicked.bind(this);
var H=M.document.createElement("label");
H.setAttribute("for","fill");
H.appendChild(L);
H.appendChild(M.document.createTextNode("塗りつぶし"));
K.appendChild(H);
var J=M.document.createElement("input");
J.type="checkbox";
J.id="trans";
J.onclick=this.onTransCheckboxClicked.bind(this);
J.disabled=!D.areaFill;
var I=M.document.createElement("label");
I.setAttribute("for","trans");
I.appendChild(J);
I.appendChild(M.document.createTextNode("透過"));
K.appendChild(I);
return this.createPartCommon(null,K)
};
this.createTextPart=function(){var I=E.getWindow();
var H=I.document.createElement("div");
var J=I.document.createElement("input");
J.type="text";
J.id="text";
Element.Methods.addClassName(J,F.textFieldClassName);
J.onblur=this.textBlur.bind(this);
if(D.text){J.value=D.text
}H.appendChild(J);
return this.createPartCommon("テキストを入力してください",H)
};
this.createTextSizePart=function(M){var N=E.getWindow();
var K=N.document.createElement("div");
var J=N.document.createElement("table");
J.className=F.textSizeTableClassName;
var H=N.document.createElement("tbody");
J.appendChild(H);
if(D.textSize==null){D.textSize=M[0]
}for(var I=0;
I<M.length;
I++){var L=N.document.createElement("tr");
var O=N.document.createElement("td");
O.innerHTML=M[I]+"pt";
O.style.fontSize=M[I]+"pt";
L.appendChild(O);
H.appendChild(L);
if(M[I]==D.textSize){Element.Methods.addClassName(O,F.highlight)
}else{O.onmouseover=this.onImageMouseOver.bind(this,O);
O.onmouseout=this.onImageMouseOut.bind(this,O);
O.onclick=this.selectTextSize.bind(this,M[I])
}}K.appendChild(J);
return this.createPartCommon("文字の大きさを選択してください",K)
};
this.onImageMouseOver=function(H){Element.Methods.addClassName(H,F.pointHighlight)
};
this.onImageMouseOut=function(H){Element.Methods.removeClassName(H,F.pointHighlight)
};
this.selectColor=function(I,H){D[H]=I;
this.updateStylePage()
};
this.selectIconCategory=function(H){D.iconCategory=H;
D.icon=null;
this.updateStylePage()
};
this.selectIcon=function(H){D.icon=H;
this.updateStylePage()
};
this.selectLineType=function(H){D.lineType=H;
this.updateStylePage()
};
this.selectAreaType=function(H){D.areaType=H;
this.updateStylePage()
};
this.onFillCheckboxClicked=function(){var J=E.getWindow();
var I=J.document.getElementById("fill");
var H=J.document.getElementById("trans");
H.disabled=!I.checked;
D.areaFill=I.checked
};
this.onTransCheckboxClicked=function(){var I=E.getWindow();
var H=I.document.getElementById("trans");
D.areaTrans=H.checked
};
this.textBlur=function(){var H=E.getWindow();
var I=H.document.getElementById("text");
D.text=I.value
};
this.selectTextSize=function(H){D.textSize=H;
this.updateStylePage()
}
}var VectorClick=new Object();
Object.extend(VectorClick,{MOVE_CENTER:1,ATTRIBUTE:2,BOTH:3,NONE:4,CONDITION_SEARCH:5});
function VectorManager(E){var L=E;
var G=L.configuration.vector;
var C=L.configuration.prefix+G.circumference.targetId;
var O;
var D=new SearchCondition();
var I;
var N;
var M=C+"_prev";
var A=C+"_next";
var W=C+"_body";
var H=G.circumference.numPerPage;
var R=L.configuration.linkDisableClass;
var T="point";
var P="click";
var U=L.configuration.prefix+"_poiList";
var K=null;
var S=null;
var J=null;
var F=null;
var B=null;
var V=new Icon(G.poi.icon);
var Q={COND_CONDITION_PANEL:C+"_cond_cond",CON_CONDITION_TITLE_LINK:C+"_cond_cond_titleLink",COND_LK_PANEL_ID:C+"_cond_cond_LKPanel",COND_LK_TITLE_LINK:C+"_cond_cond_LK_titleLink",COND_LK_LAYER_PANEL:C+"_cond_cond_LK_Layer",COND_LK_LAYER_NOTATION:C+"_cond_cond_LK_Layer_notatnion",COND_LK_LAYER_LIST:C+"_cond_cond_LK_Layer_list",COND_LK_LAYER_KEYWORD:C+"_cond_cond_LK_Layer_keyword",COND_LK_KEYWORD_PANEL:C+"_cond_cond_LK_Keyword",COND_LK_KEYWORD_LIST:C+"_cond_cond_LK_Keyword_list",COND_LK_KEYWORD_TEXT:C+"_cond_cond_LK_Keyword_text",COND_LY_BUTTON_PANEL:C+"_cond_cond_LK_Button",COND_LY_BUTTON_BACK:C+"_cond_cond_LK_Button_Back",COND_LY_BUTTON_OK:C+"_cond_cond_LK_Button_OK",COND_AREA_PANEL_ID:C+"_cond_cond_AreaPanel",COND_AREA_TITLE_LINK:C+"_cond_cond_Area_titleLink",COND_AREA_BODY:C+"_cond_cond_Area_body",COND_RESULT_PANEL:C+"_cond_result",COND_RESULT_TITLE_LINK:C+"_cond_result_titleLink",COND_RESULT_BODY:C+"_cond_result_body",COND_BUTTON_PANEL:C+"_cond_button",COND_BUTTON_SEARCH:C+"_cond_button_search"};
this.init=function(Z){O=Z;
if($(G.circumference.targetId)){D.load(L)
}if(D.enable){this.resumeConditionSearchMode()
}else{this.initCircumferencePanel()
}var f=new Image();
f.src=G.poi.icon.src;
var X=new Image();
X.src=G.poi.icon.point;
var c=new Image();
c.src=G.poi.icon.click;
var a=document.createElement("div");
a.id=U;
a.className=G.poi.poiList.className;
a.onmouseover=this.poiListMouseOver.bind(this);
a.onmouseout=this.poiListMouseOut.bind(this);
a.style.display="none";
a.style.position="absolute";
var b=L.viewManager.getMainView();
b.appendChild(a);
for(var Y=0;
Y<SearchCondition.areaTypes.length;
Y++){try{new Image().src=SearchCondition.areaTypes[Y].legend
}catch(d){}}};
this.setReSearch=function(){B=null
};
this.layerStateChanged=function(X){this.setReSearch()
};
this.drawThematicVector=function(){if(D.enable){return 
}var b=L.viewManager.currentView;
var Z=b.getBoundingBox();
var X=Z.toString()!=B;
if(X){var a=this.drawThematicVectorImpl.bind(this);
var Y=b.scale;
L.service.getThematicVectorFeature(Z,Y,a)
}else{this.createPOIIcon()
}B=Z.toString()
};
this.drawThematicVectorImpl=function(X){N=X.result;
this.createPOIIcon();
this.createCircumference(0,true)
};
this.clearThematicVector=function(){this.clearPOIIcon()
};
this.clearCircumference=function(){N=null;
B=null;
this.createCircumference(0,true)
};
this.initCircumferencePanel=function(){var f=$(G.circumference.targetId);
if(f){f.innerHTML="";
f.style.textAlign="";
var b=document.createElement("div");
b.className="condition_notation";
b.appendChild(document.createTextNode("画面の中心を基点に、周辺の施設と距離が表示されます。"));
if(L.layerManager.getVectorLayers().length>0){var c=document.createElement("a");
c.href="javascript:void(0)";
c.onclick=this.initConditionSearchMode.bind(this);
c.innerHTML="条件検索";
c.alt="条件を指定した高度な検索を行う";
c.title=c.alt;
b.appendChild(c)
}var a=this.createPrevBtn();
var Y=this.createNextBtn();
var d=document.createElement("div");
d.align="center";
d.appendChild(a);
d.appendChild(document.createTextNode(" "));
d.appendChild(Y);
this.disablePrevBtn();
this.disableNextBtn();
var Z=document.createElement("table");
var X=document.createElement("tbody");
X.id=W;
Z.appendChild(X);
f.appendChild(b);
f.appendChild(Z);
f.appendChild(d)
}};
this.createPrevBtn=function(){var X=document.createElement("input");
X.type="image";
X.id=M;
X.alt="前へ";
X.src="image/K_feature_prev_disable.gif";
X.className=R;
X.disabled=true;
return X
};
this.createNextBtn=function(){var X=document.createElement("input");
X.type="image";
X.id=A;
X.alt="次へ";
X.src="image/K_feature_next_disable.gif";
X.className=R;
X.disabled=true;
return X
};
this.disablePrevBtn=function(){var X=$(M);
if(X){X.disabled=true;
X.className=R;
X.src="image/K_feature_prev_disable.gif";
X.onclick=null;
X.onmouseover=null;
X.onmouseout=null
}};
this.enablePrevBtn=function(X){var Y=$(M);
if(Y){Y.disabled=false;
Y.className="";
Y.src="image/K_feature_prev_off.gif";
Y.onclick=X;
Y.onmouseover=this.onPrevBtn.bind(this,Y);
Y.onmouseout=this.offPrevBtn.bind(this,Y)
}};
this.disableNextBtn=function(){var X=$(A);
if(X){X.disabled=true;
X.className=R;
X.src="image/K_feature_next_disable.gif";
X.onclick=null;
X.onmouseover=null;
X.onmouseout=null
}};
this.enableNextBtn=function(X){var Y=$(A);
if(Y){Y.disabled=false;
Y.className="";
Y.src="image/K_feature_next_off.gif";
Y.onclick=X;
Y.onmouseover=this.onNextBtn.bind(this,Y);
Y.onmouseout=this.offNextBtn.bind(this,Y)
}};
this.onPrevBtn=function(X){if(!X.disabled){X.src="image/K_feature_prev_on.gif"
}};
this.offPrevBtn=function(X){if(!X.disabled){X.src="image/K_feature_prev_off.gif"
}};
this.onNextBtn=function(X){if(!X.disabled){X.src="image/K_feature_next_on.gif"
}};
this.offNextBtn=function(X){if(!X.disabled){X.src="image/K_feature_next_off.gif"
}};
this.createCircumference=function(Z,k){var f=$(W);
if(!f){return 
}var n=0;
if(N!=null){n=N.length
}var q;
if(k){q=1
}else{q=-1
}for(var o=f.rows.length-1;
o>=0;
o--){f.deleteRow(o)
}var Y=0;
var c=0;
var t=0;
var p=null;
if(G.click&&G.click.circumference){p=this.checkClickType(G.click.circumference)
}for(var o=Z;
o>=0&&o<n&&Y<H;
o+=q){var u=N[o];
var h=this.getPOIId(u);
var X;
if(q>0){X=f.insertRow(Y)
}else{X=f.insertRow(0)
}X.id="poitr_"+h;
var b=document.createElement("td");
X.appendChild(b);
var r=document.createElement("a");
var m=document.createTextNode(u.name);
r.appendChild(m);
if(!G.pointDisabled){r.onmouseover=this.pointPOI.bind(this,h,true);
r.onmouseout=this.pointPOI.bind(this,h,false)
}if(p){r.onclick=this.clickPOIImpl.bind(this,h,p)
}r.href="javascript:void(0)";
b.appendChild(r);
var v=document.createElement("td");
X.appendChild(v);
var j=document.createTextNode(u.distance);
v.appendChild(j);
if(Y==0||o<c){c=o
}if(Y==0||o>t){t=o
}Y++;
if(k){}else{if(o==0&&q<0&&Y<H){o=Z;
q=1
}}}for(;
Y<H;
Y++){var X=document.createElement("tr");
f.appendChild(X);
var b=document.createElement("td");
X.appendChild(b);
b.innerHTML="<span>　</span>"
}f.startIdx=c;
f.endIdx=t;
var d=c>0;
if(d){this.enablePrevBtn(this.showCircumference.bind(this,true))
}else{this.disablePrevBtn()
}var g=t+1<n;
if(g){this.enableNextBtn(this.showCircumference.bind(this,false))
}else{this.disableNextBtn()
}};
this.checkClickType=function(X){switch(X){case VectorClick.MOVE_CENTER:case VectorClick.ATTRIBUTE:case VectorClick.BOTH:return X;
default:return null
}};
this.clearPOIIcon=function(){var Z=L.viewManager.getMainView();
Element.Methods.addClassName(Z,G.poiOffClassName);
var Y;
var X=Z.getElementsByTagName("div");
for(Y=X.length-1;
Y>=0;
Y--){if(X[Y].isPoi){Z.removeChild(X[Y])
}}Element.Methods.removeClassName(Z,G.poiOffClassName)
};
this.createPOIIcon=function(){var m=L.viewManager.getMainView();
this.clearPOIIcon();
if(N==null||N.length==0){return 
}var k=L.viewManager.currentView;
var g=k.getBoundingBox();
var X=g.xmin;
var o=g.ymin;
var f=g.xmax;
var Z=g.ymax;
var Y=k.width;
var p=k.height;
var j=null;
if(G.click&&G.click.poi){j=this.checkClickType(G.click.poi)
}for(var d=0;
d<N.length;
d++){var h=N[d];
var n=coordUtil.calcPixelPoint(Y,p,X,o,f,Z,h.point.x,h.point.y);
var c=document.createElement("div");
c.isPoi=true;
var b=this.getPOIId(h);
c.id=b;
c.className=G.poi.poiClassName;
c.picPoint=n;
V.drawIcon(c,n.x,n.y,Y,p);
var a=c.iconImg;
if(S==b){Element.Methods.addClassName(a,P);
a.src=G.poi.icon.click
}if(!G.pointDisabled){a.onmouseover=this.pointPOI.bind(this,b,true);
a.onmouseout=this.pointPOI.bind(this,b,false)
}if(j){a.onclick=this.clickPOI.bindAsEventListener(this,b,j)
}a.title=h.name;
a.alt=h.name;
m.appendChild(c)
}Element.Methods.removeClassName(m,G.poiOffClassName)
};
this.getPOIId=function(X){return(L.configuration.prefix+X.featureId+":"+X.instanceId)
};
this.pointPOI=function(c,a){var Y=$(c);
if(Y==null){return false
}var Z=Y.iconImg;
var b=this.showTargetCircumference(c);
var X=$("poilist_"+c);
if(a){Element.Methods.addClassName(Z,T);
if(b!=null){Element.Methods.addClassName(b,G.circumference.highlightClassName)
}if(X){Element.Methods.addClassName(X,G.circumference.highlightClassName)
}}else{Element.Methods.removeClassName(Z,T);
if(b!=null){Element.Methods.removeClassName(b,G.circumference.highlightClassName)
}if(X){Element.Methods.removeClassName(X,G.circumference.highlightClassName)
}}this.updatePOIImg(Z);
return false
};
this.updatePOIImg=function(X){if(Element.Methods.hasClassName(X,P)){X.src=G.poi.icon.click
}else{if(Element.Methods.hasClassName(X,T)){X.src=G.poi.icon.point
}else{X.src=G.poi.icon.src
}}};
this.showTargetCircumference=function(Z){if(!$(G.circumference.targetId)){return null
}var Y=$("poitr_"+Z);
if(Y==null){var X=this.getPOIIdx(Z);
if(X>=0){this.createCircumference(X,true);
Y=$("poitr_"+Z)
}}return Y
};
this.clickPOI=function(Z,d,m){if(L.viewManager.isBlocking()){return 
}var o=getPositionedEventCoords(Z);
var h=$(d);
var p=h.picPoint.x+o.left-G.poi.icon.baseX;
var n=h.picPoint.y+o.top-G.poi.icon.baseY;
var Y=parseInt(p-G.poi.icon.width+G.poi.icon.baseX);
var q=parseInt(n-G.poi.icon.height+G.poi.icon.baseY);
var g=parseInt(p+G.poi.icon.baseX+0.9);
var b=parseInt(n+G.poi.icon.baseY+0.9);
var a=new Array();
var k=L.viewManager.getMainView();
var c=k.getElementsByTagName("div");
for(var f=0;
f<c.length;
f++){if(c[f].isPoi){var X=c[f].picPoint.x;
var j=c[f].picPoint.y;
if(X>=Y&&X<=g&&j>=q&&j<=b){a[a.length]=c[f]
}}}if(a.length>1){this.clickMulitPOI(p,n,a,m)
}else{this.clickPOIImpl(d,m)
}return false
};
this.clickPOIImpl=function(a,Y){this.poiListHidden();
this.pointPOI(a,false);
var X=this.getPOIIdx(a);
var Z=N[X];
L.featureManager.clickVectorFeature(a,Z,Y)
};
this.clickMulitPOI=function(d,c,p,Z){var Y=$(U);
Y.style.display="none";
Y.innerHTML="";
for(var r=0;
r<p.length;
r++){var f=p[r].id;
var k=this.getPOIIdx(f);
var u=N[k];
var j=document.createElement("div");
j.id="poilist_"+f;
var v=document.createElement("a");
v.href="javascript:void(0);";
var b=document.createTextNode(u.name);
v.appendChild(b);
v.onclick=this.clickPOIImpl.bind(this,f,Z);
v.onmouseover=this.pointPOI.bind(this,f,true);
v.onmouseout=this.pointPOI.bind(this,f,false);
j.appendChild(v);
Y.appendChild(j)
}var X=L.viewManager.getMainView();
var q=Element.Methods.getDimensions(X);
var g=q.width;
var t=q.height;
Y.style.left="0px";
Y.style.top=(t+10)+"px";
Y.style.display="block";
var n=Element.Methods.getDimensions(Y);
var o=n.width;
var m=n.height;
if(g/2<d&&g<=d+o+G.poi.poiList.offsetX){Y.style.left=(d-G.poi.poiList.offsetX-o)+"px"
}else{Y.style.left=(d+G.poi.poiList.offsetX)+"px"
}if(t<=c+m+G.poi.poiList.offsetY){Y.style.top=(t-m)+"px"
}else{Y.style.top=(c+G.poi.poiList.offsetY)+"px"
}this.poiListMouseOut(G.poi.poiList.firstTimerInterval)
};
this.poiListMouseOver=function(){if(K){window.clearTimeout(K);
K=null
}};
this.poiListMouseOut=function(X){this.poiListMouseOver();
X=X||G.poi.poiList.timerInterval;
K=window.setTimeout(this.poiListHidden.bind(this),X)
};
this.poiListHidden=function(){K=null;
var X=$(U);
X.style.display="none";
X.innerHTML=""
};
this.clearHighlightPOI=function(){if(S!=null){var X=$(S);
if(X!=null){Element.Methods.removeClassName(X.iconImg,P);
this.updatePOIImg(X.iconImg)
}S=null;
J=null;
F=null
}};
this.isHighlightLayerOff=function(X){if(!S||!F||!X){return false
}for(var Y=0;
Y<X.length;
Y++){if(X[Y].layerId==F){return !X[Y].visible
}}return false
};
this.highlightPOI=function(b,X){S=b;
J=X;
var a=$(b);
if(a==null){return 
}var Z=a.iconImg;
Element.Methods.addClassName(Z,P);
if(L.layerManager&&L.layerManager.getLayerByFeatureId){var Y=L.layerManager.getLayerByFeatureId(X.featureId);
F=Y.layerId
}this.updatePOIImg(Z)
};
this.getPOIIdx=function(a){var Z=0;
if(N!=null){Z=N.length
}var Y;
for(Y=0;
Y<Z;
Y++){var X=N[Y];
if(this.getPOIId(X)==a){return Y
}}return -1
};
this.showCircumference=function(a){if(N==null||N.length==0){return false
}var Z=$(W);
var Y=Z.startIdx;
var X=Z.endIdx;
if(a){this.createCircumference(Y-1,false)
}else{this.createCircumference(X+1,true)
}return false
};
this.getClickVector=function(){return J
};
this.isSearchConditionMode=function(){return D.enable
};
this.initCircumferenceSerachMode=function(){this.clearSearchTemporaryItem();
D.initialize();
D.save();
I=null;
this.initCircumferencePanel();
this.drawThematicVector();
L.eventHandler.fireEvent(LiteEvent.AREA_SEARCH_MODE_CHANGE)
};
this.initConditionSearchMode=function(){this.createConditionModeUI();
this.resetCondition(false);
L.eventHandler.fireEvent(LiteEvent.AREA_SEARCH_MODE_CHANGE)
};
this.createConditionModeUI=function(){N=null;
B=null;
this.clearPOIIcon();
var X=$(G.circumference.targetId);
if(X){X.innerHTML="";
X.style.textAlign="left";
X.appendChild(this.createConditionSearchPanel());
X.appendChild(this.createConditionResultPanel());
X.appendChild(this.createConditionButtonPanel());
return true
}return false
};
this.resumeConditionSearchMode=function(){if(this.createConditionModeUI()){if(D.doSearch){this.doSearchCommon()
}else{this.updateSearchConditionUI()
}L.eventHandler.fireEvent(LiteEvent.AREA_SEARCH_MODE_CHANGE)
}};
this.createConditionSearchPanel=function(){var a=document.createElement("div");
a.appendChild(document.createTextNode("＜検索条件＞"));
var Z=document.createElement("a");
Z.id=Q.CON_CONDITION_TITLE_LINK;
Z.className=G.condition.className.titleLink;
Z.innerHTML="初期状態に戻す";
Z.onclick=this.resetCondition.bind(this,true);
Z.href="javascript:void(0)";
a.appendChild(Z);
var X=document.createElement("div");
X.appendChild(document.createTextNode("検索条件を指定して高度な検索を行うことができます。"));
X.className="condition_notation";
X.appendChild(this.createConditionLKPanel());
X.appendChild(this.createConditionAreaPanel());
var Y=document.createElement("div");
Y.id=Q.COND_CONDITION_PANEL;
Y.appendChild(a);
Y.appendChild(X);
return Y
};
this.createConditionResultPanel=function(){var a=document.createElement("div");
a.appendChild(document.createTextNode("＜検索結果＞"));
var Z=document.createElement("a");
Z.id=Q.COND_RESULT_TITLE_LINK;
Z.className=G.condition.className.titleLink;
Z.href="javascript:void(0)";
Z.innerHTML="検索条件を表示";
Z.onclick=this.changeCondition.bind(this);
a.appendChild(Z);
var X=document.createElement("div");
X.id=Q.COND_RESULT_BODY;
X.className=G.condition.className.body;
var Y=document.createElement("div");
Y.id=Q.COND_RESULT_PANEL;
Y.appendChild(a);
Y.appendChild(X);
return Y
};
this.createConditionLKPanel=function(){var Y=document.createElement("div");
Y.id=Q.COND_LK_PANEL_ID;
Y.appendChild(document.createTextNode("◆レイヤとキーワード"));
Y.className="condition_panel";
var Z=document.createElement("a");
Z.id=Q.COND_LK_TITLE_LINK;
Z.className=G.condition.className.titleLink;
Z.href="javascript:void(0)";
Z.innerHTML="条件変更";
Z.onclick=this.updateLKPanel_layer.bind(this);
Y.appendChild(Z);
var X=document.createElement("div");
X.className=G.condition.className.body;
Y.appendChild(X);
X.appendChild(this.createLKLayerPanel());
X.appendChild(this.createLKKeywordPanel());
X.appendChild(this.createLKButtonPanel());
return Y
};
this.createLKLayerPanel=function(){var Z=document.createElement("div");
Z.id=Q.COND_LK_LAYER_NOTATION;
var Y=document.createElement("ul");
Y.id=Q.COND_LK_LAYER_LIST;
Element.Methods.addClassName(Y,G.condition.className.list);
Element.Methods.addClassName(Y,G.condition.className.scrollList);
var a=L.layerManager.getTreeLayers();
I=new LayerTree(Y,a,L.configuration.layer.tree);
var X=document.createElement("div");
X.id=Q.COND_LK_LAYER_PANEL;
X.appendChild(Z);
X.appendChild(Y);
return X
};
this.createLKKeywordPanel=function(){var X=document.createElement("div");
X.id=Q.COND_LK_KEYWORD_PANEL;
return X
};
this.createLKButtonPanel=function(){var Y=document.createElement("input");
Y.id=Q.COND_LY_BUTTON_BACK;
Y.type="button";
Y.value="戻る";
var Z=document.createElement("input");
Z.id=Q.COND_LY_BUTTON_OK;
Z.type="button";
Z.value="決定";
var X=document.createElement("div");
X.id=Q.COND_LY_BUTTON_PANEL;
X.style.textAlign="center";
X.appendChild(Y);
X.appendChild(Z);
return X
};
this.createConditionAreaPanel=function(){var Y=document.createElement("div");
Y.id=Q.COND_AREA_PANEL_ID;
Y.appendChild(document.createTextNode("◆範囲"));
Y.className="condition_panel";
var Z=document.createElement("a");
Z.id=Q.COND_AREA_TITLE_LINK;
Z.className=G.condition.className.titleLink;
Z.href="javascript:void(0)";
Z.innerHTML="条件変更";
Z.onclick=this.updateAreaPanel_area.bind(this);
Y.appendChild(Z);
var X=document.createElement("div");
X.id=Q.COND_AREA_BODY;
X.className=G.condition.className.body;
Y.appendChild(X);
return Y
};
this.createConditionButtonPanel=function(){var Z=document.createElement("input");
Z.type="button";
Z.value="条件検索終了";
Z.onclick=this.initCircumferenceSerachMode.bind(this);
var Y=document.createElement("input");
Y.id=Q.COND_BUTTON_SEARCH;
Y.type="button";
Y.value="条件検索開始";
Y.onclick=this.onclickSearch.bind(this);
var X=document.createElement("div");
X.id=Q.COND_BUTTON_PANEL;
X.style.textAlign="center";
X.appendChild(Z);
X.appendChild(Y);
return X
};
this.initSearchCondition=function(Z){var Y=new Array();
var X=L.layerManager.getVectorLayers();
for(var a=0;
a<X.length;
a++){if(X[a].visible){Y[Y.length]=X[a].layerId
}}D.initialize();
D.enable=true;
D.setLayers(Y,null,null);
if(Z){D.keyword=null
}D.save()
};
this.updateSearchConditionUI=function(){Element.Methods.show(Q.COND_CONDITION_PANEL);
Element.Methods.hide(Q.COND_RESULT_PANEL);
Element.Methods.show(Q.CON_CONDITION_TITLE_LINK);
this.updateLKPanel_init();
this.updateAreaPanel_init();
var X=$(Q.COND_BUTTON_SEARCH);
Element.Methods.show(X);
X.disabled=false
};
this.updateSearchResultUI=function(){Element.Methods.hide(Q.COND_CONDITION_PANEL);
Element.Methods.show(Q.COND_RESULT_PANEL);
Element.Methods.hide(Q.COND_BUTTON_SEARCH);
Element.Methods.hide(Q.COND_RESULT_TITLE_LINK);
$(Q.COND_RESULT_BODY).innerHTML="検索中です・・・"
};
this.updateSearchResultPage=function(Y){Element.Methods.show(Q.COND_RESULT_TITLE_LINK);
var c=$(Q.COND_RESULT_BODY);
if(D.result.length==0){c.innerHTML="該当する情報が見つかりませんでした。";
return 
}c.innerHTML="以下をクリックするとその場所に地図が移動します。また詳細情報が表示されます。";
var d=document.createElement("ul");
Element.Methods.addClassName(d,G.condition.className.list);
c.appendChild(d);
var g=Math.floor(D.result.length/H);
if(D.result.length%H>0){g++
}if(Y<0){Y=0
}else{if(Y>=g){Y=g-1
}}var h=Y*H;
var b=h+H;
for(var a=h;
a<b;
a++){var j=document.createElement("li");
j.style.listStyleType="none";
if(a<D.result.length){var X=D.result[a];
var f=document.createElement("a");
f.href="javascript:void(0)";
f.onclick=this.clickConditionSearchResult.bind(this,X);
var Z=document.createTextNode(X.name);
f.appendChild(Z);
j.appendChild(f)
}else{j.innerHTML="<span>　</span>"
}d.appendChild(j)
}var k=document.createElement("div");
k.align="center";
k.appendChild(this.createPrevBtn());
k.appendChild(document.createTextNode(" "));
k.appendChild(this.createNextBtn());
c.appendChild(k);
if(Y>0){this.enablePrevBtn(this.updateSearchResultPage.bind(this,Y-1))
}else{this.disablePrevBtn()
}if(Y<g-1){this.enableNextBtn(this.updateSearchResultPage.bind(this,Y+1))
}else{this.disableNextBtn()
}};
this.clickConditionSearchResult=function(X){L.featureManager.clickVectorFeature(null,X,VectorClick.CONDITION_SEARCH)
};
this.updateLKPanel_init=function(){Element.Methods.show(Q.COND_LK_TITLE_LINK);
Element.Methods.removeClassName(Q.COND_LK_PANEL_ID,G.condition.className.activePanel);
this.updateLKLayerPanel_init(true);
this.updateLKKeywordPanel_init();
Element.Methods.hide(Q.COND_LY_BUTTON_PANEL)
};
this.updateLKPanel_layer=function(){Element.Methods.hide(Q.CON_CONDITION_TITLE_LINK);
Element.Methods.hide(Q.COND_LK_TITLE_LINK);
Element.Methods.hide(Q.COND_AREA_TITLE_LINK);
Element.Methods.addClassName(Q.COND_LK_PANEL_ID,G.condition.className.activePanel);
this.updateLKLayerPanel_layer(false);
Element.Methods.hide(Q.COND_LK_KEYWORD_PANEL);
$(Q.COND_LY_BUTTON_BACK).onclick=this.updateSearchConditionUI.bind(this);
Element.Methods.show(Q.COND_LY_BUTTON_PANEL);
$(Q.COND_LY_BUTTON_OK).onclick=this.saveLayerCondition.bind(this);
$(Q.COND_LY_BUTTON_OK).disabled=false;
$(Q.COND_BUTTON_SEARCH).disabled=true
};
this.updateLKPanel_keyword=function(){var X;
Element.Methods.hide(Q.CON_CONDITION_TITLE_LINK);
Element.Methods.hide(Q.COND_LK_TITLE_LINK);
Element.Methods.hide(Q.COND_AREA_TITLE_LINK);
Element.Methods.addClassName(Q.COND_LK_PANEL_ID,G.condition.className.activePanel);
this.updateLKLayerPanel_init(false);
var Y=this.updateLKKeywordPanel_keyword();
$(Q.COND_LY_BUTTON_BACK).onclick=this.backToLKPanel_layer.bind(this);
Element.Methods.show(Q.COND_LY_BUTTON_PANEL);
var Z=$(Q.COND_LY_BUTTON_OK);
Z.onclick=this.saveKeywordCondition.bind(this);
Z.disabled=!Y;
$(Q.COND_BUTTON_SEARCH).disabled=true
};
this.backToLKPanel_layer=function(){this.updateLKLayerPanel_layer(true);
Element.Methods.hide(Q.COND_LK_KEYWORD_PANEL);
$(Q.COND_LY_BUTTON_BACK).onclick=this.updateSearchConditionUI.bind(this);
Element.Methods.show(Q.COND_LY_BUTTON_PANEL);
$(Q.COND_LY_BUTTON_OK).onclick=this.saveLayerCondition.bind(this);
$(Q.COND_LY_BUTTON_OK).disabled=false
};
this.updateLKLayerPanel_init=function(Z){if(Z){Element.Methods.addClassName(Q.COND_LK_LAYER_PANEL,G.condition.className.selectLK);
I.setLayerState(D.layers)
}else{Element.Methods.removeClassName(Q.COND_LK_LAYER_PANEL,G.condition.className.selectLK)
}var X=$(Q.COND_LK_LAYER_NOTATION);
X.innerHTML="レイヤ：";
I.disableCheckbox(true);
I.hideUncheckedNode();
var Y=$(Q.COND_LK_LAYER_KEYWORD);
if(Y){Y.parentNode.removeChild(Y)
}};
this.updateLKLayerPanel_layer=function(X){Element.Methods.removeClassName(Q.COND_LK_LAYER_PANEL,G.condition.className.selectLK);
if(!X){I.setLayerState(D.layers)
}var Y=$(Q.COND_LK_LAYER_NOTATION);
Y.innerHTML="検索するレイヤを指定できます。※レイヤを一つだけ選択した場合、さらにキーワード絞込みができます。";
I.disableCheckbox(false);
I.showAllNode();
I.onChangeCheckbox=this.updateLKLayerList.bind(this);
this.updateLKLayerList()
};
this.updateLKLayerList=function(){var Z=$(Q.COND_LK_LAYER_KEYWORD);
if(Z){Z.parentNode.removeChild(Z)
}var X=I.getAllCheckedLeaf();
if(X.length==1){Z=document.createElement("a");
Z.id=Q.COND_LK_LAYER_KEYWORD;
Z.className=G.condition.className.titleLink;
Z.href="javascript:void(0)";
Z.innerHTML="キーワード";
Z.onclick=this.updateLKPanel_keyword.bind(this);
var Y=X[0];
Y.contents.appendChild(Z)
}};
this.updateLKKeywordPanel_init=function(){Element.Methods.addClassName(Q.COND_LK_KEYWORD_PANEL,G.condition.className.selectLK);
var a="キーワード：";
if(D.hasKeywordCondition()){a+=D.keyword+"(";
var Y=this.getConditionAttributesByLayer(D.layers[0]);
for(var b=0;
b<D.attributes.length;
b++){if(b>0){a+=","
}var X=Y[D.attributes[b]];
a+=X.caption
}a+=")"
}else{a+="指定なし"
}var Z=$(Q.COND_LK_KEYWORD_PANEL);
var c=document.createTextNode(a);
Z.innerHTML="";
Z.appendChild(c);
Element.Methods.show(Z)
};
this.updateLKKeywordPanel_keyword=function(){Element.Methods.removeClassName(Q.COND_LK_KEYWORD_PANEL,G.condition.className.selectLK);
var Z=this.getCheckedLayers();
if(Z.length!=1){logger.error("選択しているレイヤが１つではありません。");
return false
}var c=Z[0];
logger.debug("レイヤ["+c+"]のキーワードを指定します。");
var X=$(Q.COND_LK_KEYWORD_PANEL);
X.innerHTML="選択する項目を対象にキーワードを指定して、絞込みができます。";
Element.Methods.show(X);
var b=this.getConditionAttributesByLayer(c);
if(b.length==0){var Y=document.createElement("div");
Y.style.color="#FF0000";
Y.innerHTML="選択していたレイヤは属性情報を持っていないため、キーワード絞込みはできません。";
X.appendChild(Y);
return false
}var j=false;
if(D.layers[0]==Z[0]){j=true
}var h=document.createElement("ul");
h.id=Q.COND_LK_KEYWORD_LIST;
Element.Methods.addClassName(h,G.condition.className.list);
Element.Methods.addClassName(h,G.condition.className.scrollList);
X.appendChild(h);
for(var d=0;
d<b.length;
d++){var g=b[d];
var f=document.createElement("input");
f.id=C+"_attrName_"+g.name;
f.type="checkbox";
f.value=g.name;
var k=document.createElement("label");
k.setAttribute("for",f.id);
var a=document.createTextNode(g.caption);
k.appendChild(a);
var m=document.createElement("li");
m.style.listStyleType="none";
m.appendChild(f);
m.appendChild(k);
h.appendChild(m);
f.checked=j&&D.isTargetAttribute(g.name)
}var n=document.createElement("input");
n.id=Q.COND_LK_KEYWORD_TEXT;
n.type="text";
n.defaultValue="キーワード（１つのみ）を入力してください";
n.style.width="100%";
n.onfocus=this.onfocus;
n.onblur=this.onblur;
X.appendChild(n);
if(D.keyword){n.value=D.keyword
}else{n.value=n.defaultValue;
n.style.color="gray"
}return true
};
this.onfocus=function(Y){var X=(Y||window.event);
var Z=Event.element(X);
if(Z.value==Z.defaultValue){Z.value="";
Z.style.color=""
}};
this.onblur=function(Y){var X=(Y||window.event);
var Z=Event.element(X);
if(Z.value==""){Z.value=Z.defaultValue;
Z.style.color="gray"
}};
this.updateAreaPanel_init=function(){Element.Methods.show(Q.COND_AREA_TITLE_LINK);
Element.Methods.removeClassName(Q.COND_AREA_PANEL_ID,G.condition.className.activePanel);
var X=$(Q.COND_AREA_BODY);
X.innerHTML="";
var Y=document.createElement("img");
Y.src=D.area.legend;
Y.alt=D.area.caption;
Y.title=D.area.caption;
L.imageLoader.attach(Y);
X.appendChild(Y);
L.imageLoader.reload()
};
this.updateAreaPanel_area=function(){Element.Methods.hide(Q.CON_CONDITION_TITLE_LINK);
Element.Methods.hide(Q.COND_LK_TITLE_LINK);
Element.Methods.hide(Q.COND_AREA_TITLE_LINK);
Element.Methods.addClassName(Q.COND_AREA_PANEL_ID,G.condition.className.activePanel);
this.updateAreaArea_area();
$(Q.COND_BUTTON_SEARCH).disabled=true
};
this.updateAreaArea_area=function(){var f=$(Q.COND_AREA_BODY);
f.innerHTML="";
var h=document.createElement("div");
h.innerHTML="検索範囲を指定できます。<br />以下より図形を選択した場合、その後、地図上に範囲を作図できます。※全域を選択した場合は、レイヤの指定は１つだけにしてください。";
f.appendChild(h);
var Z=document.createElement("div");
Z.style.textAlign="center";
f.appendChild(Z);
var b=SearchCondition.areaTypes;
for(var c=0;
c<b.length;
c++){if(c==2){Z.appendChild(document.createElement("br"))
}var X=b[c];
var a=document.createElement("img");
a.src=X.legend;
a.alt=X.caption;
a.title=X.caption;
a.style.margin="5px";
a.areaType=X;
a.onclick=this.onclickAreaImage.bindAsEventListener(this);
L.imageLoader.attach(a);
Z.appendChild(a)
}this.highlightAreaType(D.area,Z);
var d=document.createElement("input");
d.type="button";
d.value="戻る";
d.onclick=this.onclickAreaCancel.bind(this);
var Y=document.createElement("input");
Y.type="button";
Y.value="決定";
Y.onclick=this.onclickAreaType.bind(this,Z);
var g=document.createElement("div");
g.style.textAlign="center";
g.appendChild(d);
g.appendChild(Y);
f.appendChild(g);
L.imageLoader.reload()
};
this.onclickAreaImage=function(Y){var X=(Y||window.event);
var Z=Event.element(X);
this.highlightAreaType(Z.areaType,Z.parentNode)
};
this.highlightAreaType=function(Z,Y){var X=Y.getElementsByTagName("img");
for(var a=0;
a<X.length;
a++){if(X[a].areaType==Z){Element.Methods.addClassName(X[a],L.configuration.style.highlight)
}else{Element.Methods.removeClassName(X[a],L.configuration.style.highlight)
}}};
this.getCheckedLayers=function(){var a=new Array();
if(I){var Z=I.getAllCheckedLeaf();
for(var X=0;
X<Z.length;
X++){var Y=Z[X];
if(Y.checkbox.isChecked()){a.push(Y.getLayerId())
}}}return a
};
this.getConditionAttributesByLayer=function(Y){var c=L.layerManager.getLayerById(Y);
var X=new Array();
for(var b=0;
b<c.features.length;
b++){var Z=c.features[b].attributes;
if(!Z){continue
}for(var a=0;
a<Z.length;
a++){if(X[Z[a].name]){continue
}X[X.length]=Z[a];
X[Z[a].name]=Z[a]
}}return X
};
this.getCheckedAttributes=function(){var b=new Array();
var Z=$(Q.COND_LK_KEYWORD_LIST);
if(Z){var X=Z.getElementsByTagName("input");
for(var Y=0;
Y<X.length;
Y++){var a=X[Y];
if(a.checked){b[b.length]=a.value
}}}return b
};
this.saveLayerCondition=function(){var X=this.getCheckedLayers();
if(X.length==0){window.alert("レイヤが選択されていません。");
return 
}D.setLayers(X,null,null);
D.save();
this.updateSearchConditionUI()
};
this.saveKeywordCondition=function(){var a=$(Q.COND_LK_KEYWORD_TEXT);
var Y=this.getCheckedAttributes();
var X=a.value;
X=X.strip();
if(Y.length==0){window.alert("対象項目が選択されていません。");
return 
}if(X==a.defaultValue||X==""){window.alert("キーワードが入力されていません。");
return 
}var Z=this.getCheckedLayers();
D.setLayers(Z,Y,X);
D.save();
this.updateSearchConditionUI()
};
this.onclickAreaCancel=function(){this.drawAreaCancel();
this.updateSearchConditionUI()
};
this.onclickAreaType=function(Z){var X=Z.getElementsByTagName("img");
for(var Y=0;
Y<X.length;
Y++){if(Element.Methods.hasClassName(X[Y],L.configuration.style.highlight)){setTimeout(this.selectAreaType.bind(this,X[Y].areaType),0);
break
}}};
this.drawAreaCancel=function(){if(L.viewManager.getDrawPurpose()==DRAW_PURPOSE.SEARCH_AREA){L.viewManager.drawCancel()
}};
this.selectAreaType=function(X){var Z;
var Y;
switch(X){case SearchCondition.AreaType.VIEW:break;
case SearchCondition.AreaType.EXTENT:break;
case SearchCondition.AreaType.RECT:Z=Input.MODE.RECT;
Y=L.configuration.drawPanel.hint.SEARCH_RECT;
break;
case SearchCondition.AreaType.CIRCLE:Z=Input.MODE.CIRCLE;
Y=L.configuration.drawPanel.hint.SEARCH_CIRCLE;
break;
case SearchCondition.AreaType.POLYGON:Z=Input.MODE.POLYGON;
Y=L.configuration.drawPanel.hint.SEARCH_POLYGON;
break;
default:X=SearchCondition.AreaType.VIEW;
break
}if(Z){var a=this.callback_drawArea.bind(this,X);
L.viewManager.drawInit(Z,a,Y,DRAW_PURPOSE.SEARCH_AREA);
new Effect.ScrollTo("body",G.condition.scrollTo)
}else{this.drawAreaCancel();
this.clearSearchTemporaryItem();
D.setArea(X);
D.save();
this.updateSearchConditionUI()
}};
this.callback_drawArea=function(Y,Z){if(D&&D.hasTemporaryItem()){L.service.removeTemporaryItem(TemporaryItemCategory.SEARCH,null)
}D.setArea(Y);
D.save();
var a=Z.getCoords().split(",");
var X=L.viewManager.currentView;
var b=Spatial.points2curve(a,X.getBoundingBox(),X.width,X.height);
this.drawSearchTemporaryItem(b);
L.viewManager.drawCancel();
this.updateSearchConditionUI()
};
this.callback_search=function(X){D.setResult(X.result);
this.updateSearchResultPage(0)
};
this.onclickSearch=function(){if(D.layers.length==0){window.alert("レイヤ指定でレイヤが１つも選択されない場合は、検索できません。");
return 
}if(D.area==SearchCondition.AreaType.EXTENT&&D.layers.length>1){window.alert("レイヤ指定でレイヤを複数選択し、範囲指定で全域を指定した場合は、検索できません。");
return 
}D.doSearch=true;
if(D.area==SearchCondition.AreaType.VIEW){D.setArea(SearchCondition.AreaType.RECT);
var X=L.viewManager.currentView.getBoundingBox();
var Y=Spatial.box2curve(X);
this.drawSearchTemporaryItem(Y)
}D.save();
this.doSearchCommon()
};
this.doSearchCommon=function(){var c=this.callback_search.bind(this);
var b=D.layers;
var Z=D.attributes;
var Y=D.hasKeywordCondition()?D.keyword:null;
var X=D.surface;
if(D.area==SearchCondition.AreaType.EXTENT){var a=L.layerManager.getExtent();
X=new Spatial.Surface();
X.exterior=Spatial.box2curve(a)
}L.service.getThematicVectorFeatureWithCondition(b,Z,Y,X,c);
this.updateSearchResultUI()
};
this.changeCondition=function(){D.doSearch=false;
D.save();
this.updateSearchConditionUI()
};
this.resetCondition=function(X){this.clearSearchTemporaryItem();
this.initSearchCondition(X);
this.updateSearchConditionUI()
};
this.drawSearchTemporaryItem=function(b){var a=O.searchItemStyle;
if(!a){a="A_EMPTY_NOTHING_NOTHING_1_SOLID_5_red"
}var X=new Spatial.Surface();
X.exterior=b;
var Y=new Array();
Y[0]=Spatial.createSurfaceTemporaryItem(X,a);
var Z=L.service.addTemporaryItem(TemporaryItemCategory.SEARCH,Y).result;
L.eventHandler.fireEvent(LiteEvent.TEMPORARY_ITEM_STATE_CHANGE,Z);
D.setSurface(X);
L.viewManager.drawThematicRaster()
};
this.clearSearchTemporaryItem=function(){if(D&&D.hasTemporaryItem()){var X=L.service.removeTemporaryItem(TemporaryItemCategory.SEARCH,null).result;
L.eventHandler.fireEvent(LiteEvent.TEMPORARY_ITEM_STATE_CHANGE,X);
L.viewManager.drawThematicRaster()
}}
}function SearchCondition(){this.initialize()
}SearchCondition.AreaType=function(C,A,B){this.initialize(C,A,B)
};
SearchCondition.AreaType.prototype={value:null,caption:null,legend:null,initialize:function(C,A,B){this.value=C;
this.caption=A;
this.legend=B
},toString:function(){return this.caption
}};
SearchCondition.AreaType.VIEW=new SearchCondition.AreaType("VIEW","表示範囲","image/K_feature_area_view.gif");
SearchCondition.AreaType.EXTENT=new SearchCondition.AreaType("EXTENT","全域","image/K_feature_area_extent.gif");
SearchCondition.AreaType.RECT=new SearchCondition.AreaType("RECT","長方形","image/K_feature_area_rect.gif");
SearchCondition.AreaType.CIRCLE=new SearchCondition.AreaType("CIRCLE","円","image/K_feature_area_circle.gif");
SearchCondition.AreaType.POLYGON=new SearchCondition.AreaType("POLYGON","多角形","image/K_feature_area_polygon.gif");
SearchCondition.areaTypes=[SearchCondition.AreaType.VIEW,SearchCondition.AreaType.EXTENT,SearchCondition.AreaType.RECT,SearchCondition.AreaType.CIRCLE,SearchCondition.AreaType.POLYGON];
SearchCondition.prototype={enable:false,layers:new Array(),attributes:new Array(),keyword:null,area:SearchCondition.AreaType.VIEW,surface:null,doSearch:false,result:new Array(),initialize:function(){this.enable=false;
this.setLayers(null,null,null);
this.area=SearchCondition.AreaType.VIEW;
this.surface=null;
this.doSearch=false;
this.setResult(null)
},setLayers:function(D,B,A){this.layers=new Array();
this.attributes=new Array();
if(D instanceof Array){for(var C=0;
C<D.length;
C++){this.layers[C]=D[C]
}if(this.layers.length==1&&B instanceof Array&&B.length>0&&A!=null&&A.length>0){for(var C=0;
C<B.length;
C++){this.attributes[C]=B[C]
}this.keyword=A
}}},setArea:function(A){this.area=A;
this.surface=null
},setSurface:function(A){this.surface=A
},setResult:function(A){if(A){this.result=A
}else{this.result=new Array()
}},isTargetLayer:function(A){for(var B=0;
B<this.layers.length;
B++){if(this.layers[B]==A){return true
}}return false
},isTargetAttribute:function(B){for(var A=0;
A<this.attributes.length;
A++){if(this.attributes[A]==B){return true
}}return false
},hasKeywordCondition:function(){return(this.attributes.length>0&&this.keyword&&this.keyword!="")
},hasTemporaryItem:function(){switch(this.area){case SearchCondition.AreaType.RECT:case SearchCondition.AreaType.CIRCLE:case SearchCondition.AreaType.POLYGON:return true;
case SearchCondition.AreaType.VIEW:case SearchCondition.AreaType.EXTENT:default:}return false
},save:function(){var A={enable:this.enable,layers:this.layers,attributes:this.attributes,keyword:this.keyword,areaType:this.area.value,doSearch:this.doSearch};
var B=Object.toJSON(A);
setCookie(AppConfig.COOKIE_SEARCH_CONDITION,B)
},load:function(A){A.service.getTemporaryItem(TemporaryItemCategory.SEARCH,null,this.onLoad.bind(this,A))
},onLoad:function(C,B){var A=null;
if(B.statusId=="success"&&B.result.length>0){A=B.result[0].surface
}if(this.loadImpl()){if(!A){this.initialize();
this.save()
}else{this.setSurface(A)
}}else{if(A){var D=C.service.removeTemporaryItem(TemporaryItemCategory.SEARCH,null).result
}}},loadImpl:function(){var E=getCookie(AppConfig.COOKIE_SEARCH_CONDITION);
if(!E||E.length==0){this.initialize();
return false
}var D=E.evalJSON();
if(!D.enable){this.initialize();
return false
}this.enable=D.enable;
this.doSearch=D.doSearch;
var F=D.layers;
var C=D.attributes;
var B=D.keyword;
this.setLayers(F,C,B);
if(D.keywrod){this.keyword=D.keyword
}var A=false;
switch(D.areaType){case SearchCondition.AreaType.RECT.value:this.area=SearchCondition.AreaType.RECT;
A=true;
break;
case SearchCondition.AreaType.CIRCLE.value:this.area=SearchCondition.AreaType.CIRCLE;
A=true;
break;
case SearchCondition.AreaType.POLYGON.value:this.area=SearchCondition.AreaType.POLYGON;
A=true;
break;
case SearchCondition.AreaType.VIEW.value:this.area=SearchCondition.AreaType.VIEW;
break;
case SearchCondition.AreaType.EXTENT.value:this.area=SearchCondition.AreaType.EXTENT;
break;
default:this.area=SearchCondition.AreaType.VIEW;
break
}this.setResult(null);
return A
}};
function ViewManager(I){this.currentView=null;
var N=I;
var Y=N.configuration.prefix+"mapView";
var M=N.configuration.prefix+"mapEventImg";
var D=N.configuration.prefix+"backView";
var X=N.configuration.prefix+"mainView";
var Q=N.configuration.prefix+"rasterView";
var K=Q+"_img";
var J=N.configuration.loadingId;
var A=N.configuration.prefix+"drawPanel";
var V=A+"_title";
var R=A+"_hint";
var L=A+"_back";
var Z=A+"_cancel";
var W=A+"_complete";
var P=null;
var E=null;
var G;
var S;
var U=null;
var H=null;
var C;
var O=null;
var B=null;
var T=DRAW_PURPOSE.NONE;
this.onclickInScrollCallback;
var F;
this.init=function(b){var c=new Array();
for(var a=0;
a<b.scaleInfo.length;
a++){if(!b.scaleInfo[a].guideOnly){c[c.length]=b.scaleInfo[a]
}}P=c;
G=(b.thematicRasterFormat.match(/png/i)!=null);
S=(b.thematicMapOff)?true:false;
this.createMap();
B=new Input.Control();
B.initRubberBand();
B.oncomplete=this.drawEnd.bind(this);
B.onclear=this.drawEnd.bind(this);
O=new MouseScroll();
this.initScroll()
};
this.initViewByBoundingBox=function(a,k,h,c){var d=$(Y);
var f=Element.Methods.getDimensions(d);
var b=f.width;
var m=f.height;
try{document.getElementById("map").style.width=b
}catch(j){}this.currentView=coordUtil.fitRectInScale(a,k,h,c,b,m,P);
for(var g=0;
g<P.length;
g++){if(P[g].scale==this.currentView.scale){E=P[g];
break
}}this.fireScaleChangeEvent();
this.fireViewChangeEvent()
};
this.initViewByCenterAndScale=function(b,j,h){var c=$(Y);
var g=Element.Methods.getDimensions(c);
var d=g.width;
var a=g.height;
try{document.getElementById("map").style.width=d
}catch(f){}E=this.adjustScale(h);
h=E.scale;
this.currentView=new View(new Spatial.Point(b,j),h,d,a);
this.fireScaleChangeEvent();
this.fireViewChangeEvent()
};
this.initBgLayer=function(a){var c=document.createElement("div");
c.id=this.getBgLayerDivId(a.layerId);
c.style.position="absolute";
c.style.top="0px";
c.style.left="0px";
c.style.width="100%";
c.style.height="100%";
c.style.margin="0px";
c.style.padding="0px";
c.style.borderWidth="0px";
c.style.zIndex=""+(a.drawNo*10);
if(!a.visible){Element.Methods.hide(c)
}var b=$(D);
b.appendChild(c)
};
this.createMap=function(){var f=$(N.configuration.mapFrameId);
Element.Methods.makePositioned(f);
f.style.overflow="hidden";
f.style.zIndex="0";
var h=document.createElement("div");
h.style.position="absolute";
h.style.top="0px";
h.style.left="0px";
h.style.width="100%";
h.style.height="100%";
h.style.margin="0px";
h.style.padding="0px";
h.style.borderWidth="0px";
var c=document.createElement("div");
c.id=Y;
c.style.position="absolute";
c.style.top="0px";
c.style.left="0px";
c.style.width="100%";
c.style.height="100%";
c.style.margin="0px";
c.style.padding="0px";
c.style.borderWidth="0px";
var g=document.createElement("div");
g.id=D;
g.style.position="absolute";
g.style.top="0px";
g.style.left="0px";
g.style.width="100%";
g.style.height="100%";
g.style.margin="0px";
g.style.padding="0px";
g.style.borderWidth="0px";
g.style.zIndex="0";
c.appendChild(g);
var d=document.createElement("div");
d.id=X;
d.style.position="absolute";
d.style.top="0px";
d.style.left="0px";
d.style.width="100%";
d.style.height="100%";
d.style.margin="0px";
d.style.padding="0px";
d.style.borderWidth="0px";
c.appendChild(d);
var a=document.createElement("img");
a.id=M;
a.alt="";
a.src=N.configuration.transparentImageUrl;
a.galleryImg="no";
a.style.position="absolute";
a.style.top="0px";
a.style.left="0px";
a.style.width="100%";
a.style.height="100%";
a.style.margin="0px";
a.style.padding="0px";
a.style.borderWidth="0px";
a.style.zIndex="10";
d.appendChild(a);
var b=document.createElement("div");
b.id=Q;
b.style.position="absolute";
b.style.top="0px";
b.style.left="0px";
b.style.width="100%";
b.style.height="100%";
b.style.margin="0px";
b.style.padding="0px";
b.style.borderWidth="0px";
b.style.zIndex="1";
d.appendChild(b);
h.appendChild(c);
f.appendChild(h)
};
this.createDrawPanel=function(k,h){logger.info("作図パネル(x="+k+",y="+h+")");
var b=N.configuration.drawPanel;
var m=document.createElement("div");
m.id=A;
m.className=b.className;
m.style.zIndex="400";
m.style.position="absolute";
m.style.left=k+"px";
m.style.top=h+"px";
var g=document.createElement("div");
g.className=b.contentClassName;
var o=document.createElement("div");
o.id=R;
o.className=b.hintClassName;
var d=document.createElement("a");
d.id=L;
d.innerHTML="一つ戻る";
d.href="javascript:void(0)";
d.onclick=this.drawBack.bind(this);
d.style.display="block";
var n=document.createElement("a");
n.id=Z;
n.innerHTML="キャンセル";
n.href="javascript:void(0)";
n.onclick=this.drawCancel.bind(this);
n.style.display="block";
var a=document.createElement("a");
a.id=W;
a.innerHTML="確定";
a.href="javascript:void(0)";
a.onclick=this.drawComplete.bind(this);
a.style.display="block";
g.appendChild(o);
g.appendChild(d);
g.appendChild(n);
g.appendChild(a);
var j=document.createElement("div");
j.className=b.titleClassName;
var c=document.createElement("span");
c.id=V;
var p=document.createElement("img");
p.galleryImg="no";
p.onclick=this.showDrawPanelMessage.bind(this,p);
j.appendChild(c);
j.appendChild(p);
m.appendChild(j);
m.appendChild(g);
var f=$(N.configuration.mapFrameId);
f.appendChild(m);
this.setVisibleDrawPanel(false);
this.showDrawPanelMessage(p);
new Draggable(A,{handle:j,change:this.onChangeDrawPanelPosition.bind(this)})
};
this.onChangeDrawPanelPosition=function(a){var h=$(A);
var g=Position.positionedOffset(h);
var f=g[0];
var d=g[1];
var c=Element.Methods.getDimensions(h);
var b=Element.Methods.getDimensions(h.parentNode);
if(f<0){h.style.left="0px"
}else{if(f+c.width>b.width){h.style.left=(b.width-c.width)+"px"
}}if(d<0){h.style.top="0px"
}else{if(d+c.height>b.height){h.style.top=(b.height-c.height)+"px"
}}};
this.setVisibleBgLayer=function(a,b){var c=$(this.getBgLayerDivId(a));
if(c){if(b){Element.Methods.show(c)
}else{Element.Methods.hide(c)
}}};
this.setVisibleFalseBgLayerAll=function(){var c=$(D);
var a=c.getElementsByTagName("div");
for(var b=0;
b<a.length;
b++){Element.Methods.hide(a[b])
}};
this.getBgLayerDivId=function(a){return N.configuration.prefix+a
};
this.getMainView=function(){return $(X)
};
this.isBlocking=function(){return C
};
this.beginThematicReloadTimer=function(){H=setTimeout(this.reloadThematicMap.bind(this),N.configuration.thematicMapReloadDelay)
};
this.cancelThematicReloadTimer=function(){if(H!=null){clearTimeout(H)
}};
this.reloadBackgroundMap=function(){this.drawBackground();
this.beginThematicReloadTimer()
};
this.reloadThematicMap=function(){H=null;
B.reloadView();
this.reloadThematicRaster();
C=false
};
this.scaleChangeCommon=function(b){var c=this.currentView.scale;
if(c==b){return false
}var a=b/c;
this.scaleChangeCommonImpl(a);
this.fireScaleChangeEvent();
return true
};
this.scaleChangeCommonImpl=function(o){C=true;
this.cancelThematicReloadTimer();
if(U!=null){clearTimeout(U)
}if(S){Element.Methods.hide($(X))
}var j=$(Y);
var n=Position.positionedOffset(j);
var m=n[0];
var AA=n[1];
var AK=Element.Methods.getDimensions(j);
var AC=AK.width;
var AB=AK.height;
var c=$(D);
var AN=Position.positionedOffset(c);
var b=AN[0];
var AM=AN[1];
var AH=((AC/2));
var AG=((AB/2));
var AJ=(m+b)*o;
var AI=(AA+AM)*o;
c.className="backZoom";
var d=E.mapImageInfos;
for(var AE=0;
AE<d.length;
AE++){var v=d[AE];
var y=$(this.getBgLayerDivId(v.layerId));
if(y&&Element.Methods.visible(y)&&y.info){var q=y.info;
q.bgScaleChange(y,o,AH,AG,AJ,AI)
}}var AL=$(X);
var z=Position.positionedOffset(AL);
var u=z[0];
var a=z[1];
var p=Element.Methods.getDimensions(AL);
var AO=p.width;
var k=p.height;
var r=AO*o;
var AF=k*o;
var g=((AC/2)-m);
var f=((AB/2)-AA);
var AD=g-(g-u)*o;
var x=f-(f-a)*o;
AL.style.width=Math.round(r)+"px";
AL.style.height=Math.round(AF)+"px";
AL.style.top=Math.round(x)+"px";
AL.style.left=Math.round(AD)+"px";
B.zoomBy(o);
U=setTimeout(this.removeScaleChangeBack.bind(this),N.configuration.backImageReloadDelay)
};
this.removeScaleChangeBack=function(){var d=$(D);
d.className="backNormal";
var c=E.mapImageInfos;
for(var a=0;
a<c.length;
a++){var g=c[a];
var f=$(this.getBgLayerDivId(g.layerId));
if(f&&Element.Methods.visible(f)&&f.info){var b=f.info;
b.removeScaleChangeBack(f)
}}};
this.zoomIn=function(){var b=E.scale;
for(var a=P.length-1;
a>=0;
a--){if(P[a].scale<b){E=P[a];
this.updateView();
break
}}this.scaleChangeCommon(b)
};
this.zoomOut=function(){var b=E.scale;
for(var a=0;
a<P.length;
a++){if(P[a].scale>b){E=P[a];
this.updateView();
break
}}this.scaleChangeCommon(b)
};
this.scaleChange=function(c,a){var b=E.scale;
E=this.adjustScale(c,a);
this.updateView();
return this.scaleChangeCommon(b)
};
this.adjustScale=function(c,b){if(P[0].scale>=c){return P[0]
}if(P[P.length-1].scale<=c){return P[P.length-1]
}if(b){for(var a=0;
a<P.length;
a++){if(P[a].scale>=c){return P[a]
}}}else{for(var a=P.length-1;
a>=0;
a--){if(P[a].scale<=c){return E=P[a]
}}}return P[0]
};
this.updateView=function(){var a=this.currentView.getCenterX();
var b=this.currentView.getCenterY();
this.updateViewImpl(a,b)
};
this.updateViewImpl=function(b,k){var d=$(Y);
var g=Element.Methods.getDimensions(d);
var c=g.width;
var f=g.height;
var a=new Spatial.Point(b,k);
var j=E.scale;
this.currentView=new View(a,j,c,f);
this.fireViewChangeEvent()
};
this.moveCenter=function(j,h){var g=this.currentView.width;
var a=this.currentView.height;
var k=this.currentView.getBoundingBox();
var b=k.xmax-k.xmin;
var f=k.ymax-k.ymin;
var d=parseInt((g/b)*(this.currentView.center.x-j));
var c=parseInt((a/f)*(h-this.currentView.center.y));
this.updateViewImpl(j,h);
B.scrollBy(d,c);
B.reloadView()
};
this.calcXYPoint=function(d,c){var b=this.currentView.getBoundingBox();
var a=coordUtil.calcXYPoint(this.currentView.width,this.currentView.height,b.xmin,b.ymin,b.xmax,b.ymax,d,c);
return a
};
this.calcPixelPoint=function(b,d){var c=this.currentView.getBoundingBox();
var a=coordUtil.calcPixelPoint(this.currentView.width,this.currentView.height,c.xmin,c.ymin,c.xmax,c.ymax,b,d);
return a
};
this.fireViewChangeEvent=function(){N.eventHandler.fireEvent(LiteEvent.VIEW_CHANGE,this.currentView)
};
this.fireScaleChangeEvent=function(){N.eventHandler.fireEvent(LiteEvent.SCALE_CHANGE)
};
this.resizeMove=function(){var a=this.currentView.width;
var k=this.currentView.height;
var c=$(Y);
var f=Element.Methods.getDimensions(c);
var g=parseInt((a-f.width)/2);
var d=parseInt((k-f.height)/2);
var j=Position.positionedOffset(c);
var b=j[0]-g;
var h=j[1]-d;
c.style.top=h+"px";
c.style.left=b+"px";
B.scrollBy(-1*g,-1*d)
};
this.resize=function(){var b=this.currentView.width;
var a=this.currentView.height;
var d=Element.Methods.getDimensions(Y);
if(b!=d.width||a!=d.height){try{document.getElementById("map").style.width=d.width
}catch(c){}this.resizeMove();
this.updateView();
this.scaleChangeCommonImpl(1);
this.refreshCommon();
this.drawBackground();
this.drawThematicRaster();
B.reloadView()
}C=false
};
this.scrollNow=function(a,j){var b=$(Y);
b.style.left=a+"px";
b.style.top=j+"px";
var h=$(M);
h.style.left=-1*a+"px";
h.style.top=-1*j+"px";
var d=E.mapImageInfos;
for(var c=0;
c<d.length;
c++){var g=d[c];
var f=$(this.getBgLayerDivId(g.layerId));
if(f&&f.info){f.info.move()
}}};
this.scrollBy=function(j,h,b){if(b){C=true
}else{if(!C&&j==0&&h==0){return 
}}var d=$(Y);
var o=Position.positionedOffset(d);
var c=o[0];
var p=o[1];
var n=$(M);
n.style.left=(-1*c)+"px";
n.style.top=(-1*p)+"px";
var m=this.currentView.width;
var g=this.currentView.height;
var r=this.currentView.getBoundingBox();
var f=r.xmax-r.xmin;
var k=r.ymax-r.ymin;
var t=-f*j/m;
var q=k*h/g;
var a=this.currentView.center.x+t;
var u=this.currentView.center.y+q;
this.updateViewImpl(a,u);
this.reloadBackgroundMap();
B.scrollBy(j,h)
};
this.moveByOffset=function(a,g){this.cancelThematicReloadTimer();
var b=$(Y);
var f=Position.positionedOffset(b);
var d=f[0];
var c=f[1];
this.scrollNow(d+a,c+g);
this.scrollBy(a,g)
};
this.refresh=function(a){this.clearThematicRaster();
this.refreshCommon();
this.fireViewChangeEvent();
this.drawBackground();
if(a){setTimeout(this.drawThematicRaster.bind(this),100)
}else{this.drawThematicRaster()
}};
this.refreshCommon=function(){var b=$(Y);
var g=Position.positionedOffset(b);
var f=g[0];
var d=g[1];
b.style.left="0px";
b.style.top="0px";
this.clearBackground();
var c=$(X);
c.style.left="0px";
c.style.top="0px";
c.style.width="100%";
c.style.height="100%";
var a=$(M);
a.style.left="0px";
a.style.top="0px"
};
this.refreshForBackLayer=function(){this.refreshCommon();
this.drawBackground()
};
this.reloadThematicRaster=function(){var g=$(Y);
var k=Position.positionedOffset(g);
var f=k[0];
var m=k[1];
g.style.left="0px";
g.style.top="0px";
var a=$(D);
var c=Position.positionedOffset(a);
var d=c[0];
var n=c[1];
a.style.left=f+d+"px";
a.style.top=m+n+"px";
var b=a.offsetParent;
var h=$(X);
h.style.left="0px";
h.style.top="0px";
h.style.width="100%";
h.style.height="100%";
var j=$(M);
j.style.left="0px";
j.style.top="0px";
this.drawThematicRaster()
};
this.drawThematicRaster=function(){this.clearThematicRaster();
var h=$(X);
Element.Methods.show(h);
var a=E.mapImageInfos;
var k=this.currentView.getBoundingBox();
var g=E.scale;
var c=this.currentView.width;
var m=this.currentView.height;
var b=N.service.getThematicRasterMap(k,g,c,m);
var d=$(Q);
var j=document.createElement("img");
j.alt="";
j.style.position="absolute";
j.style.left="0px";
j.style.top="0px";
j.style.width="100%";
j.style.height="100%";
j.galleryImg="no";
overlay(j,b,G,N.configuration.transparentImageUrl);
d.appendChild(j);
N.eventHandler.fireEvent(LiteEvent.THEMATIC_RASTER_DRAWED,this.currentView);
setTimeout(this.checkImageLoad.bind(this),100);
var f=$(J);
if(f){Element.Methods.hide(f)
}};
this.checkImageLoad=function(){var b=E.mapImageInfos;
for(var a=0;
a<b.length;
a++){var d=b[a];
var c=$(this.getBgLayerDivId(d.layerId));
if(c&&c.info&&Element.Methods.visible(c)){c.info.checkImageLoad()
}}};
this.clearThematicRaster=function(){var a=$(Q);
a.innerHTML="";
N.eventHandler.fireEvent(LiteEvent.THEMATIC_RASTER_CLEAR)
};
this.drawBackground=function(){var b=E.mapImageInfos;
var j=this.currentView.getBoundingBox();
var d=this.currentView.width;
var k=this.currentView.height;
var a=$(D);
if(E.scale!=a.scale){this.clearBackground()
}a.scale=E.scale;
for(var g=0;
g<b.length;
g++){var h=b[g];
var c=$(this.getBgLayerDivId(h.layerId));
if(c){if(!Element.Methods.visible(c)){this.clearBackgroundDiv(c);
continue
}this.drawBackgroundLayer(c,h,j,E.scale,d,k)
}}var f=a.getElementsByTagName("div");
for(var g=0;
g<f.length;
g++){if(f[g].initFlag){f[g].innerHTML="";
f[g].info=null
}}};
this.clearBackground=function(){var g=$(D);
var a=g.getElementsByTagName("div");
for(var c=0;
c<a.length;
c++){this.clearBackgroundDiv(a[c])
}var b=$(Y);
var h=Position.positionedOffset(b);
var f=h[0];
var d=h[1];
g.style.left=(-1*f)+"px";
g.style.top=(-1*d)+"px"
};
this.clearBackgroundDiv=function(a){a.initFlag=true
};
this.drawBackgroundLayer=function(b,k,m,h,d,n){var j=b.info;
if(!j){var g=$(Y);
var a=$(D);
var c=N.configuration.transparentImageUrl;
var o=N.configuration.loadingImageUrl;
j=new BackInfo(g,a,c,o);
b.info=j
}if(b.initFlag){var f=this.calcBackgroundLayerInfo(k,m,d,n);
j.init(b,k,h,f.xmin,f.ymin,f.xmax,f.ymax,f.offsetX,f.offsetY);
b.initFlag=false
}};
this.calcBackgroundLayerInfo=function(k,a,r,p){var m=k.extent;
var b=k.columnCount;
var d=k.rowCount;
var h=(m.xmax-m.xmin)/b;
var n=(m.ymax-m.ymin)/d;
var g=parseInt((a.xmin-m.xmin)/h);
var u=parseInt((m.ymax-a.ymax)/n);
var w=-parseInt((a.xmin-m.xmin-h*g)/h*k.mapWidth);
var v=-parseInt((m.ymax-a.ymax-n*u)/n*k.mapHeight);
var f=(r-w)/k.mapWidth;
f=parseInt(f+0.9);
var q=(p-v)/k.mapHeight;
q=parseInt(q+0.9);
var o=1;
var j=g-o;
var x=u-o;
var t=g+f+o-1;
var c=u+q+o-1;
v-=(k.mapHeight*o);
w-=(k.mapWidth*o);
return{xmin:j,ymin:x,xmax:t,ymax:c,offsetX:w,offsetY:v}
};
this.initScroll=function(){B.clearInput();
var a=Y;
var b=$(M);
b.scroll=new ScrollState(a,this.cancelThematicReloadTimer.bind(this),this.scrollNow.bind(this),this.scrollBy.bind(this),this.onclickInScroll.bind(this));
O.initScroll(b)
};
this.drawInit=function(g,j,d,c){B.startInput(g,M,j);
T=c?c:DRAW_PURPOSE.NONE;
var k=$(V);
var m=$(R);
var f=$(L);
var b=$(W);
if(d){k.innerHTML="■"+d.title;
m.innerHTML=d.message;
if(d.link){var h=document.createElement("a");
h.innerHTML="詳しく・・・";
h.href="javascript:void(0)";
h.onclick=this.showDrawPanelDetail.bind(this,d.link);
m.appendChild(h)
}}else{k.innerHTML="■作図";
m.innerHTML=""
}switch(g){case Input.MODE.POINT:Element.Methods.hide(f);
Element.Methods.hide(b);
break;
case Input.MODE.POLYLINE:Element.Methods.show(f);
Element.Methods.show(b);
break;
case Input.MODE.POLYGON:Element.Methods.show(f);
Element.Methods.show(b);
break;
case Input.MODE.CIRCLE:Element.Methods.show(f);
Element.Methods.hide(b);
break;
case Input.MODE.RECT:Element.Methods.show(f);
Element.Methods.hide(b);
break;
default:return 
}this.setVisibleDrawPanel(true)
};
this.drawComplete=function(){B.endInput()
};
this.drawCancel=function(){this.initScroll()
};
this.drawBack=function(){B.cancelPreviousInput()
};
this.onclickInScroll=function(a,b){if(C){return 
}if(this.onclickInScrollCallback){this.onclickInScrollCallback(a,b)
}};
this.drawEnd=function(){this.setVisibleDrawPanel(false);
T=DRAW_PURPOSE.NONE
};
this.getDrawPurpose=function(){return T
};
this.setVisibleDrawPanel=function(a){var b=$(A);
if(b){if(a){Element.Methods.show(b)
}else{Element.Methods.hide(b)
}}};
this.showDrawPanelMessage=function(a){var b=$(R);
if(Element.Methods.visible(b)){Element.Methods.hide(b);
a.src=N.configuration.drawPanel.hintCloseImgUrl;
a.alt="説明を表示します";
a.title=a.alt
}else{Element.Methods.show(b);
a.src=N.configuration.drawPanel.hintOpenImgUrl;
a.alt="説明を隠します";
a.title=a.alt
}};
this.showDrawPanelDetail=function(a){var c=false;
try{c=F&&!F.closed
}catch(b){}if(c){F.location.replace(a);
F.focus()
}else{F=window.open(a,"drawPanelDetail")
}}
}function View(B,G,E,A){var D=(B?B:null);
var H=(G?parseInt(G):null);
var F=(E?parseInt(E):0);
var C=(A?parseInt(A):0);
this.center=D;
this.scale=H;
this.width=F;
this.height=C;
this.getCenterX=function(){return this.center.x
};
this.getCenterY=function(){return this.center.y
};
this.getBoundingBox=function(){return coordUtil.calcMapRect(this.center.x,this.center.y,this.scale,this.width,this.height)
};
this.toString=function(){return"("+this.center.toString()+"), "+this.scale+", "+this.width+", "+this.height
}
}function BackInfo(B,A,P,K){var T=100;
var N=B;
var O=A;
var J=P;
var M=K;
B=null;
A=null;
P=null;
var S;
var H=0;
var R=0;
var D;
var I;
var G;
var F;
var L;
var C=new Array();
var Q=new Array();
var E=0;
this.init=function(k,g,u,q,o,b,Z,U,X){var W=new Object();
var a=new Array();
var r=L==u;
for(var d=0;
d<C.length;
d++){var V=C[d];
var h=I+d;
var t=(o<=h&&h<=Z);
for(var f=0;
f<V.length;
f++){var c=D+f;
if(r&&t&&q<=c&&c<=b){var n=h+"_"+c;
W[n]=V[f]
}else{a[a.length]=V[f]
}}}H=b-q+1;
R=Z-o+1;
D=q;
I=o;
G=U;
F=X;
S=g;
L=u;
var j=new Array();
var m=F;
for(var d=0;
d<R;
d++){j[d]=new Array();
var h=I+d;
var Y=G;
for(var f=0;
f<H;
f++){var c=D+f;
var n=h+"_"+c;
var v=W[n];
if(v==null){if(a.length>0){v=a.shift()
}else{v=document.createElement("img");
v.id=k.id+"_"+(E++);
v.onload=this.imageLoaded.bind(this,v);
v.alt="";
v.galleryImg="no";
v.style.position="absolute";
k.appendChild(v)
}v.style.width=S.mapWidth+"px";
v.style.height=S.mapHeight+"px";
this.setImageUrl(v,c,h,false)
}else{}j[d][f]=v;
v.style.top=m+"px";
v.style.left=Y+"px";
Y+=S.mapWidth
}m+=S.mapHeight
}C=j;
for(var p=0;
p<a.length;
p++){if(a[p]){k.removeChild(a[p])
}}};
this.imageLoaded=function(U){U.loaded=true
};
this.bgScaleChange=function(g,Z,X,W,q,p){if(Q.length==0){for(var a=0;
a<C.length;
a++){var V=C[a];
for(var b=0;
b<V.length;
b++){var r=V[b];
Q[Q.length]=r;
g.removeChild(r);
O.appendChild(r)
}}C=new Array()
}if(Q.length>0){var r=Q[0];
var m=Element.Methods.getDimensions(r);
var c=parseInt(m.width*Z);
var o=parseInt(m.height*Z);
var j=""+parseInt(g.style.zIndex)-1;
for(var n=0;
n<Q.length;
n++){var r=Q[n];
if(r){var Y=Position.positionedOffset(r);
var d=Y[0];
var U=Y[1];
var k=X-(X-d)*Z+q;
var f=W-(W-U)*Z+p;
r.style.width=c+"px";
r.style.height=o+"px";
r.style.top=Math.round(f)+"px";
r.style.left=Math.round(k)+"px";
r.style.zIndex=j;
r.className="scale"
}}}};
this.removeScaleChangeBack=function(V){for(var U=0;
U<Q.length;
U++){if(Q[U]){O.removeChild(Q[U])
}}Q=new Array()
};
this.setImageUrl=function(U,X,a,W){if(U.runtimeStyle){U.runtimeStyle.filter=""
}U.lowsrc=M;
U.url=M;
var V;
var Z;
if(X<0||X>=S.columnCount||a<0||a>=S.rowCount){V=J;
Z=false
}else{var V=S.urlPattern;
if(S.rowOffset){a+=S.rowOffset
}if(S.columnOffset){X+=S.columnOffset
}V=V.replace(/\$ROW\$/g,a);
V=V.replace(/\$COL\$/g,X);
Z=S.png
}U.reload={url:V,png:Z};
var Y=(W?T:0);
setTimeout(this.reload.bind(this,U),Y)
};
this.reload=function(U){var V=U.reload;
U.reload=null;
if(V!=null){U.loaded=false;
overlay(U,V.url,V.png,J)
}};
this.checkImageLoad=function(){for(var X=0;
X<C.length;
X++){var W=C[X];
for(var U=0;
U<W.length;
U++){var V=W[U];
if(!V.loaded){logger.warn("checkLoad : "+V.id+" : "+V.src);
V.src=V.src
}}}};
this.move=function(){var a=Position.positionedOffset(N);
var Y=a[0];
var d=a[1];
var V=Position.positionedOffset(O);
var W=V[0];
var c=V[1];
var X=Math.abs(Y+W+G);
var U=Math.abs(d+c+F);
var b=S.mapWidth;
var Z=S.mapHeight;
if(X<b){this.moveRight()
}else{if(X>b*2){this.moveLeft()
}}if(U<Z){this.moveBottom()
}else{if(U>Z*2){this.moveTop()
}}};
this.moveLeft=function(){var X=G+(H*S.mapWidth);
var W=D+H;
for(var a=0;
a<R;
a++){var Z=C[a];
var Y=Z[0];
for(var U=1;
U<H;
U++){Z[U-1]=Z[U]
}Z[H-1]=Y;
var V=I+a;
this.setImageUrl(Y,W,V,true);
Y.style.left=X+"px"
}G+=S.mapWidth;
D++
};
this.moveRight=function(){var Y=G-S.mapWidth;
var X=D-1;
for(var a=0;
a<R;
a++){var Z=C[a];
var W=Z[H-1];
for(var U=H-2;
U>=0;
U--){Z[U+1]=Z[U]
}Z[0]=W;
var V=I+a;
this.setImageUrl(W,X,V,true);
W.style.left=Y+"px"
}G-=S.mapWidth;
D--
};
this.moveTop=function(){var X=F+(R*S.mapHeight);
var V=I+R;
var Y=C[0];
for(var Z=1;
Z<R;
Z++){C[Z-1]=C[Z]
}C[R-1]=Y;
for(var U=0;
U<H;
U++){var W=D+U;
this.setImageUrl(Y[U],W,V,true);
Y[U].style.top=X+"px"
}F+=S.mapHeight;
I++
};
this.moveBottom=function(){var Y=F-S.mapHeight;
var V=I-1;
var X=C[R-1];
for(var Z=R-2;
Z>=0;
Z--){C[Z+1]=C[Z]
}C[0]=X;
for(var U=0;
U<H;
U++){var W=D+U;
this.setImageUrl(X[U],W,V,true);
X[U].style.top=Y+"px"
}F-=S.mapHeight;
I--
}
}var DRAW_PURPOSE=new Object();
Object.extend(DRAW_PURPOSE,{MEMO:"memo",MEASURE:"measure",EDIT_FEATURE:"feature",SEARCH_AREA:"search",NONE:"none"});
function GuideMap(B,A,C){this.initialize(B,A,C)
}GuideMap.prototype={map:null,view:null,targetWrapper:null,callback:null,N:3,scaleInfos:null,initialize:function(B,A,D){this.scaleInfos=A;
this.N=B.N;
var C=this.initParam(B,A);
this.map=new Map(B.id,C);
this.targetWrapper=new GuideMap.TargetWrapper();
this.map.layers[this.map.layers.length-1].targetMap={view:this.targetWrapper};
if(D){this.callback=D
}this.map.event.addListener(Map.Event.CLICK,this.notify.bind(this));
this.map.event.addListener(Map.Event.SCROLL,this.notify.bind(this))
},initParam:function(P,B){var D=new Array();
var E=new Array();
for(var K=B.length-1;
K>=0;
K--){var G=B[K].mapImageInfos;
var M;
for(var I=0;
I<G.length;
I++){if(G[I]){M=G[I];
break
}}var L=M.mapHeight*M.rowCount/(M.extent.ymax-M.extent.ymin);
var J=M.mapWidth*M.columnCount/(M.extent.xmax-M.extent.xmin);
var A=D.length;
var H={level:A,scale:B[K].scale,title:"scale 1/"+B[K].scale,pixelPerX:L,pixelPerY:J};
D[A]=H;
for(var I=0;
I<G.length;
I++){var M=G[I];
var F=M.layerId;
var R=E[F];
if(!R){R={id:F,title:F,type:"mesh",ext:{items:new Array()}};
E[F]=R;
E[E.length]=R
}var C=M.urlPattern;
C=C.replace("$ROW$","{row}");
C=C.replace("$COL$","{col}");
var N={level:A,uriTemplate:C,width:M.mapWidth,height:M.mapHeight,rows:M.rowCount,cols:M.columnCount,rowOffset:M.rowOffset,colOffset:M.columnOffset,minx:M.extent.ymin,miny:M.extent.xmin,maxx:M.extent.ymax,maxy:M.extent.xmax,loadingImage:P.mesh.loadingImage,noImage:P.mesh.noImage,blankImage:P.mesh.blankImage};
R.ext.items[R.ext.items.length]=N
}}var Q={id:"guide",title:"Guide",type:"guide",ext:{guide:P.guide}};
E[E.length]=Q;
var O={width:P.width,height:P.height,level:0,levels:D,layers:E};
return O
},update:function(A){this.targetWrapper.update(A);
var B=this.calcLevel(A.scale);
if(this.map.view.level!=B){this.map.zoom(B)
}this.map.move(A.getCenterY(),A.getCenterX())
},calcLevel:function(C){var B=this.scaleInfos.length-1;
for(var A=0;
A<this.scaleInfos.length;
A++){if(C==this.scaleInfos[A].scale){B=A+this.N;
if(B>=this.scaleInfos.length){B=this.scaleInfos.length-1
}break
}}var D=(this.scaleInfos.length-1)-B;
return D
},notify:function(A){if(this.callback){this.callback(A.y,A.x)
}},setVisible:function(A){if(A){this.show()
}else{this.hide()
}},show:function(){Map.Util.Element.show(this.map.container);
this.map.refresh()
},hide:function(){Map.Util.Element.hide(this.map.container)
},updateLayer:function(A){if(A.guide&&this.updateLayerImpl(A.guide)){return 
}this.updateLayerImpl(A.layerId)
},updateLayerImpl:function(A){var D=false;
var C=this.map.layers;
for(var B=0;
B<C.length;
B++){if(C[B].type==Map.Layer.MESH){if(A==C[B].id){C[B].show();
D=true
}else{C[B].hide()
}}}return D
}};
GuideMap.TargetWrapper=function(){this.initialize()
};
GuideMap.TargetWrapper.prototype={bbox:null,initialize:function(){},update:function(A){if(A){var B=A.getBoundingBox();
this.bbox={minx:B.ymin,miny:B.xmin,maxx:B.ymax,maxy:B.xmax}
}},getBBox:function(){return this.bbox
}};
function Map(D,C){this.initialize(D,C)
}Map.prototype={view:null,ui:null,layers:null,container:null,mode:null,event:null,initialize:function(F,G){this.view=new Map.View();
if(G){if(G.x){this.view.x=parseFloat(G.x)
}if(G.y){this.view.y=parseFloat(G.y)
}if(G.width){this.view.width=parseInt(G.width)
}if(G.height){this.view.height=parseInt(G.height)
}if(G.level){this.view.level=parseInt(G.level)
}if(G.levels){for(var H=0;
H<G.levels.length;
H++){var E=G.levels[H];
this.view.levels.push(new Map.View.Level(E.level,E.scale,E.title,E.pixelPerX,E.pixelPerY))
}}}this.container=document.getElementById(F);
this.container.style.overflow="hidden";
this.container.style.position="relative";
Map.Util.Element.setSize(this.container,this.view.width,this.view.height);
this.event=new Map.Event();
this.mode=new Map.Mode(this);
if(G){if(G.layers){this.layers=new Array();
for(var H=0;
H<G.layers.length;
H++){var E=G.layers[H];
this.layers.push(Map.Layer.Factory.create(E.id,E.title,E.type,E.ext,this))
}}}this.refresh()
},refresh:function(){var E=Map.Util.Element.getSize(this.container);
if(E.width!=this.view.width||E.height!=this.view.height){Map.Util.Element.setSize(this.container,this.view.width,this.view.height)
}var D=false;
if(this.layers){for(var F=0;
F<this.layers.length;
F++){D|=this.layers[F].render(this.view)
}}this.event.fire(Map.Event.REFRESH,this.view);
return D
},resize:function(D,C){this.view.width=D;
this.view.height=C;
this.refresh()
},move:function(C,D){this.view.x=C;
this.view.y=D;
this.refresh()
},zoom:function(B){if(this.view.levels&&this.view.levels[B]){this.view.level=B;
return this.refresh()
}return false
},zoomIn:function(){return this.zoom(this.view.level+1)
},zoomOut:function(){return this.zoom(this.view.level-1)
}};
Map.View=function(J,G,I,F,H){this.initialize(J,G,I,F,H)
};
Map.View.prototype={x:35,y:135,width:250,height:250,level:0,levels:null,initialize:function(P,J,M,I,K,L){if(P){this.x=P
}if(J){this.y=J
}if(M){this.width=M
}if(I){this.height=I
}if(K){this.level=K
}this.levels=new Array();
if(L){for(var N=0;
N<L.length;
N++){var O=L[N];
this.levels.push(new Map.View.Level(O.level,O.scale,O.title,O.pixelPerX,O.pixelPerY))
}}},getLevel:function(D){if(!D){D=this.level
}if(this.levels){for(var C=0;
C<this.levels.length;
C++){if(this.levels[C].level==D){return this.levels[C]
}}throw new Error("invalid level : "+D)
}else{throw new Error("no level info")
}},getBBox:function(){var F=this.getLevel();
var E=this.width/F.pixelPerY;
var D=this.height/F.pixelPerX;
return new Map.BBox(this.x-D/2,this.y-E/2,this.x+D/2,this.y+E/2)
},clone:function(){var B=new Map.View(this.x,this.y,this.width,this.height,this.level);
B.levels=this.levels;
return B
}};
Map.View.Level=function(G,H,I,J,F){this.initialize(G,H,I,J,F)
};
Map.View.Level.prototype={level:null,scale:null,title:null,pixelPerX:null,pixelPerY:null,initialize:function(G,H,I,J,F){this.level=G;
this.scale=H;
this.title=I;
this.pixelPerX=J;
this.pixelPerY=F
}};
Map.Mode=function(D,C){this.initialize(D,C)
};
Map.Mode.prototype={map:null,value:null,modes:null,initialize:function(D,C){this.map=D;
this.value=(C)?C:"scroll";
this.modes=new Array();
this.modes.push(new Map.Mode.Scroll(D));
this.setMode(this.value)
},getMode:function(D){if(!D){D=this.value
}if(this.modes){for(var C=0;
C<this.modes.length;
C++){if(this.modes[C].value==D){return this.modes[C]
}}throw new Error("unsupported mode : "+D)
}else{throw new Error("no mode info")
}},setMode:function(B){this.value=B;
this.getMode(B).init()
}};
Map.Mode.Scroll=function(B){this.initialize(B)
};
Map.Mode.Scroll.prototype={map:null,value:"scroll",scrolling:false,startLeft:null,startTop:null,currentLeft:null,currentTop:null,diffLeft:null,diffTop:null,ignoreScrollSize:3,ignoreClick:false,initialize:function(B){this.map=B
},init:function(){this.scrolling=false;
this.startLeft=null;
this.startTop=null;
this.currentLeft=null;
this.currentTop=null;
this.diffLeft=null;
this.diffTop=null;
var B=this;
this.map.container.onmousedown=function(A){return B.startScroll.apply(B,[A])
};
this.map.container.onclick=function(A){return B.onClick.apply(B,[A])
};
document.onmousemove=null;
document.onmouseup=null;
this.map.container.style.cursor="auto"
},startScroll:function(H){var F=this.map;
var E=F.container;
H=H||window.event;
if(H.button&&H.button==2){return false
}if(!this.scrolling){this.scrolling=true;
this.startLeft=Map.Util.Event.getLeft(H);
this.startTop=Map.Util.Event.getTop(H);
this.currentLeft=this.startLeft;
this.currentTop=this.startTop;
this.ignoreClick=false;
var G=this;
E.onmousedown=null;
document.onmousemove=function(A){return G.doScroll.apply(G,[A])
};
document.onmouseup=function(A){return G.endScroll.apply(G,[A])
};
this.map.container.style.cursor="move"
}Map.Util.Event.stop(H);
return false
},doScroll:function(O){var K=this.map;
var L=K.layers;
var I=K.view;
O=O||window.event;
if(this.scrolling){var M=Map.Util.Event.getLeft(O);
var N=Map.Util.Event.getTop(O);
this.diffLeft=M-this.currentLeft;
this.diffTop=N-this.currentTop;
this.currentLeft=M;
this.currentTop=N;
if(L){for(var P=0;
P<L.length;
P++){L[P].scroll(this.diffLeft,this.diffTop,I)
}}var J=I.getLevel();
I.x+=this.diffTop/J.pixelPerX;
I.y-=this.diffLeft/J.pixelPerY
}Map.Util.Event.stop(O);
return false
},endScroll:function(F){var E=this.map;
var D=E.view;
F=F||window.event;
if(this.scrolling){if(Math.abs(this.currentLeft-this.startLeft)>this.ignoreScrollSize||Math.abs(this.currentTop-this.startTop)>this.ignoreScrollSize){this.ignoreClick=true;
E.event.fire(Map.Event.SCROLL,D.clone())
}this.init()
}Map.Util.Event.stop(F);
return false
},onClick:function(S){if(this.ignoreClick){return false
}var N=this.map;
var M=N.container;
var R=N.view;
var O=R.getLevel();
var P=Map.Util.Event.getPosition(S);
var V=Map.Util.Element.getPagePosition(M);
var L=P.left-V.left;
var T=P.top-V.top;
var Q=R.x+(R.height/2-T)/O.pixelPerX;
var U=R.y-(R.width/2-L)/O.pixelPerY;
N.event.fire(Map.Event.CLICK,{x:Q,y:U})
}};
Map.Mode.SelectPoint=function(B){this.initialize(B)
};
Map.Mode.SelectPoint.prototype={map:null,value:"select_point",initialize:function(B){this.map=B
},init:function(){}};
Map.Event=function(){this.initialize()
};
Map.Event.CLICK="click";
Map.Event.SCROLL="scroll";
Map.Event.REFRESH="refresh";
Map.Event.ICON="icon";
Map.Event.prototype={listeners:null,initialize:function(){this.listeners=new Array();
this.listeners[Map.Event.CLICK]=new Array();
this.listeners[Map.Event.SCROLL]=new Array();
this.listeners[Map.Event.ICON]=new Array();
this.listeners[Map.Event.REFRESH]=new Array()
},addListener:function(D,E){var F=this.listeners[D];
if(F){F.push(E)
}else{throw new Error("unsupported event type : "+D)
}},removeListener:function(H,F){var G=this.listeners[H];
if(G){for(var E=0;
E<G.length;
E++){if(F==G[E]){G.remove(E);
return 
}}}else{throw new Error("unsupported event type : "+H)
}},fire:function(G,E){var F=this.listeners[G];
if(F){for(var H=0;
H<F.length;
H++){F[H](E)
}}else{throw new Error("unsupported event type : "+G)
}}};
Map.Layer={MESH:"mesh",WMS:"wms",ICON:"icon",GUIDE:"guide"};
Map.Layer.Factory={create:function(H,I,K,L,J){var G=document.createElement("div");
G.style.overflow="hidden";
G.style.position="relative";
G.style.width=J.container.style.width;
G.style.height=J.container.style.height;
J.container.appendChild(G);
switch(K){case Map.Layer.MESH:return new Map.Layer.Mesh(H,I,L,G,J);
case Map.Layer.WMS:return new Map.Layer.WMS(H,I,L,G,J);
case Map.Layer.ICON:return new Map.Layer.Icon(H,I,L,G,J);
case Map.Layer.GUIDE:return new Map.Layer.Guide(H,I,L,G,J);
default:throw new Error("unsupported layer type : "+K)
}}};
Map.Layer.Guide=function(G,H,J,F,I){this.initialize(G,H,J,F,I)
};
Map.Layer.Guide.prototype={id:null,title:null,type:Map.Layer.GUIDE,container:null,map:null,highlight:null,targetMap:null,initialize:function(H,I,K,L,J){this.id=H;
this.title=I;
this.container=L;
this.container.style.position="absolute";
Map.Util.Element.setPosition(this.container,0,0);
this.map=J;
var G=null;
if(K&&K.guide){G=K.guide
}this.highlight=new Map.Layer.Guide.Highlight(G,this)
},render:function(D){var C=(this.targetMap&&this.targetMap.view)?this.targetMap.view:null;
this.highlight.render(D,C)
},hide:function(){Map.Util.Element.hide(this.container)
},show:function(){Map.Util.Element.show(this.container)
},visible:function(){return Map.Util.Element.visible(this.container)
},scroll:function(D,E,F){}};
Map.Layer.Guide.Highlight=function(C,D){this.initialize(C,D)
};
Map.Layer.Guide.Highlight.prototype={layer:null,rect:null,color:"#ff0000",opacity:0.5,image:"image/guide.gif",imageObj:null,imageNode:null,minRect:8,initialize:function(F,J){this.layer=J;
if(F){if(F.color){this.color=F.color
}if(F.opacity){this.opacity=F.opacity
}if(F.image){this.image=F.image
}}var G=new Image();
G.src=this.image;
this.imageObj=G;
var H=document.createElement("img");
H.style.position="absolute";
H.src=this.image;
Map.Util.Element.hide(H);
J.container.appendChild(H);
this.imageNode=H;
var I=document.createElement("div");
I.style.backgroundColor=this.color;
I.style.border=this.color+" 2px solid";
I.style.filter="alpha(opacity="+Math.floor(this.opacity*100)+")";
I.style.opacity=this.opacity;
I.style.MozOpacity=this.opacity;
I.style.position="absolute";
I.style.zIndex="1";
Map.Util.Element.hide(I);
J.container.appendChild(I);
this.rect=I
},render:function(L,O){if(O){var K=O.getBBox();
var J=L.getBBox();
var P=(K.maxy-K.miny)/(J.maxy-J.miny);
var I=(K.maxx-K.minx)/(J.maxx-J.minx);
var M=Math.floor(L.width*P);
var N=Math.floor(L.height*I);
if(M<this.minRect&&N<this.minRect){Map.Util.Element.setPosition(this.imageNode,L.width/2-this.imageObj.width/2,L.height/2-this.imageObj.height/2);
Map.Util.Element.show(this.imageNode)
}else{Map.Util.Element.hide(this.imageNode)
}Map.Util.Element.setSize(this.rect,M,N);
Map.Util.Element.setPosition(this.rect,L.width/2-M/2,L.height/2-N/2);
Map.Util.Element.show(this.rect)
}}};
Map.Layer.Icon=function(G,H,J,F,I){this.initialize(G,H,J,F,I)
};
Map.Layer.Icon.RefPoint={TOP_LEFT:"top_left",TOP_CENTER:"top_center",TOP_RIGHT:"top_right",MIDDLE_LEFT:"middle_left",MIDDLE_CENTER:"middle_center",MIDDLE_RIGHT:"middle_right",BOTTOM_LEFT:"bottom_left",BOTTOM_CENTER:"bottom_center",BOTTOM_RIGHT:"bottom_right"};
Map.Layer.Icon.prototype={id:null,title:null,type:Map.Layer.ICON,image:"image/icon.gif",refpoint:Map.Layer.Icon.RefPoint.MIDDLE_CENTER,container:null,map:null,images:null,initialize:function(G,H,J,F,I){this.id=G;
this.title=H;
if(J&&J.image){this.image=J.image
}if(J&&J.refpoint){this.refpoint=J.refpoint
}this.container=F;
this.map=I;
this.images=new Array()
},render:function(N){var I=N.getBBox();
var L=N.getLevel();
for(var J=0;
J<this.images.length;
J++){var M=this.images[J];
var H=parseInt((M.y-I.miny)*L.pixelPerY);
var K=parseInt((I.maxx-M.x)*L.pixelPerX);
M.setPosition(H,K)
}},hide:function(){Map.Util.Element.hide(this.container)
},show:function(){Map.Util.Element.show(this.container)
},visible:function(){return Map.Util.Element.visible(this.container)
},scroll:function(E,F,H){if(this.visible()&&this.images){for(var G=0;
G<this.images.length;
G++){this.images[G].move(E,F)
}}},get:function(C){for(var D=0;
D<this.images.length;
D++){if(this.images[D].tag==C){return this.images[D]
}}return null
},add:function(L,H,G,K,I){var J=new Map.Layer.Icon.Image(L,H,G,(K&&K!="")?K:this.image,(I&&I!="")?I:this.refpoint,this);
this.images.push(J);
return J
},remove:function(C){for(var D=0;
D<this.images.length;
D++){if(this.images[D].tag==C){return true
}}return false
},clear:function(){this.images=new Array()
}};
Map.Layer.Icon.Image=function(L,H,G,K,I,J){this.initialize(L,H,G,K,I,J)
};
Map.Layer.Icon.Image.prototype={x:null,y:null,tag:null,url:null,node:null,layer:null,image:null,refpoint:null,initialize:function(N,I,H,M,J,L){this.x=N;
this.y=I;
this.tag=H;
this.url=M;
this.refpoint=J;
this.layer=L;
this.node=document.createElement("img");
this.node.style.position="absolute";
this.node.style.cursor="pointer";
this.node.src=M;
Map.Util.Element.setPosition(this.node,-1000,-1000);
L.container.appendChild(this.node);
var K=this;
this.node.onclick=function(A){return K.onClick.apply(K,[A])
}
},setPosition:function(G,H){var E=this.getSize();
var F=(this.refpoint)?this.refpoint:this.layer.refpoint;
switch(F){case Map.Layer.Icon.RefPoint.TOP_LEFT:break;
case Map.Layer.Icon.RefPoint.TOP_CENTER:G-=E.width/2;
break;
case Map.Layer.Icon.RefPoint.TOP_RIGHT:G-=E.width;
break;
case Map.Layer.Icon.RefPoint.MIDDLE_LEFT:H-=E.height/2;
break;
case Map.Layer.Icon.RefPoint.MIDDLE_CENTER:G-=E.width/2;
H-=E.height/2;
break;
case Map.Layer.Icon.RefPoint.MIDDLE_RIGHT:G-=E.width;
H-=E.height/2;
break;
case Map.Layer.Icon.RefPoint.BOTTOM_LEFT:H-=E.height;
break;
case Map.Layer.Icon.RefPoint.BOTTOM_CENTER:G-=E.width/2;
H-=E.height;
break;
case Map.Layer.Icon.RefPoint.BOTTOM_RIGHT:G-=E.width;
H-=E.height;
break;
default:G-=E.width/2;
H-=E.height/2;
break
}Map.Util.Element.setPosition(this.node,G,H)
},getSize:function(){if(!this.image){this.image=new Image();
this.image.src=this.url
}return{width:this.image.width,height:this.image.height}
},move:function(C,D){Map.Util.Element.move(this.node,C,D)
},onClick:function(B){this.layer.map.event.fire(Map.Event.ICON,this);
Map.Util.Event.stop(B)
}};
Map.Layer.Mesh=function(G,H,J,F,I){this.initialize(G,H,J,F,I)
};
Map.Layer.Mesh.prototype={id:null,title:null,type:Map.Layer.MESH,uriTemplate:null,container:null,items:null,initialize:function(I,J,L,H,K){this.id=I;
this.title=J;
this.container=H;
this.container.style.position="absolute";
Map.Util.Element.setPosition(this.container,0,0);
this.items=new Array();
if(L&&L.items){var N=L.items;
for(var M=0;
M<N.length;
M++){this.items.push(new Map.Layer.Mesh.Item(N[M],this))
}}},render:function(E){var F=Number.MIN_VALUE;
if(this.items){for(var H=0;
H<this.items.length;
H++){if(this.items[H].level==E.level){this.items[H].render(E);
F=E.level
}}if(F!=Number.MIN_VALUE){for(var H=0;
H<this.items.length;
H++){var G=this.items[H];
if(G.level!=E.level){G.hide()
}else{G.show()
}}}}return(F!=Number.MIN_VALUE)
},hide:function(){Map.Util.Element.hide(this.container)
},show:function(){Map.Util.Element.show(this.container)
},visible:function(){return Map.Util.Element.visible(this.container)
},scroll:function(E,F,H){if(this.items){for(var G=0;
G<this.items.length;
G++){this.items[G].scroll(E,F,H)
}}}};
Map.Layer.Mesh.Item=function(D,C){this.initialize(D,C)
};
Map.Layer.Mesh.Item.prototype={level:null,uriTemplate:null,minx:null,miny:null,maxx:null,maxy:null,container:null,width:250,height:250,rows:0,cols:0,rowOffset:0,colOffset:0,images:null,loadingImage:"image/loading.gif",noImage:"image/noimage.gif",blankImage:"image/blank.gif",initialize:function(D,C){if(D){this.level=D.level;
this.uriTemplate=D.uriTemplate;
this.minx=D.minx;
this.miny=D.miny;
this.maxx=D.maxx;
this.maxy=D.maxy
}this.container=document.createElement("div");
this.container.style.overflow="hidden";
this.container.style.position="relative";
this.container.style.width=C.container.style.width;
this.container.style.height=C.container.style.height;
C.container.appendChild(this.container);
if(D){this.width=D.width;
this.height=D.height;
this.rows=D.rows;
this.cols=D.cols;
this.rowOffset=D.rowOffset;
this.colOffset=D.colOffset;
if(D.loadingImage){this.loadingImage=D.loadingImage
}if(D.noImage){this.noImage=D.noImage
}if(D.blankImage){this.blankImage=D.blankImage
}}this.images=new Array()
},render:function(m){this.initDOM(m);
var t=(this.maxy-this.miny)/this.cols;
var j=(this.maxx-this.minx)/this.rows;
var f=t*m.width/this.width;
var h=j*m.height/this.height;
var a=m.y-f/2;
var Z=m.x+h/2;
var r=Math.floor((a-this.miny)/t);
var n=Math.floor((this.maxx-Z)/j);
var x=this.miny+r*t;
var w=this.maxx-n*j;
var g=parseInt((a-x)/t*this.width);
var Y=parseInt((w-Z)/j*this.height);
var p=Math.ceil(m.height/this.height)+1;
var o=Math.ceil(m.width/this.width)+1;
for(var b=0;
b<p;
b++){for(var c=0;
c<o;
c++){var d=b*o+c;
var X=this.images[d];
var v=c*this.width-g;
var k=b*this.height-Y;
var q=c+r;
var u=b+n;
this.setIndex(X,u,q);
X.setPosition(v,k)
}}},initDOM:function(N,L){var O=this.container;
while(O.firstChild){O.removeChild(O.firstChild)
}this.images=new Array();
if(!this.container.firstChild){var I=Math.ceil(N.height/this.height)+1;
var P=Math.ceil(N.width/this.width)+1;
for(var J=0;
J<I;
J++){for(var K=0;
K<P;
K++){var M=new Map.Layer.Mesh.Image(K*this.width,J*this.height,this);
this.images.push(M)
}}}this.show()
},hide:function(){Map.Util.Element.hide(this.container)
},show:function(){Map.Util.Element.show(this.container)
},visible:function(){return Map.Util.Element.visible(this.container)
},setIndex:function(G,F,H){G.row=F;
G.col=H;
var E;
if(F<0||F>=this.rows||H<0||H>=this.cols){E=this.noImage
}else{E=this.uriTemplate;
E=E.replace(/\{row\}/i,F);
E=E.replace(/\{col\}/i,H)
}G.setImage(E)
},scroll:function(S,W,U){if(this.visible()&&this.images){var T=Math.ceil(U.height/this.height)+1;
var M=Math.ceil(U.width/this.width)+1;
for(var N=0;
N<this.images.length;
N++){var O=this.images[N];
O.move(S,W);
var V=O.getPosition();
var Q=0;
var P=0;
var R=0;
var X=0;
if(S>0&&V.left>U.width){P=-M;
R=-this.width*M
}else{if(S<0&&V.left+this.width<0){P=M;
R=this.width*M
}}if(W>0&&V.top>U.height){Q=-T;
X=-this.height*T
}else{if(W<0&&V.top+this.height<0){Q=T;
X=this.height*T
}}if(Q!=0||P!=0){O.setImage(this.blankImage)
}if(R!=0||X!=0){O.setPosition(V.left+R,V.top+X)
}if(Q!=0||P!=0){this.setIndex(O,O.row+Q,O.col+P)
}}}}};
Map.Layer.Mesh.Image=function(E,F,D){this.initialize(E,F,D)
};
Map.Layer.Mesh.Image.prototype={node:null,row:null,col:null,initialize:function(E,F,D){this.node=document.createElement("img");
this.node.style.position="absolute";
Map.Util.Element.setSize(this.node,D.width,D.height);
Map.Util.Element.setPosition(this.node,E,F);
if(D.loadingImage){this.setImage(D.loadingImage)
}D.container.appendChild(this.node)
},setImage:function(B){this.node.src=B
},getPosition:function(){return Map.Util.Element.getPosition(this.node)
},setPosition:function(D,C){Map.Util.Element.setPosition(this.node,D,C)
},move:function(C,D){Map.Util.Element.move(this.node,C,D)
}};
Map.Layer.WMS=function(G,H,J,F,I){this.initialize(G,H,J,F,I)
};
Map.Layer.WMS.prototype={id:null,title:null,type:Map.Layer.WMS,uriTemplate:null,container:null,initialize:function(G,H,J,F,I){this.id=G;
this.title=H;
if(J&&J.uriTemplate){this.uriTemplate=J.uriTemplate
}this.container=F
},render:function(B){Map.Util.Element.show(this.container)
},hide:function(){Map.Util.Element.hide(this.container)
},show:function(){Map.Util.Element.show(this.container)
},visible:function(){return Map.Util.Element.visible(this.container)
},scroll:function(D,E,F){}};
Map.BBox=function(H,E,F,G){this.initialize(H,E,F,G)
};
Map.BBox.prototype={minx:null,miny:null,maxx:null,maxy:null,initialize:function(H,E,F,G){this.minx=H;
this.miny=E;
this.maxx=F;
this.maxy=G
}};
Map.Util={Element:{getPagePosition:function(E){var F=0;
var D=0;
do{F+=E.offsetTop||0;
D+=E.offsetLeft||0;
E=E.offsetParent
}while(E);
return{left:D,top:F}
},getPosition:function(E){var F=parseInt(E.style.left.replace(/px/,""));
var D=parseInt(E.style.top.replace(/px/,""));
return{left:F,top:D}
},setPosition:function(E,F,D){E.style.left=F+"px";
E.style.top=D+"px"
},move:function(F,H,E){var G=this.getPosition(F);
this.setPosition(F,G.left+H,G.top+E)
},getSize:function(E){var F=parseInt(E.style.width.replace(/px/,""));
var D=parseInt(E.style.height.replace(/px/,""));
return{width:F,height:D}
},setSize:function(E,F,D){E.style.width=F+"px";
E.style.height=D+"px"
},hide:function(B){B.style.display="none"
},show:function(B){if(B.tagName.match(/div/i)){B.style.display="block"
}else{B.style.display="inline"
}},visible:function(B){return(B.style.display!="none")
}},Event:{getTarget:function(B){B=(B)?B:window.event;
return(B.target||B.srcElement)
},getPosition:function(B){B=(B)?B:window.event;
return{left:this.getLeft(B),top:this.getTop(B)}
},getLeft:function(B){B=(B)?B:window.event;
return B.pageX||(B.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft))
},getTop:function(B){B=(B)?B:window.event;
return B.pageY||(B.clientY+(document.documentElement.scrollTop||document.body.scrollTop))
},stop:function(B){B=(B)?B:window.event;
if(B.prevDefault){B.prevDefault();
B.stopPropagation()
}else{B.returnValue=false;
B.cancelBubble=true
}}}};
Map.UI=function(){this.initialize()
};
Map.UI.prototype={initialize:function(){}};
var AppConfig=new Object();
AppConfig.COOKIE_MAPURL="mapurl";
AppConfig.COOKIE_SEARCH_CONDITION="search";
function Over(B,A){B.src=A
}function changeImage(A,B){document.images[A].src="image/"+B
}function changeFormImage(A,B){A.src="image/"+B
}function MM_preloadImages(){var D=document;
if(D.images){if(!D.MM_p){D.MM_p=new Array()
}var C,B=D.MM_p.length,A=MM_preloadImages.arguments;
for(C=0;
C<A.length;
C++){if(A[C].indexOf("#")!=0){D.MM_p[B]=new Image;
D.MM_p[B++].src=A[C]
}}}}function MM_swapImgRestore(){var C,A,B=document.MM_sr;
for(C=0;
B&&C<B.length&&(A=B[C])&&A.oSrc;
C++){A.src=A.oSrc
}}function MM_findObj(E,D){var C,B,A;
if(!D){D=document
}if((C=E.indexOf("?"))>0&&parent.frames.length){D=parent.frames[E.substring(C+1)].document;
E=E.substring(0,C)
}if(!(A=D[E])&&D.all){A=D.all[E]
}for(B=0;
!A&&B<D.forms.length;
B++){A=D.forms[B][E]
}for(B=0;
!A&&D.layers&&B<D.layers.length;
B++){A=MM_findObj(E,D.layers[B].document)
}if(!A&&D.getElementById){A=D.getElementById(E)
}return A
}function MM_swapImage(){var D,C=0,A,B=MM_swapImage.arguments;
document.MM_sr=new Array;
for(D=0;
D<(B.length-2);
D+=3){if((A=MM_findObj(B[D]))!=null){document.MM_sr[C++]=A;
if(!A.oSrc){A.oSrc=A.src
}A.src=B[D+2]
}}}var mmOpenContainer=null;
var mmOpenMenus=null;
var mmHideMenuTimer=null;
function MM_menuStartTimeout(A){mmHideMenuTimer=setTimeout("MM_menuHideMenus()",A)
}function MM_menuHideMenus(){MM_menuResetTimeout();
if(mmOpenContainer){var C=document.getElementById(mmOpenContainer);
C.style.visibility="inherit";
mmOpenContainer=null
}if(mmOpenMenus){for(var B in mmOpenMenus){var A=document.getElementById(mmOpenMenus[B]);
A.style.visibility="hidden"
}mmOpenMenus=null
}}function MM_menuHideSubmenus(B){if(mmOpenMenus){var D=false;
var E=0;
for(var C in mmOpenMenus){if(D){var A=document.getElementById(mmOpenMenus[C]);
A.style.visibility="hidden"
}else{if(mmOpenMenus[C]==B){D=true
}else{E++
}}}mmOpenMenus.length=E+1
}}function MM_menuOverMenuItem(B,A){MM_menuResetTimeout();
MM_menuHideSubmenus(B);
if(A){var C=""+B+"_"+A;
MM_menuShowSubMenu(C)
}}function MM_menuShowSubMenu(B){MM_menuResetTimeout();
var A=document.getElementById(B);
A.style.visibility="inherit";
if(!mmOpenMenus){mmOpenMenus=new Array
}mmOpenMenus[mmOpenMenus.length]=""+B
}function MM_menuResetTimeout(){if(mmHideMenuTimer){clearTimeout(mmHideMenuTimer)
}mmHideMenuTimer=null
}function MM_menuShowMenu(A,C,D,E,B){MM_menuHideMenus();
MM_menuResetTimeout();
MM_menuShowMenuContainer(A,D,E,B);
MM_menuShowSubMenu(C)
}function MM_menuShowMenuContainer(B,A,F,C){var E=document.getElementById(B);
var D=E.style;
D.visibility="inherit";
mmOpenContainer=""+B
}function getRequestParameter(D,F){if(!F){F=window
}var B=F.location.href.match(/\?.*$/i);
if(!B){return null
}B=B.toString();
if(B.length>1){var C=B.substr(1).split("&");
for(var A=0;
A<C.length;
A++){var E=C[A].split("=");
if(E[0]==D){return E[1]
}}}return null
}function overlay(C,D,B,A){if(C.runtimeStyle&&getIEVersionNumber()<7){C.runtimeStyle.filter=null;
if(B){C.src=A;
C.runtimeStyle.filter='progid:DXImageTransform.Microsoft.AlphaImageLoader(src="'+D+'", sizingmethod="scale");';
return 
}}C.src=D
}function getIEVersionNumber(){var B=navigator.userAgent;
var A=B.indexOf("MSIE ");
if(A==-1){return 0
}else{return parseFloat(B.substring(A+5,B.indexOf(";",A)))
}}function setOpacity(B,A){A=(A==100)?99.999:A;
B.style.filter="alpha(opacity:"+A+")";
B.style.KHTMLOpacity=A/100;
B.style.MozOpacity=A/100;
B.style.opacity=A/100
}function enable(B){var A=getRawObject(B);
if(A){A.disabled=false
}}function disable(B){var A=getRawObject(B);
if(A){A.disabled=true
}}function isDisable(B){var A=getRawObject(B);
if(A){return A.disabled
}return false
}function getEventCoord(A){var B=(A)?A:window.event;
if(B.pageX){return{x:B.pageX,y:B.pageY}
}else{if(B.clientX){return{x:B.clientX,y:B.clientY}
}else{return null
}}}function getPositionedEventCoords(B){var A=(B)?B:window.event;
var C={left:0,top:0};
if(A.layerX){var D={x:parseInt(getElementStyle("progressBar","borderLeftWidth","border-left-width")),y:parseInt(getElementStyle("progressBar","borderTopWidth","border-top-width"))};
C.left=A.layerX-D.x;
C.top=A.layerY-D.y
}else{if(A.offsetX){C.left=A.offsetX;
C.top=A.offsetY
}}return C
}function getElementStyle(A,C,D){var E=document.getElementById(A);
if(E){if(E.currentStyle){return E.currentStyle[C]
}else{if(window.getComputedStyle){var B=window.getComputedStyle(E,"");
return B.getPropertyValue(D)
}}}else{return 0
}}function getEventTarget(B){var A=(B)?B:event;
if(A){var C=(A.target)?A.target:((A.srcElement)?A.srcElement:null);
if(C.nodeType==3){C=C.parentNode
}return C
}else{return null
}}function getElementPosition(B){var E=document.getElementById(B);
var C=0;
var D=0;
while(E){if(E.nodeName.toLowerCase()!="form"&&E.nodeName.toLowerCase()!="table"&&E.nodeName.toLowerCase()!="tbody"&&E.nodeName.toLowerCase()!="thead"&&E.nodeName.toLowerCase()!="tr"){var F=getElementPositionRelative(E);
C+=F.left;
D+=F.top
}var A=E.parentNode;
if(A==null||A.nodeName.toLowerCase()=="body"){break
}else{E=A
}}return{left:C,top:D}
}function getElementPositionRelative(C){var A=C;
var D=0;
var B=0;
while(A){D+=A.offsetLeft;
B+=A.offsetTop;
A=A.offsetParant
}if(navigator.userAgent.indexOf("Mac")!=-1&&typeof document.body.leftMargin!="undefined"){D+=document.body.leftMargin;
B+=document.body.topMargin
}return{left:D,top:B}
}function xmlto(B){if(log4javascript){if(B.nodeType==1||B.nodeType==9){logger.debug("<"+B.nodeName+">");
var C=B.childNodes;
for(var A=0;
A<C.length;
A++){xmlto(C[A])
}logger.debug("</"+B.nodeName+">")
}else{if(B.nodeType==3){logger.debug(B.nodeValue)
}}}}function visibilityControls(A){window.setTimeout("visibilityControlsSub('select',"+A+");",0)
}function visibilityControlsSub(D,A){var B=document.getElementsByTagName(D);
if(B){var C;
for(C=0;
C<B.length;
C++){var E=B[C];
if(E){if(A==0){E.style.visibility="hidden"
}else{E.style.visibility="visible"
}}}}}function ThreeStateCheckbox(A,D,C,B){this.initialize(A,D,C,B)
}ThreeStateCheckbox.prototype={images:new Array(),state:0,target:null,onclick:null,initialize:function(A,D,C,B){this.images[0]=new Image();
if(D){this.images[0].src=D
}else{this.images[0].src="image/check_off.gif"
}this.images[1]=new Image();
if(C){this.images[1].src=C
}else{this.images[1].src="image/check_on.gif"
}this.images[2]=new Image();
if(B){this.images[2].src=B
}else{this.images[2].src="image/check_mix.gif"
}this.target=document.createElement("img");
this.target.alt="";
this.target.title="";
this.target.onclick=this._onclick.bind(this);
this.setState(A)
},addClassName:function(A){Element.Methods.addClassName(this.target,A)
},removeClassName:function(A){Element.Methods.removeClassName(this.target,A)
},setTooltip:function(A){this.target.alt=A;
this.target.title=A
},setState:function(A){if(A!=1&&A!=2){this.state=0
}else{this.state=A
}this.updateUI()
},getState:function(){return this.state
},isChecked:function(){return this.state==1
},setChecked:function(A){this.setState(A?1:0)
},show:function(){Element.Methods.show(this.target)
},hide:function(){Element.Methods.hide(this.target)
},getNode:function(){return this.target
},_onclick:function(){if(!Element.Methods.visible(this.target)){return 
}if(this.state==2||this.state==1){this.state=0
}else{this.state=1
}this.updateUI();
if(this.onclick){this.onclick()
}},updateUI:function(){this.target.src=this.images[this.state].src
}};
function LayerTree(A,B,C){this.initialize(A,B,C)
}LayerTree.prototype={factory:null,param:null,onChangeCheckbox:null,childNodes:null,initialize:function(A,B,C){this.param=C;
this.childNodes=this.createTreeItem(A,B,1,null)
},createTreeItem:function(H,G,A,M){var O=new Array();
if(G==null){return O
}var P=A+1;
var E=this.param;
var L=false;
if((A==1&&E.dispBunrui1!=0)||(A==2&&E.dispBunrui2!=0)||(A==3&&E.dispBunrui3!=0)||A==4){L=true
}for(var F=0;
F<G.length;
F++){var J=G[F];
if(J.type!=LayerType.NODE&&J.type!=LayerType.VECTOR){continue
}var D=new LayerTree.Node(J);
var N=document.createElement("li");
N.style.listStyleType="none";
N.className="layerItemNoDisp";
D.container=N;
var B;
var I;
var C;
var K;
if(J.type==LayerType.NODE){K=document.createElement("ul");
D.childNodes=this.createTreeItem(K,J.subLayers,P,J);
if(D.childNodes.length==0){continue
}}if(L){N.className="layerItem"+A;
if(J.type==LayerType.NODE){B=this.createOpenClose(K,A!=3);
N.appendChild(B)
}var I=new ThreeStateCheckbox();
I.addClassName("layerCheck");
I.onclick=this._onclickCheckbox.bind(this,D);
D.checkbox=I;
if(J.type!=LayerType.NODE&&M){I.setTooltip(M.caption+"／"+J.caption)
}var C=this.createContents(J,D);
D.contents=C;
N.appendChild(I.getNode());
N.appendChild(C)
}if(K){N.appendChild(K)
}H.appendChild(N);
O.push(D)
}return O
},createOpenClose:function(B,C){var A=document.createElement("img");
A.className="layer_open_close";
A.alt="";
A.title="";
A.onclick=this.onclickOpenClose.bind(this,B,A);
this.onclickOpenClose(B,A);
if(C){this.onclickOpenClose(B,A)
}return A
},onclickOpenClose:function(B,A){if(Element.Methods.visible(B)){Element.Methods.hide(B);
A.src="image/plus.gif"
}else{Element.Methods.show(B);
A.src="image/minus.gif"
}},createContents:function(B,D){var A=document.createElement("span");
var E=document.createTextNode(B.caption);
A.appendChild(E);
A.onclick=D.checkbox._onclick.bind(D.checkbox);
var C=document.createElement("span");
C.appendChild(A);
return C
},disableCheckbox:function(A){this._disableCheckbox(this.childNodes,A)
},_disableCheckbox:function(A,B){if(A){for(var C=0;
C<A.length;
C++){var D=A[C];
if(D.isNode()){this._disableCheckbox(D.childNodes,B)
}if(D.checkbox){if(B){D.checkbox.hide()
}else{D.checkbox.show()
}}}}},getAllLeaf:function(){var A=new Array();
this._getLeaf(this.childNodes,A);
return A
},_getLeaf:function(A,D){if(A){for(var B=0;
B<A.length;
B++){var C=A[B];
if(C.isNode()){this._getLeaf(C.childNodes,D)
}else{D.push(C)
}}}},getAllCheckedLeaf:function(){var A=new Array();
this._getCheckedLeaf(this.childNodes,A);
return A
},_getCheckedLeaf:function(A,D){if(A){for(var B=0;
B<A.length;
B++){var C=A[B];
if(C.isNode()){this._getCheckedLeaf(C.childNodes,D)
}else{if(C.checkbox&&C.checkbox.isChecked()){D.push(C)
}}}}},_onclickCheckbox:function(A){this.subLayerCheck(A,A.checkbox.isChecked());
this.updateLayerCheck();
if(this.onChangeCheckbox){this.onChangeCheckbox(this)
}},subLayerCheck:function(D,C){if(D.isNode()){var B=D.childNodes;
for(var A=0;
A<B.length;
A++){B[A].checkbox.setChecked(C);
this.subLayerCheck(B[A],C)
}}},updateLayerCheck:function(){this._updateLayerCheck(this.childNodes)
},_updateLayerCheck:function(A){var E=-1;
for(var B=0;
B<A.length;
B++){var C=A[B];
var D;
if(C.isNode()){D=this._updateLayerCheck(C.childNodes);
if(C.checkbox){C.checkbox.setState(D)
}}else{if(C.checkbox){D=C.checkbox.getState()
}}if(E==-1){E=D
}else{if(E!=D){E=2
}}}return E
},setLayerState:function(E){var F=new Object();
if(E){for(var B=0;
B<E.length;
B++){F[E[B]]=true
}}var A=this.getAllLeaf();
for(var B=0;
B<A.length;
B++){var D=A[B];
var C=F[D.getLayerId()];
if(D.checkbox){D.checkbox.setChecked(C)
}}this.updateLayerCheck()
},hideUncheckedNode:function(){this._hideUncheckedNode(this.childNodes)
},_hideUncheckedNode:function(A){if(A){for(var B=0;
B<A.length;
B++){var C=A[B];
if(C.isNode()){this._hideUncheckedNode(C.childNodes)
}if(C.checkbox&&C.checkbox.getState()==0){C.hide()
}else{C.show()
}}}},showAllNode:function(){this._showAllNode(this.childNodes)
},_showAllNode:function(A){if(A){for(var B=0;
B<A.length;
B++){var C=A[B];
if(C.isNode()){this._showAllNode(C.childNodes)
}C.show()
}}}};
LayerTree.Node=function(A){this.initialize(A)
};
LayerTree.Node.prototype={container:null,contents:null,checkbox:null,childNodes:new Array(),layer:null,initialize:function(A){this.layer=A
},getLayerId:function(){return this.layer.layerId
},isNode:function(){return this.layer.type==LayerType.NODE
},isLeaf:function(){return !this.isNode()
},show:function(){Element.Methods.show(this.container)
},hide:function(){Element.Methods.hide(this.container)
}};
var customLocation=[{orgId:"org_urayasu",locId:"city_urayau",indexMap:{src:"image/IndexMap_Setagaya2.png",width:338,height:400,minx:139.8055856554,miny:35.7049729157,maxx:139.9021882036,maxy:35.8008696966,x:null,y:null}},{orgId:"org_urayasu",locId:"city_urayasu",indexMap:{src:"image/IndexMap_Setagaya2.png",width:338,height:400,minx:139.8055856554,miny:35.7049729157,maxx:139.9021882036,maxy:35.8008696966,x:null,y:null}}];
var toshiModeViewSet=[{id:"0_8aab03d31ec9684a011ec97ccf08000b",featureIds:[["SETAGAYA_atrC01_10101a","SETAGAYA_atrC01_10102a"],["SETAGAYA_atrC01_10201a","SETAGAYA_atrC01_10202a","SETAGAYA_atrC01_10203a","SETAGAYA_atrC01_10204a","SETAGAYA_atrC01_10205a","SETAGAYA_atrC01_10206a","SETAGAYA_atrC01_10207a","SETAGAYA_atrC01_10208a","SETAGAYA_atrC01_10209a","SETAGAYA_atrC01_10210a"],["SETAGAYA_atrC01_10301a","SETAGAYA_atrC01_10401a","SETAGAYA_atrC01_10402a"],["SETAGAYA_atrC04_10501a","SETAGAYA_atrC04_10502a","SETAGAYA_atrC04_10503a","SETAGAYA_atrC04_10504a","SETAGAYA_atrC04_10505a"],["SETAGAYA_atrC04_10801a","SETAGAYA_atrC04_10802a","SETAGAYA_atrC04_10803a"],["SETAGAYA_atrC01_11501a","SETAGAYA_atrC01_11502a","SETAGAYA_atrC01_11503a","SETAGAYA_atrC01_11504a","SETAGAYA_atrC01_11505a","SETAGAYA_atrC01_11506a","SETAGAYA_atrC01_11507a"],["SETAGAYA_atrC04_10901a","SETAGAYA_atrC04_10902a"],["SETAGAYA_atrT01_20111a","SETAGAYA_atrT01_20112a","SETAGAYA_atrT01_20113a"],["SETAGAYA_atrT09_20201a","SETAGAYA_atrT09_20202a","SETAGAYA_atrT09_20204a"],["SETAGAYA_atrT04_21401a","SETAGAYA_atrT04_21402a"],["SETAGAYA_atrT01_20401a","SETAGAYA_atrT01_20402a"],["SETAGAYA_atrT01_20501a","SETAGAYA_atrT01_20502a"],["SETAGAYA_atrT01_21101a","SETAGAYA_atrT01_21102a"],["SETAGAYA_atrC12_21201a","SETAGAYA_atrC12_21301a","SETAGAYA_atrC12_21302a"],["SETAGAYA_atrT07_22101a","SETAGAYA_atrT07_22102a"],["SETAGAYA_atrT01_22301a","SETAGAYA_atrT01_22302a","SETAGAYA_atrT01_22303a","SETAGAYA_atrT01_22304a"]]}];
for(var i=0;
i<toshiModeViewSet.length;
i++){var vs=toshiModeViewSet[i];
toshiModeViewSet[vs.id]=vs
}var HeaderItem=Class.create();
HeaderItem.prototype={initialize:function(D,B,A,C){this.targetId=D;
this.caption=B;
this.href=A;
this.onclick=C
}};
var Header=new Object();
Object.extend(Header,{loginLink2:new HeaderItem("headerLogin2","Myまっぷ","/faces/jsp/map/map_index.html"),loginLink:new HeaderItem("headerLogin","お問い合わせ先","/faces/jsp/lite/login.jsp"),agreementLink:new HeaderItem("headerAgreement","利用規約","/portal/agreement.html"),mapLink:new HeaderItem("headerMap","掲載地図一覧","http://www.pref.ibaraki.jp/bukyoku/kikaku/jyosei/gis/LayerList.htm"),referenceLink:new HeaderItem("headerReference","お問い合わせ先","/portal/reference.html"),homeLink:new HeaderItem("headerHome","HOME","http://www.city.setagaya.tokyo.jp/index.shtml"),logoutLink:new HeaderItem("headerHome","ログアウト","/faces/jsp/lite/logout.jsp"),systemLink:new HeaderItem("headerSystem","システム管理","/faces/jsp/auth/sys/index.jsp"),Attention:new HeaderItem("headerAttention","ご利用上の注意","/portal/riyou2.html"),Attention2:new HeaderItem("headerAttention2","このサイトについて","/portal/site.html"),mapSelectLink:new HeaderItem("headerMapSelect","地図選択","/faces/jsp/lite/viewSet.jsp"),subjectLink:new HeaderItem("headerSubject","地図のテーマ変更","#"),userNameId:"headerUserName"});
function createHeader(A,I,C){if(I!=null){var H=new HeaderItem(Header.userNameId,"ユーザ名："+I.userName);
createHeaderItem(A,H);
var D=createHeaderItem(A,Header.logoutLink);
var B=null;
if(typeof liteService!="undefined"){B=liteService
}if(typeof _service!="undefined"){B=_service
}if(D&&B){D.onclick=function(){B.logout()
}
}createHeaderItem(A,Header.systemLink)
}else{createHeaderItem(A,Header.loginLink2);
createHeaderItem(A,Header.homeLink);
createHeaderItem(A,Header.Attention);
createHeaderItem(A,Header.Attention2)
}var F=Header.mapSelectLink.href;
var G=getRequestParameter("groupId");
if(G){F+="?groupId="+G
}else{if(C){F+="?groupId="+C
}}var E=new HeaderItem(Header.mapSelectLink.targetId,Header.mapSelectLink.caption,F);
createHeaderItem(A,E)
}function createHeaderItem(B,C){var D=$(C.targetId);
if(D){if(C.href){var A=document.createElement("a");
if(C.href.match(/^\/(.*$)/)){A.href=B+C.href
}else{A.href=C.href
}var E=document.createTextNode(C.caption);
A.appendChild(E);
D.appendChild(A)
}else{var E=document.createTextNode(C.caption);
D.appendChild(E)
}return D.lastChild
}}function createImage(F,E,C,B){var D=$(F);
if(D){var A=document.createElement("img");
A.src=E;
A.alt=C;
A.title=C;
if(B){A.onclick=B
}D.appendChild(A)
}}var InitLogger={enabled:false,scriptResponse:null,load:function(){if(this.enabled){var B=document.getElementsByTagName("script");
for(var C=0;
C<B.length;
C++){var D=B[C];
if(D.src&&D.src.match(/prototype\.js/)){var F=D.src.replace(/prototype\.js/,"");
var A=F+"log4javascript.js";
var E=new Ajax.Request(A,{method:"GET",asynchronous:false,onComplete:this.loaded.bind(this)});
return 
}}}},loaded:function(A){this.scriptResponse=A.responseText
}};
var log4javascript;
var logger;
InitLogger.load();
if(InitLogger.scriptResponse){try{eval(InitLogger.scriptResponse)
}catch(e){alert(e.description||e)
}}if(log4javascript&&!logger){logger=log4javascript.getDefaultLogger()
}else{log4javascript={isEnabled:function(){return false
}};
logger={fatal:function(){},error:function(){},warn:function(){},info:function(){},debug:function(){}}
}
function GISApplication(C,K){var F=this;
var B=null;
var A=C;
var L=null;
var E=null;
var D=null;
this.service=K;
var I=null;
var H=null;
var J=null;
var G=new Object();
this.initApplication=function(M,N,O,Q,R){logger.info("アプリケーションの初期化[initApplication]");
var P=this.callback_initApplication.bindAsEventListener(this,M,N,O,Q,R);
this.service.batchInit2(M,N,O,Q,P)
};
this.resumeApplication=function(M,N,O,Q){logger.info("アプリケーションの再開[resumeApplication]");
var P=this.service.batchInit3().result;
if(P[1].statusId!="success"||P[2].statusId!="success"||P[3].statusId!="success"){return false
}L=P[1].result;
E=P[2].result;
D=P[3].result;
return this.initCommon(M,N,O,Q)
};
this.initMenuItem=function(N,O){if(B){var M=new OperationMenu(B,B.configuration.operationMenu,O);
M.init(N)
}};
this.callback_initApplication=function(M,N,O,P,S,T){var Q=M.result;
if(M.statusId!="success"||null==Q||0==Q.length){alert("起動に失敗しました。");
return false
}if(Q[1].statusId!="success"){if(Q[1].statusId=="login"){this.service.logout();
location.href=A+Header.loginLink.href+"?url="+encodeURIComponent(location.href)
}else{alert("起動に失敗しました。")
}return false
}if(Q[2].statusId!="success"||Q[3].statusId!="success"||Q[4].statusId!="success"){return false
}L=Q[2].result;
E=Q[3].result;
D=Q[4].result;
var R=this.initCommon(N,O,P,T);
if(!R){alert("起動に失敗しました。")
}return R
};
this.beforeInit=function(){};
this.initCommon=function(M,N,O,P){if(this.initCommonImpl(M,N,O)){if(P){P()
}return true
}return false
};
this.initCommonImpl=function(M,N,O){logger.info("　[viewSetId="+M+",layerStateId="+N+",temporaryItemId="+O+"]");
G.viewSetId=M;
G.layerStateId=N;
G.temporaryItemId=O;
var P=this.initConfiguration();
B=new GIS(P,this.service);
logger.info("サーバから起動に必要な情報を取得...");
logger.info("クライアントの初期化(基本機能)...");
B.viewManager.init(L);
B.layerManager=new LayerManager(B);
logger.info("クライアントの初期化(追加機能)...");
B.timeManager=new TimeManager(B);
B.featureManager=new FeatureManager(B);
B.vectorManager=new VectorManager(B);
B.searchManager=new SearchManager(B);
B.measureManager=new MeasureManager(B);
B.memoManager=new MemoManager(B);
B.downloadManager=new DownloadManager(B);
B.layerManager.init(E);
B.timeManager.init(L,E);
B.featureManager.init(L);
B.vectorManager.init(L);
B.searchManager.init();
B.measureManager.init(L);
B.memoManager.init(L.style);
B.downloadManager.init();
J=new WindowManager(P.preview.window,this.initPreview.bind(this));
logger.info("クライアントの初期化(その他)...");
this.initMap();
B.viewManager.onclickInScrollCallback=this.searchPoint.bind(this);
B.eventHandler.addEventListener(LiteEvent.LAYER_STATE_CHANGE,this.updateLayer.bind(this));
B.eventHandler.addEventListener(LiteEvent.VIEW_CHANGE,this.viewChangedListener.bind(this));
B.eventHandler.addEventListener(LiteEvent.THEMATIC_RASTER_CLEAR,this.thematicRasterClear.bind(this));
B.eventHandler.addEventListener(LiteEvent.THEMATIC_RASTER_DRAWED,this.thematicRasterDrawed.bind(this));
B.eventHandler.addEventListener(LiteEvent.TEMPORARY_ITEM_STATE_CHANGE,this.temporaryItemIdChanged.bind(this));
B.eventHandler.addEventListener(LiteEvent.HIGHLIGHT_CHANGE,this.highlightChanged.bind(this));
B.eventHandler.addEventListener(LiteEvent.SCALE_CHANGE,this.scaleChanged.bind(this));
B.eventHandler.addEventListener(LiteEvent.AREA_SEARCH_MODE_CHANGE,this.areaSearchModeChanged.bind(this));
B.eventHandler.addEventListener(LiteEvent.UNLOAD,J.close.bind(J));
return true
};
this.initConfiguration=function(){var M=new Config();
M.prefix="K_";
M.mapFrameId="mapFrame";
M.loadingId="loading";
M.transparentImageUrl=A+"/jsp/image/spacer.gif";
M.loadingImageUrl=A+"/jsp/image/spacer.gif";
M.thematicMapReloadDelay=1000;
M.backImageReloadDelay=1000;
M.drawPanel={className:"drawPanel",titleClassName:"title",hintCloseImgUrl:A+"/jsp/lite/image/hint_close.png",hintOpenImgUrl:A+"/jsp/lite/image/hint_open.png",contentClassName:"content",hintClassName:"drawPanelHint",hint:{MEMO_ICON:{title:"目印の作図",message:"地図上でクリックしてください。",link:A+"/jsp/lite/manual/manual.html#a1"},MEMO_POLYLINE:{title:"線の作図",message:"線の頂点を順に地図上でクリックしてください。ダブルクリックで確定します。",link:A+"/jsp/lite/manual/manual.html#a2"},MEMO_RECT:{title:"面（長方形）の作図",message:"長方形の２つの頂点を順に地図上でクリックしてください。",link:A+"/jsp/lite/manual/manual.html#a3"},MEMO_CIRCLE:{title:"面（円）の作図",message:"円の中心、円周の順に地図上でクリックしてください。",link:A+"/jsp/lite/manual/manual.html#a4"},MEMO_POLYGON:{title:"面（多角形）の作図",message:"多角形の頂点を順に地図上でクリックしてください。ダブルクリックで確定します。",link:A+"/jsp/lite/manual/manual.html#a5"},MEMO_TEXT:{title:"文字の作図",message:"地図上でクリックしてください。",link:A+"/jsp/lite/manual/manual.html#a6"},MEMO_CLEAR:{title:"選んでクリア",message:"地図上でクリックしてください。",link:A+"/jsp/lite/manual/manual.html#a7"},MEASURE_LENGTH:{title:"距離の計測",message:"線の頂点を順に地図上でクリックしてください。ダブルクリックで確定します。",link:A+"/jsp/lite/manual/manual.html#a8"},MEASURE_AREA:{title:"面積の計測",message:"多角形の頂点を順に地図上でクリックしてください。ダブルクリックで確定します。",link:A+"/jsp/lite/manual/manual.html#a9"},FEATURE_POINT:{title:"目印の作図",message:"地図上でクリックしてください。",link:A+"/jsp/lite/manual/manual.html#a10"},FEATURE_POLYLINE:{title:"線の作図",message:"線の頂点を順に地図上でクリックしてください。ダブルクリックで確定します。",link:A+"/jsp/lite/manual/manual.html#a11"},FEATURE_RECT:{title:"面（長方形）の作図",message:"長方形の２つの頂点を順に地図上でクリックしてください。",link:A+"/jsp/lite/manual/manual.html#a12"},FEATURE_CIRCLE:{title:"面（円）の作図",message:"円の中心、円周の順に地図上でクリックしてください。",link:A+"/jsp/lite/manual/manual.html#a13"},FEATURE_POLYGON:{title:"面（多角形）の作図",message:"多角形の頂点を順に地図上でクリックしてください。ダブルクリックで確定します。",link:A+"/jsp/lite/manual/manual.html#a14"},FEATURE_TEXT:{title:"文字の作図",message:"地図上でクリックしてください。",link:A+"/jsp/lite/manual/manual.html#a15"},SEARCH_RECT:{title:"面（長方形）の作図",message:"長方形の２つの頂点を順に地図上でクリックしてください。",link:A+"/jsp/lite/manual/manual.html#a16"},SEARCH_CIRCLE:{title:"面（円）の作図",message:"円の中心、円周の順に地図上でクリックしてください。",link:A+"/jsp/lite/manual/manual.html#a17"},SEARCH_POLYGON:{title:"面（多角形）の作図",message:"多角形の頂点を順に地図上でクリックしてください。ダブルクリックで確定します。",link:A+"/jsp/lite/manual/manual.html#a18"}}};
M.linkDisableClass="aDisable";
M.mapBottomId="mapBottom";
M.mapurl_cookie_key=AppConfig.COOKIE_MAPURL;
M.search_cookie_key=AppConfig.COOKIE_SEARCH_CONDITION;
M.layer={button:{className:"layerTuggle",onClassName:"tuggle_on",offClassName:"tuggle_off",legendPanelClassName:"tuggle_legend",legendPanelOffInterval:1000},tree:{targetId:"layer",treeClassName:"layerTree",updateButtonCaption:"更新",editButtonUrl:A+"/jsp/lite/image/feature_edit.png",uploadButtonUrl:A+"/jsp/lite/image/upload.png",dispBunrui1:0,dispBunrui2:0,dispBunrui3:1,dispBunrui4:1}};
M.time={layerInfo:{targetId:"headerLayerInfo",iconSrc:A+"/jsp/lite/image/info.gif",messegePanel:{className:"messagePanel",titleClassName:"title",contentClassName:"content",closeImgUrl:A+"/jsp/lite/image/message_close.png",message:{linkClick:"■ リンクをクリックして地図表示時点の日付を設定できます。",outerPeriod:"○ 以下のレイヤは、公開期間外のため表示されません。",resultPrefix:"　　　・ ",timeFeature:"○ 以下のレイヤの一部図形は、有効期間外のため表示されない可能性があります。",notFound:"　　　(対象レイヤは存在しません)"}},firstOpen:false},targetId:"headerTime",window:{url:A+"/jsp/calendar.html?v=2.2.7",target:"calendar",param:"width=250,height=150,scrollbars=yes,resizable=yes"}};
M.locationSearch={searchDivId:"locationSearch",facilityPref:"facility_",facilityDefCate:"分類$NUM$",facilityOrgCate:["大分類","小分類","名称"],maxCntByPage:10,maxCntByList:1000,iconViewTime:10000,targetIcon:{src:A+"/jsp/lite/image/search_target.gif",width:29,height:29,baseX:15,baseY:15},keywordHighlightClassName:""};
M.vector={circumference:{targetId:"feature",numPerPage:5,highlightClassName:"circumferenceHighlight"},poi:{poiClassName:"vectorPOI",poiOffClassName:"mainViewPoiOff",poiList:{className:"poiList",firstTimerInterval:3000,timerInterval:500,offsetX:10,offsetY:0},icon:{src:A+"/jsp/lite/image/poiIcon.gif",point:A+"/jsp/lite/image/poiIcon_point.gif",click:A+"/jsp/lite/image/poiIcon_click.gif",width:32,height:32,baseX:16,baseY:16}},click:{poi:VectorClick.ATTRIBUTE,circumference:VectorClick.BOTH,moveCenterInterval:-1,showAttributeInterval:3000},pointDisabled:false,condition:{className:{body:"conditionBody",list:"conditionList",scrollList:"conditionScrollList",activePanel:"conditionPanelActive",titleLink:"conditionTitleLink",selectLK:"conditionSelectLK"},scrollTo:{from:0,to:1,fps:60,duration:2},defaultSearchCondition:{Layer:"NOTHING",AreaType:"EXTENT"}}};
M.feature={clickable:{target:"clickable",param:"width=420,height=500,scrollbars=yes,resizable=yes"},type:WindowType.DIV,divId:"attr2",divClass:"attrBody",title:{className:"attrTitle",titleValue:"情報の表示",titleEditValue:"情報の編集"},message:{beforeSearch:"地図をクリックすると、<br>その地点の情報が表示されます。",result0:"クリック地点に、表示する<br>情報がありませんでした。"},table:{layerNameClass:"attrLayerName",tableClass:"attrTable",headerClass:"attrHeader",nameCellClass:"attrCell attrNameCell",valueCellClass:"attrCell attrValueCell",timeNameClass:"attrTimeName",timeTableClass:"timeAttrTable",timeNameCellClass:"timeAttrCell timeAttrNameCell",timeValueCellClass:"timeAttrCell timeAttrValueCell",timeEditNameCellClass:"timeAttrCell timeAttrEditNameCell",timeEditValueCellClass:"timeAttrCell timeAttrEditValueCell",requiredValue:"(*)",requiredValueClassName:"attrRequired",invalidTrClassName:"attrInvalidRow",invalidMessageClassName:"attrInvalidMessage"},button:{className:"attrBtnPanel",btnClass:"attrBtn"},icon:{src:A+"/jsp/lite/image/pin.gif",width:18,height:31,baseX:4,baseY:30},page:{className:"attrPage"},isAutoCancel:false};
M.style={pointHighlight:"pointHighlight",highlight:"highlight",partClassName:"part",partContentClassName:"partContent",descriptionClassName:"description",buttonPartClassName:"buttonPart",okButtonClassName:"button",cancelButtonClassName:"button",iconCategoryClassName:"iconCategoryContent",iconTableClassName:"iconTable",lineTypeTableClassName:"lineTypeTable",colorTableClassName:"colorTable",areaTypeTableClassName:"areaTypeTable",textFieldClassName:"text",textSizeTableClassName:"textSizeTable",imageLoadCheckInterval:2000};
M.featureEdit={window:{url:A+"/jsp/lite/template.jsp",target:"spatial",param:"scrollbars=yes,resizable=yes"},divId:"content",cssUrl:A+"/jsp/lite/css/style.css",styleDivClassName:"styleDiv",windowSize:{point:{width:480,height:580},area:{width:480,height:240},text:{width:480,height:180}}};
M.memo={window:{url:A+"/jsp/lite/template.jsp",target:"memo",param:"width=400,height=470,scrollbars=yes,resizable=yes"},divId:"content",cssUrl:A+"/jsp/lite/css/style.css",tabMenuClassName:"tabMenu",tabMenuSelectedClassName:"tabMenuSelected",styleDivClassName:"styleDiv",textSize:[10,16,24],iconSize:32,areaTransparency:0.5};
M.operationMenu={menuTableClassName:"menuTable",menuItemClassName:"menuItem",subMenuClassName:"subMenuItem"};
M.zoombar={targetId:"zoombar",type:ScaleBarType.SLIDER,extentButtonClassName:"extent",scaleButtonClassName:"scale",zoomButtonClassName:"zoom",button:{image:{baseURL:A+"/jsp/lite/image/",extent:"scale_extent_off.gif",scaleOn:"scale_$VALUE$_on.png",scaleOff:"scale_$VALUE$_off.png",zoomInOn:"scale_zoomin_on.png",zoomInOff:"scale_zoomin_off.png",zoomOutOn:"scale_zoomout_on.png",zoomOutOff:"scale_zoomout_off.png"}},slider:{cursor:"pointer",image:{width:48,baseURL:A+"/jsp/lite/image/",tag:{height:10,src:"slider_scal_$VALUE$.gif"},bar:{height:11,srcLeft:"slider_left.gif",srcCenter:"slider_center.gif",srcRight:"slider_right.gif"},handle:{left:19,top:9,width:11,height:13,src:"slider_handle.gif"}}}};
M.mapUrlId="bookmarkUrl";
M.commentId="comment";
M.viewSetNameId="viewSetName";
M.copyrightId="copyright";
M.copyrightClassName="copyright";
M.scalebarId="scalebar";
M.scalebarClassName="scalebar";
M.scalebarUrlTemplate=A+"/jsp/lite/image/scalebar_$SCALE$.gif";
M.directionId="direction";
M.directionClassName="direction";
M.directionUrl=A+"/jsp/lite/image/direction.gif";
M.move8={id:"move8",enablekey:true,ratio:25,interval:50,type:Move8Type.CLICKABLE,clickableParam:{url:A+"/jsp/lite/image/8move.gif",areas:{tl:{shape:"rect",coords:" 0, 0,16,16"},tc:{shape:"rect",coords:"16, 0,32,16"},tr:{shape:"rect",coords:"32, 0,48,16"},ml:{shape:"rect",coords:" 0,16,16,32"},mr:{shape:"rect",coords:"32,16,48,32"},bl:{shape:"rect",coords:" 0,32,16,48"},bc:{shape:"rect",coords:"16,32,32,48"},br:{shape:"rect",coords:"32,32,48,48"}}},separateParam:{urlTemplate:A+"/jsp/lite/image/8move_$DIRECTION$.gif",width:16,height:16}};
M.guideMap={id:"indexMap",width:181,height:181,guide:{color:"#0000ff",opacity:0.5,image:A+"/jsp/lite/script/guide/image/guide.gif"},mesh:{loadingImage:A+"/jsp/lite/script/guide/image/loading.gif",noImage:A+"/jsp/lite/script/guide/image/noimage.gif",blankImage:A+"/jsp/lite/script/guide/image/blank.gif"},N:3};
M.showComment=true;
M.showScalebar=true;
M.showCopyright=true;
M.showMove8=true;
M.showDirection=true;
M.showGuideMap=true;
M.infoPage={target:"infoPage",param:"width=450,height=500,scrollbars=yes,resizable=yes",servletPath:A+"/lite/ThematicInfo"};
M.pageLoadCheckInterval=300;
M.pageLoadCheckCount=20;
M.download={type:"window",window:{url:A+"/faces/jsp/parts/print/print.jsp",target:"print",param:"width=500,height=260,scrollbars=yes,resizable=yes"}};
M.preview={window:{url:A+"/faces/jsp/lite/preview.jsp",target:"preview",param:"scrollbars=yes,resizable=yes"}};
return M
};
this.initViewByBoundingBox=function(P,O,N,M){logger.info("　範囲指定[xmin="+P+",ymin="+O+",xmax="+N+",ymax="+M+"]");
this.resizeMap(true);
B.viewManager.initViewByBoundingBox(P,O,N,M)
};
this.initViewByCenterAndScale=function(M,O,N){logger.info("　中心＆縮尺指定[x="+M+",y="+O+",scale="+N+"]");
this.resizeMap(true);
B.viewManager.initViewByCenterAndScale(M,O,N)
};
this.initMap=function(){var Q=$(B.configuration.mapFrameId);
var X=$(B.configuration.viewSetNameId);
if(X){var P=document.createTextNode(E.caption);
X.appendChild(P)
}I=new Scale(B.configuration.zoombar);
I.onViewExtent=this.viewExtent.bind(this);
I.onZoomIn=this.zoomIn.bind(this);
I.onZoomOut=this.zoomOut.bind(this);
I.onScaleChange=this.scaleChange.bind(this);
var W=this.getAvailableScales();
I.init(W);
if(E){var M=document.createElement("div");
M.id=B.configuration.copyrightId;
M.className=B.configuration.copyrightClassName;
M.style.zIndex="30";
M.innerHTML=E.copyright;
this.setVisibleCopyright(B.configuration.showCopyright);
Q.appendChild(M)
}var U=document.createElement("img");
U.id=B.configuration.scalebarId;
U.className=B.configuration.scalebarClassName;
U.style.zIndex="30";
U.galleryImg="no";
this.setVisibleScalebar(B.configuration.showScalebar);
Q.appendChild(U);
var V=new Move(this.move.bind(this));
V.init(Q,B.configuration.move8);
this.setVisibleMove8(B.configuration.showMove8);
var O=document.createElement("img");
O.id=B.configuration.directionId;
O.className=B.configuration.directionClassName;
O.style.zIndex="30";
O.galleryImg="no";
O.src=B.configuration.directionUrl;
this.setVisibleDirection(B.configuration.showDirection);
Q.appendChild(O);
var R=$(B.configuration.commentId);
if(R){R.innerHTML=E.comment;
if(!B.configuration.showComment){hide(R)
}}var T=$(B.configuration.guideMap.id);
if(T&&B.configuration.showGuideMap){var N=B.configuration.guideMap;
var S=L.scaleInfo;
var Z=this.moveCenter.bind(this);
H=new GuideMap(N,S,Z);
this.updateGuideMapLayer()
}var Y=$(B.configuration.mapUrlId);
if(Y){Y.readonly="readonly"
}this.createDrawPanel()
};
this.createDrawPanel=function(){var M=$(B.configuration.layer.button.targetId);
if(M){var O=Element.Methods.getDimensions(M);
var P=Position.positionedOffset(M);
var N=P[1]+O.height+10;
B.viewManager.createDrawPanel(10,N)
}else{B.viewManager.createDrawPanel(10,10)
}};
this.getAvailableScales=function(){var O=new Array();
if(L&&L.scaleInfo){var M=L.scaleInfo;
for(var N=0;
N<M.length;
N++){if(!M[N].guideOnly){O[O.length]=M[N].scale
}}}return O
};
this.viewExtent=function(){B.viewManager.clearThematicRaster();
B.viewManager.clearBackground();
if(E){var M=E.extent;
B.viewManager.initViewByBoundingBox(M.xmin,M.ymin,M.xmax,M.ymax)
}};
this.scaleChange=function(M){B.viewManager.scaleChange(M)
};
this.zoomIn=function(){B.viewManager.zoomIn()
};
this.zoomOut=function(){B.viewManager.zoomOut()
};
this.scaleChanged=function(){if(B.configuration.feature.isAutoCancel){B.featureManager.innerCloseAttrDetailByUIImpl(false)
}B.viewManager.reloadBackgroundMap()
};
this.moveCenter=function(M,N){B.viewManager.moveCenter(M,N);
this.refresh()
};
this.move=function(M,N){B.viewManager.moveByOffset(M,N)
};
this.updateLayer=function(N,O){if(N&&N.length>0){var M=this.service.notifyLayerState(N);
if(M.statusId=="success"){G.layerStateId=M.result
}else{alert("レイヤの更新に失敗しました。")
}B.featureManager.layerStateChanged(N);
if(O){B.viewManager.refreshForBackLayer();
this.updateMapUrl()
}else{this.refresh()
}this.notifyPreview(N)
}};
this.searchPoint=function(N,P){if(B.viewManager.isBlocking()){return 
}var O=B.viewManager.currentView.scale;
var M=B.viewManager.calcXYPoint(N,P);
B.featureManager.searchPoint(M,O)
};
this.viewChangedListener=function(M){this.updateGuideMap();
I.update(M);
this.updateScalebar()
};
this.thematicRasterDrawed=function(){B.viewManager.refreshForBackLayer();
var M=B.layerManager.isViewThematicVecter();
if(M){B.vectorManager.drawThematicVector()
}else{B.vectorManager.clearCircumference()
}B.featureManager.drawIcon();
B.searchManager.adjustTargetIcon();
this.updateMapUrl()
};
this.thematicRasterClear=function(){B.vectorManager.clearThematicVector()
};
this.temporaryItemIdChanged=function(M){G.temporaryItemId=M;
this.updateMapUrl();
this.notifyPreview(true,null)
};
this.highlightChanged=function(){this.notifyPreview(true,null)
};
this.areaSearchModeChanged=function(){this.notifyPreview(false,null)
};
this.notifyPreview=function(O,M){var N={redrawRaster:O,viewLayers:M,searchPoint:B.featureManager.getIconPosition(),clickVector:B.vectorManager.getClickVector(),invisibleVector:B.vectorManager.isSearchConditionMode()};
J.notify(N)
};
this.initPreview=function(){var M=J.getWindow();
if(M.attachEvent){M.attachEvent("onload",this.notifyPreview.bind(this,false,null))
}if(M.addEventListener){M.addEventListener("load",this.notifyPreview.bind(this,false,null),false)
}this.notifyPreview(false,null)
};
this.refresh=function(M){setTimeout(B.viewManager.refresh.bind(B.viewManager,M),0)
};
this.updateMapUrl=function(){var U=$(B.configuration.mapUrlId);
var R=B.viewManager.currentView;
var S=R.getCenterX();
var Q=R.getCenterY();
var P=R.scale;
var O=B.timeManager.getTime();
var N=this.getMapUrl();
if(U&&N){U.value=N
}var M=new Object();
M.x=S;
M.y=Q;
M.s=P;
M.id=G.viewSetId;
if(G.layerStateId){M.l=G.layerStateId
}if(G.temporaryItemId){M.t=G.temporaryItemId
}if(G.viewSetId.startsWith("1_")&&O){M.d=O
}var T=object2String(M);
setCookie(B.configuration.mapurl_cookie_key,T,null,"/")
};
this.getMapUrl=function(){if(L.mapUrl){var N=B.viewManager.currentView;
var M=N.getCenterX();
var S=N.getCenterY();
var Q=N.scale;
var P=B.timeManager.getTime();
var O=L.mapUrl;
O+="?id="+G.viewSetId;
O+="&x="+M+"&y="+S+"&s="+Q;
if(G.layerStateId){O+="&l="+G.layerStateId
}if(G.temporaryItemId){O+="&t="+G.temporaryItemId
}if(G.viewSetId.startsWith("1_")&&P){O+="&d="+P
}var R=getRequestParameter("groupId");
if(R){O+="&groupId="+R
}return O
}return null
};
this.changeTheme=function(O){if(L.mapUrl){var N=B.viewManager.currentView;
var M=N.getCenterX();
var S=N.getCenterY();
var R=N.scale;
var Q=B.timeManager.getTime();
var P=L.mapUrl.replace(/http:\/\/[^\/]+\//,location.protocol+"//"+location.host+"/");
P+="?id="+O;
P+="&x="+M+"&y="+S+"&s="+R;
if(G.temporaryItemId){P+="&t="+G.temporaryItemId
}if(G.viewSetId.startsWith("1_")&&Q){P+="&d="+Q
}location.replace(P)
}};
this.mailToMapUrl=function(){var M=this.getMapUrl();
if(M){return"mailto:?body="+encodeURIComponent(M)
}return null
};
this.qrMapUrl=function(){var M=this.getMapUrl();
if(M){return A+"/lite/qr?text="+encodeURIComponent(M)
}return null
};
this.saveStartState=function(){if(window.confirm("現在のレイヤ状態と表示範囲を表示セットの初期状態に設定してもよいですか？")){var O=B.viewManager.currentView.getBoundingBox();
var N=G.layerStateId;
var M=B.service.saveStartState(O,N);
if(M.statusId=="success"){window.alert("表示セットの初期状態を設定しました。")
}else{window.alert("表示セットの初期状態設定に失敗しました。")
}}else{window.alert("キャンセルされました。")
}};
this.updateGuideMapLayer=function(){if(H){var M;
var O=B.layerManager.getBgLayers();
for(var N=0;
N<O.length;
N++){if(O[N].visible){if(M&&M.drawNo>O[N].drawNo){continue
}M=O[N]
}}if(M){H.updateLayer(M)
}}};
this.updateGuideMap=function(){if(H){var M=B.viewManager.currentView;
H.update(M)
}};
this.updateScalebar=function(){var N=$(B.configuration.scalebarId);
if(N){var M=B.configuration.scalebarUrlTemplate;
M=M.replace("$SCALE$",B.viewManager.currentView.scale);
N.src=M
}};
this.resizeMap=function(M){var U=$(B.configuration.mapFrameId);
var X=$(B.configuration.mapBottomId);
var b=Position.cumulativeOffset(U);
var O=b[0];
var Y=b[1];
var P=getInsideWindowWidth();
var R=getInsideWindowHeight();
var W=Element.Methods.getDimensions(X).height;
var Q=10;
var N=P-O-Q;
var a=R-Y-W;
U.style.height=a+"px";
U.style.width=N+"px";
X.style.width=N+"px";
var T=Element.Methods.getDimensions(U);
var Z=T.width-N;
var V=T.height-a;
if(Z!=0||V!=0){var S=10;
a=a-V-S;
N=N-Z-S;
U.style.height=a+"px";
U.style.width=N+"px";
X.style.width=N+"px"
}if(M){this.resizeMap(false)
}};
this.resizeHandler=function(){var M=window.onresize;
window.onresize=null;
this.resizeMap(true);
B.viewManager.resize();
window.onresize=M
};
this.getServiceMetadata=function(){return L
};
this.getViewSet=function(){return E
};
this.download=function(){B.downloadManager.download()
};
this.enqaute=function(){if(L.mailFormUrl){if(G.temporaryItemId==null){alert("メモが作成されていません。");
return 
}window.location.href=L.mailFormUrl
}};
this.preview=function(){J.open()
};
this.addMemoIcon=function(){B.memoManager.addMemo(MemoType.ICON)
};
this.addMemoLine=function(){B.memoManager.addMemo(MemoType.LINE)
};
this.addMemoArea=function(){B.memoManager.addMemo(MemoType.AREA)
};
this.addMemoText=function(){B.memoManager.addMemo(MemoType.TEXT)
};
this.removeMemo=function(){B.memoManager.removeMemo()
};
this.clearMemo=function(){B.memoManager.clearMemo()
};
this.measureLength=function(){B.measureManager.startDrawLength()
};
this.measureArea=function(){B.measureManager.startDrawArea()
};
this.clearMeasure=function(){B.measureManager.erazeDrawResult()
};
this.setVisible=function(M,N){var M=$(M);
if(M){if(N){show(M)
}else{hide(M)
}}};
this.setVisibleCopyright=function(M){this.setVisible(B.configuration.copyrightId,M)
};
this.setVisibleScalebar=function(M){this.setVisible(B.configuration.scalebarId,M)
};
this.setVisibleDirection=function(M){this.setVisible(B.configuration.directionId,M)
};
this.setVisibleMove8=function(M){this.setVisible(B.configuration.move8.id,M)
};
this.setVisibleScaleSlider=function(M){I.setVisible(M)
};
this.setVisibleGuideMap=function(M){H.setVisible(M)
};
this.changeLayerSapporo=function(N){document.getElementById("sapporo-1").checked=false;
document.getElementById("sapporo-2").checked=false;
document.getElementById("sapporo-3").checked=false;
document.getElementById("sapporo-4").checked=false;
document.getElementById("sapporo-5").checked=false;
document.getElementById("sapporo-6").checked=false;
document.getElementById("sapporo-7").checked=false;
document.getElementById("sapporo-8").checked=false;
document.getElementById("sapporo-"+N).checked=true;
var M=new Array();
var O=false;
switch(N){case 1:M[0]=new ViewLayer("4:l_toshiH20-0-0-0-0",false);
M[1]=new ViewLayer("4:l_toshiH20-0-0-0-1",false);
M[2]=new ViewLayer("4:l_toshiH20-0-0-0-2",false);
M[3]=new ViewLayer("4:l_toshiH20-0-0-0-3",false);
M[4]=new ViewLayer("4:l_toshiH20-0-0-0-4",false);
M[5]=new ViewLayer("4:l_toshiH20-0-0-0-5",false);
M[6]=new ViewLayer("4:l_toshiH20-0-0-0-6",false);
M[7]=new ViewLayer("4:l_toshiH20-0-0-0-7",true);
M[8]=new ViewLayer("4:index-0-0-0-0",true);
M[9]=new ViewLayer("4:l_SETAGAYA_BACK-1-0-0-0",true);
break;
case 2:M[0]=new ViewLayer("4:l_toshiH20-0-0-0-0",true);
M[1]=new ViewLayer("4:l_toshiH20-0-0-0-1",false);
M[2]=new ViewLayer("4:l_toshiH20-0-0-0-2",false);
M[3]=new ViewLayer("4:l_toshiH20-0-0-0-3",false);
M[4]=new ViewLayer("4:l_toshiH20-0-0-0-4",false);
M[5]=new ViewLayer("4:l_toshiH20-0-0-0-5",false);
M[6]=new ViewLayer("4:l_toshiH20-0-0-0-6",false);
M[7]=new ViewLayer("4:l_toshiH20-0-0-0-7",true);
M[8]=new ViewLayer("4:index-0-0-0-0",true);
M[9]=new ViewLayer("4:l_SETAGAYA_BACK-1-0-0-0",true);
break;
case 3:M[0]=new ViewLayer("4:l_toshiH20-0-0-0-0",false);
M[1]=new ViewLayer("4:l_toshiH20-0-0-0-1",true);
M[2]=new ViewLayer("4:l_toshiH20-0-0-0-2",false);
M[3]=new ViewLayer("4:l_toshiH20-0-0-0-3",false);
M[4]=new ViewLayer("4:l_toshiH20-0-0-0-4",false);
M[5]=new ViewLayer("4:l_toshiH20-0-0-0-5",false);
M[6]=new ViewLayer("4:l_toshiH20-0-0-0-6",false);
M[7]=new ViewLayer("4:l_toshiH20-0-0-0-7",true);
M[8]=new ViewLayer("4:index-0-0-0-0",true);
M[9]=new ViewLayer("4:l_SETAGAYA_BACK-1-0-0-0",true);
break;
case 4:M[0]=new ViewLayer("4:l_toshiH20-0-0-0-0",false);
M[1]=new ViewLayer("4:l_toshiH20-0-0-0-1",false);
M[2]=new ViewLayer("4:l_toshiH20-0-0-0-2",true);
M[3]=new ViewLayer("4:l_toshiH20-0-0-0-3",false);
M[4]=new ViewLayer("4:l_toshiH20-0-0-0-4",false);
M[5]=new ViewLayer("4:l_toshiH20-0-0-0-5",false);
M[6]=new ViewLayer("4:l_toshiH20-0-0-0-6",false);
M[7]=new ViewLayer("4:l_toshiH20-0-0-0-7",true);
M[8]=new ViewLayer("4:index-0-0-0-0",true);
M[9]=new ViewLayer("4:l_SETAGAYA_BACK-1-0-0-0",true);
break;
case 5:M[0]=new ViewLayer("4:l_toshiH20-0-0-0-0",false);
M[1]=new ViewLayer("4:l_toshiH20-0-0-0-1",false);
M[2]=new ViewLayer("4:l_toshiH20-0-0-0-2",false);
M[3]=new ViewLayer("4:l_toshiH20-0-0-0-3",true);
M[4]=new ViewLayer("4:l_toshiH20-0-0-0-4",false);
M[5]=new ViewLayer("4:l_toshiH20-0-0-0-5",false);
M[6]=new ViewLayer("4:l_toshiH20-0-0-0-6",false);
M[7]=new ViewLayer("4:l_toshiH20-0-0-0-7",true);
M[8]=new ViewLayer("4:index-0-0-0-0",true);
M[9]=new ViewLayer("4:l_SETAGAYA_BACK-1-0-0-0",true);
break;
case 6:M[0]=new ViewLayer("4:l_toshiH20-0-0-0-0",false);
M[1]=new ViewLayer("4:l_toshiH20-0-0-0-1",false);
M[2]=new ViewLayer("4:l_toshiH20-0-0-0-2",false);
M[3]=new ViewLayer("4:l_toshiH20-0-0-0-3",false);
M[4]=new ViewLayer("4:l_toshiH20-0-0-0-4",true);
M[5]=new ViewLayer("4:l_toshiH20-0-0-0-5",false);
M[6]=new ViewLayer("4:l_toshiH20-0-0-0-6",false);
M[7]=new ViewLayer("4:l_toshiH20-0-0-0-7",true);
M[8]=new ViewLayer("4:index-0-0-0-0",true);
M[9]=new ViewLayer("4:l_SETAGAYA_BACK-1-0-0-0",true);
break;
case 7:M[0]=new ViewLayer("4:l_toshiH20-0-0-0-0",false);
M[1]=new ViewLayer("4:l_toshiH20-0-0-0-1",false);
M[2]=new ViewLayer("4:l_toshiH20-0-0-0-2",false);
M[3]=new ViewLayer("4:l_toshiH20-0-0-0-3",false);
M[4]=new ViewLayer("4:l_toshiH20-0-0-0-4",false);
M[5]=new ViewLayer("4:l_toshiH20-0-0-0-5",true);
M[6]=new ViewLayer("4:l_toshiH20-0-0-0-6",false);
M[7]=new ViewLayer("4:l_toshiH20-0-0-0-7",true);
M[8]=new ViewLayer("4:index-0-0-0-0",true);
M[9]=new ViewLayer("4:l_SETAGAYA_BACK-1-0-0-0",true);
break
case 8:M[0]=new ViewLayer("4:l_toshiH20-0-0-0-0",false);
M[1]=new ViewLayer("4:l_toshiH20-0-0-0-1",false);
M[2]=new ViewLayer("4:l_toshiH20-0-0-0-2",false);
M[3]=new ViewLayer("4:l_toshiH20-0-0-0-3",false);
M[4]=new ViewLayer("4:l_toshiH20-0-0-0-4",false);
M[5]=new ViewLayer("4:l_toshiH20-0-0-0-5",false);
M[6]=new ViewLayer("4:l_toshiH20-0-0-0-6",true);
M[7]=new ViewLayer("4:l_toshiH20-0-0-0-7",true);
M[8]=new ViewLayer("4:index-0-0-0-0",true);
M[9]=new ViewLayer("4:l_SETAGAYA_BACK-1-0-0-0",true);
break
}this.updateLayer(M,O)
}
};
var MenuItem=Class.create();
MenuItem.prototype={initialize:function(C,D,B,E,A){this.caption=B;
this.url=C;
this.callback=E;
this.subMenu=A;
this.url2=D
}};
function OperationMenu(G,C,H){var B=G;
var F=C;
var A=H;
var E;
var D;
this.init=function(N){var M=$(A);
if(!M||!N||N.length==0){return 
}var P=document.createElement("table");
P.className=F.menuTableClassName;
var L=document.createElement("tbody");
P.appendChild(L);
var O=document.createElement("tr");
L.appendChild(O);
for(var K=0;
K<N.length;
K++){var J=document.createElement("td");
O.appendChild(J);
var Q=N[K];
var I=document.createElement("img");
I.src=Q.url;
I.alt=Q.caption;
I.title=Q.caption;
if(Q.subMenu&&Q.subMenu.length>0){I.className=F.subMenuClassName;
I.onmouseover=this.showSubMenu.bind(this,I,Q);
I.onmouseout=this.beginHideSubMenuTimer.bind(this)
}else{I.onclick=Q.callback;
I.className=F.menuItemClassName;
I.onmouseover=this.hideSubMenu.bind(this)
}J.appendChild(I)
}M.appendChild(P);
E=document.createElement("div");
E.style.position="absolute";
E.style.zIndex=9999;
E.onmouseout=this.beginHideSubMenuTimer.bind(this);
E.onmouseover=this.clearHideSubMenuTimer.bind(this);
E.onclick=this.hideSubMenu.bind(this);
Element.Methods.hide(E);
document.body.appendChild(E)
};
this.showSubMenu=function(O,P){this.hideSubMenu();
for(var M=0;
M<P.subMenu.length;
M++){var I=P.subMenu[M];
var J=document.createElement("img");
J.src=I.url;
J.alt=I.caption;
J.title=I.caption;
J.onclick=I.callback;
J.onmouseover=this.imageHilght.bind(this,J,I);
J.onmouseout=this.imageHilghtOff.bind(this,J,I);
J.className=F.menuItemClassName;
J.style.display="block";
E.appendChild(J)
}var Q=Position.cumulativeOffset(O);
var K=Q[0];
var N=Q[1];
var L=Element.Methods.getDimensions(O);
E.style.left=K+"px";
E.style.top=(N+L.height)+"px";
Element.Methods.show(E)
};
this.imageHilght=function(I,J){if(J.url2!=""){I.src=J.url2
}};
this.imageHilghtOff=function(I,J){I.src=J.url
};
this.hideSubMenu=function(){this.clearHideSubMenuTimer();
Element.Methods.hide(E);
E.innerHTML=""
};
this.clearHideSubMenuTimer=function(){if(D!=null){window.clearTimeout(D);
D=null
}};
this.beginHideSubMenuTimer=function(){this.clearHideSubMenuTimer();
D=window.setTimeout(this.hideSubMenu.bind(this),500)
}
}function Preview(D,E){var B=D;
var L=E;
var C;
var M;
var F;
var I;
var K;
var H;
var G;
var A;
var J=false;
this.initConfiguration=function(){var N=new Config();
N.prefix="K_";
N.mapFrameId="mapFrame";
N.transparentImageUrl=B+"/jsp/image/spacer.gif";
N.loadingImageUrl=B+"/jsp/image/spacer.gif";
N.thematicMapReloadDelay=1000;
N.backImageReloadDelay=1000;
N.print={printMapFrameId:"printMapFrame",scaleTextId:"scaleText",headerId:"header",searchIcon:true};
N.viewSetNameId="viewSetName";
N.copyrightClassName="copyright";
N.directionClassName="direction";
N.directionUrl=B+"/jsp/lite/image/direction.gif";
N.scalebarId="scalebar";
N.scalebarClassName="scalebar";
N.scalebarUrlTemplate=B+"/jsp/lite/image/scalebar_$SCALE$.gif";
N.zoombar={targetId:"zoombar",type:ScaleBarType.SLIDER,extentButtonClassName:"extent",scaleButtonClassName:"scale",zoomButtonClassName:"zoom",button:{image:{baseURL:B+"/jsp/lite/image/",extent:"scale_extent_off.gif",scaleOn:"scale_$VALUE$_on.png",scaleOff:"scale_$VALUE$_off.png",zoomInOn:"scale_zoomin_on.png",zoomInOff:"scale_zoomin_off.png",zoomOutOn:"scale_zoomout_on.png",zoomOutOff:"scale_zoomout_off.png"}},slider:{cursor:"pointer",image:{width:48,baseURL:B+"/jsp/lite/image/",tag:{height:10,src:"slider_scal_$VALUE$.gif"},bar:{height:11,srcLeft:"slider_left.gif",srcCenter:"slider_center.gif",srcRight:"slider_right.gif"},handle:{left:19,top:9,width:11,height:13,src:"slider_handle.gif"}}}};
N.move8={id:"move8",enablekey:true,ratio:25,interval:50,type:Move8Type.CLICKABLE,clickableParam:{url:B+"/jsp/lite/image/8move.gif",areas:{tl:{shape:"rect",coords:" 0, 0,16,16"},tc:{shape:"rect",coords:"16, 0,32,16"},tr:{shape:"rect",coords:"32, 0,48,16"},ml:{shape:"rect",coords:" 0,16,16,32"},mr:{shape:"rect",coords:"32,16,48,32"},bl:{shape:"rect",coords:" 0,32,16,48"},bc:{shape:"rect",coords:"16,32,32,48"},br:{shape:"rect",coords:"32,32,48,48"}}},separateParam:{urlTemplate:B+"/jsp/lite/image/8move_$DIRECTION$.gif",width:16,height:16}};
N.feature={icon:{src:B+"/jsp/lite/image/pin.gif",width:18,height:31,baseX:4,baseY:30}};
N.vector={circumference:{targetId:"feature",numPerPage:5,highlightClassName:"circumferenceHighlight"},poi:{poiClassName:"vectorPOI",poiOffClassName:"mainViewPoiOff",poiList:{className:"poiList",firstTimerInterval:3000,timerInterval:500,offsetX:10,offsetY:0},icon:{src:B+"/jsp/lite/image/poiIcon.gif",point:B+"/jsp/lite/image/poiIcon_point.gif",click:B+"/jsp/lite/image/poiIcon_click.gif",width:16,height:16,baseX:8,baseY:8}},pointDisabled:true};
return N
};
this.init=function(){var P=this.initConfiguration();
var O=getCookie(AppConfig.COOKIE_MAPURL);
if(O==null||O.length==0){alert("印刷する地図が無効です");
return 
}C=new GIS(P,L);
L.printMode=true;
var N=L.getServiceMetadata();
if(N.statusId!="success"){return false
}M=N.result;
N=L.getViewSetTree();
if(N.statusId!="success"){return false
}F=N.result;
C.viewManager.init(M);
C.vectorManager=new VectorManager(C);
C.vectorManager.init(M);
C.eventHandler.addEventListener(LiteEvent.VIEW_CHANGE,this.viewChangedListener.bind(this));
C.eventHandler.addEventListener(LiteEvent.THEMATIC_RASTER_DRAWED,this.thematicRasterDrawed.bind(this));
C.eventHandler.addEventListener(LiteEvent.THEMATIC_RASTER_CLEAR,this.thematicRasterClear.bind(this));
C.eventHandler.addEventListener(LiteEvent.SCALE_CHANGE,this.scaleChanged.bind(this));
this.initBgLayer(F.layers);
this.initBgLayer(F.bgTree);
this.initOuterMapObject();
this.initOnMapObject()
};
this.initBgLayer=function(O){if(O){for(var N=0;
N<O.length;
N++){if(O[N].type==LayerType.BACK){C.viewManager.initBgLayer(O[N])
}else{if(O[N].type==LayerType.NODE){this.initBgLayer(O[N].subLayers)
}}}}};
this.updateBgLayer=function(N){if(N&&N.length>0){for(var O=0;
O<N.length;
O++){logger.debug(N[O]);
C.viewManager.setVisibleBgLayer(N[O].layerId,N[O].visible)
}C.viewManager.refreshForBackLayer()
}};
this.initView=function(){var P=getCookie(AppConfig.COOKIE_MAPURL);
var O=string2Object(P);
var N=parseFloat(O.x);
var R=parseFloat(O.y);
var Q=parseInt(O.s);
C.viewManager.initViewByCenterAndScale(N,R,Q)
};
this.initOuterMapObject=function(){var N=$(C.configuration.viewSetNameId);
if(N){var P=document.createTextNode(F.caption);
N.appendChild(P)
}I=new Scale(C.configuration.zoombar);
I.onViewExtent=this.viewExtent.bind(this);
I.onZoomIn=this.zoomIn.bind(this);
I.onZoomOut=this.zoomOut.bind(this);
I.onScaleChange=this.scaleChange.bind(this);
var O=this.getAvailableScales();
I.init(O)
};
this.initOnMapObject=function(){var S=$(C.configuration.mapFrameId);
var R=$(C.configuration.print.printMapFrameId);
K=document.createElement("img");
K.alt="";
K.style.position="absolute";
K.style.left="0px";
K.style.top="0px";
K.style.width="100%";
K.style.height="100%";
K.style.margin="0px";
K.style.padding="0px";
K.style.borderWidth="0px";
R.appendChild(K);
var O=document.createElement("img");
O.className=C.configuration.directionClassName;
O.style.zIndex="30";
O.galleryImg="no";
O.src=C.configuration.directionUrl;
S.appendChild(O);
if(F){var U=document.createElement("div");
U.className=C.configuration.copyrightClassName;
U.style.zIndex="30";
U.innerHTML=F.copyright;
S.appendChild(U);
var N=document.createElement("div");
N.className=C.configuration.copyrightClassName;
N.style.zIndex="30";
N.innerHTML=F.copyright;
R.appendChild(N)
}var T=document.createElement("img");
T.id=C.configuration.scalebarId;
T.className=C.configuration.scalebarClassName;
T.style.zIndex="30";
T.galleryImg="no";
S.appendChild(T);
var P=new Move(this.move.bind(this));
P.init(S,C.configuration.move8);
if(C.configuration.print.searchIcon){G=document.createElement("div");
G.style.zIndex="25";
Element.Methods.hide(G);
var Q=C.viewManager.getMainView();
Q.appendChild(G);
A=new Icon(C.configuration.feature.icon)
}};
this.setMapSize=function(P,N){var T=0;
var U=$(C.configuration.print.headerId);
if(U){var S=Element.Methods.getDimensions(U);
T+=S.height
}var O=$(C.configuration.print.scaleTextId);
if(O){var S=Element.Methods.getDimensions(O);
T+=S.height
}var R=$(C.configuration.mapFrameId);
R.style.width=P+"px";
R.style.height=(N-T)+"px";
var Q=$(C.configuration.print.printMapFrameId);
Q.style.width=P+"px";
Q.style.height=(N-T)+"px"
};
this.refresh=function(){C.viewManager.updateView();
C.viewManager.refresh()
};
this.viewChangedListener=function(N){I.update(N);
this.updateScalebar()
};
this.thematicRasterDrawed=function(){logger.info("thematicRasterDrawed");
var N=C.viewManager.currentView;
var O=$(C.configuration.print.scaleTextId);
if(O){O.innerHTML="1/"+N.scale;
logger.info("scaleText="+O.innerHTML)
}this.drawSearchIcon();
if(this.isPrintPoi()){C.vectorManager.drawThematicVector()
}};
this.thematicRasterClear=function(){if(this.isPrintPoi()){C.vectorManager.clearThematicVector()
}};
this.drawSearchIcon=function(){if(G){if(H){Element.Methods.show(G);
var O=C.viewManager.currentView;
var P=O.width;
var N=O.height;
var Q=C.viewManager.calcPixelPoint(H.x,H.y);
A.drawIcon(G,Q.x,Q.y,P,N)
}else{Element.Methods.hide(G)
}}};
this.updatePreview=function(N){this.updateBgLayer(N.viewLayers);
this.setSearchIcon(N.searchPoint);
this.setInvisiblePOI(N.invisibleVector);
this.setHighlightPOI(N.clickVector);
if(N.redrawRaster){C.viewManager.updateView();
C.viewManager.refresh()
}else{this.thematicRasterDrawed()
}};
this.setSearchIcon=function(N){H=N
};
this.setHighlightPOI=function(N){if(this.isPrintPoi()){var O=null;
if(N){O=C.vectorManager.getPOIId(N)
}C.vectorManager.highlightPOI(O,N)
}};
this.setInvisiblePOI=function(N){J=(N)?true:false;
if(J){C.vectorManager.clearThematicVector()
}};
this.isPrintPoi=function(){return M.printPoiIcon&&!J
};
this.beforePrint=function(){var O=C.viewManager.currentView;
var Q={direction:true,scalebar:true};
if(C.configuration.print.searchIcon&&H){Q.search={x:H.x,y:H.y}
}if(this.isPrintPoi()){var N=C.vectorManager.getClickVector();
if(N){Q.vector={featureId:N.featureId,instanceId:N.instanceId,invisible:false}
}}else{Q.vector={invisible:true}
}var P=L.getPrintMap(O.getBoundingBox(),O.scale,O.width,O.height,Q);
K.onload=this.doPrint.bind(this);
K.src=P
};
this.doPrint=function(){K.onload=null;
window.print()
};
this.updateScalebar=function(){var O=$(C.configuration.scalebarId);
if(O){var N=C.configuration.scalebarUrlTemplate;
N=N.replace("$SCALE$",C.viewManager.currentView.scale);
O.src=N
}};
this.viewExtent=function(){if(F){var N=F.extent;
C.viewManager.initViewByBoundingBox(N.xmin,N.ymin,N.xmax,N.ymax)
}};
this.scaleChange=function(N){C.viewManager.scaleChange(N)
};
this.zoomIn=function(){C.viewManager.zoomIn()
};
this.zoomOut=function(){C.viewManager.zoomOut()
};
this.scaleChanged=function(){C.viewManager.reloadBackgroundMap()
};
this.getAvailableScales=function(){var P=new Array();
if(M&&M.scaleInfo){var N=M.scaleInfo;
for(var O=0;
O<N.length;
O++){if(!N[O].guideOnly){P[P.length]=N[O].scale
}}}return P
};
this.move=function(N,O){C.viewManager.moveByOffset(N,O)
}
}function Service(C){var E=C+"/lite/getMap";
var D=C+"/lite/printMap";
var A=C+"/lite/updateFeatureWithFile";
var B=C;
var G;
var I;
var F;
var J;
var H;
this.printMode=false;
this.login=function(Q,S){this.logout();
var M=B+"/jsp/lite/loginCheck.jsp";
var O=new Ajax.Request(M,{method:"get",asynchronous:false});
var L=B+"/j_security_check";
var N="j_username="+Q+"&j_password="+S;
var P=new LoginState();
var R=new Ajax.Request(L,{method:"post",parameters:N,asynchronous:false,onComplete:P.onComplete.bind(P)});
if(!P.isCalled){P.onComplete(R.transport)
}var T={statusId:P.state,messages:new Array()};
this._debug("login",T);
return T
};
this.logout=function(){G=null;
I=null;
F=null;
J=null;
H=null
};
this.getUserInfo=function(L){if(L){if(!G){this.call("getUserInfo",L)
}else{L.apply(this,[G])
}}else{if(!G){G=this.call("getUserInfo")
}return G
}};
this.setUserInfoResult=function(L){G=L
};
this.batchInit1=function(L,M){if(M){if(!F){this.call("batchInit1",M,L)
}else{M.apply(this,[F,L])
}}else{if(!F){F=this.call("batchInit1",null,L);
this.setBatchInit1Result(F)
}return F
}};
this.setBatchInit1Result=function(L){F=L;
G=L.result[0];
I=L.result[2]
};
this.batchInit2=function(L,M,O,N,P){if(P){if(!J){this.call("batchInit2",P,L,M,O,N)
}else{P.apply(this,[J,L,M,O,N])
}}else{if(!J){J=this.call("batchInit2",null,L,M,O,N);
this.setBatchInit2Result(J)
}return J
}};
this.setBatchInit2Result=function(L){J=L;
G=L.result[0];
I=L.result[4]
};
this.batchInit3=function(L){if(L){if(!H){this.call("batchInit3",L)
}else{L.apply(this,[H])
}}else{if(!H){H=this.call("batchInit3",null);
this.setBatchInit3Result(H)
}return H
}};
this.setBatchInit3Result=function(L){H=L;
G=L.result[0];
I=L.result[3]
};
this.getViewSetCategories=function(M,L,N){if(N){if(!F){this.call("getViewSetCategories",N,M,L)
}else{N.apply(this,[F.result[1]])
}}else{if(!F){return this.call("getViewSetCategories",null,M,L)
}else{return F.result[1]
}}};
this.initApplication=function(L,M,N,O){return this.call("initApplication",O,L,M,N)
};
this.getServiceMetadata=function(L){return this.call("getServiceMetadata",L)
};
this.setTime=function(L,M){return this.call("setTime",M,L)
};
this.getViewSetTree=function(L){return this.call("getViewSetTree",L)
};
this.getThematicRasterMap=function(O,P,N,L){var Q=new Date().getTime().toString(16);
var M=E+"?xmin="+O.xmin+"&ymin="+O.ymin+"&xmax="+O.xmax+"&ymax="+O.ymax+"&width="+N+"&height="+L+"&scale="+P+"&transparent=true&print="+this.printMode+"&id="+Q;
return M
};
this.getPrintMap=function(O,Q,N,L,P){var R=new Date().getTime().toString(16);
var M=D+"?xmin="+O.xmin+"&ymin="+O.ymin+"&xmax="+O.xmax+"&ymax="+O.ymax+"&width="+N+"&height="+L+"&scale="+Q+"&id="+R;
if(P){if(P.direction){M+="&d=true"
}if(P.scalebar){M+="&s=true"
}if(P.search){M+="&sx="+P.search.x+"&sy="+P.search.y
}if(P.vector){if(P.vector.invisible){M+="&p=true"
}else{M+="&p=false&vf="+P.vector.featureId+"&vi="+P.vector.instanceId
}}}return M
};
this.notifyLayerState=function(L,M){return this.call("notifyLayerState",M,L)
};
this.getThematicVectorFeature=function(L,M,N){return this.call("getThematicVectorFeature",N,L,M)
};
this.getThematicVectorFeatureWithCondition=function(O,M,L,N,P){return this.call("getThematicVectorFeatureWithCondition",P,O,M,L,N)
};
this.getFeatureByPoint=function(L,O,N,M,P){return this.call("getFeatureByPoint",P,L,O,N,M,B)
};
this.getFeatureById=function(N,M,L,O){return this.call("getFeatureById",O,N,M,L,B)
};
this.getCodeCategory=function(L,M){return this.call("getCodeCategory",M,L)
};
this.setHighlightFeature=function(N,L,M,O){if(!M){M=false
}return this.call("setHighlightFeature",O,N,L,M)
};
this.clearHighlightFeature=function(L){return this.call("clearHighlightFeature",L)
};
this.addTemporaryItem=function(M,L,N){return this.call("addTemporaryItem",N,M,L)
};
this.getTemporaryItem=function(M,L,N){return this.call("getTemporaryItem",N,M,L)
};
this.removeTemporaryItem=function(L,M,N){return this.call("removeTemporaryItem",N,L,M)
};
this.getLength=function(L,M){return this.call("getLength",M,L)
};
this.getArea=function(L,M){return this.call("getArea",M,L)
};
this.getSearchCase=function(L){if(L){if(!I){this.call("getSearchCase",L)
}else{L.apply(this,[I])
}}else{if(!I){I=this.call("getSearchCase",null)
}return I
}};
this.searchInstance=function(M,L,P,N,O){return this.call("searchInstance",O,M,L,P,N)
};
this.searchChildInstance=function(O,L,M,Q,N,P){return this.call("searchChildInstance",P,O,L,M,Q,N)
};
this.updateFeature=function(L,M,N){return this.call("updateFeature",N,L,M)
};
this.updateFeatureWithFile=function(){alert("未実装")
};
this.deleteFeature=function(L,N,M,O){return this.call("deleteFeature",O,L,N,M)
};
this.getOuterPeriodLayers=function(L){return this.call("getOuterPeriodLayers",L)
};
this.getTimeFeatureLayers=function(L){return this.call("getTimeFeatureLayers",L)
};
this.getUpdateFeatureWithFileUrl=function(){return A
};
this.saveStartState=function(M,L,N){return this.call("saveStartState",N,M,L)
};
this.call=function(){var M=$A(arguments);
if(typeof M[1]=="function"){this.__callasync.apply(this,M)
}else{var L=M.shift();
M.shift();
M.unshift(L);
return this.__callsync.apply(this,M)
}};
this.__callsync=function(){var O=$A(arguments);
var N=O.shift();
var L={statusId:"error"};
try{var P=JAMLiteAPI[N];
var M={async:false,callback:function(R){L=R
},errorHandler:this.__errorHandler.bind(this,N),exceptionHandler:this.__exceptionHandler.bind(this,N)};
O.push(M);
P.apply(JAMLiteAPI,O);
this._debug(N,L)
}catch(Q){this._errorLog(N,Q.description)
}return L
};
this.__errorHandler=function(L,M){this._errorLog(L,M)
};
this.__exceptionHandler=function(L,N,M){this._errorLog(L,M.javaClassName+" - "+M.message);
if(!K){K=setTimeout(this.reloadConfirm.bind(this),0)
}};
this.__callasync=function(){var N=$A(arguments);
var M=N.shift();
var O=JAMLiteAPI[M];
var P=N.shift();
var L={async:true,callback:this._asyncronousHandler.bind(this,M,P),errorHandler:this.__errorHandler.bind(this,M),exceptionHandler:this.__exceptionHandler.bind(this,M)};
N.push(L);
O.apply(JAMLiteAPI,N)
};
this._asyncronousHandler=function(M,N,L){this._debug(M,L);
if(N){if(L==null){L={statusId:"error"}
}N(L)
}};
this._debug=function(N,L){if(L!=null&&logger&&log4javascript.isEnabled()){var O=N+" : "+L.statusId;
if(L.statusId!="success"&&L.messages){for(var M=0;
M<L.messages.length;
M++){O+="\r\n  "+L.messages[M]
}}logger.debug(O)
}};
this._errorLog=function(L,M){if(logger){logger.error(L+": "+M)
}};
var K=null;
this.reloadConfirm=function(){K=null;
if(window.confirm("長い間操作がなかったためページの有効期限が切れています。\nページをリロードして操作をやり直しますか？\n（一部の操作は取り消されてしまいます。）")){window.location.reload(true)
}}
}function ViewLayer(A,B){this.layerId=A;
this.visible=B
}function LoginState(){this.state="error";
this.isCalled=false;
this.onComplete=function(A){isCalled=true;
try{if(A.responseText=="success"){this.state="success"
}}catch(B){}}
}var LayerType=new Object();
Object.extend(LayerType,{NODE:0,BACK:1,RASTER:2,VECTOR:3});
var TemporaryItemCategory=new Object();
Object.extend(TemporaryItemCategory,{MEMO_POINT:"TempItemPoint",MEMO_TEXT:"TempItemText",MEMO_LINE:"TempItemLine",MEMO_AREA:"TempItemArea",MEASURE:"TempMeasureItem",EDIT_FEATURE:"TempEditFeature",SEARCH:"TempSearchItem"});
function ViewSet(A){this.initialize(A)
}ViewSet.prototype={targetItem:null,onSelectChange:null,items:null,initialize:function(A){this.items=new Array();
this.onSelectChange=A
},populateViewSetList:function(D,H){var E=$(D);
if(!E){return 
}logger.info("表示セット一覧画面作成");
E.innerHTML="";
for(var G=0;
G<H.length;
G++){var C=H[G];
logger.debug("  ["+C.caption+"]");
var J=document.createElement("div");
J.className="categoryItem";
var B=document.createElement("div");
var F=document.createTextNode(C.caption);
B.appendChild(F);
B.className="categoryName";
J.appendChild(B);
var A=document.createElement("div");
A.className="categoryMap";
J.appendChild(A);
var I=this.createViewSetUI(C);
if(I){A.appendChild(I)
}E.appendChild(J)
}},createViewSetUI:function(A){var B=A.viewSets;
if(!B||B.length==0){return null
}var D=document.createElement("ul");
for(var C=0;
C<B.length;
C++){var E=B[C];
logger.debug("    - ["+E.caption+"]");
var H=document.createElement("li");
var J=new ViewSet.Item(H,E);
this.items.push(J);
var F=document.createElement("a");
F.href="javascript:void(0)";
var I=document.createTextNode(E.caption);
F.appendChild(I);
F.onclick=this.onclickItem.bind(this,J);
if(C>0){var G=document.createElement("span");
Element.Methods.addClassName(G,"separator");
G.innerHTML="／";
D.appendChild(G)
}if(C==0){Element.Methods.addClassName(H,"firtViewSetItem")
}else{Element.Methods.addClassName(H,"viewSetItem")
}H.appendChild(F);
D.appendChild(H)
}return D
},onclickItem:function(A){this.select(A);
if(this.onSelectChange!=null){this.onSelectChange()
}return false
},select:function(A){if(this.targetItem!=null){this.targetItem.detach()
}if(this.targetItem==A){this.targetItem=null
}else{if(A!=null){A.attach()
}this.targetItem=A
}},selectItem:function(A){for(var B=0;
B<this.items.length;
B++){if(this.items[B].viewSetId==A){this.select(this.items[B]);
return 
}}this.select(null)
},selectFirstItem:function(){if(this.items.length>0){this.select(this.items[0])
}}};
ViewSet.Item=function(B,A){this.initialize(B,A)
};
ViewSet.Item.prototype={node:null,startExtent:null,viewSetId:null,initialize:function(B,A){this.node=B;
this.startExtent=A.startExtent;
this.viewSetId=A.viewSetId
},attach:function(){Element.Methods.addClassName(this.node,"selectedCategory")
},detach:function(){Element.Methods.removeClassName(this.node,"selectedCategory")
}};
function WindowManager(C,A){var E=C;
var B=A;
var F=null;
this.setInitCallback=function(G){B=G
};
this.open=function(){if(!this.isOpen()){var G=E.url||"";
var H=E.target||"_blank";
var I=E.param;
F=window.open(G,H,I);
setTimeout(D.bind(this,F),100);
return true
}else{F.focus();
return false
}};
var D=function(){if(B){B(F)
}};
this.close=function(){if(this.isOpen()&&E.target!="_self"){F.close();
F=null
}};
this.isOpen=function(){try{return F!=null&&!F.closed
}catch(G){return false
}};
this.getWindow=function(){if(this.isOpen()){return F
}else{return null
}};
this.notify=function(G){if(this.isOpen()){if(F.notify_handler){setTimeout(F.notify_handler.bind(F,G),0)
}}}
};