function validaForm() {
	// Nome da form em notação mais simples ;)
	d = document.registo;

	//validar nome
	if (d.nome_registo.value == ""){
		alert("O campo Nome deve ser preenchido!");
		d.nome_registo.focus();
		return false;
	}
	//validar user
	if (d.user.value == ""){
		alert("O campo Username deve ser preenchido!");
		d.user.focus();
		return false;
	}
	//validar senha
	if (d.senha.value == ""){
		alert("O campo Password deve ser preenchido!");
		d.senha.focus();
		return false;
	}
	/*
	if (d.dia.value === "DD"){
		alert("O campo Dia de nascimento deve ser preenchido!");
		d.dia.focus();
		return false;
	}
	if (d.dia.value === ""){
		alert("O campo Dia de nascimento deve ser preenchido!");
		d.dia.focus();
		return false;
	}
	if (d.dia.value >= 32) {
		alert("O dia de nascimento tem que estar entre 1 e 31!");
		d.dia.focus();
		return false;
	}
	if (d.mes.value === "MM"){
		alert("O campo mês de nascimento deve ser preenchido!");
		d.mes.focus();
		return false;
	}
	if (d.mes.value === "") {
		alert("O campo mês de nascimento deve ser preenchido!");
		d.mes.focus();
		return false;
	}
	if (d.mes.value >= 13) {
		alert("O mês tem que estar entre 1 e 12!");
		d.mes.focus();
		return false;
	}
	if (d.ano.value === "AAAA") {
		alert("O ano de nascimento deve ser preenchido!");
		d.ano.focus();
		return false;
	}
	if (d.ano.value === "") {
		alert("O ano de nascimento deve ser preenchido!");
		d.ano.focus();
		return false;
	}
	*/
	//validar email
	if (d.email.value == ""){
		alert("O campo E-mail deve ser preenchido!");
		d.email.focus();
		return false;
	}
	//validar email(verificao de endereco eletronico)
	parte1 = d.email.value.indexOf("@");
	parte2 = d.email.value.indexOf(".");
	parte3 = d.email.value.length;
	if (!(parte1 >= 3 && parte2 >= 0 && parte3 >= 9)) {
		alert("O campo E-mail deve ser conter um endereco eletronico!");
		d.email.focus();
		return false;
	}
	//validar telefone
	if (d.telefone.value == ""){
		alert("O campo telefone deve ser preenchido!");
		d.telefone.focus();
		return false;
	}
	//validar telefone(verificacao se contem apenas numeros)
	if (isNaN(d.telefone.value)){
		alert("O campo telefone deve conter apenas numeros!");
		d.telefone.focus();
		return false;
	}
	if (!d.gravida[0].checked && !d.gravida[1].checked) {
		alert("O campo 'Está grávida' deve estar preenchido com uma das opções") ;
		d.gravida.focus();
		return false;
	}
	if (d.gravida[0].checked) {
		if (d.dia_parto.value != "" && isNaN(d.dia_parto.value)) {
			alert("A data prevista do parto deve conter apenas numeros!");
			d.dia_parto.focus();
			return false;
		}
		if (d.dia_parto.value >= "32" || d.dia_parto.value <= "0") {
			alert("O dia tem que estar entre 1 e 31!");
			d.dia_parto.focus();
			return false;
		}
		if (d.mes_parto.value != "" && isNaN(d.mes_parto.value)) {
			alert("A data prevista do parto deve conter apenas numeros!");
			d.mes_parto.focus();
			return false;
		}
		if (d.mes_parto.value >= "13" || d.mes_parto.value <= "0") {
			alert("O mês tem que estar entre 1 e 12!");
			d.mes_parto.focus();
			return false;
		}
		if (d.ano_parto.value != "" && isNaN(d.ano_parto.value)) {
			alert("A data prevista do parto deve conter apenas numeros!");
			d.ano_parto.focus();
			return false;
		}
	}
		/*
		if (d.idade1.value != "")
		{
			if (isNaN(d.idade1.value))
			{
			alert("A idade dos seus filhos está incorrecta!");
			d.idade1.focus();
			return false;
			}
		}
		if (d.idade2.value != "")
		{
			if (isNaN(d.idade2.value))
			{
			alert("A idade dos seus filhos está incorrecta!");
			d.idade2.focus();
			return false;
			}
		}
		if (d.idade3.value != "")
		{
			if (isNaN(d.idade3.value))
			{
			alert("A idade dos seus filhos está incorrecta!");
			d.idade3.focus();
			return false;
			}
		}
		if (d.idade4.value != "")
		{
			if (isNaN(d.idade4.value))
			{
			alert("A idade dos seus filhos está incorrecta!");
			d.idade4.focus();
			return false;
			}
		}
		if (d.idade5.value != "")
		{
			if (isNaN(d.idade5.value))
			{
			alert("A idade dos seus filhos está incorrecta!");
			d.idade5.focus();
			return false;
			}
		}
		if (!(d.termos.checked)){
			alert("Tem que aceitar os termos de utilização e privacidade!");
			d.termos.focus();
			return false;
		}
		*/
		return true;
}

