// Config lightsoff
var lightsoff_opacity = 0.3;
	
$(function(){
		
	// !Preparem l'element lightsoff
	var $lightsoff = $("<div/>");
	$lightsoff.attr("id", "lightsoff");
	$lightsoff.css("z-index", "1000");
	$lightsoff.hide();
	$lightsoff.appendTo(document.body);
	
	// !Events lightsoff
	$(".lightsoff").hover(
	
		function(){
			var $this = $(this);
			$this.css("z-index", 1001);
			$lightsoff.fadeTo('normal', lightsoff_opacity);
		},
		
		function(){
			$target = $(this);
			$("#lightsoff").stop(true).fadeOut('normal',function(){
				$target.css("z-index", "");
			});
		}
		
	);
	
	// !Dialog Message
	
	var $dialog_message = $("#dialog-message");
	if ($dialog_message.length == 1){
		
		$lightsoff.fadeTo('normal', lightsoff_opacity);
		$dialog_message.fadeIn("normal");
		
		$dialog_message.find(".close-link").click(function(){
			$lightsoff.fadeOut("normal");
		});
	}
	
	// !Lightsoff del menú de categories (es comporta una mica diferent)
	$(".menu-categories-list > .content > ul > li.parent").mouseenter(function(){
		var $this = $(this);
		$submenu = $this.find('ul');
		if ($submenu){
			
			var this_height = $this.height();
			var submenu_height = $submenu.height();
			
			$submenu.css("top", -(submenu_height-this_height)/2);
			
			$lightsoff.fadeTo('normal', lightsoff_opacity);
			
		}
	});
	
	$(".menu-categories-list").hover(
		
		function(){
			$(this).css("z-index", 1002);
		},
		
		function(){
			var $target = $(this);
			$lightsoff.stop(true).fadeOut('normal',function(){
				$target.css("z-index", "");
			});
		}
		
	);
	
	// !Header cart
	$("#cart").hover(
		
		function(){
			var $this = $(this);
			//var $overview = $("#cart-overview");
			var $popup = $("#cart-popup");
			
			$this.addClass('hover');
			//$overview.addClass('shadow');
			$popup.css("height", "");
			$popup.stop(true).slideDown('normal', function(){
				$this.addClass("shadow");
			});
			
		},
		
		function(){
			var $this = $(this);
			var $popup = $("#cart-popup");
			
			$this.removeClass("shadow");
			$popup.stop(true).slideUp('normal', function(){
				$this.removeClass('hover');
			});
		}
		
	);
	
/*	
	// !Header fixed
	var $header_line2 = $("#header .line2");
	var header_line2_original_y = $header_line2.position().top;
	
	$(window).scroll(function(){
		var scroll_top = $(window).scrollTop();
		var header_line2_top = $header_line2.position().top - scroll_top;
		if (header_line2_top < -3){
			//$header_line2.addClass('shadow');
			$header_line2.css('position', 'fixed');
			$header_line2.css('top', -3);
		} else if(scroll_top < header_line2_original_y){
			//$header_line2.removeClass('shadow');
			$header_line2.css('position', '');
		}		
	});
*/
	
	// !Generic
	$(".nojs").removeClass("nojs").addClass("js");
	/*$(".js").hover(
		function(){
			$(this).addClass('hover');
		},
		function(){
			$(this).removeClass('hover');
		}
	);*/
	
	
});

/* !Product Image Zoom */
$(function(){
	
	$("img.zoomable").css("cursor", "pointer").click(function(e){
		
		var $target = $(e.target);
		var $dialog = $("<div/>");
		
		$dialog.html($target.parent().html());
		
		$dialog.dialog({
				 title: "Imágen del producto"
				,width: "auto"
				,height: "auto"
				,buttons: {"Cerrar": function(){
					$(this).dialog("close");
				 }}
				,closeText: "Cerrar"
				,modal: true
				,resizable: false
			});
			
	});
	
});


