//*****************************************************************************
//Objetivo:					Encapsular funcionalidades do Envio de Email; Troca de Imagens;
//Autor:					Flávio Almeida
//Data:						19/11/2004
//Autor:					Cristiane Habiro
//Data Ultima alteração:	26/04/2006
//Motivo:					Validar campo de e-mail

//*****************************************************************************

//============================================================================================
// objetivo........: Funções Macromedia para troca de imagens
// Premissas.......:
// Entradas........: 
// Retorno.........: 
//============================================================================================	

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}
//============================================================================================
// objetivo........: Abre e Fecha do Menu 
// Premissas.......:
// Entradas........: intCatalogo quantidade de itens do menu
//				   : objNome nome do objeto 
// Retorno.........:
//============================================================================================	
function checkExpand(intCatalogo,objNome) 
{ 
	strId = objNome + "Sub";
	objEl = document.getElementById(strId);
	
	if(document.getElementById(strId).style.display!='none')
	{
		document.getElementById(strId).style.display='none';
	}
	else
	{
		ComprimeMenu(intCatalogo,objNome); 
		if (null!=objEl) objEl.style.display = "none" == objEl.style.display ? "" : "none" 
			return (false);
	}	
}
//============================================================================================
// objetivo........: Função comprime Menu
// Premissas.......:
// Entradas........:	intCatalogo
// Retorno.........:
//============================================================================================
function ComprimeMenu(intCatalogo,objNome) 
{ 
        var strItemMenu = "";		// composiçao do nome do submenu
        var strAux = "I";			// Variavel auxiliar para incremento do submenu
        var intMax = intCatalogo;	// Numero de menu	
        var intInd;					// Variavel usada no laço for
		
		
		for(intInd=1;intInd<=intMax;intInd++) 
        { 
                strItemMenu = objNome.substring(0,1) + strAux + "Sub"; 
                document.getElementById(strItemMenu).style.display = "none"; 
				
                strAux = strAux + "I"; 
        }
}
//============================================================================================
// objetivo........: Seleciona Menu
// Premissas.......:
// Entradas........:	
// Retorno.........:
//============================================================================================
function selecionaMenu()
{
	var strUrl = window.location.href; // Recebe url
	var strPagina = new String(strUrl.substr(strUrl.lastIndexOf('\/') + 1)); // Pega o nome da página
	var gintAux // Variavel usada no laço for
	
	if(gstrRetMenu!="" && gstrRetSubMenu!="")
	{
		checkExpand(gintQdade,gstrRetMenu);
		if (gstrRetSubMenu!='Indefinido')
			document.getElementById(gstrRetSubMenu).style.color = "#00AF9D";
	}
}
//============================================================================================
// objetivo........: Submete form
// Premissas.......:
// Entradas........: objFrm		objeto form
//				   : gstrLink	link para a página
//				   : strId      id menu
//				   : strIdSub   id sub menu srtTarget
//				   : srtTarget   Janela nova
// Retorno.........:
//============================================================================================
function SubmetForm(objFrm,gstrLink,strId,strIdSub,intQuantidade,srtTarget)
{
	try
	{	

		if(srtTarget=='_self')
		{
			if (gstrLink.indexOf("#")==-1)
			{
				objFrm.txtID.value = strId;
				objFrm.txtIDSub.value = strIdSub;
				objFrm.txtQdade.value = intQuantidade;
				objFrm.txtLink.value = gstrLink;
				objFrm.action =gstrLink;
				objFrm.submit();
			}
		}
		else
		{
			window.open(gstrLink,srtTarget);
		}	
	}
	catch(objException)
	{
		alert(objException.toString())
	}

}
//*****************************************************************************
//Objetivo:					Chama a função que que valida dados 
//Entradas:					-
//Saída:					Nenhuma
//*****************************************************************************	
function Valida()
{
	Validacao();
}

