// JavaScript Document

/********** Schovani/zobrazeni loginu **********/
function zobrazLogin() {
    var mistoZobrazeni = document.getElementById("mistozobrazeni");
    var loginform = document.getElementById("loginform");
    mistoZobrazeni.innerHTML = loginform.innerHTML;
}
function skryjLogin() {
    var mistoZobrazeni = document.getElementById("mistozobrazeni");
    var loginnotform = document.getElementById("loginnotform");
    mistoZobrazeni.innerHTML = loginnotform.innerHTML;
}

/********** skryti prvku pomoci css **********/
function Skryj() {
  document.getElementById('javascriptok').style.display = 'none';
}

/********** Pruhlednost png **********/
var arVersion = navigator.appVersion.split("MSIE")
var version = parseFloat(arVersion[1])

function fixPNG(myImage)
{
    if ((version >= 5.5) && (version < 7) && (document.body.filters))
    {
       var imgID = (myImage.id) ? "id='" + myImage.id + "' " : ""
	   var imgClass = (myImage.className) ? "class='" + myImage.className + "' " : ""
	   var imgTitle = (myImage.title) ?
		             "title='" + myImage.title  + "' " : "title='" + myImage.alt + "' "
	   var imgStyle = "display:inline-block;" + myImage.style.cssText
	   var strNewHTML = "<span " + imgID + imgClass + imgTitle
                  + " style=\"" + "width:" + myImage.width
                  + "px; height:" + myImage.height
                  + "px;" + imgStyle + ";"
                  + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
                  + "(src=\'" + myImage.src + "\', sizingMethod='scale');\"></span>"
	   myImage.outerHTML = strNewHTML
    }
}

/***************** zobrazeni rozvinuteho menu *****************/
function showdropdownmenu( id_menucontent, elem_menuitem  )
{
    var menudiv = document.getElementById( id_menucontent );

    //vypocitani pozice menu
    var left = 0, top = 0;
    var obj = elem_menuitem;

    if (obj.offsetParent)
    {
        while(obj)
        {
            left += obj.offsetLeft;
            top += obj.offsetTop;
            obj = obj.offsetParent;
        }
    }
    else if (obj.x && obj.y)
    {
        left += obj.x;
        top += obj.y;
    }

    //nastaveni pozice menu
    menudiv.style.top = (top-8).toString() + 'px';
    menudiv.style.left = (left+116).toString() + 'px';

	//pokud se klikne mimo kalendar -> skryti kalendare
    //document.onmousedown = bodyclick;

    menudiv.style.visibility = 'visible';
    menudiv.style.zIndex = '6';
}
/***************** schovani rozvinuteho menu *****************/
function hidedropdownmenu( id_menucontent )
{
    var obj = document.getElementById( id_menucontent );
    if (obj.style.zIndex == '6') {
        obj.style.visibility = 'hidden';
    }
}
function overdropdownmenu( id_menucontent )
{
    var obj = document.getElementById( id_menucontent );
    obj.style.visibility = 'visible';
    obj.style.zIndex = '7';
}
function outdropdownmenu( id_menucontent )
{
    var obj = document.getElementById( id_menucontent );
    obj.style.visibility = 'hidden';
    obj.style.zIndex = '6';
}


/***************** autologout alert *****************/

function autologoutalert( logouttime_in_sec )
{
  minut = logouttime_in_sec / 60;
  setTimeout("alert('Došlo k automatickému odhlášení (' + minut + ' minut nečinnosti).\\nPokud máte na stránce něco rozepsáno, prosím, zkopírujte si to.')", aut_odhlaseni * 1000);
}

/************************************ ONLOAD **************************************/
function page_start() { 
  if(  (typeof aut_odhlaseni != 'undefined') && aut_odhlaseni > 0 ){
    autologoutalert( aut_odhlaseni );
  }
} 

window.onload = page_start; 

/************************************ AJAX **************************************/

/** odeslání XMLHttp požadavku
 * @param function obsluha funkce zajišťující obsluhu při změně stavu požadavku, dostane parametr s XMLHttp objektem
 * @param string method GET|POST|...
 * @param string url URL požadavku
 * @param string [content] tělo zprávy
 * @param array [headers] pole předaných hlaviček ve tvaru { 'hlavička': 'obsah' }
 * @return bool true v případě úspěchu, false jinak */
function send_xmlhttprequest(obsluha, method, url, content, headers) {
  var xmlhttp = (window.XMLHttpRequest ? new XMLHttpRequest : (window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : false));
  if (!xmlhttp) {
    return false;
  }
  xmlhttp.open(method, url);
  xmlhttp.onreadystatechange = function() {
    obsluha(xmlhttp);
  };
  if (headers) {
    for (var key in headers) {
      xmlhttp.setRequestHeader(key, headers[key]);
    }
  }
  xmlhttp.send(content);
  return true;
}

/****** antispam ********/
function antispam(rok){
	var datum = new Date();
  var r;
  if (document.all){
    r = datum.getYear();
  }else{
    r = datum.getYear() + 1900;
  }
  if(rok!=r){
    alert('Nebyl zadán aktuální rok.');
    return false;
  }else{
    return true;
	}
}

/****** anketa ********/
function anketa_hlasovat(hlas,rok) {
// odeslání požadavku na aktualizaci dat
  if(antispam(rok)){
	  if (!send_xmlhttprequest(anketa_obsluha, 'GET', 'include/scripts/anketa_hlasuj.php?anketa=' + hlas)) {
	    return false;
	  }
  }
  /*
  document.getElementById('pocet' + hlas).innerHTML++; // zobrazení hlasu u klienta
  // prekresleni grafu
  document.getElementById('anketagraf' + hlas).style.width = '5px';
  // znemožnění opětovného hlasování smazáním odkazů
  for (var key in document.getElementById('anketa').getElementsByTagName('td')) {
    var val = document.getElementById('anketa').getElementsByTagName('td')[key];
    if (val.className == 'odpoved') {
      val.innerHTML = val.firstChild.innerHTML;
    }
  }
  */
  //document.getElementById('stav-anketa').innerHTML = 'Ukládá se';
  return true;
}

function anketa_obsluha(xmlhttp) {
  if (xmlhttp.readyState == 4) {
    // aktualizace odpovědí na základě aktuálního stavu
    /*var odpovedi = xmlhttp.responseXML.getElementsByTagName('odpoved');
    for (var i=0; i < odpovedi.length; i++) {
      document.getElementById(odpovedi[i].getAttribute('id')).innerHTML = odpovedi[i].firstChild.data;
    }*/
    document.getElementById('anketa').innerHTML=xmlhttp.responseText;
    /*document.getElementById('stav-anketa').innerHTML = 'Uloženo';*/
  }
}

