$(document).ready(function(){
  $("a#kupted").fancybox({
    'width'         : 550,
    'height'        : '75%',
    'padding'       : 0,
    'autoScale'     : false,
    'transitionIn'  : 'none',
    'transitionOut' : 'none',
    'type'          : 'iframe',
    'titleShow'     : false
  });

  if (($("a#upoutavka").length) > 0)
  {
    $("a#upoutavka").fancybox({
      'width'          : 450,
      'height'         : 399,
      'padding'        : 0,
      'autoScale'      : false,
      'transitionIn'   : 'none',
      'transitionOut'  : 'none',
      'type'           : 'iframe',
      'scrolling'      : 'no',
      'titleShow'      : false,
      'overlayOpacity' : 0.5,
      'onComplete'     : function(){ window.setTimeout("$.fancybox.close();", 20000); }
    });
    $("a#upoutavka").click();
  }

  $("a.obrazek").fancybox();
  $("img.flag").mousemove(function(e){
    var obj = $(this);
    var pos = obj.offset();
    var left = pos.left + obj.width();
    var top = pos.top + obj.height();
    var nadpis = $(this).attr('alt');
    var popis = "";
    if (nadpis == 'Standardní aukce')
      popis = 'Prodlužuje se v závislosti na aktuální ceně produktu na 30, 20 nebo 10 sekund.';
    else if (nadpis == 'Rychlá aukce')
      popis = 'Prodlužuje se při příhozu na 15 sekund.';
    else if (nadpis == 'Minutová aukce')
      popis = 'Prodlužuje se při příhozu na 1 minutu.';
    else if (nadpis == 'Tříminutová aukce')
      popis = 'Prodlužuje se při příhozu na 3 minutu.';
    else if (nadpis == 'Pětiminutová aukce')
      popis = 'Prodlužuje se při příhozu na 5 minutu.';
    else if (nadpis == 'Desetiminutová aukce')
      popis = 'Prodlužuje se při příhozu na 10 minutu.';
    else if (nadpis == 'Pevná cena')
      popis = 'Cena zboží je předem daná a příhozy se již nenavyšuje.';
    else if (nadpis == 'Haléřová aukce')
      popis = 'Cena zboží se každým příhozem zvyšuje o 0,01 Kč.';
    else if (nadpis == 'Desetihaléřová aukce')
      popis = 'Cena zboží se každým příhozem zvyšuje o 0,10 Kč.';
    else if (nadpis == 'Korunová aukce')
      popis = 'Cena zboží se každým příhozem zvyšuje o 1 Kč.';
    else if (nadpis == 'Bez KUP TEĎ')
      popis = 'Neni možno použít volbu KUP TEĎ.';
    else if (nadpis == 'Umožněno KUP TEĎ')
      popis = 'Je možno použít volbu KUP TEĎ.';
    else if (nadpis == 'Klik aukce')
      popis = 'Je možno přihazovat pouze ručními příhozy, přihazovací automat je zakázán.';
    else if (nadpis == 'Poměrová aukce 2:1')
      popis = 'Při ručním příhozu se z uživatelského konta odečte 1 kredit, při příhozu automatem se odečtou 2 kredity.';
    else if (nadpis == 'Aukce pro nováčky')
      popis = 'Mohou přihazovat pouze uživatelé, kteří dosud žádnou aukci nevyhráli.';
    else if (nadpis == 'Druhý neprohrává')
      popis = 'Druhý nejvýše přihazující dostane po ukončení aukce 50% utraceného kreditu zpět.';
    else if (nadpis == 'Anonymní aukce')
      popis = 'U posledních pěti příhozů se nezobrazuje uživatelské jméno přihazujícího.';
    else if (nadpis == 'Omezený počet příhozů')
      popis = 'Každý uživatel může v aukci provést maximálně 100 příhozů.';
    else if (nadpis == 'Zamykací aukce')
      popis = 'Po 1000 příhozech se již do aukce nemůže připojit uživatel, který neprovedl do doby uzamčení alespoň 5 příhozů.';
    else
      return false;
    $("#flagpopup span").text(nadpis);
    $("#flagpopup p").text(popis);
    $("#flagpopup img").attr('src', $(this).attr('src').replace('-male-', '-velke-'));
    $("#flagpopup").css('display', 'block');
    $("#flagpopup").css('left', left);
    $("#flagpopup").css('top', top);
  });
  $("img.flag").mouseout(function(e){
    $("#flagpopup").css('display', 'none');
  });
});

