// JavaScript Document

/****************************************************************/
/* Funcoes.js                                                   */ 
/* Data			: 13.05.2008                                    */
/* Atualização	: 17.02.2009                                    */
/****************************************************************/

/****************************************************************/
/* Função		: Limpa Campos do Formulário de Cadastro        */ 
/* Data			: 16.01.2009                                    */
/* Atualização	: 16.01.2009                                    */
/****************************************************************/
function limpaCamposCadastro()
{
	document.forms[0].nomeCadastro.value = "";
	document.forms[0].emailCadastro.value = "";
}

/********************************************************************/
/* Função		: Limpa Campos dos Formulários da Página de Contato */ 
/* Data			: 16.01.2009                                        */
/* Atualização	: 16.01.2009                                        */
/********************************************************************/
function limpaCamposPagContato()
{
	document.forms[0].nomeCadastro.value = "";
	document.forms[0].emailCadastro.value = "";
	document.forms[1].nome.value = "";
	document.forms[1].empresa.value = "";
	document.forms[1].telefone.value = "";
	document.forms[1].email.value = "";
	document.forms[1].cidade.value = "";
	document.forms[1].mensagem.value = "";
	document.forms[1].nome.focus();
}

/****************************************************************/
/* Função		: Validação de Formulário                       */ 
/* Data			: 10.03.2008                                    */
/* Atualização	: 17.12.2008                                    */
/****************************************************************/

function validaFormulario()
{
	// Início
	var nome = document.contato.nome.value;
	var empresa = document.contato.empresa.value;
	var fone = document.contato.telefone.value;
	var email = document.contato.email.value;
	var cidade = document.contato.cidade.value;
	var mensagem = document.contato.mensagem.value;

	if (nome == "") // campo nome vazio
	{
		alert(decode("O campo Nome é obrigatório!"));
		document.contato.nome.focus();
		document.contato.nome.select();
		return false;
	}
	if ((nome.length < 2) || (nome.length > 100)) // campo nome deve ter um tamanho mínimo de 2 caracteres e máximo de 100
	{
		alert(decode("O campo Nome deve ter um tamanho mínimo de 2 e máximo de 100 caracteres!"));
		document.contato.nome.value = "";
		document.contato.nome.focus();
		document.contato.nome.select();
		return false;
	}
	if (empresa == "") // campo empresa vazio
	{
		alert(decode("O campo Empresa é obrigatório!"));
		document.contato.empresa.focus();
		document.contato.empresa.select();
		return false;
	}
	if ((empresa.length < 2) || (empresa.length > 100)) // campo empresa deve ter um tamanho mínimo de 2 caracteres e máximo de 100
	{
		alert(decode("O campo Empresa deve ter um tamanho mínimo de 2 e máximo de 100 caracteres!"));
		document.contato.empresa.value = "";
		document.contato.empresa.focus();
		document.contato.empresa.select();
		return false;
	}
	if (fone == "") // campo telefone vazio
	{
		alert(decode("O campo Telefone é obrigatório!"));
		document.contato.telefone.focus();
		document.contato.telefone.select();
		return false;
	}
	for (var i=0; i < fone.length; i++)
	{
		if ((i != 0) && (i != 3) && (i != 4) && (i != 9))
		{
			var n = parseInt(fone.charAt(i));
			if (isNaN(n))
			{
				alert(decode("O campo Telefone tem que ser numérico!"));
				document.contato.telefone.value = "";
				document.contato.telefone.focus();
				document.contato.telefone.select();
				i = fone.length + 1;
				return false;
			}
		}
	}
	if (email == "") // campo email vazio
	{
		alert(decode("O campo E-mail é obrigatório!"));
		document.contato.email.focus();
		document.contato.email.select();
		return false;
	}
	if ((email.length < 6) || (email.length > 100)) // campo email deve ter um tamanho mínimo de 6 caracteres e máximo de 100
	{
		alert(decode("O campo E-mail deve ter um tamanho mínimo de 6 e máximo de 100 caracteres!"));
		document.contato.email.value = "";
		document.contato.email.focus();
		document.contato.email.select();
		return false;
	}
	if (email.indexOf(" ") != -1) // campo email não pode conter espaços em branco
	{
		alert(decode("O campo E-mail não pode conter espaços em branco!"));
		document.contato.email.value = "";
		document.contato.email.focus();
		document.contato.email.select();
		return false;
	}
	if ((email.indexOf(".@") > 0) || (email.indexOf("@.") > 0) || (email.indexOf("..") > 0))
	{
		alert(decode("O campo E-mail informado está incorreto!"));
		document.contato.email.value = "";
		document.contato.email.focus();
		document.contato.email.select();
		return false;
	}
	if ((email.indexOf("@") == -1) || (email.indexOf(".") == -1))
	{
		alert(decode("O campo E-mail informado está incorreto!"));
		document.contato.email.value = "";
		document.contato.email.focus();
		document.contato.email.select();
		return false;
	}
	if (cidade == "") // campo cidade vazio
	{
		alert(decode("O campo Cidade é obrigatório!"));
		document.contato.cidade.focus();
		document.contato.cidade.select();
		return false;
	}
	if (mensagem == "") // campo mensagem vazio
	{
		alert(decode("O campo Mensagem é obrigatório!"));
		document.contato.mensagem.focus();
		document.contato.mensagem.select();
		return false;
	}
	document.contato.submit();
	// Fim
}

