//Funções JavaScript
document.write("<script src='calendario.js' type='text/javascript' language='javascript'></script>");
//Limitador de Caracteres
//Tem como função limitar que as pessoas só possam digitar os caracteres permitidos pelo programador.
//por Vini L.Azev. (www.lazev.kit.net) - favor manter os créditos
function limitachars(z, y) {
    x = z.value;
    y = y.toUpperCase();
    y = y.replace('A-Z', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ');
    y = y.replace('0-9', '1234567890');
    var chars_permitidos = y;
    var resposta = '';
    for(ii=0; ii<x.length; ii++) {
        if ((chars_permitidos.indexOf(x.charAt(ii).toUpperCase()) > -1) || (chars_permitidos.indexOf(x.charAt(ii).toLowerCase()) > -1)) {
            resposta += x.charAt(ii);
        }
    }
    z.value = resposta;
}

//Auxiliar no preenchimento de datas
//Completa o restante da data, bastando digitar apenas o dia, ou o dia e mês juntos, com 2 casas cada e sem a barra (ex 1604)
//por Vini L.Azev. (www.lazev.kit.net) - favor manter os créditos
function completadata(z) {
	x = z.value;
	if ((x.length == 1) || (x.length == 2)) {
		hoje = new Date();
		mes = (hoje.getMonth()+1); if(mes < 10) { mes = "0" + mes; }
		z.value = x + "/" + mes + "/" + hoje.getFullYear();
	} else if((x.length == 4) && (x.indexOf("/") == -1)) {
		hoje = new Date();
		dia = x.substring(0, 2);
		mes = x.substring(2, 4);
		z.value = dia + "/" + mes + "/" + hoje.getFullYear();
	}
}

//Muda ponto para vírgula
//Após digitar o valor, muda qualquer ponto para vírgula e padroniza o numero para xxxx,xx
//por Vini L.Azev. (www.lazev.kit.net) - favor manter os créditos
function pontovirgula(x) {
	var conta = 0;
	while(x.value.indexOf(".") != -1) {	x.value = x.value.replace(".", ","); conta++; }
	for(ii=0; ii<conta; ii++) {
		if(x.value.indexOf(",", x.value.indexOf(",")+1) != -1) { x.value = x.value.replace(",", ""); }		
	}
}

//Muda hífem para barra
//Após digitar a data, muda qualquer hífem para barra e padroniza a data para 00/00/0000;
//por Vini L.Azev. (www.lazev.kit.net) - favor manter os créditos
function hifembarra(x) {
	while(x.value.indexOf("-") != -1) {	x.value = x.value.replace("-", "/"); }
	//if(x.value.indexOf(",", x.value.indexOf(",")+1) != -1) { x.value = x.value.replace(",", ""); }
}

function veriemail(x) {
	if ((x.indexOf("@") < 1) ||
		(x.indexOf(".") < 1) ||
		(x.indexOf("@.") > -1) ||
		(x.indexOf(".@") > -1) ||
		(x.indexOf(" ") > -1) ||
		(x.indexOf(",") > -1)) {
		return false;
	} else {
		return true;
	}
}

function navegar(x) {
	window.location = x;
}

function pulatela(url, w, h) {
	if(isNaN(w)) var w=750;
	if(isNaN(h)) var h=600;
	var y = screen.availHeight/2-h/2;
	var x = screen.availWidth/2-w/2;
	var aleatorio = Math.random();
	aleatorio = "a" + aleatorio;
	var ultimo = aleatorio.charAt(aleatorio.length-1);
	ultimo = ultimo + aleatorio.charAt(aleatorio.length-2);
	window.open(url, 'tela'+ ultimo, 'width='+ w +', height='+ h +', left='+ x +', top='+ y +', scrollbars=1, status=1'); 
}

function veridata(x) {
	if (x != "") {
		if (x.indexOf('/') == -1) { alert('A data não se encontra no formato correto: dd/mm/aaaa>'); return false; }
		else if (x.indexOf('/') == x.lastIndexOf('/')) {
			if (confirm('A data não possui ano, deseja prosseguir?') == true) {
				dia = x.substring(0,x.indexOf('/'));
				mes = x.substring(x.indexOf('/')+1, x.length);
				if ((mes>12) || (mes < 1) || (((mes==4) || (mes==6) || (mes==9) || (mes==11)) && (dia > 30)) || ((mes==2) && (dia>29)) || ((mes==1) || (mes==3) || (mes==5) || (mes==7) || (mes==8) || (mes==10) || (mes==12)) && (dia > 31)) {
					aviso('Data inválida!');
					return false;
				} else {
					return true;
				}
			}
			else {
				return false; }
			}
		else {
			dia = x.substring(0,x.indexOf('/'));
			mes = x.substring(x.indexOf('/')+1, x.lastIndexOf('/'));
			ano = x.substring(x.lastIndexOf('/')+1, x.length);
			if (((ano%4!=0) && (mes==2) && (dia==29)) || (mes>12) || (mes < 1) || (((mes==4) || (mes==6) || (mes==9) || (mes==11)) && (dia > 30)) || ((mes==2) && (dia>29)) || ((mes==1) || (mes==3) || (mes==5) || (mes==7) || (mes==8) || (mes==10) || (mes==12)) && (dia > 31)) {
				aviso('Data inválida!');
				return false;
			} else {
				return true;
			}
		}
	} else {
		return true;
	}
}

function virgula(num){
	negativo = false;
	if (num < 0) {
		num = num * (-1);
		negativo = true;
	}
	num = num.toString().replace(/\$|\,/g,'');
	
	if(isNaN(num)) num = "0";
	cents = Math.floor((num*100+0.5)%100);
	num = Math.floor((num*100+0.5)/100).toString();
	if(cents < 10) cents = "0" + cents;
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
		num = num.substring(0,num.length-(4*i+3))+num.substring(num.length-(4*i+3));

	if (!negativo) return ('' + num + ',' + cents);
	else return ('-' + num + ',' + cents);
}

function caramba(x) {
	if(x.value == "") x.value = "inicio";
	else if(x.value == "inicio") x.value = "";
}

function carga(x) {
	ie=document.all?1:0;
	if(x) {
		if(!ie) document.getElementById('carregando').style.visibility = 'visible';
	} else document.getElementById('carregando').style.visibility = 'hidden';
}

function favoritos() {
	title = "eGestor Personal"; 
	url = "http://personal.egestor.com.br";
	if(window.sidebar) window.sidebar.addPanel(title, url, "");
	else if(window.external) window.external.AddFavorite(url, title);
	else if((window.opera) && (window.print)) return true;
}
