/*
*    Script:    Mascaras em Javascript
*    Autor:    Matheus Biagini de Lima Dias
*    Data:    26/08/2008
*    Obs:    
*/
    /*Função Pai de Mascaras*/
    function Mascara(o,f){
        v_obj=o
        v_fun=f
        setTimeout("execmascara()",1)
    }
    
    /*Função que Executa os objetos*/
    function execmascara(){
        v_obj.value=v_fun(v_obj.value)
    }
    
    /*Função que Determina as expressões regulares dos objetos*/
    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
    }
	
    	/*Função que permite apenas Alpha*/
    function Alfa(v){
        return v.replace(/[^a-zA-Z\ âáãéêíóôõúüçÂÁÃÉÊÍÓÔÕÚÜÇ\'\-]+$/g,"")
    }	
	
	/*Função que permite apenas Caracter de e-mail*/
    function Mail(v){
        return v.replace(/[^a-z\@\.\_\0123456789\-]+$/g,"")
    }
	
    /*Função que permite apenas Numéricos*/
    function Integer(v){
        return v.replace(/\D/g,"")
    }
    
    /*Função que padroniza telefone (11) 4184-1241*/
    function Telefone(v){
        v=v.replace(/\D/g,"")                 
        v=v.replace(/^(\d\d)(\d)/g,"($1) $2") 
        v=v.replace(/(\d{4})(\d)/,"$1-$2")    
        return v
    }
    
    /*Função que padroniza telefone (11) 41841241*/
    function TelefoneCall(v){
        v=v.replace(/\D/g,"")                 
        v=v.replace(/^(\d\d)(\d)/g,"($1) $2")    
        return v
    }
    
    /*Função que padroniza CPF*/
    function Cpf(v){
        v=v.replace(/\D/g,"")                    
        v=v.replace(/(\d{3})(\d)/,"$1.$2")       
        v=v.replace(/(\d{3})(\d)/,"$1.$2")       
                                                 
        v=v.replace(/(\d{3})(\d{1,2})$/,"$1-$2") 
        return v
    }
    
	/*Função que valida o CPF digitado*/
function ValidarCPF(Objcpf){
    var cpf = Objcpf.value;
    exp = /\.|\-/g
    cpf = cpf.toString().replace( exp, "" );
    var digitoDigitado = eval(cpf.charAt(9)+cpf.charAt(10));
    var soma1=0, soma2=0;
    var vlr =11;
    
    for(i=0;i<9;i++){
        soma1+=eval(cpf.charAt(i)*(vlr-1));
        soma2+=eval(cpf.charAt(i)*vlr);
        vlr--;
    }    
    soma1 = (((soma1*10)%11)==10 ? 0:((soma1*10)%11));
    soma2=(((soma2+(2*soma1))*10)%11);
    
    var digitoGerado=(soma1*10)+soma2;
    if(digitoGerado!=digitoDigitado)
	   alert('CPF Invalido!');        
}

	
    /*Função que padroniza CEP*/
    function Cep(v){
        v=v.replace(/D/g,"")                
        v=v.replace(/^(\d{5})(\d)/,"$1-$2") 
        return v
    }
    
    /*Função que padroniza CNPJ*/
    function Cnpj(v){
        v=v.replace(/\D/g,"")                   
        v=v.replace(/^(\d{2})(\d)/,"$1.$2")     
        v=v.replace(/^(\d{2})\.(\d{3})(\d)/,"$1.$2.$3") 
        v=v.replace(/\.(\d{3})(\d)/,".$1/$2")           
        v=v.replace(/(\d{4})(\d)/,"$1-$2")              
        return v
    }
    
	//valida o CNPJ digitado
function ValidarCNPJ(ObjCnpj){
    var cnpj = ObjCnpj.value;
    var valida = new Array(6,5,4,3,2,9,8,7,6,5,4,3,2);
    var dig1= new Number;
    var dig2= new Number;
    
    exp = /\.|\-|\//g
    cnpj = cnpj.toString().replace( exp, "" );
    var digito = new Number(eval(cnpj.charAt(12)+cnpj.charAt(13)));
        
    for(i = 0; i<valida.length; i++){
        dig1 += (i>0? (cnpj.charAt(i-1)*valida[i]):0);    
        dig2 += cnpj.charAt(i)*valida[i];    
    }
    dig1 = (((dig1%11)<2)? 0:(11-(dig1%11)));
    dig2 = (((dig2%11)<2)? 0:(11-(dig2%11)));
    
    if(((dig1*10)+dig2) != digito)    
        alert('CNPJ Invalido!');
        
}
	
    /*Função que permite apenas numeros Romanos*/
    function Romanos(v){
        v=v.toUpperCase()             
        v=v.replace(/[^IVXLCDM]/g,"") 
        
        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
    }
    
    /*Função que padroniza o Site*/
    function Site(v){
        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
    }

    /*Função que padroniza DATA*/
    function Data(v){
        v=v.replace(/\D/g,"") 
        v=v.replace(/(\d{2})(\d)/,"$1/$2") 
        v=v.replace(/(\d{2})(\d)/,"$1/$2") 
        return v
    }
    
    /*Função que padroniza HORA*/
    function Hora(v){
        v=v.replace(/\D/g,"") 
        v=v.replace(/(\d{2})(\d)/,"$1:$2")  
        return v
    }
    
    /*Função que padroniza valor monétario*/
    function Valor(v){
        v=v.replace(/\D/g,"") //Remove tudo o que não é dígito
        v=v.replace(/^([0-9]{3}\.?){3}-[0-9]{2}$/,"$1.$2");
        //v=v.replace(/(\d{3})(\d)/g,"$1,$2")
        v=v.replace(/(\d)(\d{2})$/,"$1.$2") //Coloca ponto antes dos 2 últimos digitos
        return v
    }
    
    /*Função que padroniza Area*/
    function Area(v){
        v=v.replace(/\D/g,"") 
        v=v.replace(/(\d)(\d{2})$/,"$1.$2") 
        return v
        
    }
		
	    /*Função que apaga o valor padrão do campo texto para o usuário digitar*/
	   function myFocus(element) {
     if (element.value == element.defaultValue) {
       element.value = '';
     }
   }
	    /*Função que volta ao valor padrão do campo texto caso o usuário não mude*/   
   function myBlur(element) {
     if (element.value == '') {
       element.value = element.defaultValue;
     }
   }
   
   /*Função que ativa o "focus" no Internet Explorer*/
   sfFocus = function() {
var sfEls = document.getElementsByTagName("INPUT");
for (var i=0; i<sfEls.length; i++) {
sfEls[i].onfocus=function() {
this.className+=" sffocus";
}
sfEls[i].onblur=function() {
this.className=this.className.replace(new RegExp(" sffocus\\b"), "");
}
}
}
if (window.attachEvent) window.attachEvent("onload", sfFocus);

/*
function anulaTeclaEnter(e)
{
     var key;     
     if(window.event)
          key = window.event.keyCode; //IE
     else
          key = e.which; //firefox     

     return (key != 13);
}

*/

function preenchaSemana(){ 
 // this function is used to fill the category list on load
addOption(document.agendaAcup.semana, "2", "Segunda");
addOption(document.agendaAcup.semana, "3", "Terça");
addOption(document.agendaAcup.semana, "4", "Quarta");
addOption(document.agendaAcup.semana, "5", "Quinta");
addOption(document.agendaAcup.semana, "6", "Sexta");
addOption(document.agendaAcup.semana, "7", "Sábado");
}

function preenchaData(){
// ON selection of category this function will work
removeAllOptions(document.agendaAcup.data);
if(document.agendaAcup.semana.value == '')
{
	removeAllOptions(document.agendaAcup.data);
	removeAllOptions(document.agendaAcup.hora);
	return;
}

//para segunda-feira
if(document.agendaAcup.semana.value == '2')
{
addOption(document.agendaAcup.data, "", "");
addOption(document.agendaAcup.data,"5","05/12/2011");
addOption(document.agendaAcup.data,"11","12/12/2011");
addOption(document.agendaAcup.data,"17","02/01/2012");
addOption(document.agendaAcup.data,"23","09/01/2012");
addOption(document.agendaAcup.data,"29","16/01/2012");
addOption(document.agendaAcup.data,"35","23/01/2012");
addOption(document.agendaAcup.data,"41","30/01/2012");
addOption(document.agendaAcup.data,"47","06/02/2012");
addOption(document.agendaAcup.data,"53","13/02/2012");
}
//para terça-feira
if(document.agendaAcup.semana.value == '3')
{
addOption(document.agendaAcup.data, "", "");
addOption(document.agendaAcup.data,"6","06/12/2011");
addOption(document.agendaAcup.data,"12","13/12/2011");
addOption(document.agendaAcup.data,"18","03/01/2012");
addOption(document.agendaAcup.data,"24","10/01/2012");
addOption(document.agendaAcup.data,"30","17/01/2012");
addOption(document.agendaAcup.data,"36","24/01/2012");
addOption(document.agendaAcup.data,"42","31/01/2012");
addOption(document.agendaAcup.data,"48","07/02/2012");
addOption(document.agendaAcup.data,"54","14/02/2012");
}
//para quarta-feira
if(document.agendaAcup.semana.value == '4')
{
addOption(document.agendaAcup.data, "", "");
addOption(document.agendaAcup.data,"1","30/11/2011");
addOption(document.agendaAcup.data,"7","07/12/2011");
addOption(document.agendaAcup.data,"13","14/12/2011");
addOption(document.agendaAcup.data,"19","04/01/2012");
addOption(document.agendaAcup.data,"25","11/01/2012");
addOption(document.agendaAcup.data,"31","18/01/2012");
addOption(document.agendaAcup.data,"37","25/01/2012");
addOption(document.agendaAcup.data,"43","01/02/2012");
addOption(document.agendaAcup.data,"49","08/02/2012");
addOption(document.agendaAcup.data,"55","15/02/2012");
}

//para quinta-feira
if(document.agendaAcup.semana.value == '5')
{
addOption(document.agendaAcup.data, "", "");
addOption(document.agendaAcup.data,"2","01/12/2011");
addOption(document.agendaAcup.data,"8","08/12/2011");
addOption(document.agendaAcup.data,"14","15/12/2011");
addOption(document.agendaAcup.data,"20","05/01/2012");
addOption(document.agendaAcup.data,"26","12/01/2012");
addOption(document.agendaAcup.data,"32","19/01/2012");
addOption(document.agendaAcup.data,"38","26/01/2012");
addOption(document.agendaAcup.data,"44","02/02/2012");
addOption(document.agendaAcup.data,"50","09/02/2012");
addOption(document.agendaAcup.data,"56","16/02/2012");
}

//para sexta-feira
if(document.agendaAcup.semana.value == '6')
{
addOption(document.agendaAcup.data, "", "");
addOption(document.agendaAcup.data,"3","02/12/2011");
addOption(document.agendaAcup.data,"9","09/12/2011");
addOption(document.agendaAcup.data,"15","16/12/2011");
addOption(document.agendaAcup.data,"21","06/01/2012");
addOption(document.agendaAcup.data,"27","13/01/2012");
addOption(document.agendaAcup.data,"33","20/01/2012");
addOption(document.agendaAcup.data,"39","27/01/2012");
addOption(document.agendaAcup.data,"45","03/02/2012");
addOption(document.agendaAcup.data,"51","10/02/2012");
addOption(document.agendaAcup.data,"57","17/02/2012");
}

//para sábado
if(document.agendaAcup.semana.value == '7')
{
addOption(document.agendaAcup.data, "", "");
addOption(document.agendaAcup.data,"4","03/12/2011");
addOption(document.agendaAcup.data,"10","10/12/2011");
addOption(document.agendaAcup.data,"16","17/12/2011");
addOption(document.agendaAcup.data,"22","07/01/2012");
addOption(document.agendaAcup.data,"28","14/01/2012");
addOption(document.agendaAcup.data,"34","21/01/2012");
addOption(document.agendaAcup.data,"40","28/01/2012");
addOption(document.agendaAcup.data,"46","04/02/2012");
addOption(document.agendaAcup.data,"52","11/02/2012");
addOption(document.agendaAcup.data,"58","18/02/2012");
}


removeAllOptions(document.agendaAcup.hora);


if(document.agendaAcup.semana.value != "7"){
addOption(document.agendaAcup.hora, "", "");
addOption(document.agendaAcup.hora,"6","14:00");
addOption(document.agendaAcup.hora,"7","14:30");
addOption(document.agendaAcup.hora,"8","15:00");
addOption(document.agendaAcup.hora,"9","15:30");
addOption(document.agendaAcup.hora,"10","16:00");
addOption(document.agendaAcup.hora,"11","16:30");
addOption(document.agendaAcup.hora,"12","17:00");
}else {
addOption(document.agendaAcup.hora, "", "");
addOption(document.agendaAcup.hora,"1","09:00");
addOption(document.agendaAcup.hora,"2","09:30");
addOption(document.agendaAcup.hora,"3","10:00");
addOption(document.agendaAcup.hora,"4","10:30");
addOption(document.agendaAcup.hora,"5","11:00");
}

}



function removeAllOptions(selectbox)
{
	var i;
	for(i=selectbox.options.length-1;i>=0;i--)
	{
		//selectbox.options.remove(i);
		selectbox.remove(i);
	}
}


function addOption(selectbox, value, text )
{
	var optn = document.createElement("OPTION");
	optn.text = text;
	optn.value = value;

	selectbox.options.add(optn);
}


function move_box(an, box) {
  var cleft = 0;
  var ctop = 0;
  var obj = an;
  
  while (obj.offsetParent) {
    cleft += obj.offsetLeft;
    ctop += obj.offsetTop;
    obj = obj.offsetParent;
  }
  box.style.left = cleft + 'px';
  ctop += an.offsetHeight + 0;
  if (document.body.currentStyle && document.body.currentStyle['marginTop']) {
    ctop += parseInt(document.body.currentStyle['marginTop']);
  }
  box.style.top = ctop + 'px';
}

function show_hide_box(an, width, height, borderStyle) {
  var href = an.name;
  var id = an.id;
  var boxdiv = document.getElementById(href);
  document.getElementById(id).src="images/fecharMail.png";

  if (boxdiv != null) {
    if (boxdiv.style.display=='none') {
      move_box(an, boxdiv);
      boxdiv.style.display='block';
	} else {
      boxdiv.style.display='none';
	  document.getElementById(id).src="images/enviarMail.png";
	   
		}
   return false;
  }

  boxdiv = document.createElement('div');
  boxdiv.setAttribute('id', href);
  boxdiv.style.display = 'block';
  boxdiv.style.position = 'absolute';
  boxdiv.style.width = width + 'px';
  boxdiv.style.height = height + 'px';
  boxdiv.style.border = borderStyle;
  boxdiv.style.backgroundColor = '#fff';

  
  var contents = document.createElement('iframe');
  contents.scrolling = 'no';
  contents.frameBorder = '0';
  contents.style.width = width + 'px';
  contents.style.height = height + 'px';
  contents.src = href;

  boxdiv.appendChild(contents);
  document.body.appendChild(boxdiv);
  move_box(an, boxdiv);

  return false;
}

