// JavaScript Document

window.onload = CheckResolution;

function CheckResolution()
{
  if((location.href == "http://www.sportis.cz") || (location.href == "http://www.sportis.cz/")) // pokud jsme na úvodní straně
  {
    if(screen.width < 1024)
    {
      alert("Minimální rozlišení pro tuto stránku je 1024 x 768 px, doporučené 1280*800+ px, Vaše rozlišení je " + screen.width + " x " + screen.height + " px což může způsobit špatné zobrazení stránky");
    }
  }
}

// =========================================================================================================================================

function otevri(kam)
{
  var msg = window.open(kam, 'Zobrazit', 'resizable=no,top=100,left=100,menubar=0,width=600,height=650,scrollbars=1,status=0')
}

// =========================================================================================================================================

function otevri_custom(kam, sirka, vyska)
{
  var msg = window.open(kam, 'Zobrazit', 'resizable=no,top=100,left=100,menubar=0,width=' + sirka + ',height=' + vyska + ',scrollbars=1,status=0')
}

// =========================================================================================================================================

function otevri_csv(kam)
{
  var msg = window.open(kam, 'Výsledky', 'resizable=yes,top=0,left=10,menubar=0,width=' + ((screen.availWidth)-30) + ',height=' + ((screen.availHeight)-150) + ',scrollbars=yes,status=yes');  
}

// =========================================================================================================================================

function otevri_formular(kam)
{
  var msg = window.open(kam, 'Registrace', 'resizable=yes,top=0,left=10,menubar=0,width=720,height=' + ((screen.availHeight)-150) + ',scrollbars=yes,status=yes');  
}

// =========================================================================================================================================

function otevri_formular_2(kam)
{
  if(screen.availWidth < 1000) { 
    width = screen.availWidth;
  } else {
    width = 1000;
  }

  var msg = window.open(kam, 'Registrace', 'resizable=yes,top=0,left=10,menubar=0,width=' + width + ',height=' + ((screen.availHeight)-150) + ',scrollbars=yes,status=yes');  
}

// =========================================================================================================================================

function otevri_bodovani(kam)
{
  var msg = window.open(kam, 'Bodování', 'resizable=yes,top=0,left=10,menubar=0,width=' + ((screen.availWidth)-30) + ',height=' + ((screen.availHeight)-150) + ',scrollbars=yes,status=yes');  
}

// =========================================================================================================================================

function otevri_detail(kam)
{
  var msg = window.open(kam, 'Informace', 'resizable=yes,top=0,left=20,menubar=0,scrollbars=yes,width=' + ((screen.availWidth)-30) + ',height=' + ((screen.availHeight)-150) + 'status=yes')
}

// =========================================================================================================================================

function otevri_info(kam)
{
  var msg = window.open(kam, 'Informace', 'resizable=yes,top=0,left=20,menubar=0,scrollbars=yes,width=280,height=' + ((screen.availHeight)-250) + 'status=yes')
}

// =========================================================================================================================================

function otevri_foto(kam)
{
  var msg = window.open(kam, 'Fotogalerie', 'resizable=yes,top=0,left=20,menubar=0,scrollbars=yes,width=280,height=300,status=yes')
}

// =========================================================================================================================================

function zavri_okno()
{
 var msg = window.close()
}

// =========================================================================================================================================

function read_pdf(kam)
{
  var msg = window.open(kam, 'PDF', 'resizable=yes,top=50,left=10,menubar=0,width=' + ((screen.availWidth)-30) + ',height=' + ((screen.availHeight)-150) + ',scrollbars=1,status=0,toolbar=0,menubar=0')
}

// =========================================================================================================================================

function vyhledavani()
{
  var form, bool;
  form = document.getElementById('vyhledavani');

  bool = false;
    
  if(form.prijmeni.value != "") // vyplnili jsme příjmení
  {
    if(form.rocnik.value != "") // vyplnili jsme ročník
    {
      var re = /(\d{2}|\d{4})/;
      if(form.rocnik.value.search(re) != 0) // je ročník ve správném formátu ?
      {
        alert('Špatně jste vyplnili ročník (buď 2 nebo 4 místné číslo)');
        form.rocnik.focus();
        return false; 
      }
        else
      {
        bool = true;
      }
    }
      else
    {
      bool = true;
    }
    if(form.prijmeni.value.length < 3)
    {
      alert('Příjmení musí mít min. 3 znaky');
      form.prijmeni.focus();
      return false;     
    }
  }
    else // nevyplnili jsme příjmení
  {
    if(form.rocnik.value != "") // vyplnili jsme něco do ročníku
    {
      alert('Je třeba vyplnit min. 3 znaky příjmení');
      form.prijmeni.focus();
      return false;      
    }
  }

  if(bool) // máme hledat ?
  {
    otevri_csv("search.php?rok=" + form.rok.value + "&typ=" + form.typ.options[form.typ.options.selectedIndex].value + "&rocnik=" + form.rocnik.value + "&prijmeni=" + encodeURI(form.prijmeni.value));    
    return false;
  }
    else
  {
    return true;
  }
  
}