function validaForm_altera(){
		//validar nome
		d = document.registo;
		if (d.nome_registo.value == ""){
			alert("O campo Nome deve ser preenchido!");
			d.nome_registo.focus();
			return false;
		}
		//validar user
		if (d.user.value == ""){
			alert("O campo " + d.user.name + " deve ser preenchido!");
			d.user.focus();
			return false;
		}
		/*
		if (d.dia.value != "")
		{
			if (isNaN(d.dia.value))
			{
			alert("A data de nascimento deve conter apenas numeros!");
			d.dia.focus();
			return false;
			}
		}
		if (d.mes.value != "")
		{
			if (isNaN(d.mes.value))
			{
			alert("A data de nascimento deve conter apenas numeros!");
			d.mes.focus();
			return false;
			}
		}
		if (d.ano.value != "")
		{
			if (isNaN(d.ano.value))
			{
			alert("A data de nascimento deve conter apenas numeros!");
			d.ano.focus();
			return false;
			}
		}
		*/
		//validar email
		if (d.email.value == ""){
			alert("O campo " + d.email.name + " deve ser preenchido!");
			d.email.focus();
			return false;
		}
		//validar email(verificao de endereco eletronico)
		parte1 = d.email.value.indexOf("@");
		parte2 = d.email.value.indexOf(".");
		parte3 = d.email.value.length;
		if (!(parte1 >= 3 && parte2 >= 0 && parte3 >= 9)) {
		//if (!(parte1 >= 3 && (parte2 >= 6 && parte3 >= 9)) {
			alert("O campo " + d.email.name + " deve ser conter um endereco eletronico!");
			d.email.focus();
			return false;
		}
		//validar telefone
		if (d.telefone.value == ""){
			alert("O campo " + d.telefone.name + " deve ser preenchido!");
			d.telefone.focus();
			return false;
		}
		//validar telefone(verificacao se contem apenas numeros)
		if (isNaN(d.telefone.value)){
			alert("O campo " + d.telefone.name + " deve conter apenas numeros!");
			d.telefone.focus();
			return false;
		}
		if (d.dia_parto.value != "")
		{
			if (isNaN(d.dia_parto.value))
			{
			alert("A data prevista do parto deve conter apenas numeros!");
			d.dia_parto.focus();
			return false;
			}
		}
		if (d.mes_parto.value != "")
		{
			if (isNaN(d.mes_parto.value))
			{
			alert("A data prevista do parto deve conter apenas numeros!");
			d.mes_parto.focus();
			return false;
			}
		}
		if (d.ano_parto.value != "")
		{
			if (isNaN(d.ano_parto.value))
			{
			alert("A data prevista do parto deve conter apenas numeros!");
			d.ano_parto.focus();
			return false;
			}
		}
		/*
		if (d.idade1.value != "")
		{
			if (isNaN(d.idade1.value))
			{
			alert("A idade dos seus filhos está incorrecta!");
			d.idade1.focus();
			return false;
			}
		}
		if (d.idade2.value != "")
		{
			if (isNaN(d.idade2.value))
			{
			alert("A idade dos seus filhos está incorrecta!");
			d.idade2.focus();
			return false;
			}
		}
		if (d.idade3.value != "")
		{
			if (isNaN(d.idade3.value))
			{
			alert("A idade dos seus filhos está incorrecta!");
			d.idade3.focus();
			return false;
			}
		}
		if (d.idade4.value != "")
		{
			if (isNaN(d.idade4.value))
			{
			alert("A idade dos seus filhos está incorrecta!");
			d.idade4.focus();
			return false;
			}
		}
		if (d.idade5.value != "")
		{
			if (isNaN(d.idade5.value))
			{
			alert("A idade dos seus filhos está incorrecta!");
			d.idade5.focus();
			return false;
			}
		}
		if (!(d.termos.checked)){
			alert("Tem que aceitar os termos de utilização e privacidade!");
			d.termos.focus();
			return false;
		}
		*/
		return true;
	}

