// JavaScript Document
var errCount = 0; var js_status; var last_fetch = 0; var iBox = 0; var ima = new Array(); var im = 0; var sm=0;
var blinkTime;
var oldTitle = $(document).attr('title');
var newTitle;
function fetchInt ( use, url ){
  js_status = 0;
  if (js_status == 403) { return; } // pri chybe js_status == 403
  
  startFetch('fetchInt',url, amIReady);
}

function startFetch(id, url, callback) {
  if ($(id) && $(id).readyState && $(id).readyState != 'loaded') { return }
  var head = document.getElementsByTagName("head")[0];
  if ($(id)) { $("head #"+id).remove(); }
  oScript = document.createElement("script");
  head.appendChild(oScript);
  oScript.onload = callback;
  if(!window.opera) {oScript.onreadystatechange = callback;}
  oScript.id  = id;
  oScript.type = 'text/javascript';
  oScript.src = url;
}

function amIReady() {
  if (this.readyState == "loading") { window.status="Načítám data..."; }
  if (this.readyState && this.readyState != 'loaded') { return; }
  this.onreadystatechange = null; checkStatus();
}

function checkStatus() {
    if (js_status == 200) {
      if ( errCount>1 ) { showMsg("Juchůůůů, už nám to zase funguje.", 4); }
      errCount = 0; return;
    }else if (js_status == 402) {
      msg = "<b>Chyba autorizace</b><br>Byl jste zřejmě odhlášen";
    }else if (js_status == 403) {
      msg = "<b>Voláte nepovolenou funkci</b><br>";
    }else { errCount++;
      if (errCount > 1) {
        showMsg("Došlo k problémům v komunikaci se serverem. Aktuální počet chyb: "+errCount, 5);
      }
    }
}


function showMsg( content, timeSec, className) {
    if (!timeSec) { timeSec = 12; } iBox++; closeLink  = '';
    if (!className) { className = '';}
    if ( timeSec > 3 ) { closeLink = '<a href="#" onclick="removeme(\'#infoMsg'+iBox+'\'); return false;" title="zavřít" class="close">x</a><div class="both"></div>'; }
    
    var newDiv = $('<div id="infoMsg'+iBox+'" class="msgBox'+className+'">'+closeLink + content+'</div>').mouseout( function(){ setOpacity(this, 50); }).mouseover(function(){ setOpacity(this, 100); });
    $("#infoBox").append( newDiv );

    if (timeSec>0) { setTimeout( "removeme('#infoMsg"+iBox+"')" , timeSec*1000 );}
    im++;
}

function setOpacity(obj, opacity) {
  opacity = (opacity == 100)? 99.999 : opacity;
  obj.style.filter = "alpha(opacity:"+opacity+")";
  obj.style.KHTMLOpacity = opacity/100;obj.style.MozOpacity = opacity/100;obj.style.opacity = opacity/100;
}

function removeme ( i ){ $(i).remove(); }
function retitle ( title, time ){ $(document).attr("title", title); 

if(time){  
blink ( title, time ); }
}

function blink ( title, time ){
 
  if(newTitle != title && title != oldTitle){ newTitle = title; }
  if( title == newTitle ){ $(document).attr("title", title); }
  
  ( title == newTitle ) ? title = oldTitle : title = newTitle;  
  blinkTime = setTimeout( "retitle('"+title+"','"+time+"')", time*1000 ); 

}

