﻿
var tb;
var str_load=false;
function progress(){
    Ext.MessageBox.show({
           title: 'Please wait',
           msg: 'Loading items...',
           progressText: 'Initializing...',
           width:300,
           progress:true,
           closable:false,
           animEl: 'mb6'
       });

       // this hideous block creates the bogus progress
       var f = function(v){
            return function(){
                if(v == 10){
                    Ext.MessageBox.hide();
                    Ext.example.msg('Done', 'Your fake items were loaded!');
                }else{
                    var i = v/10;
                    Ext.MessageBox.updateProgress(i, Math.round(100*i)+'% completed');
                }
           };
       };
       for(var i = 0; i < 10; i++){
         //  setTimeout(f(i), i*500);
       }
	}
function onEnter(event){
if(event.keyCode==13 || event==99999){
//alert(document.getElementById('search').value + " " + document.getElementById('search2').value);
//map.infoWindow.resize(200,200);
//document.frmPassword.btnEnter.click();
	if(document.getElementById('search2').value!="")
	{
	//	alert(document.getElementById('search').value + " " + document.getElementById('search2').value);
		execute(document.getElementById('search2').value + " " + document.getElementById('search').value);
	}
	else
	{
		execute(document.getElementById('search').value);
	}
	//esri.geometry.Extent(xmin, ymin, xmax, ymax, spatialReference)
	


}
}	
var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{
			string: navigator.userAgent,
			subString: "Chrome",
			identity: "Chrome"
		},
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari",
			versionSearch: "Version"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			   string: navigator.userAgent,
			   subString: "iPhone",
			   identity: "iPhone/iPod"
	    },
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
BrowserDetect.init();
var resizeTimer;
var col_f= false;
function resizeMap() {
    clearTimeout(resizeTimer);
	
    resizeTimer = setTimeout(function() {
//	 clearTimeout(resizeTimer2);
        map.resize();
        map.reposition();
	  
    }, 800);
}
var vars1 = new Array();
	
