/**
 * @author Danilo Ribeiro da Silveira
 * @copyright VipMultimidia
 * @copyright Http://www.vipmultimidia.com.br
 * @copyright danilo@vipmultimidia.com.br
 */
function trim(valor) {
	return valor.replace(/^\s+|\s+$/g,"");
}
function ltrim(valor) {
	return valor.replace(/^\s+/,"");
}
function rtrim(valor) {
	return valor.replace(/\s+$/,"");
}
function loading(i) {
	var elemento = document.getElementById("loading");
	if(elemento) {
		if(i == "show") { var e = "visible"; }
		if(i == "hide") { var e = "hidden"; }
		return elemento.style.visibility = e;
	} else {
		return alert("Elemento loading não encontrado");
	}
}
function motivo(i) {
	var elemento = document.getElementById("campo_motivo_especifique");
	if(elemento) {
		if(i == "show") { elemento.style.visibility == "visible"; }
		if(i == "hide") { elemento.style.visibility == "hidden"; elemento.value = ""; }
	}
}

function ObjMSXMLHttp() {
	var versoes = ["MSXML2.XMLHttp.6.0","MSXML2.XMLHttp.5.0","MSXML2.XMLHttp.4.0","MSXML2.XMLHttp.3.0","MSXML2.XMLHttp","Microsoft.XMLHttp"];
	for (var i = 0; i < versoes.length; i++) {
		try {
			var objetoXMLHttp = new ActiveXObject(versoes[i]);
			return objetoXMLHttp;
		} catch (ex) {
			//nda aki
		}
	}
	throw new Error("MSXML não esta instalado");
}
var ajax = false;
if (window.XMLHttpRequest) { //mozilla.
	ajax = new XMLHttpRequest();
} else if (window.ActiveXObject) { //IE
	ajax = ObjMSXMLHttp();
}
if (!ajax) { alert("Seu navegador não tem suporte a ajax, esta página não irá funcionar corretamente."); }
function exibir(pagina, destino) {
	var elemento = document.getElementById(destino);
	if(elemento) {
		ajax.open("GET", pagina, true);
		ajax.onreadystatechange = function() {
			//status carregando
			if(ajax.readyState == 1) {
				loading("show");
			}
			//status pronto
			if(ajax.readyState == 4) {
				//pagina encontrada
				if(ajax.status == 200) {
					var resposta = ajax.responseText;
					elemento.innerHTML = resposta;
					return loading("hide");
				} else {
					elemento.innerHTML = "Erro ao carregar os dados";
					return loading("hide");
				}
			}
		}
		ajax.send(null);		
	} else {
		return alert("Elemento não encontrado");
	}
}
function contato() {
	var elemento = document.getElementById("form_contato");
	if(elemento) {
		loading("show");
		var empresa = trim(elemento.campo_empresa.value);
		var endereco = trim(elemento.campo_endereco.value);
		var bairro = trim(elemento.campo_bairro.value);
		var cidade = trim(elemento.campo_cidade.value);
		var select_estado = elemento.campo_estado.selectedIndex;
		var estado = trim(elemento.campo_estado.options[select_estado].value);
		var cep = trim(elemento.campo_cep.value);
		var ramo_atividade = trim(elemento.campo_atividade.value);
		var pessoa_contato = trim(elemento.campo_nomecontato.value);
		var cargo = trim(elemento.campo_cargo.value);
		var setor = trim(elemento.campo_setor.value);
		var telefone = trim(elemento.campo_telefone.value);
		var email = trim(elemento.campo_email.value);
		var select_compra = elemento.campo_compra.selectedIndex;
		var compra = trim(elemento.campo_compra.options[select_compra].value);
		var select_locacao = elemento.campo_locacao.selectedIndex;
		var locacao = trim(elemento.campo_locacao.options[select_locacao].value);
		var potencia = trim(elemento.campo_potencia.value);
		var select_quantidade = elemento.campo_quantidade.selectedIndex;
		var quantidade = trim(elemento.campo_quantidade.options[select_quantidade].value);
		var tensao = trim(elemento.campo_tensao.value);
		var select_utilizacao = elemento.campo_utilizacao.selectedIndex;
		var utilizacao = trim(elemento.campo_utilizacao.options[select_utilizacao].value);
		var select_grupogerador = elemento.campo_grupogerador.selectedIndex;
		var grupogerador = trim(elemento.campo_grupogerador.options[select_grupogerador].value);
		var select_quadrotransferencia = elemento.campo_quadrotransferencia.selectedIndex;
		var quadrotransferencia = trim(elemento.campo_quadrotransferencia.options[select_quadrotransferencia].value);
		var localinstalacao = trim(elemento.campo_localinstalacao.value);
		var observacoes = trim(elemento.campo_observacoes.value);
		var erro = "Os seguintes erros foram encontrados:\n\n";
		var i = 0;
		if(empresa.length == 0) { i++; erro += "Campo obrigatório: Empresa.\n"; }
		if(pessoa_contato.length == 0) { i++; erro += "Campo obrigatório: Pessoa de contato.\n"; }
		if(telefone.length == 0) { i++; erro += "Campo obrigatório: Telefone.\n"; }
		if(email.length == 0) { i++; erro += "Campo obrigatório: E-mail.\n"; }
		var regex = /^([0-9a-zA-Z]+([_.-]?[0-9a-zA-Z]+)*@[0-9a-zA-Z]+[0-9,a-z,A-Z,.,-]*(.){1}[a-zA-Z]{2,4})+$/;
		if(!regex.test(email)) { i++; erro += "Campo Inválido: E-mail.\n"; }
		if(i > 0) { loading("hide"); return alert(erro); }
		var enviar = false;
		if (window.XMLHttpRequest) { //mozilla.
			enviar = new XMLHttpRequest();
		} else if (window.ActiveXObject) { //IE
			enviar = ObjMSXMLHttp();
		}
		var dados = "acao=enviar_contato";
		dados += "&empresa="+empresa;
		dados += "&endereco="+endereco;
		dados += "&bairro="+bairro;
		dados += "&cidade="+cidade;
		dados += "&estado="+estado;
		dados += "&cep="+cep;
		dados += "&ramo_atividade="+ramo_atividade;
		dados += "&pessoa_contato="+pessoa_contato;
		dados += "&cargo="+cargo;
		dados += "&setor="+setor;
		dados += "&telefone="+telefone;
		dados += "&email="+email;
		dados += "&compra="+compra;
		dados += "&locacao="+locacao;
		dados += "&potencia="+potencia;
		dados += "&quantidade="+quantidade;
		dados += "&tensao="+tensao;
		dados += "&utilizacao="+utilizacao;
		dados += "&grupogerador="+grupogerador;
		dados += "&quadrotransferencia="+quadrotransferencia;
		dados += "&localinstalacao="+localinstalacao;
		dados += "&observacoes="+observacoes;
		enviar.open("POST", "paginas.php", true);
		enviar.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		enviar.onreadystatechange = function() {
			if(enviar.readyState == 1) {
				loading("show");
			}
			if(enviar.readyState == 4) {
				if(enviar.status == 200) {
					var response = enviar.responseText;
					if(trim(response) == "OK") {
						loading("hide");
						elemento.reset();
						return alert("Contato enviado com sucesso.");
					} else {
						loading("hide");
						return alert(response);
					}
				} else {
					loading("hide");
					return alert("Erro ao carregar os dados");
				}
			}
		}
		enviar.send(dados);
	} else {
		loading("hide");
		return alert("Elemento não encontrado.")
	}
}
function orcamento() {
	var elemento = document.getElementById("form_orcamento");
	if(elemento) {
		loading("show");
		var gerador = trim(elemento.campo_gerador.value);
		var quantidade = trim(elemento.campo_quantidade.value);
		var tensao = elemento.campo_tensao;
		var i;
		var temp = "";
		for (i=0;i<tensao.length;i++){
			if (tensao[i].checked) {
				temp = tensao[i].value;
			}
		}
		if(temp.length > 0) { tensao = temp;} else { tensao = ""; }
		var periodo_locacao = trim(elemento.campo_periodo_locacao.value);
		var utilizacao_gerador = trim(elemento.campo_utilizacao_gerador.value);
		var local_instalacao = trim(elemento.campo_local_instalacao.value);
		var operacao = elemento.campo_operacao;
		var i;
		var temp = "";
		for (i=0;i<operacao.length;i++){
			if (operacao[i].checked) {
				temp = operacao[i].value;
			}
		}
		if(temp.length > 0) { operacao = temp;} else { operacao = ""; }
		var acessorios = elemento.campo_acessorios;
		var i;
		var temp = "";
		for (i=0;i<acessorios.length;i++){
			if (acessorios[i].checked) {
				temp = acessorios[i].value;
			}
		}
		if(temp.length > 0) { acessorios = temp;} else { acessorios = ""; }
		var select_motivo = elemento.campo_motivo.selectedIndex;
		var motivo = trim(elemento.campo_motivo.options[select_motivo].value);
		var motivo_especifique = trim(elemento.campo_motivo_especifique.value);
		var nome_empresa = trim(elemento.campo_nome_empresa.value);
		var contato = trim(elemento.campo_contato.value);
		var endereco = trim(elemento.campo_endereco.value);
		var numero = trim(elemento.campo_numero.value);
		var cidade = trim(elemento.campo_cidade.value);
		var select_estado = elemento.campo_estado.selectedIndex;
		var estado = trim(elemento.campo_estado.options[select_estado].value);
		var cep = trim(elemento.campo_cep.value);
		var telefone = trim(elemento.campo_telefone.value);
		var email = trim(elemento.campo_email.value);
		var erro = "Os seguintes erros foram encontrados:\n\n";
		var i = 0;
		if(nome_empresa.length == 0) { i++; erro += "Campo obrigatório: Nome da empresa.\n"; }
		if(contato.length == 0) { i++; erro += "Campo obrigatório: Contato.\n"; }
		if(endereco.length == 0) { i++; erro += "Campo obrigatório: Endereco.\n"; }
		if(cidade.length == 0) { i++; erro += "Campo obrigatório: Cidade.\n"; }
		if(estado.length == 0) { i++; erro += "Campo obrigatório: Estado.\n"; }
		if(telefone.length == 0) { i++; erro += "Campo obrigatório: Telefone.\n"; }
		if(email.length == 0) { i++; erro += "Campo obrigatório: E-mail.\n"; }
		var regex = /^([0-9a-zA-Z]+([_.-]?[0-9a-zA-Z]+)*@[0-9a-zA-Z]+[0-9,a-z,A-Z,.,-]*(.){1}[a-zA-Z]{2,4})+$/;
		if(!regex.test(email)) { i++; erro += "Campo Inválido: E-mail.\n"; }
		if(i > 0) { loading("hide"); return alert(erro); }
		var enviar = false;
		if (window.XMLHttpRequest) { //mozilla.
			enviar = new XMLHttpRequest();
		} else if (window.ActiveXObject) { //IE
			enviar = ObjMSXMLHttp();
		}
		var dados = "acao=enviar_orcamento";
		dados += "&gerador="+gerador;
		dados += "&quantidade="+quantidade;
		dados += "&tensao="+tensao;
		dados += "&periodo_locacao="+periodo_locacao;
		dados += "&utilizacao_gerador="+utilizacao_gerador;
		dados += "&local_instalacao="+local_instalacao;
		dados += "&operacao="+operacao;
		dados += "&acessorios="+acessorios;
		dados += "&motivo="+motivo;
		dados += "&motivo_especifique="+motivo_especifique;
		dados += "&nome_empresa="+nome_empresa;
		dados += "&contato="+contato;
		dados += "&endereco="+endereco;
		dados += "&numero="+numero;
		dados += "&cidade="+cidade;
		dados += "&estado="+estado;
		dados += "&cep="+cep;
		dados += "&telefone="+telefone;
		dados += "&email="+email;
		enviar.open("POST", "paginas.php", true);
		enviar.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		enviar.onreadystatechange = function() {
			if(enviar.readyState == 1) {
				loading("show");
			}
			if(enviar.readyState == 4) {
				if(enviar.status == 200) {
					var response = enviar.responseText;
					if(trim(response) == "OK") {
						loading("hide");
						elemento.reset();
						return alert("Orçamento enviado com sucesso.");
					} else {
						loading("hide");
						return alert(response);
					}
				} else {
					loading("hide");
					return alert("Erro ao carregar os dados");
				}
			}
		}
		enviar.send(dados);
	} else {
		loading("hide");
		return alert("Elemento nao encontrado.")
	}
}
function login() {
	var login = false;
	if (window.XMLHttpRequest) { //mozilla.
		login = new XMLHttpRequest();
	} else if (window.ActiveXObject) { //IE
		login = ObjMSXMLHttp();
	}
	var formulario = document.getElementById("form_login");
	var campo_login = trim(formulario.campo_login.value);
	if(campo_login.length == 0 || campo_login.length > 8) { alert("Campo Login Inválido."); loading("hide"); return false; }
	var campo_senha = trim(formulario.campo_senha.value);
	if(campo_senha.length == 0 || campo_senha.length > 8) { alert("Campo Senha Inválido."); loading("hide"); return false; }
	var dados = "acao=login";
	dados += "&login="+campo_login;
	dados += "&senha="+campo_senha;
	login.open("POST", "paginas.php", true);
	login.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	login.onreadystatechange = function() {
		if(login.readyState == 1) {
			loading("show");
		}
		if(login.readyState == 4) {
			if(login.status == 200) {
				var response = trim(login.responseText);
				if(trim(response) == "OK") {
					formulario.reset();
					return exibir('intranet.php', 'principal');
				} else {
					loading("hide");
					return alert(response);
				}
			} else {
				loading("hide");
				return alert("Erro ao carregar os dados");
			}
		}
	}
	login.send(dados);
}
function logout() {
	var logout = false;
	if (window.XMLHttpRequest) { //mozilla.
		logout = new XMLHttpRequest();
	} else if (window.ActiveXObject) { //IE
		logout = ObjMSXMLHttp();
	}
	var dados = "acao=logout";
	logout.open("POST", "paginas.php", true);
	logout.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	logout.onreadystatechange = function() {
		if(logout.readyState == 1) {
			loading("show");
		}
		if(logout.readyState == 4) {
			if(logout.status == 200) {
				var response = trim(logout.responseText);
				if(trim(response) == "OK") {
					exibir('intranet.php', 'principal');
					return alert("Logout Efetuado com Sucesso!");
				} else {
					loading("hide");
					return alert(response);
				}
			} else {
				loading("hide");
				return alert("Erro ao carregar os dados");
			}
		}
	}
	logout.send(dados);
}