/**
 *  JS funkce
 */

  function change_image(element,url,filename,subdir)
  {
    element.src=url+subdir+filename;  
  }

  function change_class(element,newclass)
  {
    element.className= newclass;
  }


  function confirm_hlas(id)
  {
    if(id != 0)
    {
      return true;
    }
    else
    {
      //alert("wtf?");
      return(confirm("Pro hlasování v anketě musíte být registrovaný(á)\nChcete se registrovat?"));
    }
  }
  
  function new_confirm_hlas(id)
  {
    return true;
  }
  
  
  function display_more(selectik)
  {
    var index = selectik.selectedIndex;
    var value = selectik.options[index].value;
    
    //alert(value);
    if(value > 0)
    {
      document.getElementById("dite_radek_head").style.display="block";
      document.getElementById("dite_radek_head").style.visibility="visible";
      
    }
    else
    {
      document.getElementById("dite_radek_head").style.display="none";
      document.getElementById("dite_radek_head").style.visibility="hidden";
    }
    
        for(var i=0;i<=parseInt(value);i++)
        {
          //alert("dite_radek_"+i);
          if(document.getElementById("dite_radek_"+i))
          {
            document.getElementById("dite_radek_"+i).style.display="block";
            document.getElementById("dite_radek_"+i).style.visibility="visible";
          } 
        }
        
        for(var j=(parseInt(value)+1); j<7 ;j++)
        {
    //      alert("dite_radek_"+j);
          if(document.getElementById("dite_radek_"+j))
          {
            document.getElementById("dite_radek_"+j).style.display="none";
            document.getElementById("dite_radek_"+j).style.visibility="hidden";
          } 
        }
    }
  
  /*
 *  @description Overi jestli je email validni
 *  @param string m
 *  @return bool
 */
  function check_validEmail(m){
  var mail = "^[_a-zA-Z0-9\.\-]+@[_a-zA-Z0-9\.\-]+[\.]{1}[a-zA-Z]{2,4}$";
  return (m.match(mail)) ? true : false;
}


  
  function validate_reg(f)
  {
    if(f.jmeno.value =="")
    {
      alert("Nebylo vyplněno jméno");
      f.jmeno.focus();
      return false;
    }
    if(f.prijmeni.value =="")
    {
      alert("Nebylo vyplněno příjmení");
      f.prijmeni.focus();
      return false;
    }
    if(f.email.value =="" || !check_validEmail(f.email.value))
    {
      alert("Nebyl vyplněn email, nebo je v nesprávném formátu");
      f.email.focus();
      return false;
    }
//     if(f.ulice.value =="")
//     {
//       alert("Nebyla vyplněna ulice");
//       f.ulice.focus();
//       return false;
//     }
//     if(f.obec.value =="")
//     {
//       alert("Nebyla vyplněno obec");
//       f.obec.focus();
//       return false;
//     }
//     if(f.kraj.selectedIndex =="")
//     {
//       alert("Nebyl vyplněn kraj");
//       f.kraj.focus();
//       return false;
//     }
//     if(f.psc.value =="")
//     {
//       alert("Nebylo vyplněno PSČ");
//       f.psc.focus();
//       return false;
//     }
    if(f.login.value =="")
    {
      alert("Nebylo vyplněno přihlašovací jméno");
      f.login.focus();
      return false;
    }
    if(f.pass1.value =="")
    {
      alert("Nebylo vyplněno heslo");
      f.pass1.focus();
      return false;
    }
    if(f.pass2.value != f.pass1.value)
    {
      alert("Vyplněná hesla se neshodují");
      f.pass2.focus();
      return false;
    }
    if(f.souhlas.checked == false)
    {
      alert("Musíte souhlasit s podmínkama.");
      return false;
    }
    if(f.imgid_user.value =="")
    {
      alert("Nebylo opsáno číslo z obrázku");
      f.imgid_user.focus();
      return false;
    }
    
    return true;
  }
  
  function validate_rereg(f)
  {
    if(f.jmeno.value =="")
    {
      alert("Nebylo vyplněno jméno");
      f.jmeno.focus();
      return false;
    }
    if(f.prijmeni.value =="")
    {
      alert("Nebylo vyplněno příjmení");
      f.prijmeni.focus();
      return false;
    }
    if(f.email.value =="" || !check_validEmail(f.email.value))
    {
      alert("Nebyl vyplněn email, nebo je v nesprávném formátu");
      f.email.focus();
      return false;
    }
    if(f.ulice.value =="")
    {
      alert("Nebyla vyplněna ulice");
      f.ulice.focus();
      return false;
    }
    if(f.obec.value =="")
    {
      alert("Nebyla vyplněno obec");
      f.obec.focus();
      return false;
    }
    if(f.kraj.selectedIndex =="")
    {
      alert("Nebyl vyplněn kraj");
      f.kraj.focus();
      return false;
    }
    if(f.psc.value =="")
    {
      alert("Nebylo vyplněno PSČ");
      f.psc.focus();
      return false;
    }
    if(f.login.value =="")
    {
      alert("Nebylo vyplněno přihlašovací jméno");
      f.login.focus();
      return false;
    }
    if(f.pass1.value =="")
    {
      alert("Nebylo vyplněno heslo");
      f.pass1.focus();
      return false;
    }
    if(f.pass2.value != f.pass1.value)
    {
      alert("Vyplněná hesla se neshodují");
      f.pass2.focus();
      return false;
    }
    
    return true;
  }
  
  
  function validate_forget(f)
  {
    if(f.email.value =="" || !check_validEmail(f.email.value))
    {
      alert("Nebyl vyplněn email, nebo je v nesprávném formátu");
      f.email.focus();
      return false;
    }
    if(f.imgid_user.value =="")
    {
      alert("Nebylo opsáno číslo z obrázku");
      f.imgid_user.focus();
      return false;
    }
    
    return true;
  }

  
  function validate_disk(f)
  {
    if(f.title.value =="")
    {
      alert("Nebyl vyplněn nadpis");
      f.title.focus();
      return false;
    }
    if(f.imgid_user.value =="")
    {
      alert("Nebylo opsáno číslo z obrázku");
      f.imgid_user.focus();
      return false;
    }
    return true;
  }
  
  function disable_animals(type)
  {
    switch(type)
    {
      case 'C' :
        document.getElementById('id_animal_m').disabled=true;
        document.getElementById('id_animal_f').disabled=true;
        document.getElementById('id_animal_b').disabled=true;
        document.getElementById('id_animal_c').disabled=false;
        document.getElementById('id_animal_d').disabled=false;
        document.getElementById('id_animal_v').disabled=false;
       
        document.getElementById('id_animal_m').checked=false;
        document.getElementById('id_animal_f').checked=false;
        document.getElementById('id_animal_b').checked=false;
        
        break;
      default : 
        document.getElementById('id_animal_m').disabled=false;
        document.getElementById('id_animal_f').disabled=false;
        document.getElementById('id_animal_b').disabled=false;
        document.getElementById('id_animal_c').disabled=true;
        document.getElementById('id_animal_d').disabled=true;
        document.getElementById('id_animal_v').disabled=true;
        
        document.getElementById('id_animal_c').checked=false;
        document.getElementById('id_animal_d').checked=false;
        document.getElementById('id_animal_v').checked=false;
        
      break;
    }
  }
  
  function disable_doktor(type)
  {
    switch(type)
    {
      case 'M' :
        document.getElementById('id_doc_name_f').disabled=true;
        document.getElementById('id_doc_name_m').disabled=false;
        document.getElementById('id_doc_name_f').value="";
        
        break;
      default : 
        document.getElementById('id_doc_name_f').disabled=false;
        document.getElementById('id_doc_name_m').disabled=true;
        document.getElementById('id_doc_name_m').value="";
      break;
    }
  }
  
  function validate_pohadka(f)
  {
      if(document.getElementById('id_gender_m').checked == false && document.getElementById('id_gender_f').checked == false)
      {
         alert("Nebylo zvoleno pohlaví pacienta");
         document.getElementById('id_gender_m').focus();
         return false;
      }
      if(f.jmeno.value == "")
      {
         alert("Nebylo vyplněno jméno pacienta");
         f.jmeno.focus();
         return false;
      }
      if(f.jidlo.value == "")
      {
         alert("Nebylo vyplněno oblíbené jídlo pacienta");
         f.jidlo.focus();
         return false;
      }
      if(f.hracka.value == "")
      {
         alert("Nebyla vyplněna oblíbená hračka");
         f.hracka.focus();
         return false;
      }
      if(f.cinnost.value == "")
      {
         alert("Nebyla vyplněna neoblíbená činnost");
         f.cinnost.focus();
         return false;
      }
      if(document.getElementById('id_doc_gender_m').checked == false && document.getElementById('id_doc_gender_f').checked == false)
      {
         alert("Nebylo zvoleno pohlaví doktora");
         document.getElementById('id_doc_gender_m').focus();
         return false;
      }
      
      if(document.getElementById('id_location_f').checked == false && document.getElementById('id_location_c').checked == false)
      {
         alert("Nebylo zvoleno místo");
         document.getElementById('id_location_f').focus();
         return false;
      }
      
      if( document.getElementById('id_animal_c').checked == false && 
          document.getElementById('id_animal_d').checked == false &&
          document.getElementById('id_animal_v').checked == false &&
          document.getElementById('id_animal_m').checked == false &&
          document.getElementById('id_animal_b').checked == false &&
          document.getElementById('id_animal_f').checked == false )
      { 
         alert("Nebylo zvoleno zvířátko");
         document.getElementById('id_animal_c').focus();
         return false;
      }
  
    return true;
  }
  function change_zobraz_div(id)
  {
    if(document.getElementById(id))
    {
      if(document.getElementById(id).style.display == "block")
      {
        skryj_div(id);
      }else
      {
         zobraz_div(id);
      }

    }
  }
  
  function change_zobraz_div_all(id,max)
  {
    for(var i=0; i<=max;i++)
    {
      var m_id = "dav_"+i.toString();
      if(document.getElementById(m_id))
      {
          skryj_div(m_id);
      }
    }
    change_zobraz_div(id);
  }
  
  function skryj_div(id)
  {
    if( document.getElementById(id))
    {
      document.getElementById(id).style.display='none';
    }
  }

  function zobraz_div(id)
  {
    if( document.getElementById(id))
    {
      document.getElementById(id).style.display='block';
    }
  }
  
  function print_pohadku(param,images)
  {
    okno = window.open("print_pohadku.php?param="+param+"&img="+images,'Pohadka','width=1024,height=768,status=no,toolbar=no,scrollbars=yes,menubar=no,directories=no');
    okno.focus();
  }
  
  function play_puzzle(id,width,height)
  {
    var n_width  = width +100;
    var n_height = height +100; 
    //alert(n_width);
    
    okno = window.open("play_puzzle.php?id="+id,'Puzzle','width='+n_width+',height='+n_height+',status=no,toolbar=no,scrollbars=yes,menubar=no,directories=no');
    okno.focus();
  
  }
  
  function play_game(id,width,height)
  {
    var n_width  = width +100;
    var n_height = height +100; 
    //alert(n_width);
    
    okno = window.open("play_game.php?id="+id,'Hra','width='+n_width+',height='+n_height+',status=no,toolbar=no,scrollbars=yes,menubar=no,directories=no');
    okno.focus();
  
  }

  function play_game_rozdily(id,width,height)
  {
    var n_width  = width +100;
    var n_height = height +100;
    //alert(n_width);

    okno = window.open("play_game_rozdily.php?id="+id,'Hra','width='+n_width+',height='+n_height+',status=no,toolbar=no,scrollbars=yes,menubar=no,directories=no');
    okno.focus();

  }

  function display_paints(id,width,height)
  {
    var n_width  = width +100;
    var n_height = 2*height +100; 
    //alert(n_width);
    
    okno = window.open("zobraz_omalovanku.php?id="+id,'Omalovanka','width='+n_width+',height='+n_height+',status=no,toolbar=no,scrollbars=yes,menubar=no,directories=no');
    okno.focus();
  
  }
  
  function open_score(width,height)
  {
    var n_width  = width +100;
    var n_height = height +100; 
    //alert(n_width);
    
    okno = window.open("_scoreboard.php?",'Hra','width='+n_width+',height='+n_height+',status=no,toolbar=no,scrollbars=yes,menubar=no,directories=no');
    okno.focus();
  
  }
  
  
   /**
  * funkce pro kalendar
  */    
  function Tag(poradiDne) {
  // funkce zameni nedeli z cisla nula na cislo 7
  if (poradiDne==0) return 7; else return poradiDne;
}

