var W3CDOM = (document.createElement && document.getElementsByTagName);
window.onload = init;

function init()
{
	       if (!W3CDOM) return;
	       
	       findImages();
	       
	       var nav = document.getElementById('menu');
	       var as=  nav.getElementsByTagName('a');
	       for (var i=0;i<as.length;i++)
	       {
	       if(as[i].parentNode.tagName == 'LI'){
	  	   var span =  as[i].parentNode.getElementsByTagName('SPAN');
	  	    for (var y=0;y<span.length;y++)
	        {
	        if(span[y].getElementsByTagName('A').length > 0){
	        as[i].number = i;	
	        as[i].onclick = test; 	
	        }
    	    }
	  	   }
	       }
	       
	       var nav = document.getElementById('facilities');
	       var as=  nav.getElementsByTagName('a');
	       for (var i=0;i<as.length;i++)
	       {
	       if(as[i].parentNode.tagName == 'LI'){
	  	   var span =  as[i].parentNode.getElementsByTagName('EM');
	  	    for (var y=0;y<span.length;y++)
	        {
	        if(span[y].getElementsByTagName('A').length > 0){
	        //as[i].number = i;	
	        //as[i].onclick = test2; 	
	        }
    	    }
	  	   }
	       }
	       
	       
}

function slideExcept(x){
      
  	  var nav = document.getElementById('menu');
	    var as =  nav.getElementsByTagName('a');
	       
      for (var i=0;i<(as.length);i++) 
	    {
	    
       if(as[i].parentNode.tagName == 'LI'){       
       as[i].className = 'noclick';
       }
	    
           if(i == x){
	         }
	         else{
                var spans = as[i].parentNode.getElementsByTagName('span'); 
                
                for (var w=0;w<spans.length;w++)
	              {
	              var ems = spans[w].getElementsByTagName('em');
                for (var e=0;e<ems.length;e++)
	              {  
                ems[e].style.display = 'none';
                ems[e].parentNode.style.marginBottom = 0 + 'em'; 
                var parenta = ems[e].parentNode.getElementsByTagName('a');
                for (var p=0;p<parenta.length;p++){
                parenta[p].className = 'back';
                }
                }
	              if(parseInt(spans[0].style.height) > 0){
                     spans[0].style.display = 'none';
                     spans[0].style.height = 0;
                     
                }
           }
        }
      }
	         
}

function slideExcept2(x){
     
  	  var nav = document.getElementById('facilities');
	    var as =  nav.getElementsByTagName('a');
	       
      for (var i=0;i<(as.length);i++) 
	    {
	    
       if(as[i].parentNode.tagName == 'EM'){       
       as[i].className = 'noclick';
       }
	    
           if(i == x){
	         }
	         else{
                var spans = as[i].parentNode.getElementsByTagName('EM'); 
                
                for (var w=0;w<spans.length;w++)
	              {
	              var ems = spans[w].getElementsByTagName('em');
                for (var e=0;e<ems.length;e++)
	              {  
                ems[e].style.display = 'none';
                ems[e].parentNode.style.marginBottom = 0 + 'em'; 
                var parenta = ems[e].parentNode.getElementsByTagName('a');
                for (var p=0;p<parenta.length;p++){
                parenta[p].className = 'back';
                }
                }
	              if(parseInt(spans[0].style.height) > 0){
                     spans[0].style.display = 'none';
                     spans[0].style.height = 0;
                     
                }
           }
        }
      }
	         
}

