// JavaScript Document
$(document).ready(function() {
	configureLinks();
	configureCSS();
	configSlider();
	
	/*busca cidades para os formularios*/
	buscaCidades();
	buscaCidadesCadastro();
	buscaCidadesConcurso();	
	escondeMensagemErro();
	//
	
	//Pesquisa de Produtos
	produtoCategorias();
	produtosPrecos();
	checkedPrecos();
	//
	
	//Newsletter
	cadastraNews();
	//
	
	//Lojas
	buscaLojas();
	//
	
	//Twitter
	configureTwitter();	
	//
	
	//Scrool Produtos Detalhes
	//produtosScrool();
	//
	
	//Menu Drop
	menuOverDrop();
	//
});

// Links Externos e Retornos de History Back
function configureLinks() {
	$("a[rel=back]").click( function(){ history.back(); return false });
	$("a[rel=external]").attr("target", "_blank");
}



//PNGFIX IE6 
function configureCSS() {
	if ($.browser.msie) {
		if (parseInt($.browser.version) == 8){
			$("body").addClass('ie8');
		}

		if (parseInt($.browser.version) == 7) {
			$("body").addClass('ie7');
		}

		if (parseInt($.browser.version) <= 6) {
			$("body").addClass('ie6');
			
			var estilos = [
				'.logo',
				'#topo',
				'ul',
				'li',
				'a',
				'div',
				'input',
				'.replace',
				'h1',
				'img'
			];
		
			for (var i=0; i<estilos.length; i++) {
				DD_belatedPNG.fix(estilos[i]);
			}
		}
	}
}

function escondeMensagemErro(){
	if ($('#frmContato').length > 0 || $('#frmCadastro').length > 0 || $('#frmConcurso').length > 0){
		setTimeout(function(){
			$('.mensagem-alerta').slideToggle('fast');
		}, 3000);
	}
}

function buscaCidades(){
	if ($('#frmContato').length > 0){
		$('#selEstado').change(function (){
			var estado = $(this).val();
			$.ajax({
				url:'buscaCidades.php',
				type: 'post',
				data:{estado:estado},
				context: document.body,
				success: function(data){
						var cidades = data.split('|');
						var cidadesLenght = cidades.length;
						
						$('#selCidade').html('').append('<option value="">Selecione...</option>');
						for(var i = 0; i < cidadesLenght; i++){
							$('#selCidade').append('<option value="' + cidades[i]+ '">' + cidades[i] +'</option>');
						}
					}
				});
		});	
	}	

}

function buscaCidadesCadastro(){
	if ($('#frmCadastro').length > 0){
		$('#selCadEstado').change(function (){
			var estado = $(this).val();
			$.ajax({
				url:'buscaCidades.php',
				type: 'post',
				data:{estado:estado},
				context: document.body,
				success: function(data){
						var cidades = data.split('|');
						var cidadesLenght = cidades.length;
						
						$('#selCadCidade').html('').append('<option value="">Selecione...</option>');
						for(var i = 0; i < cidadesLenght; i++){
							$('#selCadCidade').append('<option value="' + cidades[i]+ '">' + cidades[i] +'</option>');
						}
					}
				});
		});	
	}	

}
function buscaCidadesConcurso(){
	if ($('#frmConcurso').length > 0){
		$('#selPromoEstado').change(function (){
			var estado = $(this).val();
			$.ajax({
				url:'buscaCidades.php',
				type: 'post',
				data:{estado:estado},
				context: document.body,
				success: function(data){
						var cidades = data.split('|');
						var cidadesLenght = cidades.length;
						
						$('#selPromoCidade').html('').append('<option value="">Selecione...</option>');
						for(var i = 0; i < cidadesLenght; i++){
							$('#selPromoCidade').append('<option value="' + cidades[i]+ '">' + cidades[i] +'</option>');
						}
					}
				});
		});	
	}	

}



//PESQUISA DE PRODUTOS
var categoria;
var preco;
function produtoCategorias(){
	if ($('#frmPesquisa').length > 0){
		$('#selPesquisa').change(function(){
			categoria = $(this).val();
			var URL = '';
			if (preco.length > 0){
				URL = 'categoria=' + categoria + '&preco=' + preco;
			} else {
				URL = 'categoria=' + categoria;
			}
			window.location = 'produtos.php?'+ URL;
		});
	}
}

function produtosPrecos(){
	if ($('#frmPesquisa').length > 0){
		$('input[name="opcao"]').change(function(){
			var URL = '';
			preco = $(this).val();
			if (categoria.length > 0){
				URL = 'categoria=' + categoria + '&preco=' + preco
			} else {
				URL = 'preco=' + preco;
			}
			window.location = 'produtos.php?'+ URL;
		});
	}
}

