// ----------------------
// Barullo
// ----------------------
// Ficha de producto
// ----------------------


$(document).ready(function() {
	
	// escalado de las imágenes
	$("#ficha .img_container img").cjObjectScaler({
	    destObj: $("#ficha .img_container"),
	    method: "fit", // fit o fill
	    fade: 1000 // 0 para que no haya fadeIn
	});
	
	// el input de cantidad sólo acepta números
	$("#campo_cantidad").keypress(function (e){
		if( e.which!=8 && e.which!=0 && (e.which<48 || e.which>57)){
			var oldVal = $(this).val();
			var newVal = oldVal.substr(0, oldVal.length);
			$(this).val(newVal);
					
			if (e.which==13){
				// hacemos submit
				// sólo si no tiene la clase hidden
				var carrito = $("#ficha .acciones .anadir_carrito");
				if (carrito.hasClass("hidden")){
					alert("no hay stock de este producto con esta configuración");
				} else {
					carrito.click();
				}
			}
			
			return false;
		}
	});
	
	// cambiar el valor de los combos (talla / color)
	$("#campo_talla").change(changeSizeColor);
	$("#campo_color").change(changeSizeColor);
	
	function changeSizeColor() {
		var item = $("#ficha .ficha_descripcion");
		var id = String($(item).attr("id"));
		var tallaIndex = $('#campo_talla')[0].selectedIndex;
		var colorIndex = $('#campo_color')[0].selectedIndex;
		var selIndex = (colorIndex!=0)? colorIndex : (tallaIndex!=0)? tallaIndex : 0;
		
		var opciones = id.split('*');
		
		// comprobamos que el precio haya cambiado o no
		var preciosOpciones = opciones[4].split('|');
		var precioCambia = (preciosOpciones[1] == "true");
		//if (precioCambia){
			var precios = [];
			for (var i=2; i<preciosOpciones.length; i++){
				precios[i-2] = preciosOpciones[i];
			}
			var precioOriginal = precios[0];
			var precioFinal = precios[selIndex];
			
			if (precioOriginal!=precioFinal){
				$("#ficha .acciones .precio").html(precioFinal+' €').css({opacity:0}).animate({opacity:1}, "slow");
			}	
		//}
		
		// comprobamos que el stock haya cambiado o no
		var stocksOpciones = opciones[3].split('|');
		var stockCambia = (stocksOpciones[1] == "true");
		//if (stockCambia){
			var stocks = [];
			for (var i=2; i<stocksOpciones.length; i++){
				stocks[i-2] = stocksOpciones[i];
			}
			var stockOriginal = stocks[0];
			var stockFinal = stocks[selIndex];
			if (stockFinal < 3){
				$("#ficha .acciones .anadir_carrito").addClass("hidden");
				$("#no_stock").html('<strong><br /><br />Producto no disponible en esta talla/color.<br /><strong><br />').css({opacity:0}).show().animate({opacity:1}, "normal");
			} else {
				$("#ficha .acciones .anadir_carrito").removeClass("hidden");
				$("#no_stock").hide("slow");
			}	
		//}
	}
	
	// probamos nada más cargar:
	changeSizeColor();
	
});	
