IE4 = (document.all && !document.getElementById) ? true : false;
NS4 = (document.layers) ? true : false;
IE5 = (document.all && document.getElementById) ? true : false;
NS6 = (!document.all && document.getElementById) ? true : false;

var BotaoClicado;
var FormularioBotaoClicado;
var NovoTitulo;

function MM_preloadImages() 
{
	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 ValidaAccaoBotaoClicado()
{

	if (BotaoClicado == 'Remover')
	{
		AbrirJanelaConfirmacao(FormularioBotaoClicado, BotaoClicado, 'Tem a certeza que deseja remover o registo seleccionado?', 335, 70);return false;
	}
	else 
	{
		if(BotaoClicado == 'Cancelar')
		{
			
			var btn = document.getElementById(FormularioBotaoClicado);
			
				if (btn.getAttribute('value') == 'Cancelar')
				{
					AbrirJanelaConfirmacao(FormularioBotaoClicado, BotaoClicado, 'Aten\u00E7\u00E3o! As informa\u00E7\u00F5es n\u00E3o ser\u00E3o gravadas. Deseja continuar sem gravar?', 350, 70);return false;
				}
				else 
				{
					return true;
				}
		}
		else
		{
			return true;
		}
	}
}

function confirmCallBackFnBotao(arg)
{
	if(arg)
	{
		__doPostBack(FormularioBotaoClicado,BotaoClicado);
	}
}

function confirmCallBackFnBotaoComRetornoRespostaNegativa(arg)
{
	if(arg)
	{
		__doPostBack(FormularioBotaoClicado,BotaoClicado + '_Sim');
	}
	else
	{
		__doPostBack(FormularioBotaoClicado,BotaoClicado + '_Nao');
	}
}

function MostraObjecto()
{
      IDObjecto = arguments[0];
      Mostra = arguments[1];
      if (IE4)
      {
            obj = document.all(IDObjecto).style;
      }
      if (NS6 || IE5)
      {
            obj = document.getElementById(IDObjecto).style;
      }
      if (NS4)
      {
            obj = document.layers(IDObjecto);
      }
      if (Mostra == null) {
            var_visible = ((obj.visibility == "visible")?"hidden":"visible");
            var_display = ((obj.visibility == "visible")?"none":"block");
      }
      else
      {
            var_visible = ((Mostra)?"visible":"hidden");
            var_display = ((Mostra)?"block":"none");
      }
      obj.visibility = var_visible;
      obj.display = var_display;   
}

function ImpedirAutoPostBack()
{
	if (document.all && window.event) event.returnValue = false;
}

function limitaTextbox(zone,max)
{
	if(zone.value.length>=max)
	{
		zone.value=zone.value.substring(0,max);
	}
}

function replaceAll(oldStr,findStr,repStr) 
{
	var srchNdx = 0;                  
	var newStr = ""; 
	while (oldStr.indexOf(findStr,srchNdx) != -1)  
    {
		newStr += oldStr.substring(srchNdx,oldStr.indexOf(findStr,srchNdx));
		newStr += repStr;
		srchNdx = (oldStr.indexOf(findStr,srchNdx) + findStr.length);
	}
	newStr += oldStr.substring(srchNdx,oldStr.length);
	return newStr;
}

function daControlo(in_ID)
{
	if (IE4)
	{
		return document.all(in_ID);

    }
    if (NS6 || IE5)
    {
		return document.getElementById(in_ID);
    }
    if (NS4)
    {
		return document.layers(in_ID);
    }
}

function ENumerico(x) 
{
	var RegExp = /^(-)?(\d*)(\.?)(\d*)$/; 
	var result = x.match(RegExp);
	return result;
}

function Inicializa(Titulo)
{
	MM_preloadImages('Componentes/Grid/Skins/Default/SelectedMenu.gif','Componentes/Grid/Skins/Default/NotSelectedMenu.gif','Images/Icons/activar.gif','Images/Icons/actualizar.gif','Images/Icons/adicionar.gif','Images/Icons/alterar.gif','Images/Icons/apagar.gif','Images/Icons/cancelar.gif','Images/Icons/confirmar.gif','Images/Icons/consultar.gif','Images/Icons/continuar.gif','Images/Icons/desactivar.gif','Images/Icons/fechar.gif','Images/Icons/suspender.gif', 'Images/Icons/historico.gif', 'Images/Icons/gravar.gif', 'Images/Icons/imprimir.gif', 'Images/Icons/limpar.gif', 'Images/Icons/sair.gif', 'Images/Icons/anularsuspensao.gif', 'Componentes/Window/Skins/F3M/CssImg/dialogueHeaderCenter.gif', 'Componentes/Window/Skins/F3M/CssImg/dialogueHeaderLeft.gif', 'Componentes/Window/Skins/F3M/CssImg/draggedToolbarTitleBg.gif', 'Componentes/Window/Skins/F3M/CssImg/footerResize.gif', 'Componentes/Window/Skins/F3M/CssImg/modalBtnBg.gif', 'Componentes/Window/Skins/F3M/CssImg/RadWStatus.gif', 'Componentes/Window/Skins/F3M/CssImg/RadWWrapperBodyLeft.gif', 'Componentes/Window/Skins/F3M/CssImg/RadWWrapperBodyRight.gif', 'Componentes/Window/Skins/F3M/CssImg/RadWWrapperFooterCenter.gif', 'Componentes/Window/Skins/F3M/CssImg/RadWWrapperFooterLeft.gif', 'Componentes/Window/Skins/F3M/CssImg/RadWWrapperFooterRight.gif', 'Componentes/Window/Skins/F3M/CssImg/RadWWrapperHeaderCenter.gif', 'Componentes/Window/Skins/F3M/CssImg/RadWWrapperHeaderLeft.gif', 'Componentes/Window/Skins/F3M/CssImg/RadWWrapperHeaderRight.gif', 'Componentes/Window/Skins/F3M/CssImg/TabLeft.gif', 'Componentes/Window/Skins/F3M/CssImg/TabLeftSelected.GIF', 	'Componentes/Window/Skins/F3M/CssImg/TabMiddle.GIF', 'Componentes/Window/Skins/F3M/CssImg/TabMiddleSelected.gif', 'Componentes/Window/Skins/F3M/CssImg/TabRight.gif', 'Componentes/Window/Skins/F3M/CssImg/TabRightSelected.GIF');
	InitCaixasNumericas();
	ParametrizaTituloPagina(Titulo);
	try{ExecutaFuncaoInicial();}catch(Excepcao){}
	InitToolTipCaixas();
}

function ParametrizaTituloPagina(NovoTitulo)
{
	if(NovoTitulo == null)
	{
		document.title = ''
	}
	else
	{
		document.title = NovoTitulo;
	}
}

//Disable right mouse click Script
/*
	var message="Função não é permitida!";
	///////////////////////////////////
	function clickIE4()
		{
		if (event.button==2){
		return false;
		}
	}
			
	function clickNS4(e)
		{
		if (document.layers||document.getElementById&&!document.all)
			{
				if (e.which==2||e.which==3){
				return false;
				}
			}
		}
			
	if (document.layers){
		document.captureEvents(Event.MOUSEDOWN);
		document.onmousedown=clickNS4;
	}
	else if (document.all&&!document.getElementById){
		document.onmousedown=clickIE4;
	}
			
document.oncontextmenu=new Function("return false")
*/

function FormataValorNumerico(in_Valor, in_CasasDecimais)
{
	return Math.round(in_Valor * Math.pow(10,in_CasasDecimais)) /  Math.pow(10,in_CasasDecimais);
}

function InitToolTipCaixas()
{
	txt = document.getElementsByTagName('input');
	for (i = 0; i < txt.length; i ++)
	{
		if(txt[i].type == 'text' && txt[i].getAttribute('ActualizarToolTip'))
		{
			txt[i].setAttribute('TextoToolTipAAplicar', txt[i].title);
			ActualizaToolTip(txt[i]);
		}
	}	
}

function ActualizaToolTip(in_Controlo, in_Valor)
{
	if(in_Controlo.value == "" && (in_Valor == null || in_Valor == ""))
	{
		in_Controlo.title = in_Controlo.getAttribute('TextoToolTipAAplicar')
	}
	else if(in_Controlo.getAttribute('ActualizarToolTip').toUpperCase() == 'NUMERICO')
	{
		var strSepMilhares = (in_Controlo.getAttribute('SepMilhares')?in_Controlo.getAttribute('SepMilhares'):cSepMilharesDefeito);
		var strSepDecimais = (in_Controlo.getAttribute('SepDecimais')?in_Controlo.getAttribute('SepDecimais'):cSepDecimaisDefeito);
		if(parseFloat(in_Controlo.value.replace(strSepMilhares,'').replace(strSepDecimais,'.')) == 0)
		{
			in_Controlo.title = in_Controlo.getAttribute('TextoToolTipAAplicar')
		}
		else
		{
			in_Controlo.title = (in_Valor != null ? in_Valor : in_Controlo.value);
		}
	} 
	else
	{
		in_Controlo.title = (in_Valor != null ? in_Valor : in_Controlo.value);
	}
}

function ActualizaToolTipOnPaste(e)
{
	var evt = (evt) ? evt : ((window.event) ? event : e);
	var objCaixaTexto = ((e.target)? e.target : ((e.srcElement)? e.srcElement : null));
	var intPosIni = daInicioSeleccao(objCaixaTexto);
	var intPosFim = daFimSeleccao(objCaixaTexto);
	if (window.clipboardData)
	{
		strPasteData = window.clipboardData.getData("Text");
		strInicio = objCaixaTexto.value.substr(0,intPosIni);
		strFim = objCaixaTexto.value.substring(intPosFim);
		ActualizaToolTip(objCaixaTexto, strInicio + (evt.returnValue == false ? '' : strPasteData) + strFim);
	}
}

function daInicioSeleccao(inObj)
{
	if (document.selection)
	{
		return Math.abs(document.selection.createRange().moveStart("character", -1000000));
	}
	else
	{
		return inObj.selectionStart;
	}
}

function daFimSeleccao(inObj)
{
	if (document.selection)
	{
		return Math.abs(document.selection.createRange().moveEnd("character", -1000000));
	}
	else
	{
		return inObj.selectionEnd;
	}
}

function posicionaCursor(inPos)
{
	var obj = document.activeElement;
	if (obj) 
	{
		var tr = obj.createTextRange();
		if (obj && tr) 
		{
			tr.moveStart("character", inPos);
			tr.collapse();
			tr.select();
			return true;
		}
	}
	return false;
}
