   window.defaultStatus = "PoP SiTeS - www.popsites.net";
   function mexestatus(mensagem)
   {   	window.status = mensagem;
   	return true;
    }


	function aceitar() {

			if(document.aceito.contato.checked==false)
			{
				window.alert('Você precisa aceitar os termos de utilização para continuar o cadastro.');
				document.aceito.contato.focus();
				return false;
			}
}



function mascara(o,f){
    v_obj=o
    v_fun=f
    setTimeout("execmascara()",1)
}

function execmascara(){
    v_obj.value=v_fun(v_obj.value)
}

function leech(v){
    v=v.replace(/o/gi,"0")
    v=v.replace(/i/gi,"1")
    v=v.replace(/z/gi,"2")
    v=v.replace(/e/gi,"3")
    v=v.replace(/a/gi,"4")
    v=v.replace(/s/gi,"5")
    v=v.replace(/t/gi,"7")
    return v
}

function soNumeros(v){
    return v.replace(/\D/g,"")
}

function telefone(v){
    v=v.replace(/\D/g,"")                 //Remove tudo o que não é dígito
    v=v.replace(/^(\d\d)(\d)/g,"($1) $2") //Coloca parênteses em volta dos dois primeiros dígitos
    v=v.replace(/(\d{4})(\d)/,"$1-$2")    //Coloca hífen entre o quarto e o quinto dígitos
    return v
}

function cpf(v){
    v=v.replace(/\D/g,"")                    //Remove tudo o que não é dígito
    v=v.replace(/(\d{3})(\d)/,"$1.$2")       //Coloca um ponto entre o terceiro e o quarto dígitos
    v=v.replace(/(\d{3})(\d)/,"$1.$2")       //Coloca um ponto entre o terceiro e o quarto dígitos
                                             //de novo (para o segundo bloco de números)
    v=v.replace(/(\d{3})(\d{1,2})$/,"$1-$2") //Coloca um hífen entre o terceiro e o quarto dígitos
    return v
}

function cep(v){
    v=v.replace(/D/g,"")                //Remove tudo o que não é dígito
    v=v.replace(/^(\d{5})(\d)/,"$1-$2") //Esse é tão fácil que não merece explicações
    return v
}

function cnpj(v){
    v=v.replace(/\D/g,"")                           //Remove tudo o que não é dígito
    v=v.replace(/^(\d{2})(\d)/,"$1.$2")             //Coloca ponto entre o segundo e o terceiro dígitos
    v=v.replace(/^(\d{2})\.(\d{3})(\d)/,"$1.$2.$3") //Coloca ponto entre o quinto e o sexto dígitos
    v=v.replace(/\.(\d{3})(\d)/,".$1/$2")           //Coloca uma barra entre o oitavo e o nono dígitos
    v=v.replace(/(\d{4})(\d)/,"$1-$2")              //Coloca um hífen depois do bloco de quatro dígitos
    return v
}

function romanos(v){
    v=v.toUpperCase()             //Maiúsculas
    v=v.replace(/[^IVXLCDM]/g,"") //Remove tudo o que não for I, V, X, L, C, D ou M
    //Essa é complicada! Copiei daqui: http://www.diveintopython.org/refactoring/refactoring.html
    while(v.replace(/^M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/,"")!="")
        v=v.replace(/.$/,"")
    return v
}

function site(v){
    //Esse sem comentarios para que você entenda sozinho ;-)
    v=v.replace(/^http:\/\/?/,"")
    dominio=v
    caminho=""
    if(v.indexOf("/")>-1)
        dominio=v.split("/")[0]
        caminho=v.replace(/[^\/]*/,"")
    dominio=dominio.replace(/[^\w\.\+-:@]/g,"")
    caminho=caminho.replace(/[^\w\d\+-@:\?&=%\(\)\.]/g,"")
    caminho=caminho.replace(/([\?&])=/,"$1")
    if(caminho!="")dominio=dominio.replace(/\.+$/,"")
    v="http://"+dominio+caminho
    return v
}


function deleta(){
if(confirm("Tem certeza que deseja excluir?")){
return true;
} else {
return false;
}
}


function counterUpdate(opt_countedTextBox, opt_countBody, opt_maxSize) {
var countedTextBox = opt_countedTextBox ? opt_countedTextBox : "counttxt";
var countBody = opt_countBody ? opt_countBody : "countBody";
var maxSize = opt_maxSize ? opt_maxSize : 1024;

var field = document.getElementById(countedTextBox);

if (field && field.value.length >= maxSize) {
field.value = field.value.substring(0, maxSize);
}
var txtField = document.getElementById(countBody);
if (txtField) {
txtField.innerHTML = field.value.length;
}
}






function isEmailAddr(email){
  var result = false;
  var theStr = new String(email);
  var index = theStr.indexOf("@");
  if (index > 0){
    var pindex = theStr.indexOf(".",index);
    if ((pindex > index+1) && (theStr.length > pindex+1))
	result = true;
  }
  return result;
}

function validRequired(formField,fieldLabel){
	var result = true;
	if (formField.value == ""){
		alert('O campo "' + fieldLabel +'" deve ser preenchido.');
		formField.focus();
		result = false;
	}

	return result;
}

function allDigits(str){
   return inValidCharSet(str,"0123456789");
}

function inValidCharSet(str,charset){
	var result = true;
	for (var i=0;i<str.length;i++)
		if (charset.indexOf(str.substr(i,1))<0) {
			result = false;
			break;
		}

	return result;
}