function test(nr,direction){

                   
          if(nr>=0)
          {this.number = nr;}
          else{
          var x = this.number;
          slideExcept(this.number);
          }
          var nav = document.getElementById('menu');
	        var as =  nav.getElementsByTagName('a');      
          var spans = as[this.number].parentNode.getElementsByTagName('span'); 
          var aheights = spans[0].getElementsByTagName('a');  
                 
          //pokud v html receno, ze ma byt zobrazen
           if(spans[0].className == "visible") {
           vyska = (aheights.length * 2);           
           if(spans[0].style.height == ""){spans[0].style.height = vyska + "em";}
           spans[0].style.display = 'block';
           spans[0].style.overflow = 'hidden';


           //pokud kliknuto na uz zobrazeny - zaviram
           if(parseFloat(spans[0].style.height) > 0.2){  
           
           spans[0].style.height = parseInt(spans[0].style.height) - 2 + "em";
           nr = this.number;
           direction = 0;
           setTimeout("test("+nr+","+direction+")",1);
           }
           else{      
           spans[0].style.display = 'none';
           spans[0].style.height = 0;
           spans[0].className = "none";
           
           }
          
          
          }
          
          // pokud neni ovlivnen html
          else{ 
          
          if(spans[0].style.display == ""){spans[0].style.display = "none";}
          if(spans[0].style.height == ""){spans[0].style.height = 0 + "em";}
          
          
          //pokud je zavreny - oteviram
        	if((spans[0].style.display == "none")||(direction == 1)){
        	
          spans[0].style.display = 'block';
          spans[0].style.overflow = 'hidden';
          as[this.number].className = 'click';
          var vyska = (aheights.length * 2);

          // neni otevren uplne
          
          if(parseFloat(spans[0].style.height) < vyska){ 
                                
                        spans[0].style.height = (parseFloat(spans[0].style.height) + 2) + "em";           
                        nr = this.number;
                        direction = 1;                       
                        setTimeout("test("+nr+","+direction+")",1);
                        
          }   
          // uz je otevrenej dost  
          else{
          spans[0].style.height = vyska + "em";
          }
          } 
          
          //pokud je otevreny - zaviram
           else{

           if(parseInt(spans[0].style.height) > 0){
           var ems = spans[0].getElementsByTagName('em');
          
                for (var e=0;e<ems.length;e++)
	              {  
                ems[e].style.display = 'none';
                }
           spans[0].style.height = parseFloat(spans[0].style.height) - 2 + "em";
           as[this.number].className = 'noclick';
           nr = this.number;
           direction = 0;
           setTimeout("test("+nr+","+direction+")",1);
           }
           else{
           
           // uplne schovam
           spans[0].style.display = 'none';
           spans[0].style.height = 0;
           as[this.number].className = 'noclick';
           }
          }
    }
    
          	return false;
}


function test2(nr,direction){

                   
          if(nr>=0)
          {this.number = nr;}
          else{
          var x = this.number;
          slideExcept2(this.number);
          }
          var nav = document.getElementById('facilities');
	        var as =  nav.getElementsByTagName('a');      
          var spans = as[this.number].parentNode.getElementsByTagName('EM'); 
          var aheights = spans[0].getElementsByTagName('a');  
                 
          //pokud v html receno, ze ma byt zobrazen
           if(spans[0].className == "opened") {
           vyska = (aheights.length * 2);           
           if(spans[0].style.height == ""){spans[0].style.height = vyska + "em";}
           spans[0].style.display = 'block';
           spans[0].style.overflow = 'hidden';


           //pokud kliknuto na uz zobrazeny - zaviram
           if(parseFloat(spans[0].style.height) > 0.2){  
           
           spans[0].style.height = parseInt(spans[0].style.height) - 2 + "em";
           nr = this.number;
           direction = 0;
           setTimeout("test2("+nr+","+direction+")",1);
           }
           else{      
           spans[0].style.display = 'none';
           spans[0].style.height = 0;
           spans[0].className = "none";
           
           }
          
          
          }
          
          // pokud neni ovlivnen html
          else{ 
          
          if(spans[0].style.display == ""){spans[0].style.display = "none";}
          if(spans[0].style.height == ""){spans[0].style.height = 0 + "em";}
          
          
          //pokud je zavreny - oteviram
        	if((spans[0].style.display == "none")||(direction == 1)){
        	
          spans[0].style.display = 'block';
          spans[0].style.overflow = 'hidden';
          as[this.number].className = 'click';
          var vyska = (aheights.length * 2);

          // neni otevren uplne
          
          if(parseFloat(spans[0].style.height) < vyska){ 
                                
                        spans[0].style.height = (parseFloat(spans[0].style.height) + 2) + "em";           
                        nr = this.number;
                        direction = 1;                       
                        setTimeout("test2("+nr+","+direction+")",1);
                        
          }   
          // uz je otevrenej dost  
          else{
          spans[0].style.height = vyska + "em";
          }
          } 
          
          //pokud je otevreny - zaviram
           else{

           if(parseInt(spans[0].style.height) > 0){
           var ems = spans[0].getElementsByTagName('em');
          
                for (var e=0;e<ems.length;e++)
	              {  
                ems[e].style.display = 'none';
                }
           spans[0].style.height = parseFloat(spans[0].style.height) - 2 + "em";
           as[this.number].className = 'noclick';
           nr = this.number;
           direction = 0;
           setTimeout("test2("+nr+","+direction+")",1);
           }
           else{
           
           // uplne schovam
           spans[0].style.display = 'none';
           spans[0].style.height = 0;
           as[this.number].className = 'noclick';
           }
          }
    }
    
           
}
function findImages(){
    if(document.getElementById('content')){
    var images_div = document.getElementById('content');
    var as = images_div.getElementsByTagName('a');
    for(var foo = 0; foo < as.length; foo++){			
    if(as[foo].id){
    as[foo].number  = as[foo].id;
    as[foo].onclick = workImage;
    }		
    }
    }
}   

