var url_host = location.hostname == 'servidor' ? 'http://servidor/Minascontrol' : 'http://www.minascontrol.com';
//var url_host = 'http://www.minascontrol.com';
var script_operacoes = url_host + "/inc/php/func/engine.php";

//Login da revenda
function login()
{
	// Pega dados do login
	var rus_login = $('rus_login').value;
	var rus_senha = $('rus_senha').value;
	var erro = '';
		
	if(rus_login == '')
		erro = "- Informe o seu usu?rio.\n";
		
	if(rus_senha == '')
		erro += "- Infome a senha de acesso.\n";
		
	if(erro == '')
	{
		var funcao_retorno = function(obj)
		{
			// Redireciona para área reservada
			if(obj.tipo_resposta == 'sucesso')
				location.href = url_host + '/area_reservada/revenda/area_reservada.php';
			else
				alert(obj.mensagem);
		}
		
		var variaveis = {oper:'login', rus_login:rus_login, rus_senha:rus_senha};
		// Envia XHttpRequest
		setTimeout(function(){
			var request = {url: url_host + '/inc/php/func/rev_login.php', vars: variaveis, funcao: funcao_retorno, msg: 'Processando'};
			var retorno = new enviaRequisicao(request);
			// Libera mem?ria
			retorno = null; request = null; variaveis = null;
		}.bind(this), 100);
	}
	// Um dos dados não foram informados
	else
		alert("O(s) seguinte(s) problema(s) foram encontrado(s):\n\n" + erro);
}

//Login do consultor
function login_consultor()
{
	// Pega dados do login
	var col_login = $('col_login').value;
	var col_senha = $('col_senha').value;
	var erro = '';
		
	if(col_login == '')
		erro = "- Informe o seu login.\n";
		
	if(col_senha == '')
		erro += "- Infome a senha de acesso.\n";
		
	if(erro == '')
	{
		var funcao_retorno = function(obj)
		{
			// Redireciona para área reservada
			if(obj.tipo_resposta == 'sucesso')
				location.href = url_host + '/area_reservada/consultor/consultor.php';
			else
				alert(obj.mensagem);
		}
			
		var variaveis = {oper:'login', col_login:col_login, col_senha:col_senha};
		// Envia XHttpRequest
		setTimeout(function(){
			var request = {url: url_host + '/inc/php/func/col_login.php', vars: variaveis, funcao: funcao_retorno, msg: 'Processando'};
			var retorno = new enviaRequisicao(request);
			// Libera mem?ria
			retorno = null; request = null; variaveis = null;
		}.bind(this), 100);
	}
	// Um dos dados não foram informados
	else
		alert("O(s) seguinte(s) problema(s) foram encontrado(s):\n\n" + erro);
}

// FUNCIONAMENTO DO MENU SUPERIOR

//Apresenta/oculta submenus

var over_item_atual;
/*
function show_sub_menu(event, menu_item, modo)
{
  	// Correção para o pisca pisca no IE 6
	var event = new Event(event);
	
	var altura_inicial = 60;
	
	if(menu_item)
	{
		var sub_menu = $E("div", menu_item);
		if(sub_menu)
		{
			if(modo)
			{
				sub_menu.setStyle("display", "block");
			}
			else if(!modo)
			{
				sub_menu.setStyle("display", "none");
			}
		}
	}
}
*/
function show_sub_menu(menu_item, modo)
{
	if(menu_item)
	{
		var sub_menu = $E("div", menu_item);
		if(sub_menu)
		{
			var is_principal = menu_item.getAttribute("principal") ? true : false;
			if(modo && sub_menu)
			{
				sub_menu.setStyle("display", "block");
			}
			else if(!modo && sub_menu)
			{
				sub_menu.setStyle("display", "none");
			}
		}
	}
}

