$(function(){

    // exibe/esconde layer com todas as categorias no menu principal
	$('.lnk-todas-categorias').click(function(){
		if( $('#div-todas-categorias').is(':visible') )
		{
			$('#div-todas-categorias').slideUp('fast');
		}
		else
		{
			$('#div-todas-categorias').slideDown('fast');
		}
	});

	// lightbox das imagens dos produtos
	$('a.img-produtos').colorbox({
		rel: 'galeria',
		current: 'Imagem {current} de {total}',
		previous: 'Anterior',
		next: 'Próxima',
        close: 'Fechar'
	});

	// exibe/esconde detalhes do pedido nos meus pedidos
	$('.lnk-expandir-pedido').click(function(e){

		// Ação para modificar o texto do botão de detalhes
			var act = $(this).parents('tr').children('.col4').find('span');

			if(!act.attr('class'))
			{
				act.html('- esconder detalhes');
				act.addClass('act');
			}
			else{
				act.html('+ ver detalhes');
				act.removeClass('act');
			}
		// Fim de ação para modificar o texto do botão de detalhes

		e.preventDefault();
		var cod = $(this).attr('href');
		$('#detalhes-pedido-'+cod).toggle();
	});

	// máscaras
	$('.telefone').mask('(99) 9999-9999');

	// forms de envio de e-mail
	$('#frm-email').submit(function(){
		return validaFormEmail();
	});

});

// validação de CPF
var validaCpf = function ( cpf )
{

	cpf = cpf.replace(/\./g, '');
	cpf = cpf.replace(/\-/g, '');

	if(cpf.length != 11 || cpf == "00000000000" || cpf == "11111111111" ||
	  cpf == "22222222222" || cpf == "33333333333" || cpf == "44444444444" ||
	  cpf == "55555555555" || cpf == "66666666666" || cpf == "77777777777" ||
	  cpf == "88888888888" || cpf == "99999999999")
	{
		return false;
	}

	var soma = 0;
	for(i = 0; i < 9; i++)
		 soma += parseInt(cpf.charAt(i)) * (10 - i);
	var resto = 11 - (soma % 11);
	if(resto == 10 || resto == 11)
 		resto = 0;
	if(resto != parseInt(cpf.charAt(9)))
	{
 		return false;
	}
	soma = 0;
	for(i = 0; i < 10; i ++)
 		soma += parseInt(cpf.charAt(i)) * (11 - i);
	resto = 11 - (soma % 11);
	if(resto == 10 || resto == 11)
 		resto = 0;
	if(resto != parseInt(cpf.charAt(10)))
	{
 		return false;
	}
	return true;
}; // fim validaCpf

// valida e-mail
var validaEmail = function(s) {
	var regexpEmail = /\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/;
	return regexpEmail.test(s);
}; // fim validaEmail

/*
	função para substituir o alert PAM! do JS
*/


// timer para o timeout do javascript
var msgTimer = '';

// tempo padrão para msgTopo
var tempoPadrao = 5000;

// função simples para exibir resposta de erro ou confirmação
var msgTopo = function(txt,classe,tempo) {
	// limpa timeout
	clearTimeout(msgTimer);

	if( $('#msg-topo').parent().html() )
	{
		$('#msg-topo').parent().remove();
	}

	$('body').prepend('<div><div id="msg-topo"></div></div>');

	// exibe msg
	if (classe == 'erro') {
		$('#msg-topo').removeClass('msg');
	} else {
		$('#msg-topo').removeClass('erro');
	}
	$('#msg-topo').addClass(classe);

	// hack para IE6 já que não aceita fixed...
	if ($.browser.msie == true) {
		if( $.browser.version < 7 )
		{
			$('#msg-topo').css('top', $(window).scrollTop());
		}
	}

	$('#msg-topo').html(txt);
	$('#msg-topo').slideDown('fast');
	$('#msg-topo').click(function(){hideMsgTopo();return false;})
	msgTimer = setTimeout("hideMsgTopo();", tempo);
}; // fim msgTopo