//*****************************************************************************
//Objetivo:					Validar os dados do formulário
//Entradas:					-
//Saída:					Nenhuma
//*****************************************************************************		
	function Validacao()
	{
		var strEmail = document.frmEnviar.txtEmail.value // Recebe o valor do Email
		if (document.frmEnviar.txtNome.value == "")
		{
			alert("Por Favor preencha o campo Nome.");
			document.frmEnviar.txtNome.focus();
			return(false);
		}
		if ((strEmail == "")){
			alert("Por Favor preencha o campo e-mail.");
			document.frmEnviar.txtEmail.focus();
			return false;								
		}
		if (!ValidarEmail(strEmail)){
			alert("E-mail inválido.");
			document.frmEnviar.txtEmail.focus();
			return false;								
		}
		if (document.frmEnviar.txtAssunto.value == "")
		{
			alert("Por Favor preencha o campo Assunto.");
			document.frmEnviar.txtAssunto.focus();
			return(false);
		}
		if (document.frmEnviar.txtMensagem.value == "")
		{
			alert("Por Favor preencha o campo Mensagem.");
			document.frmEnviar.txtMensagem.focus();
			return(false);
		}
		document.frmEnviar.submit();
	}
	
	
	
	
	
	
	
/* função duplicada, não apagar até a publicação por Revisão estiver ok, qualquer dúvida falar com Cristiane Habiro*/		
	