//Transi??o imagem
function img_transition(menu_item, modo)
{
	var img_transicao = menu_item.getElement("img");
	var img_src = img_transicao.src;
	//Verificando a transi??o da imagem
	if(modo)
	{		
	   var tam = img_src.length - 4;
		var temp_img = img_src.substr(0, tam);
		var new_img = temp_img + '_f2.jpg';
		if(img_src.indexOf("f2") == -1)
		{
			img_transicao.src = new_img;
		}
	}
	else
	{
	   var tam = img_src.length - 7;
		var temp_img = img_src.substr(0, tam);
		var new_img = temp_img + '.jpg';
		img_transicao.src = new_img;
	}
}
// FIM DAS FUN??ES DO MENU SUPERIOR


// DI?LOGO DO CADASTRO DA NEWSLETTER
//Abre janela newsletter
function abre_janela_newsletter()
{
	
	if(window.ie)
		var win_height = 260;
	else 
		var win_height = 240;
		
	if(typeof(janela_newsletter) != "undefined")
	{
		janela_newsletter.show();
	}
	//Inicializando janela
	else
	{
		janela_newsletter = new Ext.Window({
			width: 300,
			height: win_height,
			title: "Cadastre-se na Newsletter",
			closeAction: "hide",
			resizable: false,
			animateTarget: "abre_newsletter",
			plain: true,
			contentEl: "window_newsletter"
		});
		janela_newsletter.show();
	}
}
function fecha_janela_newsletter()
{
	if(typeof(janela_newsletter) != "undefined")
	{
		janela_newsletter.hide();
	}
}
// Verifica dados e envia XHR para cadastro na newsletter
function cadastro_newsletter()
{
	var nome = $('cad_news_nome').value;
	var email = $('cad_news_email').value;
	var estado = $('cad_news_estado').value;
	var re = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{1,3})+$/;
	var erro = '';
	
	if(nome == '')
	{
		erro = "- Informe o seu nome.\n";
	}
	if(email == '')
	{
		erro += "- Informe o seu e-mail.\n";
	}
	else if(!re.test(email))
	{
		erro += "- E-mail inv?lido.\n";
	}
	
	if(erro == '')
	{
		var variaveis = {oper:'4', mail_nome: nome, mail_end: email, ned_estado: estado};
		var funcao_retorno = function(obj){
			caixaDialogo(obj.tipo_resposta, {msg: obj.mensagem, fn:
				function(){
					//Fechando caixa da newssletter
					$("cad_news_nome").value = "";
					$("cad_news_email").value = "";
					janela_newsletter.hide();
				}
			});
		}
		enviaRequisicao({url: script_operacoes, vars: variaveis, msg: "Gravando dados", funcao: funcao_retorno});
	}
	else
	{
		alert("O(s) seguinte(s) problema(s) foram encontrado(s):\n\n" + erro);
	}
}
// FIM DAS FUN??ES DO DI?LOGO DO CADASTRO DA NEWSLETTER

// BUSCA GERAL DO SITE
function busca_global()
{
	var palavra_chave = $("campo_pesquisa_global").value;
	if(palavra_chave.length < 3)
		alert("Informe ao menos 3 caracteres para a pesquisa!");
	else
	{
		var variaveis = {oper:'4',oper: 'busca_global', palavra_chave: palavra_chave};
		enviaRequisicao({url: url_host + '/busca_global.php', vars: variaveis, msg: "Pesquisando", modo: "submit"});
	}
}

//
var paginacao_pagina_atual = 1;
function mostra_resultados_busca(obj)
{
	if(obj.tipo_retorno == 'sucesso')
	{
		var html_resultado = '<div id="resultado_busca">';						
		html_resultado += '<div id="resultados_busca_global">' + obj.total_registros + ' Registro(s) encontrado(s)</div>';
		
		var tam = obj.valores.length;
		
		for(var i = 0; i < tam; i++){
			var numeracao = (i%2 == 0) ? 1 : 2; 
			html_resultado += '<div class="resultado' + numeracao + '"><a href="' + obj.valores[i].arq_nome_fisico + '">' + obj.valores[i].descricao + '</a></div>';
		}
		
		$('informacoes').setHTML(html_resultado);
	}
};

