// JavaScript Document

function F_MsgErro()  {
	var strHTML = "";

	strHTML = "<br><table width='100%' border='0' cellpadding='1' cellspacing='1' bgcolor='#000000'> \n"
	strHTML +=	"<tr>\n"
	strHTML +=		"<td bgcolor='#FFFFFF'>\n"
	strHTML +=			"<table width='100%' border='0' cellpadding='1' cellspacing='1'>\n"
    strHTML +=      		"<tr bgcolor='#FFFFFF'>\n"
    strHTML +=     				"<td bgcolor='#FFFFFF' class='texto10pt' align='center'>\n"
    strHTML += 						"<b><font color='#FF0000'>Os campos listados abaixo não foram preenchidos<br>ou foram preenchidos incorretamente.\n"
	strHTML +=						"Por favor verifique-os!</font></b>\n"
    strHTML +=     				"</td>\n"
 	strHTML +=		      "</tr>\n"
	strHTML +=	"<tr>\n";
	strHTML +=		"<td class='texto10pt' bgcolor='#FFFFFF' style='list-style-image: url(images/bullet.gif);'><ul>";
	for(i=0;i<V_Erro.length;i++){
		if(!V_Erro[i][1]){
			strHTML += "<li>" + V_Erro[i] + "</li>";
		}else{
			strHTML += "<li>" + V_Erro[i][0] + ": " + V_Erro[i][1] + "</li>";
		}
	}
	strHTML +=		"</ul></td>";
	strHTML +=	"</tr>";
    strHTML += "</table>\n"
	strHTML +=		"</td>\n"
	strHTML +=	"</tr>\n"
	strHTML += "</table>\n";

	document.all.MsgErro.innerHTML = strHTML;
	window.scroll(1,1);
	
}

function F_Inteiro(arg1,arg2){
   var texto = '0123456789'
   
	for(i=0;i<arg1.length;i++){
		var cms = arg1.substr(i, 1);
		if(texto.indexOf(cms) == -1){
			F_Erro(arg2,'Este campo só aceita valores inteiros!');
			break;
		}	
	}
}

function F_Moeda(arg1,arg2){
	var virgula = arg1.indexOf(",");
	var fl_erro = false;
	var texto = '0123456789,'

	for(i=0;i<arg1.length;i++){
		var cms = arg1.substr(i, 1);
		if(texto.indexOf(cms) == -1){
			fl_erro = true
		}
	}

		if(virgula == arg1.length-3 || virgula == arg1.length-2){
			if(arg1.lenght > 2){
				var p = arg1.substr(0,virgula);
				var s = arg1.substr(virgula+1, arg1.length);

				if(p.length < 1 || s.length > 2){
					fl_erro = true;
				}else{
					var texto = '0123456789'
					for(i=0;i<p.length;i++){
						var cms = p.substr(i, 1);
						if(texto.indexOf(cms) == -1){
							fl_erro = true
						}
					}

					for(i=0;i<p.length;i++){
						var cms = p.substr(i, 1);
						if(texto.indexOf(cms) == -1){
							fl_erro = true
						}
					}

				}
			}
		}else{
			if(virgula != -1){
				fl_erro = true;
			}
		}
	if(fl_erro == true){
		F_Erro(arg2,"Este campo só aceita valores numéricos!");
	}
}

// data
function F_Data(arg1,arg2){
	var data = arg1;
 	var fl_erro = true;
	
	errodt = new String("Data Inválida!")
	dia = parseInt(data.substring(0,2));
	mes = parseInt(data.substring(3,5));
	ano = parseInt(data.substring(6,10));
	if(isNaN(dia) == true || isNaN(mes) == true || isNaN(ano) == true)
	{
		fl_erro = false;
	}
	if(data.indexOf("/") != 2 || data.lastIndexOf("/") != 5)
	{
		fl_erro = false;
	}
	if(mes == 2)
	{ 
		if(dia > 29)
		{ 
			fl_erro = false;
		} 
	}
	if(mes == 1 || mes == 3 || mes == 5 || mes == 7 || mes == 8 || mes == 10 || mes == 12)
	{ 
		if(dia > 31)
		{ 
			fl_erro = false;
		}
	}
	if(mes == 4 || mes == 6 || mes == 9 || mes == 11)
	{
		if(dia > 30)
		{
			fl_erro = false;
		}
	}
	if(ano == 0 || ano < 999)
	{
		fl_erro = false;
	}
	
		if(fl_erro==false)
		{
			F_Erro(arg2,"data inválida! Preencha o campo no formato dd/mm/aaaa e use somente números.");
		}
}

