function ucfirst(val)
{//transf prima litera in litera mare Ex: ion -> Ion
	if (val == "") return ""
	var primaLit = val.charAt(0)
	primaLit = primaLit.toUpperCase()
	var restSir = val.substr(1,val.length-1)
	return (primaLit + restSir)
}

function getNumeCamp(val)
{
	if (val == "") return ""
	val = val.replace("_"," ")
	val = ucfirst(val)
	return val
}

function esteEmail(val,numeCamp) {
if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(val)){
return "";
}
return " - Campul "+numeCamp+" nu este o adresa de e-mail valida \n";
}

function esteNumeric(val,numeCamp)
{
	if (val == "") return " - Campul "+numeCamp+" nu poate fi gol \n";
	var punct=0
     	for (var i = 0; i < val.length; i++) {
            var ch = val.charAt(i)
            if (i == 0 && (ch == "-" || ch == "+")) {
            	continue
            }
			if (ch == "." && punct==0){
				punct++
				continue
			}
            if (ch < "0" || ch > "9") {
            	return " - Campul "+numeCamp+" trebuie sa fie un numar \n";
            }
		}//end for
	return "";
}

function esteNumericNatural(val,numeCamp)
{
	if (val == "") return " - Campul "+numeCamp+" nu poate fi gol \n";
	var punct=0
     	for (var i = 0; i < val.length; i++) {
            var ch = val.charAt(i)
            if (ch < "0" || ch > "9") {
            	return " - Campul "+numeCamp+" trebuie sa fie un numar intreg pozitiv\n";
            }
		}//end for
	return "";
}

function esteOra(val,numeCamp)
{
	if (val == "") return " - Campul "+numeCamp+" nu poate fi gol \n";
	var punct=0
     	for (var i = 0; i < val.length; i++) {
            var ch = val.charAt(i)
            if (ch < "0" || ch > "9") {
            	return " - Campul "+numeCamp+" trebuie sa fie un numar intreg pozitiv\n";
            }
		}//end for
	var valNumerica = parseInt(val);
	if (valNumerica >24) return " - Campul "+numeCamp+" trebuie sa fie o ora valida intre 00 si 23\n";
	return "";
}

function esteMinut(val,numeCamp)
{
	if (val == "") return " - Campul "+numeCamp+" nu poate fi gol \n";
	var punct=0
     	for (var i = 0; i < val.length; i++) {
            var ch = val.charAt(i)
            if (ch < "0" || ch > "9") {
            	return " - Campul "+numeCamp+" trebuie sa fie un numar intreg pozitiv\n";
            }
		}//end for
	var valNumerica = parseInt(val);
	if (valNumerica >60) return " - Campul "+numeCamp+" sa reprezinte minutele intre 00 si 59\n";
	return "";
}

function esteParola(val,numeCamp)
{
	if (val == "") return " - Campul "+numeCamp+" nu poate fi gol \n";
	var punct=0
	if (val.length < 6) return " - Campul "+numeCamp+" trebuie sa contina minim 6 caractere\n"
	if (!((val.search(/[a-z]+/) > -1)
  		&& (val.search(/[A-Z]+/) > -1)
  		&& (val.search(/[0-9]+/) > -1))) return " - Campul "+numeCamp+" trebuie sa contina cel putin o litera mare, o litera mica si o cifra \n";
	return "";
}

function esteParolaConfirma(val,numeCamp)
{
	if (document.getElementById('parola_parola').value != val) return " - Campul "+numeCamp+" trebuie sa fie identica cu campul de parola\n";
	return "";
}

function esteCNP(val,numeCamp)
{
	if (val == "") return " - Campul "+numeCamp+" nu poate fi gol \n";
	var punct=0
     	for (var i = 0; i < val.length; i++) {
            var ch = val.charAt(i)
            if (ch < "0" || ch > "9") {
            	return " - Campul "+numeCamp+" trebuie sa fie un numar intreg pozitiv\n";
            }
		}//end for
	if (val.length != 13) return " - Campul "+numeCamp+" trebuie sa reprezinte un numar CNP valid de 13 cifre\n";
	return "";
}

