function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_goToURL() { //v3.0
  var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
  for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
}
function flvS3(v1) {//v1.2
  var v2=MM_findObj(v1);if (!v2){this.x=this.y=this.h=this.w=0;return;}var v3,v4,v5,v6,v7=(document.layers)?v2:v2.style;v3=isNaN(parseInt(v7.left))?v2.offsetLeft:parseInt(v7.left);v4=isNaN(parseInt(v7.top))?v4=v2.offsetTop:parseInt(v7.top);if (v2.offsetHeight){v5=v2.offsetHeight;v6=v2.offsetWidth;}else if (document.layers){v5=v7.clip.height;v6=v7.clip.width;}else {v5=v6=0;}this.x=parseInt(v3);this.y=parseInt(v4);this.h=parseInt(v5);this.w=parseInt(v6);
}
function flvS8(v1,v2,v3) {//v1.0
  var v4=(document.layers)?v1:v1.style;var v5=flvS5();eval("v4.left='"+v2+v5+"'");eval("v4.top='"+v3+v5+"'");
}
function flvS5() {//v1.0
  var v1=((parseInt(navigator.appVersion)>4||navigator.userAgent.indexOf("MSIE")>-1)&&(!window.opera))?"px":"";return v1;
}
function flvXAS1() {
  var v1=arguments,v2=v1.length,v3='AutoScrollContainer',v4='AutoScrollContent';var v5=MM_findObj(v3),v6=MM_findObj(v4);if (!v5){return;}if (v5.XAS1!=null){clearTimeout(v5.XAS1);}var v7=(v2>0)?parseInt(v1[0]):1;if (v7){var v8=(v2>1)?parseInt(v1[1]):1,v9=(v2>2)?parseInt(v1[2]):50,v10=(v2>3)?parseInt(v1[3]):1;var v11=new flvS3(v3),v12=new flvS3(v4);var v13=v12.x,v14=v12.y,v15=0,v16=0;if (v10==1){var v17=-1*v12.h;v15=v12.x;if (v14>=v17){v16=v12.y-v8;}else {v16=v11.h;}}else {var v18=-1*v12.w;v16=v12.y;if (v13>=v18){v15=v12.x-v8;}else {v15=v11.w;}}flvS8(v6,v15,v16);v5.XAS1=setTimeout("flvXAS1("+v7+","+v8+","+v9+","+v10+")",v9);}
}
function MM_disableButton() {
  document.oncontextmenu = new Function("return false")
  //Internet Explorer
  document.onselectstart = new Function("return false")
  //Netscape
  if (window.sidebar) {
    document.onmousedown = disableselect
    document.onclick = reEnable
  }
}










function trim(value) {
  var re= /^\s*|\s*$/g;
  return value.replace(re,"");
}
function isNumeric(value) {
  var valid_chars = "0123456789";
  var is_number = true;
  var char;
  
  for(i=0; i<value.length && is_number == true; i++) { 
    char = value.charAt(i);
    if (valid_chars.indexOf(char) == -1) is_number = false;
  }
  return is_number;
}
function validateDate(d) {
  if (d != "") {
    var objRegExp = /^\d{2}-\d{2}-\d{4}$/;
    return objRegExp.test(d);
  } else {
	return true;
  }
}
function countCheckBox(f) {
  var c = 0;
  for(var i=0; i<f.elements.length-1; i++) {
	if(f.elements[i].checked) c++
  }
  return c;
}
function confirmAction(m) {
  var c = confirm(m);
  if(c)
    return true;
  else
	return false;
}





function frmContactos_Validate(f) {
  if(trim(f.tfNome.value) == "" || trim(f.tfMorada.value) == "" || f.tfMensagem.value == "" ||
	(f.tfTelefone.value == "" && f.tfTelemovel.value == "" && f.tfFax.value == "" && f.tfEmail.value == "")) {
    alert("Não é possível iniciar o processo.\nIntroduza os dados de preenchimento obrigatório.");
    return false;
  }
  if(!validateEmail(f.tfEmail.value)) {
    alert("Não é possível iniciar o processo.\nIntroduza um endereço de e-mail válido.");
	return false;
  }
  return true;
}
function frmNewsletter_Validate(f) {
  if(trim(f.tfEmpresa.value) == "" || trim(f.tfEmail.value) == "") {
    alert("Não é possível iniciar o processo.\nTodos os dados são de preenchimento obrigatório.");
    return false;
  }
  if(!validateEmail(f.tfEmail.value)) {
    alert("Não é possível iniciar o processo.\nIntroduza um endereço de e-mail válido.");
	return false;
  }
  return true;
}
function funcAdiciona(objD,objO){
  if(objO.value != "") {
    objD.value = objD.value + objO.value + "\n"
  } else {
    alert("Não é possível iniciar o processo.\nSeleccione a imagem a adicionar.");
  }
}
function funcLimpa(obj) {
 obj.value = "";
}
function validateEmail(e) {
  if (e != "") {
    var objRegExp = /^.+@.+\..{2,3}$/;
    return objRegExp.test(e);
  } else {
    return true;
  }
}
function previous() {
  history.go(-1)
}









function frmAlterarPalavraPasse_Validate(f) {
  if(trim(f.tfPassOrig.value) == "" || trim(f.tfPassNova.value) == "" || trim(f.tfPassConf.value) == "") {
	alert("Não é possível concluir o processo.\nTodos os dados são de preenchimento obrigatório.");
	return false;
  }
  if(f.tfPassOrig.value != f.HFPassDB.value) {
    alert("A palavra-passe antiga que inseriu não está correcta.");
	return false;
  }
  if(f.tfPassNova.value != f.tfPassConf.value) {
	alert("As palavras-passe que inseriu não coincidem.");
	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.\nIntroduza por favor 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 frmEliminaRegistos(f) {
  if(f.elements.length != 0) {
    if(countCheckBox(f) != 0) {
      if(confirmAction("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.");
	}
  } else {
    alert("A operação não pode ser realizada.\nSeleccione primeiro os registos a eliminar.");
  }
}
function frmAssociado_Validate(f) {
  if(trim(f.tfNome.value) == "" || trim(f.tfMorada.value) == "") {
	alert ("Não é possível concluír o processo.\nIntroduza por favor os campos de preenchimento obrigatório.");
	return false;
  }
  if(!validateEmail(f.tfEmail.value)) {
    alert("Não é possível iniciar o processo.\nIntroduza um endereço de e-mail válido.");
	return false;
  }
  return true;
}
function frmListaAssociados_Validate(f) {
  if(f.lmDistrito.value == "") {
	alert ("Não é possível iniciar o processo.\nPor favor seleccione o distrito.");
	return false;
  }
  return true;
}
function frmEnviarDocumento_Validate(f) {
  if(trim(f.ffDocumento.value) == "") {
    alert("Não é possível iniciar o processo.\nSeleccione o documento que pretende enviar.");
    return false;
  }
  return true;
}
function frmEliminar_Validate(f) {
  if(trim(f.lmDocumento.value) == "") {
    alert("Não é possível iniciar o processo.\nSeleccione o documento que pretende eliminar.");
    return false;
  }
  return true;
}
function frmDocumento_Validate(f) {
  if(trim(f.tfDescricao.value) == "" || trim(f.tfDataCriacao.value) == "" || trim(f.lmDocumento.value) == "") {
	alert ("Não é possível concluír o processo.\nIntroduza por favor 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;
}