function	controle_paginacao(total_paginas, total_produtos)
{
	var funcao_visibilidade = function(visibilidade)
	{
		$("paginacao").setStyle("visibility", visibilidade);
		$("paginas").setStyle("visibility", visibilidade);
		$("seta_esquerda").setStyle("visibility", visibilidade);
		$("seta_direita").setStyle("visibility", visibilidade);
		$("texto_resultado").setStyle("visibility", visibilidade);
	};
		
	if(Number(total_paginas) > 1)
	{
		// Limpa texto da página caso exista
		funcao_visibilidade('hidden');
		total_paginas = total_paginas;
			
		if(this.pagina_atual == 1)
		{
			if(total_paginas > 1)
			{
				funcao_visibilidade('visible');
			}
			else
			{
				funcao_visibilidade('hidden');
			}
		
			//Preenchimento do combobox
			var combobox = $("paginas");
			for(var i=0; i<total_paginas; i++)
			{
				combobox[i] = new Option("Pag. " + (i+1) + " de " + total_paginas, (i+1));
			}
			// Seta página no combobox, atualiza indices nas setas e contra visibilidade destas
			sincroniza_paginacao();
		}
	}
	// Oculta controles de paginação, uma página
	else
	{
		funcao_visibilidade('hidden');
	}

	$("nome_revenda").setHTML("Busca Avan&ccedil;ada - <b>" + total_produtos + "</b> produto(s) localizado(s)");
};

// Seta visibilidade dos controles de paginação
function sincroniza_paginacao(total_paginas)
{
	// Seta visibilidade dos controles
	// Seta esquerda
	if(paginacao_pagina_atual > 1)
		$("seta_esquerda").setStyle("visibility", "visible");
	else
		$("seta_esquerda").setStyle("visibility", "hidden");

	//Seta direita
	if(paginacao_pagina_atual < total_paginas)
		$("seta_direita").setStyle("visibility", "visible");
	else
		$("seta_direita").setStyle("visibility", "hidden");
		
	$("paginas").selectedIndex = (pagina_atual-1);
};

// FIM DA BUSCA GERAL DO SITE
/*
// Substituído por arquivo PHP menu_lateral.php
// FUNCIONAMENTO DO MENU LATERAL DIREITO
// Popula combobox de fabricantes de produtos
function busca_fabricantes(url)
{
	var funcao_retorno = function(obj)
	{
		if(obj.tipo_retorno == 'sucesso')
		{
			var tam = obj.valores.length;
			var select_grupos = $('combobox_grupos');
			var item_selecionado = '';
		
			for (var i = 0; i < tam; i++) 
			{
				// Item selecionado
				if (obj.valores[i].selecionado == '1') 
					select_grupos[i] = new Option(obj.valores[i].rotulo, obj.valores[i].id, false, true);
				else 
					select_grupos[i] = new Option(obj.valores[i].rotulo, obj.valores[i].id, false, false);
			}
			// Busca grupos MOTOROLA
			busca_grupos(2);
		}
	}

	url = url_host + '/inc/php/func/fabricantes.php';
	// Busca grupos da Motorola
	var variaveis = {oper:'busca_fabricantes'};
	enviaRequisicao({url: url, vars: variaveis, funcao: funcao_retorno, mostra_processando: false});
}

// Substituído por arquivo PHP menu_lateral.php
// Busca categorias do grupo selecionado
function busca_grupos(fab_id)
{
	var funcao_retorno = function(obj)
	{
		if(obj.tipo_retorno == 'sucesso')
		{
			var menu = obj.valores;
			var tam = menu.length;
			var html = '';

			for (var i = 0; i < tam; i++) 
			{
				// Verifica se possui sub-itens
				if (menu[i].valores != undefined) 
				{
					html += '<h1 class="inativo"><a style="cursor:pointer">' + menu[i].rotulo + '</a></h1>';
					html += '<div>';
					
					// Calcula número de sub-itens
					var tam_sub = menu[i].valores.length;
					// propriedades de valores id e rotulo
					for (var x = 0; x < tam_sub; x++) 
						html += '<a onClick="menu_acordeon.seleciona(' + menu[i].id + ', ' + menu[i].valores[x].id + ')">' + menu[i].valores[x].rotulo + '</a>';
				}
				else 
				{
					html += '<h1 class="inativo"><a onClick="menu_acordeon.seleciona(' + menu[i].id + ')">' + menu[i].rotulo + '</a></h1>';
					html += '<div>';						
				}
				html += '</div>';
			}
		}
		// Insere HTML do menu sanfona
		$('menu_lateral').innerHTML = html;

		// Salva resultado em cookie
		var cookie = 'menu_' + obj.indice;
		var data = new Date();
		var dia = data.getDate + 1;
		set_cookie(cookie, html, data.getFullYear, data.getMonth, dia, '/');
			
		menu_acordeon = new menuLateral();
	}
	
	var menu = 'menu_' + fab_id;
	var html_menu = get_cookie (menu);
	// Verifica se o menu est? gravado em cookie
	if (html_menu == null) 
	{
		var url = url_host + '/inc/php/func/grupos.php';
		var variaveis = {oper: 'busca_grupos', fab_id: fab_id};
		enviaRequisicao({url: url, vars: variaveis, msg: "Buscando Informa&ccedil;&otilde;es", funcao: funcao_retorno});
	}
	// Insere HTML do menu sanfona
	else
	{
		$('menu_lateral').innerHTML = html_menu;
		menu_acordeon = new menuLateral();
	}
}
*/

