var dontforce=false;
function SetFocusAtElement(aId)
{
	if (dontforce) return;
	try
	{
		var aId_Counter = eval('window.Counter_' + aId);
		if (aId_Counter == null)
			aId_Counter = 0;

  		var e = null;
		e = document.getElementById(aId);
		if (!(e == null || typeof e == "undefined" ))
			e.focus();
		if (aId_Counter < 5) // Ajustar este valor para garantir focus com maior/menor precisao
			window.setTimeout('SetFocusAtElement(\'' + aId + '\')', 100);
		aId_Counter++;
		eval('window.Counter_' + aId + '=' + aId_Counter);
	}
	catch (aa)
	{
		setTimeout('SetFocusAtElement(\'' + aId + '\')', 1000);
	}
};

///////////////////////////////Funcoes BES
var BESX_action="https://bes-sec.bes.pt/wclientes/axb/tpl.asp";
var BESX_negAction="https://bes-sec.bes.pt/wclientes/cb/tpl.asp";
var BESX_dmAction=BESX_action;
var BESX_fcaBIC = "http://bes-sec.bes.pt/bes/erronadesaobic/erronadesaobic.html";
var BESX_ctxNav = 36123;

//vars for the timeout function
var frmf1, fnf1;

// by jvv, 08/2k  
var x=0,delta=0;  
if (parent && parent.menu && parent.menu.tranca) parent.menu.tranca=0; 
function startAnimation(){
	try{
	x=-1;delta=setInterval(animate,300);
	animate();
	document.all.MP.style.display="block";
	PAGINA.style.display="none";
	}catch(e){}
	return true;
};
 
function animate(){ 
	var s=""; x=(x+1)%8; switch(x){
	case 0:s=".&nbsp;&nbsp;&nbsp;&nbsp;";break;case 1:s="..&nbsp;&nbsp;&nbsp;";break;case 2:s="...&nbsp;&nbsp;";break;case 3:s="....&nbsp;";break;case 4:s=".....";break;case 5:s="....&nbsp;";break;case 6:s="...&nbsp;&nbsp;";break;case 7:s="..&nbsp;&nbsp;&nbsp;";break;
	}
	try{
	document.getElementById('MPP').innerHTML="Aguarde um momento por favor"+s;
	}catch(e){}
};

function behave(){
	if (navigator.appName=="Microsoft Internet Explorer") startAnimation();
};

function ValidaNa(frm,fn) {
	if (ValidaNa.arguments.length<=1) fn=mat;
	if ( (frm.fca.value.length!= 0) && frm.fca.value.charAt(0) == 0)
	{
		if(frm.fca.value.length==7)
		{
			frmf1=frm;
			fnf1=fn;
			setTimeout("f1()",1250);
		}
		if(frm.fca.value.length>7)
		{
			frm.fca.value="";
			window.location=BESX_fcaBIC;
				//window.location=BESX_siteUrl+'iipl.asp?srv=1100&amp;ctxnav='+BESX_ctxNav;
		}
	}
	else
	{
		if ((frm.fca.value.length == 7 && !isNaN(parseInt(frm.fca.value.charAt(0)))) || (frm.fca.value.length == 20 && isNaN(parseInt(frm.fca.value.charAt(0)))))
		{
			fn(frm.name);
			return false;
		}
	}
	return true;
};

function f1(){
	if(frmf1.fca.value.length == 7)
		fnf1(frmf1.name);
	//else
	//	window.location='iipl.asp?srv=1100&amp;ctxnav='+BESX_ctxNav;
};

function obtemCodigoTecla(e)
{
	if (document.all)
		return e.keyCode;
	else 
		return e.which;
};

function validaNumerico(ev)
{
	var c=String.fromCharCode(obtemCodigoTecla(ev));

	if (c.search(/[0-9]/) <0)
		return false;
	
	return true;
};

function validc(e,frm,n,fn) 
{
    if (validc.arguments.length<=3) fn=mat;
    var whichCode = obtemCodigoTecla(e);
    
    if (whichCode == 8 || whichCode == 0) //no firefox o backspace e as teclas especiais disparam o evento e devolvem estes chars
		return true;

    if (frm.fca.value.length > 0 && !isNaN(frm.fca.value.charAt(0)))
        return validaNumerico(e);
	
    if (whichCode == 13) 
    {
        fn(frm.name);
	return false;
    } 

    if (n > 0) return validaNumerico(e);

    return true;
};

function dm(frmName) {
	var frm=document.forms[frmName];
	frm.action=BESX_dmAction;
	frm.fca.value='';
	besxSubmit(frm);
	return false;
};

function mat(frmName) {
	var frm=document.forms[frmName];
	frm.action=BESX_action;
	if (validaCampos(frm)) besxSubmit(frm);
};


function neg(frmName) {
	var frm=document.forms[frmName];
	frm.action=BESX_negAction;
	if (validaCampos(frm)) besxSubmit(frm);
};

function validaCampos(frm) {

        if (  !isNaN(parseInt(frm.fca.value.charAt(0))) && frm.fca.value.length != 7) {
                alert ("Para aceder ao BESnet necessita de possuir um Nº de Adesão de 7 dígitos.\nSe não for este o caso queira contactar o BESdirecto 707 24 7 365.\n");
                frm.fca.focus();
                return false;
        }
        if ( isNaN(parseInt(frm.fca.value.charAt(0))) && frm.fca.value.length <= 7)
	{
                alert ("Para aceder ao BESnet necessita de possuir uma personalização entre 8 a 20 caracteres.\nSe não for este o caso queira contactar o BESdirecto 707 24 7 365.\n");
                frm.fca.focus();
                return false;
        }
        return true;
};