//Máscara da data
function M_data(arg)
{
	
	var valor;
	if(arg.length == 2)
	{
		valor = document.ficha_cadastral.data_nascimento.value = arg+"/";
	}
	if(arg.length == 5)
	{
		valor += document.ficha_cadastral.data_nascimento.value = arg+"/";
	}
}

//Máscara do telefone
function M_telefone(arg)
{
	
	var valor;
	if(arg.value.length == 4)
	{
		if(arg.nome == 'Telefone (Empresa)')
		{
			valor = document.ficha_cadastral.telefone_empresa.value = arg.value+"-";
		}
		else if(arg.nome == 'Fax')
		{
			valor = document.ficha_cadastral.fax_empresa.value = arg.value+"-";
		}
		else if(arg.nome == 'Telefone Celular')
		{
			valor = document.ficha_cadastral.telefone_celular.value = arg.value+"-";
		}
		else if(arg.nome == 'Telefone Residencial')
		{
			valor = document.ficha_cadastral.telefone_residencial.value = arg.value+"-";
		}
	}
}

//Máscara do telefone completo
function M_telefonecomp(arg)
{
	
	var valor;
	if(arg.value.length == 0)
	{
		valor = document.form.seu_telefone.value = arg.value+"(";
	}
	if(arg.value.length == 3)
	{
		valor = document.form.seu_telefone.value = arg.value+")";
	}
	if(arg.value.length == 4)
	{
		valor = document.form.seu_telefone.value = arg.value+" ";
	}
	if(arg.value.length == 9)
	{
		valor = document.form.seu_telefone.value = arg.value+"-";
	}
}

//Máscara do fax completo
function M_faxcomp(arg)
{
	
	var valor;
	if(arg.value.length == 0)
	{
		valor = document.form.seu_fax.value = arg.value+"(";
	}
	if(arg.value.length == 3)
	{
		valor = document.form.seu_fax.value = arg.value+")";
	}
	if(arg.value.length == 4)
	{
		valor = document.form.seu_fax.value = arg.value+" ";
	}
	if(arg.value.length == 9)
	{
		valor = document.form.seu_fax.value = arg.value+"-";
	}
}

//Máscara para horário de funcionamento (Formulário do cadastre sua loja)
function M_horario(arg)
{
	if(arg.name == "horario_abertura")
	{
		if(arg.value.length == 2)
		{
			document.form.horario_abertura.value = arg.value+":";
		}
	}
	else if(arg.name == "horario_fechamento")
	{
		if(arg.value.length == 2)
		{
			document.form.horario_fechamento.value = arg.value+":";
		}
	}
}

// hora
function F_Hora(arg1,arg2)
{
	var hora = arg1;
 	var fl_erro = true;
	
	errohr = new String("Hora Inválida!")
	hor = parseInt(hora.substring(0,2));
	min = parseInt(hora.substring(3,5));
	if(hora.indexOf(":") != 2)
	{
		F_Erro(arg2,"hora inválida! Preencha o campo no formato hh:mm.");
	}
	if(hor > 19)
	{ 
		F_Erro(arg2,"hora inválida! A hora deve ser entre 8 e 18");
	}
	if(min > 59)
	{ 
		F_Erro(arg2,"hora inválida! O minuto deve ser entre 00 e 59");
	}
	if(fl_erro==false)
	{
		F_Erro(arg2,"hora inválida! Preencha o campo no formato hh:mm.");
	}
}



