
//metody na test textu

function isEmpty(str){
  return ((str == null) || (str.length == 0));
}

function isInteger(str){
  var i;

  if (isEmpty(str))
  if (isInteger.arguments.length == 1) return 0;
  else return (isInteger.arguments[1] == true);

  for (i = 0; i < str.length; i++){
     var c = str.charAt(i);
     if (!isDigit(c)) return false;
  }
  return true;
}

function isFloat(str,dst){ //dst=pocet desetinych mist
  var i;
  var seenDecimalPoint = false;
  var decimalPointDelimiter=".";
  var pocDst=0;
  if (isEmpty(str)) 
    return false;
  if (str == decimalPointDelimiter) return false;
  for (i = 0; i < str.length; i++){   
    var c = str.charAt(i);
    if ((c == decimalPointDelimiter) && !seenDecimalPoint) {
	    seenDecimalPoint = true;
    }else 
      if (!isDigit(c)) return false;
      else 
        if (seenDecimalPoint)
          pocDst++;
  }
  if (pocDst>dst)
    return false;  //cislo obsahuje vice desetinych mist nez je povoleno
    
  return true;
}

function isDigit (c){
  return ((c >= "0") && (c <= "9"))
}

function isPSC(str){
  re = new RegExp("[0-9][0-9][0-9] ?[0-9][0-9]");
  if (re.test(str))
    return true;
  else
    return false;
}

function isTel(str){
  re = new RegExp("^([+]{1}[0-9]{3})? ?[1-9][0-9]{2} ?[0-9]{3} ?[0-9]{3}$");
  if (re.test(str))
    return true;
  else
    return false;
}


function isMail(str){
  re = new RegExp("[a-zA-Z0-9._-]+@([a-zA-Z0-9.-])+[.]{1}[a-zA-Z]{2,4}");
  if (!re.test(str)){
    return false;
  }else
    return true;
}

function checkForm(form){  
  if ((!checkTelNumber(form.telNum))&&(!checkMailNoAlert(form.email))){
    alert("Zadejte prosím jeden ze svých kontaktních údajů.");
    form.email.focus();
    return false;
  }
  if ((form.zprava.value=="")||(form.zprava.value=="Text")){
    alert("Před odesláním formuláře je nutné napsat nějaký text.");
    form.zprava.focus();
    return false;
  } 
  return true;
}

function checkMailNoAlert(obj){
  re = new RegExp("^[^@]+@[^.]+\..+$");
  if (!re.test(obj.value)){
    obj.focus();
    return false;
  }else
    return true;
}

function checkTelNumber(obj){
  re = new RegExp("^[+]?[()/0-9. -]{9,}$");
  if (!re.test(obj.value)){
    obj.focus();
    return false;
  }else
    return true;
}

function over(obr,new_obr) {
  obr.src=new_obr; }
  
function over_menu(item,visible){
  if (visible)
    item.style.visibility="visible";
  else
    item.style.visibility="hidden";
}

function checkRegForm(form){
  if (isEmpty(form.f_name.value)){
    alert("Zadejte prosím Vaše jméno.");
  	form.f_name.focus();
  	form.f_name.style.backgroundColor='#FCAFAF';
    return false;    
  }
  if (isEmpty(form.l_name.value)){
    alert("Zadejte prosím Vaše příjmení.");
  	form.l_name.focus();
  	form.l_name.style.backgroundColor='#FCAFAF';
    return false;    
  }
  alert(form.sex_w.value);
  if ((form.sex_w.value)){
    alert("Zadejte prosím Vaše pohlaví.");
    return false;    
  }
  if (!isTel(form.tel.value)){
    alert("Zadejte prosím Váš telefon.");
  	form.tel.focus();
  	form.tel.style.backgroundColor='#FCAFAF';
    return false; 
  }
  return false;
}
	 

function checkText(area){
  if (isEmpty(area.value) || (area.value.length > 300)) 
    area.style.backgroundColor='#FCAFAF'; 
  else 
    area.style.backgroundColor='white'; 
    
  document.getElementById('poznamka').innerHTML='Zbývá '+((area.value.length<300)?(300-area.value.length):'0')+' znaků';
}


function checkFormKlient(form){
  if (isEmpty(form.jmeno.value)){
    alert("Zadejte prosím Vaše jméno.");
  	form.jmeno.focus();
  	form.jmeno.style.backgroundColor='#FCAFAF';
    return false;    
  }
  
  if (!isTel(form.tel.value)){
    alert("Zadejte prosím Váš telefon.");
  	form.tel.focus();
  	form.tel.style.backgroundColor='#FCAFAF';
    return false; 
  }
  
  if ((isEmpty(form.pozn.value))||(form.pozn.value.length > 300)){
    alert("Zadejte prosím zprávu. Text nesmí být delší než 300 znaků.");
  	form.pozn.focus();
  	form.pozn.style.backgroundColor='#FCAFAF';
    return false;    
  }
  
  return true;
  
}