function validEmail(formField,fieldLabel,required){
	var result = true;

	if (required && !validRequired(formField,fieldLabel))
		result = false;

	if (result && ((formField.value.length < 3) || !isEmailAddr(formField.value)) )	{
		alert("O email foi digitado de forma incorreta");
		formField.focus();
		result = false;
	}

  return result;

}

function validNum(formField,fieldLabel,required){
	var result = true;
	if (required && !validRequired(formField,fieldLabel)) result = false;
 	if (result) {
 		if (!allDigits(formField.value)){
 			alert('Por favor, preencha o campo "' + fieldLabel +'" com um número válido.');
			formField.focus();
			result = false;
		}
	}
	return result;
}


function validInt(formField,fieldLabel,required){
	var result = true;
	if (required && !validRequired(formField,fieldLabel)) result = false;
 	if (result){
 		var num = parseInt(formField.value);
 		if (isNaN(num)){
 			alert('Por favor, preencha o campo "' + fieldLabel +'" com um número válido.');
			formField.focus();
			result = false;
		}
	}
	return result;
}

function validDate(formField,fieldLabel,required){
	var result = true;
	if (required && !validRequired(formField,fieldLabel)) result = false;
 	if (result){
 		var elems = formField.value.split("/");
 		result = (elems.length == 3); // should be three components
 		if (result)	{
 			var month = parseInt(elems[0]);
  			var day = parseInt(elems[1]);
 			var year = parseInt(elems[2]);
			result = allDigits(elems[0]) && (month > 0) && (month < 13) &&
					 allDigits(elems[1]) && (day > 0) && (day < 32) &&
					 allDigits(elems[2]) && ((elems[2].length == 2) || (elems[2].length == 4));
 		}
  		if (!result){
 			alert('Entre uma data válida no formato MM/DD/YYYY para o campo "' + fieldLabel +'".');
			formField.focus();
		}
	}

	return result;
}

function validateForm(theForm){
   if (!validRequired(theForm.Nome,"Nome")) return false;
    if (!validRequired(theForm.Cidade,"Cidade")) return false;
   if (!validEmail(theForm.Email,"Email",true)) return false;
   if (!validDate(theForm.Data,"Data",true)) return false;
   if (!validNum(theForm.Valor,"Valor",true)) return false;
   return true;
}


// esta parte abaixo faz busca no bando de dados via ajax


//	Variável que receberá o objeto XMLHttpRequest
var req2;

function validarAjax(campo, valor, tipo, tipo2) {

	// Verificar o Browser
	// Firefox, Google Chrorme, Safari e outros
	if(window.XMLHttpRequest) {
		req2	= new XMLHttpRequest();
	}
	// Internet Explorer
	else if(window.ActiveXObject) {
		req2 = new ActiveXObject("Microsoft.XMLHTTP");
	}

	// Aqui vão os valores, caso haja mais de um, e o nome do campo que pediu a requisição.
	var url = "includes/ajax.php?campo="+campo+"&valor="+valor+"&tipo="+tipo+"&tipo2="+tipo2;

	// Chamada do método open para processar a requisição
	req2.open("Get", url, true);
    // Quando o objeto recebe o retorno, chamamos a função callback();
	req2.onreadystatechange = function() {

		// Exibindo mensagem de carregar
		if(req2.readyState == 1) {
			document.getElementById('campo_' + campo + '').innerHTML = '<font color="gray"><img border="0" src="scripts/graphics/loader.white.gif">&nbsp;Aguarde...</font>';
		}

		// Verifica se o Ajax realizou todas as operações corretamente (essencial)
		if(req2.readyState == 4 && req2.status == 200) {
	        // Resposta retornada pelo executor.php
			var resposta = req2.responseText;

			// Abaixo colocamos a resposta na div do campo que fez a requisição
			document.getElementById('campo_'+ campo +'').innerHTML = resposta;
		}

	}

	req2.send(null);

}


var req;

function lista_emails(campo, Valor, tipo, tipo2) {

	// Verificar o Browser
	// Firefox, Google Chrorme, Safari e outros
	if(window.XMLHttpRequest) {
		req	= new XMLHttpRequest();
	}
	// Internet Explorer
	else if(window.ActiveXObject) {
		req = new ActiveXObject("Microsoft.XMLHTTP");
	}

	// Aqui vão os valores, caso haja mais de um, e o nome do campo que pediu a requisição.
	var url = "includes/lista_emails_ajax.php?campo="+campo+"&Valor="+Valor+"&tipo="+tipo+"&tipo2="+tipo2;

	// Chamada do método open para processar a requisição
	req.open("Get", url, true);
    // Quando o objeto recebe o retorno, chamamos a função callback();
	req.onreadystatechange = function() {

		// Exibindo mensagem de carregar
		if(req.readyState == 1) {
			document.getElementById('campo_' + campo + '').innerHTML = '<font color="gray"><img border="0" src="scripts/graphics/loader.white.gif">&nbsp;Aguarde...</font>';
		}

		// Verifica se o Ajax realizou todas as operações corretamente (essencial)
		if(req.readyState == 4 && req.status == 200) {
	        // Resposta retornada pelo executor.php
			var resposta = req.responseText;

			// Abaixo colocamos a resposta na div do campo que fez a requisição
			document.getElementById('campo_'+ campo +'').innerHTML = resposta;
		}

	}

	req.send(null);

}
