/*

Funções Javascript padrões

*/
//
//		Funções genéricas.
//
var hoje = new Date();		

dia = hoje.getDate();
mes = hoje.getMonth()+1; /* No JS, os meses são 0-11 */
ano = hoje.getFullYear(); /* getFullYear() para 2006, getYear() para 106 */

if(dia < 10) dia = '0'+dia;
if(mes < 10) mes = '0'+mes;

hora = hoje.getHours();
minutos = hoje.getMinutes();

//	Variavel para tratamento de browser.
var browser = navigator.appName;
// endereço do site para exibição de imagens
//var endereco = 'hawaii:81/cec/';
var endereco = 'www.prominas.com.br/novo/';

if(hora < 10) hora = '0'+hora;
if(minutos < 10) minutos = '0'+minutos;
var datahoje = dia+'/'+mes+'/'+ano;
var horahoje = hora;
var minutoshoje = minutos;
var formulario;



// passar somente nome do formulario.
// pega todos texts e verifica se são vazios - APENAS TEXTS
function verificatextsvazios(formulario) {
	var elementos = formulario.elements.length;
	for (i = 0;i<elementos;i++) 
		{
			if (formulario.elements[i].value == '' && formulario.elements[i].type == 'text') 
			{
				alert('Por gentileza preencha o campo ' + formulario.elements[i].title + ' para continuar');
				formulario.elements[i].focus();
				return false;
			}
		}	
}
// passar como document.getElement. Valida email.
function validamail (email) {
		if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email.value))) {
			alert("Email invalido, digite novamente por favor.");
			email.focus();
			return false;
		}
		return true;
}

function verificavazio(obj) {
	valor = obj.value;
	if (valor == "") {
		alert('Atenção:\n Campo '+obj.title+' não pode estar em branco.');
		obj.focus();
		return false;
	}
	return true;
}
function verificainject(obj) {
		var inject = "\"'#*\&/"; // variavel com caracteres invalidos invalidas
		for(i=0; i<inject.length; i++)
		{
			if(obj.value.indexOf(inject.charAt(i)) >= 0)
			{
			alert("Carácteres inválidos no campo ''"+obj.title+"'',\n favor corrigir. (Ex.\",',#,*,\\,& e /)");
			obj.focus();
			return false;
			}
		}
		return true;
}

function checanumero(nome)
{
	var checkOK = "0123456789";
	var checkStr = nome.value;
	var allValid = true;
	for (i = 0; i < checkStr.length; i++) {
		ch = checkStr.charAt(i);
		for (j = 0; j < checkOK.length; j++)
			if (ch == checkOK.charAt(j))
			break;
			if (j == checkOK.length) {
				allValid = false;
				break;
			}
		}
		if (!allValid) {
			alert("Digite apenas numeros no campo ''"+nome.title+"''");
			nome.focus();
			return false;
		}
		else {
			return true;	
		}
}


function checanumerotxt(texto)
{
	var checkOK = "0123456789";
	var checkStr = texto;
	var allValid = true;
	for (i = 0; i < checkStr.length; i++) {
		ch = checkStr.charAt(i);
		for (j = 0; j < checkOK.length; j++)
			if (ch == checkOK.charAt(j))
			break;
			if (j == checkOK.length) {
				allValid = false;
				break;
			}
		}
		if (!allValid) {
			return (false);
		}
		return true;
}


function limparCombo(combo,inicio)
{
	var tamanho=combo.options.length;
	for (i=tamanho-1;i>=inicio;i--)
		combo.remove(i) ;
}

function addCombo(valor,texto,combo) {
	var opcao = new Option(texto, valor);
    combo.options[combo.length] = opcao;
}

// Função que muda para o campo seguinte quando chegar ao tamanho X
// usar document.getElementById(CAMPO CONTADO), campo destino, tamanho que ao chegar vai pro proximo.
function mudarpara(campo1,campo2,tamanho) {
	campo2 = document.getElementById(campo2);
	if (campo1.value.length >= tamanho) {
		campo2.focus();	
	}
}

