//-------------------------------- uma caixa de texto apenas aceita numeros, usa-se onkeypress="return aceita_num(event);" ------------------------------------------------
function aceita_num(e)
{
	var key = window.event ? e.keyCode : e.which;
	var keychar = String.fromCharCode(key);
	var Chars = "0123456789";
	if (Chars.indexOf(keychar)== -1)
		{ 
			return false;
		}else{
			return true;
		}
}

//-------------------------------- uma caixa de texto apenas aceita numeros e pontos, usa-se onkeypress="return aceita_num(event);" ---------------------------------------
function aceita_num_ponto(e)
{
	var key = window.event ? e.keyCode : e.which;
	var keychar = String.fromCharCode(key);
	var Chars = "0123456789.";
	if (Chars.indexOf(keychar)== -1)
		{ 
			return false;
		}else{
			return true;
		}
}

//-------------------------------- uma caixa de texto apenas aceita numeros, pontos e sinal -, usa-se onkeypress="return aceita_num(event);" -----------------------------
function aceita_num_traco(e)
{
	var key = window.event ? e.keyCode : e.which;
	var keychar = String.fromCharCode(key);
	var Chars = "0123456789-";
	if (Chars.indexOf(keychar)== -1)
		{ 
			return false;
		}else{
			return true;
		}
}

//-------------------------------- uma caixa de texto apenas aceita numeros e /, usa-se onkeypress="return aceita_num(event);" -----------------------------
function aceita_num_barra(e)
{
	var key = window.event ? e.keyCode : e.which;
	var keychar = String.fromCharCode(key);
	var Chars = "0123456789/";
	if (Chars.indexOf(keychar)== -1)
		{ 
			return false;
		}else{
			return true;
		}
}

//-------------------------------- verifica se um valor é do tipo moeda, verifica-se na validação do formulário" -------------------------------------------------------
function checkmoeda( fld, desc ) 
{ 
	var temp_value = fld; 
	var Chars = "0123456789.";
	var tt=0;
	var mess='';
	for (var i = 0; i < temp_value.length; i++) 
	{ 
		if (Chars.indexOf(temp_value.charAt(i)) == -1) 
		{ 
			tt=tt+1;
			mess='O campo "'+desc+'" é inválido!\n';
		}
	}
	var onde=fld.indexOf('.');
	if(onde>=0){
		var outro=fld.indexOf('.',onde+1);
		if(outro>=0){
			tt=1;
			mess=mess+'O campo "'+desc+'" apenas pode conter um "."!\n';
		}else{
			var rstr=Right(fld,fld.length-onde-1);
			if(rstr.length>2){
				tt=1;
				mess=mess+'O campo "'+desc+'" apenas pode conter 2 digitos depois do "."!\n';
			}
		}
	}
	if(tt==0){
		return true;
	}else{
		return false;
	}
}

//-------------------------------- verifica se um valor é do tipo número, verifica-se na validação do formulário" -------------------------------------------------------
function checknumber(x){
	var anum=/(^\d+$)|(^\d+\.\d+$)/
	if (anum.test(x)){
		return true;
	}else{
		return false;
	}
}

//-------------------------------- atribui um objecto a uma variavél apartir do id do objecto, usa-se variavel=getObject('id_do_objecto'); -------------------------------
var ie4 = false; if(document.all) { ie4 = true; }
function getObject(id) {
	if (ie4) {
		return document.all[id];
	}else{
		return document.getElementById(id);
	}
}

//-------------------------------- mostra/esconde um div e altera o botão de link ---------------------------------------------------------------------------------------
function toggle(link, divId) {
	var lText = link.src;
	var d = getObject(divId);
	//alert(link.src);
	if (link.src == 'http://<%=dominio%>/adminarea/images/bt_mostrar.jpg') {
		link.src = 'http://<%=dominio%>/adminarea/images/bt_esconder.jpg'; d.style.display = 'block';
	}else{
		link.src = 'http://<%=dominio%>/adminarea/images/bt_mostrar.jpg'; d.style.display = 'none';
	}
}

//-------------------------------- mostra/esconde um div e altera texto do link para + ou - -----------------------------------------------------------------------------
function toggle1(link,divId) {
	var d = getObject(divId);
	if (d.style.display == 'none') {
		d.style.display = 'block';
		link.innerHTML='&#9472;';
	}else{
		d.style.display = 'none';
		link.innerHTML='+';
	}
}

//-------------------------------- mostra/esconde um div ----------------------------------------------------------------------------------------------------------------
function toggle2(divId) {
	var d = getObject(divId);
	if (d.style.display == 'none') {
		d.style.display = 'block';
	}else{
		d.style.display = 'none';
	}
}

//-------------------------------- adiciona aos favoritos --------------------------------------------------------------------------------------------------------------
function bm(dominio,titulo){
var url = "http://"+dominio;
var who = titulo;

var ver = navigator.appName;
var num = parseInt(navigator.appVersion);
if ((ver == "Microsoft Internet Explorer")&&(num >= 4)) {
window.external.AddFavorite(url,who);
}else{
	alert('Para adicionar aos favoritos (bookmark) neste browser\nnecessita de usar o atalho (Ctrl+D) ou utilize o menu\nBookmarks -> Bookmark this page...');
}
}