function alertSize() {
  var myWidth = 0, myHeight = 0;
  if( typeof( window.innerWidth ) == 'number' ) {
    //Non-IE
    myWidth = window.innerWidth;
    myHeight = window.innerHeight;
  } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
    //IE 6+ in 'standards compliant mode'
    myWidth = document.documentElement.clientWidth;
    myHeight = document.documentElement.clientHeight;
  } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
    //IE 4 compatible
    myWidth = document.body.clientWidth;
    myHeight = document.body.clientHeight;
  }
    return myHeight;
}

function galeryImage(stringfrom){
    
    var splits = new Array();
    splits = stringfrom.split('-');
    var order = splits[0];
    var imagename = splits[1];
    var imagew = splits[2];
    var imageh = splits[3]; 

    if(document.getElementById('printgalerie')){ 
    var overlayscroll = (document.documentElement.scrollTop);
    }
    
    var monitor = alertSize()-40;
    if(monitor > imageh){
    var mtop = -(imageh/2);
    var vyska = imageh;
    }
    else{
    var mtop = -(monitor/2)
    var vyska = monitor;
    }
    
    mtop = mtop + overlayscroll - 15 ;
    if(document.getElementById('printgalerie')){ document.getElementById('printgalerie').style.height = vyska+'px'; }
    
    newheight = vyska-20;
    
    var newidth = imagew/(imageh/newheight);
    
    var mleft = newidth/2;

       
    if(document.getElementById('printgalerie')){ document.getElementById('printgalerie').style.marginTop = mtop+'px'; }
    if(document.getElementById('printgalerie')){ document.getElementById('printgalerie').style.marginLeft = '-'+mleft+'px'; }
    //alert(document.getElementById('printgalerie').style.marginLeft);
        url='../pages/openpicture.php?imageid='+imagename+'&newheight='+newheight;
        
      
        if (window.ActiveXObject)
        {
          httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
        }
        else
        {
          httpRequest = new XMLHttpRequest();
        }
        httpRequest.open("GET", url, true);

        httpRequest.onreadystatechange= function () {processRequest(); } ;
        httpRequest.send(null);
      


    return false;
} 

function workImage(){
    var stringfrom = this.number;  
    var splits = new Array();
    splits = stringfrom.split('-');
    var order = splits[0];
    var imagename = splits[1];
    var imagew = splits[2];
    var imageh = splits[3]; 

    if(document.getElementById('printgalerie')){ 
    var overlayscroll = (document.documentElement.scrollTop);
    }
    
    var monitor = alertSize()-40;
    if(monitor > imageh){
    var mtop = -(imageh/2);
    var vyska = imageh;
    }
    else{
    var mtop = -(monitor/2)
    var vyska = monitor;
    }
    
    mtop = mtop + overlayscroll - 15 ;
    if(document.getElementById('printgalerie')){ document.getElementById('printgalerie').style.height = vyska+'px'; }
    
    newheight = vyska-20;
    
    var newidth = imagew/(imageh/newheight);
    
    var mleft = newidth/2;

       
    if(document.getElementById('printgalerie')){ document.getElementById('printgalerie').style.marginTop = mtop+'px'; }
    if(document.getElementById('printgalerie')){ document.getElementById('printgalerie').style.marginLeft = '-'+mleft+'px'; }
    //alert(document.getElementById('printgalerie').style.marginLeft);
        url='../pages/openpicture.php?imageid='+imagename+'&newheight='+newheight;
        
      
        if (window.ActiveXObject)
        {
          httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
        }
        else
        {
          httpRequest = new XMLHttpRequest();
        }
        httpRequest.open("GET", url, true);

        httpRequest.onreadystatechange= function () {processRequest(); } ;
        httpRequest.send(null);
      


    return false;
} 

function processRequest()
{

   
  
  if (httpRequest.readyState == 4)
  {
    if(httpRequest.status == 200)
    {
      
      buildGalery();
      var semka = document.getElementById("printgalerie");
      semka.innerHTML = httpRequest.responseText;
         
    
    
    }
    else
    {
        alert("Chyba pri nacitani stanky"+ httpRequest.status +":"+ httpRequest.statusText);
    }
  }
}


function buildGalery(){

   
   var overlayheight = (document.body.clientHeight);

   
   
   if(document.getElementById('overlay')){ document.getElementById('overlay').style.display = 'block'; }
   if(document.getElementById('overlay')){ document.getElementById('overlay').style.height = overlayheight + 'px'; }
   if(document.getElementById('printgalerie')){ document.getElementById('printgalerie').style.display = 'block'; }
   
}

function killImage(){
   if(document.getElementById('overlay')){ document.getElementById('overlay').style.display = 'none'; }
   if(document.getElementById('printgalerie')){ document.getElementById('printgalerie').style.display = 'none'; }
}