function validaForm_artigo(){
		//validar Titulo Artigo
		d = document.form_artigo;
		if (d.titulo.value === ""){
			alert("O campo " + d.titulo.name + " deve ser preenchido!");
			d.titulo.focus();
			return false;
		}
		//validar Corpo Artigo
		if (d.conteudo.value === ""){
			alert("O campo " + d.conteudo.name + " deve ser preenchido!");
			d.conteudo.focus();
			return false;
		}
		if (d.categoria.value === ""){
			alert("O campo " + d.categoria.name + " deve ser preenchido!");
			d.categoria.focus();
			return false;
		}
		return true;
	}
	

function validaForm_inscricao_gravida(){
		//validar Titulo Artigo
		d = document.formulario_inscricao;
		if (d.nome_inscricao.value === ""){
			alert("O campo Nome deve ser preenchido!");
			d.nome_inscricao.focus();
			return false;
		}
		//validar Corpo Artigo
		if (d.apelido.value === ""){
			alert("O campo " + d.apelido.name + " deve ser preenchido!");
			d.apelido.focus();
			return false;
		}
		if (d.dia_parto.value === "DD"){
			alert("O campo Dia do Parto deve ser preenchido!");
			d.dia_parto.focus();
			return false;
		}
		if (d.dia_parto.value === ""){
			alert("O campo Dia do Parto deve ser preenchido!");
			d.dia_parto.focus();
			return false;
		}
		if (d.dia_parto.value >= 32)
		{
			alert("O dia tem que estar entre 1 e 31!");
			d.dia_parto.focus();
			return false;
		}
		if(d.dia_parto.value < 1)
		{
			alert("O dia tem que estar entre 1 e 31!");
			d.dia_parto.focus();
			return false;
		}
		if (d.mes_parto.value === "MM"){
			alert("O campo Mês do Parto deve ser preenchido!");
			d.mes_parto.focus();
			return false;
		}
		if (d.mes_parto.value === ""){
			alert("O campo Mês do Parto deve ser preenchido!");
			d.mes_parto.focus();
			return false;
		}
		if (d.mes_parto.value >= 13)
		{
			alert("O mes tem que estar entre 1 e 12!");
			d.mes_parto.focus();
			return false;
		}
		if (d.ano_parto.value === "AAAA"){
			alert("O campo Ano do Parto deve ser preenchido!");
			d.ano_parto.focus();
			return false;
		}
		if (d.ano_parto.value === ""){
			alert("O campo Ano do Parto deve ser preenchido!");
			d.ano_parto.focus();
			return false;
		}
		if (d.ano_parto.value < "2010"){
			alert("O Ano de Parto deve ser superior a 2010!");
			d.ano_parto.focus();
			return false;
		}
		if (d.email.value === ""){
			alert("O campo " + d.email.name + " deve ser preenchido!");
			d.email.focus();
			return false;
		}
		parte1 = d.email.value.indexOf("@");
		parte2 = d.email.value.indexOf(".");
		parte3 = d.email.value.length;
		if (!(parte1 >= 3 && parte2 >= 0 && parte3 >= 9)) {
			alert("O campo " + d.email.name + " deve ser conter um endereco eletronico!");
			d.email.focus();
			return false;
		}
		if (d.telemovel.value === ""){
			alert("O campo " + d.telemovel.name + " deve ser preenchido!");
			d.telemovel.focus();
			return false;
		}
		if (isNaN(d.telemovel.value)){
			alert("O campo " + d.telemovel.name + " deve conter apenas numeros!");
			d.telemovel.focus();
			return false;
		}
		if (d.profissao.value === "0"){
			alert("O campo " + d.profissao.name + " deve ser preenchido!");
			d.profissao.focus();
			return false;
		}
		if (d.acompanha_pai.value === "1"){
			if (d.nome_pai.value === ""){
				alert("Deve indicar o nome do Pai!");
				d.nome_pai.focus();
				return false;
			}
		}
		return true;
}