//*****************************************************************************
//Objetivo:					Encapsular funcionalidades do Site
//Autor:					- Marcelo Pacheco (7COMm)
//Data:						- 19/04/2006
//Autor:					
//Data Ultima alteração:	
//Motivo:					
//*****************************************************************************
//*****************************************************************************
// DECLARAÇÃO DAS VARIÁVEIS
//*****************************************************************************
//Variáveis Globais
// ----------------------------------------------------------------------------
// Objetivo  : Validar Email
// Premissas : Nenhuma
// Entradas  : strEmail - Email recebido para validação
// Retorno   : true ou false
// ----------------------------------------------------------------------------
function ValidarEmail(strEmail)
{
	try
    {
		var strPadrao = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i; // Regra da expressão regular
		var objReg = new RegExp(strPadrao); // Objeto Expressão Regular
		var blnCondicao // Variavel auxiliar true or false
	    
		objReg.exec(strPadrao)
		objReg.global == true;
		if (!(objReg.test(strEmail)))
		{   
			throw "Email Inválido";
		}
		blnCondicao = true;
	}
	catch(objEx)
	{
		blnCondicao = false;
	}
	finally
	{
		return blnCondicao
	}
}
// ----------------------------------------------------------------------------
// Objetivo  : Validar Número
// Premissas : Nenhuma
// Entradas  : strNumero - valor recebido para validação
// Retorno   : true ou false
// ----------------------------------------------------------------------------
function ValidarNumero(strNumero)
{
	try
    {
		var strPadrao = /[\D]/; // Regra da expressão regular
		var objReg = new RegExp(strPadrao); // Objeto Expressão Regular
		var blnCondicao // Variavel auxiliar true or false
	    
		objReg.exec(strPadrao)
		objReg.global == true;
		if ((objReg.test(strNumero)))
		{   
			throw "Valor Inválido";
		}
		blnCondicao = true;
	}
	catch(objEx)
	{
		blnCondicao = false;
	}
	finally
	{
		return blnCondicao
	}
}
//============================================================================================
// objetivo........: Verifica se numero do CNPJ é valido
// Premissas.......:
// Entradas........: intCNPJ
// Retorno.........: true - numero valido / false - numero invalido
//============================================================================================
function ValidaCNPJ(intCNPJ)
{
   var intCNPJLocal ;		//Numero do CNPJ
   var intRespostaLocal ;	//Resposta Local
   var intDigito1 ;			//Digito Verificador 1
   var intDigito2 ;			//Digito Verificador 2
   var intCont ;			//Contador
   var intSoma ;			//Soma
   var blnCondicao = true				// variavel boleana de controle
   try
   {
	   intCNPJLocal = intCNPJ ;
	 
	  if ((intCNPJLocal.length < 14) || (intCNPJLocal == "00000000000000"))
	  {
	    intRespostaLocal = false ;
	  }
	  else
	  {
		intRespostaLocal = true ;
	  }
	 
	  if (intRespostaLocal == true)
	  {
			intSoma = 0 ;
	 
			for (intCont = 1; intCont <= 12; intCont++) 
			{
				if (intCont < 5)
				{
					intSoma = intSoma + (intCNPJLocal.substring(intCont-1,intCont) * (6-intCont))
				}
				else
				{
					intSoma = intSoma + (intCNPJLocal.substring(intCont-1,intCont) * (14-intCont))
				}
			}
	 
			intDigito1 = 11 - (intSoma % 11) ;
			if (intDigito1 > 9)
			{
				intDigito1 = 0 ;
			}
	 
			intSoma = 0 ;
	   
			for (intCont = 1; intCont <= 13; intCont++)
			{
				if (intCont < 6)
			    {
					intSoma = intSoma + (intCNPJLocal.substring(intCont-1,intCont) * (7-intCont)) ;
			    }
			    else
			    {
					intSoma = intSoma + (intCNPJLocal.substring(intCont-1,intCont) * (15-intCont)) ;
			    }
			}
	 
			intDigito2 = 11 - (intSoma % 11) ;
			if (intDigito2 > 9)
			{
				intDigito2 = 0 ;
			}
	 
			if ((intDigito1 == intCNPJLocal.substr(12,1)) && (intDigito2 == intCNPJLocal.substr(13,1)))
			{
				intRespostaLocal = true
			}
			else 
			{
			   throw "false"
			}	 
		}
	}
	catch(objEx)
	{
		 blnCondicao = false
	}
	finally
	{
		return blnCondicao
	}
}
/******************************************************************************
/ Objetivo  : Validar se o CPF é válido
/ Premissas : Nenhuma
/ Entradas  : strCPF CPF do usuário
/ Retorno   : true or false
/******************************************************************************/
function ValidaCPF(strCPF)
{
	var strCharCPF = false;				//Caracter do CPF
	var strFirstChr = strCPF.charAt(0);	//Primeiro caracter
	var blnCondicao = true				// variavel boleana de controle
	var intCont							// Variavel Auxiliar utilizada no laço for
	var strDigitoVerificador			// Digito Verificador
	var	intSoma							// Recebe soma do modulo 11
	var strCaracter
	try
	{
		for ( var intCont=0; intCont<=10; intCont++ )
		{
			strCaracter = strCPF.charAt(intCont);
			if( ! ((strCaracter>="0")&&(strCaracter<="9")) ) 
			{	
				throw "false";
			}
			if( strCaracter!=strFirstChr ) 
				strCharCPF = true;
		}
		if( ! strCharCPF ) {
			throw "false";
		}
		intSoma=0;
		for ( intCont=0; intCont<9; intCont++ ) { 
			intSoma += (10-intCont) * ( eval(strCPF.charAt(intCont)) ); 
		}
		strDigitoVerificador = 11-(intSoma % 11);
		if ( (intSoma % 11) < 2 ) 
			strDigitoVerificador = 0;
		if ( eval(strCPF.charAt(9)) != strDigitoVerificador ) { 
			throw "false";
		}
		intSoma=0; 
		for ( intCont=0; intCont<9; intCont++ ) { 
			intSoma += (11-intCont) * ( eval(strCPF.charAt(intCont)) ); 
		} 
		intSoma += 2 * ( eval(strCPF.charAt(9)) ); 
		strDigitoVerificador = 11-(intSoma % 11); 
		if ( (intSoma % 11) < 2 ) 
			strDigitoVerificador = 0; 
		if ( eval(strCPF.charAt(10)) != strDigitoVerificador ) { 
			throw "false"; 
		}
	}
	catch(objEx)
	{
		 blnCondicao = false
	}
	finally
	{
		return blnCondicao 
	}
}	