/****************************************************************/
/* Função		: Validação de Cadastro                         */ 
/* Data			: 02.02.2009                                    */
/* Atualização	: 02.02.2009                                    */
/****************************************************************/

function validaCadastro()
{
	// Início
	var nome = document.formCadastro.nomeCadastro.value;
	var email = document.formCadastro.emailCadastro.value;

	if (nome == "") // campo nome vazio
	{
		alert(decode("O campo Nome é obrigatório!"));
		document.formCadastro.nomeCadastro.focus();
		document.formCadastro.nomeCadastro.select();
		return false;
	}
	if ((nome.length < 2) || (nome.length > 100)) // campo nome deve ter um tamanho mínimo de 2 caracteres e máximo de 100
	{
		alert(decode("O campo Nome deve ter um tamanho mínimo de 2 e máximo de 100 caracteres!"));
		document.formCadastro.nomeCadastro.value = "";
		document.formCadastro.nomeCadastro.focus();
		document.formCadastro.nomeCadastro.select();
		return false;
	}
	if (email == "") // campo email vazio
	{
		alert(decode("O campo E-mail é obrigatório!"));
		document.formCadastro.emailCadastro.focus();
		document.formCadastro.emailCadastro.select();
		return false;
	}
	if ((email.length < 6) || (email.length > 100)) // campo email deve ter um tamanho mínimo de 6 caracteres e máximo de 100
	{
		alert(decode("O campo E-mail deve ter um tamanho mínimo de 6 e máximo de 100 caracteres!"));
		document.formCadastro.emailCadastro.value = "";
		document.formCadastro.emailCadastro.focus();
		document.formCadastro.emailCadastro.select();
		return false;
	}
	if (email.indexOf(" ") != -1) // campo email não pode conter espaços em branco
	{
		alert(decode("O campo E-mail não pode conter espaços em branco!"));
		document.formCadastro.emailCadastro.value = "";
		document.formCadastro.emailCadastro.focus();
		document.formCadastro.emailCadastro.select();
		return false;
	}
	if ((email.indexOf(".@") > 0) || (email.indexOf("@.") > 0) || (email.indexOf("..") > 0))
	{
		alert(decode("O campo E-mail informado está incorreto!"));
		document.formCadastro.emailCadastro.value = "";
		document.formCadastro.emailCadastro.focus();
		document.formCadastro.emailCadastro.select();
		return false;
	}
	if ((email.indexOf("@") == -1) || (email.indexOf(".") == -1))
	{
		alert(decode("O campo E-mail informado está incorreto!"));
		document.formCadastro.emailCadastro.value = "";
		document.formCadastro.emailCadastro.focus();
		document.formCadastro.emailCadastro.select();
		return false;
	}
	document.formCadastro.submit();
	// Fim
}

function formataCamposTelefone()
{
	var txt = document.forms[1].telefone.value;
	if (txt.length == 0)
		document.forms[1].telefone.value = "(" + txt;
	if (txt.length == 3)
		document.forms[1].telefone.value += ") "; 
	if (txt.length == 9)
		document.forms[1].telefone.value += ".";
}

function formataCamposCelular()
{
	var txt = document.forms[0].celular.value;
	if (txt.length == 0)
		document.forms[0].celular.value = "(" + txt;
	if (txt.length == 3)
		document.forms[0].celular.value += ") "; 
	if (txt.length == 9)
		document.forms[0].celular.value += ".";
}

function formataCamposCep()
{
	var txt = document.forms[0].cep.value;
	if (txt.length == 2)
		document.forms[0].cep.value += ".";
	if (txt.length == 6)
		document.forms[0].cep.value += "-"; 
}

function formataDataNascimento()
{
	var txt = document.forms[0].dataNascimento.value;
	if (txt.length == 2)
		document.forms[0].dataNascimento.value += "/";
	if (txt.length == 5)
		document.forms[0].dataNascimento.value += "/"; 
}

// public method for url encoding
function encode(string) 
{
	string = string.replace(/\r\n/g,"\n");
	var utftext = "";

	for (var n = 0; n < string.length; n++) 
	{
		var c = string.charCodeAt(n);
		if (c < 128) 
		{
			utftext += String.fromCharCode(c);
		}
		else if((c > 127) && (c < 2048)) 
		{
			utftext += String.fromCharCode((c >> 6) | 192);
			utftext += String.fromCharCode((c & 63) | 128);
		}
		else
		{
			utftext += String.fromCharCode((c >> 12) | 224);
			utftext += String.fromCharCode(((c >> 6) & 63) | 128);
			utftext += String.fromCharCode((c & 63) | 128);
		}
	}
	return utftext;
}

// public method for url decoding
function decode(utftext) 
{
	var string = "";
	var i = 0;
	var c = c1 = c2 = 0;

	while ( i < utftext.length ) 
	{
		c = utftext.charCodeAt(i);
		if (c < 128)
		{
			string += String.fromCharCode(c);
			i++;
		}
		else if((c > 191) && (c < 224))
		{
			c2 = utftext.charCodeAt(i+1);
			string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
			i += 2;
		}
		else 
		{
			c2 = utftext.charCodeAt(i+1);
			c3 = utftext.charCodeAt(i+2);
			string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
			i += 3;
		}
	}
	return string;
}