function validaForm_inscricao_nao_gravida(){
		//validar Titulo Artigo
		d = document.formulario_inscricao;
		if (d.nome_inscricao.value === ""){
			alert("O campo Nome deve ser preenchido!");
			d.nome_inscricao.focus();
			return false;
		}
		//validar Corpo Artigo
		if (d.apelido.value === ""){
			alert("O campo " + d.apelido.name + " deve ser preenchido!");
			d.apelido.focus();
			return false;
		}
		if (d.email.value === ""){
			alert("O campo " + d.email.name + " deve ser preenchido!");
			d.email.focus();
			return false;
		}
		parte1 = d.email.value.indexOf("@");
		parte2 = d.email.value.indexOf(".");
		parte3 = d.email.value.length;
		if (!(parte1 >= 3 && parte2 >= 0 && parte3 >= 9)) {
			alert("O campo " + d.email.name + " deve ser conter um endereco eletronico!");
			d.email.focus();
			return false;
		}
		if (d.telemovel.value === ""){
			alert("O campo " + d.telemovel.name + " deve ser preenchido!");
			d.telemovel.focus();
			return false;
		}
		if (isNaN(d.telemovel.value)){
			alert("O campo " + d.telemovel.name + " deve conter apenas numeros!");
			d.telemovel.focus();
			return false;
		}
		if (d.profissao.value === "0"){
			alert("O campo " + d.profissao.name + " deve ser preenchido!");
			d.profissao.focus();
			return false;
		}
		if (d.instituicao.value === ""){
			alert("O campo " + d.instituicao.name + " deve ser preenchido!");
			d.instituicao.focus();
			return false;
		}
		if (d.leva_alguem.value === "1"){
			if (d.acompanhantes.value === ""){
				alert("Deve definir o número de acompanhantes!");
				d.acompanhantes.focus();
				return false;
			}
		}
		return true;
}


function validaForm_eventos(){
		d = document.formulario_eventos;
		if (d.dia_evento.value === ""){
			alert("O campo Dia do Evento deve ser preenchido!");
			d.dia_evento.focus();
			return false;
		}
		if (d.dia_evento.value >= "32")
		{
			alert("O dia tem que estar entre 1 e 31!");
			d.dia_evento.focus();
			return false;
		}
		if (d.dia_evento.value <= "0")
		{
			alert("O dia tem que estar entre 1 e 31!");
			d.dia_evento.focus();
			return false;
		}
		if (d.mes_evento.value === ""){
			alert("O campo Mês do Evento deve ser preenchido!");
			d.mes_evento.focus();
			return false;
		}
		if (d.mes_evento.value >= "13")
		{
			alert("O mes tem que estar entre 1 e 12!");
			d.mes_evento.focus();
			return false;
		}
		if (d.mes_evento.value <= "0")
		{
			alert("O mes tem que estar entre 1 e 12!");
			d.mes_evento.focus();
			return false;
		}
		if (d.ano_evento.value === ""){
			alert("O campo Ano do Evento deve ser preenchido!");
			d.ano_evento.focus();
			return false;
		}
		if (d.localidade.value === ""){
			alert("O campo Localidae deve ser preenchido!");
			d.localidade.focus();
			return false;
		}
		if (d.hora.value === ""){
			alert("Tem que definir uma hora de início do Evento!");
			d.data_evento.focus();
			return false;
		}
		if (d.hora.value >= "25")
		{
			alert("A hora tem que estar definida entre as 1 e as 24!");
			d.hora.focus();
			return false;
		}
		if (d.hora.value <= "0")
		{
			alert("A hora tem que estar definida entre as 1 e as 24!");
			d.hora.focus();
			return false;
		}
		if (d.morada.value === ""){
			alert("O campo Morada deve ser preenchido!");
			d.morada.focus();
			return false;
		}
		if (d.mapa.value === ""){
			alert("O campo com o link do mapar deve ser preenchido");
			d.morada.focus();
			return false;
		}
		return true;
	}
	
