// JavaScript Document

// hide
function MM_findObj(n, d) 
{ //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_showHideLayers() 
{ //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

// check description
function counterchar(F) 
{
   var box = F.description;
   var msglen = box.value.length;
   
   var char_in = msglen;			// napsáno
   var char_le = 250 - char_in;	// zbývá
   if(char_le < 0)
   {
      char_le = 0;
      alert("Popis firmy je příliš dlouhý. Po odeslání bude zkrácen na 250 znaků.");
   }
   
   F.char_in.value = char_in;
   F.char_le.value = char_le;
}

// disabled/enabled input
function DisEnLayers(inid,value) // value: 1 enabled, 0 disabled
{
   if(document.getElementById)
   {
     var obj = document.getElementById(inid);
     obj.disabled = value ? 0 : 1;
   }
   else if(document.all)	// IE 4
   {
     document.all[inid].disabled = value ? 0 : 1;
   }  
}

//validate login edit firm
function validate_login()
{
   var F = document.getElementById("loginForm");
   if(F.ico.value.length<8)
   {
      alert('Identifikační číslo firmy musí obsahovat 8 znaků.');
      F.ico.focus();
      return false;
   }
   return true;   
}

// validate firm form
function validate_kontakty(count)
{
    
   var F = document.getElementById("contForm");
   
   for (i=1; i <= count; i++) {
       
       var email = document.getElementById("email"+i);
       
       
       if (email.value != "") {
       
           
           if (!validate_email(email.value)) {
               alert("vyplňte prosím správně email "+email.value);
               //F.email.focus();
               return false;
           }
   
       }
  
   }
   return true;
}

// validate firm form
var validate_firm_click=0;
function validate_firm()
{

   var F = document.getElementById("contForm");

   if(validate_firm_click==2)
   {
     if(confirm('Opravdu chcete vymazat zadanou kategorii?')) return true;
     else return false;
   }

   if(validate_firm_click<3 && (document.getElementById("kategorie_1").innerHTML.length==0 || document.getElementById("zapis_uroven").innerHTML.length==0))
   {
      alert('Zvolte kategorii a typ zapisu.');
      F.parent_id1.focus();
      return false;
   }

   if(validate_firm_click==1)
   {
     validate_firm_click=0;
     return true;
   }else validate_firm_click=0;

   if(F.ico.value.length<8)
   {
      alert('Identifikační číslo firmy musí obsahovat 8 znaků.');
      F.ico.focus();
      return false;
   }
   

   
   if(F.firm_name.value.length==0)
   {
      alert('Vyplňte název firmy.');
      F.firm_name.focus();
      return false;
   }
      
   if(F.regions_id.value==0)
   {
      alert('Vyberte region.');
      F.regions_id.focus();
      return false;
   }
      
   if(F.town_id.value==0)
   {
      alert('Vyberte misto podnikání');
      F.town_id.focus();
      return false;
   }   
   
   if(F.www.value.length==0)
   {
      alert('Vyplňte url');
      F.www.focus();
      return false;
   }
   
   if(F.description.value.length<20)
   {
      alert('Popis činnosti musí mít od 20 do 255 znaků');
      F.description.focus();
      return false;
   }
   /*
   // existuje policko pro vhodny nazev kategorie?
   // => jsem ve free zapisu a validace se vyhodnoti trochu jinak
   var obj  = document.getElementById("new_category_needed");
   
   // policko neexistuje
   if (obj == null) {
      
       if (!valid_category(1)) {
         alert('Vyberte obor činnosti.');
         return false;
       }
   
   } else {
   // policko existuje   
      // checkbox a policko new_category_needed
      // ovlivnuje zpusob vyhodnoceni validace
       
      if (obj.readOnly == true && !valid_category(1)) {
         alert('Vyberte obor činnosti.');
         return false;
      }
  
 
      if (obj.readOnly == false && obj.value == "") {
         alert('Název navrhované kategori není vyplněn, prosím opravte.');
         obj.focus();
         return false;
      }
   }
    */
   if(F.pass1.value.length<6 || F.pass1.value.length>10)
   {
     alert('Heslo v rozsahu 6 - 10 znaků');
     F.pass1.focus();
     return false;
   }
   
   if(F.pass1.value!=F.pass2.value)
   {
      alert('Hesla nejsou stejná');
      F.pass1.focus();
      return false;
   }
   
   if(F.name.value.length==0)
   {
      alert('Vyplňte jméno kontaktní osoby');
      F.name.focus();
      return false;
   }
   
   if(F.surname.value.length==0)
   {
      alert('Vyplňte příjmení kontaktní osoby');
      F.surname.focus();
      return false;
   }
   
   if(F.mail.value.length==0 || !validate_email(F.mail.value))
   {
      alert('Emailová adresa nemá platný formát!');
      F.mail.focus();
      return false;
   }
   
   return true;
   
}

// validate firm form
function validate_firm_edit()
{
   var F = document.getElementById("contForm");

   if(validate_firm_click==1)
   {
     validate_firm_click=0;
     if(document.getElementById("kategorie_1").innerHTML.length>0 && document.getElementById("zapis_uroven").innerHTML.length>0)  return true;
     else return false;
   }else if(validate_firm_click==2) return true;

   if(F.firm_name.value.length==0)
   {
      alert('Vyplňte název firmy.');
      F.firm_name.focus();
      return false;
   }
      
   if(F.regions_id.value==0)
   {
      alert('Vyberte region.');
      F.regions_id.focus();
      return false;
   }
      
   if(F.town_id.value==0)
   {
      alert('Vyberte misto podnikání');
      F.town_id.focus();
      return false;
   }   
   
   if(F.www.value.length==0)
   {
      alert('Vyplňte url');
      F.www.focus();
      return false;
   }
   
   if(F.description.value.length<20)
   {
      alert('Popis činnosti musí mít od 20 do 255 znaků');
      F.description.focus();
      return false;
   }
   
   
/*   if(!valid_category(1))
   {
      alert('Vyberte obor činnosti.');
      //F.obor11.focus();
      return false;
   }
  
    if(!valid_category(2))
   {
      alert('Vyberte obor činnosti.');
      //F.obor12.focus();
      return false;
   }
   
    if(!valid_category(3))
   {
      alert('Vyberte obor činnosti.');
      //F.obor13.focus();
      return false;
   }
   
    */
  
   if(F.name.value.length==0)
   {
      alert('Vyplňte jméno kontaktní osoby');
      F.name.focus();
      return false;
   }
   
   if(F.surname.value.length==0)
   {
      alert('Vyplňte příjmení kontaktní osoby');
      F.surname.focus();
      return false;
   }
   
   if(F.email.value.length==0 || !validate_email(F.email.value))
   {
      alert('Emailová adresa nemá platný formát!');
      F.email.focus();
      return false;
   }
   
   return true;
   
  
}


// validate email
function validate_email(email) {
   var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
   if (filter.test(email))
      return true;
   else
      return false;
}

// validate category
function valid_category(num) {

   cl1 = document.getElementById("parent_id"+num);
   cb1 = cl1.options[cl1.selectedIndex].value; 
   if (cb1==0) return false;
   
   dl1 = document.getElementById("obor1"+num);
   ob1 = dl1.options[dl1.selectedIndex].value; 
   if (ob1==0 && dl1.options.length>1) return false;
   
   dl2 = document.getElementById("obor2"+num);
   ob2 = dl2.options[dl2.selectedIndex].value;
   if (ob2==0 && dl2.options.length>1 ) return false; 

   dl3 = document.getElementById("obor3"+num);
   ob3 = dl3.options[dl3.selectedIndex].value;
   if (ob3==0 && dl3.options.length>1) return false;
   
   
  
   
   return true;
   
}


// new_category_needed switching 
// disable,enable
function switch_disable_category()
{
    
   
    var obj = document.getElementById("new_category_needed");
    
        
        if (obj.readOnly == true) {
                    
                obj.readOnly = false;
        } else  obj.readOnly = true;
     
}



function validate_zadani_poptavky()
{

  var F = document.getElementById("zadani_poptavkyForm");

  if(!document.getElementById('zadavatel_S').checked && !document.getElementById('zadavatel_F').checked)
  {
    alert('Vyberte zadavatele poptávky (Soukromá osoba/Firma).');
    return false;
  }else if(document.getElementById('zadavatel_F').checked){


   if(F.fpi_jmeno.value.length==0)
   {
    alert('Vyplňte jméno.');
    F.fpi_jmeno.focus();
    return false;
   }

   if(F.fpi_prijmeni.value.length==0)
   {
    alert('Vyplňte příjmení.');
    F.fpi_prijmeni.focus();
    return false;
   }

   if(F.fpi_telefon.value.length<9)
   {
    alert('Vyplňte telefon. Alespoň 9 znaků.');
    F.fpi_telefon.focus();
    return false;
   }

   if(!validate_email(F.fpi_mail.value))
   {
    alert('Vyplňte email.');
    F.fpi_mail.focus();
    return false;
   }

   if(F.fpi_nazev.value.length==0)
   {
      alert('Vyplňte jméno firmy.');
      F.fpi_nazev.focus();
      return false;
   }

   if(F.fpi_ico.value.length<8)
   {
      alert('Identifikační číslo firmy musí obsahovat 8 znaků.');
      F.fpi_ico.focus();
      return false;
   }

  if(F.fpi_region.value==0 || F.fpi_mesto.value==0)
  {
    alert('Vyplňte okres a město.');
    F.fpi_region.focus();
    return false;
  }
   
 }else{

  if(F.so_jmeno.value.length==0)
  {
    alert('Vyplňte jméno.');
    F.so_jmeno.focus();
    return false;
  }
  
  if(F.so_prijmeni.value.length==0)
  {
    alert('Vyplňte příjmení.');
    F.so_prijmeni.focus();
    return false;
  }
  
  if(F.so_telefon.value.length<9)
  {
    alert('Vyplňte telefon. Alespoň 9 znaků.');
    F.so_telefon.focus();
    return false;
  }
  
  if(!validate_email(F.so_mail.value))
  {
    alert('Vyplňte email.');
    F.so_mail.focus();
    return false;
  }
  
  if(F.so_region.value==0 || F.so_mesto.value==0)
  {
    alert('Vyplňte okres a město.');
    F.so_region.focus();
    return false;
  }
 }

 if(F.popis.value.length==0)
  {
    alert('Vyplňte popis.');
    F.popis.focus();
    return false;
  }
  
  if(F.platnost.value.length==0)
  {
    alert('Vyplňte platnost.');
    F.platnost.focus();
    return false;
  }
 return true;
}