// !Search categories
$(function(){
	
	var $lightsoff = $("#lightsoff");
	
	var $select = $('#search-categories');
	var $options = $('#search-categories option');
	
	var $dropdown = $('<div/>');
	$dropdown.addClass('dropdown');
	$dropdown.addClass('border');
	$dropdown.addClass('rounded');
	$dropdown.addClass('shadow');
	
	var $label = $('<div/>').addClass('label');
	
	var $arrow = $('<div/>').addClass('arrow');
	
	var $list = $('<ul/>').hide();
	
	$options.each(function(){
		var $this = $(this);
		var $item = $('<li/>');
		$item.html($this.html());
		$item.appendTo($list);
		
		if ($this.selected){
			$label.html($this.html());
		}
	});
	
	if ($label.html() == ""){
		$label.html($options.first().html());
	}
	
	$label.appendTo($dropdown);
	$arrow.appendTo($dropdown);
	$list.appendTo($dropdown);
	$select.before($dropdown);
	
	$select.css("display", "none");
	
	$dropdown.click(function(e){
		
		if (e.originalTarget){
			var originalTargetTag = e.originalTarget.tagName.toLowerCase();
			if (originalTargetTag == 'ul' || originalTargetTag == 'li'){
				return;
			}
		}
		
		$dropdown.toggleClass('opened');
		$list.slideToggle();
		
		if ($lightsoff.css('display') == "none"){
			$dropdown.css('z-index', 1002);
			$lightsoff.fadeTo('normal', lightsoff_opacity);
			$lightsoff.click(function(){
				$dropdown.trigger("click");
			});
		} else {
			$lightsoff.unbind("click");
			$lightsoff.fadeOut('normal', function(){
				$dropdown.css('z-index', '');
			});
		}
		
	});
	
	var $items = $list.find('li');
	
	$items.hover(
		
		function(){
			$(this).css("background-color", "#eee");
		},
		
		function(){
			$(this).css("background-color", "");
		}
		
	);
	
	$items.click(function(){
		var $this = $(this);
		var i = $this.index();
		var option = $select.children().get(i);
		var $option = $(option);
		
		option.selected = true;
		$label.html($option.html());
		
		$dropdown.trigger('click');
		
	});
	
});



// !Home Main Banner
var mainbanner_timer;
$(function(){
	
	var $mainbanner = $('#main-banner');
	
	if ($mainbanner.length == 0) return;
	
	var $list = $mainbanner.find('ul');
	var $items = $list.children();
	
	var $mainbanner_inner = $('<div/>');
	$mainbanner_inner.addClass('main-banner-inner');
	
	var $changer = $('<ul/>');
	$changer.addClass('changer');
	
	var total_width = 0;
	$items.each(function(i){
		
		var $badge = $('<li/>');
		$badge.html(i+1);
		$badge.appendTo($changer);
		
		$badge.click(function(){
			$(".changer .active").removeClass("active");
			$(this).addClass("active");
			mainbanner_to( $items.eq($(this).index()) );
			mainbanner_setTimer();
		});
		
		if (i == 0){
			$badge.addClass("active");
		}
		
		total_width += $(this).width();
		
	});
	
	$list.css('width', total_width);
	
	$list.appendTo($mainbanner_inner);
	$mainbanner_inner.appendTo($mainbanner);
	$changer.appendTo($mainbanner);
	
	$mainbanner_inner.scrollTo({top: 0, left: 0}, 500, {axis: 'x'});
	
	mainbanner_setTimer();
	
});

var chrome_hack_started = false;
function mainbanner_next(){
	
	var $mainbanner = $('#main-banner');
	var $badges = $mainbanner.find('.changer li');
	var $next = $badges.filter('.active').next();
	
	if ($next.length == 0 && !chrome_hack_started){
		mainbanner_setTimer();
		return;
	} else {
		chrome_hack_started = true;
	}
	
	if ($next.length == 0){
		$next = $badges.first();
	}
	
	$next.trigger('click');
	
}

function mainbanner_to(i){
	$mainbanner_inner = $('#main-banner .main-banner-inner');
	$mainbanner_inner.stop(true).scrollTo(i, 500, {axis: 'x'});
}

function mainbanner_setTimer(){
	if (mainbanner_timer){
		clearTimeout(mainbanner_timer);
	}
	mainbanner_timer = setTimeout("mainbanner_next()", 5000);
}


function submitECommerceForm(){
	var f = document.ecommerce_contact;
	var msg = false;
	
	if (f.name.value == "") msg = "Por favor, rellena el nombre de contacto.";
	else if (f.email.value == "") msg = "Por favor, rellena el email de contacto.";
	else if (f.phone.value == "") msg = "Por favor, rellena el teléfono de contacto.";
	else if (f.message.value == "") msg = "Por favor, dinos en qué te podemos ayudar.";
	
	if (msg){
		alert(msg);
		return false;
	}
	
	f.submit();
	
}