// =========================================================================================================================================

function obr()
{
  if((document.getElementById('obr').width) > (document.getElementById('obr').height))
  {
    var width = document.getElementById('obr').width + 10;
    var height = document.getElementById('obr').height + 50;
    window.resizeTo(width, height); 
  } else {
    var width = document.getElementById('obr').width + 10;
    var height = document.getElementById('obr').height + 50;
    window.resizeTo(width, height); 
  }
}

// =========================================================================================================================================

  function check_napiste()
  {
    var form;
    form = document.getElementById('send');
    
    if(form.email.value == "")
    {
      alert('zapomněli jste vyplnit pole: e-mail');
      form.email.focus();
      return false;
    }
    
    re = /^[^.]+(\.[^.]+)*@([^.]+[.])+[a-z]{2,3}$/;
    if(form.email.value.search(re) != 0)
    {
      alert('zapomněli jste zadali e-mailovou adresu');
      form.email.focus();
      return false;
    }
    
    if(form.vzkaz.value == "")
    {
      alert('zapomněli jste vyplnit pole: vzkaz');
      form.vzkaz.focus();
      return false;
    }
    
    if(form.antispam.value == "")
    {
      alert('zapomněli jste vyplnit pole: antispam');
      form.antispam.focus();
      return false;
    }    
  }

// =========================================================================================================================================

  function generujPohlavi(id)
  {
    var form;
    form = document.getElementById('formular');
    
    var con = true;
    
    if(form.pohlavi == null) {      
      con = false;
    }
    
    if(form.rok == null) {      
      con = false;
    }
    
    re = /^[0-9]{4}$/;
    if(form.rok.value.search(re) != 0) {
      con = false;
    }
    
    if(con) { // můžeme pokračovat
      
      generujKategorii(id);
    }  
  }

// =========================================================================================================================================

  function generujKategorii(id)
  {
    var form;
    form = document.getElementById('formular');
    
    if(form.pohlavi == null) {      

      alert('Formulář neobsahuje pohlaví, nelze vygenerovat kategorii.');
      return false;
    }
    
    if(form.rok == null) {      

      alert('Formulář neobsahuje ročník, nelze vygenerovat kategorii.');
      return false;
    }
    
    re = /^[0-9]{4}$/;
    if(form.rok.value.search(re) != 0) {
    
      alert('Zapomněli jste vyplnit ročník');
      form.rok.focus();
      return false;
    }
    
    var rok = form.rok.value;
    
    // zjistíme zda-li jsme zatrhli nějaký sloupec
    for(i = 0; i < form.pohlavi.length; i++) {
      
      if(form.pohlavi.item(i).checked) {
       
       var pohlavi = form.pohlavi.item(i).value;
       break;
      }
    }
    
    if(rok != "" && pohlavi != "") { // pokud jsme něco vyplnili

      var http_request = false;
            
      if(window.XMLHttpRequest) { 
        http_request = new XMLHttpRequest();
      } else if(window.ActiveXObject) { 
        try {
          http_request = new ActiveXObject("Msxml2.XMLHTTP");
        } catch(eror) {
          http_request = new ActiveXObject("Microsoft.XMLHTTP");
        }
      }   
        
      http_request.onreadystatechange = function() { processGenerujKategorii(http_request); };
      http_request.open('POST', 'generuj-kategorii.php', true);
      http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
      http_request.send("pohlavi=" + pohlavi + "&rocnik=" + rok + "&id=" + id);
    
    }
    
    return false;   
  }

