// JavaScript Document

// Funções AJAX

function GetXmlHttpObject()
{
	var xmlHttp=null;
	try
	{
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	}
	catch (e)
	{
		// Internet Explorer
		try
		{
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e)
		{
			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	return xmlHttp;
}

function ajaxAccountChangeStatus(id,status)
{
	xmlHttp=GetXmlHttpObject()
	if (xmlHttp==null) return false;
	var url="ajax_accountchangestatus.php";
	url=url+"?id="+id;
	url=url+"&status="+status;
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange=function()
	{
		if (xmlHttp.readyState==1)
		{
			document.getElementById("status").innerHTML='<img href="../imagens/icons/loader.gif" />';
		}
		else if (xmlHttp.readyState==4)
		{ 
			document.getElementById("status").innerHTML=xmlHttp.responseText;
		}
	}
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	return false;
}

function ajaxAccountSendConfirmation(id)
{
	xmlHttp=GetXmlHttpObject()
	if (xmlHttp==null) return false;
	var url="ajax_accountsendconfirmation.php";
	url=url+"?id="+id;
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange=function()
	{
		if (xmlHttp.readyState==1)
		{
			document.getElementById("status").innerHTML='<img href="../imagens/icons/loader.gif" />';
		}
		else if (xmlHttp.readyState==4)
		{ 
			document.getElementById("status").innerHTML=xmlHttp.responseText;
		}
	}
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	return false;
}

function ajaxAccountSendActivation(id)
{
	xmlHttp=GetXmlHttpObject()
	if (xmlHttp==null) return false;
	var url="ajax_accountsendactivation.php";
	url=url+"?id="+id;
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange=function()
	{
		if (xmlHttp.readyState==1)
		{
			document.getElementById("status").innerHTML='<img href="../imagens/icons/loader.gif" />';
		}
		else if (xmlHttp.readyState==4)
		{ 
			document.getElementById("status").innerHTML=xmlHttp.responseText;
		}
	}
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	return false;
}

// Outras funções

function isEmpty(aTextField) // Verifica se um campo de texto se encontra vazio
{
   if ((aTextField.value.length==0) || (aTextField.value==null)) {return true;}
   else { return false; }
}

function isValidEmail(str) // Verifica se o email é válido
{
	var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;

	if (filter.test(str))
		{ testresults=true; }
	else
		{ testresults=false; }

	return (testresults);
}

function validContact(formulario,lang)
{
	var valid=true;
	var alert_msg = "";

	switch(lang)
	{
		case "pt":
			name_alert = "Por favor, coloque o nome do contacto.\n";
			email_alert = "Por favor, coloque um email válido.\n";
			message_alert = "Por favor, coloque a sua mensagem.\n";
			break;
		case "nl":
			name_alert = "Please enter the contact name.\n";
			email_alert = "Please insert a valid e-mail address.\n";
			message_alert = "Please enter your message.\n";
			break;

		default:
			name_alert = "Please enter the contact name.\n";
			email_alert = "Please insert a valid e-mail address.\n";
			message_alert = "Please enter your message.\n";
	}

	with (formulario)
	{
		if (isEmpty(name)) { alert_msg += name_alert;  valid=false; }
		if (isEmpty(email) || !isValidEmail(email.value)) { alert_msg += email_alert;  valid=false; }
		if (isEmpty(message)) { alert_msg += message_alert;  valid=false; }
	}

	if (alert_msg != "") { alert (alert_msg); }
	return valid;
}



function validRegistration(formulario,lang)
{
	var valid=true;
	var alert_msg = "";

	switch(lang)
	{
		case "pt":
			vat_alert = "Por favor, coloque o número de contribuinte\n";
			contact_alert = "Por favor, coloque o nome do contacto.\n";
			address_alert = "Por favor, coloque a morada.\n";
			postalcode_alert = "Por favor, coloque o código-postal.\n";
			town_alert = "Por favor, coloque a cidade.\n";
			country_alert = "Por favor, coloque o país.\n";
			email_alert = "Por favor, coloque um email válido.\n";
			password_alert = "Por favor, coloque uma password.\n";
			password_alert2 = "Por favor, repita a password correctamente.\n";
			security_alert = "Por favor, coloque o código de segurança\n"
			break;
		case "nl":
			vat_alert = "Please enter the VAT number\n";
			contact_alert = "Please enter the contact name.\n";
			address_alert = "please enter the address.\n";
			postalcode_alert = "Please enter the postal code.\n";
			town_alert = "Please enter the town name.\n";
			country_alert = "Please enter a country name.\n";
			email_alert = "Please insert a valid e-mail address.\n";
			password_alert = "Please enter a password.\n";
			password_alert2 = "Please repeat the password correctly.\n";
			security_alert = "Please enter the security code.\n"
			break;
		default:
			vat_alert = "Please enter the VAT number\n";
			contact_alert = "Please enter the contact name.\n";
			address_alert = "please enter the address.\n";
			postalcode_alert = "Please enter the postal code.\n";
			town_alert = "Please enter the town name.\n";
			country_alert = "Please enter a country name.\n";
			email_alert = "Please insert a valid e-mail address.\n";
			password_alert = "Please enter a password.\n";
			password_alert2 = "Please repeat the password correctly.\n";
			security_alert = "Please enter the security code.\n";
	}

	with (formulario)
	{
		if (isEmpty(vatnumber)) { alert_msg += vat_alert;  valid=false; }
		if (isEmpty(contactname)) { alert_msg += contact_alert;  valid=false; }
		if (isEmpty(address)) { alert_msg += address_alert;  valid=false; }
		if (isEmpty(postalcode)) { alert_msg += postalcode_alert;  valid=false; }
		if (isEmpty(town)) { alert_msg += town_alert;  valid=false; }
		if (isEmpty(country)) { alert_msg += country_alert;  valid=false; }
		if (isEmpty(email) || !isValidEmail(email.value)) { alert_msg += email_alert;  valid=false; }
		if (isEmpty(password)) { alert_msg += password_alert;  valid=false; }
		if (password.value != password2.value) { alert_msg += password_alert2;  valid=false; }
		if (isEmpty(security_code)) { alert_msg += security_alert;  valid=false; }
	}

	if (alert_msg != "") { alert (alert_msg); }
	return valid;
}

function validLogin(formulario,lang)
{
	var valid=true;
	var alert_msg = "";

	switch(lang)
	{
		case "pt":
			username_alert = "Introduza o seu login.\n";
			password_alert = "Introduza a sua password.\n";
			break;
		case "nl":
			username_alert = "Please enter your login.\n";
			password_alert = "Please enter your password.\n";
			break;
		default:
			username_alert = "Please enter your login.\n";
			password_alert = "Please enter your password.\n";
	}

	with (formulario)
	{
		if (isEmpty(login) || login.value==login.defaultValue) { alert_msg += username_alert;  valid=false; }
		if (isEmpty(password) || password.value==password.defaultValue) { alert_msg += password_alert;  valid=false; }
	}

	if (alert_msg != "") { alert (alert_msg); }
	return valid;
}

function validPasswordChange(formulario,lang)
{
	var valid=true;
	var alert_msg = "";

	switch(lang)
	{
		case "pt":
			password_alert = "Por favor, coloque uma nova password.\n";
			password_alert2 = "Por favor, repita a nova password correctamente.\n";
			security_alert = "Por favor, coloque o código de segurança\n";
			break;
		case "nl":
			password_alert = "Please enter a new password.\n";
			password_alert2 = "Please repeat the new password correctly.\n";
			security_alert = "Please enter the security code.\n";
			break;
		default:
			password_alert = "Please enter a new password.\n";
			password_alert2 = "Please repeat the new password correctly.\n";
			security_alert = "Please enter the security code.\n";
	}

	with (formulario)
	{
		if (isEmpty(password)) { alert_msg += password_alert;  valid=false; }
		if (password.value != password2.value) { alert_msg += password_alert2;  valid=false; }
		if (isEmpty(security_code)) { alert_msg += security_alert;  valid=false; }
	}

	if (alert_msg != "") { alert (alert_msg); }
	return valid;
}

function validPasswordRecover(formulario,lang)
{
	var valid=true;
	var alert_msg = "";

	switch(lang)
	{
		case "pt":
			email_alert = "Por favor, coloque o seu endereço de e-mail correctamente.\n";
			security_alert = "Por favor, coloque o código de segurança\n";
			break;
		case "nl":
			email_alert = "Please enter your e-mail address correcly.\n";
			security_alert = "Please enter the security code.\n";
			break;
		default:
			email_alert = "Please enter your e-mail address correcly.\n";
			security_alert = "Please enter the security code.\n";
	}

	with (formulario)
	{
		if (isEmpty(email) || !isValidEmail(email.value)) { alert_msg += email_alert;  valid=false; }
		if (isEmpty(security_code)) { alert_msg += security_alert;  valid=false; }
	}

	if (alert_msg != "") { alert (alert_msg); }
	return valid;
}


function validAdminLogin(formulario,lang)
{
	var valid=true;
	var alert_msg = "";

	switch(lang)
	{
		case "pt":
			username_alert = "Por favor, coloque o seu nome de utilizador.\n";
			password_alert = "Por favor, coloque a sua password.\n";
			break;
		case "nl":
			username_alert = "Please enter your username.\n";
			password_alert = "Please enter your password.\n";
			break;
		default:
			username_alert = "Please enter your username.\n";
			password_alert = "Please enter your password.\n";
	}

	with (formulario)
	{
		if (isEmpty(username)) { alert_msg += username_alert;  valid=false; }
		if (isEmpty(password)) { alert_msg += password_alert;  valid=false; }
	}

	if (alert_msg != "") { alert (alert_msg); }
	return valid;
}

function validClientEdition(formulario,lang)
{
	var valid=true;
	var alert_msg = "";

	switch(lang)
	{
		case "pt":
			company_alert = "Por favor, coloque o nome da empresa.\n";
			vat_alert = "Por favor, coloque o número de contribuinte\n";
			contact_alert = "Por favor, coloque o nome do contacto.\n";
			address_alert = "Por favor, coloque a morada.\n";
			postalcode_alert = "Por favor, coloque o código-postal.\n";
			town_alert = "Por favor, coloque a cidade.\n";
			country_alert = "Por favor, coloque o país.\n";
			email_alert = "Por favor, coloque um email válido.\n";
			break;
		case "nl":
			company_alert = "Please enter the company name.\n";
			vat_alert = "Please enter the VAT number\n";
			contact_alert = "Please enter the contact name.\n";
			address_alert = "please enter the address.\n";
			postalcode_alert = "Please enter the postal code.\n";
			town_alert = "Please enter the town name.\n";
			country_alert = "Please enter a country name.\n";
			email_alert = "Please insert a valid e-mail address.\n";
			break;
		default:
			company_alert = "Please enter the company name.\n";
			vat_alert = "Please enter the VAT number\n";
			contact_alert = "Please enter the contact name.\n";
			address_alert = "please enter the address.\n";
			postalcode_alert = "Please enter the postal code.\n";
			town_alert = "Please enter the town name.\n";
			country_alert = "Please enter a country name.\n";
			email_alert = "Please insert a valid e-mail address.\n";
	}

	with (formulario)
	{
		if (isEmpty(companyname)) { alert_msg += company_alert;  valid=false; }
		if (isEmpty(vatnumber)) { alert_msg += vat_alert;  valid=false; }
		if (isEmpty(contactname)) { alert_msg += contact_alert;  valid=false; }
		if (isEmpty(address)) { alert_msg += address_alert;  valid=false; }
		if (isEmpty(postalcode)) { alert_msg += postalcode_alert;  valid=false; }
		if (isEmpty(town)) { alert_msg += town_alert;  valid=false; }
		if (isEmpty(country)) { alert_msg += country_alert;  valid=false; }
		//if (isEmpty(email) || !isValidEmail(email.value)) { alert_msg += email_alert;  valid=false; }
	}

	if (alert_msg != "") { alert (alert_msg); }
	return valid;
}

function validJobs(formulario,lang)
{
	var valid=true;
	var alert_msg = "";

	switch(lang)
	{
		case "pt":
			name_alert = "Por favor, coloque o nome do contacto.\n";
			email_alert = "Por favor, coloque um email válido.\n";
			attachment_alert = "Por favor, anexe o seu Curriculum Vitae.\n";
			break;
		case "nl":
			name_alert = "Please enter the contact name.\n";
			email_alert = "Please insert a valid e-mail address.\n";
			attachment_alert = "Please enter your message.\n";
			break;

		default:
			name_alert = "Please enter the contact name.\n";
			email_alert = "Please insert a valid e-mail address.\n";
			attachment_alert = "Please enter your message.\n";
	}

	with (formulario)
	{
		if (isEmpty(name)) { alert_msg += name_alert;  valid=false; }
		if (isEmpty(email) || !isValidEmail(email.value)) { alert_msg += email_alert;  valid=false; }
		if (isEmpty(attachment)) { alert_msg += attachment_alert;  valid=false; }
	}

	if (alert_msg != "") { alert (alert_msg); }
	return valid;
}
