function toggle( targetId ){
	if (document.getElementById){
		target = document.getElementById( targetId );
		if (target.style.display == "block"){
			target.style.display = "none";
		}
		else {
			target.style.display = "block";
		}
	}
}

function put_address(i)
{
	document.getElementById('address').value = document.getElementById('address_' + i).innerHTML;
	document.getElementById('zipcode').value = document.getElementById('zipcode_' + i).innerHTML;
	document.getElementById('city').value = document.getElementById('city_' + i).innerHTML;
	document.getElementById('state').value = document.getElementById('state_' + i).innerHTML;
	document.getElementById('telephone').value = document.getElementById('telephone_' + i).innerHTML;
	document.getElementById('fax').value = document.getElementById('fax_' + i).innerHTML;
	
	document.getElementById('current_address').value = i;
	document.getElementById('edit_address').value = "Actualizeaza";
	document.getElementById('address_edit').style.display = '';
}

function reset_address()
{
	document.getElementById('address').value = '';
	document.getElementById('zipcode').value = '';
	document.getElementById('city').value = '';
	document.getElementById('state').value = '';
	document.getElementById('telephone').value = '';
	document.getElementById('fax').value = '';

	document.getElementById('current_address').value = '0';
	document.getElementById('edit_address').value = "Adauga adresa";
	document.getElementById('address_edit').style.display = 'none';	
}

function add_address()
{
	reset_address();
	
	document.getElementById('address_edit').style.display = '';	
	document.getElementById('address').focus();
}

function put_company(i)
{
	document.getElementById('name').value = document.getElementById('name_' + i).innerHTML;
	document.getElementById('code').value = document.getElementById('code_' + i).innerHTML;
	document.getElementById('registration').value = document.getElementById('registration_' + i).innerHTML;
	document.getElementById('bankaccount').value = document.getElementById('bankaccount_' + i).innerHTML;
	document.getElementById('bank').value = document.getElementById('bank_' + i).innerHTML;
	
	document.getElementById('current_company').value = i;
	document.getElementById('edit_company').value = "Actualizeaza";
	document.getElementById('company_edit').style.display = '';
}

function reset_company()
{
	document.getElementById('name').value = '';
	document.getElementById('code').value = '';
	document.getElementById('registration').value = '';
	document.getElementById('bankaccount').value = '';
	document.getElementById('bank').value = '';

	document.getElementById('current_company').value = '0';
	document.getElementById('edit_company').value = "Adauga firma";
	document.getElementById('company_edit').style.display = 'none';	
}

function add_company()
{
	reset_company();
	
	document.getElementById('company_edit').style.display = '';	
	document.getElementById('name').focus();
}

/* Verificare input
*****************************************************************/

function checkValid(id, msg, regula) {
	var prefix = "* ";
	var suffix = "\n";
	
	
	switch(regula) {
		case 'required':
						if (document.getElementById(id).value=="")
							return prefix+msg+suffix;
						break;
		case 'select':
						if (document.getElementById(id).options[document.getElementById(id).selectedIndex].value=="")
							return prefix+msg+suffix;
						break;
		case 'numeric':
						var validch = "0123456789.";
						var isNumber=true;
						var ch;
						var val = document.getElementById(id).value;
						
						for (i=0; i<val.length && isNumber == true; i++) { 
							ch = val.charAt(i); 
							if (validch.indexOf(ch) == -1) 								
								return prefix+msg+suffix;
						}
						break;
		case 'email':
						var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
						if (!filter.test(document.getElementById(id).value))
							return prefix+msg+suffix;
						break;
		case 'integer':
						var filter=/^\d{0,9}$/;
						if (!filter.test(document.getElementById(id).value))
							return prefix+msg+suffix;
						break;
		case 'limitpercent':
						if (document.getElementById(id).value<0 || document.getElementById(id).value>100)
							return prefix+msg+suffix;
						break;
	}
	return "";
}

function checkIdentical(id1, id2, msg) {

	var prefix = "* ";
	var suffix = "\n";

	if (document.getElementById(id1).value != document.getElementById(id2).value)
	return prefix+msg+suffix
	else
	return ''

}

function checkLength(id, min, max, msg) {

	var prefix = "* ";
	var suffix = "\n";

	if (document.getElementById(id).value.length < min || document.getElementById(id).value.length > max )
	return prefix+msg+suffix
	else
	return ''

}

function checkRadio(form_name,radio_name,msg)
{
	
	var radio_choice = false;	
	var prefix = "* ";
	var suffix = "\n";
	radio_obj = eval('document.'+form_name+'.'+radio_name);
	
	if (radio_obj.checked) {
		radio_choice = true; 	
	} else {	
		for (counter = 0; counter < radio_obj.length; counter++)
		{
			
			if (radio_obj[counter].checked) {
				radio_choice = true; 
				break;
			}
		}
	}
	
	if (!radio_choice) {
		return prefix+msg+suffix;
	}
	    return '';
}

function verificaFormular(which) {
	msg_alert = "Datele nu au fost completate corect. \n";
	msg_alert += "Va rugam corectati erorile si incercati din nou:\n";
	msg_alert += "------------------------------------------------------------------\n";
	msg_alert += "\n";
	switch(which) {
		case "editeaza_adresa":
					msg = "";
					msg += checkValid("address", "Trebuie sa specificati adresa dumneavoastra", "required");
					msg += checkValid("city", "Trebuie sa specificati orasul dumneavoastra", "required");
					msg += checkValid("city", "Trebuie sa specificati judetul sau sectorul dumneavoastra", "required");
					msg += checkValid("telephone", "Trebuie sa specificati telefonul dumneavoastra", "required");
					msg += checkValid("telephone", "Telefonul trebuie sa contina doar numere", "numeric");
					break;
		case "detalii_cont":
					msg = "";
					msg += checkValid("firstname", "Trebuie sa specificati prenumele dumneavoastra", "required");
					msg += checkValid("lastname", "Trebuie sa specificati numele dumneavoastra", "required");
					msg += checkValid("telephone1", "Trebuie sa specificati telefonul dumneavoastra", "required");
					msg += checkValid("telephone1", "Telefonul trebuie sa contina doar numere", "numeric");
					break;
	}
	if (msg!="") {
		alert(msg_alert+msg);
		return false;
	}
	return true;
}