var hideMsgTopo = function() {
	clearTimeout(msgTimer);
	$('#msg-topo').fadeOut('fast', function(){
		$(this).parent().remove();
	});
};


// valida forms de envio de email
var validaFormEmail = function()
{
	var erro = false;
	$('#frm-email .required').removeClass('errFld');
	$('#frm-email .required').each(function(){
		if( !$(this).val() )
		{
			$(this).addClass('errFld');
			erro = true;
		}
		else if( $(this).attr('id') == 'email' )
		{
			if( !validaEmail( $(this).val() ) )
			{
				$(this).addClass('errFld');
				erro = true;
			}
		}
	});
	if( erro )
	{
		msgTopo( '<span>O formulário não foi enviado. Confira as informações digitadas.</span>', 'erro', 5000 );
		$('#frm-email .errFld:first').focus();
	}
	else
	{

		var nome			= $('#nome').val() != undefined ? $('#nome').val() : '';
		var email			= $('#email').val();
		var empresa			= $('#empresa').val() != undefined ? $('#empresa').val() : '';
		var telefone		= $('#telefone').val() != undefined ? $('#telefone').val() : '';
		var cod_pedidos		= $('#cod_pedidos').val() != undefined ? $('#cod_pedidos').val() : '';
		var cod_produtos	= $('#cod_produtos').val() != undefined ? $('#cod_produtos').val() : '';;
		var mensagem		= $('#mensagem').val();
		var cod_paginas		= $('#cod_paginas').val();

		$.post( raiz+'_inc/form_email.php', { nome: nome, email: email, empresa: empresa, telefone: telefone, cod_pedidos: cod_pedidos, cod_produtos: cod_produtos, mensagem: mensagem, cod_paginas: cod_paginas, ajax:true }, function(){
			$('#frm-email').html( 'Formulário enviado com sucesso.' );
		});
	}
	return false;
};

// verifica se e-mail já existe na base
var verificaEmail = function( acao )
{
	var email	= $('#email').val();

	var raiz2 = raiz.replace( /admin\//, '' );

	if( validaEmail( email ) )
	{
		$.get(raiz2+'_inc/verifica_email.php', { email: email, acao: acao, ajax: true }, function(j){
			if( j != 'OK' )
			{
				$('#sbt-frm-cadastro').attr( 'disabled', true );
				if( !$('#erro-email').html() )
				{
					$('<span id="erro-email">E-mail já cadastrado em nossa base.</span>').insertAfter('#email');
				}
			}
			else
			{
				$('#sbt-frm-cadastro').attr( 'disabled', false );
				$('#erro-email').remove();
			}
		});
	}
};

// valida formulário de cadastro de nova senha
var validaFormSenha = function()
{
    var senha       = $('#senha').val();
    var senha_conf  = $('#senha_conf').val();
    var erro        = false;

    if( !senha )
    {
        erro = true;
        msgTopo( '<span>Informe uma nova senha.</span>', 'erro', 5000 );
    }
    else if( senha.length < 6 )
    {
        erro = true;
        msgTopo( '<span>Sua nova senha deve possuir no mínimo 6 caracteres.</span>', 'erro', 5000 );
    }
    else if( senha != senha_conf )
    {
        erro = true;
        msgTopo( '<span>As senhas digitadas não conferem.</span>', 'erro', 5000 );
    }

    if( erro )
    {
        $('#senha').focus();
        return false;
    }
    else
    {
        return true;
    }

};


/******************* carrossel de banners do topo  *******************/
// criando um swf rapidamente
function create(arquivo,cod){
	swfobject.embedSWF(arquivo, cod, "605", "253", "9.0.0", "expressInstall.swf","",{wmode:"transparent"});
}





/******************* /carrossel de banners do topo  *******************/
