  var prom=1;   // prom je Number
   prom="text";  // prom je String
	function jeEmail(value){
		reg_vyraz=/.+@.+/
		return reg_vyraz.test(value)
	}
	


    function jePrazdny(retezec)
    {
      for(var i = 0; i < retezec.length; i++) {
        var znak = retezec.charAt(i);
        if ((znak != ' ') && (znak != '\n') && (znak != '\t')) return false;
      }
      return true;
    }

	function vytvorHlasku(text, id, postfix) {
      var hlaska = document.createElement('span');
	  hlaska.setAttribute("class","chyba_formular");
	  hlaska.setAttribute("id", "hlaska_"+id+postfix);
	  var text_hlasky = document.createTextNode(text);
	  hlaska.appendChild(text_hlasky);

      return hlaska
	}

    function zrusHlasku(id,postfix) {
		if (existujeHlaska(id,postfix)!=null) {
		  document.getElementById("div_"+id).removeChild(document.getElementById("hlaska_"+id+postfix));
		}
	}

	function existujeHlaska(id,postfix) {
		return document.getElementById("hlaska_"+id+postfix);
	}

	function provedKontrolu(formular) {
	  var upozorneni;
	  var prazdna_povinna_pole = "";
      var chybny_format = "Chybný format:";
      var kontrola = true;
	  for(var i = 0; i < formular.length; i++) {
        var elem = formular.elements[i];
        if (((elem.type == "text")||(elem.type == "password")) && elem.povinne && !elem.email) {
            // kontrola prazdnosti elementu
            if ((elem.value == null) || (elem.value == "") || jePrazdny(elem.value)) {
                kontrola = false;
				if (existujeHlaska(elem.id)==null)
				  document.getElementById("div_"+elem.id).appendChild(vytvorHlasku("\n vyplňte prosím", elem.id));
            }
			else {
				zrusHlasku(elem.id);
			}
         }
		 if (elem.email) {
			if (!jeEmail(elem.value)) {
				kontrola = false;
				if (existujeHlaska(elem.id,"b")==null)
				  document.getElementById("div_"+elem.id).appendChild(vytvorHlasku(" špatný formát (jmeno@domena.cz)", elem.id,"b"));
			}
			else {
				zrusHlasku(elem.id,"b");
			}
		 }
      }
      return kontrola
    }