function validaForm_eventoNovo(){
		d = document.formulario_eventos;
		if (d.cidade.value === ""){
			alert("O campo Cidade deve ser preenchido!");
			d.cidade.focus();
			return false;
		}
		if (d.morada.value === ""){
			alert("O campo Morada deve ser preenchido!");
			d.morada.focus();
			return false;
		}
		if (d.google_map.value === ""){
			alert("O campo Google Map deve ser preenchido!");
			d.google_map.focus();
			return false;
		}
		if (d.data_evento.value === ""){
			alert("O campo Data Evento deve ser preenchido!");
			d.data_evento.focus();
			return false;
		}
		parte1 = d.data_evento.value.indexOf("-");
		if (parte1 != 4) {
			alert("Introduza a data no formato: ano-mes-dia");
			d.data_evento.focus();
			return false;
		}
		if (d.hora_evento.value === ""){
			alert("O campo Hora Evento deve ser preenchido!");
			d.hora_evento.focus();
			return false;
		}
		return true;
	}
	
function validaForm_widget(){
		d = document.widget;
		var currentTime = new Date()
		
		var month = currentTime.getMonth()+9;
		var ano = currentTime.getFullYear();
		var mes_actual = currentTime.getMonth();
		mes_actual = mes_actual + 1;
		var dia_actual = currentTime.getDate();
		dia_actual = dia_actual + 1;

		var month_nascimento = d.mes.value;
		var ano1 = ano + 1;
		
		if(d.dia.value < 10){
			dia_parto = "0" + d.dia.value;
		}else{
			dia_parto = d.dia.value;
		}		
		
		if(d.mes.value < 10){
			mes = "0" + d.mes.value;
		}else{
			mes = d.mes.value;
		}
		var data2 = dia_actual+"/"+mes_actual+"/"+ano;
		var data1 = dia_parto+"/"+mes+"/"+d.ano.value;
		//var data1 = "10/10/2000";
		//var data2 = "15/10/2000";
		
		if(month > 12){
			month = month - 12;
		}

	
		if (dia_parto === ""){
			alert("O campo Dia do Evento deve ser preenchido!");
			d.dia.focus();
			return false;
		}
		if (dia_parto >= "32")
		{
			alert("O dia tem que estar entre 1 e 31!");
			d.dia.focus();
			return false;
		}
		if (dia_parto <= "0")
		{
			alert("O dia tem que estar entre 1 e 31!");
			d.dia.focus();
			return false;
		}

		if (mes > month)
		{
			/*alert("Mes Parto "+ mes + " >= Mes válido " + month + " " + ano);*/
			if(d.ano.value >= ano)
			{
				alert("A data prevista de Parto é superior a 9 meses!");
				d.ano.focus();
				return false;
			}
		}
		if (mes < month)
		{
			/*alert("Mes Parto "+ mes + " >= Mes válido " + d.ano.value + " " + ano);*/
			if(d.ano.value < ano)
			{
				alert("A data de parto é inválida!");
				d.ano.focus();
				return false;
			}
		}
		if (mes === ""){
			alert("O campo Mês do Evento deve ser preenchido!");
			d.mes.focus();
			return false;
		}
		if (mes >= "13")
		{
			alert("O mes tem que estar entre 1 e 12!");
			d.mes.focus();
			return false;
		}
		if (mes <= "0")
		{
			alert("O mes tem que estar entre 1 e 12!");
			d.mes.focus();
			return false;
		}
		if (d.ano.value < ano){
			alert("O ano tem que ser superior a " + ano + " !");
			d.ano.focus();
			return false;
		}
		if (d.ano.value > ano1){
			alert("O ano tem que ser no máximo igual a " + ano1 + " !");
			d.ano.focus();
			return false;
		}
		if (d.ano.value === ""){
			alert("O ano deve ser preenchido!");
			d.ano.focus();
			return false;
		}
		if (d.ano.value === "AAAA"){
			alert("O ano deve ser preenchido!");
			d.ano.focus();
			return false;
		}
		if (d.ano.value < ano){
			alert("O ano não pode ser inferior ao ano actual");
			d.ano.focus();
			return false;
		}
		
		if ( parseInt( data2.split( "/" )[2].toString() + data2.split( "/" )[1].toString() + data2.split( "/" )[0].toString() ) > parseInt( data1.split( "/" )[2].toString() + data1.split( "/" )[1].toString() + data1.split( "/" )[0].toString() ) )
		{
			alert("A data de parto não pode ser inferior à actual");
			d.dia.focus();
			return false;
			//alert( "maior "+data2+" > "+data1);
		}
		/*else
		{
			alert( "não é maior"+data2+" < "+data1);
		}*/

		return true;
	}