function esteNumericFaraSemn(val,numeCamp)
{
	if (val == "") return " - Campul "+numeCamp+" nu poate fi gol \n";
	var punct=0
     	for (var i = 0; i < val.length; i++) {
            var ch = val.charAt(i)
			if (ch == "." && punct==0){
				punct++
				continue
			}
            if (ch < "0" || ch > "9") {
            	return " - Campul "+numeCamp+" trebuie sa fie un numar fara semn\n";
            }
		}//end for
return "";
}



function esteGol(val,numeCamp)
{	
	var trimmed = val.replace(/^\s+|\s+$/g, "") ;	
	if (val == "" || trimmed=="" || trimmed==" ") return " - Campul "+numeCamp+" nu poate fi gol \n";
	return "";
}

	
function valideaza_form(ob){
//	if ( document.getElementById('submit').value == 'Editeaza') return true;
	//ob id-ul form-ului	
	var sir_eroare="Au fost gasite campuri invalide. Va rugam sa le corectati.\n\n";
	var sir_aux="",sir_aux2="",aux_c="";
	
	var vect_input = ob.getElementsByTagName("input");
	var l = vect_input.length;
	for (i=0; i < l ;i++){
		switch(vect_input[i].type){
			case "text":
//			alert("test")
				tip = vect_input[i].id;
//				tip = tip.charAt(tip.length-1);
				tip = tip.substr(tip.lastIndexOf("_")+1,tip.length - tip.lastIndexOf("_"))
				switch (tip){
					case "text"://text
						sir_eroare += esteGol(vect_input[i].value,getNumeCamp(vect_input[i].name))
						break;
					case "numericfarasemn"://numeric fara semn
						sir_eroare += esteNumericFaraSemn(vect_input[i].value,getNumeCamp(vect_input[i].name))
						break;	
					case "numericnatural"://numeric natural
						sir_eroare += esteNumericNatural(vect_input[i].value,getNumeCamp(vect_input[i].name))
						break;
					case "cnp"://numeric cnp
						sir_eroare += esteCNP(vect_input[i].value,getNumeCamp(vect_input[i].name))
						break;
					case "email"://este email
						sir_eroare += esteEmail(vect_input[i].value,getNumeCamp(vect_input[i].name))					
					break;
					case "ora"://este ora
						sir_eroare += esteOra(vect_input[i].value,getNumeCamp(vect_input[i].name))					
					break;
					case "minut"://este minut
						sir_eroare += esteMinut(vect_input[i].value,getNumeCamp(vect_input[i].name))					
					break;
					
				}//end switch
			break;
			case "password":
				tip = vect_input[i].id;
//				tip = tip.charAt(tip.length-1);
				tip = tip.substr(tip.lastIndexOf("_")+1,tip.length - tip.lastIndexOf("_"))			
				switch(tip){
					case "parola"://parola
						sir_eroare += esteParola(vect_input[i].value,getNumeCamp(vect_input[i].name))
						break;
					case "parolaconfirma"://parola
						sir_eroare += esteParolaConfirma(vect_input[i].value,getNumeCamp(vect_input[i].name))
						break;					
				}//end switch
			break;
			default:
			break;
		}//end switch
	}
	
	
	var vect_text = ob.getElementsByTagName("textarea");
	var l = vect_text.length;
	for (i=0; i < l ;i++)
	{
	tip = vect_text[i].id;
//	tip = tip.charAt(tip.length-1);
	tip = tip.substr(tip.lastIndexOf("_")+1,tip.length - tip.lastIndexOf("_"))		
		switch (tip)
		{
			case "text":
				sir_eroare += esteGol(vect_text[i].value,getNumeCamp(vect_text[i].name))
				break;
			default:
				break;
		}//end switch
	}
	

	var vect_select = ob.getElementsByTagName("select");
	var l = vect_select.length;
	//interfera cu formularul de selectia a datei
//	l=0;	
	for (i=0; i < l ;i++){
		nume_camp = getNumeCamp(vect_select[i].name);
		switch (vect_select[i].value){
			case '***':
				sir_eroare += " - Campul "+nume_camp+" trebuie sa aiba o optiune aleasa\n";
				break;
			default:
				break;
		}//end switch
	}
	
	var vect_file = ob.getElementsByTagName("input");
	var l = vect_file.length;
	for (i=0; i < l ;i++){
		if (vect_file[i].type == "file")
		{
			sir_aux = vect_file[i].value;
			if (sir_aux){			
			
			sir_aux2 = sir_aux.substr(sir_aux.lastIndexOf('.')+1,sir_aux.length - sir_aux.lastIndexOf('.') - 1 )
			if (vect_file[i].name.lastIndexOf("poza") != -1 )
			{
				if ( sir_aux2 != "jpg" )
				sir_eroare = sir_eroare + " - Fisierul selectat la campul "+vect_file[i].name+" trebuie sa aibe extensia .jpg \n";	
			}
			if (vect_file[i].name.lastIndexOf("pdf") != -1 )
			{
				if ( sir_aux2 != "pdf" )
				sir_eroare = sir_eroare + " - Fisierul selectat la campul "+vect_file[i].name+" trebuie sa aibe extensia .pdf \n";
			}			
			
			}
		}
	}
	
	////////////////////////////////////////////// ptr admin utilizatori adauga
			if (document.getElementById('drept_cl1'))
			if ((document.getElementById('drept_cl1').checked == true)
					&&(document.getElementById('drept_fl1').checked == true)
					&&(document.getElementById('drept_sv1').checked == true)
					&&(document.getElementById('drept_lg1').checked == true)
					&&(document.getElementById('drept_ga1').checked == true))
				{
				sir_eroare = sir_eroare + " - Trebuie sa selectati cel putin un drept de acces. \n";	
				}
	
	
	//pt validarea parolei la administrare utilizatori
	if (document.getElementById('parola_noua'))
		{
			var par_noua = document.getElementById('parola_noua').value;
			
			if (par_noua == "criptata")
				{
					
				}
			
			else 
			{
			if (par_noua == "") 
				sir_eroare = sir_eroare + " - Campul Parola nu poate fi gol \n";
			else if (par_noua.length < 6) 
				sir_eroare = sir_eroare + " - Campul Parola trebuie sa contina minim 6 caractere\n"
			else if (!((par_noua.search(/[a-z]+/) > -1)
  					&& (par_noua.search(/[A-Z]+/) > -1)
  					&& (par_noua.search(/[0-9]+/) > -1))) 
					sir_eroare = sir_eroare + " - Campul Parola trebuie sa contina cel putin o litera mare, o litera mica si o cifra \n";
			}
			
			if (document.getElementById('parola_noua2').value != par_noua)
					sir_eroare = sir_eroare + " - Campul Confirmati parola  trebuie sa fie identic cu campul parola\n";	
			
		}
	
	
	
	//pt validarea platii %
	
	if (document.getElementById('platit_numericfarasemn2'))
		{
		var nr = document.getElementById('platit_numericfarasemn2').value;	
		var valoare=0;
		if (nr == "") 	
			{
			valoare =1;
			}
			
		var punct=0;
     	for (var i = 0; i < nr.length; i++) 
		{
            var ch = nr.charAt(i)
			if (ch == "." && punct==0){
				punct++
				continue
			}
            if (ch < "0" || ch > "9") 
				{
            	valoare = 2;
           		 }
		}//end for
 
		if ( (parseFloat(nr) < 0)|| (parseFloat(nr)>100) )
			{
			valoare = 3;	
			}
			
		if (valoare == 1)
				sir_eroare = sir_eroare + " - Campul 'Platit' nu poate fi gol \n";
		else if (valoare == 2)
				sir_eroare = sir_eroare + " - Campul 'Platit' trebuie sa fie un numar fara semn \n";
		else if (valoare ==3)
				sir_eroare = sir_eroare + " - Campul 'Platit' poate lua valori intre 0 si 100 \n";	
		}
	///////////////////////////////////////////////anexe
	
	function ucfirst(val)
{//transf prima litera in litera mare Ex: ion -> Ion
	if (val == "") return ""
	var primaLit = val.charAt(0)
	primaLit = primaLit.toUpperCase()
	var restSir = val.substr(1,val.length-1)
	return (primaLit + restSir)
}

function getNumeCamp(val)
{
	if (val == "") return ""
	val = val.replace("_"," ")
	val = ucfirst(val)
	return val
}

function esteEmail(val,numeCamp) {
if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(val)){
return "";
}
return " - Campul "+numeCamp+" nu este o adresa de e-mail valida \n";
}