function checkedPrecos(){
	if($('#frmPesquisa').length > 0){
		var url = window.location.href;
		var countUrl = url.lastIndexOf("=");
		preco = url.substring(countUrl+1);
		if (preco.length > 0){
			$('input[name="opcao"]').each(function() {
				var p = $(this).val();
				if (p == preco){
					$(this).attr('checked', 'checked');
				}
			});
		}
	}
}


function buscaLojas(){
	if ($('#frmLojas').length > 0){
		$('#selLojas').change(function(){
			var cidade = $(this).val().toLowerCase();
			$.ajax({
				url:'buscaLojas.php',
				type:'post',
				data: {cidade:cidade},
				context: document.body,
				success:function(data){
					$('.bloco-lojas').html('').html(data);
					configurarVisualizarMaps();	
					modalProdutosLojas();	
				}
			});
		});
		
	}
}

//Thickbox

function modalProdutosLojas(){
	if ($('.bt-produtos-disponiveis').length > 0){
		$('.bt-produtos-disponiveis a').each(function(){
			var caminhoCompleto = $(this).attr('href');
			$(this).attr('href', 'javascript:void(0);');
			$(this).parent().parent().find('.caminho-completo').html(caminhoCompleto);
		});
		
		$('.bt-produtos-disponiveis').click(function(){
			var caminho = $(this).parent().parent().find('.caminho-completo').html();
			tb_show('' , caminho , '');
		});
	}
}

//



function configurarVisualizarMaps(){
	if ($('.bt-maps').length > 0){
		$('.bt-maps').click(mostrarMaps);
	}
}

function mostrarMaps() {
	$('.selecionado').find('.mapa-localizacao').html('');	
	$('.selecionado').removeClass('selecionado');
	
	$(this).parent().parent().parent().parent().addClass('selecionado');
	
	$('.selecionado .mapa-localizacao').append('<div id="geomaps"></div>');
	var enderecoCompleto = $('.selecionado .endereco-completo').html();
	mostraEndereco(enderecoCompleto);
}

function mostraEndereco(enderecoCompleto) {
	var map = new GMap2(document.getElementById("geomaps"));
	var geocoder = new GClientGeocoder();
	
	geocoder.getLatLng(enderecoCompleto.toLowerCase(),
		function(point) {
			if (!point) {
				alert(enderecoCompleto + " not found");
			} else {
				map.setCenter(point, 16);
				var marker = new GMarker(point);
				map.addOverlay(marker);
			}
		}
	);
} 



// Twitter da Home

function configureTwitter() {
	if($("#box-twitter-texto").length > 0){
		
		$("#box-twitter-texto").tweet({
            username: "lojasgaston",
            join_text: "auto",
            count: 2,
            auto_join_text_default: "", 
            auto_join_text_ed: "",
            auto_join_text_ing: "",
            auto_join_text_reply: "",
            auto_join_text_url: "",
            loading_text: "loading tweets..."
        });
	}
}



//Detalhes dos produtos - scroll

function produtosScrool(){
	if ($('.detalhes-produtos').length > 0) {
		$('.bloco').hover(function(){
			$(this).children().find('.produto-info-detalhes').slideDown('fast');
		}, function(){
			$(this).children().find('.produto-info-detalhes').slideUp('fast');
		});
	}
}

//


//Menu Over Drop

function menuOverDrop(){
	if ($('.menu-drop').length > 0){
		$('.bt-menu-over, menu-drop').hover(function(){
			$('.menu-drop').slideToggle();
		}, function(){
			$('.menu-drop').slideToggle();
		});
	}
}

//


//Newsletter
function cadastraNews(){
	if ($('#frmNewsletterHome').length > 0){
		$('#frmNewsletterHome').submit(function(){ 

			var nome = ($('#txtNewsNome').val() != '')? $('#txtNewsNome').val() : false;
			var email = ($('#txtNewsEmail').val() != '')? $('#txtNewsEmail').val() : false;

			if (nome && validar(email)) {
				$.ajax({
					url: 'newsletter.php',
					type: 'post',
					data: {nome: nome, email:email},
					context:document.body,
					success:function(data){
						if (data){
							$('.mensagem-alerta-news').html('').html('Cadastro realizado com sucesso.').show();
							$('#frmNewsletterHome input[type="text"]').each(function(){
								$(this).val('');
							});
						} else {
							$('.mensagem-alerta-news').html('').html('Ocorreu um erro. Tente novamente!').show();
						}
					}
				});
				
			} else {
				$('.mensagem-alerta-news').html('').html('Preencha corretamente os campos').show();
			}
			setTimeout(function(){$('.mensagem-alerta-news').html('').hide();}, 2500);
			
			return false;
		});
	}
}


function validar(email){
    var str = email;
    var filter = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
    if(filter.test(str))
      valido = true;
    else{
      valido = false;
    }
    return valido;
}
//

function configSlider(){
		if ($('.slider-home').length > 0){
		 	$("#slider").easySlider({		
				auto: true, 
				continuous: true
			});
		} 		 
}
