function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g, "");
}

function hasWhiteSpace(s) {
	reWhiteSpace = new RegExp(/\s/);
	if (reWhiteSpace.test(s)) {
		testresults = true;
	}else{
		testresults = false;
	}
	return (testresults);
} 

function isEmailAddr(email){
	var str = email
	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 submitFormJobs(){
	
	go = '';
	document.getElementById('nome').innerHTML="";
	document.getElementById('email').innerHTML="";
	document.getElementById('file').innerHTML="";
	
	
	if (document.getElementById('frmName').value == ''){
		document.getElementById('nome').innerHTML="*";
		go = 1;
	}
	
	if (document.getElementById('frmEmail').value == '' || !isEmailAddr(document.getElementById('frmEmail').value)){
		document.getElementById('email').innerHTML="*";
		go = 1;
	}
	
	
	if (go == ''){
		return true;
	}else{
		document.getElementById('msgalerta').innerHTML="Têm que ser preenchidos todos os campos assinalados com (*).";
		return false;
	}
}

function submitFormJobMail(){
	msg = "Por favor reveja os seguinte(s) campo(s):\n\n";
	if(document.getElementById('name').value == '')
		msg += "O seu nome\n";
	
	if(document.getElementById('emailSender').value == '' || !isEmailAddr(document.getElementById('emailSender').value))
		msg += "O seu e-mail\n";
		
	if(document.getElementById('emailTo').value == '' || !isEmailAddr(document.getElementById('emailTo').value))
		msg += "Destinatário\n";
	
	if(msg != "Por favor reveja os seguinte(s) campo(s):\n\n"){
		alert(msg);
		return false;
	}
	return true;
}

function submitPoll(form){
	
	msg = "Por favor escolha uma das opções de resposta!";
	if(form["answer[]"].length == null){
		alert(msg);
		return false;
	}else{
		for (i = 0; i < form["answer[]"].length; i++)
			if(form["answer[]"][i].checked == true)
				return true;
	}
	
	alert(msg);
	return false;
}

function submitFormOpiniao(){
	
	go = '';
	document.getElementById('nome').innerHTML="";
	document.getElementById('email').innerHTML="";
	document.getElementById('assunto').innerHTML="";
	document.getElementById('msg').innerHTML="";
	
	
	if (document.getElementById('frmName').value == ''){
		document.getElementById('nome').innerHTML="*";
		go = 1;
	}
	
	if (document.getElementById('frmEmail').value == '' || !isEmailAddr(document.getElementById('frmEmail').value)){
		document.getElementById('email').innerHTML="*";
		go = 1;
	}
	
	if (document.getElementById('frmSubject').value == ''){
		document.getElementById('assunto').innerHTML="*";
		go = 1;
	}
	
	if (document.getElementById('frmMessage').value == ''){
		document.getElementById('msg').innerHTML="*";
		go = 1;
	}
	
	if (go == ''){
		return true;
	}else{
		document.getElementById('msgalerta').innerHTML="Têm que ser preenchidos todos os campos assinalados com (*).";
		return false;
	}
}


function submitFormComment(){
	
	go = '';
	document.getElementById('nome').innerHTML="";
	document.getElementById('email').innerHTML="";
	document.getElementById('assunto').innerHTML="";
	document.getElementById('msg').innerHTML="";
	
	
	if (document.getElementById('frmName').value == ''){
		document.getElementById('nome').innerHTML="*";
		go = 1;
	}
	
	if (document.getElementById('frmEmail').value == '' || !isEmailAddr(document.getElementById('frmEmail').value)){
		document.getElementById('email').innerHTML="*";
		go = 1;
	}
	
	if (document.getElementById('frmSubject').value == ''){
		document.getElementById('assunto').innerHTML="*";
		go = 1;
	}
	
	if (document.getElementById('frmMessage').value == ''){
		document.getElementById('msg').innerHTML="*";
		go = 1;
	}
	
	if (go == ''){
		return true;
	}else{
		document.getElementById('msgalerta').innerHTML="* Mandatory fields.";
		return false;
	}
}

function submitFormContactos(){
	
	go = '';
	document.getElementById('nome').innerHTML="";
	document.getElementById('email').innerHTML="";
	document.getElementById('assunto').innerHTML="";
	document.getElementById('msg').innerHTML="";
	
	
	if (document.getElementById('frmName').value == ''){
		document.getElementById('nome').innerHTML="*";
		go = 1;
	}
	
	if (document.getElementById('frmEmail').value == '' || !isEmailAddr(document.getElementById('frmEmail').value)){
		document.getElementById('email').innerHTML="*";
		go = 1;
	}
	
	if (document.getElementById('frmAssunto').value == ''){
		document.getElementById('assunto').innerHTML="*";
		go = 1;
	}
	
	if (document.getElementById('frmMessage').value == ''){
		document.getElementById('msg').innerHTML="*";
		go = 1;
	}
	
	if (go == ''){
		return true;
	}else{
		document.getElementById('msgalerta').innerHTML="Têm que ser preenchidos todos os campos assinalados com (*).";
		return false;
	}
}


function validateLogin( what ){
	
	go = '';
	document.getElementById('username').innerHTML="";
	document.getElementById('password').innerHTML="";
	
	
	if (document.getElementById('frmUsername').value == ''){
		document.getElementById('username').innerHTML="*";
		go = 1;
	}else if(!isEmailAddr(document.getElementById('frmUsername').value)){
		document.getElementById('username').innerHTML="*";
		//document.getElementById('msgalerta').innerHTML="E-mail invalido";
		go = 2;
	}
	
	if (what == 'both') {
	
		if (document.getElementById('frmPassword').value == '') {
			document.getElementById('password').innerHTML = "*";
			go = 1;
		}
	}
	
	if (go == ''){
		return true;
	}else{
		if (go == 2) {
			document.getElementById('msgalerta').innerHTML = "Username inválido (email)";
		}else{
			document.getElementById('msgalerta').innerHTML = "Todos os campos assinalados com (*), têm de ser correctamente preenchidos.";			
		}
		return false;
	}
}

function validateChangeData(){
	
	document.getElementById('name').innerHTML="";
	document.getElementById('username').innerHTML="";
	document.getElementById('password').innerHTML="";	
	document.getElementById('phone').innerHTML="";
	document.getElementById('repassword').innerHTML="";
	document.getElementById('newpassword').innerHTML="";
	
	goState = 1;
	
	if (document.getElementById('frmName').value == ''){
		document.getElementById('name').innerHTML="*";
		goState = -1;
	}
	
	if(!isEmailAddr(document.getElementById('frmUsername').value)){
		document.getElementById('username').innerHTML="*";
		goState = -1;
	}
	
	newPassword = document.getElementById('frmNewPassword').value;
	rePassword = document.getElementById('frmRePassword').value; 
	
	if(newPassword != '' && rePassword == ''){
		document.getElementById('newpassword').innerHTML="*";
		document.getElementById('repassword').innerHTML="*";
		document.getElementById('password').innerHTML="*";
		goState = -1;
	}
	else if(newPassword != '' && (newPassword != rePassword)){
		document.getElementById('newpassword').innerHTML="*";
		document.getElementById('repassword').innerHTML="*";
		if(document.getElementById('frmPassword').value == '')
			document.getElementById('password').innerHTML="*";
		goState = -2;
	}
	
	if (goState == 1){
		return true;
	}else{
		if (goState == -1) {
			document.getElementById('msgalerta').innerHTML = "Para alterar correctamente os seus dados, todos os campos assinalados com (*) têm de ser preenchidos.";	
		} 
		else if (goState == -2){
			document.getElementById('msgalerta').innerHTML = "Para alterar correctamente a password, os campos com (*) têm de ser correctamente preenchidos (incluindo a repetição).";	
		}
		return false;
	}
}

function checkRegistration(){
	
	var ok = true;
	
	if (document.getElementById('frmCategory').value != 4 && document.getElementById('frmCategory').value != 5){
		ok = false;
	}
	
	if (trim(document.getElementById('frmName').value) == ''){
		ok = false;
	}
	
	if (trim(document.getElementById('frmNIF').value) == ''){
		ok = false;
	}
	
	if (trim(document.getElementById('frmEmail').value) == '' || !isEmailAddr(document.getElementById('frmEmail').value) ){
		ok = false;
	}
	
	if (trim(document.getElementById('frmPassword').value) == ''){
		ok = false;
	}
	
	if (trim(document.getElementById('frmPhone').value) == ''){
		ok = false;
	}
	
	if (trim(document.getElementById('frmAddress').value) == ''){
		ok = false;
	}
	
	if (document.getElementById('frmCategory').value == 5 && trim(document.getElementById('frmNomeResponsavel').value) == ''){
		ok = false;
	}
	
	if (document.getElementById('frmCategory').value == 5 && (trim(document.getElementById('frmEmailResponsavel').value) == '' || !isEmailAddr(document.getElementById('frmEmailResponsavel').value)) ){
		ok = false;
	}
	
	
	
	return ok;
	
}