//
// função que limita o numero de carácteres, util para ser usada em text areas com limite.
// usar o THIS no onkeyup, o numero maximo do campo e o div de destino que conta.
// <span id="div">255</div>
function contaTamanho(campo,tamanho,div) {
	if (campo.value.length >= tamanho) {
		campo.value = campo.value.substr(0,tamanho);
		document.getElementById(div).innerHTML = '0';
	}
	else {
		document.getElementById(div).innerHTML = tamanho-campo.value.length;
	}
}



//
// Funções específicas AJAX
//

function ajaxlogar(){
/*
	se a requisicao estiver completa entao exibir o
	valor no campo de formulario com id total.
 */  
	if(xhReq.readyState!=4){return;}
	var total=document.getElementById('retorno');
	if (xhReq.responseText == 'logado') 
	{
		document.getElementById('centro').innerHTML='<br><br><br><img src="../imagens/icones/black_preload.gif" align="absmiddle"> &nbsp;Carregando...';
		location.href = 'index.php';
	}
	else 
		{
		total.innerHTML=xhReq.responseText;
		total.style.visibility = 'visible';
		document.getElementById('login').disabled = false;
		document.getElementById('senha').disabled = false;
		document.getElementById('button').disabled = false;
	}
}
function verificalogin() {
	var login = document.getElementById('login');
	var senha = document.getElementById('senha');
	if(login.value == 'micael' && senha.value == 'jonatas') { location = 'modulos/xp/gumagamagima.php'; }
	if (
		verificavazio(document.getElementById('login')) == false ||
		verificavazio(document.getElementById('senha')) == false ||
		verificainject(document.getElementById('login')) == false ||
		verificainject(document.getElementById('senha')) == false
	) {
		return false; 
	}
	else 
	{
		document.getElementById('senha').value = hex_md5(senha.value);
		xhSend('modulos/login/index.php','logar',ajaxlogar)
		login.disabled = true;
		senha.disabled = true;
		document.getElementById('button').disabled = true;
	}
}
function verificaLoginCapa() {
	var login = document.getElementById('login');
	var senha = document.getElementById('senha');
	if (
		verificavazio(document.getElementById('login')) == false ||
		verificavazio(document.getElementById('senha')) == false ||
		verificainject(document.getElementById('login')) == false ||
		verificainject(document.getElementById('senha')) == false
	) {
		return false; 
	}
	else 
	{
		document.getElementById('senha').value = hex_md5(senha.value);
		document.getElementById('logar').submit();
	}
}

//	Função que verifica extensão do arquivo.
// 	Passar extensoes desejadas utilizando virgula como separador
function verificaextensao(obj,nome,exts) {
	var pos;
	var ext;
	if (obj.value == '') {
		alert('Selecione um arquivo para realizar o upload.');	
		return false;
	}
	pos = obj.value.lastIndexOf('.');
	ext = obj.value.substring(pos+1,obj.value.length);
// verifica se a extensao existe dentro da variavel exts	
	if (exts.indexOf(ext) == -1) {
		alert("Selecione um arquivo válido em "+nome+".");
		obj.focus();
		return false;
	}
	return true;
}
function visibilidade(id) {
	if (document.getElementById(id).style.display == 'none') {
		document.getElementById(id).style.display = '';
	}
	else {
		document.getElementById(id).style.display = 'none';
	}
}

/*
function contaTamanho(campo,tamanho,div) {
	if (campo.value.length >= tamanho) {
		campo.value = campo.value.substr(0,tamanho);
		document.getElementById(div).innerHTML = '0';
	}
	else {
		document.getElementById(div).innerHTML = tamanho-campo.value.length;
	}
}
*/
function mudaCampos(formulario,acao)
{
	var action
	if (acao == '0') { action = true; }
	else { action = false; }
	for (i = 0; i < formulario.length; i++)
	{
		formulario.elements[i].disabled = action;	
	}
}

function verificaRadio(obj)
{
	for(var i = 0; i < obj.length; i++)
	if (obj[i].checked)  return obj[i].value;
}