/* $Id: main.js,v 1.5 2005/09/22 15:17:17 Lubos Exp $ */

// vrati element podle zadaneho ID
// input: ID - ID elementu

function get_element(id) {
	if (document.all) {
		return document.all[id];
	}
  else {
		return document.getElementById(id);
	}
}

// =============================================================================

// hlavni menu

// 0 - skryte
// 1 - zobrazeni po urcitem case
// 2 - viditelne
// 3 - skryti po urcitem case

var section_id_chain;
var section_status = 0;
var timeout_id;

// skryje vsechny sekce

function collapse_menu() {
	var section_arr = new Array();
	section_arr = section_id_chain.split(";");
	var i = 0;
	var ul_element;
	while (section_arr[i]) {
		ul_element = get_element("menu-"+section_arr[i]);
		ul_element.style.display="none";
		i++;
	}
}

// -----------------------------------------------------------------------------

function menu_on() {
  if (section_status == 3) {
    clearTimeout(timeout_id);
    section_status = 2;
  }
}

// -----------------------------------------------------------------------------

function menu_off() {
  if (section_status == 2) {
    section_status = 3;
    timeout_id = setTimeout("section_hide()",300);
  }
}

// -----------------------------------------------------------------------------

// skryje rozbalenou sekci

function section_off() {
  if (section_status == 2) { // zobrazuje se a za chvily se ma smazat
    section_status = 3;
    timeout_id = setTimeout("section_hide()",300);
  }
  else if (section_status == 1) { // nestihl se zobrazit dokud uzivatel neodjel mysi
    clearTimeout(timeout_id);
    section_status = 0;
  }
}

// -----------------------------------------------------------------------------

// zobrazi sekci

function section_on(tmp_section_id) {
  if (section_status == 0) {
    section_status = 1;
    section_id = tmp_section_id;
    timeout_id = setTimeout("section_show()",150);
  }
  else if (section_status == 3) {
    clearTimeout(timeout_id);
    if (section_id == tmp_section_id) {
      section_status = 2;
    }
    else {
      section_id = tmp_section_id;
      section_status = 1;
      section_show();
    }
  }
}

// -----------------------------------------------------------------------------

// vlastni zobrazeni sekce

function section_show() {
  if (section_status == 1) {
    collapse_menu();
    ul_element = get_element("menu-"+section_id);
    ul_element.style.display="block";
    section_status = 2;
  }
}

// -----------------------------------------------------------------------------

// vlastni skryti sekce

function section_hide() {
  if (section_status == 1) {
    section_status = 0;
  }
  else if (section_status == 3) {
    collapse_menu();
    section_status = 0;
  }
}

// =============================================================================

// umisti focus na element se zadanym id
// input: id - id elementu

function focus_element(id) {
  var element = get_element(id);
  element.focus();
}

// =============================================================================

// overi registracni udaje