function dnuVmesici(mesic,rok){
  // FUNKCE VRACI POCET DNU V MESICI `mesic` ROKU `rok`
  dnyVmesicich = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
  pocet = dnyVmesicich[mesic];
  if (mesic==1){
    if ((rok% 4) == 0) {
      if(((rok% 100) == 0) && (rok% 400) != 0) pocet = 28;
      else pocet = 29;
    }
  }
  return pocet;
}

function getMonthName(month) {
   // FUNKCE VRATI NAZEV MESICE, KTERY MA CISLO `month`
   // MESICE JSOU CISLOVANY OD NULY
   mesice = new Array('Leden','Únor','Březen','Duben','Květen','Červen','Červenec','Srpen','Září','Říjen','Listopad','Prosinec');
   return mesice[month];
}

function naplPole(d,m,r,did,mid,rid,kam) {
  // FUNKCE NAPLNI PRISLUSNA POLE HODNOTAMU `d` `m` `r` PO KLIKNUTI NA KALENDAR
  xid = document.getElementById(did);
  xim = document.getElementById(mid);
  xir = document.getElementById(rid);
  xid.value = d; xid.focus(); xid.blur();
  xim.value = m+1; xim.focus(); xim.blur();
  xir.value = r; xir.focus(); xir.blur();
  //alert('oznacene'+d+'|'+m+'|'+r);
  var ozd = new Date();
  ozd.setDate(d);
  ozd.setMonth(m);//+1;
  ozd.setFullYear(r);
  // A JESTE HO PREKRESLIME S OZNACENYM DNEM, NA KTERY BYLO KLIKNUTO
  napisMesic(0,1,1970,did,mid,rid,kam,ozd,1);
}

