function trim(string) {
  var re= /^\s*|\s*$/g;
  return string.replace(re,"");
}

function validateEmail(e) {
  if (e != "") {
    var objRegExp = /^.+@.+\..{2,3}$/;
    return objRegExp.test(e);
  } else {
    return true;
  }
}

function validateDate(d) {
  if (d != "") {
    var objRegExp = /^\d{2}-\d{2}-\d{4}$/;
    return objRegExp.test(d);
  } else {
	return true;
  }
}

function countCheckbox(f) {
  var count = 0;
  for(var i=0; i<f.elements.length-1; i++) {
	if(f.elements[i].checked) count++
  }
  return count;
}

function frmEliminaRegistos(f) {
  if(countCheckbox(f) != 0) {
    if(confirm("Tem a certeza que deseja eliminar os registos seleccionados?")){
	  f.submit();
	}
  } else {
    alert("A operação não pode ser realizada.\nSeleccione primeiro os registos a eliminar.");
  }
}





function frmPainelNoticias_Submit(f, intPK) {
  f.HFpkn.value = intPK;
  f.submit();
}

function frmFranshising_Validate(f) {
  if(trim(f.tfNome.value) == "" || trim(f.tfMorada.value) == "" || trim(f.tfTelefone.value) == ""
	 || trim(f.tfEmail.value) == "" || trim(f.tfDataNascimento.value) == "" || trim(f.tfBilheteIdentidade.value) == ""
	 || trim(f.tfContribuinte.value) == "" || trim(f.tfExperienciaSector.value) == "" || trim(f.tfExperienciaComercial.value) == ""
	 || trim(f.tfEspacoFisico.value) == "") {
    alert ("Não é possível enviar o formulário.\nIntroduza os campos são de preenchimento obrigatório.");
    return false;
  }
  if(!validateDate(f.tfDataNascimento.value)) {
    alert("Não é possível enviar o formulário.\nIntroduza uma data de nascimento válida.");
	return false;
  }
  if(!validateEmail(f.tfEmail.value)) {
    alert("Não é possível enviar o formulário.\nIntroduza um endereço de e-mail válido.");
	return false;
  }
  return true;
}

function frmProposta_Validate(f) {
  if(trim(f.tfNome.value) == "" || trim(f.tfTelefone.value) == "" || trim(f.Email.value) == ""
	 || trim(f.tfEndereco.value) == "" || (trim(f.tfHabitacoes.value) == "" && trim(f.tfGaragens.value) == ""
	 && trim(f.tfManutencao.value) == "" && trim(f.tfEscritorio.value) == "" && trim(f.tfArrecadacoes.value) == ""
	 && trim(f.tfOutros.value) == "") || trim(f.tfPisos.value) == "" || trim(f.tfForma.value) == "") {
    alert ("Não é possível enviar o formulário.\nIntroduza os campos são de preenchimento obrigatório.");
    return false;
  }
  if(!validateEmail(f.tfEmail.value)) {
    alert("Não é possível enviar o formulário.\nIntroduza um endereço de e-mail válido.");
	return false;
  }
  return true;
}

function frmPedidoInformacao_Validate(f) {
  if(trim(f.tfNome.value) == "" || trim(f.tfEmail.value) == "" || trim(f.tfAssunto.value) == "") {
    alert ("Não é possível enviar o formulário.\nIntroduza os campos são de preenchimento obrigatório.");
    return false;
  }
  if(!validateEmail(f.tfEmail.value)) {
    alert("Não é possível enviar o formulário.\nIntroduza um endereço de e-mail válido.");
	return false;
  }
  return true;
}





function frmLoja_Validate(f) {
  if(trim(f.tfNome.value) == "" || trim(f.tfGerente.value) == "" || trim(f.tfMorada.value) == "" || trim(f.tfTelefone.value) == "") {
	alert ("Não é possível concluír o processo.\nPor favor introduza os campos de preenchimento obrigatório.");
	return false;
  }
  if(!validateEmail(f.tfEmail.value)) {
    alert("Não é possível enviar o formulário.\nIntroduza um endereço de e-mail válido.");
	return false;
  }
  return true;
}

function frmNoticia_Validate(f) {
  if(trim(f.tfNome.value) == "" || trim(f.tfTitulo.value) == "" || trim(f.tfDataCriacao.value) == "" || trim(f.tfTexto.value) == "") {
	alert ("Não é possível concluír o processo.\nPor favor introduza os campos de preenchimento obrigatório.");
	return false;
  }
  if(!validateDate(f.tfDataCriacao.value) || !validateDate(f.tfDataExpiracao.value)) {
	alert("Não é possível concluír o processo.\nIntroduza uma data válida.");
	return false;
  }
  return true;
}

function frmFaq_Validate(f) {
  if(trim(f.tfPergunta.value) == "" || trim(f.tfResposta.value) == "") {
	alert("Não é possível iniciar o processo.\nTodos os dados são de preenchimento obrigatório.");
	return false;
  }
  return true;
}

function frmTransferirImagem_Validate(f) {
  if(trim(f.ffFicheiro.value) == "") {
    alert("Não é possível iniciar o processo.\nSeleccione a imagem que pretende enviar.");
    return false;
  }
  return true;
}

function frmEliminarImagens_Validate(f) {
  if(confirm("Tem a certeza que deseja eliminar as imagens seleccionadas?")) {
	f.submit();
	return true;
  }
  return false;
}

function frmAlterarPassword_Validate(f) {
  if(trim(f.tfPPOriginal.value) == "" || trim(f.tfConfirmacaoPP.value) == "" || trim(f.tfNovaPP.value) == "") {
	alert("Não é possível iniciar o processo.\nTodos os dados são de preenchimento obrigatório.");
	return false;
  }
  if(f.tfPPOriginal.value != f.HFpdb.value) {
	alert("Não é possível iniciar o processo.\nA palavra-passe antiga que inseriu não está correcta.");
	return false;
  }
  if(f.tfConfirmacaoPP.value != f.tfNovaPP.value) {
	alert("Não é possível iniciar o processo.\nAs palavras-passe que inseriu não coincidem.");
	return false;
  }
  return true;
}