//Função auxiliar que monta o menu lateral
//Controle dos menu laterais em acordeon (Acionado pela função busca_categorias)
var menuLateral = new Class({
	options: {
		variavel: null
	},
	
	//Método de inicialização da Classe
	initialize: function(options)
	{
		var accordionTogglers = $('menu_lateral').getElementsByTagName('h1');
    	var accordionContents = $('menu_lateral').getElementsByTagName('div');
		new Fx.Accordion(accordionTogglers, accordionContents, {display: '0',
			onActive: function(barra, conteudo){
				barra.className = "ativo";
			},
			onBackground: function(barra, conteudo){
				barra.className = "inativo";
			}
		});
	},
	
	seleciona: function(fabricante, grupo, categoria)
	{
		/*
		//busca_avancada_class.busca_produtos("seleciona_menu", {grupo: grupo, categoria: categoria});
		if(location.pathname.indexOf('area_reservada') == -1)
		{
			var url = url_host + '/search.html?oper=seleciona_menu&tipo_pesquisa=palavra_chave&fabricante=' + fabricante + '&grupo=' + grupo + '&categoria=' + categoria;
		}
		else
		{
			var url = location.protocol + '//' + location.host + location.pathname + '?oper=seleciona_menu&tipo_pesquisa=palavra_chave&fabricante=' + fabricante + '&grupo=' + grupo + '&categoria=' + categoria;
		}
		location.href = url;
		*/
		var informacoes = {fabricante: fabricante, grupo:grupo, categoria:categoria};
		busca_avancada_class.busca_produtos('menu_lateral', informacoes);
	}
});
menuLateral.implement(new Options, new Events);


// Navegação, página intermediária de produtos
function lista_categoria(categoria, titulo)
{
	var funcao_retorno = function(obj)
	{
		// Seta título com a categoria clicada
		$('titulo_barra').setHTML = titulo;
		var tam = obj.valores.length;
		var produtos = new Element('div', {'id': 'lista_produtos'});

		// Cria divs com link para página de produtos
		for(var i = 0; i < tam; i++)
		{
			var temp_div = new Element('div', {'id': obj.valores[i].id});
			temp_div.setHTML = '<a href="' + obj.valores[i].arq_nome_fisico + '" >' + obj.valores[i].rotulo + '</a>';
			produtos.appendChild(temp_div);
		}
		// Substitui div informações
		$('informacoes').replace(produtos);
	}

	subcategoria = subcategoria == undefined ? '' : subcategoria;
	var url = url_host + '/inc/func/php/publico.php';
	var variaveis = {oper: 'lista_categoria', categoria: categoria};
	//Acionando o Acordeon
	menu_acordeon = new menuLateral();
	enviaRequisicao({url: url, vars: variaveis, msg: "Buscando Informações", funcao: funcao_retorno});	
}