function esteNumeric(val,numeCamp)
{
	if (val == "") return " - Campul "+numeCamp+" nu poate fi gol \n";
	var punct=0
     	for (var i = 0; i < val.length; i++) {
            var ch = val.charAt(i)
            if (i == 0 && (ch == "-" || ch == "+")) {
            	continue
            }
			if (ch == "." && punct==0){
				punct++
				continue
			}
            if (ch < "0" || ch > "9") {
            	return " - Campul "+numeCamp+" trebuie sa fie un numar \n";
            }
		}//end for
	return "";
}

function esteNumericNatural(val,numeCamp)
{
	if (val == "") return " - Campul "+numeCamp+" nu poate fi gol \n";
	var punct=0
     	for (var i = 0; i < val.length; i++) {
            var ch = val.charAt(i)
            if (ch < "0" || ch > "9") {
            	return " - Campul "+numeCamp+" trebuie sa fie un numar intreg pozitiv\n";
            }
		}//end for
	return "";
}

function esteOra(val,numeCamp)
{
	if (val == "") return " - Campul "+numeCamp+" nu poate fi gol \n";
	var punct=0
     	for (var i = 0; i < val.length; i++) {
            var ch = val.charAt(i)
            if (ch < "0" || ch > "9") {
            	return " - Campul "+numeCamp+" trebuie sa fie un numar intreg pozitiv\n";
            }
		}//end for
	var valNumerica = parseInt(val);
	if (valNumerica >24) return " - Campul "+numeCamp+" trebuie sa fie o ora valida intre 00 si 23\n";
	return "";
}