// CNPJ
function F_CNPJ(arg1,arg2){
	var CNPJ = arg1; vaCharCGC = false;
	var varFirstChr = CNPJ.charAt(0);
	var vlMult,vlControle,s1, s2 = "";
	var i,j,vlDgito,vlSoma = 0;

for ( var i=0; i<=13; i++ ){
	var c = CNPJ.charAt(i);
		if(!(c>="0")&&(c<="9")){
			F_Erro("CNPJ inválido! Digite somente o valor numérico!");
			return false;
		}
		if(c!=varFirstChr){
			vaCharCGC = true;
		}
}

if(vaCharCGC==false) {
		F_Erro("CNPJ inválido! Digite somente o valor numérico!");
		return false;
}

s1 = CNPJ.substring(0,12);
s2 = CNPJ.substring(12,15);
vlMult = "543298765432";
vlControle = "";

for( j=1; j<3; j++ ){
	vlSoma = 0;
	for ( i=0; i<12; i++ ){
		vlSoma += eval( s1.charAt(i) )* eval( vlMult.charAt(i) );
	}
	if(j == 2){
		vlSoma += (2 * vlDgito);
	}

	vlDgito = ((vlSoma*10) % 11);
	if(vlDgito == 10){
		vlDgito = 0;
	}

	vlControle = vlControle + vlDgito;
	vlMult = "654329876543";
}

	if(vlControle != s2){
		F_Erro("CNPJ inválido! Digite somente o valor numérico!");
		return false;
	} else {
		return true;
	}
}

// CPF
function F_CPF(arg1,arg2){
	StrCPF = arg1;
	x = 0;
	soma = 0;
	dig1 = 0;
	dig2 = 0;
	texto = "";
	StrCPF1="";
	len = StrCPF.length;
	x = len -1;
	fl_erro = true;
	
	for (var i=0; i <= len - 3; i++){
		y = StrCPF.substring(i,i+1);
		soma = soma + ( y * x);
		x = x - 1;
		texto = texto + y;
	}

	dig1 = 11 - (soma % 11);
	if (dig1 == 10) dig1=0 ;
	if (dig1 == 11) dig1=0 ;
	StrCPF1 = StrCPF.substring(0,len - 2) + dig1 ;
	x = 11; soma=0;
	
	for (var i=0; i <= len - 2; i++){
		soma = soma + (StrCPF1.substring(i,i+1) * x);
		x = x - 1;
	}

	dig2= 11 - (soma % 11);
	if (dig2 == 10) dig2=0;
	if (dig2 == 11) dig2=0;
	if ((dig1 + "" + dig2) != StrCPF.substring(len,len-2)){
		F_Erro("CPF inválido! Digite somente os valores numéricos!");
		return false;
	} else {
		return true;
	}
}

//E-Mail
function F_Email(arg1,arg2){
	var email = arg1;
	var fl_erro = true;
	var reg1str = "(@.*@)|(\\.\\.)|(@\\.)|(\\.@)|(^\\.)";
	var reg2str = "^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,2})(\\]?)$";
	var reg1 = new RegExp(reg1str);
	var reg2 = new RegExp(reg2str);
	
	if(!reg1.test(email) && !reg2.test(email)){
		fl_erro = false;
	}

	if(fl_erro==false){
		F_Erro("E-mail inválido!");	
	}
}

// CEP
function F_CEP(arg1,arg2){
   var texto = '0123456789-'
   var fl_erro = false;
	   
   if(arg1.length != 9){
   	fl_erro = true;
   }
   
	for(i=0;i<arg1.length;i++){
		var cms = arg1.substr(i, 1);
		if(texto.indexOf(cms) == -1){
			fl_erro = true;
			break;
		}	
	}
	
	if(fl_erro==true){
		F_Erro("CEP inválido!");
	}
}

function F_Erro(arg1,arg2){
	v_id = V_Erro.length;
	
	if(!arg2){
		V_Erro[v_id] = arg1;
	}else{
		V_Erro[v_id] = new Array();
		V_Erro[v_id][0] = arg1;
		V_Erro[v_id][1] = arg2;
	}
}

//Mascara cep
function M_cep(arg)
{
	var valor;
	if(arg.nome == "CEP (Empresa)")
	{
		if(arg.value.length == 5)
		{
			valor = document.ficha_cadastral.cep_empresa.value = arg.value+"-";
		}
	}
	else if(arg.nome == "CEP (Residência)")
	{
		if(arg.value.length == 5)
		{
			valor = document.ficha_cadastral.cep.value = arg.value+"-";
		}
	}
	else if(arg.nome == "Cep")
	{
		if(arg.value.length == 5)
		{
			valor = document.form.cep.value = arg.value+"-";
		}
	}
}