function minimal_view()
{

if(!col_f)
{
	document.getElementById('d1').style.display="none";
	document.getElementById('d2').style.display="none";
	document.getElementById('toolbar').style.top="8px";
	document.getElementById('d3').style.left="6px";
	document.getElementById('d3').style.top="40px";
	
	document.getElementById('buttons1').style.top="60px";
	document.getElementById('legend_d').style.top="60px";
	
	document.getElementById('d3').style.width=(size[0]-20)-10 + "px";
	document.getElementById('d3').style.height=(size[1] - 50) + "px";

	col_f=true;
//document.getElementById('col1').innerHTML= "<b>Показать боковое меню</b>";
}
else
{
	document.getElementById('d1').style.display=vars1[0];
	document.getElementById('d2').style.display=vars1[1];
	document.getElementById('toolbar').style.top=vars1[2];
	document.getElementById('d3').style.left=vars1[3];
	document.getElementById('d3').style.top=vars1[4];
	
	document.getElementById('buttons1').style.top=vars1[5];
	document.getElementById('legend_d').style.top=vars1[6];
	
	document.getElementById('d3').style.width=vars1[7];
	document.getElementById('d3').style.height=vars1[8];
	col_f=false;
}	
	
	resizeMap();
}
function ext1()
{
var s = "";
  s = "XMin: "+ map.extent.xmin
      +" YMin: " + map.extent.ymin
      +" XMax: " + map.extent.xmax
      +" YMax: " + map.extent.ymax;

	alert(s );
}
var item1,item2,item3,item4,item5,Tree_Category,item7;
function create_int(h1,h2,h3)
{   
Ext.QuickTips.init();
item2 = new Ext.Panel({
		title: languages[lang1]['search_address'],
		html: '<span class="sl">Улица</span><br><input type="text" style="width:90%;margin:5px" id="search" onkeypress="onEnter(event)"><br><span class="sl">Номер дома</span><br><input type="text" style="width:90%;margin:5px" id="search2" onkeypress="onEnter(event)"><br><input type="button" style="margin:5px"  onclick="onEnter(99999)" value="Искать"><br><div id="result" style="margin:5px" class="a_link"></div>',
		split:true,
		//    cls:'empty',
		iconCls:'search',
		autoScroll:true,
		id:'sch',
	bodyStyle:'background-color:'+bcolor+';'
});
item1 = new Ext.Panel({
		title: languages[lang1]['dop_themes'],
		id:'dop_themes',
		html: '<div class="sl" id="themes_list" style="padding:0px;margin:0px"></div>',
		//split:true,
		autoScroll:true,
		//    cls:'empty',
		iconCls:'themes',
	//	frame:true,
	//titleCollapse: true
		bodyStyle:'background-color:'+bcolor+';padding:0px;margin:0px'

});
item3 = new Ext.Panel({
		title: languages[lang1]['maps'],
		html: '<div class="sl" id="maps_list"></div>',
		split:true,
		autoScroll:true,
		iconCls:'map1',
			bodyStyle:'background-color:'+bcolor+';'

});
item4 = new Ext.Panel({
		title: 'Авторизация',
		html: '<div class="sl" id="login_panel"></div>',
		split:true,
		autoScroll:true,
		iconCls:'login',
		bodyStyle:'background-color:'+bcolor+';'
			//autoLoad: {url: '/login.php'}
});
item6 = new Ext.Panel({
		title: languages[lang1]['marshrut'],
		html: '<div class="sl" id="roads_show" width="100%"></div>',
		split:true,
		autoScroll:true,
		iconCls:'i12',
		bodyStyle:'background-color:'+bcolor+';'
			//autoLoad: {url: '/login.php'}
});	
item7 = new Ext.Panel({
		title: languages[lang1]['punkti'],
		html: '<div class="sl" id="punkti1" width="100%"></div>',
		split:true,
		autoScroll:true,
		iconCls:'themes',
		bodyStyle:'background-color:'+bcolor+';'
			//autoLoad: {url: '/login.php'}
});	
//-0-------------------------------------------------------------------
 var Tree_Category_Loader = new Ext.tree.TreeLoader({
        dataUrl   :"/work/tx_taw_models_ProjectCategoryListProxy.php"
    });
	
	 var form = new Ext.form.FormPanel({
        baseCls: 'x-plain',
        labelWidth: 55,
        url:'save-form.php',
        defaultType: 'textfield',
		bodyStyle:'background-color:'+bcolor+';',
        items: [{
          //  fieldLabel: 'Поиск',
         //   name: 'to',
		 hideLabel: true,
		 id:'search_text',
		 

            anchor:'90%'  // anchor width by percentage
        },
		new Ext.Button(
		{ 
			 text:'Поиск',
			 handler: function ()
			 {
			//alert();		
				//	Tree_Category.loader = new Ext.tree.TreeLoader({dataUrl: "/work/tx_taw_models_ProjectCategoryListProxy.php?search="+encodeURI(document.getElementById('search_text').value)+"&br="+BrowserDetect.browser});
					Tree_Category.loader = new Ext.tree.TreeLoader({dataUrl: "/work/tx_taw_models_ProjectCategoryListProxy.php?search="+encodeURI(document.getElementById('search_text').value)});
//window.open("/work/tx_taw_models_ProjectCategoryListProxy.php?search="+encodeURI(document.getElementById('search_text').value)+"&br="+BrowserDetect.browser);
					Tree_Category.root.reload();

			 }
		})]
    });

Tree_Category = new Ext.tree.TreePanel({
        title            : languages[lang1]['catalog'],
        collapsible      : false,
        animCollapse     : false,
        border           : true,
        id               : "tree_projectcategory",
     //   el               : "tree_projectcategory",
        autoScroll       : true,
        animate          : false,
        enableDD         : true,
        containerScroll  : false,
		bodyStyle:'background-color:'+bcolor+';',
   //     height           : 300,
   //     width            : 200,
  iconCls:'i16',
        loader           : Tree_Category_Loader,
		 items: [form]
				

    });
 
    // SET the root node.
    var Tree_Category_Root = new Ext.tree.AsyncTreeNode({
        text		: 'Темы',
        draggable	: false,
        id		: '0'                  // this IS the id of the startnode
    });
 
    // Render the tree.
    Tree_Category.setRootNode(Tree_Category_Root);
 //   Tree_Category.render();
 //   Tree_Category_Root.expand();
	
	Tree_Category.on('click', function(node){
               if (node.attributes.cls == 'file' && node.id!=-1){
                		
					
						
						var conn = new Ext.data.Connection();
						conn.request(
						{
							url: '/work/tx_taw_models_ProjectCategoryListProxy.php',
							method: 'GET',
							params: {"file": node.attributes.id},
							success: function(responseObject) {
									
							 
						//		alert(responseObject.responseText);
							var t =	responseObject.responseText.split("|");
							
							
							
							
							var  sym = new esri.symbol.PictureMarkerSymbol('icons/flag-magenta-16x16.png', 16,16) ;
							if(t[0]=="")
							{
										var win = new Ext.Window({
										title    : node.attributes.text,
										closable : true,
										width    : 450,
										height   : 100,
										//border : false,
										plain    : true,
									//	layout   : 'border',
										html:t[2]+"<br>"+t[3]+"<br>коорд. не определены"
										
										});

									win.show();
									
									
									
									return;
							}
							
								var c1=t[0];
							var c2=t[1];
		
								 

						//	alert(responseObject.responseText);
							var pt = new esri.geometry.Point(t[0],t[1],map.spatialReference) ;
							//	console.debug(pt);
							
								var infoTemplate = new esri.InfoTemplate();
								infoTemplate.setTitle('<span style="color:green">'+node.attributes.text+'</span> ');
								infoTemplate.setContent(t[2]+"<br>"+t[3]);
								
							//	map.infoWindow.resize(245,125);
								gra = new esri.Graphic(pt, sym) ;
								
								gra.setInfoTemplate(infoTemplate);
								
								map.graphics.add(gra);
								//map.infoWindow.show(pt,map.getInfoWindowAnchor(pt));
								
								map.infoWindow.setTitle('<span style="color:green">'+node.attributes.text+'</span> ');
								map.infoWindow.setContent("адрес:"+t[2]+"<br>тел.:"+t[3]);
								
								var screenPnt = map.toScreen(pt);
								map.infoWindow.show(screenPnt, map.getInfoWindowAnchor(screenPnt));

					var extent = new esri.geometry.Extent(parseInt(c1)-500, parseInt(c2)-500, parseInt(c1)+500,parseInt(c2)+500, null);
									map.setExtent(extent);			
								//map.infoWindow.show(pt);
							//	goto_feature2(t[0],t[1]);
						
								//map.infoWindow.show(new esri.geometry.Point(parseInt(map.width/2),parseInt(map.height/2)),map.getInfoWindowAnchor(new esri.geometry.Point(parseInt(map.width/2),parseInt(map.height/2))));
							},
							 failure: function() {
								 Ext.Msg.alert('Status', 'Нет связи с сервером. Please try again later.');
							 }
						}); 
                }
            });
//-0-------------------------------------------------------------------

var item8 = new Ext.Panel({
		title: languages[lang1]['catalog'],
		html: '<div class="sl" id="spravochnik" width="100%"></div>',
		split:true,
		autoScroll:true,
		iconCls:'themes',
		 layout:'accordion',
		bodyStyle:'background-color:'+bcolor+';',
		items: [Tree_Category]
			//autoLoad: {url: '/login.php'}
});		
	var p1 = new Ext.Panel(
	{
	id:'action-panel',
		title: languages[lang1]['menu'],
	//    region:'center',
	//collapsible:true,
	    margins:'3 3 3 3',
	//	html :'Hello',
		height:h2,
	    layout:'accordion',
		//collapseMode: 'mini',
		//layout:'card',
		// 	baseCls:'x-plain',
        //items: [item1,item6,item3,item2,item4,Tree_Category]
		 items: [item1,item6,item3,item2,Tree_Category,item7]
	});
		/*var p1 = new Ext.Panel(
	{//id:'action-panel',

		title: 'Меню',
		split:true,
    	collapsible: true,
    	collapseMode: 'mini',
		region:'west',
		border: false,
    	baseCls:'x-plain',
		//width:200,
    	minWidth: 150,

        items: [item1,item3,item2]
	});*/
	 function onItemCheck(item, checked){
        Ext.example.msg('Item Check', 'You {1} the "{0}" menu item.', item.text, checked ? 'checked' : 'unchecked');
    }

	 var menu = new Ext.menu.Menu({
        id: 'mainMenu',
        style: {
           // overflow: 'visible'     // For the Combo popup
        },
        items: [
                /*
			
				*/
            {
                text: 'Одесса. Генеральный план. Основной чертеж.',
                handler:function (){type_s3 = 't';serv3 = 'gen_plan/gen_plan_2009';changeMap(4);}
            }, 
			{
                text: 'Схема улучшения экологического состояния территории',
                handler:function (){type_s3 = 'd';serv3 = 'gen_plan/gen_plan_2009_6';changeMap(4);}
            }, 
			{
                text: 'Схема планировочных ограничений',
                handler:function (){type_s3 = 'd';serv3 = 'gen_plan/gen_plan_2009_7';changeMap(4);}
            }, 
			{
                text: 'Схема магистралей',
                handler:function (){type_s3 = 'd';serv3 = 'gen_plan/gen_plan_2009_12';changeMap(4);}
            }, 
			{
                text: 'Планировочная структура города и система обслуживания',
                handler:function (){type_s3 = 'd';serv3 = 'gen_plan/gen_plan_2009_17';changeMap(4);}
            }, 
			{
                text: 'Схема архитектурно-планировочной организации центральной части города',
                handler:function (){type_s3 = 'd';serv3 = 'gen_plan/gen_plan_2009_18';changeMap(4);}
            }
        ]
    });
var menu2 = new Ext.menu.Menu({
        id: 'mainMenu2',
        style: {
           // overflow: 'visible'     // For the Combo popup
        },
        items: [
                /*

				*/
            {
                text: 'Старинные фотографии',
                handler:function (){load_retro();}
            },"-", 
			{
                text: 'Генеральный план г. Одессы с принадлежащей землей 1835 г.',
                handler:function (){type_s3 = 't';serv3 = 'history/1835';changeMap(4);}
            }, 
			{
                text: 'План города Одессы 1875 г.',
                handler:function (){type_s3 = 't';serv3 = 'history/1875';changeMap(4);}
            }, 
			{
                text: 'План города Одессы 1891 г.',
                handler:function (){type_s3 = 't';serv3 = 'history/1891';changeMap(4);}
            }, 
			{
                text: 'Ген. План города Одессы 1892 г.',
                handler:function (){type_s3 = 't';serv3 = 'history/1892';changeMap(4);}
            },
			{
                text: 'План г. Одессы 1894 г. Составил городской землемер М.М. Дитерихс.',
                handler:function (){type_s3 = 't';serv3 = 'history/1894';changeMap(4);}
            },
			"-",
			{
                text: "Избирательные участки (2006 г.)",
                handler:function (){Vibory();}
            }
			,
			{
                text: "Избирательные участки (2010 г.)",
                handler:function (){Vibory2();}
            }
        ]
    });
var menu3 = new Ext.menu.Menu({
        id: 'mainMenu3',
        style: {
           // overflow: 'visible'     // For the Combo popup
        },
        items: [
                /*
 <button style="font-family:arial;font-size:9pt" dojoType="dijit.form.Button" onClick="changeMap(1);"><script>document.write(languages[lang1]['map']);</script></button>
		<button style="font-family:arial;font-size:9pt"  dojoType="dijit.form.Button" onClick="changeMap(2);"><script>document.write(languages[lang1]['cosmo1']);</script></button>
		<button style="font-family:arial;font-size:9pt"  dojoType="dijit.form.Button" onClick="changeMap(3);"><script>document.write(languages[lang1]['cosmo2']);</script></button>
		<button style="font-family:arial;font-size:9pt"  dojoType="dijit.form.Button" onClick="Vibory();">Выборы</button>
				*/
            {
                text: "Дислокация участков ЖКС по КП",
                handler:function (){gkc();}
            }
			,{
                text: "Пункты приема платежей",
                handler:function (){document.getElementById('sl66').checked=!document.getElementById('sl66').checked;load_theme(66);}
            }
        ]
    });	
	
	
  p1.render("d2"); 
  tb = new Ext.Toolbar({
width: '100%',
margins:'50 5 5 5', region:'north',
items:[ 
{
       //     text:'Приблизить',
			id:"button_1",
			tooltip: languages[lang1]['b1'],
            iconCls: 'bmenu',  // <-- icon
           //id="zoomin"
		    handler: function () {navToolbar.activate(esri.toolbars.Navigation.ZOOM_IN);},
			  enableToggle: true,
			  toggleHandler: onItemToggle,
			   iconCls:'i1',
			   toggleGroup:'group1'
        },
		{
          id:"button_2",
		  tooltip: languages[lang1]['b2'],
          iconCls: 'bmenu',  // <-- icon
          handler: function () {navToolbar.activate(esri.toolbars.Navigation.ZOOM_OUT);},
		  enableToggle: true,
		   toggleHandler: onItemToggle,
		  iconCls:'i2',
			   toggleGroup:'group1'
        }
		,
		{
	        //id:"b",
			tooltip: languages[lang1]['b3'],
	        iconCls: 'bmenu',  // <-- icon
	        handler: function () {navToolbar.zoomToFullExtent();},
			iconCls:'i3'
        }
		,
		{
          //id:"button_4",
		  tooltip: languages[lang1]['b4'],
          iconCls: 'bmenu',  // <-- icon
          handler: function () {navToolbar.zoomToPrevExtent();},
		  iconCls:'i4'
        },
		{
           //id:"button_5",
		   tooltip: languages[lang1]['b5'],
           iconCls: 'bmenu',  // <-- icon
           handler: function () {navToolbar.zoomToNextExtent();},
		   iconCls:'i5'
        },
		{
           id:"button_3",
		   tooltip: languages[lang1]['b6'],
           iconCls: 'bmenu',  // <-- icon
           handler: function () {navToolbar.activate(esri.toolbars.Navigation.PAN);},
		   iconCls:'i7',
		    enableToggle: true,
			  toggleHandler: onItemToggle,
			   toggleGroup:'group1'
        }
		,
		{
          id:"button_4",
		  tooltip: languages[lang1]['b7'],
          iconCls: 'bmenu',  // <-- icon
          handler: function () {navToolbar.deactivate();},
		  iconCls:'i6',
		  enableToggle: true,
			  toggleHandler: onItemToggle,
			   toggleGroup:'group1'
        },
		{
		  id:"button_5",
		  tooltip: languages[lang1]['b8'],
          iconCls: 'bmenu',  // <-- icon
          handler: function () {distance_window();},
		  iconCls:'i8'
		
			 
			
        },
		{
          id:"button_6",
		  tooltip: languages[lang1]['b9'],
          iconCls: 'i9',  // <-- icon
          handler: function () {map_window();}
		
		
			 
			
        },
		{
          id:"button_7",
		  tooltip: languages[lang1]['b10'],
          iconCls: 'i17',  // <-- icon
          handler: function () {toolbar_draw.activate(esri.toolbars.Draw.POINT);map.hideZoomSlider();}
		
		
			 
			
        }
		,
		{
            text:'Минимальный вид',
			id:"button_8",
			tooltip: 'Развернуть карту на всю страницу',
          //  iconCls: 'i17',  // <-- icon
           //id="zoomin"
		    handler: function () {minimal_view();},
			  enableToggle: true,
			  toggleHandler: onItemToggle
			//   iconCls:'i1',
			//   toggleGroup:'group1'
        }, '-'
		,
		{
            text:'Карта',
       //     iconCls: 'bmenu',  // <-- icon
            handler: function ()
			{
				changeMap(1);
			},
			enableToggle: true,
			toggleHandler: onItemToggle,
			toggleGroup:'group11',
			pressed:true
        },'-',
		{
            text:'2.5D',
       //     iconCls: 'bmenu',  // <-- icon
            handler: function ()
			{
				type_s3 = 't';serv3 = 'odessa3d1';changeMap(4);
				
			},
			enableToggle: true,
			toggleHandler: onItemToggle,
			toggleGroup:'group11'
        }
		,'-',
		{
            text:'Космо 2003',
          //  iconCls: 'bmenu',  // <-- icon
            handler: function ()
			{
				changeMap(2);
			},
			enableToggle: true,
			toggleHandler: onItemToggle,
			toggleGroup:'group11'
        },
		{
            text:'2008',
        //    iconCls: 'bmenu',  // <-- icon
            handler: function ()
			{
				changeMap(3);
			},
			enableToggle: true,
			toggleHandler: onItemToggle,
			toggleGroup:'group11'
        },'-',
		{
            text:'История',
          //  iconCls: 'bmenu',  // <-- icon
            menu: menu2  // assign menu by instance
        },
		{
            text:'Ген.план',
        //    iconCls: 'bmenu',  // <-- icon
            menu: menu  // assign menu by instance
        },
		{
            text:'ЖКХ',
        //    iconCls: 'bmenu',  // <-- icon
            menu: menu3  // assign menu by instance
        },
		{
          id:"streets",
		  text:"Список улиц",
         // iconCls: 'i9',  // <-- icon
          handler: function () {
		  if(!str_load)
		  {
		  getstrlist("а");
		  str_load=true;
		  }
		  dijit.byId('dialog_st').show();
		 // executeQueryTask();
		  }
		
		
			 
			
        }
]


});
 tb.render("toolbar");
 
 var tabs = new Ext.TabPanel({
            region    : 'center',
            margins   : '3 3 3 0', 
            activeTab : 0,
			border:false,
            defaults  : {
				autoScroll : true
			},
            items     : [
			{
                title    : 'О Одессе',
				url:'/odessahtml',
				autoLoad: {
url: '/odessa.html',
scripts: false,
text:'Загрузка...'
}
             /*   html     : '<div style="margin:4px">Одесса — Прекрасный город на черноморском побережье Украины,<br> административный центр Одесской области и исторический центр Новороссии,<br> самый крупный порт на Украине,<br> крупный промышленный, культурный, научный и курортный центр;<br> узел шоссейных и железных дорог. Город-герой.<br> По числу жителей (1 000 779 человек на 1 февраля 2007 г.) является четвёртым в стране.</div>'
             */},{
                title    : 'О карте',
                html     : 'Ext.example.bogusMarkup'
             },{
                title    : 'Легенда',
                html     : 'Ext.example.bogusMarkup'
             },{ 
                title    : 'Справка',
                html     : 'Ext.example.bogusMarkup',
                closable : true
            }]
        });
  var win = new Ext.Window({
            title    : 'Добро пожаловать в интерактивную карту Одессы',
            closable : true,
            width    : 600,
            height   : 600,
            //border : false,
            plain    : true,
            layout   : 'border',
			//html:'hello'
            items    : [ tabs]
        });

          // win.show();
	//alert('map_service')	  ;
	var conn = new Ext.data.Connection();
	conn.request({
	url: 'theme.php',
    method: 'POST',
    params: {"com": 'get',"map":map_service,"lang":lang1},
    success: function(responseObject) {
	//alert("sss");
       document.getElementById('themes_list').innerHTML = '<div style="padding:0px;margin:0px;background-color:'+bcolor+'">'+responseObject.responseText+"</div>";
	     if(responseObject.responseText=="no data")
										   {
										 	item1.hide();
										   }
										   else
										   {
											item1.show();
										   }
	 if(path_1=='hotel')     {setTimeout('document.getElementById("sl2").checked=true;load_theme(2);',1000);  }
	 if(path_1=='pamyatniki'){setTimeout('document.getElementById("sl1").checked=true;load_theme(1);',1000); }
	 if(path_1=='parki'){setTimeout('document.getElementById("sl6").checked=true;load_theme(6);',1000); }
	 if(path_1=='museums'){setTimeout('document.getElementById("sl7").checked=true;load_theme(7);',1000); }
	 if(path_1=='theatres'){setTimeout('document.getElementById("sl3").checked=true;load_theme(3);',1000); }
    },
     failure: function() {
         Ext.Msg.alert('Status', 'Нет связи с сервером. Please try again later.');
     }
	}); 
	var conn2 = new Ext.data.Connection();
	conn2.request({
	url: 'map.php',
    method: 'POST',
    params: {"com": 'get'},
    success: function(responseObject) {
	//alert("sss");
       document.getElementById('maps_list').innerHTML = responseObject.responseText;
	   Ext.select("INPUT[name='group1']").on("click", RadioClicked);

    },
     failure: function() {
         Ext.Msg.alert('Status', 'Нет связи с сервером. Please try again later.');
     }
	}); 
	if(map_service=="obl_pz6")
	{
		item7.show();
var temp1 = "";
	 //
			dojo.xhrGet( {
		url: "/work/obl_city_json.php",
        handleAs: "text",
        load: function(data) {
	
		var responseObject = eval( data );
		//	alert(responseObject.length);
			for(var t=0;t<responseObject.length;t++)
			{
			if(responseObject[t].name_rus != "")
			 temp1 = temp1 +'<span class="a_link" style="cursor:pointer" onclick="goto_feature3('+parseInt(responseObject[t].x)+','+parseInt(responseObject[t].y)+',false)">'+ responseObject[t].name_rus+"</span><br>";
				//alert(responseObject[t].name);
			//	var symbol = new esri.symbol.PictureMarkerSymbol('/map/icons/flag-blue-16x16.png', 16,16) ;
			//	 var pt = new esri.geometry.Point(responseObject[t].x,responseObject[t].y,map.spatialReference) ;
			//	 var infoTemplate = new esri.InfoTemplate();
			//	 var foto1 = responseObject[t].foto1;
			//	 var foto2 = responseObject[t].foto2;
			//	 infoTemplate.setTitle('<span style="color:green">'+responseObject[t].name+'</span> ');
			//	 infoTemplate.setContent('<img style="width:100px" src="/images/history/'+foto1+'">&nbsp;<img style="width:100px" src="/images/new_history/'+foto2+'">');
			//	var  gra = new esri.Graphic(pt, symbol) ;
			//	 gra.setInfoTemplate(infoTemplate);
			//	 map.graphics.add(gra);
			}
			document.getElementById('punkti1').innerHTML=temp1;
			item7.expand();
		}
			});



	}
	else
	{
		item7.hide();
	}
	
	if(map_service=="odessa_n")
								{
									
									item2.show();
									item6.show();
									Tree_Category.show();
								}
								else
								{
									
									item2.hide();
									item6.hide();
									Tree_Category.hide();
								}
	
/*	var conn3 = new Ext.data.Connection();
	conn3.request({
	url: 'login.php',
    method: 'POST',
    params: {"com": 'get'},
    success: function(responseObject) {
	//alert("sss");
       document.getElementById('login_panel').innerHTML = responseObject.responseText;
	   button1();
	   //Ext.select("INPUT[name='group1']").on("click", RadioClicked);

    },
     failure: function() {
         Ext.Msg.alert('Status', 'Нет связи с сервером. Please try again later.');
     }
	}); */
	
}
function activ1()
{
 toolbar_draw.deactivate(esri.toolbars.Draw.POLYLINE);navToolbar.activate(esri.toolbars.Navigation.PAN);
}
var cl_con = false;
function distance_window()
{
	var win;
 // var button = Ext.get('show-btn');

    //button.on('click', function(){
        // create the window on the first click and reuse on subsequent clicks
       // if(!win){
            win = new Ext.Window({
             //   applyTo     : 'hello-win',
                layout      : 'fit',
                width       : 370,
                height      : 150,
                closeAction :'close',
                plain       : true,
				title    :'Линейка',
				html: '<div style="padding:5px" id="dist1"></div>',

                buttons: [{
                    text     : 'Длина (простая линия)',
					handler  : function()
					{
						toolbar_draw.activate(esri.toolbars.Draw.POLYLINE);
						dojo.disconnect(cl_con);
                    },
                    disabled : false
                },{
                    text     : 'Завершить',
                    handler  : function(){
				//	esri.toolbars.Draw.deactivate();
				navToolbar.deactivate();
                    toolbar_draw.deactivate(esri.toolbars.Draw.POLYLINE); 
					cl_con = dojo.connect(map, "onClick", WhatTodoOnClick);					
                    }}
                ]
            });
       // }
	   win.on('close', activ1 ); 

        win.show();
   // });

}
function load_theme(theme)
{

	if(!document.getElementById('sl'+theme).checked)
	{
	  progress();
		    map.graphics.clear();
			var count = document.getElementById('count').value;
			for(var t=1;t<parseInt(count)+1;t++)
			{	
			//alert(t);
				if(document.getElementById('sl'+t))
				{
					if(document.getElementById('sl'+t).checked)
					{
					
						load_pre_theme(t);
						
					}
				}		
			}
			 Ext.MessageBox.hide();
	}
	else
	{
  
					//alert(theme);
				   Ext.MessageBox.show({
			           title: 'Пожалуйста подождите',
			           msg: 'Загрузка объектов...',
			           progressText: 'Initializing...',
			           width:300,
			           progress:true,
			           closable:false,
			           animEl: 'mb6'
			       });
		if(!themes[theme])		
		{		
			var conn = new Ext.data.Connection();
			conn.request(
			{
				url: 'theme.php',
			    method: 'POST',
			    params: {"com": 'theme',"id":theme,"lang":lang1},
			    success: function(responseObject) {
						
			     //  document.getElementById('themes_list').innerHTML = responseObject.responseText;
				 load_theme_from_text(responseObject.responseText,theme);
				   Ext.MessageBox.hide();
			    },
			     failure: function() {
			         Ext.Msg.alert('Status', 'Нет связи с сервером. Please try again later.');
			     }
			}); 
		}
		else
		{

					load_pre_theme(theme);

		}
			       // this hideous block creates the bogus progress
			       var f = function(v){
			            return function(){
			                if(v == 100){
			                    Ext.MessageBox.hide();
			                    Ext.example.msg('Done', 'Your fake items were loaded!');
			                }else{
			                    var i = v/11;
			               //     Ext.MessageBox.updateProgress(i, Math.round(100*i)+'% completed');
			                }
			           };
			       };
			       for(var i = 1; i < 13; i++){
			         //  setTimeout(f(i), i*500);
			       }
				   
				   
	}
}
    function onItemToggle(item, pressed)
	{
//	Ext.example.msg('Button Toggled', 'Button "{0}" was toggled to {1}.', item.text, pressed);

		/*if(("button_"+i)!=item.id)
		{
			
			var tmp = Ext.get("button_"+i);
			tmp.pressed = false;
			tmp.toggle(false);
			if(tmp.pressed)
			{alert("button_"+i);
			    tmp.el.removeClass("x-btn-pressed");
                tmp.pressed = false;
                tmp.fireEvent("toggle", this, false);
			}
		}*/
	
    }

