/* $Id: main.js,v 2.1 2005/12/22 23:12:39 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);
	}
}

// =============================================================================

// 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_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;

  return_arr = check_cust_general_data();
  
  err_message = return_arr[0];
  is_ok = return_arr[1];
  
  // overeni prihlasovaciho jmena
  if(!check_string_type(cust_login, "text", 2)) {
    err_message = err_message+"Přihlašovací jméno musí obsahovat minimálně 2 znaky\n";
    is_ok = false;
  }
  
  // overeni hesla
  if(!check_string_type(cust_pass1, "text", 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 udaje pro editaci

function check_edit_data() {
  // inicializace promennych
  var cust_login = get_element("cust_login").value;
  var cust_pass1 = get_element("cust_pass1").value;
  var cust_pass2 = get_element("cust_pass2").value;

  return_arr = check_cust_general_data();

  err_message = return_arr[0];
  is_ok = return_arr[1];
  
  // overeni prihlasovaciho jmena
  if(!check_string_type(cust_login, "text", 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 != "" && !check_string_type(cust_pass1, "text", 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 udaje objednavky

function check_order_data() {
  return_arr = check_cust_general_data();

  err_message = return_arr[0];
  is_ok = return_arr[1];

  if (!is_ok) {
    alert(err_message);
    return false;
  }
  else {
    return true;
  }
}

// =============================================================================

// overi data pro doporuceni

function check_recommendation_data() {
  // inicializace promennych
  var rec_sender_mail = get_element("rec_sender_mail").value;
  var rec_recipient_mail = get_element("rec_recipient_mail").value;
  var rec_message = get_element("rec_message").value;

  var err_message = "";  // inicializace
  var is_ok = true;

  // kontrola spravnosti mailu
  if(!check_string_type(rec_sender_mail, "mail")) {
      err_message = err_message+"Vaše e-mailová adresa není platná\n"
    is_ok = false;
  }

  if(!check_string_type(rec_recipient_mail, "mail")) {
      err_message = err_message+"E-mailová adresa příjemce není platná\n"
    is_ok = false;
  }

  // overeni textu
  if(!check_string_type(rec_message, "text", 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;
  }
}

// =============================================================================

// overi data zadana v dotazu po vyhledavani

function check_search_message() {
  // inicializace promennych
  var sm_mail = get_element("sm_mail").value;
  var sm_text = get_element("sm_text").value;

  var err_message = "";  // inicializace
  var is_ok = true;

  // kontrola spravnosti mailu
  if(!check_string_type(sm_mail, "mail")) {
    err_message = err_message+"E-mailová adresa není platná - nemohli bychom Vám odpovědět\n";
    is_ok = false;
  }

  // overeni textu
  if(!check_string_type(sm_text, "text", 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

function check_help_message() {
  // inicializace promennych
  var hm_mail = get_element("hm_mail").value;
  var hm_text = get_element("hm_text").value;

  var err_message = "";  // inicializace
  var is_ok = true;

  // kontrola spravnosti mailu
  if(!check_string_type(hm_mail, "mail")) {
    err_message = err_message+"E-mailová adresa není platná - nemohli bychom Vám odpovědět\n";
    is_ok = false;
  }

  // overeni textu
  if(!check_string_type(hm_text, "text", 2)) {
    err_message = err_message+"Zadejte nějaký dotaz\n";
    is_ok = false;
  }

  if (!is_ok) {
    alert(err_message);
    return false;
  }
  else {
    return true;
  }
}
