jQuery(document).ready(function() {
	// Vari�veis st�ticas
	not_slide = 0;
	jQuery(".formatTelefone").mask("(99) 9999-9999");
	if(!jQuery(".type_person").length){
		jQuery(".cepFormat_billing, .cepFormat_shipping").mask("99999-999");	
		jQuery(".cpfFormat").mask("999.999.999-99");
		jQuery(".cnpjFormat").mask("99.999.999/9999-99");
		jQuery('.numeroFormat_rg, .numeroFormat_ie').keypress(function(event) {
			if (event.charCode && (event.charCode < 48 || event.charCode > 57)) {
			   event.preventDefault();
			}
		});
	}
	
	// Imagens - Zoom
	jQuery(".imagens").fancybox({
		padding					: 0,
		overlayOpacity			: 0.8,
		'transitionIn'			: 'elastic',
		'transitionOut'			: 'elastic',
		'hideOnContentClick'	: true,
		'autoScale'         	: true,
		'autoDimensions'    	: true,
		centerOnScroll          : false,
		enableEscapeButton		: true,
		titleShow				: true,
		titlePosition			: 'inside',
		overlayShow				: true
	});
	
	// Ancoras
	//jQuery("a.ancora").anchorAnimate();
	
	// CEP
	jQuery(".cepFormat").mask("99999-999");
	jQuery('.cepFormat').keypress(function(event) {
		var key = event.keyCode?event.keyCode:event.charCode;
		if(key==13){
		   jQuery('#buscar_cep').trigger('click');
		}
	});
	jQuery('.cepFormat_billing').keypress(function(event) {
		var key = event.keyCode?event.keyCode:event.charCode;
		if(key==13){
		   jQuery('#buscar_cep_billing').trigger('click');
		}
	});
	jQuery('.cepFormat_shipping').keypress(function(event) {
		var key = event.keyCode?event.keyCode:event.charCode;
		if(key==13){
		   jQuery('#buscar_cep_shipping').trigger('click');
		}
	});
	
	// Buscar CEP
	jQuery('.cepFormat_billing, .cepFormat_shipping, .cepFormat_blur').live('blur',function(){
		jQuery(this).parent('div').next('div').children('img').trigger('click');
	});
	
	jQuery('#buscar_cep, #buscar_cep_billing, #buscar_cep_shipping').live('click',function(){		
		//var id_endereco = parseInt($(this).attr('id_endereco'))?parseInt($(this).attr('id_endereco')):0;
		//var input = $(this).parent('div').prev('div').children('input');
		
		// Verifica se os campos obrigat�rios est�o preenchidos e retorna com uma msg de erro
		//var cep = input.val();
		
		var cep = '';
		var id = jQuery(this).attr('id');
		switch(id){
			case 'buscar_cep':
				cep = jQuery("#zip").val();
			break;
			case 'buscar_cep_billing':
				cep = jQuery(".cepFormat_billing").val();
			break;
			case 'buscar_cep_shipping':
				cep = jQuery(".cepFormat_shipping").val();
			break;
		}
		
		if(!cep||cep=='_____-___'){
			alert('Preencha o campo CEP.');
			return false;
		}else{
			var btn = jQuery(this);
			
			jQuery.ajax({
				url: '/getCep.php?cep='+cep,
				beforeSend: function(){
					btn.before('<img src="/skin/frontend/default/f002_projecttus/images/loading_preto.gif" width="16" height="11" class="margin_l_30 margin_t_10" />');
					btn.hide();
				},
				complete: function(){
					btn.show();
					btn.prev('img').remove();
				},
				success: function(result){
					switch(parseInt(result.resultado)){
						case 1:
							switch(id){
								case 'buscar_cep':
									jQuery("#region").val(result.uf);
									jQuery("#street_1").val(result.logradouro);
									jQuery("#bairro").val(result.bairro);
									jQuery("#city").val(result.cidade);
								break;
								case 'buscar_cep_billing':
									jQuery(".state_billing").val(result.uf);
									jQuery(".street_billing").val(result.logradouro);
									jQuery(".bairro_billing").val(result.bairro);
									jQuery(".city_billing").val(result.cidade);
								break;
								case 'buscar_cep_shipping':
									jQuery(".state_shipping").val(result.uf);
									jQuery(".street_shipping").val(result.logradouro);
									jQuery(".bairro_shipping").val(result.bairro);
									jQuery(".city_shipping").val(result.cidade);
								break;
							}
						break;
						default:
							alert('CEP incorreto!');
						
							switch(id){
								case 'buscar_cep':
									jQuery("#region").val('');
									jQuery("#street_1").val('');
									jQuery("#bairro").val('');
									jQuery("#city").val('');
									
									//jQuery('.cepFormat').focus();
								break;
								case 'buscar_cep_billing':
									jQuery(".state_billing").val('');
									jQuery(".street_billing").val('');
									jQuery(".bairro_billing").val('');
									jQuery(".city_billing").val('');
									
									//jQuery('.cepFormat_billing').focus();
								break;
								case 'buscar_cep_shipping':
									jQuery(".state_shipping").val('');
									jQuery(".street_shipping").val('');
									jQuery(".bairro_shipping").val('');
									jQuery(".city_shipping").val('');
									
									//jQuery('.cepFormat_shipping').focus();
								break;
							}
						break;
					}
				},
				dataType: 'json'
			});
		}
	
		return false;
	});	
	
	if(jQuery(".type_person").length){
		type_temp_f = type_temp_j = '';
		
		// Tipo de pessoa
		jQuery('.type_person').live("click",function() {
			var tipo = jQuery(this).val();
			
			if(tipo=='f'){
				if(type_temp_f)
					jQuery("#type_person_f").html(type_temp_f);
			}else{
				if(type_temp_j)
					jQuery("#type_person_j").html(type_temp_j);
			}
			
			jQuery("#type_person_"+tipo).show();
			
			jQuery("#type_person_"+tipo).find('input, select').show();
			jQuery("#type_person_"+(tipo=='f'?'j':'f')).find('input, select').hide();
			jQuery("#type_person_"+(tipo=='f'?'j':'f')).find('input').val('');
			jQuery("#type_person_"+(tipo=='f'?'j':'f')).hide();
			
			if(tipo=='f'){
				type_temp_j = jQuery("#type_person_j").html();
				jQuery("#type_person_j").html('');
				jQuery(".cpfFormat").mask("999.999.999-99");
				jQuery('.numeroFormat_rg').keypress(function(event) {
					if (event.charCode && (event.charCode < 48 || event.charCode > 57)) {
					   event.preventDefault();
					}
				});
			}else{
				type_temp_f = jQuery("#type_person_f").html();
				jQuery("#type_person_f").html('');
				jQuery(".cnpjFormat").mask("99.999.999/9999-99");
				jQuery('.numeroFormat_ie').keypress(function(event) {
					if (event.charCode && (event.charCode < 48 || event.charCode > 57)) {
					   event.preventDefault();
					}
				});
			}
			
			jQuery(".formatTelefoneC").mask("(99) 9999-9999");
			jQuery(".cepFormat_billing").mask("99999-999");	
			jQuery("#h_type_person").val(tipo);
		});
	
		jQuery("#t_p_"+(jQuery("#h_type_person").val()=='j'?'j':'f')).trigger('click');
	}

	// Scroll mouse
	jQuery("#carrousel_marcas").mousewheel(function(objEvent, intDelta){
		if(!not_slide)
			intDelta>0?jQuery('#carrousel-set-left').trigger('click'):jQuery('#carrousel-set-right').trigger('click');
			
		objEvent.preventDefault();
	});
	
	// Marcas
	jQuery('#carrousel_marcas').cycle({
		fx: 'scrollHorz',
		timeout: 0,
		next: '#carrousel-set-left',
	    prev: '#carrousel-set-right',
		before: before_slide_produtos,
	    after: after_slide_produtos
	});
	
	// Scroll mouse
	jQuery("#product_relacionados").mousewheel(function(objEvent, intDelta){
		if(!not_slide)
			intDelta>0?jQuery('#pr-set-right').trigger('click'):jQuery('#pr-set-left').trigger('click');
			
		objEvent.preventDefault();
	});
	
	// Produtos relacionados
	jQuery('#product_relacionados').cycle({
		fx: 'scrollHorz',
		timeout: 0,
		next: '#pr-set-left',
	    prev: '#pr-set-right',
		before: before_slide_produtos,
	    after: after_slide_produtos
	});
	
	// Somente numeros
	jQuery('.numeroFormat').keypress(function(event) {
		if (event.charCode && (event.charCode < 48 || event.charCode > 57)) {
		   event.preventDefault();
		}
	});
	jQuery('.campo_quantidade, .campo_carrinho').live("blur",function() {
		if(isNaN(jQuery(this).val())||!jQuery(this).val().length)
			jQuery(this).val(jQuery(this).attr('value_old')?jQuery(this).attr('value_old'):'1');
		else
			jQuery(this).attr('value_old', jQuery(this).val());
	});	
	jQuery('.campo_quantidade, .campo_carrinho').live("focus",function() {
		if(jQuery(this).val()==1)
			jQuery(this).val('');
	});
	jQuery('.campo_qtd').live("blur",function() {
		if(isNaN(jQuery(this).val())||!jQuery(this).val().length)
			jQuery(this).val('Qtd.');
	});	
	jQuery('.campo_qtd').live("focus",function() {
		if(jQuery(this).val()=='Qtd.')
			jQuery(this).val('');
	});
	
	// Menu categorias / Sub-categorias
	jQuery("ul.dropdown li").hover(function(){
		jQuery(this).addClass("hover");
		jQuery('ul:first',this).css('visibility', 'visible');
    
    }, function(){
    	jQuery(this).removeClass("hover");
    	jQuery('ul:first',this).css('visibility', 'hidden');
		
    });
	if(jQuery('.product-image-zoom > #image').length){
		left_ = top_= width_ = left_ = pri_ = 0;
		jQuery('.product-image-zoom > #image').live("click",function() {
			width_ = parseFloat(jQuery(this).css('width')).toFixed(2);
			top_ = parseFloat(jQuery(this).css('top')).toFixed(2);
			left_ = parseFloat(jQuery(this).css('left')).toFixed(2);
		});
		jQuery('.product-image-zoom > #image').live("mouseout",function() {
			if(jQuery('#track').css('visibility')=='hidden'){				
				jQuery(this).parent('p').css('overflow', 'hidden');
				jQuery(this).parent('p').css('zIndex', '9');
				jQuery(this).css('width', width_+'px');
				jQuery(this).css('top', top_+'px');
				jQuery(this).css('left', left_+'px');
				jQuery('#track').css('visibility', 'visible');
				return false;
			}
		});
	}
});
function before_slide_produtos(){
	not_slide = 1;	
}