function esteMinut(val,numeCamp)
{
	if (val == "") return " - Campul "+numeCamp+" nu poate fi gol \n";
	var punct=0
     	for (var i = 0; i < val.length; i++) {
            var ch = val.charAt(i)
            if (ch < "0" || ch > "9") {
            	return " - Campul "+numeCamp+" trebuie sa fie un numar intreg pozitiv\n";
            }
		}//end for
	var valNumerica = parseInt(val);
	if (valNumerica >60) return " - Campul "+numeCamp+" sa reprezinte minutele intre 00 si 59\n";
	return "";
}

function esteParola(val,numeCamp)
{
	if (val == "") return " - Campul "+numeCamp+" nu poate fi gol \n";
	var punct=0
	if (val.length < 6) return " - Campul "+numeCamp+" trebuie sa contina minim 6 caractere\n"
	if (!((val.search(/[a-z]+/) > -1)
  		&& (val.search(/[A-Z]+/) > -1)
  		&& (val.search(/[0-9]+/) > -1))) return " - Campul "+numeCamp+" trebuie sa contina cel putin o litera mare, o litera mica si o cifra \n";
	return "";
}

function esteParolaConfirma(val,numeCamp)
{
	if (document.getElementById('parola_parola').value != val) return " - Campul "+numeCamp+" trebuie sa fie identica cu campul de parola\n";
	return "";
}

function esteCNP(val,numeCamp)
{
	if (val == "") return " - Campul "+numeCamp+" nu poate fi gol \n";
	var punct=0
     	for (var i = 0; i < val.length; i++) {
            var ch = val.charAt(i)
            if (ch < "0" || ch > "9") {
            	return " - Campul "+numeCamp+" trebuie sa fie un numar intreg pozitiv\n";
            }
		}//end for
	if (val.length != 13) return " - Campul "+numeCamp+" trebuie sa reprezinte un numar CNP valid de 13 cifre\n";
	return "";
}

function esteNumericFaraSemn(val,numeCamp)
{
	if (val == "") return " - Campul "+numeCamp+" nu poate fi gol \n";
	var punct=0
     	for (var i = 0; i < val.length; i++) {
            var ch = val.charAt(i)
			if (ch == "." && punct==0){
				punct++
				continue
			}
            if (ch < "0" || ch > "9") {
            	return " - Campul "+numeCamp+" trebuie sa fie un numar fara semn\n";
            }
		}//end for
return "";
}



