function funsite(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 validar_telefone(obj, digitos_validos)
{
    var telefone = obj.value;

    // Não foi enviado valor para a variável "digitos_validos".
    if (digitos_validos == undefined) {
        digitos_validos = "0123456789";
    }

    var i;
    var telefone_validado = "";

    for (i = 0; i < telefone.length; i++)
    {
        var c = telefone.charAt(i);
        if (digitos_validos.indexOf(c) != -1)
        {
            telefone_validado += c;
            	if (telefone_validado.length == 4)
            {
                telefone_validado += "-"
            }
        }
    }
    obj.value = telefone_validado;
}

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

function mascara(obj, funcao){
    // Essa função tem que ser chamada no código HTML passando:
    //  * obj: objeto HTML que será modificado.
    //  * funcao: função que será utilizada para modificar o objeto.

    v_obj = obj;
    v_fun = funcao;

    // Executa a máscada a cada 1ms para não haver problemas
    // com o navegador.
    setTimeout("executa_mascara()", 1);
}

function executa_mascara() {
    // Executa a função e substitui o valor do objeto HTML pelo
    // retorno da função.
    v_obj.value = v_fun(v_obj.value);
}

function funcep(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 funcpf(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 fundata(valor){ 
     valor = valor.replace(/\D/g,"")                 //Remove tudo o que não é dígito.
     valor = valor.replace(/^(\d\d)(\d)/g,"$1/$2")	//Coloca barra após os dois primeiros dígitos.
     valor = valor.replace(/(\d{2})(\d)/,"$1/$2")	//Coloca barra após os quatro primeiros dígitos.
     return valor
}
function funtelefone(valor) {
    valor = valor.replace(/\D/g,"")                 //Remove tudo o que não é dígito.
    valor = valor.replace(/^(\d\d)(\d)/g,"($1) $2") //Coloca parênteses em volta dos dois primeiros dígitos.
    valor = valor.replace(/(\d{4})(\d)/,"$1-$2")    //Coloca hífen entre o quarto e o quinto dígitos.
    return valor
}

function validar_email(obj) {
    var email = obj.value;

    var regEmail = new RegExp(".+?@.+?[.].+?");
    if (regEmail.test(email)) {
        alert("O e-mail inserido é válido.");
    } else {
        alert("Por favor insira um e-mail válido.");
    }
}


function validar_email(obj) {
    var email = obj.value;
	if (email!=""){
		var regEmail = new RegExp(".+?@.+?[.].+?");
		if (!regEmail.test(email)) {
			obj.value='';
			alert("Por favor insira um e-mail válido.");
			obj.focus();
		}
	}
}
function Tecla(){
	var tecla=event.keyCode;
	if (tecla > 47 && tecla < 58)//numeros de 0 a 9
		 return true;
	else{
	if (tecla != 8) //backspace
	event.keyCode = 0;
	//return false;
	else
	return true;
	}
}

function verifica_data1 (doc) { 
dia = (doc.value.substring(0,2)); 
mes = (doc.value.substring(3,5)); 
ano = (doc.value.substring(6,10)); 
data = doc.value;
situacao = ""; 
// verifica o dia valido para cada mes 
if ((dia < 01)||(dia < 01 || dia > 30) && (  mes == 04 || mes == 06 || mes == 09 || mes == 11 ) || dia > 31) { 
	situacao = "falsa"; 
} 
// verifica se o mes e valido 
if (mes < 01 || mes > 12 ) { 
	situacao = "falsa"; 
} 
// verifica se e ano bissexto 
if (mes == 2 && ( dia < 01 || dia > 29 || ( dia > 28 && (parseInt(ano / 4) != ano / 4)))) { 
	situacao = "falsa"; 
} 
if (ano < 1950 || ano > 2080){
	situacao = "falsa";
}
//if (data.length < 10) { 
//	situacao = "falsa"; 
//} 

if (doc.value == "") { 
	situacao = "verdadeira"; 
} 
if (situacao == "falsa") { 
	alert("Data inválida!"); 
	doc.value = "";
	doc.focus(); 
}
 
}

function testedata1(doc){
	var data;
	data = doc.value;
	if((data.length < 10 )&&(data.length != '')){
		alert("data inválida");
		doc.value = '';		
		doc.focus();
	}
}

function verifica_hora (doc) { 
hora = (doc.value.substring(0,2)); 
minu = (doc.value.substring(3,5)); 


situacao = ""; 
// verifica o dia valido para cada mes 
if (hora<00 && hora >23) { 
	situacao = "falsa"; 
} 
// verifica se o mes e valido 
if (minu < 00 || minu > 59 ) { 
	situacao = "falsa"; 
} 

if (doc.value == "") { 
	situacao = "verdadeira"; 
} 

if (situacao == "falsa") { 
	alert("Hora inválida!"); 
	doc.value = "";
	doc.focus(); 
}
 
}


function mascaradata1(doc){ 
  var mydata = ''; 
  mydata = mydata + doc.value; 
  if (mydata.length == 2){ 
	  mydata = mydata + '/'; 
	  doc.value = mydata;
     } 
  if (mydata.length == 5){ 
	  mydata = mydata + '/'; 
	  doc.value = mydata; 
     }
  if (mydata.length == 10){ 
	  verifica_data1(doc); 
     } 
  if (mydata.length > 10){
	alert("Data inválida!"); 
	doc.value = '';	
	doc.focus(); 
     }
} 

function mascarahora(doc){ 
  var mydata = ''; 
  mydata = mydata + doc.value; 
  if (mydata.length == 2){ 
	  mydata = mydata + ':'; 
	  doc.value = mydata;
     } 
  if (mydata.length == 5){ 
	  verifica_hora(doc); 
     } 
  if (mydata.length > 5){
	alert("Hora inválida!"); 
	doc.value = '';	
	doc.focus(); 
     }
} 


//  -----------------------------  FUNÇÕES DO AJAX -----------------------------------

	//Fila de conexões
	fila=[]
	ifila=0

function ajaxPOSTRun(url,parameters){
	
	xmlhttp.onreadystatechange = alertContents;
	xmlhttp.open('POST', url, true);
	xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlhttp.setRequestHeader("Content-length", parameters.length);
	xmlhttp.setRequestHeader("Connection", "close");
	xmlhttp.send(parameters);	
	
}


function ajaxHTML(id,url,carr){
		//Carregando...
		if (typeof carr == "undefined")
		document.getElementById(id).innerHTML="<div align='center'><p>Carregando...</p></div>";

		//Adiciona à fila
		fila[fila.length]=[id,url]
		//Se não há conexões pendentes, executa
		if((ifila+1)==fila.length)ajaxRun()
	}
	
function ajaxHTML2(id,url,carr){
	//Carregando...
	if (typeof carr == "undefined")

 	//Adiciona à fila
	fila[fila.length]=[id,url]
	//Se não há conexões pendentes, executa
	if((ifila+1)==fila.length)ajaxRun()
}
	
	//Executa a próxima conexão da fila
	function ajaxRun(){
		//Abre a conexão
		xmlhttp.open("GET",fila[ifila][1],true);
		//Função para tratamento do retorno
		xmlhttp.onreadystatechange=function() {
			if (xmlhttp.readyState==4){
				//Mostra o HTML recebido
				retorno=unescape(xmlhttp.responseText.replace(/\+/g," "))
				//retorno=xmlhttp.responseText
				document.getElementById(fila[ifila][0]).innerHTML=retorno
				//Roda o próximo
				ifila++
				if(ifila<fila.length) setTimeout("ajaxRun()",20)
				if(document.getElementById('calendario')){
					var myTips = new Tips($$('#calendario .agenda_data_marcada'),{maxTitleChars:200,onShow:function(x){x.setOpacity(0.9)}});
					$$(".tool-tip").each(function(x){
						x.setStyle("visibility","hidden");									  
					});
				}
			}
		}
		//Executa
		xmlhttp.send(null)
	}
	
	//Tenta criar o objeto xmlHTTP
	try{
		xmlhttp = new XMLHttpRequest();
	}catch(ee){
		try{
			xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		}catch(e){
			try{
				xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
			}catch(E){
				xmlhttp = false;
			}
		}
	}
	
	
