/////////////
// No Label //
//////////////
noLabel = {
	init: function(){
		$(".noLabel").each(function(){
			$(this).addClass("vazio");
			noLabel.buffer[$(this).attr("id")] = $(this).val();
			$(this).unbind('focus',noLabel.foco).unbind('blur',noLabel.desfoco).bind('focus',noLabel.foco).bind('blur',noLabel.desfoco);
		}).parents("form:eq(0)").unbind('submit',noLabel.formulario).bind('submit',noLabel.formulario);
	},
	
	buffer: {},
	
	foco: function(obj){
		obj = typeof($(obj).attr("id")) == "undefined" ? this : obj;
		if($(obj).hasClass("vazio")){
			if($(obj).is("textarea")){
				$(obj).html("");
			}else{
				$(obj).val("");
			}
			$(obj).removeClass("vazio");
		}
	},
	
	desfoco: function(){
		if($.trim($(this).val()) == ""){
			if($(this).is("textarea")){
				$(this).html(noLabel.buffer[$(this).attr("id")]);
			}else{
				$(this).val(noLabel.buffer[$(this).attr("id")]);
			}
			$(this).addClass("vazio");
		}
	},
	
	formulario: function(){
		$(".vazio",this).each(function(){
			noLabel.foco(this);
		});
		return true;
	}
}

/////////////////////////
// galeria de Imagens //
///////////////////////

$.extend({
	scrollPages: {
		version: 2.5,
		defaults: {
			elementSize: 50,
			elements: 3,
			speed: "slow",
			direction: "up"
		}
	}
});
$.fn.extend({
	scrollPages: function(options){
		options = $.extend({}, $.scrollPages.defaults, options);
		return this.each(function(){
			
			// Definições de variáveis
			var total = $(".scrollMask li",this).length;
			var mask = options.elementSize * options.elements;
			var area = options.elementSize * total;
			var animation = false;
			var obj = this;
			var dimension = options.direction == "left" ? "width" : "height";
			var side = new Array();
			side[0] = options.direction;
			side[1] = options.direction == "up" ? "down" : "right";
			
			$(".scrollButtom",this).css("visibility","visible");
			if(options.elements >= total){
				$(".scrollButtom",this).css("visibility","visible");
				mask = area;
			}else{
				$(".scrollButtom[rel*='"+options.direction+"']",obj).css("visibility","hidden");
			}
			
			// Aplicação de estilos
			if(options.direction == "up"){
				//$(".scrollMask",this).css({"height": mask + "px", overflow: "hidden"}); // M?scara
				$(".scrollMask ul",this).css({"height": area + "px", marginTop: 0}); // UL
				$(".scrollMask li",this).css({"height": options.elementSize + "px", display: "block"}); // LI
			}else{
				//$(".scrollMask",this).css({"width": mask + "px", overflow: "hidden"}); // M?scara
				$(".scrollMask ul",this).css({"width": area + "px", marginTop: 0}); // UL
				$(".scrollMask li",this).css({"width": options.elementSize + "px", display: "block"}); // LI
			}
			if (area <= mask) $(".scrollButtom",obj).css("visibility","hidden");
			//if (area <= mask + 596) $(".buttom2",obj).css("visibility","hidden");

			// Função que execulta a rolagem
			var rolagem = function(direction){

				// Variáveis
				var margem = -parseInt($(".scrollMask ul",obj).css("margin-"+(options.direction == "up" ? "top" : "left")));

				var intervalo = direction == side[1]
					? ( margem + ( mask * 2 ) ) < area
						? mask
						: area - (margem + mask)
					: ( margem - mask ) < 0
						? margem
						: mask
				;
				direction = direction == side[1]
					? -margem - intervalo
					: -margem + intervalo
				;
				
				$(".scrollButtom",obj).css("visibility","visible");
				var rel = -direction == 0 ? side[0] : (-direction + mask) == area ? side[1] : null;
				if(rel != null) $(".scrollButtom[rel*='"+rel+"']",obj).css("visibility","hidden");
				
				
				//Condição especial para galeria com degrade
				//var rel2 = -direction == 0 ? side[0] : (-direction + mask + 596) == area ? side[1] : null;
				//if(rel2 != null) $(".scrollButtom[rel*='"+rel2+"']",obj).css("visibility","hidden");
				
				// Animação
				animation = true;
				if(options.direction == "up"){
					$(".scrollMask ul",obj).animate({marginTop: direction + "px"},options.speed,function(){ animation = false; });
				}else{
					$(".scrollMask ul",obj).animate({marginLeft: direction + "px"},options.speed,function(){ animation = false; });
				}
			}
			
			// Aplicação de eventos
			$(".scrollButtom",this).unbind("click").click(function(){
				if(!animation){
					var direction = $(this).attr("rel");
					rolagem(direction);
				}
			});
		});
	}
});

$(document).ready( function(){
	noLabel.init();

/////////////////////////////////
// Insere Teaser na Home
///////////////////////////////

//$(".bannerHome").addFlash({src: "swf/teaser.swf", width: 986, height: 287, title: "Aparas São Judas"});

/////////////////////////////
// Validar Form
///////////////////////////

	$('form').submit(function(){
		return validar.form($(this))
	});

///////////////////////
// Galeria Destaque Home
////////////////////////

	$('.produtoDestaque').scrollPages({elementSize:400, elements:1, direction:'left'});
	
/////////////////////////////////////	
// Centraliza Paginação
/////////////////////////////
	$('.paginacao ul').each(function(){
		var larguraDiv = $(this).parent().width();
		var larguraUl = $(this).width();
		
		var margem = larguraDiv / 2 - larguraUl / 2;
		$(this).css('margin-left',margem+'px');
	});
	
	$("form").submit(function(){
		var erros = 0;
        $(this).find(".req").removeClass("error");
        $(this).find(".req").each(function(){
			if($(this).val() == "")
			{
				$(this).addClass("error");
				erros++;
			}
        });
        if(erros > 0) return false;
    });
	
/////////////////////////////////////
//       NEWSLETTER
///////////////////////////////////////
	
	
	
	$(".form_news").submit(function(){
		
		var nome = $(this).find(".nome");
		var email = $(this).find(".email");
		
		if($(nome).val() != "" && $(email).val() != "")
		{
			$.ajax({
				url : BASE_URL + "/" +  LANG + "/newsletter/add",
				data : { nome : $(nome).val(), email : $(email).val() },
				type : "POST",
				dataType : "json",
				success : function(data)
				{
					alert(data.mensagem);
					$(nome).val("");
					$(email).val("");
				}
			});
		}
		
		return false;
	});
	
/////////////////////////////////////
//  INDIQUE
///////////////////////////////////////
	
	$(".form_indique").submit(function(){
		
		var nome = $(this).find(".nome");
		var email = $(this).find(".email");
		var nome_amigo = $(this).find(".nome_amigo");
		var email_amigo = $(this).find(".email_amigo");
		
		if($(nome).val() != "" && $(email).val() != "")
		{
			$.ajax({
				url : BASE_URL + "/" +  LANG + "/recommend",
				data : { nome : $(nome).val(), email : $(email).val(), nome_amigo : $(nome_amigo).val(), email_amigo : $(email_amigo).val() },
				type : "POST",
				dataType : "json",
				success : function(data)
				{
					alert(data.mensagem);
					$(nome).val("");
					$(email).val("");
					$(nome_amigo).val("");
					$(email_amigo).val("");
				}
			});
		}
		
		return false;
	});
	
});