function esteGol(val,numeCamp)
{	
	var trimmed = val.replace(/^\s+|\s+$/g, "") ;	
	if (val == "" || trimmed=="" || trimmed==" ") return " - Campul "+numeCamp+" nu poate fi gol \n";
	return "";
}

function valideaza_form(ob){
//	if ( document.getElementById('submit').value == 'Editeaza') return true;
	//ob id-ul form-ului	
	var sir_eroare="Au fost gasite campuri invalide. Va rugam sa le corectati.\n\n";
	var sir_aux="",sir_aux2="",aux_c="";
	
	var vect_input = ob.getElementsByTagName("input");
	var l = vect_input.length;
	for (i=0; i < l ;i++){
		switch(vect_input[i].type){
			case "text":
//			alert("test")
				tip = vect_input[i].id;
//				tip = tip.charAt(tip.length-1);
				tip = tip.substr(tip.lastIndexOf("_")+1,tip.length - tip.lastIndexOf("_"))
				switch (tip){
					case "text"://text
						sir_eroare += esteGol(vect_input[i].value,getNumeCamp(vect_input[i].name))
						break;
					case "numericfarasemn"://numeric fara semn
						sir_eroare += esteNumericFaraSemn(vect_input[i].value,getNumeCamp(vect_input[i].name))
						break;	
					case "numericnatural"://numeric natural
						sir_eroare += esteNumericNatural(vect_input[i].value,getNumeCamp(vect_input[i].name))
						break;
					case "cnp"://numeric cnp
						sir_eroare += esteCNP(vect_input[i].value,getNumeCamp(vect_input[i].name))
						break;
					case "email"://este email
						sir_eroare += esteEmail(vect_input[i].value,getNumeCamp(vect_input[i].name))					
					break;
					case "ora"://este ora
						sir_eroare += esteOra(vect_input[i].value,getNumeCamp(vect_input[i].name))					
					break;
					case "minut"://este minut
						sir_eroare += esteMinut(vect_input[i].value,getNumeCamp(vect_input[i].name))					
					break;
				}//end switch
			break;
			case "password":
				tip = vect_input[i].id;
//				tip = tip.charAt(tip.length-1);
				tip = tip.substr(tip.lastIndexOf("_")+1,tip.length - tip.lastIndexOf("_"))			
				switch(tip){
					case "parola"://parola
						sir_eroare += esteParola(vect_input[i].value,getNumeCamp(vect_input[i].name))
						break;
					case "parolaconfirma"://parola
						sir_eroare += esteParolaConfirma(vect_input[i].value,getNumeCamp(vect_input[i].name))
						break;					
				}//end switch
			break;
			default:
			break;
		}//end switch
	}
	
	
	var vect_text = ob.getElementsByTagName("textarea");
	var l = vect_text.length;
	for (i=0; i < l ;i++)
	{
	tip = vect_text[i].id;
//	tip = tip.charAt(tip.length-1);
	tip = tip.substr(tip.lastIndexOf("_")+1,tip.length - tip.lastIndexOf("_"))		
		switch (tip)
		{
			case "text":
				sir_eroare += esteGol(vect_text[i].value,getNumeCamp(vect_text[i].name))
				break;
			default:
				break;
		}//end switch
	}
	

	var vect_select = ob.getElementsByTagName("select");
	var l = vect_select.length;
	//interfera cu formularul de selectia a datei
//	l=0;	
	for (i=0; i < l ;i++){
		nume_camp = getNumeCamp(vect_select[i].name);
		switch (vect_select[i].value){
			case '***':
				sir_eroare += " - Campul "+nume_camp+" trebuie sa aiba o optiune aleasa\n";
				break;
			default:
				break;
		}//end switch
	}
	
	var vect_file = ob.getElementsByTagName("input");
	var l = vect_file.length;
	for (i=0; i < l ;i++){
		if (vect_file[i].type == "file")
		{
			sir_aux = vect_file[i].value;
			if (sir_aux){			
			
			sir_aux2 = sir_aux.substr(sir_aux.lastIndexOf('.')+1,sir_aux.length - sir_aux.lastIndexOf('.') - 1 )
			if (vect_file[i].name.lastIndexOf("poza") != -1 )
			{
				if ( sir_aux2 != "jpg" )
				sir_eroare = sir_eroare + " - Fisierul selectat la campul "+vect_file[i].name+" trebuie sa aibe extensia .jpg \n";	
			}
			if (vect_file[i].name.lastIndexOf("pdf") != -1 )
			{
				if ( sir_aux2 != "pdf" )
				sir_eroare = sir_eroare + " - Fisierul selectat la campul "+vect_file[i].name+" trebuie sa aibe extensia .pdf \n";
			}			
			
			}
		}
	}
	
	////////////////////////////////////////////// ptr admin utilizatori adauga
			if (document.getElementById('drept_cl1'))
			if ((document.getElementById('drept_cl1').checked == true)
					&&(document.getElementById('drept_fl1').checked == true)
					&&(document.getElementById('drept_sv1').checked == true)
					&&(document.getElementById('drept_lg1').checked == true)
					&&(document.getElementById('drept_ga1').checked == true))
				{
				sir_eroare = sir_eroare + " - Trebuie sa selectati cel putin un drept de acces. \n";	
				}
	
	
	//pt validarea parolei la administrare utilizatori
	if (document.getElementById('parola_noua'))
		{
			var par_noua = document.getElementById('parola_noua').value;
			
			if (par_noua == "criptata")
				{
					
				}
			
			else 
			{
			if (par_noua == "") 
				sir_eroare = sir_eroare + " - Campul Parola nu poate fi gol \n";
			else if (par_noua.length < 6) 
				sir_eroare = sir_eroare + " - Campul Parola trebuie sa contina minim 6 caractere\n"
			else if (!((par_noua.search(/[a-z]+/) > -1)
  					&& (par_noua.search(/[A-Z]+/) > -1)
  					&& (par_noua.search(/[0-9]+/) > -1))) 
					sir_eroare = sir_eroare + " - Campul Parola trebuie sa contina cel putin o litera mare, o litera mica si o cifra \n";
			}
			
			if (document.getElementById('parola_noua2').value != par_noua)
					sir_eroare = sir_eroare + " - Campul Confirmati parola  trebuie sa fie identic cu campul parola\n";	
			
		}
	
	
	
	//pt validarea platii %
	
	if (document.getElementById('platit_numericfarasemn2'))
		{
		var nr = document.getElementById('platit_numericfarasemn2').value;	
		var valoare=0;
		if (nr == "") 	
			{
			valoare =1;
			}
			
		var punct=0;
     	for (var i = 0; i < nr.length; i++) 
		{
            var ch = nr.charAt(i)
			if (ch == "." && punct==0){
				punct++
				continue
			}
            if (ch < "0" || ch > "9") 
				{
            	valoare = 2;
           		 }
		}//end for
 
		if ( (parseFloat(nr) < 0)|| (parseFloat(nr)>100) )
			{
			valoare = 3;	
			}
			
		if (valoare == 1)
				sir_eroare = sir_eroare + " - Campul 'Platit' nu poate fi gol \n";
		else if (valoare == 2)
				sir_eroare = sir_eroare + " - Campul 'Platit' trebuie sa fie un numar fara semn \n";
		else if (valoare ==3)
				sir_eroare = sir_eroare + " - Campul 'Platit' poate lua valori intre 0 si 100 \n";	
		}
	}
	//validare checked
	
	if (document.getElementById('casco'))
	{
		if ( 
			(document.getElementById('casco').checked == false) 
			&& (document.getElementById('rca').checked == false)
			&& (document.getElementById('locuinte_imobile').checked == false)
			&& (document.getElementById('bunuri').checked == false)
			&& (document.getElementById('calatorie').checked == false)
			&& (document.getElementById('altele').checked == false)
			&& (document.getElementById('pensii').checked == false)
			)
			sir_eroare = sir_eroare + " - Trebuie sa bifati macar un tip de asigurare. \n";	
	}
	
	
	///////////////////////////////////////////////anexe
	
	if ( sir_eroare == "Au fost gasite campuri invalide. Va rugam sa le corectati.\n\n")
	{
	return true;
	}
	else {
		alert(sir_eroare);
		return false;
	}


	if ( sir_eroare == "Au fost gasite campuri invalide. Va rugam sa le corectati.\n\n")
	{
	return true;
	}
	else {
		alert(sir_eroare);
		return false;
	}
}