// funkce pro vymazani obsahu inputu zadanych v inps oddeleno carkami
function emptyInputs(inps,kam) {
 var pInps = inps.split(',');
 var i=0;
 while (i<pInps.length) {
   document.getElementById(pInps[i]).value = '';
   i++;
 }
 napisMesic(1,0,0,pInps[0],pInps[1],pInps[2],kam,'nic',0);
}
  
  function napisMesic(nac,month,year,dd_id,mm_id,rr_id,kam,oznacene,nalistuj) {
// FUNKCE VYPISE MESIC `month` ROKU `year` POKUD JE nac = 0
// je-li nac = 1 VYKRESLI AKTUALNI MESIC
// PARAMETRY `dd_id` , `mm_id` , `rr_id` JSOU ID INPUTu, DO KTERYCH SE PO KLIKNUTI NA DEN VLOZI DATUM
// `kam` JE ID ELEMENTU, DO KTEREHO SE KALENDAR VYKRESLI
// `oznacene` JE PROMENNA, DO KTERE SE UKLADA DATUM Z POLI  `dd_id` `mm_id` a `rr_id`
// `nalistuj` JE-LI 1 FUNKCE VYKRESLI MESIC, KTERY JE V POLICH  `dd_id` `mm_id` a `rr_id`
  var datum = new Date();
  var dnes = new Date();
  var vystup = '';
  var x = 1;
  var dn = 1;
  var zacatek;
  var zacato = false;
  var tydnu = 1;
  var oznaceny;
  var clicky;
  
  if (document.getElementById(dd_id).value!='' && document.getElementById(mm_id).value!='' && document.getElementById(rr_id).value!='') {
     oznacene = new Date();
     oznacene.setFullYear(Number(document.getElementById(rr_id).value));
     oznacene.setMonth(Number(document.getElementById(mm_id).value)-1);
     oznacene.setDate(Number(document.getElementById(dd_id).value));
    // alert(Number(document.getElementById(dd_id).value).toString());
  }

  datum.setDate(1);
  if (nac==0) {
      if (nalistuj==1) {
       month = oznacene.getMonth()+1;
       year = oznacene.getFullYear();
      /* alert(year);
       alert(month);
       alert(oznacene.getDate());*/
      }
    datum.setMonth(Number(month-1));
    datum.setYear(year);
    var pocetDniVmesici = dnuVmesici(month-1,year);
    var p_r = (month==1)?year-1:year;
    var n_r = (month==12)?year+1:year;
    var p_m = (month==1)?12:month-1;
    var n_m = (month==12)?1:month+1;
  } else {
    var pocetDniVmesici = dnuVmesici(datum.getMonth(),datum.getFullYear());
    var p_r = (month==1)?datum.getFullYear()-1:datum.getFullYear();
    var n_r = (month==12)?datum.getFullYear()+1:datum.getFullYear();
    var p_m = (month==1)?12:datum.getMonth();
    var n_m = (month==12)?1:datum.getMonth()+2;
  }
   if (oznacene=='nic') oznaceny='nic'; else {
    oznaceny = new Date();
    oznaceny = oznacene;
   } 
  zacatek = Tag(datum.getDay());
  vystup = '<table border="0" cellspacing="1" cellpadding="0">';
  vystup += '<tr><td colspan="4"><img src="images/kalendar/vlevo.gif" alt="Na předchozí měsíc" width="7" height="14" onclick="napisMesic(0,'+p_m+','+p_r+',\''+dd_id+'\',\''+mm_id+'\',\''+rr_id+'\',\''+kam+'\',\''+oznaceny+'\',0);" class="klikaci" />';
  vystup += '<select name="monthz" id="cal_monthz_'+rr_id+'" style="width: 65px; font-family: tahoma; font-size: 10px; margin: 1px 0px 1px 7px" onchange="napisMesic(0,Number(this.options[this.selectedIndex].value),Number(document.getElementById(\'cal_yearz_'+rr_id+'\').options[document.getElementById(\'cal_yearz_'+rr_id+'\').selectedIndex].value),\''+dd_id+'\',\''+mm_id+'\',\''+rr_id+'\',\''+kam+'\',\''+oznaceny+'\',0);">';
  for(x=0;x<12;x++) {
    vystup += '<option style="font-size: 10px" value="'+(x+1).toString()+'"'+((datum.getMonth()==x)?' selected="selected"':'')+'>'+getMonthName(x)+'</option>';
  }
  vystup += '</select>';
  vystup += '</td><td colspan="3" class="right"><select name="yearz" id="cal_yearz_'+rr_id+'" style="width: 50px; font-family: tahoma; font-size: 10px; margin: 1px 2px 1px 0px" onchange="napisMesic(0,Number(document.getElementById(\'cal_monthz_'+rr_id+'\').options[document.getElementById(\'cal_monthz_'+rr_id+'\').selectedIndex].value),Number(this.options[this.selectedIndex].value),\''+dd_id+'\',\''+mm_id+'\',\''+rr_id+'\',\''+kam+'\',\''+oznaceny+'\',0);">';
  x=1970;
  while (x<=2037) {
    vystup += '<option style="font-size: 10px" value="'+x.toString()+'"'+((datum.getFullYear()==x)?' selected="selected"':'')+'>'+x.toString()+'</option>';  
    x++;
  }
  vystup += '</select>';
  x=1;
  vystup += '<img src="images/kalendar/del_date.gif" onclick="emptyInputs(\''+dd_id+','+mm_id+','+rr_id+'\',\''+kam+'\');" class="klikaci" style="margin-right: 2px" alt="Vymazat vložený datum" />';
  vystup += '<img src="images/kalendar/vpravo.gif" alt="Na následující měsíc" width="7" height="14" onclick="napisMesic(0,'+n_m+','+n_r+',\''+dd_id+'\',\''+mm_id+'\',\''+rr_id+'\',\''+kam+'\',\''+oznaceny+'\',0);" class="klikaci" /></td></tr>';
  vystup += '<tr><td class="den">Po</td><td class="den">Út</td><td class="den">St</td><td class="den">Čt</td><td class="den">Pá</td><td class="den">So</td><td class="den">Ne</td></tr>';
  vystup += '<tr>';
  while (dn<=pocetDniVmesici) {
    // ########### NEZACALO #########
    if (zacato==false) if (zacatek==x) zacato=true; else vystup += '<td>&nbsp;</td>';
    // ########### ZACALO ###########
    if (zacato==true) {
      datum.setDate(dn);
      if (datum.getFullYear() == dnes.getFullYear() && datum.getDate() == dnes.getDate() && datum.getMonth() == dnes.getMonth()) vystup += '<td class="today" title="dnes"';
      else if (oznacene!='nic') {
          if (datum.getFullYear() == oznacene.getFullYear() && datum.getDate() == oznacene.getDate() && datum.getMonth() == oznacene.getMonth()) {
            vystup += '<td class="selectedDate" title="zvolené datum"';
          } else {
             vystup += '<td class="'+((Tag(datum.getDay())>5)?'vikend':'denn')+'"';
            }   
      } else vystup += '<td class="'+((Tag(datum.getDay())>5)?'vikend':'denn')+'"';
      clicky += 'onclick="naplPole('+dn.toString()+','+datum.getMonth()+','+datum.getFullYear()+',\''+dd_id+'\',\''+mm_id+'\',\''+rr_id+'\',\''+kam+'\');"\n';
      vystup += ' onclick="naplPole('+dn.toString()+','+datum.getMonth()+','+datum.getFullYear()+',\''+dd_id+'\',\''+mm_id+'\',\''+rr_id+'\',\''+kam+'\');">'+dn.toString()+'</td>';
      if (Tag(datum.getDay())==7) {
          vystup +='</tr>';
          if (dn!=pocetDniVmesici) {x=1; vystup +='</tr>'; tydnu++; }
      }
      dn++;
    }
    x++;
  }
  while (x<=8) { vystup +='<td>&nbsp;</td>'; x++; }
  vystup +='</tr>';
  if (tydnu==5) vystup +='<tr><td colspan="7" class="denninvisible">&nbsp;</td></tr>';
  vystup +='</table>';
 // alert(clicky);
  document.getElementById(kam).innerHTML=vystup;
}