var url = '/data.txt?';
var index = 0;
var aukci = 0;
var bliku = 0;
var errtime = 0;
var xmlhttp;
var xmlhttp2;

for (index = 1; index <= 200; index++)
{
  if (document.getElementById('id' + index) != null)
    url += 'id' + index + '=' + document.getElementById('id' + index).value + '&';
  aukci++;
}

function zobrazCas()
{
  document.getElementById('aktualnicas').innerHTML = ((hodina < 10) ? '0' : '') + hodina + ':' + ((minuta < 10) ? '0' : '') + minuta + ':' + ((sekunda < 10) ? '0' : '') + sekunda;
}

function cancelBlink(id, castka)
{
  var el = document.getElementById(id);
  if (el.innerHTML == castka)
    el.style.backgroundImage = "none";
}

function getFile(pURL)
{
  if (window.XMLHttpRequest)
  {
    canRequest = false;
    xmlhttp = new XMLHttpRequest();
    xmlhttp.onreadystatechange = postFileReady;
    xmlhttp.open("GET", pURL, true);
    xmlhttp.send(null);
  }
  else if (window.ActiveXObject)
  {
    xmlhttp = new ActiveXObject('Microsoft.XMLHTTP'); 
    if (xmlhttp)
    {
      canRequest = false;
      xmlhttp.onreadystatechange = postFileReady;
      xmlhttp.open('GET', pURL, true);
      xmlhttp.send();
    }
  }
}

function postFileReady()
{
  if (xmlhttp.readyState == 4)
    if (xmlhttp.status == 200)
    {
      data = xmlhttp.responseText;
      document.getElementById('aktualnicas').style.color = 'black';
      parselines(data);
      zobrazCas();
      canRequest = true;
    }
}

function getLine(strin, line)
{
  var i;
  var strout = '';
  for (i = 0; i < strin.length; i++)
  {
    if (strin.charAt(i) == "\n")
      line--;
    else if (line == 1)
      strout += strin.charAt(i);
  }
  return strout;
}

function parselines(strin)
{
  var i;
  var line = 0;
  var tmpline = 0;
  var strout = '';
  var novacena = '';
  var cenaobj;
  for (i = 0; i < strin.length; i++)
  {
    if (strin.charAt(i) == "\n")
    {
      line++;
      if (line == 1)
        hodina = parseInt(strout);
      else if (line == 2)
        minuta = parseInt(strout);
      else if (line == 3)
        sekunda = parseInt(strout);
      else if (line == 4)
      {
        if (document.getElementById('kredity'))
          document.getElementById('kredity').innerHTML = strout;
      }
      else if (line == 5)
        pauza = (strout == 1);
      else
      {
        tmpline = line + 5;
        if (tmpline % 10 == 1)
        {
          tmpline = (tmpline - 1) / 10;
          if (tmpline > 0 && tmpline <= aukci)
          {
            document.getElementById('konec' + tmpline).innerHTML = strout;
            if (strout == '--:--:--')
              if (document.getElementById('inactive' + tmpline))
                if (document.getElementById('inactive' + tmpline).value != '')
                {
                  document.getElementById('active' + tmpline).src = document.getElementById('inactive' + tmpline).value;
                  document.getElementById('inactive' + tmpline).value = '';
                }
          }
        }
        else if (tmpline % 10 == 2)
        {
          tmpline = (tmpline - 2) / 10;
          if (tmpline > 0 && tmpline <= aukci)
          {
            cenaobj = document.getElementById('cena' + tmpline);
            novacena = strout + ' Kč';
            if (cenaobj.innerHTML != novacena)
            {
              bliku++;
              cenaobj.style.background = "none";
              cenaobj.style.background = "url('http://files.inau.cz/images/blik-" + bliku + ".gif')";
              setTimeout("cancelBlink('cena" + tmpline + "', '" + novacena + "');", 1000);
            }
            cenaobj.innerHTML = novacena;
            if (document.getElementById('cena' + tmpline + 'a') != null)
              document.getElementById('cena' + tmpline + 'a').innerHTML = strout + ' Kč';
          }
        }
        else if (tmpline % 10 == 3)
        {
          tmpline = (tmpline - 3) / 10;
          if (tmpline > 0 && tmpline <= aukci)
            document.getElementById('vyherce' + tmpline).innerHTML = strout;
        }
        else if (tmpline % 10 == 4)
        {
          tmpline = (tmpline - 4) / 10;
          if (document.getElementById('cena' + tmpline + 'a') != null)
            document.getElementById('cena' + tmpline + 'b').innerHTML = strout + ' Kč';
        }
        else if (tmpline == 15 && document.getElementById('kredity1'))
          document.getElementById('kredity1').innerHTML = strout;
        else if (tmpline == 16 && document.getElementById('kredity2'))
          document.getElementById('kredity2').innerHTML = strout;
        else if (tmpline == 17 && document.getElementById('utrata'))
          document.getElementById('utrata').innerHTML = strout;
        else if (tmpline == 18 && typeof(prihoz) != 'undefined')
          prihoz = parseInt(strout);
        else if (tmpline == 19)
        {
          if (document.getElementById('automat-active') && document.getElementById('automat-inactive'))
          {
            document.getElementById('automat-active').style.display = parseInt(strout) == 1 ? 'block' : 'none';
            document.getElementById('automat-inactive').style.display = parseInt(strout) == 1 ? 'none' : 'block';
          }
        }
        else if (tmpline == 20)
        {
          if (document.getElementById('skutecnykonec'))
            if (parseInt(strout) == 1)
              document.getElementById('skutecnykonec').style.display = 'none';
        }
      }
      strout = '';
    }
    else
      strout += strin.charAt(i);
  }
}

