﻿// (c) City Information Centre, Volgograd, Russia
//     Sergey Polyakov


Sys.Browser.Chrome={};if(navigator.userAgent.indexOf(" Chrome/")>-1){Sys.Browser.agent=Sys.Browser.Chrome;Sys.Browser.version=parseFloat(navigator.userAgent.match(/ Chrome\/(\d+\.\d+)/)[1]);Sys.Browser.name="Chrome";Sys.Browser.hasDebuggerStatement=true}Type.registerNamespace("CIC.Map2008");CIC.Map2008.Go=function(idObject,funcName){var obj=document.getElementById(idObject);if(obj!=null){var ctrl=obj.control;if(ctrl!=null){for(var s="",i=2;i<arguments.length;i++){if(s!="")s+=",";if(typeof arguments[i]=="string")s+="'"+arguments[i]+"'";else s+=arguments[i]}s="ctrl."+funcName+"("+s+")";return eval(s)}}};CIC.Map2008.MakeUp=function(objs,tplLeft,tplTop,tplWidth,tplHeight,bndObjects){var b=[];if(bndObjects)for(var i=0;i<bndObjects.length;i++)b[i]=Sys.UI.DomElement.getBounds(bndObjects[i]);for(var i=0;i<objs.length;i++){var obj=objs[i];if(tplWidth!=null)obj.style.width=eval(tplWidth)+"px";if(tplHeight!=null)obj.style.height=eval(tplHeight)+"px";if(tplLeft!=null)obj.style.left=eval(tplLeft)+"px";if(tplTop!=null)obj.style.top=eval(tplTop)+"px"}};CIC.Map2008.enMapMode=function(){};CIC.Map2008.enMapMode.prototype={None:0,Move:1,ZoomIn:2,ZoomOut:3,Info:4,Range:5,Route:6,BugMessage:7};CIC.Map2008.enMapMode.registerEnum("CIC.Map2008.enMapMode");CIC.Map2008.BaseMap=function(a){CIC.Map2008.BaseMap.initializeBase(this,[a]);this._ready=false;this._mouseDownDelegate=null;this._mouseUpDelegate=null;this._mouseMoveDelegate=null;this._mouseWheelDelegate=null;this._resizeDelegate=null;this._keyDownDelegate=null;this._keyUpDelegate=null;this._state=null;this._multiply=1;this._zoomFrame=null;this._container=null;this._zoomStep=0;this._selectedObjects=[];this._layerListId=null;this._infoListId=null;this._searchId=null;this._isMouseDown=false;this._mouseDownX=0;this._mouseDownY=0;this._rootUrl=""};CIC.Map2008.BaseMap.prototype={get_state:function(){return this._state},set_state:function(a){this._state=a},get_multiply:function(){return this._multiply},set_multiply:function(a){this._multiply=a},get_startUpObjects:function(){return this._startUpObjects},set_startUpObjects:function(a){this._startUpObjects=a},get_rootUrl:function(){return this._rootUrl},set_rootUrl:function(a){a=a.trim();if(a[a.length-1]!="/")a+="/";this._rootUrl=a},get_selectedObjects:function(){return this._selectedObjects},get_container:function(){return this._container},get_zoomFrame:function(){if(this._zoomFrame==null){this._zoomFrame=document.createElement("DIV");d=this._zoomFrame;d.style.display="none";d.style.position="absolute";d.style.left="0px";d.style.top="0px";d.style.width="10px";d.style.height="10px";d.style.borderStyle="solid";d.style.borderColor="Red";d.style.borderWidth="1px";d.style.zIndex=200;var a=document.createElement("DIV");a.style.width="100%";a.style.height="100%";a.style.backgroundColor="Red";a.style.opacity="0.3";a.style.filter="alpha(opacity=30)";d.appendChild(a);this.get_container().get_element().appendChild(d)}return this._zoomFrame},add_mouseDown:function(a){this.get_events().addHandler("mousedown",a)},remove_mouseDown:function(a){this.get_events().removeHandler("mousedown",a)},add_mouseUp:function(a){this.get_events().addHandler("mouseup",a)},remove_mouseUp:function(a){this.get_events().removeHandler("mouseup",a)},add_mouseMove:function(a){this.get_events().addHandler("mousemove",a)},remove_mouseMove:function(a){this.get_events().removeHandler("mousemove",a)},add_mouseWheel:function(a){this.get_events().addHandler("mousewheel",a)},remove_mouseWheel:function(a){this.get_events().removeHandler("mousewheel",a)},add_resize:function(a){this.get_events().addHandler("resize",a)},remove_resize:function(a){this.get_events().removeHandler("resize",a)},add_keyDown:function(a){this.get_events().addHandler("keydown",a)},remove_keyDown:function(a){this.get_events().removeHandler("keydown",a)},add_keyUp:function(a){this.get_events().addHandler("keyup",a)},remove_keyUp:function(a){this.get_events().removeHandler("keyup",a)},_mouseDownHandler:function(b){var a=this.get_events().getHandler("mousedown");a&&a(this,b)},_mouseUpHandler:function(b){var a=this.get_events().getHandler("mouseup");a&&a(this,b)},_mouseMoveHandler:function(b){var a=this.get_events().getHandler("mousemove");a&&a(this,b)},_mouseWheelHandler:function(b){var a=this.get_events().getHandler("mousewheel");a&&a(this,b)},_resizeHandler:function(b){var a=this.get_events().getHandler("resize");a&&a(this,b)},_keyDownHandler:function(b){var a=this.get_events().getHandler("keydown");a&&a(this,b)},_keyUpHandler:function(b){var a=this.get_events().getHandler("keyup");a&&a(this,b)},_createPoint:function(b,c){var a={};a.x=b;a.y=c;a.toString=function(){return "("+this.x+":"+this.y+")"};return a},convertXY_toMap:function(a){var b=this.get_state();return this._createPoint(a.x*b.Zoom,a.y*b.Zoom)},convertXY_fromMap:function(a){var b=this.get_state();return this._createPoint(a.x/b.Zoom,a.y/b.Zoom)},_locMapEvent:function(e){var point=this._createPoint(0,0),locContainer=Sys.UI.DomElement.getLocation(this.get_container().get_element());with(point){if(e.type=="DOMMouseScroll"){var locObject=Sys.UI.DomElement.getLocation(e.target);x=locObject.x+e.rawEvent.clientX/15-locContainer.x;y=locObject.y+e.rawEvent.clientY/15-locContainer.y}else{x=e.rawEvent.clientX-locContainer.x-1;y=e.rawEvent.clientY-locContainer.y-1}if(Sys.Browser.agent==Sys.Browser.InternetExplorer){x+=-2;y+=-2}}return point},_locControlEvent:function(e){var point=this._createPoint(0,0),locMap=Sys.UI.DomElement.getLocation(this.get_element());with(point){x=e.rawEvent.clientX-locMap.x-1;y=e.rawEvent.clientY-locMap.y-1;if(Sys.Browser.agent==Sys.Browser.InternetExplorer){x+=-2;y+=-2}}return point},zoomAndMove:function(a,g,d){if(this._zoomStep>0)return;this._zoomStep+=1;var h=this.get_state();if(!d)d=h.Zoom;d=this.verifyZoom(d);var j=this.get_container(),c=Sys.UI.DomElement.getBounds(this.get_element()),f=Sys.UI.DomElement.getLocation(this.get_container().get_element());if(!a)a=this.convertXY_toMap(this._createPoint(-f.x+c.x+c.width/2,-f.y+c.y+c.height/2));var e=this.convertXY_fromMap(a);e.x=f.x-c.x+e.x;e.y=f.y-c.y+e.y;if(!g)g=this._createPoint(c.width/2,c.height/2);var b=this.convertXY_fromMap(a),i=h.Zoom;h.Zoom=d;a=this.convertXY_fromMap(a);b.x=e.x-b.x;b.y=e.y-b.y;a.x=g.x-a.x;a.y=g.y-a.y;if(i==d&&b.x==a.x&&b.y==a.y){this._zoomStep-=1;return}this.get_range&&this.get_range().hide();this.get_route&&this.get_route()!=null&&this.get_route().beginRefresh();j.zoomAndMove(b.x,b.y,i,a.x,a.y,d)},zoomIn:function(b,c,h){if(this._zoomStep>0)return;var j=this.get_state(),a=Sys.UI.DomElement.getBounds(this.get_element()),g=Sys.UI.DomElement.getLocation(this.get_container().get_element()),i=j.Zoom;if(!b)b=this._createPoint(-g.x+a.x+a.width/2,-g.y+a.y+a.height/2);if(c==null)c=b;var e=this.convertXY_toMap(b),f=this.convertXY_toMap(c),d;if(Math.abs(c.x-b.x)>3&&Math.abs(c.y-b.y)>3)d=Math.round(Math.max((f.x-e.x)/a.width,(f.y-e.y)/a.height)*100)/100;else{d=Math.pow(2,Math.ceil(Math.log(i)/Math.log(2)));d/=2}this.zoomAndMove(this._createPoint((e.x+f.x)/2,(e.y+f.y)/2),h,d)},zoomOut:function(b,d){if(this._zoomStep>0)return;var g=this.get_state(),a=Sys.UI.DomElement.getBounds(this.get_element()),c=Sys.UI.DomElement.getLocation(this.get_container().get_element()),e=g.Zoom;if(!b)b=this._createPoint(-c.x+a.x+a.width/2,-c.y+a.y+a.height/2);var h=this.convertXY_toMap(b),f=Math.pow(2,Math.floor(Math.log(e)/Math.log(2)))*2;this.zoomAndMove(h,d,f)},initContainer:function(){this._container=$create(CIC.Map2008.Container,{map:this})},mapBaseInit:function(){},initialize:function(){CIC.Map2008.BaseMap.callBaseMethod(this,"initialize");var a=this.get_element();if(this._mouseDownDelegate===null)this._mouseDownDelegate=Function.createDelegate(this,this._mouseDownHandler);$addHandler(a,"mousedown",this._mouseDownDelegate);if(this._mouseUpDelegate===null)this._mouseUpDelegate=Function.createDelegate(this,this._mouseUpHandler);$addHandler(a,"mouseup",this._mouseUpDelegate);if(this._mouseMoveDelegate===null)this._mouseMoveDelegate=Function.createDelegate(this,this._mouseMoveHandler);$addHandler(a,"mousemove",this._mouseMoveDelegate);if(this._mouseWheelDelegate===null)this._mouseWheelDelegate=Function.createDelegate(this,this._mouseWheelHandler);if(Sys.Browser.agent==Sys.Browser.InternetExplorer||Sys.Browser.agent==Sys.Browser.Opera||Sys.Browser.agent==Sys.Browser.Chrome)$addHandler(a,"mousewheel",this._mouseWheelDelegate);else Sys.Browser.agent==Sys.Browser.Firefox&&$addHandler(a,"DOMMouseScroll",this._mouseWheelDelegate);if(this._resizeDelegate===null)this._resizeDelegate=Function.createDelegate(this,this._resizeHandler);$addHandler(window,"resize",this._resizeDelegate);if(this._keyDownDelegate===null)this._keyDownDelegate=Function.createDelegate(this,this._keyDownHandler);$addHandler(document,"keydown",this._keyDownDelegate);if(this._keyUpDelegate===null)this._keyUpDelegate=Function.createDelegate(this,this._keyUpHandler);$addHandler(document,"keyup",this._keyUpDelegate);this.mapBaseInit()},dispose:function(){var a=this.get_element();if(this._mouseDownDelegate){$removeHandler(a,"mousedown",this._mouseDownDelegate);delete this._mouseDownDelegate}if(this._mouseUpDelegate){$removeHandler(a,"mouseup",this._mouseUpDelegate);delete this._mouseUpDelegate}if(this._mouseMoveDelegate){$removeHandler(a,"mousemove",this._mouseMoveDelegate);delete this._mouseMoveDelegate}if(this._mouseWheelDelegate){if(Sys.Browser.agent==Sys.Browser.InternetExplorer||Sys.Browser.agent==Sys.Browser.Opera||Sys.Browser.agent==Sys.Browser.Chrome)$removeHandler(a,"mousewheel",this._mouseWheelDelegate);else Sys.Browser.agent==Sys.Browser.Firefox&&$removeHandler(a,"DOMMouseScroll",this._mouseWheelDelegate);delete this._mouseWheelDelegate}if(this._resizeDelegate){$removeHandler(window,"resize",this._resizeDelegate);delete this._resizeDelegate}if(this._keyDownDelegate){$removeHandler(document,"keydown",this._keyDownDelegate);delete this._keyDownDelegate}if(this._keyUpDelegate){$removeHandler(document,"keyup",this._keyUpDelegate);delete this._keyUpDelegate}CIC.Map2008.BaseMap.callBaseMethod(this,"dispose")}};CIC.Map2008.BaseMap.registerClass("CIC.Map2008.BaseMap",Sys.UI.Control);CIC.Map2008.PageControl={};CIC.Map2008.PageControl.selectPagesLeft=function(b){var a=$get(b);if(!a)return;selectPagesLeft&&selectPagesLeft(a)};CIC.Map2008.ImageCollection=function(a){this._file=a;this._item={}};CIC.Map2008.ImageCollection.prototype={get_file:function(){return this._file},set_file:function(a){this._file=a},get_item:function(a){return this._item[a]},set_item:function(b,a){this._item[b]=a},add:function(c,d,e,b,a){this._item[c]=new Sys.UI.Bounds(d,e,b,a)},createImage:function(c){var a=document.createElement("DIV");a.style.position="relative";var b;if(Sys.Browser.agent==Sys.Browser.InternetExplorer&&Sys.Browser.version<7)b=document.createElement("DIV");else b=document.createElement("IMG");a.appendChild(b);c!=null&&this.changeImage(a,c);return a},changeImage:function(c,d){var b=this.get_item(d);c.style.overflow="hidden";c.style.width=b.width+"px";c.style.height=b.height+"px";var a=c.childNodes[0];a.src=this.get_file();a.style.position="absolute";a.style.left="-"+b.x+"px";a.style.top="-"+b.y+"px";if(Sys.Browser.agent==Sys.Browser.InternetExplorer&&Sys.Browser.version<7){a.style.width="2000px";a.style.height="2000px";a.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+this.get_file()+"', sizingMethod='crop')"}}};CIC.Map2008.MiniMap=function(a){CIC.Map2008.MiniMap.initializeBase(this,[a]);this._multiply=24;this._visible=true;this._mouseDownX=0;this._mouseDownY=0;this._stepMinimize=40};CIC.Map2008.MiniMap._doMinimize=function(c,b,d,e){var f=document.getElementById(c).control,a=f.get_miniMap().get_box();a.style.top=parseInt(a.style.top)+e+"px";a.style.left=parseInt(a.style.left)+d+"px";--b>0&&window.setTimeout(function(){CIC.Map2008.MiniMap._doMinimize(c,b,d,e)},50)},CIC.Map2008.MiniMap.prototype={get_map:function(){return this._map},set_map:function(a){this._map=a},get_state:function(){return this._map.get_state()},get_zoom:function(){return this.verifyZoom(this.get_state().Zoom*this.get_multiply())},get_box:function(){return this._box},set_box:function(a){this._box=a},get_visible:function(){return this._visible},set_visible:function(a){this._visible=a},get_frame:function(){return this._frame},set_frame:function(a){this._frame=a},get_minimizeButton:function(){return this._minimizeButton},set_minimizeButton:function(a){this._minimizeButton=a},show:function(){this.set_visible(true);var a=this._stepMinimize,c=this.get_box(),b=Sys.UI.DomElement.getBounds(c);this.refresh(true);CIC.Map2008.MiniMap._doMinimize(this.get_map().get_id(),Math.ceil(b.width/a),-a,a);var d=this.get_map().get_systemImages();d.changeImage(this.get_minimizeButton(),"MiniMap_Minimize")},hide:function(){this.set_visible(false);var a=this._stepMinimize,c=this.get_box(),b=Sys.UI.DomElement.getBounds(c);CIC.Map2008.MiniMap._doMinimize(this.get_map().get_id(),Math.ceil(b.width/a),a,-a);var d=this.get_map().get_systemImages();d.changeImage(this.get_minimizeButton(),"MiniMap_Maximize")},refresh:function(isUpdateLayers){if(this.get_visible()){var map=this.get_map(),state=map.get_state(),container=this.get_container(),mul=this.get_zoom()/state.Zoom,bMap=Sys.UI.DomElement.getBounds(map.get_element()),bMiniMap=Sys.UI.DomElement.getBounds(this.get_element()),bMapContainer=Sys.UI.DomElement.getBounds(map.get_container().get_element()),x=(bMapContainer.x-bMap.x-bMap.width/2)/mul+bMiniMap.width/2,y=(bMapContainer.y-bMap.y-bMap.height/2)/mul+bMiniMap.height/2;container.moveTo(x,y);var frame=this.get_frame(),w=bMap.width/mul,h=bMap.height/mul;with(frame.style){width=w+"px";height=h+"px";top=bMiniMap.height/2-h/2+"px";left=bMiniMap.width/2-w/2+"px"}if(isUpdateLayers){container.clearSlices();container.clear()}container.refresh(isUpdateLayers)}},_doMouseDown:function(sender,e){var loc=sender._locMapEvent(e);with(sender){_isMouseDown=true;_mouseDownX=loc.x;_mouseDownY=loc.y;with(get_element().style)cursor='url(WebResource.axd?d=2mLJSz5GBgePUZA6hI-czhB_0NIbgzFCnycf-JfdMPYEtLejFe5O4IZhlu1ccfSc0&t=634152184631987290), default'}e.preventDefault();e.stopPropagation()},_doMouseMove:function(a,e){if(a._isMouseDown){var c=a._locControlEvent(e);c.x-=a._mouseDownX;c.y-=a._mouseDownY;a.get_container().moveTo(c.x,c.y);var d=a.get_map(),i=d.get_state(),h=a.get_zoom()/i.Zoom,g=Sys.UI.DomElement.getBounds(d.get_element()),b=Sys.UI.DomElement.getBounds(a.get_element()),f=Sys.UI.DomElement.getBounds(a.get_container().get_element()),j=(f.x-b.x-b.width/2-2)*h+g.width/2,k=(f.y-b.y-b.height/2-0)*h+g.height/2;d.get_container().moveTo(j,k);e.preventDefault();e.stopPropagation()}},_doMouseUp:function(sender,e){sender._isMouseDown=false;with(sender.get_element().style)cursor='url(WebResource.axd?d=2mLJSz5GBgePUZA6hI-czhB_0NIbgzFCnycf-JfdMPbzempzRUNdmoGfe-_UH9t90&t=634152184631987290), default';sender.get_map().stateUpdate(false);e.preventDefault();e.stopPropagation()},_doMouseWheel:function(b,a){a.preventDefault();a.stopPropagation()},_doResize:function(sender,e){var element=sender.get_element(),box=sender.get_box(),map=sender.get_map().get_element(),minimize=sender.get_minimizeButton(),bMap=Sys.UI.DomElement.getBounds(map),bBox=Sys.UI.DomElement.getBounds(box),bMinimize=Sys.UI.DomElement.getBounds(minimize),w=150,h=150,b=5;with(box.style){left=bMap.width-w+"px";top=0+"px";width=w+"px";height=h+"px"}with(element.style){left=b+"px";top=0+"px";width=w-b-3+"px";height=h-b-1+"px"}with(minimize.style){top="0px";left=bMap.width-bMinimize.width-1+"px"}if(!sender.get_visible()){var step=sender._stepMinimize;with(box.style){left=parseInt(left)+Math.ceil(parseInt(width)/step)*step+"px";top=parseInt(top)-Math.ceil(parseInt(width)/step)*step+"px"}}sender.refresh(false)},stateUpdate:function(a){this.refresh(a)},verifyZoom:function(a){var b=this.get_state();a=Math.ceil(a*4)/4;if(a<b.MiniMapZoom.Min)a=b.MiniMapZoom.Min;if(a>b.MiniMapZoom.Max)a=b.MiniMapZoom.Max;return a},init:function(){var map=this.get_map(),bMap=Sys.UI.DomElement.getBounds(map.get_element()),box=document.createElement("DIV");with(box.style){cursor="default";position="absolute";zIndex=255;borderLeft="solid 1px silver";borderBottom="solid 1px silver";backgroundColor="white"}map.get_element().appendChild(box);this.set_box(box);var element=this.get_element();element.id=map.get_id()+"_MiniMap";with(element.style){overflow="hidden";position="absolute";borderLeft="solid 1px silver";borderBottom="solid 1px silver";cursor='url(WebResource.axd?d=2mLJSz5GBgePUZA6hI-czhB_0NIbgzFCnycf-JfdMPbzempzRUNdmoGfe-_UH9t90&t=634152184631987290), default'}box.appendChild(element);var frame=document.createElement("DIV");with(frame.style){position="absolute";zIndex=255;border="solid 1px blue";width=0;height=0}this.set_frame(frame);element.appendChild(frame);var frameBody=document.createElement("DIV");with(frameBody.style){width="100%";height="100%";backgroundColor="blue";opacity="0.2";filter="alpha(opacity=20)"}frame.appendChild(frameBody);var si=map.get_systemImages(),but;if(this.get_visible())but=si.createImage("MiniMap_Minimize");else but=si.createImage("MiniMap_Maximize");but.control=this;with(but.style){position="absolute";zIndex=255;cursor="pointer"}this.set_minimizeButton(but);map.get_element().appendChild(but);$addHandler(but,"mousedown",function(b){var a=this.control;if(a.get_visible())a.hide();else a.show();b.preventDefault();b.stopPropagation()});this.initContainer();this._doResize(this)},initialize:function(){CIC.Map2008.MiniMap.callBaseMethod(this,"initialize");this.add_mouseDown(this._doMouseDown);this.add_mouseUp(this._doMouseUp);this.add_mouseMove(this._doMouseMove);this.add_mouseWheel(this._doMouseWheel);this.init()},dispose:function(){var a=this.get_element();this.remove_mouseDown(this._doMouseDown);this.remove_mouseUp(this._doMouseUp);this.remove_mouseMove(this._doMouseMove);this.remove_mouseWheel(this._doMouseWheel);CIC.Map2008.MiniMap.callBaseMethod(this,"dispose")}};CIC.Map2008.MiniMap.registerClass("CIC.Map2008.MiniMap",CIC.Map2008.BaseMap);function closeBugMessageWindow(f){var d=document.getElementById("bugMessageWindow");if(d!=null){document.body.removeChild(d);if(f){for(var b=$get("Map").control,a=b.get_state(),e=false,c=0;c<a.Layers.length;c++)if(a.Layers[c]=="+BugMessages"){e=true;break}if(e)b.stateUpdate(true);else{Array.clear(a.LayersUpdated);Array.add(a.LayersUpdated,"+BugMessages");b.stateUpdate(true,true)}}}}CIC.Map2008.Map=function(a){CIC.Map2008.Map.initializeBase(this,[a])};CIC.Map2008.Map.prototype={get_systemImages:function(){return this._systemImages},set_systemImages:function(a){this._systemImages=a},get_miniMap:function(){return this._miniMap},set_miniMap:function(a){this._miniMap=a},get_showMiniMap:function(){return this._showMiniMap},set_showMiniMap:function(a){this._showMiniMap=a},get_minimizeMiniMap:function(){return this._minimizeMiniMap},set_minimizeMiniMap:function(a){this._minimizeMiniMap=a},get_copyright:function(){return this._copyright},set_copyright:function(a){this._copyright=a},get_toolBar:function(){return this._toolBar},set_toolBar:function(a){this._toolBar=a},get_showToolBar:function(){return this._showToolBar},set_showToolBar:function(a){this._showToolBar=a},get_layerListId:function(){return this._layerListId},set_layerListId:function(a){this._layerListId=a},get_infoListId:function(){return this._infoListId},set_infoListId:function(a){this._infoListId=a},get_infoList:function(){return this._infoList},set_infoList:function(a){this._infoList=a},get_searchId:function(){return this._searchId},set_searchId:function(a){this._searchId=a},get_routeId:function(){return this._routeId},set_routeId:function(a){this._routeId=a},get_route:function(){return this._route},set_route:function(a){this._route=a},get_scale:function(){return this._scale},set_scale:function(a){this._scale=a},get_range:function(){return this._range},set_range:function(a){this._range=a},initSystemImages:function(){var a=new CIC.Map2008.ImageCollection(this.get_rootUrl()+'WebResource.axd?d=2mLJSz5GBgePUZA6hI-czkhl-6EA4UQPlfbf9TjGGjDb3XxV4p1IfWBoKZArM6fO0&t=634152184631987290');this._systemImages=a;a.add("Logo",60,1,71,32);a.add("Checked",33,1,15,15);a.add("Unchecked",1,1,15,15);a.add("Interdeterminate",17,1,15,15);a.add("Plus",33,17,15,15);a.add("Minus",1,17,15,15);a.add("Blank",17,17,15,15);a.add("ToolBar_Zoom_Top",79,99,20,24);a.add("ToolBar_Zoom_Bottom",79,358,20,24);a.add("ToolBar_Zoom_Line",83,132,12,12);a.add("ToolBar_Zoom_Indicator",121,125,22,14);a.add("ToolBar_Moving",59,39,60,60);a.add("ToolBar_Moving_U",83,44,12,12);a.add("ToolBar_Moving_D",83,82,12,12);a.add("ToolBar_Moving_R",102,63,12,12);a.add("ToolBar_Moving_L",64,63,12,11);a.add("ToolBar_Moving_UR",96,51,11,11);a.add("ToolBar_Moving_UL",71,51,11,11);a.add("ToolBar_Moving_DR",96,76,11,11);a.add("ToolBar_Moving_DL",71,76,11,11);a.add("ToolBar_TB_Line",119,49,1,40);a.add("ToolBar_TB_LineEnd",608,49,3,40);a.add("ToolBar_Buttons_Move",0,33,26,26);a.add("ToolBar_Buttons_Move_Down",26,33,26,26);a.add("ToolBar_Buttons_ZoomIn",0,59,26,26);a.add("ToolBar_Buttons_ZoomIn_Down",26,59,26,26);a.add("ToolBar_Buttons_ZoomOut",0,85,26,26);a.add("ToolBar_Buttons_ZoomOut_Down",26,85,26,26);a.add("ToolBar_Buttons_Info",0,111,26,26);a.add("ToolBar_Buttons_Info_Down",26,111,26,26);a.add("ToolBar_Buttons_Range",0,137,26,26);a.add("ToolBar_Buttons_Range_Down",26,137,26,26);a.add("ToolBar_Buttons_Route",0,163,26,26);a.add("ToolBar_Buttons_Route_Down",26,163,26,26);a.add("ToolBar_Buttons_BugMessage",0,163,26,26);a.add("ToolBar_Buttons_BugMessage_Down",26,163,26,26);a.add("MiniMap_Maximize",145,0,20,20);a.add("MiniMap_Minimize",165,0,20,20)},selectObject:function(c,b){var a={};a.idLayer=c;a.idObject=b;var d=this.get_selectedObjects();this.clearSelectesObjects();Array.add(d,a)},clearSelectesObjects:function(){var b=this.get_selectedObjects(),a=this.get_container();Array.clear(b);a.clearSelectesObjects()},_doMouseDown:function(sender,e){if(sender._zoomStep>0)return;if(e.button==2){e.preventDefault();e.stopPropagation();return}var element=sender.get_element(),state=sender.get_state(),loc=sender._locMapEvent(e);sender._isMouseDown=true;sender._changeCursor(element,e);if(state!=null)switch(sender._mode){case CIC.Map2008.enMapMode.Move:with(sender){_mouseDownX=loc.x;_mouseDownY=loc.y}break;case CIC.Map2008.enMapMode.ZoomIn:with(sender){_mouseDownX=loc.x;_mouseDownY=loc.y}var zoomFrame=sender.get_zoomFrame();zoomFrame.dX=0;zoomFrame.dY=0;with(zoomFrame.style){left=loc.x+"px";top=loc.y+"px";width="0px";height="0px";display="block"}break;case CIC.Map2008.enMapMode.ZoomOut:sender.zoomOut(loc,null);break;case CIC.Map2008.enMapMode.Info:sender.info(loc.x,loc.y,state);break;case CIC.Map2008.enMapMode.Range:sender.get_range().addPoint(loc.x,loc.y);break;case CIC.Map2008.enMapMode.Route:var route=sender.get_route(),p=sender.convertXY_toMap(loc);route.addSegment(p.x,p.y);break;case CIC.Map2008.enMapMode.BugMessage:var frame=document.createElement("iframe");with(frame){id="bugMessageWindow";src="BugMessage.aspx?id="+loc.x+"|"+loc.y+"|"+state.Zoom;frameBorder=0;with(style){position="absolute";width="100%";height="100%";left="0";top="0";zIndex=255}}document.body.appendChild(frame)}e.preventDefault();e.stopPropagation()},_changeCursor:function(f,e){var g=f.style.cursor,b,c,a,d=this.get_state().Mode;if(e)if(d==CIC.Map2008.enMapMode.Move)if(e.shiftKey)d=CIC.Map2008.enMapMode.ZoomIn;else if(e.ctrlKey)d=CIC.Map2008.enMapMode.ZoomOut;this._mode=d;switch(d){case CIC.Map2008.enMapMode.Move:c="Hand1";if(this._isMouseDown)c="Hand2";a="move";break;case CIC.Map2008.enMapMode.ZoomIn:c="ZoomIn";a="crosshair";break;case CIC.Map2008.enMapMode.ZoomOut:c="ZoomOut";a="crosshair";break;case CIC.Map2008.enMapMode.Info:c="";a="help";break;case CIC.Map2008.enMapMode.Range:case CIC.Map2008.enMapMode.Route:case CIC.Map2008.enMapMode.BugMessage:c="";a="crosshair";break;default:c="";a="default"}if(Sys.Browser.agent==Sys.Browser.InternetExplorer||Sys.Browser.agent==Sys.Browser.Firefox||Sys.Browser.agent==Sys.Browser.Chrome)switch(c){case "ZoomIn":b='url(WebResource.axd?d=2mLJSz5GBgePUZA6hI-czhB_0NIbgzFCnycf-JfdMPaRqxym4lYanmustmaOxwes0&t=634152184631987290), '+a;break;case "ZoomOut":b='url(WebResource.axd?d=2mLJSz5GBgePUZA6hI-czhB_0NIbgzFCnycf-JfdMPauOUPRK4-q5FP2eeu5VpKF0&t=634152184631987290), '+a;break;case "Hand1":b='url(WebResource.axd?d=2mLJSz5GBgePUZA6hI-czhB_0NIbgzFCnycf-JfdMPbzempzRUNdmoGfe-_UH9t90&t=634152184631987290), '+a;break;case "Hand2":b='url(WebResource.axd?d=2mLJSz5GBgePUZA6hI-czhB_0NIbgzFCnycf-JfdMPYEtLejFe5O4IZhlu1ccfSc0&t=634152184631987290), '+a;break;case "Range":b='url(WebResource.axd?d=2mLJSz5GBgePUZA6hI-czhB_0NIbgzFCnycf-JfdMPbyKuBWZyc_ko8OMPHuycuo0&t=634152184631987290), '+a;break;default:b=a}else b=a;if(b!=g)f.style.cursor=b},_doMouseMove:function(sender,e){if(sender._zoomStep>0)return;var element=sender.get_element(),state=sender.get_state();if(!state)return;if(!sender._mode||!sender._isMouseDown)sender._mode=state.Mode;!sender._isMouseDown&&sender._changeCursor(element,e);if(state!=null)switch(sender._mode){case CIC.Map2008.enMapMode.Move:if(sender._isMouseDown){var pos=sender._locControlEvent(e);pos.x-=sender._mouseDownX;pos.y-=sender._mouseDownY;sender.get_container().moveTo(pos.x,pos.y);sender.get_showMiniMap()&&sender.get_miniMap().refresh(false);e.preventDefault();e.stopPropagation()}break;case CIC.Map2008.enMapMode.ZoomIn:if(sender._isMouseDown){var loc=sender._locMapEvent(e),w=loc.x-sender._mouseDownX,h=loc.y-sender._mouseDownY;if(w>0)w-=1;if(h>0)h-=1;var zoomFrame=sender.get_zoomFrame();zoomFrame.dX=(loc.x-sender._mouseDownX)/2;zoomFrame.dY=(loc.y-sender._mouseDownY)/2;with(zoomFrame.style){left=Math.min(sender._mouseDownX,loc.x)+"px";top=Math.min(sender._mouseDownY,loc.y)+"px";width=Math.abs(w)+"px";height=Math.abs(h)+"px"}e.preventDefault();e.stopPropagation()}}},_doMouseUp:function(a,c){if(a._zoomStep>0)return;var f=a.get_element(),g=a.get_state();if(a._isMouseDown){a._isMouseDown=false;if(g!=null)switch(a._mode){case CIC.Map2008.enMapMode.Move:a.stateUpdate(false);break;case CIC.Map2008.enMapMode.ZoomIn:var b=a.get_zoomFrame();b.style.display="none";var d=parseInt(b.style.left),e=parseInt(b.style.top),j=d+parseInt(b.style.width),k=e+parseInt(b.style.height),h=a._createPoint(d,e),i=a._createPoint(j,k);a.zoomIn(h,i,null)}c.preventDefault();c.stopPropagation()}a._changeCursor(f,c)},_doMouseWheel:function(a,b){if(a._zoomStep>0)return;var g=a.get_element(),h=a.get_state(),i=Sys.UI.DomElement.getBounds(a.get_element()),f=a.get_container(),d=a._locMapEvent(b),e=a._locControlEvent(b),c;if(Sys.Browser.agent==Sys.Browser.InternetExplorer||Sys.Browser.agent==Sys.Browser.Opera||Sys.Browser.agent==Sys.Browser.Chrome)c=b.rawEvent.wheelDelta>0?1:-1;else if(Sys.Browser.agent==Sys.Browser.Firefox)c=b.rawEvent.detail<0?1:-1;if(c>0)a.zoomIn(d,d,e);else a.zoomOut(d,e);b.preventDefault();b.stopPropagation()},_doResize:function(a){var b=a.get_copyright(),c=Sys.UI.DomElement.getBounds(a.get_element()),d=Sys.UI.DomElement.getBounds(b);b.style.left=c.width-d.width-7+"px";b.style.top=c.height-d.height-7+"px";var e=a.get_scale(),f=Sys.UI.DomElement.getBounds(e.get_element());e.set_y(c.height-f.height-10);if(a.get_showMiniMap())a.get_miniMap()&&a.get_miniMap()._doResize(a.get_miniMap());if(a.get_state()!=null)this._ready&&a.get_container().refresh()},_doKeyDown:function(a,b){a._changeCursor(a.get_element(),b)},_doKeyUp:function(a,b){if(a._mode!=a.get_state().Mode){a.get_zoomFrame().style.display="none";a._isMouseDown=false}a._changeCursor(a.get_element(),b)},info:function(c,d,b){CIC.Map2008.PageControl.selectPagesLeft("PageInfoList");var a=this.get_infoList();a!=null&&a.show(c,d,b)},goToObject:function(c,b,a){this._goToObjectLoad(c,b,a)},_goToObjectLoad:function(d,c,b){var a={};a.sender=this;a.isZoomAndMove=b;CIC.Map2008.WS.GetObjectRect(d,c,this._goToObjectLoaded,this._goToObjectLoadError,a)},_goToObjectLoaded:function(a,d){var b=d.sender;if(!a.Exists){alert("Объект присутствует в базе данных но не нанесен на карту.");b.stateUpdate(false);return}b.selectObject(a.idLayer,a.idObject);if(d.isZoomAndMove){var g=b.get_element(),c=Sys.UI.DomElement.getBounds(g),e=1.1*(a.Xmax-a.Xmin)/c.width,f=1.1*(a.Ymax-a.Ymin)/c.height,h=Math.max(e,f),i=b._createPoint((a.Xmin+a.Xmax)/2,-(a.Ymin+a.Ymax)/2);b.zoomAndMove(i,null,h)}else b.stateUpdate(false)},_goToObjectLoadError:function(a,c,b){alert("goToObjectOperationError("+b+"): "+a.get_message())},stateInit:function(){var a=this.get_state();a.Mode=CIC.Map2008.enMapMode.Move;this._attachLinks();this.initToolBar()},stateUpdate:function(a,d){if(!a)a=false;var c=this.get_state(),b=this.get_container();if(a){b.clearSlices();b.clear();CIC.Map2008.WS.SetState(c,a,this._stateUpdated,this._stateUpdateError,{sender:this,isUpdateLayers:a,isRefreshLayerList:d})}else{b.stopLoad();this.get_scale().set_zoom(c.Zoom);this._stateUpdated(c,{sender:this,isUpdateLayers:a},null)}},_stateUpdated:function(g,c){var a=c.sender,e=c.isUpdateLayers;a.set_state(g);a.get_scale().show();var d=a.get_range();d._doResize();d.show();if(a.get_showMiniMap()){var f=a.get_miniMap();!f&&this.set_miniMap($create(CIC.Map2008.MiniMap,{map:a,state:a.get_state(),visible:!a.get_minimizeMiniMap()},null,null,document.createElement("DIV")));a.get_miniMap().refresh(false)}a.get_container().refresh(e);if(c.isRefreshLayerList){var b=$get(a.get_layerListId());if(b!=null)b=b.control.init()}a._zoomStep=0},_stateUpdateError:function(a,c,b){alert("stateOperationError("+b+"): "+a.get_message())},_attachLinks:function(){var a=this.get_layerListId();if(a!=null){var c=$get(a).control;c.set_map(this);c.init()}var b=this.get_infoListId();if(b!=null){var d=$get(b).control;d.set_map(this);this.set_infoList(d)}var e=this.get_searchId();if(e!=null){var h=$get(e).control;h.set_map(this)}var f=this.get_routeId();if(f!=null){var g=$get(f).control;this.set_route(g);g.set_map(this)}},_doToolButtonClicked:function(a){var b=a._map,c=b.get_state();if(a.get_id()==b.get_moveButtonId())c.Mode=CIC.Map2008.enMapMode.Move;if(a.get_id()==b.get_zoomInButtonId())c.Mode=CIC.Map2008.enMapMode.ZoomIn;if(a.get_id()==b.get_zoomOutButtonId())c.Mode=CIC.Map2008.enMapMode.ZoomOut;if(a.get_id()==b.get_infoButtonId())c.Mode=CIC.Map2008.enMapMode.Info},verifyZoom:function(a){var b=this.get_state();a=Math.ceil(a*4)/4;if(a<b.MapZoom.Min)a=b.MapZoom.Min;if(a>b.MapZoom.Max)a=b.MapZoom.Max;return a},init:function(){this.initContainer();var b=this.get_element(),h=Sys.UI.DomElement.getBounds(b);b.style.overflow="hidden";b.style.position="relative";var a=function(c){var a=document.createElement("img");a.src=c;a.style.display="none";b.appendChild(a)};a('WebResource.axd?d=2mLJSz5GBgePUZA6hI-czkhl-6EA4UQPlfbf9TjGGjDb3XxV4p1IfWBoKZArM6fO0&t=634152184631987290');a('WebResource.axd?d=2mLJSz5GBgePUZA6hI-czhB_0NIbgzFCnycf-JfdMPaRqxym4lYanmustmaOxwes0&t=634152184631987290');a('WebResource.axd?d=2mLJSz5GBgePUZA6hI-czhB_0NIbgzFCnycf-JfdMPauOUPRK4-q5FP2eeu5VpKF0&t=634152184631987290');a('WebResource.axd?d=2mLJSz5GBgePUZA6hI-czhB_0NIbgzFCnycf-JfdMPbzempzRUNdmoGfe-_UH9t90&t=634152184631987290');a('WebResource.axd?d=2mLJSz5GBgePUZA6hI-czhB_0NIbgzFCnycf-JfdMPYEtLejFe5O4IZhlu1ccfSc0&t=634152184631987290');a("error.tile");var e=this.get_systemImages(),c=e.createImage("Logo");c.style.position="absolute";c.style.zIndex=254;b.appendChild(c);this.set_copyright(c);var g=$create(CIC.Map2008.Scale,{map:this,x:10,y:100,width:"100px",height:"17px",zoom:8});this.set_scale(g);var f=$create(CIC.Map2008.Range,{map:this});this.set_range(f);this._doResize(this,null);var d=this.get_startUpObjects(),i=[];if(d.length>0)this.goToObject(d[0].idLayer,d[0].idObject,true);else this.stateUpdate(false);this._ready=true},initToolBar:function(){var a=$create(CIC.Map2008.ToolBar,{map:this,visible:this.get_showToolBar()});this.set_toolBar(a)},initialize:function(){CIC.Map2008.Map.callBaseMethod(this,"initialize");this.initSystemImages();document.idMap2008=this.get_id();this.add_mouseDown(this._doMouseDown);this.add_mouseUp(this._doMouseUp);this.add_mouseMove(this._doMouseMove);this.add_mouseWheel(this._doMouseWheel);this.add_resize(this._doResize);this.add_keyDown(this._doKeyDown);this.add_keyUp(this._doKeyUp);this.stateInit();this.init()},dispose:function(){var a=this.get_element();this.remove_mouseDown(this._doMouseDown);this.remove_mouseUp(this._doMouseUp);this.remove_mouseMove(this._doMouseMove);this.remove_mouseWheel(this._doMouseWheel);this.remove_resize(this._doResize);this.remove_keyDown(this._doKeyDown);this.remove_keyUp(this._doKeyUp);CIC.Map2008.Map.callBaseMethod(this,"dispose")}};CIC.Map2008.Map.registerClass("CIC.Map2008.Map",CIC.Map2008.BaseMap);Type.registerNamespace("CIC.Map2008");CIC.Map2008.Animation=function(){};CIC.Map2008.Animation.zoomAndMove=function(h,e,f,c,n,o,m,i,j,g,d){var a=document.getElementById(h).control,b=a.get_container();if(a.get_toolBar){var k=a.get_toolBar();k&&k.updateZoom()}if(d>0){d--;e+=i;f+=j;b.moveTo(e,f);c+=g;var l=b.get_secondSlice();l.set_scale(c);window.setTimeout("CIC.Map2008.Animation.zoomAndMove('"+h+"',"+e+","+f+","+c+","+n+","+o+","+m+","+i+","+j+","+g+","+d+")",50);return}else{b.get_firstSlice().show();a.get_miniMap&&a.get_miniMap()&&a.get_miniMap().refresh(true);a.stateUpdate(false);a.get_route&&a.get_route()!=null&&a.get_route().endRefresh();b.get_firstSlice().showImagePoints()}};CIC.Map2008.Animation.registerClass("CIC.Map2008.Animation",Sys.Component);Type.registerNamespace("CIC.Map2008");CIC.Map2008.Container=function(){CIC.Map2008.Container.initializeBase(this);this._slices=[];this._firstSlice=null;this._secondSlice=null;this._x=0;this._y=0};CIC.Map2008.Container.prototype={get_map:function(){return this._map},set_map:function(a){this._map=a},get_x:function(){return this._x},set_x:function(a){this._x=a;this.moveTo(this._x,this._y)},get_y:function(){return this._y},set_y:function(a){this._y=a;this.moveTo(this._x,this._y)},get_firstSlice:function(){if(this._firstSlice==null)this._firstSlice=this.slices(this.get_map().get_state().Zoom);return this._firstSlice},set_firstSlice:function(a){this._firstSlice=a},get_secondSlice:function(){return this._secondSlice},set_secondSlice:function(a){this._secondSlice=a},get_element:function(){return this._element},set_element:function(a){this._element=a},slices:function(b){for(var a=0;a<this._slices.length;a++)if(this._slices[a].get_zoom()==b)return this._slices[a];return this._addSlice(b)},_addSlice:function(b){var a=$create(CIC.Map2008.Slice,{map:this.get_map(),container:this,zoom:this.get_map().verifyZoom(b*this.get_map().get_multiply())});Array.add(this._slices,a);return a},clear:function(){},clearSlices:function(){this.set_firstSlice(null);this.set_secondSlice(null);for(var a=this._slices.length-1;a>=0;a--)this._slices[a].dispose();Array.clear(this._slices)},clearSelectesObjects:function(){for(var a=0;a<this._slices.length;a++)this._slices[a].clear(CIC.Map2008.enTileStyle.SelectedObject)},refresh:function(a){this.get_firstSlice().refresh(a)},moveTo:function(b,c){var a=this.get_element();a.style.left=Math.ceil(b)+"px";a.style.top=Math.ceil(c)+"px"},stopLoad:function(){this.get_firstSlice().stopLoad()},zoom:function(f,j,k,h,i,g,e,c){this.stopLoad();var b=this.get_firstSlice(),a=this.get_secondSlice();a!=null&&a.hide();this.set_secondSlice(b);this.set_firstSlice(null);var d=b.get_element();d.style.zIndex=1;CIC.Map2008.Animation.zoom(f,j,k,h,i,g,e,c)},zoomAndMove:function(j,k,g,h,i,e){this.stopLoad();var a=4,n=this.get_map().get_id(),o=(h-j)/a,p=(i-k)/a,q=e-g/a,f=1,d=g/e,m=(d-f)/a,c=this.get_firstSlice(),b=this.get_secondSlice();b!=null&&b!=c&&b.hide();this.set_secondSlice(c);this.set_firstSlice(null);var l=c.get_element();l.style.zIndex=1;CIC.Map2008.Animation.zoomAndMove(n,j,k,f,h,i,d,o,p,m,a)},init:function(){var b=Sys.UI.DomElement.getBounds(this.get_map().get_element()),a=document.createElement("DIV");a.id=this.get_map().get_element().id+"_Container";a.style.position="relative";a.style.overflow="visible";a.style.zIndex=50;a.style.left=Math.ceil(b.width/2)+"px";a.style.top=Math.ceil(b.height/2)+"px";a.style.width="10px";a.style.height="10px";this.set_element(a);this.get_map().get_element().appendChild(a)},initialize:function(){CIC.Map2008.Container.callBaseMethod(this,"initialize");this.init()},dispose:function(){CIC.Map2008.Container.callBaseMethod(this,"dispose")}};CIC.Map2008.Container.registerClass("CIC.Map2008.Container",Sys.Component);Type.registerNamespace("CIC.Map2008");CIC.Map2008.Info=function(){CIC.Map2008.Info.initializeBase(this);this._win=null;this._header=null;this._toolbar=null;this._boody=null;this._closeButton=null;this._id="ObjectAttrs"};CIC.Map2008.Info.prototype={get_id:function(){return this._id},set_id:function(a){this._id=a},get_win:function(){return this._win},set_win:function(a){this._win=a},get_winLink:function(){return this._winLink},set_winLink:function(a){this._winLink=a},get_header:function(){return this._header},set_header:function(a){this._header=a},get_toolbar:function(){return this._toolbar},set_toolbar:function(a){this._toolbar=a},get_body:function(){return this._body},set_body:function(a){this._body=a},get_closeButton:function(){return this._closeButton},set_closeButton:function(a){this._closeButton=a},_closeMouse:function(){this.control.hide()},_closeKey:function(b){if(b.rawEvent.keyCode==27){var a=b.target;while(a!=null)if(a.control&&a.control.hide){a.control.hide();return}else a=a.parentNode}},hide:function(){this.get_win().style.display="none"},show:function(c,b,a){this.get_win().style.display="block";if(Sys.Browser.agent==Sys.Browser.Firefox)this.get_header().focus();else this.get_win().focus();if(!b)b="";if(!a)a="";this._infoLoad(c,b,a)},_infoLoad:function(c,b,a){var d=this.get_body();d.innerHTML="Загрузка...";CIC.Map2008.WS.ObjectAttr(b,a,this._infoLoaded,this._infoLoadError,{sender:this,idMap:c,idLayer:b,idObject:a})},_infoLoaded:function(b,c){var d=c.sender,f=d.get_body(),a=new Sys.StringBuilder;a.append("<dl>");for(aName in b.Attributes)if(b.Attributes[aName]){aName!=""&&a.append("<dt>"+aName+"</dt>");a.append("<dd>"+b.Attributes[aName]+"</dd>")}a.append("</dl>");f.innerHTML=a.toString();var e=d.get_toolbar();a=new Sys.StringBuilder;a.append('<a href="javascript:');a.append("CIC.Map2008.Go('"+d.get_id()+"','hide');");a.append("CIC.Map2008.Go('"+c.idMap+"','goToObject','"+c.idLayer+"','"+c.idObject+"',true);");a.append('">Показать на карте</a>');if(b.IsAddressed){a.toString()!=""&&a.append("&nbsp;|&nbsp;");a.append('<a href="javascript:');a.append("CIC.Map2008.Go('"+d.get_id()+"','hide');");a.append("CIC.Map2008.Go('InfoList','listByAdrId','"+b.AdrId+"','"+b.AddressText+"');");a.append('">Объекты по адресу</a>')}if(true){a.toString()!=""&&a.append("&nbsp;|&nbsp;");a.append('<a href="javascript:');a.append("CIC.Map2008.Go('"+d.get_id()+"','showLink','"+c.idLayer+"','"+c.idObject+"');");a.append('">Ссылка на объект</a>')}e.innerHTML=a.toString()},_infoLoadError:function(a,c,b){alert("infoOperationError("+b+"): "+a.get_message())},showLink:function(a,c){var b=location.toString();b=b.substr(0,b.toLowerCase().lastIndexOf(".map")+4)+"/";this.get_winLink().show("Ссылка на объект",'Используйте эту ссылку для быстрого перехода на этот объект:<br/><br/><div style="font-size:11pt; font-weight:bold; height:50px;">'+(a=="Construct_Addr_Vlg"||a=="Construct_Addr_Vlz"||a=="StreetAxis_Vlg"||a=="StreetAxis_Vlz"?b+"?adrid="+c:b+"?l="+a+"&o="+c)+"</div>")},_initResize:function(){var win=this.get_win(),updateLine=function(block){block.control=win;with(block.style){position="absolute";backgroundColor="blue"}},block=document.createElement("div");updateLine(block);with(block.style){width="5px";height=parseInt(win.style.height)-10+"px";top="0px";left=parseInt(win.style.width)+"px";cursor="e-resize"}$addHandler(block,"mousedown",function(a){a.target.control._isResize=1;document.body.win_Map2008_ObjectInfo=a.target;a.preventDefault();a.stopPropagation()});var doMouseMove=function(c){var a=document.body.win_Map2008_ObjectInfo;if(!a)return;var b=a.control;if(!b._isResize)return;var f=Sys.UI.DomElement.getBounds(b),e=Sys.UI.DomElement.getBounds(a),d=c.clientX-f.x-e.width;if(d<100)d=100;b.style.width=d+"px";a.style.left=parseInt(b.style.width)+"px";c.preventDefault();c.stopPropagation()};$addHandler(block,"mouseover",doMouseMove);$addHandler(block,"mouseup",function(a){document.body.win_Map2008_ObjectInfo=null;a.target.control._isResize=null});win.appendChild(block);block=document.createElement("div");updateLine(block);with(block.style){width=parseInt(win.style.width)-10+"px";height="5px";top=parseInt(win.style.height)+"px";left="0px";cursor="n-resize"}win.appendChild(block);block=document.createElement("div");updateLine(block);with(block.style){width="15px";height="15px";top=parseInt(win.style.height)-10+"px";left=parseInt(win.style.width)-10+"px";cursor="nw-resize"}win.appendChild(block)},init:function(){var bBody=Sys.UI.DomElement.getBounds(document.body),win=document.createElement("DIV");win.control=this;with(win){id=this.get_id();className="cic-map-object-attr";style.zIndex=255;style.display="none";style.position="absolute";style.width=500+"px";style.height=400+"px";style.top=bBody.height/2-parseInt(win.style.height)/2+"px";style.left=bBody.width/2-parseInt(win.style.width)/2+"px"}this.set_win(win);document.body.appendChild(win);var header=document.createElement("A");with(header){innerHTML="Информация об объекте";href="#";className="header";with(style)display="block"}this.set_header(header);win.appendChild(header);$addHandler(header,"click",function(){return false});var buttonX=document.createElement("IMG");buttonX.control=this;with(buttonX){className="button-x";src="Images/Decor/x.png";title="Закрыть";with(style){display="block";position="absolute";top="10px";left="482px";width="8px";height="8px"}}header.appendChild(buttonX);this.set_closeButton(buttonX);$addHandler(buttonX,"click",this._closeMouse);$addHandler(win,"keypress",this._closeKey);var body=document.createElement("div");with(body){className="body";overflow="auto"}win.appendChild(body);this.set_body(body);var tools=document.createElement("div");with(tools)className="toolbar";win.appendChild(tools);this.set_toolbar(tools);var winLink=$create(CIC.Map2008.Window,{width:450,height:130});this.set_winLink(winLink)},initialize:function(){CIC.Map2008.Info.callBaseMethod(this,"initialize");this.init()},dispose:function(){CIC.Map2008.Info.callBaseMethod(this,"dispose")}};CIC.Map2008.Info.registerClass("CIC.Map2008.Info",Sys.Component);Type.registerNamespace("CIC.Map2008");CIC.Map2008.InfoList=function(a){CIC.Map2008.InfoList.initializeBase(this,[a])};CIC.Map2008.InfoList.prototype={get_map:function(){return this._map},set_map:function(a){this._map=a},get_info:function(){return this._info},set_info:function(a){this._info=a},show:function(b,c,a){this._infoListLoad(b,c,a)},_infoListLoad:function(d,e,c){var b=this.get_element();b.innerHTML="Поиск...";var a={};a.sender=this;CIC.Map2008.WS.InfoList(d,e,c,this._infoListLoaded,this._infoListLoadError,a)},_infoListLoaded:function(d,i,h){var e=i.sender,k=e.get_map().get_id(),j=e.get_element(),a=new Sys.StringBuilder;h=="ObjectsByAdrId"&&a.append(String.format("<div class='title'>Объекты по адресу<br/>{0}</div>",i.address));if(d.length>0){a.append('<ul class="object-groups">');for(var f=0;f<d.length;f++){var c=d[f];a.append('<li class="object-groups-item">');a.append('<div class="object-groups-item-title">');a.append(c.Name+" ("+c.Objects.length+")");a.append("</div>");a.append('<ul class="object-list">');for(var g=0;g<c.Objects.length;g++){var b=c.Objects[g];a.append('<li class="object-list-item">');a.append('<img src="images/symbol/'+b.idLayer+'.gif" style="width:16px;height:16px;"/> - ');a.append("<a href=\"javascript:CIC.Map2008.Go('"+k+"','goToObject','"+b.idLayer+"','"+b.idObject+"',"+(h=="ObjectsByAdrId")+')">'+b.Name+"</a> ");b.Comment!=""&&a.append("<br/>"+b.Comment+"");a.append('<br/><span class="tools">');a.append("<a href=\"javascript:CIC.Map2008.Go('"+e.get_map().get_infoListId()+"','infoShow','"+b.idLayer+"','"+b.idObject+"')\">подробнее</a>");a.append("</span>");a.append("</li>")}a.append("</ul>");a.append("</li>")}a.append("</ul>")}else a.append("Объекты не найдены");j.innerHTML=a.toString()},_infoListLoadError:function(a,c,b){alert("infoListOperationError("+b+"): "+a.get_message())},listByAdrId:function(d,b){var c=this.get_element();c.innerHTML="Поиск...";CIC.Map2008.PageControl.selectPagesLeft("PageInfoList");var a={};a.sender=this;a.address=b;CIC.Map2008.WS.ObjectsByAdrId(d,this._infoListLoaded,this._infoListLoadError,a)},infoShow:function(b,a){var c=this.get_info();c.show(this.get_map().get_id(),b,a)},_startPageLoad:function(){this.get_element().innerHTML="Загрузка...";CIC.Map2008.WS.StartPage(this._startPageLoaded,this._startPageLoadError,this)},_startPageLoaded:function(b,a){a.get_element().innerHTML=b},_startPageLoadError:function(a,c,b){alert("infoListOperationError("+b+"): "+a.get_message())},init:function(){this._startPageLoad();var a=$create(CIC.Map2008.Info,{});this.set_info(a)},initialize:function(){CIC.Map2008.InfoList.callBaseMethod(this,"initialize");this.init()},dispose:function(){CIC.Map2008.InfoList.callBaseMethod(this,"dispose")}};CIC.Map2008.InfoList.registerClass("CIC.Map2008.InfoList",Sys.UI.Control);Type.registerNamespace("CIC.Map2008");CIC.Map2008.LayerList=function(a){CIC.Map2008.LayerList.initializeBase(this,[a]);this._resizeDelegate=null;this._map=null;this._rootItem=null};CIC.Map2008.LayerList.prototype={get_map:function(){return this._map},set_map:function(a){this._map=a},get_rootItem:function(){return this._rootItem},set_rootItem:function(a){this._rootItem=a},add_resize:function(a){this.get_events().addHandler("resize",a)},remove_resize:function(a){this.get_events().removeHandler("resize",a)},_resizeHandler:function(b){var a=this.get_events().getHandler("resize");a&&a(this,b)},layerLoad:function(a,c){var b=null;if(CIC.Map2008.LayerList.isInstanceOfType(a))b=a.get_element();else if(CIC.Map2008.LayerListItem.isInstanceOfType(a))b=a.get_container();b.innerHTML="<div style='clear: both'>Загрузка...</div>";CIC.Map2008.WS.GetLayers(c,this._layerLoaded,this._layerLoadError,a)},_layerLoaded:function(b,c){var i=c.get_list(),h=c.get_container(),e=c,f=c.get_list().get_map().get_state();h.innerHTML="";for(var g,d,a=0;a<b.length;a++){d=c.get_checked();if(d!=null&&d!=0)d=c.get_checked();else if(Array.indexOf(f.Layers,"+"+b[a].Id)>=0)d=1;else if(Array.indexOf(f.Layers,"-"+b[a].Id)>=0)d=-1;else d=0;g=$create(CIC.Map2008.LayerListItem,{idLayer:b[a].Id,name:b[a].Name,isLayer:b[a].IsLayer,isChilds:b[a].IsChilds,isSearch:b[a].IsSearch,parentItem:e,list:i,checked:d,isSymbol:b[a].IsSymbol});e!=null&&Array.add(e.get_childs(),g)}c.get_list()._doResize(c.get_list(),null)},_layerLoadError:function(a,c,b){alert("layerOperationError("+b+"): "+a.get_message())},_doResize:function(f){var c=f.get_element(),b=Sys.UI.DomElement.getBounds(c);if(b.width==0&&b.height==0)return;var e=0,a=f.get_rootItem().get_element(),h=a.scrollTop;a.style.height=null;a.style.width=b.width-1+"px";for(var g=Sys.UI.DomElement.getBounds(a),d=0;d<c.childNodes.length;d++)if(c.childNodes[d].tagName)if(c.childNodes[d]!=a){var i=Sys.UI.DomElement.getBounds(c.childNodes[d]);e+=i.height}if(b.height-e-g.height>0)a.style.height=g.height+20+"px";else if(b.height-e>0)a.style.height=b.height-e+"px";else a.style.height=0+"px";a.scrollTop=h},init:function(){var c=this.get_element();c.innerHTML="";var b=$create(CIC.Map2008.LayerListItem,{idLayer:null,name:null,isChilds:true,parentItem:null,list:this,checked:null});c.appendChild(b.get_element());b.get_element().style.overflow="auto";this.set_rootItem(b);var a=document.createElement("input");a.type="button";a.value="Применить";a._layerList=this;$addHandler(a,"click",function(){this._layerList.get_map().stateUpdate(true)});var d=document.createElement("div");d.style.padding="5px 0 0 0";d.appendChild(a);c.appendChild(d);this.layerLoad(b,null)},initialize:function(){CIC.Map2008.LayerList.callBaseMethod(this,"initialize");if(this._resizeDelegate===null)this._resizeDelegate=Function.createDelegate(this,this._resizeHandler);$addHandler(window,"resize",this._resizeDelegate);this.add_resize(this._doResize)},dispose:function(){this.remove_resize(this._doResize);if(this._resizeDelegate){$removeHandler(window,"resize",this._resizeDelegate);delete this._resizeDelegate}CIC.Map2008.LayerList.callBaseMethod(this,"dispose")}};CIC.Map2008.LayerList.registerClass("CIC.Map2008.LayerList",Sys.UI.Control);Type.registerNamespace("CIC.Map2008");CIC.Map2008.LayerListItem=function(){CIC.Map2008.LayerListItem.initializeBase(this);this._clickTreeButtonDelegate=null;this._clickCheckBoxDelegate=null;this._parentItem=null;this._list=null;this._element=null;this._container=null;this._treeButton=null;this._checkBox=null;this._id=null;this._name="???";this._isChilds=false;this._childs=[];this._loader=false;this._checked=-1;this._isSymbol=false;this._isLayer=true};CIC.Map2008.LayerListItem.prototype={get_parentItem:function(){return this._parentItem},set_parentItem:function(a){this._parentItem=a},get_element:function(){return this._element},set_element:function(a){this._element=a},get_container:function(){return this._container},set_container:function(a){this._container=a},get_treeButton:function(){return this._treeButton},set_treeButton:function(a){this._treeButton=a},get_checkBox:function(){return this._checkBox},set_checkBox:function(a){this._checkBox=a},get_list:function(){return this._list},set_list:function(a){this._list=a},get_idLayer:function(){return this._idLayer},set_idLayer:function(a){this._idLayer=a},get_name:function(){return this._name},set_name:function(a){this._name=a},get_isLayer:function(){return this._isLayer},set_isLayer:function(a){this._isLayer=a},get_isSymbol:function(){return this._isSymbol},set_isSymbol:function(a){this._isSymbol=a},get_isChilds:function(){return this._isChilds},set_isChilds:function(a){this._isChilds=a},get_isSearch:function(){return this._isSearch},set_isSearch:function(a){this._isSearch=a},get_childs:function(){return this._childs},set_childs:function(a){this._childs=a},get_loaded:function(){return this._loaded},set_loaded:function(a){this._loaded=a},get_checked:function(){return this._checked},set_checked:function(c){this._checked=c;var a=this.get_checkBox();if(a==null)return;var b=this.get_list().get_map().get_systemImages();switch(c){case 1:b.changeImage(a,"Checked");break;case -1:b.changeImage(a,"Unchecked");break;case 0:b.changeImage(a,"Interdeterminate")}},add_clickTreeButton:function(a){this.get_events().addHandler("clickTreeButton",a)},remove_clickTreeButton:function(a){this.get_events().removeHandler("clickTreeButton",a)},add_clickCheckBox:function(a){this.get_events().addHandler("clickCheckBox",a)},remove_clickCheckBox:function(a){this.get_events().removeHandler("clickCheckBox",a)},_clickTreeButtonHandler:function(b){var a=this.get_events().getHandler("clickTreeButton");a&&a(this,b)},_clickCheckBoxHandler:function(b){var a=this.get_events().getHandler("clickCheckBox");a&&a(this,b)},_treeButtonClick:function(a){var b=a.get_container(),c=a.get_treeButton(),d=a.get_list().get_map().get_systemImages();if(b.style.display=="block"){d.changeImage(c,"Plus");b.style.display="none"}else{d.changeImage(c,"Minus");b.style.display="block";if(!a.get_loaded()){a.get_list().layerLoad(a,a.get_idLayer());a.set_loaded(true)}}a.get_list()._doResize(a.get_list(),null)},_checkBoxClick:function(a){var c=a.get_list().get_map().get_state(),b=a.get_checked();switch(b){case 1:b=-1;break;case -1:b=1;break;case 0:b=1}Array.remove(c.LayersUpdated,"+"+a.get_idLayer());Array.remove(c.LayersUpdated,"-"+a.get_idLayer());Array.add(c.LayersUpdated,(b==1?"+":"-")+a.get_idLayer());a.set_checked(b);a._updateCheckToDown();a._updateCheckToUp()},_updateCheckToDown:function(){var c=this.get_checked();if(this.get_isChilds())for(var b=this.get_childs(),a=0;a<b.length;a++){b[a].set_checked(c);b[a]._updateCheckToDown()}},_updateCheckToUp:function(){var c=this.get_parentItem();if(c!=null){for(var b,a=null,e=c.get_childs(),d=0;d<e.length;d++){b=e[d].get_checked();if(a==null)a=b;else if(a==1&&b==-1||a==-1&&b==1||b==0)a=0}c.set_checked(a);c._updateCheckToUp()}},init:function(){var l=this.get_list().get_map(),k=l.get_systemImages(),j,h=this.get_parentItem();if(h==null)j=this.get_list().get_element();else j=h.get_container();var a=document.createElement("DIV");a.id="LayerListItem_"+this.get_idLayer();a.className="layerlist-item";a.style.position="relative";a.style.whiteSpace="nowrap";a.style.clear="both";j.appendChild(a);this.set_element(a);if(h!=null){var d=k.createImage("Blank");d.style.verticalAlign="middle";d.style.styleFloat="left";d.style.cssFloat="left";d.style.marginRight="1px";if(this.get_isChilds()){k.changeImage(d,"Plus");d.style.cursor="pointer";this.set_treeButton(d)}a.appendChild(d);if(this.get_isSymbol()){var b=document.createElement("IMG");b.style.position="relative";b.style.styleFloat="left";b.style.cssFloat="left";b.style.margin="0px 1px 3px 0px";if(!this.get_isLayer())b.style.margin="0px 4px 3px 0px";b.src="images/symbol/"+this.get_idLayer()+".gif";b.style.verticalAlign="middle";b.style.width="16px";b.style.height="16px";a.appendChild(b)}var f=null;if(this.get_isLayer()){f=k.createImage();f.style.styleFloat="left";f.style.cssFloat="left";f.style.marginRight="2px";f.style.verticalAlign="middle";a.appendChild(f);this.set_checkBox(f);this.set_checked(this.get_checked())}var c=document.createElement("DIV");c.style.overflow="visible";c.style.styleFloat="left";c.style.cssFloat="left";c.style.width="1px";a.appendChild(c);if(Sys.Browser.agent==Sys.Browser.InternetExplorer&&Sys.Browser.version<7){var m=Sys.UI.DomElement.getBounds(a.parentElement),n=Sys.UI.DomElement.getBounds(this.get_list().get_element());c.style.overflow="hidden";c.style.width=n.width-m.x-65+"px"}else c.style.height="1px";var e=document.createElement("SPAN");e.style.whiteSpace="nowrap";if(this.get_isSearch()){var g=document.createElement("A");g.href="javascript:CIC.Map2008.Go('"+l.get_searchId()+"','setLayer','"+this.get_idLayer()+"');";g.innerHTML=this.get_name();g.title=g.innerHTML;e.appendChild(g)}else{e.innerHTML=this.get_name();e.title=e.innerHTML}e.style.cursor="default";e.position="relative";c.appendChild(e)}if(this.get_isChilds()){var i=document.createElement("DIV");if(h!=null){i.style.marginLeft="17px";i.style.display="none"}a.appendChild(i);this.set_container(i)}},initialize:function(){CIC.Map2008.LayerListItem.callBaseMethod(this,"initialize");this.init();var c=this.get_element(),a=this.get_treeButton(),b=this.get_checkBox();if(a!=null){if(this._clickTreeButtonDelegate===null)this._clickTreeButtonDelegate=Function.createDelegate(this,this._clickTreeButtonHandler);$addHandler(a,"click",this._clickTreeButtonDelegate);this.add_clickTreeButton(this._treeButtonClick)}if(b!=null){if(this._clickCheckBoxDelegate===null)this._clickCheckBoxDelegate=Function.createDelegate(this,this._clickCheckBoxHandler);$addHandler(b,"click",this._clickCheckBoxDelegate);this.add_clickCheckBox(this._checkBoxClick)}},dispose:function(){var c=this.get_element(),a=this.get_treeButton(),b=this.get_checkBox();if(a!=null){this.remove_clickTreeButton(this._treeButtonClick);if(this._clickTreeButtonDelegate){$removeHandler(a,"click",this._clickTreeButtonDelegate);delete this._clickTreeButtonDelegate}}if(b!=null){this.remove_clickCheckBox(this._checkBoxClick);if(this._clickCheckBoxDelegate){$removeHandler(b,"click",this._clickCheckBoxDelegate);delete this._clickCheckBoxDelegate}}CIC.Map2008.LayerListItem.callBaseMethod(this,"dispose")}};CIC.Map2008.LayerListItem.registerClass("CIC.Map2008.LayerListItem",Sys.Component);Type.registerNamespace("CIC.Map2008");CIC.Map2008.Search=function(a){CIC.Map2008.Search.initializeBase(this,[a]);this._resizeDelegate=null;this._map=null;this._layers=null;this._searchParams=null;this._searchPHControl=null;this._layersControl=null;this._textControl=null;this._resultControl=null;this._buttonControl=null};CIC.Map2008.Search.prototype={get_map:function(){return this._map},set_map:function(a){this._map=a},get_layers:function(){return this._layers},set_layers:function(a){this._layers=a},get_searchParamsControl:function(){return this._searchParamsControl},set_searchParamsControl:function(a){this._searchParamsControl=a},get_searchPHControl:function(){return this._searchPHControl},set_searchPHControl:function(a){this._searchPHControl=a},get_layersControl:function(){return this._layersControl},set_layersControl:function(a){this._layersControl=a},get_textControl:function(){return this._textControl},set_textControl:function(a){this._textControl=a},get_resultControl:function(){return this._resultControl},set_resultControl:function(a){this._resultControl=a},get_buttonControl:function(){return this._buttonControl},set_buttonControl:function(a){this._buttonControl=a},add_resize:function(a){this.get_events().addHandler("resize",a)},remove_resize:function(a){this.get_events().removeHandler("resize",a)},_resizeHandler:function(b){var a=this.get_events().getHandler("resize");a&&a(this,b)},setLayer:function(d){var c=this.get_layersControl(),e=this.get_searchPHControl(),b=this.get_layers();selectPagesLeft($get("PageSearch"));c.selectedIndex=0;for(var a=0;a<b.length;a++)if(b[a].id==d){c.selectedIndex=a+1;e.style.display="block";break}this._doResize(this);this.get_textControl().focus()},search:function(c,d,a,b){if(!c)c=this.get_layersControl().value;if(!d)d=this.get_textControl().value;if(!a)a=0;if(!b)b=10;this._searchLoad(c,d,a,b)},searchByLayer:function(a){this.setLayer(a);this.search(a)},_searchLoad:function(d,e,b,c){this.get_resultControl().innerHTML="Поиск...";var a={};a.sender=this;a.idLayer=d;a.name=e;a.firstRow=b;a.pageSize=c;CIC.Map2008.WS.Search(d,e,b,c,this._searchLoaded,this._searchLoadeError,a)},_searchLoaded:function(b,d){var f=d.sender,h=f.get_map().get_id(),a=new Sys.StringBuilder,g=new Sys.StringBuilder;if(b.LayerPath.length>1){a.append('<div class="layer-path">');for(var c=0;c<b.LayerPath.length;c++){c!=0&&a.append("&nbsp;&gt; ");if(c!=b.LayerPath.length-1)a.append("<a href=\"javascript:CIC.Map2008.Go('"+f.get_id()+"','searchByLayer','"+b.LayerPath[c].Id+"');\">"+b.LayerPath[c].Name+"</a>");else a.append("<span>"+b.LayerPath[c].Name+"</span>")}a.append("</div>")}if(b.Layers.length>1){a.append('<div class="layer-list">');for(var c=0;c<b.Layers.length;c++){if(b.Layers[c].Count>0){a.append('<div class="layer-list-item" style="margin-left: '+(b.Layers[c].Level*20+28)+'px;text-indent: -28px;">');a.append('<img src="images/symbol/'+(b.Layers[c].Id=="?"?"all":b.Layers[c].Id)+'.gif"/> - ');a.append("<a href=\"javascript:CIC.Map2008.Go('"+f.get_id()+"','searchByLayer','"+b.Layers[c].Id+"');\">");a.append(b.Layers[c].Name);a.append("</a>");a.append(" ("+b.Layers[c].Count+")")}else{a.append('<div class="layer-list-item-header" style="margin-left: '+b.Layers[c].Level*20+'px;">');a.append(b.Layers[c].Name)}a.append("</div>")}a.append("</div>")}else if(b.Objects.length>0){a.append("<b>Найдено: "+b.Count+"</b>");if(d.pageSize<b.Count){g.append("<div style='text-align: center;'>");b.FirstRow-b.PageSize>=0&&g.append("<a href=\"javascript:CIC.Map2008.Go('"+f.get_id()+"','search','"+d.idLayer+"','"+d.name+"',"+(d.firstRow-d.pageSize)+","+d.pageSize+')" style="text-decoration:none;">&nbsp;&lt;&nbsp;</a>');g.append(b.FirstRow+1+" - "+(b.LastRow+1));b.LastRow!=b.Count-1&&g.append("<a href=\"javascript:CIC.Map2008.Go('"+f.get_id()+"','search','"+d.idLayer+"','"+d.name+"',"+(d.firstRow+d.pageSize)+","+d.pageSize+')" style="text-decoration:none;">&nbsp;&gt;&nbsp;</a>');g.append("</div>")}a.append('<ul class="object-list">');for(var c=0;c<b.Objects.length;c++){var e=b.Objects[c];a.append('<li class="object-list-item">');a.append('<img src="images/symbol/'+e.idLayer+'.gif"/> - ');a.append("<a href=\"javascript:CIC.Map2008.Go('"+h+"','goToObject','"+e.idLayer+"','"+e.idObject+"',true)\">"+e.Name+"</a>");e.Comment!=""&&a.append("<br/>"+e.Comment+"");a.append('<br/><span class="tools">');a.append("<a href=\"javascript:CIC.Map2008.Go('"+f.get_map().get_infoListId()+"','infoShow','"+e.idLayer+"','"+e.idObject+"')\">подробнее</a>");a.append("</span>");a.append("</li>")}a.append("</ul>");a.append(g.toString());a.append("<br/>")}else a.append("По Вашему запросу не найдено ни одного объекта");f.get_resultControl().innerHTML=a.toString()},_searchLoadError:function(a,c,b){alert("searchOperationError("+b+"): "+a.get_message())},_doResize:function(a){CIC.Map2008.MakeUp([a.get_resultControl()],null,null,null,"b[0].height - b[1].height",[a.get_element(),a.get_searchParamsControl()]);a.focus()},focus:function(){Sys.UI.DomElement.getBounds(this.get_textControl()).width>0&&this.get_textControl().focus()},init:function(){var element=this.get_element(),layers=this.get_layers(),sp=document.createElement("div");element.appendChild(sp);this.set_searchParamsControl(sp);var ph=document.createElement("div");sp.appendChild(ph);this.set_searchPHControl(ph);obj=document.createElement("label");obj.innerHTML="Найти:";ph.appendChild(obj);var txt=document.createElement("input");txt.control=this;with(txt){type="text";style.width="272px";style.padding="0px";style.margin="0px"}ph.appendChild(txt);this.set_textControl(txt);var obj=document.createElement("label");obj.innerHTML="Слой:";sp.appendChild(obj);var __addOption=function(c,d,b){var a=document.createElement("option");a.innerHTML=b;a.value=d;c.appendChild(a)};obj=document.createElement("div");var sel=document.createElement("select");sel.control=this;sel.style.width="276px";__addOption(sel,"?","[Все слои]");for(var i=0;i<layers.length;i++)__addOption(sel,layers[i].id,layers[i].name);obj.appendChild(sel);sp.appendChild(obj);this.set_layersControl(sel);sp.appendChild(document.createElement("br"));var but;but=document.createElement("input");but.type="button";but.value="Поиск";but.control=this;sp.appendChild(but);this.set_buttonControl(but);sp.appendChild(document.createElement("br"));sp.appendChild(document.createElement("br"));obj=document.createElement("div");obj.style.overflow="auto";obj.style.height=300+"px";element.appendChild(obj);this.set_resultControl(obj);var onSearch=function(b){var a=b.target.control;a.search()};$addHandler(txt,"keypress",function(a){if(a.rawEvent.keyCode==13){var b=a.target.control,c=b.get_buttonControl();onSearch(a);a.preventDefault();a.stopPropagation()}});$addHandler(but,"click",function(a){onSearch(a);return false});this._doResize(this,null)},initialize:function(){CIC.Map2008.Search.callBaseMethod(this,"initialize");this.init();if(this._resizeDelegate===null)this._resizeDelegate=Function.createDelegate(this,this._resizeHandler);$addHandler(window,"resize",this._resizeDelegate);this.add_resize(this._doResize)},dispose:function(){this.remove_resize(this._doResize);if(this._resizeDelegate){$removeHandler(window,"resize",this._resizeDelegate);delete this._resizeDelegate}CIC.Map2008.Search.callBaseMethod(this,"dispose")}};CIC.Map2008.Search.registerClass("CIC.Map2008.Search",Sys.UI.Control);Type.registerNamespace("CIC.Map2008");CIC.Map2008.Slice=function(){CIC.Map2008.Slice.initializeBase(this);this._items=[];this._zoom=-1;this._map=null;this._container=null};CIC.Map2008.Slice.prototype={get_map:function(){return this._map},set_map:function(a){this._map=a},get_container:function(){return this._container},set_container:function(a){this._container=a},get_zoom:function(){return this._zoom},set_zoom:function(a){this._zoom=a},get_scale:function(){return this._scale},set_scale:function(b){Sys.Application.beginUpdate();for(var a=0;a<this._items.length;a++)this._items[a].set_scale(b);Sys.Application.endUpdate()},get_element:function(){return this._element},set_element:function(a){this._element=a},items:function(c,d,b){for(var a=0;a<this._items.length;a++)if(this._items[a].get_i()==c&&this._items[a].get_j()==d&&this._items[a].get_style()==b)return this._items[a];return this._add(c,d,b)},clear:function(d){this.stopLoad();for(var c,a=this._items,b=a.length-1;b>=0;b--)if(d==null||a[b].get_style()==d){c=a[b];Array.remove(a,c);c.dispose()}},_add:function(c,d,b){var a=$create(CIC.Map2008.Tile,{map:this.get_map(),container:this.get_container(),slice:this,i:c,j:d,zoom:this.get_zoom(),style:b});Array.add(this._items,a);return a},stopLoad:function(){for(var a=0;a<this._items.length;a++)this._items[a].stopLoad()},refresh:function(j){var m=this.get_map().get_state(),e=Sys.UI.DomElement.getBounds(this.get_map().get_element()),k=Sys.UI.DomElement.getLocation(this.get_container().get_element()),g=Math.floor((e.x-k.x)/m.TileWidth),i=Math.floor((e.y-k.y)/m.TileHeight),f=Math.floor((e.x+e.width-k.x)/m.TileWidth),h=Math.floor((e.y+e.height-k.y)/m.TileHeight),n=function(a,b,d,c,f,e){return a>=d&&a<=c&&b>=f&&b<=e},o=Math.round((g+f)/2),p=Math.round((i+h)/2),c=imax1=o,d=jmax1=p,a;do{var l=this.get_map().get_selectedObjects().length>0,b;for(a=c;a<=imax1;a++)if(n(a,d,g,f,i,h)){b=this.items(a,d,CIC.Map2008.enTileStyle.Image);l&&this.items(a,d,CIC.Map2008.enTileStyle.SelectedObject).load();(j||b.get_state()==CIC.Map2008.enTileState.None)&&b.load()}for(a=d+1;a<=jmax1;a++)if(n(imax1,a,g,f,i,h)){b=this.items(imax1,a,CIC.Map2008.enTileStyle.Image);l&&this.items(imax1,a,CIC.Map2008.enTileStyle.SelectedObject).load();(j||b.get_state()==CIC.Map2008.enTileState.None)&&b.load()}for(a=imax1+1;a>=c;a--)if(n(a,jmax1,g,f,i,h)){b=this.items(a,jmax1,CIC.Map2008.enTileStyle.Image);l&&this.items(a,jmax1,CIC.Map2008.enTileStyle.SelectedObject).load();(j||b.get_state()==CIC.Map2008.enTileState.None)&&b.load()}for(a=jmax1+1;a>=d-1;a--)if(n(c,a,g,f,i,h)){b=this.items(c,a,CIC.Map2008.enTileStyle.Image);l&&this.items(c,a,CIC.Map2008.enTileStyle.SelectedObject).load();(j||b.get_state()==CIC.Map2008.enTileState.None)&&b.load()}c--;imax1++;d--;jmax1++}while(c>=g||imax1<=f||d>=i||jmax1<=h)},showImagePoints:function(){for(var a=0;a<this._items.length;a++)this._items[a].showImagePoints()},reset:function(){var a=this.get_element();a.style.zIndex=50;this.set_scale(1)},hide:function(){var a=this.get_element();a.style.display="none";this.reset()},show:function(){var a=this.get_element();a.style.display="block"},init:function(){var bMap=Sys.UI.DomElement.getBounds(this.get_map().get_element()),element=document.createElement("DIV");with(element){element.zoom=this.get_zoom();with(style){position="absolute";overflow="visible";width="10px";height="10px"}}this.get_container().get_element().appendChild(element);this.set_element(element);this.reset()},initialize:function(){CIC.Map2008.Slice.callBaseMethod(this,"initialize");this.init()},dispose:function(){var a=this.get_element();a.parentNode.removeChild(a);CIC.Map2008.Slice.callBaseMethod(this,"dispose")}};CIC.Map2008.Slice.registerClass("CIC.Map2008.Slice",Sys.Component);Type.registerNamespace("CIC.Map2008");CIC.Map2008.enTileStyle=function(){};CIC.Map2008.enTileStyle.prototype={None:0,Image:1,SelectedObject:2};CIC.Map2008.enTileStyle.registerEnum("CIC.Map2008.enTileStyle");CIC.Map2008.enTileState=function(){};CIC.Map2008.enTileState.prototype={None:0,Loading:1,Ready:2,Stop:3,Error:4};CIC.Map2008.enTileState.registerEnum("CIC.Map2008.enTileState");CIC.Map2008.Tile=function(){CIC.Map2008.Tile.initializeBase(this);this._map=null;this._container=null;this._slice=null;this._imagePoints=[];this._style=CIC.Map2008.enTileStyle.None;this._state=CIC.Map2008.enTileState.None};CIC.Map2008.Tile.prototype={get_img:function(){return this._img},set_img:function(a){this._img=a},get_map:function(){return this._map},set_map:function(a){this._map=a},get_container:function(){return this._container},set_container:function(a){this._container=a},get_slice:function(){return this._slice},set_slice:function(a){this._slice=a},get_i:function(){return this._i},set_i:function(a){this._i=a},get_j:function(){return this._j},set_j:function(a){this._j=a},get_zoom:function(){return this._zoom},set_zoom:function(a){this._zoom=a},get_scale:function(){return this._scale},set_scale:function(value){this._scale=value;var L=Math.round(this._i*this._map._state.TileWidth*value),T=Math.round(this._j*this._map._state.TileHeight*value),W=Math.round((this._i+1)*this._map._state.TileWidth*value)-L,H=Math.round((this._j+1)*this._map._state.TileWidth*value)-T;with(this._img.style){left=L+"px";top=T+"px";width=W+"px";height=H+"px"}this.hideImagePoints()},hideImagePoints:function(){if(this._imagePoints.length>0)for(var a=0;a<this._imagePoints.length;a++)this._imagePoints[a].style.display="none"},showImagePoints:function(){if(this._imagePoints.length>0)for(var a=0;a<this._imagePoints.length;a++)this._imagePoints[a].style.display="block"},get_state:function(){return this._state},set_state:function(a){this._state=a},get_style:function(){return this._style},set_style:function(a){this._style=a},get_idImage:function(){return this.get_map().get_element().id+"_Tile_"+this.get_i()+"_"+this.get_j()+"_"+this.get_style()},show:function(){this.showImagePoints();if(this.get_img()){this.get_img().style.display="block";if(this.get_img().imgDiv)this.get_img().imgDiv.style.display="block"}},hide:function(){this.hideImagePoints();if(this.get_img()){this.get_img().style.display="none";if(this.get_img().imgDiv)this.get_img().imgDiv.style.display="none"}},stopLoad:function(){if(this.get_state()==CIC.Map2008.enTileState.Loading){var a=this.get_img();this.hide();this.set_state(CIC.Map2008.enTileState.None);a.src="images/blank.png"}},Init:function(){var state=this.get_map().get_state(),img=document.createElement("IMG");img.control=this;with(img){id=this.get_idImage();unselectable="on";with(style){display="none";position="absolute";left=this.get_i()*state.TileWidth+"px";top=this.get_j()*state.TileHeight+"px";width=state.TileWidth+"px";height=state.TileHeight+"px"}}this.set_img(img);if(this.get_style()==CIC.Map2008.enTileStyle.SelectedObject&&(Sys.Browser.agent==Sys.Browser.InternetExplorer&&Sys.Browser.version<7)){img.style.filter="progid:DXImageTransform.Microsoft.Alpha(opacity=0)";var imgDiv=document.createElement("DIV");with(imgDiv){unselectable="on";with(style){display="none";position="absolute";left=img.style.left;top=img.style.top;width=img.style.width;height=img.style.height}}img.imgDiv=imgDiv;imgDiv.appendChild(img);this.get_slice().get_element().appendChild(imgDiv)}else this.get_slice().get_element().appendChild(img);this.set_state(CIC.Map2008.enTileState.None);switch(this.get_style()){case CIC.Map2008.enTileStyle.Image:img.zIndex=100;break;case CIC.Map2008.enTileStyle.SelectedObject:img.zIndex=101}$addHandler(img,"load",function(){var a=this.control;if(this.src.indexOf("blank.png")>=0){a.set_state(CIC.Map2008.enTileState.None);a.hide()}else if(this.src.indexOf("tiles/error.png")>=0){a.set_state(CIC.Map2008.enTileState.None);a.show()}else{a.set_state(CIC.Map2008.enTileState.Ready);a.show()}});var $addHandler1=Sys.UI.DomEvent.addHandler=function(a,d,e){if(!a._events)a._events={};var c=a._events[d];if(!c)a._events[d]=c=[];var b;if(a.addEventListener){b=function(b){return e.call(a,new Sys.UI.DomEvent(b))};a.addEventListener(d,b,false)}else if(a.attachEvent){b=function(){var b={};try{b=Sys.UI.DomElement._getWindow(a).event}catch(c){}return e.call(a,new Sys.UI.DomEvent(b))};a.attachEvent("on"+d,b)}c[c.length]={handler:e,browserHandler:b}};$addHandler1(img,"error",function(){if(this.control.get_state()!=CIC.Map2008.enTileState.None){this.src="tiles/error.png";return}})},load:function(){if(this.get_state()==CIC.Map2008.enTileState.Ready||this.get_state()==CIC.Map2008.enTileState.Loading)return;this.set_state(CIC.Map2008.enTileState.Loading);this.hide();var c=this.get_img(),a=this.get_map().get_state(),e=a.Status;if(CIC.Map2008.MiniMap.isInstanceOfType(this.get_map()))e="-";var d=this.get_map().get_rootUrl()+a.Id+"/"+e+"/"+this.get_i()+"/"+this.get_j()+"/"+this.get_zoom().toString().replace(".","_")+"/tile.png";if(this.get_style()==CIC.Map2008.enTileStyle.SelectedObject){var b=this.get_map().get_selectedObjects();if(b.length>0)d+="?lid="+b[0].idLayer+"&oid="+b[0].idObject;if(Sys.Browser.agent==Sys.Browser.InternetExplorer&&Sys.Browser.version<7)if(c.imgDiv)c.imgDiv.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader (src='"+d+"', sizingMethod='crop')"}!CIC.Map2008.MiniMap.isInstanceOfType(this.get_map())&&CIC.Map2008.WS.GetImagePoints(a,this.get_i(),this.get_j(),this._imagePointsLoaded,this._imagePointsLoadError,this);c.src=d},_imagePointsLoaded:function(result,sender,operation){for(var map=sender.get_map(),state=map.get_state(),sliceElement=sender.get_slice().get_element(),i=0;i<result.length;i++){var img=document.createElement("img");sliceElement.appendChild(img);var p=map.convertXY_fromMap(map._createPoint(result[i].X,-result[i].Y));img.idLayer=result[i].idLayer;img.idObject=result[i].idObject;img.width=20;img.height=20;with(img){src="images/symbol/"+result[i].idLayer+".png";title=result[i].Name;alt=result[i].Name;with(style){zIndex=200;cursor="help";position="absolute";left=p.x-10+"px";top=p.y-10+"px"}}$addHandler(img,"mousedown",function(a){a.preventDefault();a.stopPropagation();CIC.Map2008.Go("InfoList","infoShow",this.idLayer,this.idObject)});$addHandler(img,"click",function(a){a.preventDefault();a.stopPropagation()});Array.add(sender._imagePoints,img)}},_imagePointsLoadError:function(a,c,b){alert("imagePointsLoadError("+b+"): "+a.get_message())},initialize:function(){CIC.Map2008.Tile.callBaseMethod(this,"initialize");this.Init()},dispose:function(){if(this._img!=null){if(this._img.imgDiv){this._img.imgDiv.removeChild(this._img);this.get_slice().get_element().removeChild(this._img.imgDiv)}else this.get_slice().get_element().removeChild(this._img);this._img=null}CIC.Map2008.Tile.callBaseMethod(this,"dispose")}};CIC.Map2008.Tile.registerClass("CIC.Map2008.Tile",Sys.Component);Type.registerNamespace("CIC.Map2008");CIC.Map2008.Scale=function(){CIC.Map2008.Scale.initializeBase(this);this.set_element(document.createElement("DIV"));this.set_zoomText(document.createElement("DIV"))};CIC.Map2008.Scale.prototype={get_map:function(){return this._map},set_map:function(a){this._map=a},get_element:function(){return this._element},set_element:function(a){this._element=a},get_x:function(){return parseInt(this._element.style.left)},set_x:function(a){this._element.style.left=a+"px"},get_y:function(){return parseInt(this._element.style.top)},set_y:function(a){this._element.style.top=a+"px"},get_zoomText:function(){return this._zoomText},set_zoomText:function(a){this._zoomText=a},get_zoom:function(){return this._zoom},set_zoom:function(a){this._zoom=a;a*=100;var b="";if(a<1e3)b=Math.round(a)+" м ";else if((a=Math.round(a/10)/100)<1e3)b=a+" км";this.get_zoomText().innerHTML=b.replace(".",",")},get_width:function(){return parseInt(this._element.style.width)},set_width:function(a){this._element.style.width=a},get_height:function(){return parseInt(this._element.style.height)},set_height:function(a){this._element.style.height=a},hide:function(){this.get_element().style.display="none"},show:function(){this.get_element().style.display="block";this._doResize()},_doResize:function(){this.get_map()._doResize(this.get_map())},addLine:function(d,b,f,g,e,c){var a=document.createElement("DIV");a.style.position="absolute";a.style.left=f-1+b+"px";a.style.top=g-1+b+"px";a.style.width=e+(1-b)*2+"px";a.style.height=c+(1-b)*2+"px";a.style.fontSize="0pt";switch(b){case 0:a.style.backgroundColor="#FFFFFF";break;case 1:a.style.backgroundColor="#000000"}d.appendChild(a)},Init:function(){this.hide();var a=this.get_element();a.style.position="absolute";a.style.zIndex=254;this.get_map().get_element().appendChild(a);for(var f=100,e=12,d=2,c=0;c<=1;c++){this.addLine(a,c,0,0+5,d,e);this.addLine(a,c,f,0+5,d,e);this.addLine(a,c,0,e+5,f+d,d)}var b=this.get_zoomText();b.style.position="absolute";b.style.left=8+"px";b.style.top=0+"px";b.style.fontFamily="Arial, Sans-Serif";b.style.fontSize="9pt";a.appendChild(b)},initialize:function(){CIC.Map2008.Scale.callBaseMethod(this,"initialize");this.Init()},dispose:function(){CIC.Map2008.Scale.callBaseMethod(this,"dispose")}};CIC.Map2008.Scale.registerClass("CIC.Map2008.Scale",Sys.Component);Type.registerNamespace("CIC.Map2008");CIC.Map2008.ToolBar=function(){CIC.Map2008.ToolBar.initializeBase(this);this.set_element(document.createElement("DIV"));this._buttons=[];this._visible=false};CIC.Map2008.ToolBar.prototype={get_map:function(){return this._map},set_map:function(a){this._map=a},get_visible:function(){return this._visible},set_visible:function(a){this._visible=a},get_element:function(){return this._element},set_element:function(a){this._element=a},get_imageCollection:function(){return this._imageCollection},set_imageCollection:function(a){this._imageCollection=a},get_moving:function(){return this._moving},set_moving:function(a){this._moving=a},get_zoomTop:function(){return this._zoomTop},set_zoomTop:function(a){this._zoomTop=a},get_zoomBottom:function(){return this._zoomBottom},set_zoomBottom:function(a){this._zoomBottom=a},get_zoomLine:function(){return this._zoomLine},set_zoomLine:function(a){this._zoomLine=a},get_zoomIndicator:function(){return this._zoomIndicator},set_zoomIndicator:function(a){this._zoomIndicator=a},get_zoomBlockCount:function(){return this._zoomBlockCount},set_zoomBlockCount:function(a){this._zoomBlockCount=a},get_zoomBlockHeight:function(){return this._zoomBlockHeight},set_zoomBlockHeight:function(a){this._zoomBlockHeight=a},get_buttons:function(a){return this._buttons[a]},set_buttons:function(b,a){this._buttons[b]=a},get_cursorHand1:function(){if(Sys.Browser.agent==Sys.Browser.Opera)return "pointer";else return 'url(WebResource.axd?d=2mLJSz5GBgePUZA6hI-czhB_0NIbgzFCnycf-JfdMPbzempzRUNdmoGfe-_UH9t90&t=634152184631987290), pointer'},get_cursorHand2:function(){if(Sys.Browser.agent==Sys.Browser.Opera)return "default";else return 'url(WebResource.axd?d=2mLJSz5GBgePUZA6hI-czhB_0NIbgzFCnycf-JfdMPYEtLejFe5O4IZhlu1ccfSc0&t=634152184631987290), pointer'},get_zoom:function(){return this._zoom},set_zoom:function(a){this._zoom=a},hide:function(){this._tmpMode=this.get_map().get_state().Mode;this.get_map().get_state().Mode=CIC.Map2008.enMapMode.Move;this.get_element().style.display="none"},show:function(){if(this._tmpMode)this.get_map().get_state().Mode=this._tmpMode;this.get_element().style.display="block"},yToZoom:function(c){var a=this.get_map().get_state(),b=Math.floor(c/this.get_zoomBlockHeight()),d=Math.pow(2,b+Math.log(a.MapZoom.Min)/Math.LN2);return d},updateZoom:function(){var a=this.get_map().get_state();if(this.get_zoom()==a.Zoom)return;this.set_zoom(a.Zoom);var c=this.get_zoomIndicator(),i=this.get_moving(),h=this.get_zoomTop(),f=this.get_zoomLine(),b=this.get_zoomBlockHeight(),g=Sys.UI.DomElement.getBounds(i),e=Sys.UI.DomElement.getBounds(h),k=Sys.UI.DomElement.getBounds(f),d=Sys.UI.DomElement.getBounds(c),j=Math.log(a.Zoom)/Math.LN2-Math.log(a.MapZoom.Min)/Math.LN2;c.style.top=g.height+e.height+b*j+(b-d.height)/2+"px"},resetGroup:function(b){for(var a=0;a<this._buttons.length;a++)this._buttons[a].get_group()==b&&this._buttons[a].set_down(false)},init:function(){!this.get_visible()&&this.hide();var I=10,J=10,w=this.get_map(),v=w.get_state(),h=w.get_systemImages();this.set_imageCollection(h);var o=Math.log(v.MapZoom.Max)/Math.LN2-Math.log(v.MapZoom.Min)/Math.LN2+1;this.set_zoomBlockCount(o);var c=this.get_element();c.id="ToolBar1";c.style.position="absolute";c.style.zIndex=254;c.style.top=J+"px";c.style.left=I+"px";this.get_map().get_element().appendChild(c);var a=h.createImage("ToolBar_Moving");a.style.position="absolute";a.control=this;a.style.cursor="default";this.set_moving(a);c.appendChild(a);var b=Sys.UI.DomElement.getBounds(a);$addHandler(a,"mousedown",function(a){a.preventDefault();a.stopPropagation()});var k=function(b,e,f,c,d){var a=h.createImage(e);a.style.position="absolute";a.style.top=parseInt(b.firstChild.style.top)-parseInt(a.firstChild.style.top)+"px";a.style.left=parseInt(b.firstChild.style.left)-parseInt(a.firstChild.style.left)+"px";a.style.cursor="pointer";a.title=f;a._dX=c;a._dY=d;$addHandler(a,"click",function(){var a=$get(document.idMap2008),c=a.control,b=Sys.UI.DomElement.getBounds(a);c.zoomAndMove(null,c._createPoint(b.width/2*(this._dX+1),b.height/2*(this._dY+1)),null)});b.appendChild(a)};k(a,"ToolBar_Moving_U","Вверх",0,1);k(a,"ToolBar_Moving_R","Вправо",-1,0);k(a,"ToolBar_Moving_D","Вниз",0,-1);k(a,"ToolBar_Moving_L","Влево",1,0);k(a,"ToolBar_Moving_UR","Вверх вправо",-1,1);k(a,"ToolBar_Moving_DR","Вниз вправо",-1,-1);k(a,"ToolBar_Moving_DL","Вниз влево",1,-1);k(a,"ToolBar_Moving_UL","Вверх влево",1,1);var s=5,r=2,q=s+r+1,f=h.createImage("ToolBar_TB_Line");f.style.position="absolute";f.style.cursor="default";f.control=this;c.appendChild(f);$addHandler(f,"mousedown",function(a){a.preventDefault();a.stopPropagation()});var l=h.createImage("ToolBar_TB_LineEnd");l.style.position="absolute";l.style.cursor="default";l.control=this;c.appendChild(l);var C=Sys.UI.DomElement.getBounds(f),A=Sys.UI.DomElement.getBounds(f);f.style.left=b.width+"px";f.style.top=b.height/2-C.height/2+"px";l.style.top=b.height/2-A.height/2+"px";var t=b.width+s,H=Math.round(b.height/2-parseInt(h.createImage("ToolBar_Buttons_Move").style.width)/2),j=function(d,b,g,f,e){var c=3;if(b){var a=$create(CIC.Map2008.ToolBarButton,{toolBar:d,imageId:"ToolBar_Buttons_"+b,imageDownId:"ToolBar_Buttons_"+b+"_Down",group:f,title:g,left:t,top:H});if(e)a._tag=e;Array.add(d._buttons,a);var h=Sys.UI.DomElement.getBounds(a.get_element());c=h.width}t+=c+r;q+=c+r;return a},u=j(this,"Move","Перемещение","Navigation",CIC.Map2008.enMapMode.Move),E=j(this,"ZoomIn","Увеличение","Navigation",CIC.Map2008.enMapMode.ZoomIn),D=j(this,"ZoomOut","Уменьшение","Navigation",CIC.Map2008.enMapMode.ZoomOut);j(this);var G=j(this,"Info","Информация об объекте","Navigation",CIC.Map2008.enMapMode.Info),F=j(this,"Range","Измерение расстояний","Navigation",CIC.Map2008.enMapMode.Range);j(this);var z=j(this,"BugMessage","Добавить сообщение об ошибке","Navigation",CIC.Map2008.enMapMode.BugMessage),m=function(){var a=this.control,b=a.get_toolBar().get_map().get_state();b.Mode=a._tag};$addHandler(u.get_element(),"mousedown",m);$addHandler(E.get_element(),"mousedown",m);$addHandler(D.get_element(),"mousedown",m);$addHandler(G.get_element(),"mousedown",m);$addHandler(F.get_element(),"mousedown",m);$addHandler(z.get_element(),"mousedown",m);u.set_down(true);f.style.width=q+"px";l.style.left=b.width+q+"px";var g=h.createImage("ToolBar_Zoom_Top");g.title="Увеличить";g.style.position="absolute";g.style.cursor="pointer";g.control=this;this.set_zoomTop(g);c.appendChild(g);var d=h.createImage("ToolBar_Zoom_Bottom");d.title="Уменьшить";d.style.position="absolute";d.style.cursor="pointer";d.control=this;this.set_zoomBottom(d);c.appendChild(d);var e=h.createImage("ToolBar_Zoom_Line");e.style.position="absolute";e.style.cursor="pointer";e.control=this;this.set_zoomLine(e);c.appendChild(e);var i=h.createImage("ToolBar_Zoom_Indicator");i.style.position="absolute";i.style.cursor=this.get_cursorHand1();i.control=this;this.set_zoomIndicator(i);c.appendChild(i);var p=Sys.UI.DomElement.getBounds(g),B=Sys.UI.DomElement.getBounds(d),n=Sys.UI.DomElement.getBounds(e),y=Sys.UI.DomElement.getBounds(i),x=n.height;this.set_zoomBlockHeight(x);g.style.top=b.height+"px";g.style.left=b.width/2-p.width/2+"px";e.style.height=n.height*o+"px";e.style.top=b.height+p.height+"px";e.style.left=b.width/2-n.width/2+"px";d.style.top=b.height+p.height+n.height*o+"px";d.style.left=b.width/2-B.width/2+"px";i.style.left=(b.width-y.width)/2+"px";this.updateZoom();$addHandler(g,"mousedown",function(a){var b=a.target.parentNode.control;b.get_map().zoomIn();a.preventDefault();a.stopPropagation()});$addHandler(d,"mousedown",function(a){var b=a.target.parentNode.control;b.get_map().zoomOut();a.preventDefault();a.stopPropagation()});$addHandler(e,"mousedown",function(a){var b=a.target.parentNode.control,c=Sys.UI.DomElement.getLocation(b.get_zoomLine());b.get_map().zoomAndMove(null,null,b.yToZoom(a.rawEvent.clientY-c.y));a.preventDefault();a.stopPropagation()});this._isMouseDown=false;$addHandler(i,"mousedown",function(b){var a=$get(document.idMap2008).control.get_toolBar(),c=a.get_zoomIndicator();a._isMouseDown=true;c.style.cursor=a.get_cursorHand2();b.preventDefault();b.stopPropagation()});$addHandler(document,"mousemove",function(e){var b=$get(document.idMap2008).control.get_toolBar();if(b._isMouseDown){var l=b.get_moving(),k=b.get_zoomTop(),i=b.get_zoomLine(),f=b.get_zoomIndicator(),c=b.get_zoomBlockHeight(),j=Sys.UI.DomElement.getBounds(l),h=Sys.UI.DomElement.getBounds(k),d=Sys.UI.DomElement.getBounds(i),g=Sys.UI.DomElement.getBounds(f),a=e.clientY-d.y;a=Math.floor(a/c)*c;if(a<0)a=0;if(a>d.height-c)a=d.height-c;f.style.top=a+j.height+h.height+c/2-g.height/2+"px";e.preventDefault();e.stopPropagation()}});$addHandler(document,"mouseup",function(b){var a=$get(document.idMap2008).control.get_toolBar();if(a._isMouseDown){var d=a.get_zoomLine(),c=a.get_zoomIndicator();a._isMouseDown=false;c.style.cursor=a.get_cursorHand1();var e=Sys.UI.DomElement.getLocation(d);a.get_map().zoomAndMove(null,null,a.yToZoom(b.rawEvent.clientY-e.y));b.preventDefault();b.stopPropagation()}})},initialize:function(){CIC.Map2008.ToolBar.callBaseMethod(this,"initialize");this.init()},dispose:function(){CIC.Map2008.ToolBar.callBaseMethod(this,"dispose")}};CIC.Map2008.ToolBar.registerClass("CIC.Map2008.ToolBar",Sys.Component);CIC.Map2008.enButtonType=function(){};CIC.Map2008.enButtonType.prototype={Button:1,GroupButton:2,RadioButton:3};CIC.Map2008.enButtonType.registerEnum("CIC.Map2008.enButtonType");CIC.Map2008.ToolBarButton=function(){CIC.Map2008.ToolBarButton.initializeBase(this);this._down=false;this._title="";this._type=CIC.Map2008.enButtonType.Button};CIC.Map2008.ToolBarButton.prototype={get_element:function(){return this._element},set_element:function(a){this._element=a},get_toolBar:function(){return this._toolBar},set_toolBar:function(a){this._toolBar=a},get_type:function(){return this._type},set_type:function(a){this._type=a},get_group:function(){return this._group},set_group:function(a){this._group=a;a&&this.set_type(CIC.Map2008.enButtonType.GroupButton)},get_down:function(){return this._down},set_down:function(b){if(this._down!=b){if(b)this.get_type()==CIC.Map2008.enButtonType.GroupButton&&this.get_toolBar().resetGroup(this.get_group());this._down=b;if(this.get_element()!=null){var a=this.get_element(),c;if(this._down){a.style.cursor="default";c=this.get_imageDownId()}else{a.style.cursor="pointer";c=this.get_imageId()}this.get_toolBar().get_imageCollection().changeImage(a,c)}}},get_left:function(){return this._left},set_left:function(a){this._left=a},get_top:function(){return this._top},set_top:function(a){this._top=a},get_imageId:function(){return this._imageId},set_imageId:function(a){this._imageId=a},get_imageDownId:function(){return this._imageDownId},set_imageDownId:function(a){this._imageDownId=a},get_title:function(){return this._title},set_title:function(a){this._title=a},init:function(){var b=this.get_toolBar(),c=this.get_toolBar().get_imageCollection(),a=c.createImage(this.get_imageId());a.style.position="absolute";a.style.cursor="pointer";a.control=this;a.style.left=this.get_left()+"px";a.style.top=this.get_top()+"px";a.title=this.get_title();a.alt=this.get_title();this.set_element(a);b.get_element().appendChild(a);$addHandler(a,"mousedown",function(b){var a=this.control;a.get_type()==CIC.Map2008.enButtonType.GroupButton&&a.set_down(true);b.preventDefault();b.stopPropagation()})},initialize:function(){CIC.Map2008.ToolBarButton.callBaseMethod(this,"initialize");this.init()},dispose:function(){CIC.Map2008.ToolBarButton.callBaseMethod(this,"dispose")}};CIC.Map2008.ToolBarButton.registerClass("CIC.Map2008.ToolBarButton",Sys.Component);Type.registerNamespace("CIC.Map2008");function initVML(){if(document.namespaces!=null)if(Sys.Browser.agent==Sys.Browser.InternetExplorer)if(document.namespaces["vml"]==null){document.namespaces.add("vml","urn:schemas-microsoft-com:vml");var a=document.createStyleSheet();a.cssText=".vml {behavior:url(#default#VML);display:inline-block;} "}}initVML();CIC.Map2008.Range=function(){CIC.Map2008.Range.initializeBase(this);this._isMouseDown=false;this._movingPoint="";this._points=[];this._points.last=function(){return this.length==0?null:this[this.length-1]};this._points.byUID=function(b){for(var a=0;a<this.length;a++)if(this[a].uid==b)return this[a];return this.last()}};CIC.Map2008.Range.prototype={get_map:function(){return this._map},set_map:function(a){this._map=a},get_points:function(){return this._points},set_points:function(a){this._points=a},get_rangeContainer:function(){return this._rangeContainer},set_rangeContainer:function(a){this._rangeContainer=a},get_endPointInfo:function(){return this._endPointInfo},set_endPointInfo:function(a){this._endPointInfo=a},get_endPointInfo_Label:function(){return this._endPointInfo_Label},set_endPointInfo_Label:function(a){this._endPointInfo_Label=a},get_endPointInfo_Button:function(){return this._endPointInfo_Button},set_endPointInfo_Button:function(a){this._endPointInfo_Button=a},get_pointInfo:function(){return this._pointInfo},set_pointInfo:function(a){this._pointInfo=a},get_pointInfo_Label:function(){return this._pointInfo_Label},set_pointInfo_Label:function(a){this._pointInfo_Label=a},_doResize:function(){},hide:function(){this.get_rangeContainer().style.display="none"},show:function(){this.get_rangeContainer().style.display="block";this._updatePointInfo()},_removePoint:function(b){var c=this.get_rangeContainer(),a=$get("rangePoint_"+b);if(a){if(Sys.Browser.agent!=Sys.Browser.InternetExplorer)a=a.parentNode;c.removeChild(a)}},_removeLine:function(b,c){var d=this.get_rangeContainer(),a=$get("rangeLine_"+b+"_"+c);if(a){if(Sys.Browser.agent!=Sys.Browser.InternetExplorer)a=a.parentNode;d.removeChild(a)}},clear:function(){for(var b=this.get_points(),a=b.length-1;a>=0;a--){this._removePoint(b[a].uid);a>0&&this._removeLine(b[a-1].uid,b[a].uid)}Array.clear(b);this._updatePointInfo()},_updatePoint:function(b){var a=this.get_points(),c=$get("rangePoint_"+a[b].uid);if(c)if(Sys.Browser.agent==Sys.Browser.InternetExplorer){c.style.left=a[b].x-2+"px";c.style.top=a[b].y-2+"px"}else{c.parentNode.style.left=a[b].x-3+"px";c.parentNode.style.top=a[b].y-3+"px"}},_updateLine:function(a){var b=this.get_points();if(a<b.length-1){var c=$get("rangeLine_"+b[a].uid+"_"+b[a+1].uid);if(c)if(Sys.Browser.agent==Sys.Browser.InternetExplorer)c.from=b[a].x+" "+b[a].y;else{var d=Math.min(b[a].x,b[a+1].x),e=Math.min(b[a].y,b[a+1].y);c.parentNode.style.left=d+2+"px";c.parentNode.style.top=e+2+"px";c.parentNode.setAttribute("width",Math.abs(b[a].x-b[a+1].x)+3);c.parentNode.setAttribute("height",Math.abs(b[a].y-b[a+1].y)+3);c.setAttribute("x1",b[a].x-d);c.setAttribute("y1",b[a].y-e);c.setAttribute("x2",b[a+1].x-d);c.setAttribute("y2",b[a+1].y-e)}}if(a>0){var c=$get("rangeLine_"+b[a-1].uid+"_"+b[a].uid);if(c)if(Sys.Browser.agent==Sys.Browser.InternetExplorer)c.to=b[a].x+" "+b[a].y;else{var d=Math.min(b[a-1].x,b[a].x),e=Math.min(b[a-1].y,b[a].y);c.parentNode.style.left=d+2+"px";c.parentNode.style.top=e+2+"px";c.parentNode.setAttribute("width",Math.abs(b[a-1].x-b[a].x)+3);c.parentNode.setAttribute("height",Math.abs(b[a-1].y-b[a].y)+3);c.setAttribute("x1",b[a-1].x-d);c.setAttribute("y1",b[a-1].y-e);c.setAttribute("x2",b[a].x-d);c.setAttribute("y2",b[a].y-e)}}},initPointInfo:function(isClose){for(var rc=this.get_rangeContainer(),i=1;i>=0;i--){var pi=document.createElement("div");with(pi.style){display="none";position="absolute";zIndex=203;backgroundColor="#ddddff";border="solid 1px #0000dd";padding="1px 1px 2px 2px"}rc.appendChild(pi);var lbl=document.createElement("div");with(lbl){innerHTML="0";with(style){styleFloat="left";cssFloat="left";fontSize="9pt";margin="0"}}pi.appendChild(lbl);if(i==0){this.set_pointInfo(pi);this.set_pointInfo_Label(lbl)}else{var b=document.createElement("img");b.control=this;with(b){src='WebResource.axd?d=2mLJSz5GBgePUZA6hI-czkhl-6EA4UQPlfbf9TjGGjB96w2pkytCxtwtlrKpJ8gM0&t=634152184631987290';with(style){styleFloat="right";cssFloat="right";margin="0 0 0 3px";cursor="pointer"}}pi.appendChild(b);this.set_endPointInfo(pi);this.set_endPointInfo_Label(lbl);this.set_endPointInfo_Button(b);$addHandler(b,"mousedown",function(a){a.target.control.clear();a.preventDefault();a.stopPropagation()})}}},_calcDistance:function(e){var a=this.get_points();if(!e)e=a.last();var d=0,c=1,b=0;if(a.length>1)do{b++;d+=Math.sqrt(Math.pow(a[b].xz-a[b-1].xz,2)+Math.pow(a[b].yz-a[b-1].yz,2))}while(b<a.length-1&&a[b]!=e);c=b+1;c='<strong style="font-size:8pt;color:grey;">'+c+".</strong>&nbsp;";if(d<1e3)return c+Math.round(d).toString().replace(".",",")+"&nbsp;м";else return c+(Math.round(d/10)/100).toString().replace(".",",")+"&nbsp;км"},_updatePointInfo:function(a,h){var c=this.get_points(),b=a==null?this.get_endPointInfo():this.get_pointInfo();if(c.length<=1||a==c[0]||a==c.last()||a!=null&&!h)b.style.display="none";else{var f=a==null?this.get_endPointInfo_Label():this.get_pointInfo_Label(),g=a==null?this.get_endPointInfo_Button():null;if(!a)a=c.last();b.style.display="block";f.innerHTML=this._calcDistance(a);var e=Sys.UI.DomElement.getBounds(f),d=g?Sys.UI.DomElement.getBounds(g):new Sys.UI.Bounds(0,0,0,0);b.style.width=e.width+(d.width>0?d.width+5:2)+"px";b.style.height=e.height+0+"px";var i=Sys.UI.DomElement.getBounds(b);b.style.top=a.y-i.height-5+"px";b.style.left=a.x+1+"px"}},addPoint:function(e,f){if(Sys.Browser.agent==Sys.Browser.Chrome){e--;f--}var g=this.get_map().get_state(),h=this.get_rangeContainer(),d=this.get_points(),i=d.last(),b={};b.x=e;b.y=f;b.xz=e*g.Zoom;b.yz=f*g.Zoom;b.uid=(new Date).valueOf();Array.add(d,b);var a;if(Sys.Browser.agent==Sys.Browser.InternetExplorer){a=document.createElement("vml:oval");a.id="rangePoint_"+b.uid;a.control=this;a._point=b;a.className="vml";a.strokecolor="blue";a.strokeweight="2px";a.fillcolor="white";a.style.width="6px";a.style.height="6px";a.style.position="absolute";a.style.zIndex=201;a.style.left=e-2+"px";a.style.top=f-2+"px";h.appendChild(a);this.addLine(d.length-2,d.length-1)}else{var c=document.createElementNS("http://www.w3.org/2000/svg","svg");c.style.left=e-3+"px";c.style.top=f-3+"px";c.setAttribute("width","10");c.setAttribute("height","10");c.style.position="absolute";c.style.zIndex=201;a=document.createElementNS("http://www.w3.org/2000/svg","circle");a.id="rangePoint_"+b.uid;a.control=this;a._point=b;a.setAttribute("cx","4.5");a.setAttribute("cy","4.5");a.setAttribute("r","3");a.setAttribute("stroke","blue");a.setAttribute("stroke-width","2");a.setAttribute("fill","white");c.appendChild(a);h.appendChild(c);this.addLine(d.length-2,d.length-1)}this._updatePointInfo();$addHandler(a,"mouseover",function(d){var a=d.target,b=a.control,c=b.get_map().get_state().Mode;if(c==CIC.Map2008.enMapMode.Range){b._updatePointInfo(a._point,true);if(Sys.Browser.agent==Sys.Browser.InternetExplorer)a.strokecolor="red";else a.setAttribute("stroke","red")}});$addHandler(a,"mouseout",function(d){var a=d.target,b=a.control,c=b.get_map().get_state().Mode;if(c==CIC.Map2008.enMapMode.Range){b._updatePointInfo(a._point,false);if(Sys.Browser.agent==Sys.Browser.InternetExplorer)a.strokecolor="blue";else a.setAttribute("stroke","blue")}});$addHandler(a,"dblclick",function(d){var a=d.target,b=a.control,c=b.get_map().get_state().Mode;c==CIC.Map2008.enMapMode.Range&&b.delPoint(a._point.uid)});$addHandler(a,"mousemove",function(d){var a=d.target,b=a.control,c=b.get_map().get_state().Mode;if(c==CIC.Map2008.enMapMode.Range&&!b._isMouseDown)a.style.cursor="move";else a.style.cursor=""});$addHandler(a,"mousedown",function(b){var c=b.target,a=c.control,d=a.get_map().get_state().Mode;if(d==CIC.Map2008.enMapMode.Range){var a=$get(document.idMap2008).control.get_range();a._isMouseDown=true;a._movingPoint=c.id;b.preventDefault();b.stopPropagation()}});$addHandler(document,"mousemove",function(b){var c=$get(document.idMap2008).control.get_range();if(c._isMouseDown){var a=$get(c._movingPoint);if(a){var d=c.get_map().get_state(),e=Sys.UI.DomElement.getBounds(c.get_rangeContainer());if(Sys.Browser.agent==Sys.Browser.InternetExplorer){a._point.xz=(b.clientX-e.x-3)*d.Zoom;a._point.yz=(b.clientY-e.y-3)*d.Zoom}else if(Sys.Browser.agent==Sys.Browser.Chrome){a._point.xz=(b.clientX-e.x-2)*d.Zoom;a._point.yz=(b.clientY-e.y-2)*d.Zoom}else{a._point.xz=(b.clientX-e.x-1)*d.Zoom;a._point.yz=(b.clientY-e.y-1)*d.Zoom}c.movePoint(a._point.uid);c._updatePointInfo(a._point,"true")}b.preventDefault();b.stopPropagation()}});$addHandler(document,"mouseup",function(b){var a=$get(document.idMap2008).control.get_range();if(a._isMouseDown){a._isMouseDown=false;b.preventDefault();b.stopPropagation()}})},delPoint:function(c){var b=this.get_points();if(b.length>0){for(var e=this.get_rangeContainer(),d=this.get_map().get_state(),a=0;a<b.length;a++)if(b[a].uid==c){a>0&&this._removeLine(b[a-1].uid,b[a].uid);a<b.length-1&&this._removeLine(b[a].uid,b[a+1].uid);this._removePoint(b[a].uid);this.addLine(a-1,a+1);this._updatePointInfo(b[a],false);Array.remove(b,b[a]);break}this._updatePointInfo()}},addLine:function(c,d){var a=this.get_points();if(c>=0&&d>=0&&c<a.length&&d<a.length){var h=this.get_rangeContainer();if(Sys.Browser.agent==Sys.Browser.InternetExplorer){var b=document.createElement("vml:line");b.id="rangeLine_"+a[c].uid+"_"+a[d].uid;b.control=this;b.className="vml";b.style.position="absolute";b.style.zIndex=200;b.style.left=1+"px";b.style.top=1+"px";b.strokecolor="blue";b.strokeweight="1.3";b.from=a[c].x+" "+a[c].y;b.to=a[d].x+" "+a[d].y;h.appendChild(b)}else{var f=Math.min(a[c].x,a[d].x),g=Math.min(a[c].y,a[d].y),e=document.createElementNS("http://www.w3.org/2000/svg","svg");e.style.position="absolute";e.style.zIndex=200;e.style.left=f+2+"px";e.style.top=g+2+"px";e.setAttribute("width",Math.abs(a[c].x-a[d].x)+3);e.setAttribute("height",Math.abs(a[c].y-a[d].y)+3);var b=document.createElementNS("http://www.w3.org/2000/svg","line");b.id="rangeLine_"+a[c].uid+"_"+a[d].uid;b.control=this;b.setAttribute("x1",a[c].x-f);b.setAttribute("y1",a[c].y-g);b.setAttribute("x2",a[d].x-f);b.setAttribute("y2",a[d].y-g);b.setAttribute("stroke","blue");b.setAttribute("stroke-width","1.5");e.appendChild(b);h.appendChild(e)}}},movePoint:function(d){var b=this.get_points();if(b.length>0)for(var c=this.get_map().get_state(),a=0;a<b.length;a++)if(b[a].uid==d){b[a].x=b[a].xz/c.Zoom;b[a].y=b[a].yz/c.Zoom;this._updatePoint(a);this._updateLine(a);this._updatePointInfo();return}},_doResize:function(){var b=this.get_points();if(b.length>0)for(var c=this.get_map().get_state(),d=this.get_rangeContainer(),a=0;a<b.length;a++){b[a].x=b[a].xz/c.Zoom;b[a].y=b[a].yz/c.Zoom;this._updatePoint(a);this._updateLine(a);this._updatePointInfo()}},Init:function(){var a=document.createElement("div");a.style.position="absolute";a.style.top="0px";a.style.left="0px";a.style.width="10px";a.style.height="10px";a.style.overflow="visible";a.style.zIndex=200;this.set_rangeContainer(a);this.get_map().get_container().get_element().appendChild(a);this.initPointInfo()},initialize:function(){CIC.Map2008.Range.callBaseMethod(this,"initialize");this.Init()},dispose:function(){CIC.Map2008.Range.callBaseMethod(this,"dispose")}};CIC.Map2008.Range.registerClass("CIC.Map2008.Range",Sys.Component);Type.registerNamespace("CIC.Map2008");CIC.Map2008.Route=function(a){CIC.Map2008.Route.initializeBase(this,[a]);this._segments=[]};CIC.Map2008.Route.prototype={get_map:function(){return this._map},set_map:function(a){this._map=a},get_segments:function(){return this._segments},set_segments:function(a){this._segments=a},get_paramsControl:function(){return this._paramsControl},set_paramsControl:function(a){this._paramsControl=a},get_nodesControl:function(){return this._nodesControl},set_nodesControl:function(a){this._nodesControl=a},get_protocolControl:function(){return this._protocolControl},set_protocolControl:function(a){this._protocolControl=a},hide:function(){},show:function(){CIC.Map2008.PageControl.selectPagesLeft("PageRoute")},findSegment:function(c){for(var b=this.get_segments(),a=0;a<b.length;a++)if(b[a].uid==c)return a;return -1},showPoint:function(g){var d=this.get_map(),f=this.get_segments(),b=f[g],e=d.get_container().get_element(),a;if(Sys.Browser.agent==Sys.Browser.InternetExplorer){var c=d.convertXY_fromMap(b);a=document.createElement("vml:oval");a.control=this;a.uid=b.uid;a.id="routePoint_"+b.uid;a.className="vml";a.strokecolor="red";a.strokeweight="2px";a.fillcolor="white";a.style.width="8px";a.style.height="8px";a.style.position="absolute";a.style.zIndex=255;a.style.left=c.x-3+"px";a.style.top=c.y-3+"px";e.appendChild(a)}$addHandler(a,"dblclick",function(a){var b=a.target.control,c=b.findSegment(a.target.uid);alert(1);a.preventDefault();a.stopPropagation()});$addHandler(a,"mousedown",function(a){a.preventDefault();a.stopPropagation()})},showSegment:function(e){if(e>0){var f=this.get_map(),h=f.get_container().get_element(),i=this.get_segments(),b=i[e].routeInfo,j="routeSegment_"+i[e].uid,k=document.getElementById(j);k!=null&&h.removeChild(k);var a=document.createElement("vml:polyline");a.id=j;a.control=this;a.className="vml";a.strokecolor="#FF0000";a.strokeweight="3px";a.filled=false;a.style.position="absolute";a.style.zIndex=254;a.style.left="0px";a.style.top="0px";a.style.width="100px";a.style.height="100px";if(b.Points!=null){for(var g,c=new Sys.StringBuilder,d=0;d<b.Points.length;d++){!c.isEmpty()&&c.append(" ");g=f.convertXY_fromMap(f._createPoint(b.Points[d].X,b.Points[d].Y));c.append(g.x+" "+g.y)}a.points=c.toString()}h.appendChild(a)}},addSegment:function(e,f,a){this.show();var d=this.get_map(),b=this.get_segments();if(!a)a=b.length;else if(b.length<1)a=0;var c=d._createPoint(e,f);c.uid=(new Date).valueOf();Array.insert(b,a,c);this.showPoint(a);this.doRoute(a)},doRoute:function(d){for(var e=this.get_nodesControl(),b=this.get_segments(),c=new Sys.StringBuilder,a=0;a<b.length;a++){c.append(a+1+". Узловая точка - <a href=\"javascript:CIC.Map2008.Go('"+this.get_element().id+"','deleteSegment',"+b[a].uid+')">[X]</a>');c.append("<br/>")}e.innerHTML=c.toString();if(d){var b=this.get_segments();b.length>1&&this.getRoute(d)}this.get_protocolControl().innerHTML="Поиск..."},showProtocol:function(){var e=this.get_segments(),a=new Sys.StringBuilder;a.append("<table border='0'>");for(var c=1;c<e.length;c++){var f=e[c];a.append("<tr><td colspan='3'><b>Сегмент № "+c+"</b></td></tr>");for(var d=0;d<f.routeInfo.Streets.length;d++){a.append("<tr>");var b=f.routeInfo.Streets[d];a.append("<td>"+(d+1)+".</td>");a.append("<td>"+b.Text+"</td>");a.append("<td>");if(b.Distance<1)a.append((b.Distance*1e3).toString().replace(".",",")+"&nbsp;м");else a.append(b.Distance.toString().replace(".",",")+"&nbsp;км");a.append("</td>");a.append("</tr>")}}a.append("</table>");this.get_protocolControl().innerHTML=a.toString()},deleteSegment:function(c){var b=this.get_segments(),a=this.findSegment(c);if(a>=0){this.hideSegment(a);this.hidePoint(a);a<b.length-1&&this.hideSegment(a+1);Array.removeAt(b,a)}this.doRoute(a)},hideSegment:function(c){var b=this.get_map().get_container().get_element(),d=this.get_segments()[c].uid,e="routeSegment_"+d,a=document.getElementById(e);a!=null&&b.removeChild(a)},hidePoint:function(b){var a=this.get_map().get_container().get_element(),c=this.get_segments()[b].uid;id="routePoint_"+c;obj=document.getElementById(id);obj!=null&&a.removeChild(obj)},beginRefresh:function(){for(var b=this.get_segments(),a=0;a<b.length;a++){this.hidePoint(a);this.hideSegment(a)}},endRefresh:function(){for(var b=this.get_segments(),a=0;a<b.length;a++){this.showPoint(a);this.showSegment(a)}},getRoute:function(a){var b=this.get_segments();if(a<b.length){var c={};c.sender=this;c.index=a;CIC.Map2008.WS.GetRoute(b[a-1].x,b[a-1].y,b[a].x,b[a].y,this._getRouteLoaded,this._getRouteLoadError,c)}},_getRouteLoaded:function(c,a){var b=a.sender,d=a.index;b.get_segments()[d].routeInfo=c;b.showSegment(a.index);b.showProtocol(a.index)},_getRouteLoadError:function(a,c,b){alert("getRouteLoadError("+b+"): "+a.get_message())},_doResize:function(){},Init:function(){var d=this.get_element(),a=document.createElement("DIV");d.appendChild(a);this.set_paramsControl(a);var c=document.createElement("DIV");c.innerHTML="Узловые точки:";c.style.fontWeight="bold";a.appendChild(c);var b=document.createElement("DIV");b.style.padding="2px 0 0 15px";a.appendChild(b);this.set_nodesControl(b);var e=document.createElement("DIV");d.appendChild(e);this.set_protocolControl(e)},initialize:function(){CIC.Map2008.Route.callBaseMethod(this,"initialize");this.Init()},dispose:function(){CIC.Map2008.Route.callBaseMethod(this,"dispose")}};CIC.Map2008.Route.registerClass("CIC.Map2008.Route",Sys.UI.Control);Type.registerNamespace("CIC.Map2008");CIC.Map2008.Window=function(){CIC.Map2008.Window.initializeBase(this);this._header=null;this._toolbar=null;this._boody=null;this._closeButton=null;this._modal=true;this._width=400;this._height=300;this._screen=null;this._title="";this._bodyHTML="";this._id="id"+(new Date).valueOf()};CIC.Map2008.Window.prototype={get_id:function(){return this._id},set_id:function(a){this._id=a},get_element:function(){return this._element},set_element:function(a){this._element=a},get_title:function(){return this._title},set_title:function(a){this._title=a},get_bodyHTML:function(){return this._bodyHTML},set_bodyHTML:function(a){this._bodyHTML=a},get_width:function(){return this._width},set_width:function(a){this._width=a},get_height:function(){return this._height},set_height:function(a){this._height=a},get_modal:function(){return this._modal},set_modal:function(a){this._modal=a},get_screen:function(){return this._screen},set_screen:function(a){this._screen=a},get_header:function(){return this._header},set_header:function(a){this._header=a},get_body:function(){return this._body},set_body:function(a){this._body=a},get_closeButton:function(){return this._closeButton},set_closeButton:function(a){this._closeButton=a},_closeMouse:function(){this.control.hide()},_closeKey:function(b){if(b.rawEvent.keyCode==27){var a=b.target;while(a!=null)if(a.control&&a.control.hide){a.control.hide();return}else a=a.parentNode}},hide:function(){this.get_element().style.display="none";if(this.get_screen())this.get_screen().style.display="none"},show:function(c,a){var b=this.get_element();if(c)this.get_title().innerHTML=c;if(a)this.get_body().innerHTML=a;b.style.display="block";if(this.get_screen())this.get_screen().style.display="block";if(Sys.Browser.agent==Sys.Browser.Firefox)this.get_header().focus();else b.focus()},init:function(){var element=document.createElement("DIV"),bBody=Sys.UI.DomElement.getBounds(document.body);if(this.get_modal()){var screen=document.createElement("DIV");screen.style.display="none";screen.className="window-modal-screen";screen.style.position="absolute";screen.style.zIndex=255;screen.style.left="0px";screen.style.top="0px";screen.style.width="100%";screen.style.height="100%";screen.style.backgroundColor="Gray";if(Sys.Browser.agent==Sys.Browser.InternetExplorer)screen.style.filter="progid:DXImageTransform.Microsoft.Alpha(opacity=50)";else screen.style.opacity=.5;this.set_screen(screen);document.body.appendChild(screen)}element.control=this;with(element){id=this.get_id();className="window";style.zIndex=255;style.display="none";style.position="absolute";style.width=this.get_width()+"px";style.height=this.get_height()+"px";style.top=bBody.height/2-parseInt(style.height)/2+"px";style.left=bBody.width/2-parseInt(style.width)/2+"px"}this.set_element(element);document.body.appendChild(element);var header=document.createElement("A");with(header){href="#";className="window-header";with(style)display="block"}element.appendChild(header);this.set_header(header);var title=document.createElement("DIV");title.innerHTML=this.get_title();title.className="window-header-title";title.style.styleFloat="left";title.style.cssFloat="left";header.appendChild(title);this.set_title(title);var buttonX=document.createElement("IMG");buttonX.control=this;with(buttonX){className="window-button-x";src='WebResource.axd?d=2mLJSz5GBgePUZA6hI-czkhl-6EA4UQPlfbf9TjGGjCi-NahpQtlSdjAs0tF9c9N0&t=634152184631987290';title="Закрыть";with(style){display="block";styleFloat="right";cssFloat="right"}}header.appendChild(buttonX);this.set_closeButton(buttonX);$addHandler(buttonX,"click",this._closeMouse);$addHandler(element,"keypress",this._closeKey);var body=document.createElement("div");with(body){className="window-body";overflow="auto"}if(this.get_bodyHTML())body.innerHTML=this.get_bodyHTML();element.appendChild(body);this.set_body(body)},initialize:function(){CIC.Map2008.Window.callBaseMethod(this,"initialize");this.init()},dispose:function(){CIC.Map2008.Window.callBaseMethod(this,"dispose")}};CIC.Map2008.Window.registerClass("CIC.Map2008.Window",Sys.Component);typeof Sys!=="undefined"&&Sys.Application.notifyScriptLoaded()
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();