// =========================================================================================================================================

  function processGenerujKategorii(http_request)
  {
    if(http_request.readyState == 4) {
    
      if(http_request.status == 200) {
      
        //alert(http_request.responseText);
        
        var xml = http_request.responseXML; // xml výstpu

        if(xml.getElementsByTagName("kategorie")[0] != null) { // pokud jsme něco našli  
          
          var items = xml.getElementsByTagName("kategorie")[0].getElementsByTagName("item"); // zpracování itemů
          
          var string = "";
          
          for(var m = 0; m < items.length; m++) {
            
            var elementy = items[m].getElementsByTagName("element");
            
            string += "<br /><input type='radio' name='kategorie'";
            
            if(m == 0) {
              string += " id='return_kategorie' checked='checked'";
            }
            
            string += " value='" + elementy[0].firstChild.data + "' /> " + elementy[1].firstChild.data;
          }
          
          string = string.substr(6);
          
          document.getElementById("kategorie").innerHTML = string; 
        }
          
      } else {
        alert("Chyba pri nacitani stanky " + http_request.status + " : " + http_request.statusText);
      }
    }
  }

  // ================================================================================================================    
  // ================================================================================================================ 


  function generujLicenci(columns, table, id_csv, id)
  {
    var form;
    form = document.getElementById('formular');

    if(form.cli.value != "") {      

      var cli = form.cli.value;

      var http_request = false;
            
      if(window.XMLHttpRequest) { 
        http_request = new XMLHttpRequest();
      } else if(window.ActiveXObject) { 
        try {
          http_request = new ActiveXObject("Msxml2.XMLHTTP");
        } catch(eror) {
          http_request = new ActiveXObject("Microsoft.XMLHTTP");
        }
      }   
        
      http_request.onreadystatechange = function() { processGenerujLicenci(http_request, columns, id_csv); };
      http_request.open('POST', 'generuj-licenci.php', true);
      http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
      http_request.send("columns=" + columns + "&tabulka=" + table + "&licence=" + cli + "&id=" + id + "&id_csv=" + id_csv);

    } else { // povolíme tlačítko, může být zakázáno z minula
      
      document.getElementById('odeslat').disabled = false;
    }
    
    return false;   
  }