function s_h_d(id)
{
	var temp = document.getElementById('maps_cat_'+id);
	//alert(id);
	if(temp.style.display!="none")
	{
		temp.style.display="none";
	}
	else
	{
		temp.style.display="";
	}
}
function button1()
{
//alert(111);
 new Ext.Button(
	{
        text: 'Вход',
       handler: login,
        iconCls:'i5'
    }).render(document.body, 'enter');
}
function login()
{
}
function register()
{
}
var conn4 ;
function map_window()
{
	var win;
  var button = Ext.get('show-btn');

    //button.on('click', function(){
        // create the window on the first click and reuse on subsequent clicks
       // if(!win){
            win = new Ext.Window({
             //   applyTo     : 'hello-win',
                layout      : 'fit',
                width       : 500,
                height      : 300,
                closeAction :'close',
                plain       : true,
				title    :'Сообщить об ошибке, оставить отзыв, пожелание,задать вопрос .',
				html: '<div style="padding:5px">Имя<br><input type="text" id="sender_name"><br>Почтовый адресс (Email)<br><input type="text" id="sender_email"><br>Текст письма<br><textarea id="send_to_ht" style="width:95%;height:100px"></textarea></div>',
			
            /*    items       : new Ext.TabPanel({
                    applyTo        : 'hello-tabs',
                    autoTabs       : true,
                    activeTab      : 0,
                    deferredRender : false,
                    border         : false
                }),*/

                buttons: [{
                    text     : 'Отправить',
					handler  : function()
					{
						var text = document.getElementById('send_to_ht').value;
						var name = document.getElementById('sender_name').value;
						var email = document.getElementById('sender_email').value;
					//	alert(text);
                        //win.hide();
								 conn4 = new Ext.data.Connection();
								conn4.request(
								{
									url: 'send.php',
								    method: 'POST',
								    params: {"text":text,'name':name,'email':email},
								    success: function(responseObject)
									{			
								      //alert(responseObject.responseText);
									  Ext.MessageBox.alert('Сервер', responseObject.responseText, null);
								       //  document.getElementById('themes_list').innerHTML = responseObject.responseText;
									   document.getElementById('send_to_ht').value = null;
									   win.close();
									},
								     failure: function() {
								         Ext.Msg.alert('Status', 'Нет связи с сервером. Please try again later.');
								     }
								}); 
                    },
                    disabled : false
                },{
                    text     : 'Закрыть',
                    handler  : function(){
                        win.close();
                    }
                }]
            });
       // }
        win.show();
   // });

}
function show_stations()
{

	for(var i=0;i<a_stations.length;i++)
	{
	
		var geometry = new esri.geometry.Point(a_stations[i][2], a_stations[i][3], null);
		var symbol =new esri.symbol.SimpleMarkerSymbol(esri.symbol.SimpleMarkerSymbol.STYLE_CIRCLE, 10, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255,122,200]), 1), new dojo.Color([0,0,255,0.60]));
	//var symbol =new esri.symbol.PictureMarkerSymbol('http://www.citymap.odessa.ua/map_icons/tram.png', 16, 16);
	 	var infoTemplate = new esri.InfoTemplate();
        infoTemplate.setTitle('Остановка : ' + a_stations[i][1]);
		var temp81 = "";
		var temp82 = "";
		for(var r=0;r<a_stations[i][4].length;r++)
		{
		//	temp81 = temp81 + a_stations[i][4][r][0];
			if(a_stations[i][4][r][1]==1)
			{
				//temp81 = temp81 +"Троллейбус : "+ a_stations[i][4][r][0]+'<br>';
				if(temp81) {temp81 = temp81 +" ,"};
				temp81 = temp81 +'  <span style="color:red;cursor:pointer" onclick="load_saved_road('+a_stations[i][4][r][2]+')">'+ a_stations[i][4][r][0]+'</span>';
			}	
			else
			{
				//temp81 = temp81 +"Трамвай : "+ a_stations[i][4][r][0]+'<br>';
				if(temp82) {temp82 = temp82 +" ,"};
				temp82 = temp82 +'  <span style="color:green;cursor:pointer" onclick="load_saved_road('+a_stations[i][4][r][2]+')">'+ a_stations[i][4][r][0]+'</span>';
			}
		}
		 var temp83 = "";
		 if(temp81!="")
		 {
			temp83 = temp83+ "Троллейбус : " + temp81 + "<br><br>";
		 }
		 if(temp82!="")
		 {
			temp83 = temp83+"Трамвай    : " + temp82 + "<br><br>";
		 }
		infoTemplate.setContent(temp83);
     //   map.infoWindow.resize(100,50);
		var gra = new esri.Graphic(geometry, symbol);
		gra.setInfoTemplate(infoTemplate);
		
        map.graphics.add(gra);
	}
	
}
 function load_roads_table()
 {
	/*Ext.get('roads_show').dom.innerHTML="";
	var temp ='<div><div id="show_all_roads" onload="button2()"></div><hr>';
	temp = temp + "<hr><div id='roads_table'></div></div><hr><div id='summary' style='font-size: 8pt;'></div><div id='directions'></div>";
	Ext.get('roads_show').dom.innerHTML=temp;
	setTimeout("button2()",200);*/
	//load_stations();
	roads_list();
	
 }
 function button2()
 {

	new Ext.Button(
	{
        text: 'Все линии',
		//handler: show_all_roads,
	handler:load_stations,
        iconCls:'i5'
    }).render(document.body, 'show_all_roads');
 }
 var findconn =null;
 function show_all_roads()
{
	map.infoWindow.hide();
	map.graphics.clear();
	Ext.get('roads_table').dom.innerHTML="";
	var temp ='<table style="width:100%">';
	temp = temp +'<tr><td colspan="4">Все линии<td></tr>';
	var col_count = 0;
	//alert(a_roads.length);
	for(var i=0;i<a_roads.length;i++)
	{
		if(a_roads[i]!="")
		{
		//alert(a_roads[i][0]);
		if(col_count==0) temp = temp +'<tr>';
		temp = temp +'<td align="center"onclick="map.graphics.clear();load_saved_road('+a_roads[i][0]+')"';
		if(a_roads[i][2]==1){temp = temp +' style="cursor:pointer;color:red;"><b>' + a_roads[i][1] + '</b></td>' ;}
		if(a_roads[i][2]==2){temp = temp +' style="cursor:pointer;color:green;"><b>' + a_roads[i][1] + '</b></td>' ;}
		load_saved_road(i);
		//rs2.next();
		col_count=col_count+1;
		if(col_count==4){ temp = temp +'</tr>'; col_count = 0;}
		}
	}
	if(col_count<4){ temp = temp +'</tr>';}
	temp = temp +'</table>';
	Ext.get('roads_table').dom.innerHTML=temp;
	show_stations();
}
 function createcvs__roads()
{
	
	document.getElementById('cvs').innerHTML="";
	var temp ='';
	var col_count = 0;
	//alert(a_roads.length);
	for(var i=0;i<a_roads.length;i++)
	{
		if(a_roads[i]!="")
		{
		temp = create_cvs_road(i,temp);
		//temp = temp +'<br>'; 
		}
	}

	document.getElementById('cvs').innerHTML=temp;
	dijit.byId('dialog_cvs').show();
}
function show_road_type(id)
{
	map.infoWindow.hide();
	map.graphics.clear();
	Ext.get('roads_table').dom.innerHTML="";
	var temp ='<table style="width:100%">';
	if(id==1) temp = temp +'<tr><td colspan="4">Троллейбус<td></tr>';
	if(id==2) temp = temp +'<tr><td colspan="4">Трамвай<td></tr>';
	var col_count = 0;
	//alert(a_roads.length);
	for(var i=0;i<a_roads.length;i++)
	{
		if(a_roads[i]!=""&&a_roads[i][2]==id)
		{
		//alert(a_roads[i][0]);
		if(col_count==0) temp = temp +'<tr>';
		temp = temp +'<td align="center"onclick="map.graphics.clear();load_saved_road('+a_roads[i][0]+')"';
		if(a_roads[i][2]==1){temp = temp +' style="cursor:pointer;color:red;"><b>' + a_roads[i][1] + '</b></td>' ;}
		if(a_roads[i][2]==2){temp = temp +' style="cursor:pointer;color:green;"><b>' + a_roads[i][1] + '</b></td>' ;}
		//load_saved_road(rs2.field(0))
		load_saved_road(i);
		//rs2.next();
		col_count=col_count+1;
		if(col_count==4){ temp = temp +'</tr>'; col_count = 0;}
		}
	}
	if(col_count<4){ temp = temp +'</tr>';}
	temp = temp +'</table>';
	Ext.get('roads_table').dom.innerHTML=temp;
	show_stations();
}
function load_saved_road(id)
{
//alert(a_points[196][1]);
//alert(id);
//alert(a_roads[id][3].length);
	var is=false;
	var	polyline = new esri.geometry.Polyline();
	var x,y;
	for(var i=0;i<a_roads[id][3].length;i++)
	{
		if(is)
		{
			
			polyline.addPath([new esri.geometry.Point(x,y), new esri.geometry.Point(a_points[a_roads[id][3][i]][1],a_points[a_roads[id][3][i]][2])]);
			
		}
		//if(a_roads[id][3][i]==196) 
	//	alert(a_roads[id][3][i]);    
		x=a_points[a_roads[id][3][i]][1];y=a_points[a_roads[id][3][i]][2];
		is=true; 
	}
	
		var infoTemplate = new esri.InfoTemplate();
        infoTemplate.setTitle("Маршрут №:"+a_roads[id][1]);
		if(a_roads[id][2]==1)infoTemplate.setContent('Троллейбус');
		if(a_roads[id][2]==2)infoTemplate.setContent('Трамвай');
		var r=Math.floor(Math.random()*257);
		var g=Math.floor(Math.random()*257);
		var b=Math.floor(Math.random()*257);
		var symbol =new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([r,g,b]), 3);
		var gra = new esri.Graphic(polyline, symbol) ;
		gra.setInfoTemplate(infoTemplate);
		map.graphics.add(gra);
}
function create_cvs_road(id,temp)
{	temp=temp+id+";"+a_roads[id][1]+";"+a_roads[id][2]+";"+a_roads[id][3].length+"<br>";
	for(var i=0;i<a_roads[id][3].length;i++)
	{
		
		x=a_points[a_roads[id][3][i]][1];y=a_points[a_roads[id][3][i]][2];
		temp=temp+x+";"+y+";";

	}
	temp=temp+"<br>";
	return temp;
}

