﻿function getMapWindow()
{
   var obj = null;
   var iframe = top.document.getElementById('map');    
   if (iframe)
     obj = iframe.contentWindow.window.frames['ViewerFrame'];
   return obj;     
}

function ChangeVisibilityByType(typ, name, visible)
{
  var obj = getMapWindow();
  if (obj) {             
     var map =obj.GetMapFrame(); 
     var legend = map.document.getElementById('LegendCtrl');
     if (legend) {
       var legendUI = legend.contentWindow.window.frames['legendUiFrame'];        
       if (legendUI) {         
         var tree = legendUI.tree;        
         var node = null; 
         for(var i=0; i < tree.length; i++)          
           if (tree[i].name == name)
           {
              node = tree[i];
              break; 
           }         
         if (node)  
         {         
           if (typ == 'toogle')        
             legendUI.ChangeVisibility(node.objectId);                        
           else
             legendUI.ChangeVisibilityObject(node.objectId, visible);                        
         }  
       }
     }            
  }
}

function ChangeVisibilityLayer(name)
{     
  Loading('');
  ChangeVisibilityByType('toogle', name);  
  if (name == top.Ortofotomapa) {
    var iNav = top.document.getElementById('NavigatorDiv');   
    if (iNav) {
      var btnShowOrto = top.document.getElementsByName("BtnShowOrto");
      var btnShow = btnShowOrto[0];
      ChangeVisibilityForestWather(btnShow); 
    }
  }
  return false;   
}

function IsLayerVisible(name)
{
  var obj = getMapWindow();
  if (obj) {            
     var map =obj.GetMapFrame(); 
     var legend = map.document.getElementById('LegendCtrl');
     if (legend) {
       var legendUI = legend.contentWindow.window.frames['legendUiFrame'];  
       if (legendUI) {         
         var tree = legendUI.tree;        
         var node = null; 
         for(var i=0; i < tree.length; i++)
         {          
           if (tree[i].name == name)
           {
              node = tree[i];
              return node.visible; 
           }                  
         }
       }
     }            
   }
   return false;
}

function ChangeVisibilityForestWather(btn)
{
  if (btn) 
    var visible = btn.style.display == 'none' ? false : true;                   	 	  	 	   	              
}

function ChangeVisibilityNavigatorBtns(visible, id)
{
  var iNav = top.document.getElementById('iNavigator');   
  if (iNav) {             
     var obj = iNav.contentWindow;
     if (obj)
     {
        var btnShowArr = obj.document.getElementsByName("BtnShow" + id);
        var btnShow = btnShowArr[0];
        var btnHideArr = obj.document.getElementsByName("BtnHide" + id);
        var btnHide = btnHideArr[0];
        if (btnShow)
	        btnShow.style.display = visible?"none":"";
	    if (btnHide)
	        btnHide.style.display = visible?"":"none"; 		          
	 }       
  }
}

function UpdateButtonShowHide(name)
{
    if (name == top.Ortofotomapa)
    {
       var iNav = top.document.getElementById('iNavigator');          
       if (iNav) {             
         var obj = iNav.contentWindow;
         if (obj)
         {
			var btnShowArr = obj.document.getElementsByName("BtnShowOrto");        
			var btnShow = btnShowArr[0];
			var btnHideArr = obj.document.getElementsByName("BtnHideOrto");         
			var btnHide = btnHideArr[0];              		    
			if (btnShow)
				btnShow.style.display = btnShow.style.display=="none"?"":"none";		   
			if (btnHide)
				btnHide.style.display = btnHide.style.display=="none"?"":"none";
			if (top.ChangeVisibilityForestWather)  
				top.ChangeVisibilityForestWather(btnShow);     		 
		 }		
	  }	
	}
}	

function ChangeVisibilityVectors(visible) 
{     
  Loading(''); 
  ChangeVisibilityByType('user', 'Lokalizacja_Ulice_Warszawy_Glowne', visible); 
  setTimeout("ChangeVisibilityByType('user', 'Lokalizacja_Jezdnie'," + visible + ");",250);   
  setTimeout("ChangeVisibilityByType('user', 'Lasy'," + visible + ");",500);       	 	  	 	   	     
  setTimeout("ChangeVisibilityByType('user', 'Wody'," + visible + ");",750);       	 	  
  setTimeout("ChangeVisibilityByType('user', 'Granice Dzielnic'," + visible + ");",1000);       	 	  	 	   	     
  setTimeout("ChangeVisibilityByType('user', 'Administracja'," + visible + ");",1250); 
  setTimeout("ChangeVisibilityByType('user', 'Edukacja'," + visible + ");",1500); 
  setTimeout("ChangeVisibilityByType('user', 'Komunikacja'," + visible + ");",1750);       	 	  	 	   	       
  setTimeout("ChangeVisibilityByType('user', 'Kultura'," + visible + ");",2000);   
  setTimeout("ChangeVisibilityByType('user', 'Opieka Zdrowotna'," + visible + ");",2250);           	 	  	 	   	         
  setTimeout("ChangeVisibilityByType('user', 'Sport'," + visible + ");",2500);       	 	  	 	   	         
  setTimeout("ChangeVisibilityByType('user', 'Turystyka'," + visible + ");",2750);   
  setTimeout("ChangeVisibilityByType('user', 'Geodezja'," + visible + ");",3000);       	 	  	 	   	         
  setTimeout("ChangeVisibilityNavigatorBtns(" + visible + ",'Vector');", 3250); 
  return false;
}

function ChangeVisibilityLegend(visible)
{
  Loading(''); 
  var obj = getMapWindow();
  if (obj) {            
     var map =obj.GetMapFrame();     
     if (map) {                 
       if (!visible) {
         map.lastInfoWidth = map.infoWidth;
         if (map.lastInfoWidth == map.minInfoWidth)
           map.lastInfoWidth = 180;
       }         
       var legWidth = visible?map.lastInfoWidth:map.minInfoWidth;                                   
       ChangeVisibilityNavigatorBtns(visible, 'Legend');  
       map.ResizeTo(legWidth);       
       map.RequestMapAfterResizing();                
     }
  }     
  return false;
}