function F_ValidaForm(arg1){
	var loForm = arg1;
	var loCampo;
	var loFlag = true;
	var Selecionado = false;
	V_Erro = new Array();	// array que vai conter o nome dos campos com erro

	for( var i = 0; i < loForm.elements.length; i++ ) {
		loCampo = loForm.elements[i];
		if (typeof(loCampo.obrigatorio) != "undefined"){			
			if ( loCampo.type.toUpperCase() != "BUTTON" && loCampo.type.toUpperCase() != "SUBMIT" ){
				if ( loCampo.obrigatorio && loCampo.nome ){	
					if ( loCampo.type.toUpperCase() == "TEXT" || loCampo.type.toUpperCase() == "PASSWORD"|| loCampo.type.toUpperCase() == "TEXTAREA"){
						if ( loCampo.obrigatorio.toUpperCase() == "S" ){
							 if (loCampo.value == ""){
								F_Erro(loCampo.nome);
								loFlag = false;
							}else{
								if(loCampo.valida){
									loFlag = eval("F_" + loCampo.valida + "('" + loCampo.value + "','" + loCampo.nome + "');");
								}
							}
						}else{
							if(loCampo.value != "" && loCampo.valida){
								loFlag = eval("F_" + loCampo.valida + "('" + loCampo.value + "','" + loCampo.nome + "');");
							}
						}
					}
					
			if ( loCampo.obrigatorio.toUpperCase() == "S" ){
					if(loCampo.type.toUpperCase() == "CHECKBOX"){
					obj = loCampo.name;
					obj = eval(loForm.name + "." + obj);
						if(!obj.length){
							if(loCampo.checked==false){
							F_Erro(obj[0].nome);
							loFlag = false;
							}
						}else{ //se tiver mais de uma opção
							
							for(z=0;z<obj.length;z++){
								if(obj[z].checked==true){
									Selecionado = true;
									i = (i + obj.length)-1;
									break;
								}
							}
							
							if(Selecionado==false){
								F_Erro(obj[0].nome);
							}
						
						}
					}					
					if(loCampo.type.toUpperCase() == "RADIO"){
					obj = loCampo.name;
					obj = eval(loForm.name + "." + obj);
						if(!obj.length){
							if(loCampo.checked==false){
							F_Erro(obj[0].nome);
							loFlag = false;
							}
						}else{ //se tiver mais de uma opção
							for(z=0;z<obj.length;z++){
								if(obj[z].checked==true){
									Selecionado = true;
									i = (i + obj.length)-1;
									break;
								}
							}
							
							if(Selecionado==false){
								F_Erro(obj[0].nome);
							}
						
						}
					}
						
				  	if(loCampo.type.toUpperCase() == "SELECT-ONE"){
						if ( loCampo.value == '' || loCampo.value == 0){
							F_Erro(loCampo.nome);
							loFlag = false;
						}
					}

				  	if(loCampo.type.toUpperCase() == "SELECT-MULTIPLE"){
						for(j=0; j<loCampo.length; j++){
							if ( loCampo.options[j].selected ){
								Selecionado = true;	
								break;
							}
					    }	
						if(Selecionado == false){
							F_Erro(loCampo.nome);
							loFlag = false;
						}
					}
				} 	
			}
			}
		}	
	}
	
	if ( loFlag == true || V_Erro.length == 0){
	   return true;
	}	
	else{
		F_MsgErro();	
		return false
	}
}


function newsletter(id)
{
	var page = '/site/newsletter.php?id_newsletter='+id;
	var lenX = 721;
	var lenY = 560;
	var posX = (screen.width / 2) - (lenX / 2);
	var posY = (screen.height / 2) - (lenY / 2);
	var scrl = 1;
	var attr = 'left=' + posX + ',top=' + posY + ',width=' + lenX + ',height=' + lenY + ',scrollbars=' + scrl;
	window.open(page, 'popup', attr);
	void(0);
}