function besxSubmit(frm) {
	frm.selo.value=(new Date()).getTime();
	frm.ad.value=frm.fca.value;
	frm.fca.value="";
	frm.fca.focus();
	behave();
	if (frm.name=='besx1')
	{
	frm.action = BESX_negAction
	}
	frm.submit();
};

function dm_simple(frmName) {
	
	var frm=document.forms[frmName];
	frm.target=frmName;
	frm.action=BESX_dmAction;
	besxSubmit_simple(frm);
};

function besxSubmit_simple(frm) {
	frm.selo.value=(new Date()).getTime();
	frm.submit();
};

///////////////////////////////  Fim de Funcoes BES



///////////////////////////////Funcoes BAC
var BESAX_action="https://bes-sec.bes.pt/wclientes/besa/tpl.asp";
var BESAX_negAction="https://bes-sec.bes.pt/wclientes/besae/tpl.asp";
var BESAX_dmAction=BESAX_action;

function BAC_startAnimation(){
try
{
	x=-1;delta=setInterval(BAC_animate,300);BAC_animate();document.all.MP.style.display="block";PAGINA.style.display="none";return true;
}catch(e){}
};

function BAC_animate(){ 
try
{
	var s=""; x=(x+1)%8; switch(x){
	case 0:s=".&nbsp;&nbsp;&nbsp;&nbsp;";break;case 1:s="..&nbsp;&nbsp;&nbsp;";break;case 2:s="...&nbsp;&nbsp;";break;case 3:s="....&nbsp;";break;case 4:s=".....";break;case 5:s="....&nbsp;";break;case 6:s="...&nbsp;&nbsp;";break;case 7:s="..&nbsp;&nbsp;&nbsp;";break;
	}
	document.getElementById('MPP').innerHTML="Aguarde um momento por favor"+s;
}
catch (e) {};
};

function BAC_behave(){
	if (navigator.appName=="Microsoft Internet Explorer") BAC_startAnimation();
};

function BAC_ValidaNa(frm,fn) {
  if (BAC_ValidaNa.arguments.length<=1) fn=BAC_mat;
  if ((frm.fca.value.length == 7 && !isNaN(parseInt(frm.fca.value.charAt(0)))) || (frm.fca.value.length == 20 && isNaN(parseInt(frm.fca.value.charAt(0)))))
  {
    fn(frm.name);
    return false;
  }
  return true;
};

function BAC_obtemCodigoTecla(e)
{
	if (document.all)
		return e.keyCode;
	else 
		return e.which;
};

function BAC_validaNumerico(ev)
{
	var c=String.fromCharCode(BAC_obtemCodigoTecla(ev));
	
	if (c.search(/[0-9]/) <0)
		return false;
	
	return true;
};

function BAC_validc(e,frm,n,fn) 
{
    if (BAC_validc.arguments.length<=3) fn=BAC_mat;
	var whichCode = BAC_obtemCodigoTecla(e);
	
	if (frm.fca.value.length > 0 && !isNaN(frm.fca.value.charAt(0)))
		return BAC_validaNumerico(e);
	
	if (whichCode == 13) 
	{
		fn(frm.name);
		return false;
	} 
	
	if (n > 0) return BAC_validaNumerico(e);
	
	return true;
};

function BAC_dm(frmName) {
	var frm=document.forms[frmName];
	frm.action=BESAX_dmAction;
	frm.fca.value='';
	BAC_besxSubmit(frm);
	return false;
};

function BAC_mat(frmName) {
	var frm=document.forms[frmName];
	frm.action=BESAX_action;
	if (BAC_validaCampos(frm)) BAC_besxSubmit(frm);
};

function BAC_neg(frmName) {
	var frm=document.forms[frmName];
	frm.action=BESAX_negAction;
	if (BAC_validaCampos(frm)) BAC_besxSubmit(frm);
};

function BAC_validaCampos(frm) {
        if ( !isNaN(parseInt(frm.fca.value.charAt(0))) && frm.fca.value.length !=7) {
                alert ("Para aceder ao BESnet necessita de possuir um Nº de Adesão de 7 dígitos.\nSe não for este o caso queira contactar o BES Directo 808 24 7 365.\n");
                frm.fca.focus();
                return false;
        }
        if ( isNaN(parseInt(frm.fca.value.charAt(0))) && frm.fca.value.length <= 7){
                alert ("Para aceder ao BESnet necessita de possuir uma personalização entre 8 a 20 caracteres.\nSe não for este o caso queira contactar o BES Directo 808 24 7 365.\n");
                frm.fca.focus();
                return false;
        }
        return true;
};

function BAC_besxSubmit(frm) {
	frm.selo.value=(new Date()).getTime();
	frm.ad.value=frm.fca.value;
	frm.fca.value="";
	frm.fca.focus();
	BAC_behave();
	frm.submit();
};

function BAC_dm_simple(frmName) {
	var frm=document.forms[frmName];
	frm.target=frmName;
	frm.action=BESAX_dmAction;
	BAC_besxSubmit_simple(frm);
};

function BAC_besxSubmit_simple(frm) {
	frm.selo.value=(new Date()).getTime();
	frm.submit();
};

///////////////////////////////  Fim de Funcoes BAC