function check_reg_data() {
  // inicializace promennych
  var cust_f_name = get_element("cust_f_name").value;
  var cust_l_name = get_element("cust_l_name").value;
  var cust_mail = get_element("cust_mail").value;
  var cust_phone = get_element("cust_phone").value;
  var cust_fax = get_element("cust_fax").value;
  var cust_firm = get_element("cust_firm").value;
  var cust_ic = get_element("cust_ic").value;
  var cust_dic = get_element("cust_dic").value;
  var cust_street = get_element("cust_street").value;
  var cust_city = get_element("cust_city").value;
  var cust_zip = get_element("cust_zip").value;
  var cust_del_f_name = get_element("cust_del_f_name").value;
  var cust_del_l_name = get_element("cust_del_l_name").value;
  var cust_del_firm = get_element("cust_del_firm").value;
  var cust_del_street = get_element("cust_del_street").value;
  var cust_del_city = get_element("cust_del_city").value;
  var cust_del_zip = get_element("cust_del_zip").value;
  var cust_del_mail = get_element("cust_del_mail").value;
  var cust_del_phone = get_element("cust_del_phone").value;
  var cust_del_fax = get_element("cust_del_fax").value;
  var cust_login = get_element("cust_login").value;
  var cust_pass1 = get_element("cust_pass1").value;
  var cust_pass2 = get_element("cust_pass2").value;
  var cust_p_data = get_element("cust_p_data").checked;
  
  var err_message = "";
  var is_ok = true;

  // overeni jmena
  if(cust_f_name.length < 2) {
    err_message = err_message+"Jméno musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni prijmeni
  if(cust_l_name.length < 2) {
    err_message = err_message+"Příjmení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni firmy
  if(cust_firm != "" && cust_firm.length < 2) {
    err_message = err_message+"Název firmy musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni IC
  if(cust_ic != "" && !cust_ic.match("^[0-9a-zA-Z ]{7,15}$")) {
    err_message = err_message+"IČO není platné\n";
    is_ok = false;
  }

  // overeni DIC
  if(cust_dic != "" && !cust_dic.match("^[0-9a-zA-Z \-]{7,15}$")) {
    err_message = err_message+"DIČ není platné\n";
    is_ok = false;
  }

  // overeni ulice
  if(cust_street.length < 2) {
    err_message = err_message+"Ulice musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni mesta
  if(cust_city.length < 2) {
    err_message = err_message+"Město musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni PSC
  if(!cust_zip.match("^[a-z0-9 ]{5,8}$")) {
    err_message = err_message+"PSČ není platné\n";
    is_ok = false;
  }

  // overeni telefonu
  if(!cust_phone.match("^[0-9 \(\)+]{7,20}$")) {
    err_message = err_message+"Telefon není platný\n";
    is_ok = false;
  }

  // overeni faxu
  if(cust_fax != "" && !cust_fax.match("^[0-9 \(\)+]{7,20}$")) {
    err_message = err_message+"Fax není platný\n";
    is_ok = false;
  }

  // overeni mailu
  if(!cust_mail.match("^[^.]+(\.[^.]+)*@([^.]+[.])+[a-zA-Z]{2,4}$")) {
    err_message = err_message+"E-mailová adresa není platná\n";
    is_ok = false;
  }

  // overeni jmena pro doruceni
  if(cust_del_f_name != "" && cust_del_f_name.length < 2) {
    err_message = err_message+"Jméno pro doručení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni prijmeni pro doruceni
  if(cust_del_l_name != "" && cust_del_l_name.length < 2) {
    err_message = err_message+"Příjmení pro doručení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni firmy pro dorucení
  if(cust_del_firm != "" && cust_del_firm.length < 2) {
    err_message = err_message+"Název firmy pro doručení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni ulice pro doruceni
  if(cust_del_street != "" && cust_del_street.length < 2) {
    err_message = err_message+"Ulice pro doručení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni mesta pro doruceni
  if(cust_del_city != "" && cust_del_city.length < 2) {
    err_message = err_message+"Město pro doručení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni PSC pro doruceni
  if(cust_del_zip != "" && !cust_del_zip.match("^[a-z0-9 ]{5,8}$")) {
    err_message = err_message+"PSČ pro doručení není platné\n";
    is_ok = false;
  }

  // overeni telefonu pro doruceni
  if(cust_del_phone != "" && !cust_del_phone.match("^[0-9 \(\)+]{7,20}$")) {
    err_message = err_message+"Telefon pro doručení není platný\n";
    is_ok = false;
  }

  // overeni faxu pro doruceni
  if(cust_del_fax != "" && !cust_del_fax.match("^[0-9 \(\)+]{7,20}$")) {
    err_message = err_message+"Fax pro doručení není platný\n";
    is_ok = false;
  }

  // overeni mailu pro doruceni
  if(cust_del_mail != "" && !cust_del_mail.match("^[^.]+(\.[^.]+)*@([^.]+[.])+[a-zA-Z]{2,4}$")) {
    err_message = err_message+"E-mailová adresa pro doručení není platná\n";
    is_ok = false;
  }

  // overeni prihlasovaciho jmena
  if(cust_login.length < 2) {
    err_message = err_message+"Přihlašovací jméno musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }
  
  // overeni hesla
  if(cust_pass1.length < 2) {
    err_message = err_message+"Heslo musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }
  
  if(cust_pass1 != cust_pass2) {
    err_message = err_message+"Zadaná hesla se neshodují\n";
    is_ok = false;
  }
  
  if(cust_p_data != true) {
    err_message = err_message+"Pro registraci je nutné zatrhnout políčko o souhlasu se zpracováním osobních údajů\n(bez souhlasu není registrace možná)\n";
    is_ok = false;
  }
    
  if (!is_ok) {
    alert(err_message);
    return false;
  }
  else {
    return true;
  }
}

// =============================================================================

// overi editacni udaje

function check_edit_data() {
  // inicializace promennych
  var cust_f_name = get_element("cust_f_name").value;
  var cust_l_name = get_element("cust_l_name").value;
  var cust_mail = get_element("cust_mail").value;
  var cust_phone = get_element("cust_phone").value;
  var cust_fax = get_element("cust_fax").value;
  var cust_firm = get_element("cust_firm").value;
  var cust_ic = get_element("cust_ic").value;
  var cust_dic = get_element("cust_dic").value;
  var cust_street = get_element("cust_street").value;
  var cust_city = get_element("cust_city").value;
  var cust_zip = get_element("cust_zip").value;
  var cust_del_f_name = get_element("cust_del_f_name").value;
  var cust_del_l_name = get_element("cust_del_l_name").value;
  var cust_del_firm = get_element("cust_del_firm").value;
  var cust_del_street = get_element("cust_del_street").value;
  var cust_del_city = get_element("cust_del_city").value;
  var cust_del_zip = get_element("cust_del_zip").value;
  var cust_del_mail = get_element("cust_del_mail").value;
  var cust_del_phone = get_element("cust_del_phone").value;
  var cust_del_fax = get_element("cust_del_fax").value;
  var cust_login = get_element("cust_login").value;
  var cust_pass1 = get_element("cust_pass1").value;
  var cust_pass2 = get_element("cust_pass2").value;

  var err_message = "";
  var is_ok = true;

  // overeni jmena
  if(cust_f_name.length < 2) {
    err_message = err_message+"Jméno musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni prijmeni
  if(cust_l_name.length < 2) {
    err_message = err_message+"Příjmení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni firmy
  if(cust_firm != "" && cust_firm.length < 2) {
    err_message = err_message+"Název firmy musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni IC
  if(cust_ic != "" && !cust_ic.match("^[0-9a-zA-Z ]{7,15}$")) {
    err_message = err_message+"IČO není platné\n";
    is_ok = false;
  }

  // overeni DIC
  if(cust_dic != "" && !cust_dic.match("^[0-9a-zA-Z \-]{7,15}$")) {
    err_message = err_message+"DIČ není platné\n";
    is_ok = false;
  }

  // overeni ulice
  if(cust_street.length < 2) {
    err_message = err_message+"Ulice musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni mesta
  if(cust_city.length < 2) {
    err_message = err_message+"Město musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni PSC
  if(!cust_zip.match("^[a-z0-9 ]{5,8}$")) {
    err_message = err_message+"PSČ není platné\n";
    is_ok = false;
  }

  // overeni telefonu
  if(!cust_phone.match("^[0-9 \(\)+]{7,20}$")) {
    err_message = err_message+"Telefon není platný\n";
    is_ok = false;
  }

  // overeni faxu
  if(cust_fax != "" && !cust_fax.match("^[0-9 \(\)+]{7,20}$")) {
    err_message = err_message+"Fax není platný\n";
    is_ok = false;
  }

  // overeni mailu
  if(!cust_mail.match("^[^.]+(\.[^.]+)*@([^.]+[.])+[a-zA-Z]{2,4}$")) {
    err_message = err_message+"E-mailová adresa není platná\n";
    is_ok = false;
  }

  // overeni jmena pro doruceni
  if(cust_del_f_name != "" && cust_del_f_name.length < 2) {
    err_message = err_message+"Jméno pro doručení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni prijmeni pro doruceni
  if(cust_del_l_name != "" && cust_del_l_name.length < 2) {
    err_message = err_message+"Příjmení pro doručení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni firmy pro dorucení
  if(cust_del_firm != "" && cust_del_firm.length < 2) {
    err_message = err_message+"Název firmy pro doručení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni ulice pro doruceni
  if(cust_del_street != "" && cust_del_street.length < 2) {
    err_message = err_message+"Ulice pro doručení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni mesta pro doruceni
  if(cust_del_city != "" && cust_del_city.length < 2) {
    err_message = err_message+"Město pro doručení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni PSC pro doruceni
  if(cust_del_zip != "" && !cust_del_zip.match("^[a-z0-9 ]{5,8}$")) {
    err_message = err_message+"PSČ pro doručení není platné\n";
    is_ok = false;
  }

  // overeni telefonu pro doruceni
  if(cust_del_phone != "" && !cust_del_phone.match("^[0-9 \(\)+]{7,20}$")) {
    err_message = err_message+"Telefon pro doručení není platný\n";
    is_ok = false;
  }

  // overeni faxu pro doruceni
  if(cust_del_fax != "" && !cust_del_fax.match("^[0-9 \(\)+]{7,20}$")) {
    err_message = err_message+"Fax pro doručení není platný\n";
    is_ok = false;
  }

  // overeni mailu pro doruceni
  if(cust_del_mail != "" && !cust_del_mail.match("^[^.]+(\.[^.]+)*@([^.]+[.])+[a-zA-Z]{2,4}$")) {
    err_message = err_message+"E-mailová adresa pro doručení není platná\n";
    is_ok = false;
  }

  // overeni prihlasovaciho jmena
  if(cust_login.length < 2) {
    err_message = err_message+"Přihlašovací jméno musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni hesla
  if(cust_pass1.length < 2) {
    err_message = err_message+"Heslo musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  if(cust_pass1 != cust_pass2) {
    err_message = err_message+"Zadaná hesla se neshodují\n";
    is_ok = false;
  }

  if (!is_ok) {
    alert(err_message);
    return false;
  }
  else {
    return true;
  }
}

// =============================================================================

// overi pocet kusu pridavanych do kosiku
// input: id - identifikator pole s mnozstvim

function check_quantity(id) {
  var quantity = get_element(id).value;

  // musi byt kladne cele cislo
  if(!quantity.match("^[0-9]+$") || (quantity < 1)) {
    alert("Chybně zadaný počet kusů");
    return false;
  }
  else {
    return true;
  }
}

// =============================================================================

// overi pocet kusu pro prepocitani v kosiku
// input: items_count - pocet polozek v kosiku

function check_re_count_data(items_count) {
  error = false;  // inicializace

  for(i=0; i<items_count; i++) {
    var quantity = get_element("quantity"+i).value;
    
    // musi byt kladne cele cislo nebo 0
    if(!quantity.match("^[0-9]+$")) {
      error = true;
      break;
    }
  }

  if(error) {
    alert("Chybně zadaný počet kusů");
    return false;
  }
  else {
    return true;
  }
}

// =============================================================================

// overi, zda byl zadan retezec pro vyhledavani (form v menu)

function check_menu_search() {
  // inicializace promennych
  var mquery = get_element("mquery").value;
  
  error = false;  // inicializace

  // musi byt zadan nejaky retezec
  if(!mquery.match("^.+$")) {
    error = true;
  }

  if(error) {
    alert("Zadejte řetězec pro vyhledávání");
    return false;
  }
  else {
    return true;
  }
}

// =============================================================================

// overi, zda byl zadan retezec pro vyhledavani

function check_search() {
  // inicializace promennych
  var squery = get_element("squery").value;

  error = false;  // inicializace

  // musi byt zadan nejaky retezec
  if(!squery.match("^.+$")) {
    error = true;
  }

  if(error) {
    alert("Zadejte řetězec pro vyhledávání");
    return false;
  }
  else {
    return true;
  }
}

// =============================================================================

// overi, zda byla zadana kriteria pro pokrocile vyhledavani

function check_advanced_search() {
  // inicializace promennych
  var asname = get_element("asname").value;
  var asnumber = get_element("asnumber").value;
  var assupplier = get_element("assupplier").value;

  error = false;  // inicializace

  // musi byt zadana nejaka kriteria
  if(!(asname.match("^.+$") || asnumber.match("^.+$") || assupplier.match("^.+$"))) {
    error = true;
  }

  if(error) {
    alert("Zadejte nějaká kritéria pro vyhledávání");
    return false;
  }
  else {
    return true;
  }
}

// =============================================================================

// overi data zadana v dotazu po vyhledavani

function check_search_message() {
  // inicializace promennych
  var search_message_mail = get_element("search_message_mail").value;
  var search_message_text = get_element("search_message_text").value;

  var err_message = "";  // inicializace
  var is_ok = true;

  // kontrola spravnosti mailu
  if(!search_message_mail.match("^[^.]+(\.[^.]+)*@([^.]+[.])+[a-zA-Z]{2,4}$")) {
    err_message = err_message+"E-mailová adresa není platná\n";
    is_ok = false;
  }

  // overeni textu
  if(search_message_text.length < 2) {
    err_message = err_message+"Zadejte nějaký dotaz\n";
    is_ok = false;
  }

  if (!is_ok) {
    alert(err_message);
    return false;
  }
  else {
    return true;
  }
}

// =============================================================================

// overi data zadana v dotazu z helpu

function check_help_message() {
  // inicializace promennych
  var help_message_mail = get_element("help_message_mail").value;
  var help_message_text = get_element("help_message_text").value;

  var err_message = "";  // inicializace
  var is_ok = true;

  // kontrola spravnosti mailu
  if(!help_message_mail.match("^[^.]+(\.[^.]+)*@([^.]+[.])+[a-zA-Z]{2,4}$")) {
    err_message = err_message+"E-mailová adresa není platná\n";
    is_ok = false;
  }

  // overeni textu
  if(help_message_text.length < 2) {
    err_message = err_message+"Zadejte nějaký dotaz\n";
    is_ok = false;
  }

  if (!is_ok) {
    alert(err_message);
    return false;
  }
  else {
    return true;
  }
}

// =====================================================================

// overi udaje objednavky

function check_order_data() {
  var cust_f_name = get_element("cust_f_name").value;
  var cust_l_name = get_element("cust_l_name").value;
  var cust_mail = get_element("cust_mail").value;
  var cust_phone = get_element("cust_phone").value;
  var cust_fax = get_element("cust_fax").value;
  var cust_firm = get_element("cust_firm").value;
  var cust_ic = get_element("cust_ic").value;
  var cust_dic = get_element("cust_dic").value;
  var cust_street = get_element("cust_street").value;
  var cust_city = get_element("cust_city").value;
  var cust_zip = get_element("cust_zip").value;
  var cust_del_f_name = get_element("cust_del_f_name").value;
  var cust_del_l_name = get_element("cust_del_l_name").value;
  var cust_del_firm = get_element("cust_del_firm").value;
  var cust_del_street = get_element("cust_del_street").value;
  var cust_del_city = get_element("cust_del_city").value;
  var cust_del_zip = get_element("cust_del_zip").value;
  var cust_del_mail = get_element("cust_del_mail").value;
  var cust_del_phone = get_element("cust_del_phone").value;
  var cust_del_fax = get_element("cust_del_fax").value;

  var err_message = "";
  var is_ok = true;

  // overeni jmena
  if(cust_f_name.length < 2) {
    err_message = err_message+"Jméno musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni prijmeni
  if(cust_l_name.length < 2) {
    err_message = err_message+"Příjmení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni firmy
  if(cust_firm != "" && cust_firm.length < 2) {
    err_message = err_message+"Název firmy musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni IC
  if(cust_ic != "" && !cust_ic.match("^[0-9a-zA-Z ]{7,15}$")) {
    err_message = err_message+"IČO není platné\n";
    is_ok = false;
  }

  // overeni DIC
  if(cust_dic != "" && !cust_dic.match("^[0-9a-zA-Z \-]{7,15}$")) {
    err_message = err_message+"DIČ není platné\n";
    is_ok = false;
  }

  // overeni ulice
  if(cust_street.length < 2) {
    err_message = err_message+"Ulice musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni mesta
  if(cust_city.length < 2) {
    err_message = err_message+"Město musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni PSC
  if(!cust_zip.match("^[a-z0-9 ]{5,8}$")) {
    err_message = err_message+"PSČ není platné\n";
    is_ok = false;
  }

  // overeni telefonu
  if(!cust_phone.match("^[0-9 \(\)+]{7,20}$")) {
    err_message = err_message+"Telefon není platný\n";
    is_ok = false;
  }

  // overeni faxu
  if(cust_fax != "" && !cust_fax.match("^[0-9 \(\)+]{7,20}$")) {
    err_message = err_message+"Fax není platný\n";
    is_ok = false;
  }

  // overeni mailu
  if(!cust_mail.match("^[^.]+(\.[^.]+)*@([^.]+[.])+[a-zA-Z]{2,4}$")) {
    err_message = err_message+"E-mailová adresa není platná\n";
    is_ok = false;
  }

  // overeni jmena pro doruceni
  if(cust_del_f_name != "" && cust_del_f_name.length < 2) {
    err_message = err_message+"Jméno pro doručení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni prijmeni pro doruceni
  if(cust_del_l_name != "" && cust_del_l_name.length < 2) {
    err_message = err_message+"Příjmení pro doručení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni firmy pro dorucení
  if(cust_del_firm != "" && cust_del_firm.length < 2) {
    err_message = err_message+"Název firmy pro doručení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni ulice pro doruceni
  if(cust_del_street != "" && cust_del_street.length < 2) {
    err_message = err_message+"Ulice pro doručení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni mesta pro doruceni
  if(cust_del_city != "" && cust_del_city.length < 2) {
    err_message = err_message+"Město pro doručení musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }

  // overeni PSC pro doruceni
  if(cust_del_zip != "" && !cust_del_zip.match("^[a-z0-9 ]{5,8}$")) {
    err_message = err_message+"PSČ pro doručení není platné\n";
    is_ok = false;
  }

  // overeni telefonu pro doruceni
  if(cust_del_phone != "" && !cust_del_phone.match("^[0-9 \(\)+]{7,20}$")) {
    err_message = err_message+"Telefon pro doručení není platný\n";
    is_ok = false;
  }

  // overeni faxu pro doruceni
  if(cust_del_fax != "" && !cust_del_fax.match("^[0-9 \(\)+]{7,20}$")) {
    err_message = err_message+"Fax pro doručení není platný\n";
    is_ok = false;
  }

  // overeni mailu pro doruceni
  if(cust_del_mail != "" && !cust_del_mail.match("^[^.]+(\.[^.]+)*@([^.]+[.])+[a-zA-Z]{2,4}$")) {
    err_message = err_message+"E-mailová adresa pro doručení není platná\n";
    is_ok = false;
  }

  if (!is_ok) {
    alert(err_message);
    return false;
  }
  else {
    return true;
  }
}

// =============================================================================

// overi data v kontaktnim formulari

function check_hm_data() {
  // inicializace promennych
  var hm_name = get_element("hm_name").value;
  var hm_mail = get_element("hm_mail").value;
  var hm_text = get_element("hm_text").value;

  var err_message = "";
  var is_ok = true;

  // overeni jmena
  if(hm_name.length < 1) {
    err_message = err_message+"Nebylo zadáno jméno\n";
    is_ok = false;
  }

  // overeni mailu
  if(!hm_mail.match("^[^.]+(\.[^.]+)*@([^.]+[.])+[a-zA-Z]{2,4}$")) {
    err_message = err_message+"E-mailová adresa není platná\n";
    is_ok = false;
  }

  // overeni textu
  if(hm_text.length < 1) {
    err_message = err_message+"Nebyl zadán žádný text\n";
    is_ok = false;
  }

  if (!is_ok) {
    alert(err_message);
    return false;
  }
  else {
    return true;
  }
}

// =============================================================================

// overi data ve formulari pro ohnostroje pro vlastni odpaleni

function check_eafd_data() {
  // inicializace promennych
  var fd_name = get_element("fd_name").value;
  var fd_mail = get_element("fd_mail").value;
  var fd_pickup_date = get_element("fd_pickup_date").value;
  var fd_text = get_element("fd_text").value;

  var err_message = "";
  var is_ok = true;

  // overeni jmena
  if(fd_name.length < 1) {
    err_message = err_message+"Nebylo zadáno jméno\n";
    is_ok = false;
  }

  // overeni mailu
  if(!fd_mail.match("^[^.]+(\.[^.]+)*@([^.]+[.])+[a-zA-Z]{2,4}$")) {
    err_message = err_message+"E-mailová adresa není platná\n";
    is_ok = false;
  }

  // overeni data
  if(fd_pickup_date.length < 1) {
    err_message = err_message+"Nebylo zadáno datum vyzvednutí\n";
    is_ok = false;
  }

  // overeni textu
  if(fd_text.length < 1) {
    err_message = err_message+"Nebyl zadán žádný text\n";
    is_ok = false;
  }

  if (!is_ok) {
    alert(err_message);
    return false;
  }
  else {
    return true;
  }
}

// =============================================================================

// overi data ve formulari pro ohnostroje

function check_fd_data() {
  // inicializace promennych
  var fd_name = get_element("fd_name").value;
  var fd_mail = get_element("fd_mail").value;
  var fd_firework_type = get_element("fd_firework_type").value;

  var err_message = "";
  var is_ok = true;

  // overeni jmena
  if(fd_name.length < 1) {
    err_message = err_message+"Nebylo zadáno jméno\n";
    is_ok = false;
  }

  // overeni mailu
  if(!fd_mail.match("^[^.]+(\.[^.]+)*@([^.]+[.])+[a-zA-Z]{2,4}$")) {
    err_message = err_message+"E-mailová adresa není platná\n";
    is_ok = false;
  }

  // overeni typu ohnostroje
  if(fd_firework_type.length < 1) {
    err_message = err_message+"Nebyl zadán typ ohňostroje\n";
    is_ok = false;
  }

  if (!is_ok) {
    alert(err_message);
    return false;
  }
  else {
    return true;
  }
}

// =============================================================================

// overi data zadana v doporuceni e-mailem

function check_rec_message() {
  // inicializace promennych
  var rec_recipient_mail = get_element("rec_recipient_mail").value;
  var rec_sender_mail = get_element("rec_sender_mail").value;
  var rec_message = get_element("rec_message").value;

  var err_message = "";  // inicializace
  var is_ok = true;

  // kontrola spravnosti mailu
  if(!rec_sender_mail.match("^[^.]+(\.[^.]+)*@([^.]+[.])+[a-zA-Z]{2,4}$")) {
    err_message = err_message+"Vaše e-mailová adresa není platná\n";
    is_ok = false;
  }

  // kontrola spravnosti mailu
  if(!rec_recipient_mail.match("^[^.]+(\.[^.]+)*@([^.]+[.])+[a-zA-Z]{2,4}$")) {
    err_message = err_message+"E-mailová adresa příjemce není platná\n";
    is_ok = false;
  }

  // overeni textu
  if(rec_message.length < 2) {
    err_message = err_message+"Zadejte nějaký text zprávy\n";
    is_ok = false;
  }

  if (!is_ok) {
    alert(err_message);
    return false;
  }
  else {
    return true;
  }
}