function after_slide_produtos(){
	not_slide = 0;
}

function validaCPF(cpf,pType){
	var cpf_filtrado = "", valor_1 = " ", valor_2 = " ", ch = "";

	var valido = false;

	

	for (i = 0; i < cpf.length; i++){

	ch = cpf.substring(i, i + 1);

	if (ch >= "0" && ch <= "9"){

	cpf_filtrado = cpf_filtrado.toString() + ch.toString()

	valor_1 = valor_2;

	valor_2 = ch;

	}

	if ((valor_1 != " ") && (!valido)) valido = !(valor_1 == valor_2);

	}

	

	if (!valido) cpf_filtrado = "12345678912";

	

	if (cpf_filtrado.length < 11){

	for (i = 1; i <= (11 - cpf_filtrado.length); i++){cpf_filtrado = "0" + cpf_filtrado;}

	}

	

	if(pType <= 1){

	if ( ( cpf_filtrado.substring(9,11) == checkCPF( cpf_filtrado.substring(0,9) ) ) && ( cpf_filtrado.substring(11,12)=="") ){return true;}

	}

	

	if((pType == 2) || (pType == 0)){

	if (cpf_filtrado.length >= 14){

	if ( cpf_filtrado.substring(12,14) == checkCNPJ( cpf_filtrado.substring(0,12) ) ){ return true;}

	}

	}

	

	return false;

}

	
function checkCNPJ(vCNPJ){

	var mControle = "";

	var aTabCNPJ = new Array(5,4,3,2,9,8,7,6,5,4,3,2);

	for (i = 1 ; i <= 2 ; i++){

	mSoma = 0;

	for (j = 0 ; j < vCNPJ.length ; j++)

	mSoma = mSoma + (vCNPJ.substring(j,j+1) * aTabCNPJ[j]);

	if (i == 2 ) mSoma = mSoma + ( 2 * mDigito );

	mDigito = ( mSoma * 10 ) % 11;

	if (mDigito == 10 ) mDigito = 0;

	mControle1 = mControle ;

	mControle = mDigito;

	aTabCNPJ = new Array(6,5,4,3,2,9,8,7,6,5,4,3);

	}

	return( (mControle1 * 10) + mControle );

	}

	function checkCPF(vCPF){

	var mControle = ""

	var mContIni = 2, mContFim = 10, mDigito = 0;

	for (j = 1 ; j <= 2 ; j++){

	mSoma = 0;

	for (i = mContIni ; i <= mContFim ; i++)

	mSoma = mSoma + (vCPF.substring((i-j-1),(i-j)) * (mContFim + 1 + j - i));

	if (j == 2 ) mSoma = mSoma + ( 2 * mDigito );

	mDigito = ( mSoma * 10 ) % 11;

	if (mDigito == 10) mDigito = 0;

	mControle1 = mControle;

	mControle = mDigito;

	mContIni = 3;

	mContFim = 11;

	}

	return( (mControle1 * 10) + mControle );

}