// FIM DO FUNCIONAMENTO DO MENU LATERAL DIREITO


// MANIPULA??O DE COOKIE
// Salva um cookie
function set_cookie ( name, value, exp_y, exp_m, exp_d, path, domain, secure )
{
  var cookie_string = name + "=" + escape ( value );

  if ( exp_y )
  {
    var expires = new Date ( exp_y, exp_m, exp_d );
    cookie_string += "; expires=" + expires.toGMTString();
  }

  if ( path )
        cookie_string += "; path=" + escape ( path );

  if ( domain )
        cookie_string += "; domain=" + escape ( domain );
  
  if ( secure )
        cookie_string += "; secure";
  
  document.cookie = cookie_string;
}

// Retorna valor de um cookie
function get_cookie ( cookie_name )
{
	var results = document.cookie.match ( '(^|;) ?' + cookie_name + '=([^;]*)(;|$)' );

	if (results) 
		return (unescape(results[2]));
	else 
		return null;
}

// Exclui um cookie
function delete_cookie ( cookie_name )
{
  var cookie_date = new Date ( );  // current date & time
  cookie_date.setTime ( cookie_date.getTime() - 1 );
  document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString();
}

// FIM DAS FUN??ES DE MANIPULA??O DE COOKIE

//Fun??o para o ESQUECI MINHA SENHA
function esqueci_senha()
{
	var retorno_prompt = function(botao, valor)
	{
		if(botao == 'ok')
		{					
			if(valor == '')
				alert("? necess?rio informar o email utilizado no cadastro.");
			else
			{
				if(valor.indexOf('@') == -1 || valor.indexOf('.') == -1)
					alert("Por favor, digite um endere?o de e-mail v?lido.");
				else
				{
					var funcao_retorno = function(obj)
					{
						if (obj.tipo_retorno == 'sucesso')
						{
							var configuracoes = { titulo:'Esqueci minha senha!', msg:obj.mensagem };
							caixaDialogo('sucesso', configuracoes);
						}
					
						else if(obj.tipo_retorno == 'erro')
						{
							var configuracoes = { titulo:'Esqueci minha senha!', msg:obj.mensagem };
							caixaDialogo('atencao', configuracoes);
						}
					}
				
					var url = url_host + '/inc/php/func/rev_login.php';
					var variaveis = { oper:'nova_senha', email:valor };
					enviaRequisicao({url: url, vars: variaveis, msg: "Processando...", funcao: funcao_retorno});
				}
  			}
		}
	}
	//Configura??o do objeto com par?metros para a caixa.
	var objConfig = {
							titulo: 'Esqueci minha senha!', 
							msg:'Digite o e-mail utilizado em seu cadastro.',
							funcao: retorno_prompt
						 };
	caixaDialogo('prompt', objConfig);
}


// força downloa de conteudo

function forca_download(pagina)
{
	if(pagina && pagina != '')
	$('ifram_download').src = url_host + '/inc/php/func/download.php?pagina='+pagina;
}

// Função que formata dinheiro
function formata_dinheiro(value)
{
	var temp = String(value);
	temp = temp.replace(/,/, '.');

	if(temp.indexOf('.') != -1)
	{
		var tmp = temp.split('.');
		var tam = tmp.length;
		if(tam == 2)
		{
			if(tmp[1].length == 2)
				return tmp[0] + ',' + tmp[1];
			else if(tmp[1].length == 1)
				return tmp[0] + ',' + tmp[1] + '0';
			else
				return tmp[0] + ',' + tmp[1].substr(0,2);
		}
	}
	else if(temp.indexOf(',') != -1)
		return temp;
	else
		return temp + ',00';
};