//-------------------------------- abre uma pop-up e centra a janela no ecra ---------------------------------------------------------------------------------------------
function abre(url, toolbar, location, directories, maximize, addressbar, menubar, scrollbars, status, resizable, width, height) {
	if(navigator.appName == "Microsoft Internet Explorer")
	{
		screenY = document.body.offsetHeight
		screenX = window.screen.availWidth
	}
	else
	{
		screenY = screen.height;
		screenX = screen.width;
	}
	
	leftvar = (screenX - width) / 2
	rightvar = (screenY - height) / 2
	if(navigator.appName == "Microsoft Internet Explorer")
	{
		left = leftvar
		top = rightvar
	}
	else
	{
		left = (leftvar - pageXOffset)
		top = (rightvar - pageYOffset)
	}
    window.open(url,"html","toobar="+toolbar+",location="+location+",directories="+directories+",maximize="+maximize+",addressbar="+addressbar+",menubar="+menubar+",scrollbars=" + scrollbars + ",status="+status+",resizable="+resizable+",WIDTH=" + width + ",HEIGHT=" + height + ",top="+top+",left="+left);
}

//-------------------------------- abre uma pop-up modal e centra a janela no ecra ---------------------------------------------------------------------------------------------
function abre_modal(url, toolbar, location, directories, maximize, addressbar, menubar, scrollbars, status, resizable, width, height){
	if(navigator.appName == "Microsoft Internet Explorer")
	{
		screenY = document.body.offsetHeight;
		screenX = window.screen.availWidth;
	}
	else
	{
		screenY = screen.height;
		screenX = screen.width;
	}
	
	leftvar = (screenX - width) / 2;
	rightvar = (screenY - height) / 2;
	if(navigator.appName == "Microsoft Internet Explorer")
	{
		left = leftvar;
		top = rightvar;
	}
	else
	{
		left = (leftvar - pageXOffset);
		top = (rightvar - pageYOffset);
	}
	if (window.showModalDialog) {
		window.showModalDialog(url,"name","dialogWidth:"+width+"px;dialogHeight:"+height+"px;status:"+status+";center:yes;help:no");
	} else {
		window.open(url,"html","toobar="+toolbar+",location="+location+",directories="+directories+",maximize="+maximize+",addressbar="+addressbar+",menubar="+menubar+",scrollbars=" + scrollbars + ",status="+status+",resizable="+resizable+",WIDTH=" + width + ",HEIGHT=" + height + ",top="+top+",left="+left+",modal=yes");
	}
} 

//-------------------------------- apresenta a horas ---------------------------------------------------------------------------------------------------------------------
function show(obj)
{
campo=getObject(obj)
var Digital=new Date()
var hours=Digital.getHours()
var minutes=Digital.getMinutes()
var seconds=Digital.getSeconds()
if (minutes<=9)
minutes="0"+minutes
if (seconds<=9)
seconds="0"+seconds
campo.value=hours+":"+minutes+":"+seconds
setTimeout("show()",1000)
}

//-------------------------------- apresenta uma descrição "desc" num objecto de id="desc" --------------------------------------------------------------------------------
function descricao(desc){
	var obj=document.getElementById('desc');
	obj.innerHTML='<font color="#666666" face="Tahoma" style="font-size: 8pt">'+desc+'</font>';
}

//-------------------------------- verifica se o valor de um campo é um e-mail válido, verifica-se na validação de um formulário ------------------------------------------
function checkmail(str) {
	var at="@"
	var dot="."
	var lat=str.indexOf(at)
	var lstr=str.length
	var ldot=str.indexOf(dot)
	if (str.indexOf(at)==-1){
		return false
	}
	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		return false
	}
	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		return false
	}
	if (str.indexOf(at,(lat+1))!=-1){
		return false
	}
	if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		return false
	}
	if (str.indexOf(dot,(lat+2))==-1){
		return false
	}
	if (str.indexOf(" ")!=-1){
		return false
	}
	return true					
}

//-------------------------------- apresenta n caracteres apartir da esquerda da string "str" ----------------------------------------------------------------------------
function Left(str, n){
	if (n <= 0)
	    return "";
	else if (n > String(str).length)
	    return str;
	else
	    return String(str).substring(0,n);
}

//-------------------------------- apresenta n caracteres apartir da direita da string "str" -----------------------------------------------------------------------------
function Right(str, n){
    if (n <= 0)
       return "";
    else if (n > String(str).length)
       return str;
    else {
       var iLen = String(str).length;
       return String(str).substring(iLen, iLen - n);
    }
}

//-------------------------------- verifica se o valor de um campo é um url válido, verifica-se na validação de um formulário --------------------------------------------
function checkurl(url){ 
    var RegExp = /^(([\w]+:)?\/\/)?(([\d\w]|%[a-fA-f\d]{2,2})+(:([\d\w]|%[a-fA-f\d]{2,2})+)?@)?([\d\w][-\d\w]{0,253}[\d\w]\.)+[\w]{2,4}(:[\d]+)?(\/([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)*(\?(&?([-+_~.\d\w]|%[a-fA-f\d]{2,2})=?)*)?(#([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)?$/; 
    if(RegExp.test(url)){ 
        return true; 
    }else{ 
        return false; 
    } 
}

//---------------------------------------------------------------- faz o submit de um formulário ------------------------------------------------------------------------
function envia_form(frm){
	frmz=document.getElementById(frm);
	frmz.submit();
}