function prihazovaciautomat(id)
{
  if (document.getElementById('historieprihozu') && id > 0)
  {
    if (window.XMLHttpRequest)
    {
      xmlhttp2 = new XMLHttpRequest();
      xmlhttp2.onreadystatechange = prihazovaciautomat_callback;
      xmlhttp2.open("GET", '/automat' + id + '.txt', true);
      xmlhttp2.send(null);
    }
    else if (window.ActiveXObject)
    {
      xmlhttp2 = new ActiveXObject('Microsoft.XMLHTTP'); 
      if (xmlhttp2)
      {
        xmlhttp2.onreadystatechange = prihazovaciautomat_callback;
        xmlhttp2.open('GET', '/automat' + id + '.txt', true);
        xmlhttp2.send();
      }
    }
  }
}

function prihazovaciautomat_callback()
{
  if (xmlhttp2.readyState == 4)
    if (xmlhttp2.status == 200)
    {
      if (xmlhttp2.responseText == '-')
      {
        document.getElementById('prihazovaciautomat').innerHTML = '<p>Přihazovací automat byl vyčerpán.</p>';
        document.location.href = '?';
      }
      else
        document.getElementById('prihazovaciautomat').innerHTML = xmlhttp2.responseText;
    }
}

function nactiData()
{
  if (canRequest)
  {
    getFile(url);
    prihazovaciautomat(automatid);
  }
  else
  {
    sekunda++;
    if (sekunda == 60)
    {
      sekunda = 0;
      minuta++;
    }
    if (minuta == 60)
    {
      minuta = 0;
      hodina++;
    }
    if (hodina == 24)
      hodina = 0;
    document.getElementById('aktualnicas').style.color = 'red';
    errtime++;
    if (errtime > 3)
    {
      if (xmlhttp)
        if (xmlhttp.readyState > 0)
          xmlhttp.abort();
      if (xmlhttp2)
        if (xmlhttp2.readyState > 0)
          xmlhttp2.abort();
      errtime = 0;
      canRequest = true;
    }
  }
  zobrazCas();
}

function placebid(id)
{
  if (logged == false)
    alert('Před přihozením se musíte přihlásit. Použijte prosím formulář v horní části stránky.');
  else
    prihodframe.location.href = '/prihodit' + id + '.xhtml';
}

window.setInterval("nactiData()", 1000);