// =========================================================================================================================================

  function processGenerujLicenci(http_request, columns, id_csv)
  {
    if(http_request.readyState == 4) {
    
      if(http_request.status == 200) {
        
        var text = http_request.responseText; // Text výstpu

        reError = /^\[error(1|2)\](.*)/;

        // jedná se o error ? (licence neexistuje nebo již je v db)
        if(text.search(reError) == 0) {
          
          error = text.substr(0,8);
          text = text.substr(8);
          
          if(error == '[error1]') { // zakážeme tlačítko
            
            document.getElementById('odeslat').disabled = true;
          }
          
          alert(text);
          
        } else { // licence nalezena
          
          // povolíme tlačítko
          document.getElementById('odeslat').disabled = false;
          
          var xml = http_request.responseXML; // xml výstpu
      
          //if(xml.getElementsByTagName("licence").length != 0) { // pokud jsme našli informace o licenci
          
          //alert(http_request.responseText);
          
          var items = columns.split(":"); 
          
          for(i = 0; i < items.length; i++) { // prolezeme prvky formuláře a pokusíme se zjistit zda-li jsou příslušené záznamy ve vráceném XML
            
            pom = items[i].split("#");
            
            if(xml.getElementsByTagName(pom[0]).length != 0) { // k danému formuláři existuje shoda v XML
              
              if(pom[1] == "1" || pom[1] == "2") { // pokud se jedná o text nebo textareau

                document.getElementById(pom[0]).value = xml.getElementsByTagName(pom[0])[0].firstChild.data;

              } else if(pom[1] == "3") { // jedná se o checkbox
              
                if(document.getElementById(pom[0]).value != "") { // pole je zatrhnuto

                  document.getElementById(pom[0]).checked = true;

                } else { // pole není zatrhnuto

                  document.getElementById(pom[0]).checked = false;
                }              
              
              } else if(pom[1] == "4") { // jedná se o radio
                
                document.getElementById((pom[0] + "_" + xml.getElementsByTagName(pom[0])[0].firstChild.data)).checked = true;
                
              } else if(pom[1] == "5") { // jedná se o select

                for(j = 0; j < document.getElementById(pom[0]).options.length; j++) { // prolezeme select a pokusíme se najít shodu
                  
                  if(document.getElementById(pom[0])[j].value == xml.getElementsByTagName(pom[0])[0].firstChild.data) { // jedná se o prvek, který chceme zatrhnout

                    document.getElementById(pom[0])[j].selected = true;
                  }
                }              
              }
            }
          }
          
          if(id_csv != 0) { // pokud generujeme automaticky kategorii, tak ji vygenerujeme

            generujKategorii(id_csv);
          } 
        }
          
      } else {
        alert("Chyba pri nacitani stanky " + http_request.status + " : " + http_request.statusText);
      }
    }
  }

  // ================================================================================================================    
  // ================================================================================================================ 

  function checkRegistrace(ids)
  {
    var item = new Array();
    
    item = ids.split(":");
    
    var form = document.getElementById("formular");
    
    for(var i = 0; i < item.length; i++) {
      
      if(item[i] != "cli") { // pokud se nejedná o licence, ty kontrolujeme zvlášť při generování v ajaxu
      
        if((document.getElementById(item[i] + "_input_type").value == "text") || (document.getElementById(item[i] + "_input_type").value == "textarea")) {
        
          if(document.getElementById(item[i] + "_require").value == "1") { // vyžadována vstupní hodnota
            
            if(document.getElementById("email") != null) { // zkontrolujeme e-mail ať má jakýkoliv příznak, pokud existuje samozřejmě
            
              re = /^[^.]+(\.[^.]+)*@([^.]+[.])+[a-z]{2,3}$/;
                      
              if(document.getElementById("email").value.search(re) != 0) {
  
                alert("Špatně jste vyplnili pole, kde bliká kurzor.\nSprávný formát: jan@novak.cz");
                document.getElementById("email").focus();
                return false;
              } 
            } else if(document.getElementById(item[i]).value == "") {
  
              alert("Zapomněli jste vyplnit pole, kde bliká kurzor");
              document.getElementById(item[i]).focus();
              return false;
            }
          }
        
          if(document.getElementById(item[i] + "_vstup").value != "0") { // chceme kontrolovat vstup
            
            if(document.getElementById(item[i] + "_vstup").value == "1") { // kontrola datumu
          
              re = /^[0-9]{2}\.[0-9]{2}\.[0-9]{4}$/;
                      
              if(document.getElementById(item[i]).value.search(re) != 0) {
 
                alert("Špatně jste vyplnili pole, kde bliká kurzor.\nSprávný formát: DD.MM.RRRR");
                document.getElementById(item[i]).focus();
                return false;
              }
                        
            } else if(document.getElementById(item[i] + "_vstup").value == "2") { // kontrola datum + čas
            
              re = /^[0-9]{2}\.[0-9]{2}\.[0-9]{4} [0-9]{2}\:[0-9]{2}\:[0-9]{2}$/;
                      
              if(document.getElementById(item[i]).value.search(re) != 0) {
 
                alert("Špatně jste vyplnili pole, kde bliká kurzor.\nSprávný formát: DD.MM.RRRR HH:MM:SS");
                document.getElementById(item[i]).focus();
                return false;
              } 
                         
            } else if(document.getElementById(item[i] + "_vstup").value == "3") { // čas
            
              re = /^[0-9]{2}\:[0-9]{2}\:[0-9]{2}$/;
                      
              if(document.getElementById(item[i]).value.search(re) != 0) {
  
                alert("Špatně jste vyplnili pole, kde bliká kurzor.\nSprávný formát: HH:MM:SS");
                document.getElementById(item[i]).focus();
                return false;
              } 
                       
            } else if(document.getElementById(item[i] + "_vstup").value == "4") { // pouze čísla
            
              re = /^[0-9]*$/;
                      
              if(document.getElementById(item[i]).value.search(re) != 0) {
  
                alert("Špatně jste vyplnili pole, kde bliká kurzor.\nSprávný formát jsou pouze čísla");
                document.getElementById(item[i]).focus();
                return false;
              } 
                       
            } else if(document.getElementById(item[i] + "_vstup").value == "5") { // ročník
            
              re = /^[0-9]*$/;
                      
              if(document.getElementById(item[i]).value.search(re) != 0) {
 
                alert("Špatně jste vyplnili pole, kde bliká kurzor.\nSprávný formát: RRRR");
                document.getElementById(item[i]).focus();
                return false;
              } 
                       
            } else if(document.getElementById(item[i] + "_vstup").value == "6") { // e-mail
            
              re = /^[^.]+(\.[^.]+)*@([^.]+[.])+[a-z]{2,3}$/;
                      
              if(document.getElementById(item[i]).value.search(re) != 0) {
  
                alert("Špatně jste vyplnili pole, kde bliká kurzor.\nSprávný formát: jan@novak.cz");
                document.getElementById(item[i]).focus();
                return false;
              } 
                       
            }        
          }
        }
      }
    }
    
    if(document.getElementById("kategorie_bool").value == "1") {
     
      if(document.getElementById("return_kategorie") == null) {
     
        alert("Zapomněli jste stisknout tlačítko \"Vygeneruj kategorii\", prosím stiskněte ho");
        return false;    
      }
    }
    
    if(document.getElementById("antispam").value == "") {
     
      alert("Zapomněli jste vyplnit antispam kód.");
      document.getElementById("antispam").focus();
      return false;    
    }
    
    return true;
  }

// =========================================================================================================================================

