﻿/* -----------------------------------------------
UTILITY javascript

description:	contain most used and useful scripts
author:		Vaclav Cermak <http://www.disnel.com>
		Marian Smutny <http://smutny.redir.cz>
version:	17.04.2004
----------------------------------------------- */

// POPWINDOW otevre odkaz do noveho okna bez menu, tlacitek,...
// U obrazku automaticky zjisti velikost obrazku a otevre ho do noveho okna. 
// Lze nastavit take maximalni velikost noveho okna pomoci maxWinSize.
// skopiruj řádek kam potrebujes a dopln cestu k obrazku mezi "" a ''
// 
// <a href="" onClick="return popWindow('')" class="popup">
// <img src="" alt="" class="figure"></a>

var maxWinSizeX=640;
var maxWinSizeY=480;
var pop;

function popImageWindow(url) {
  img1 = new Image;
  img1.src=url;
  
  Scrollbars="scrollbars=no";

  if (img1.width <= 0) SizeH=maxWinSizeX;
  else SizeH=img1.width + 20;
  if (img1.height <= 0) SizeV=maxWinSizeY;
  else SizeV=img1.height + 20;

  if (SizeH > maxWinSizeX) { SizeH=maxWinSizeX; Scrollbars="scrollbars=yes"; }
  if (SizeV > maxWinSizeY) { SizeV=maxWinSizeY; Scrollbars="scrollbars=yes"; }

  if (SizeH > maxWinSizeX | SizeV > maxWinSizeY) SizeH=SizeH + 20;

  Size="width=" + SizeH + ",height=" + SizeV;

  FromX=screen.width/2 - SizeH/2;
  FromY=screen.height/2 - SizeV/2;
  
  if (pop) pop.close();
  pop=window.open(img1.src, "", Size + ",left=" + FromX +",top=" + FromY + "," + Scrollbars + ",resizable=1");

  return false;
}

function popTextWindow(url) {
  Scrollbars="scrollbars=auto";

  Size="width=" + maxWinSizeX + ",height=" + maxWinSizeY;

  FromX=screen.width/2 - SizeH/2;
  FromY=screen.height/2 - SizeV/2;
  
  if (pop) pop.close();
  pop=window.open(url, "", Size + ",left=" + FromX +",top=" + FromY + "," + Scrollbars + ",resizable=1");

  return false;
}

function popWindow(url) {
  var tmpLen=url.length;

  if (url.indexOf(".jpg") == tmpLen - 4
      | url.indexOf(".jpeg") == tmpLen - 5
      | url.indexOf(".gif") == tmpLen - 4
      | url.indexOf(".png") == tmpLen - 4
      )
    return popImageWindow(url);
  else
    return popTextWindow(url);  
}


// SHOWHIDE zobrazi/skryje obsah umisteny mezi DIV.
//
// <P onclick="showhide('SKRYTY')" style="cursor: hand">Ukaz/skryj</P>
// <DIV id="skryty" style="display: none">
// <P>Skryty text</P>
// </DIV>

function showHide(sId) {
	var el = document.getElementById(sId);
	el.style.display = (el.style.display == "none") ? "block" : "none";
}


//JUMPMENU skoÄÃ­ na strÃ¡nku podle vÃ½bÄ›ru v comboboxu.
// 
// <FORM name="sitemap">
// <SELECT onchange="jumpMenu('main',this,1)" name="menu1" width="130" size="1">
// <OPTION value="#">Vyberte poloÅ¾ku</option>
// <OPTION value="stranka1.html">poloÅ¾ka 1</option>
// <OPTION value="stranka2.html">poloÅ¾ka 2</option>
// <OPTION value="stranka3.html">poloÅ¾ka 3</option>
// </SELECT>
// </FORM>

function jumpMenu(targ,selObj,restore) {
	eval("parent."+targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
	if (restore) selObj.selectedIndex=0;
}


// SIDE slouzi k zobrazovani obsahu dvojice dokumentu "*.html" a "*.side.html"
// Jestlize se nacte do hlavniho ramecku *.html, tak do postraniho ramecku "side"
// se nacte stejne pojmenovany dokument s koncovkou .side.html
// Do <body> hlavniho dokumentu je potreba vlozit atribut:
//
// <body onload="side();">

function side() {
  mainDL = String(document.location);
  sideDL = mainDL.replace(/\.html/, ".side.html");

  top.sideFrame.location = sideDL;

}


// STYLESWITCH prepina aktivni kaskadovy styl a ulozi vybrany vzhled do cookies navstevnika
//
// <script type="text/javascript" src="utility.js"></script>
// <link rel="alternate stylesheet" title="puvodni" type="text/css" media="screen" href="/default.css" />
// <link rel="alternate stylesheet" title="novy" type="text/css" media="screen" href="/new.css" />
//
// do BODY skopiruj radek kam potrebujes a definuj nazvy dle TITLE
//
// <a href="#" onclick="css('puvodni'); return false;">Zmen vzhled na PUVODNI</a> 
// <a href="#" onclick="css('novy'); return false;">Zmen vzhled na NOVY</a>


function css(title) {
  var i, a, main;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
      a.disabled = true;
      if(a.getAttribute("title") == title) a.disabled = false;
    }
  }
}

function getActiveStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled) return a.getAttribute("title");
  }
  return null;
}

function getPreferredStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1
       && a.getAttribute("rel").indexOf("alt") == -1
       && a.getAttribute("title")
       ) return a.getAttribute("title");
  }
  return null;
}
/* Odkomentovanim funkci si bude pamatovat posledni nastavene CSS*/

function createCookie(name,value,days) {
  if (days) {
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString();
  }
  else expires = "";
  document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for(var i=0;i < ca.length;i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') c = c.substring(1,c.length);
    if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
  }
  return null;
}

window.onload = function(e) {
  var cookie = readCookie("style");
  var title = cookie ? cookie : getPreferredStyleSheet();
  css(title);
}

window.onunload = function(e) {
  var title = getActiveStyleSheet();
  createCookie("style", title, 365);
}

var cookie = readCookie("style");
var title = cookie ? cookie : getPreferredStyleSheet();
css(title);
