// JavaScript Document by Miquel Las Heras

google.load("jquery", "1.4.2");

// CARRITO DE LA COMPRA

function ca_mostrar (){
  $(".mainHolder").animate({ marginTop: "270px" }, 500 , 0 , function(){ 
    $("#carroMostra").show();
	  $("#ca_imgFletxa").html('<img src="imgs/fletxaUp.gif">').css('top','0px');
	});
}

function ca_ocultar (){
  $("#carroMostra").hide();
	$(".mainHolder").animate({ marginTop: "0px" }, 500 , 0 , function(){
	  $("#ca_imgFletxa").html('<img src="imgs/fletxaDown.gif">').css('top','2px');
	});
}

function ca_actualizarTotal(){
	$.post("php/carrito.php", { accio: 'obtenirTotal' }, function (data) {
		$('#divCarroTotal').html("<B>"+data+" &euro;</B>");
		$('#ca_preuTotal').html("Precio total: <b>"+data+" &euro;</b>");
	});
}

function ca_actualizar (mostra){
	$.post("php/carrito.php", {  }, function (data) {
		$('#carroProductes').html(data);
		ca_actualizarTotal();
		$(".ca_imgDel").click(function(e) {
			e.preventDefault();
			var nom = $(this).attr('name');
			ca_eliminar(nom); // nom = id:color
		});	
		$(".ca_inputCant").focusout(function() {
			var cantForm = $(this).attr('value');
			var cantAux='';
			var cant;
			for(m=0; m < cantForm.length; m++){
				if(cantForm.charAt(m)<'0' || cantForm.charAt(m)>'9'){
					alert("En el campo cantidad sólo se permiten números");
					cant = 0;
					break;
				}
				else {
					cantAux += cantForm.charAt(m);
				}
			}
			if(cant!=0) cant = cantAux;
			var nom = $(this).attr('name');
			ca_modificarCant(nom, cant); // nom = id:color
		});
		$(".ca_inputCant").keyup(function (event) {
			if(event.keyCode=='13'){
				var cantForm = $(this).attr('value');
				var cantAux='';
				var cant;
				for(m=0; m < cantForm.length; m++){
					if(cantForm.charAt(m)<'0' || cantForm.charAt(m)>'9'){
						alert("En el campo cantidad sólo se permiten números");
						cant = 0;
						break;
					}
					else {
						cantAux += cantForm.charAt(m);
					}
				}
				if(cant!=0) cant = cantAux;
				var nom = $(this).attr('name');
				ca_modificarCant(nom, cant);
			}
		});	
		if(mostra == 1){
			ca_mostrar();
		}
	});
}

function ca_iniciar (){
	$('#carroOcultar').click(function(){
		ca_ocultar();
	});
	$('#carroRealizar').click(function(){
		caR_realizar ();
	})
	$('#ca_eliminarTots').click(function(){
		ca_eliminarTots ();
	});
	ca_actualizar(0);
}

function ca_afegir (_id, _color, _cant){
  $.post("php/carrito.php", { accio: 'afegirProd', id: _id, color: _color, cant: _cant },
  function (data) {
		if(data==0){
			alert('El producto ya se encuentra en su cesta, puede modificar la cantidad demandada desde su carrito.');
			ca_mostrar();
		}
		else {
    	ca_actualizar(1);	
		}
  });
}

function ca_eliminar (nom){ // nom = id:color
	var aux = nom.split(":");
  $.post("php/carrito.php", { accio: 'eliminar', id: aux[0], color: aux[1]},
  function (data) {
		if(data==0){
			alert ('Error no se ha podido eliminar.');
		}
		else{
			ca_actualizar(1);
		}
  });
}

function ca_modificarCant(nom, cant){ // nom = id:color
	var aux = nom.split(":");
  $.post("php/carrito.php", { accio: 'modificarCant', id: aux[0], color: aux[1], cant: cant },
  function (data) {
		if(data==-1){
			alert ('Error no se ha podido modificar.');
		}
		else{
			ca_actualizar();
		}
  });
}

function ca_eliminarTots (){
	if( confirm("Realmente desea vaciar su carrito?") ){
		$.post("php/carrito.php", { accio: 'eliminarTots' },
		function (data) {
			ca_actualizar(1);
		});
	}
}

//  CARRITO REALIZAR

function instanciarP1(){
	$("#caR_email").focus(function() {
		if($("#pr_fhSelEmail").val() == '0'){
			alert("Porfavor escriba correctamente su e-mail ya que lo utilizaremos para contactar con usted antes de procesar el pedido.");
			$("#pr_fhSelEmail").val('1');
		}
	});
	$("input[class='caRNotNull']").focus(function() {
		$(this).css('border-color','#999');
	});
}


function caR_realizar (){  
	$.post("vistes/ca_realizarPedido.html", { }, function (data) {
    $("#divMain").html(data);
		actualitzarPeu(600);
		$("#caR_bPas1").click(function(e) {
			e.preventDefault();
			caR_realizarP1 ();
		});
		$("#caR_bPas2").click(function(e) {
			e.preventDefault();
			caR_realizarP2 ();
		});
		$("#caR_bPas3").click(function(e) {
			e.preventDefault();
			caR_realizarP3 ();
		});
		if ($('#carroMostra').is(':visible')) {
	  	ca_ocultar ();
		}
		$.post("vistes/ca_realizarPedido1.html", { }, function (data) {
	  	$('#P1').html(data);
			instanciarP1();
			$('#P3').hide();
			$('#P2').hide();
			var cssActiu = {
				'background-color' : '#BBE9FF',
				'cursor' : 'default',
				'color' : '#006'
			}
			var cssInactiu = {
				'background-color' : '#F2FBFF',
				'cursor' : 'pointer',
				'color' : '#B3B3FF'
			}
			$("#caR_bPas1").css(cssActiu);
			$("#caR_bPas2").css(cssInactiu);
			$("#caR_bPas3").css(cssInactiu);
			
			$("#caR_bAnt1").hide();
			$("#caR_bAnt2").hide();
			$("#caR_bSig2").hide();
			$("#caR_bSig3").hide();
			$("#caR_bAnt1").click(function(e) {
				e.preventDefault();
				caR_realizarP1 ();
			});
			$("#caR_bAnt2").click(function(e) {
				e.preventDefault();
				caR_realizarP2 ();
			});
			$("#caR_bSig2").click(function(e) {
				e.preventDefault();
				caR_realizarP2 ();
			});
			$("#caR_bSig3").click(function(e) {
				e.preventDefault();
				caR_realizarP3 ();
			});
			$("#caR_bSig2").show();
  	});
	});
}

function caR_comprovarP1(){
	form = $('#caR_formP1');
	ret = 1;
	$(':input', form).each(function(i) {
			if($(this).attr('class') == "caRNotNull" && this.value=='' && ret == 1){
				$(this).css('border-color','#F00');
				alert('El campo resaltado no puede ser nulo.');
				ret = 0;
			}
  });
	if(ret==1){
		if($('#caR_provincia').val()=='0'){
			alert('Porfavor escoja una provincia.');
			ret = 0;
		}
	}
	return ret;
}

function caR_realizarP1 (){
	if($('#P1').is(':hidden')){
		var cssActiu = {
				'background-color' : '#BBE9FF',
				'cursor' : 'default',
				'color' : '#006'
		}
		var cssInactiu = {
				'background-color' : '#F2FBFF',
				'cursor' : 'pointer',
				'color' : '#B3B3FF'
		}
		$("#caR_bPas1").css(cssActiu);
		$("#caR_bPas2").css(cssInactiu);
		$("#caR_bPas3").css(cssInactiu);
		$("#caR_bAnt2").hide();
		$("#caR_bSig2").show();
		$("#caR_bAnt1").hide();
		$("#caR_bSig3").hide();
		$('#P2').hide();
		$('#P3').hide();
		$('#P1').show();
	}
}

function caR_realizarP2 (){
	var b = caR_comprovarP1();
	if($('#P2').is(':hidden') && b==1 ){
		var cssActiu = {
				'background-color' : '#BBE9FF',
				'cursor' : 'default',
				'color' : '#006'
		}
		var cssInactiu = {
				'background-color' : '#F2FBFF',
				'cursor' : 'pointer',
				'color' : '#B3B3FF'
		}
		$("#caR_bPas2").css(cssActiu);
		$("#caR_bPas1").css(cssInactiu);
		$("#caR_bPas3").css(cssInactiu);
		var text = '<p><b> Por favor comprueve que sus datos son correctos</b></p><p><b>Nombre: </b>';
		text += $("#caR_nombre").val()+' '+$("#caR_apellidos").val()+'<br>';
		if($("#caR_rs").val()!=''){
			text += ' <b>Raz&oacute;n social:</b> '+$("#caR_rs").val();
			if($("#caR_nif").val()!=''){
				text += ' <b>NIF:</b> '+$("#caR_nif").val();
			}
			text += '<br>';
		}
		else {
			if($("#caR_nif").val()!=''){
				text += '<b>NIF:</b> '+$("#caR_nif").val()+'<br>';
			}
		}
		text += '<b>Telefono:</b> '+$("#caR_telefono").val();
		if($("#caR_telefono2").val()!=''){
			text += ' <b>Telefono2:</b> '+$("#caR_telefono2").val();
		}
		text += '<br><b>E-mail:</b> '+$("#caR_email").val()+'<br>';
		text += '<b>Direcci&oacute;n:</b><br>';
		if($("#caR_rs").val()!=''){
			text += '<span style="margin-left:10px;">'+$("#caR_rs").val()+' a la atenci&oacute;n de '+$("#caR_nombre").val()+'</span><br />';
		}
		else {
			text += '<span style="margin-left:10px;">'+$("#caR_nombre").val()+'</span><br />';
		}
		text += '<span style="margin-left:10px;">'+$("#caR_direccion").val()+'</span><br>';
		text += '<span style="margin-left:10px;">'+$("#caR_cp").val()+' '+$("#caR_ciudad").val()+' (';
		text += $("#caR_provincia option:selected").text()+')</span></p>';
		text += '<p>Porfavor comprueve (y modifique si lo desea) sus productos: <a href="#" id="verCCC">[ver/modificar]</a></p>';
		$('#P2').html(text);
		$("#verCCC").click(function(e) {
			ca_mostrar ();
		});
		$("#caR_bAnt2").hide();
		$("#caR_bSig2").hide();
		$("#caR_bAnt1").show();
		$("#caR_bSig3").show();
		$('#P1').hide();
		$('#P3').hide();
		$('#P2').show();
	}
}

function caR_realizarP3 (){
	var b = caR_comprovarP1();
	if($('#P3').is(':hidden') && b==1 ){
		var cssActiu = {
				'background-color' : '#BBE9FF',
				'cursor' : 'default',
				'color' : '#006'
		}
		var cssInactiu = {
				'background-color' : '#F2FBFF',
				'cursor' : 'pointer',
				'color' : '#B3B3FF'
		}
		$("#caR_bPas3").css(cssActiu);
		$("#caR_bPas1").css(cssInactiu);
		$("#caR_bPas2").css(cssInactiu);
		$.post("vistes/ca_realizarPedido3.html", { }, function (data) {
	  	$('#P3').html(data);
			$("#caR_realizarPedidoFinal").click(function(e) {
				e.preventDefault();
				caR_realizarPedido ();
			});
			$("#caR_bAnt2").show();
			$("#caR_bSig2").hide();
			$("#caR_bAnt1").hide();
			$("#caR_bSig3").hide();
			$('#P1').hide();
			$('#P2').hide();
			$('#P3').show();
  	});
	}
}

function caR_realizarPedido (){
	$.post("php/realizarPedido.php", {  form: $("#caR_formP1").serialize() , provincia : $("#caR_provincia option:selected").text() , formaPago : $("#caR_formaPago option:selected").text()  }, function (data) {
		alert(data);
  });
}


// PRODUCTES

function pr_instanciarComprar2 (_id,_preu,_divModal){
	$('#pr_fAfegir').click(function() {
		var cant = $("#pr_fCant").val();
		ca_afegir (_id, '', cant);
	});
	$('#pr_fCant').keyup(function (e) {
		if(e!=13){
			var cantForm = $('#pr_fCant').val();
			var cantAux='';
			for(m=0; m < cantForm.length; m++){
				if(cantForm.charAt(m) <'0' || cantForm.charAt(m)>'9'){
					alert("En el campo cantidad sólo se permiten números");
					break;
				}
				else {
					cantAux += cantForm.charAt(m);
				}
			}
			var total = (_preu*cantAux);
			$('#pr_fCant').val(cantAux);
			$("#pr_fTotal").val(total);
		}
		else {
			var cant = $("#pr_fCant").val();
			var color = $("#pr_fColor").val();
			ca_afegir (_id, color, cant);
		}
	});
	//  CODI PER FINESTRES MODALS
	
	$('.modal').click(function(e) {
		e.preventDefault();
		var nomColor = "color: "+$(this).attr('name');
		var maskHeight = $(document).height();
		var maskWidth = $(window).width();
		if( $(window).height() < $(_divModal).css('height') ){
			window.open($(this).attr('href'));
		}
		else {
			$('#mask').css({'width':maskWidth,'height':maskHeight,'background-color':'#000'});
			$('#mask').fadeIn(1000);
			$('#mask').fadeTo('fast',0.8);
			$(_divModal+'_img').attr('src',$(this).attr('href'));
			$(_divModal+'_nom').html(nomColor);
			$(_divModal).fadeIn(1000);
		}
	});
	$('.window .close').click(function (e) {
		e.preventDefault();
		$(_divModal).hide();
		$('#mask').hide();
	});
	$(_divModal+'_tancar').click(function () {
		$(_divModal).hide();
		$('#mask').hide();
	});
	$('#mask').click(function () {
		$(this).hide();
		$(_divModal).hide();
	});
}

function pr_instanciarComprar3 (_id,_preu,_divModal){
	$('#pr_fAfegir').click(function() {
		var cant = $("#pr_fCant").val();
		var color = $("#pr_fSelect").val();
		ca_afegir (_id, color, cant);
	});
	$('#pr_fCant').keyup(function (e) {
		if(e!=13){
			var cantForm = $('#pr_fCant').val();
			var cantAux='';
			for(m=0; m < cantForm.length; m++){
				if(cantForm.charAt(m) <'0' || cantForm.charAt(m)>'9'){
					alert("En el campo cantidad sólo se permiten números");
					break;
				}
				else {
					cantAux += cantForm.charAt(m);
				}
			}
			var total = (_preu*cantAux);
			$('#pr_fCant').val(cantAux);
			$("#pr_fTotal").val(total);
		}
		else {
			var cant = $("#pr_fCant").val();
			var color = $("#pr_fSelect").val();
			ca_afegir (_id, color, cant);
		}
	});
	//  CODI PER FINESTRES MODALS
	
	$('.modal').click(function(e) {
		e.preventDefault();
		var nomColor = "color: "+$(this).attr('name');
		var maskHeight = $(document).height();
		var maskWidth = $(window).width();
		if( $(window).height() < $(_divModal).css('height') ){
			window.open($(this).attr('href'));
		}
		else {
			$("#pr_fSelect").hide();
			$('#mask').css({'width':maskWidth,'height':maskHeight,'background-color':'#000'});
			$('#mask').fadeIn(1000);
			$('#mask').fadeTo('fast',0.8);
			$(_divModal+'_img').attr('src',$(this).attr('href'));
			$(_divModal+'_nom').html(nomColor);
			$(_divModal).fadeIn(1000);
		}
	});
	$('.window .close').click(function (e) {
		e.preventDefault();
		$("#pr_fSelect").show();
		$(_divModal).hide();
		$('#mask').hide();
	});
	$(_divModal+'_tancar').click(function () {
		$("#pr_fSelect").show();
		$(_divModal).hide();
		$('#mask').hide();
	});
	$('#mask').click(function () {
		$("#pr_fSelect").show();
		$(this).hide();
		$(_divModal).hide();
	});
}


function pr_instanciarVista (_nom, preuUnitari, preuCaixa, prod, comprarCodi, divModal, ampl, alt){
	switch(comprarCodi){
		case 1:
			$("#pr_fhPreu").val(preuCaixa);
			$("#pr_fhTipus").val('0');
			$('#pr_fTipus').change(function(){
				var tip = $("#pr_fTipus").val();
				if(tip=='u'){
					preu = preuUnitari;
					$("#pr_fhPreu").val(preuUnitari);
					tipus = 0;
				}
				else {
					preu = preuCaixa;
					$("#pr_fhPreu").val(preuCaixa);
					tipus = 1;
				}
				cant = $("#pr_fCant").val();
				total = preu * cant;
				$("#pr_fhTipus").val(tipus);
				$("#pr_fTotal").val(total);
			});
			$('#pr_fAfegir').click(function() {
				var tipus = $("#pr_fhTipus").val();
				var cant = $("#pr_fCant").val();
				var color = $('#pr_fSelect').val();
				var nom = _nom + " (" + color + ") ";
				if (tipus==0){
					nom = nom + " unidad";
					preu = preuUnitari;
				}
				else {
					nom = nom + " Caja 6 unidades";
					preu = preuCaixa;
				}
				ca_afegir (nom, preu, cant);
			});
		break;
		case 2:
			$("#pr_fhPreu").val(preuCaixa);
			$('#pr_fAfegir').click(function() {
				var cant = $("#pr_fCant").val();
				var nom = _nom + " Pack 24 unidades";
				ca_afegir (nom, preuCaixa, cant);
			});
		break;
		case 3:
			$("#pr_fhPreu").val(preuUnitari);
			$('#pr_fAfegir').click(function() {
				var cant = $("#pr_fCant").val();
				var color = $('#pr_fSelect').val();
				var nom = _nom + " (" + color + ") unidad";
				ca_afegir (nom, preuUnitari, cant);
			});
		break;
		case 4:
			$("#pr_fhPreu").val(preuCaixa);
			$('#pr_fAfegir').click(function() {
				var cant = $("#pr_fCant").val();
				var color = $('#pr_fSelect').val();
				var nom = _nom + " (" + color + ") pack 6 unidades";
				ca_afegir (nom, preuCaixa, cant);
			});
		break;
		case 5:
			$("#pr_fhPreu").val(preuCaixa);
			$('#pr_fAfegir').click(function() {
				var cant = $("#pr_fCant").val();
				var color = $('#pr_fSelect').val();
				var nom = _nom + " pack 12 unidades";
				ca_afegir (nom, preuCaixa, cant);
			});
		break;
	}
	$('#pr_fCant').keyup(function (e) {
		if(e!=13){
			var cantForm = $('#pr_fCant').val();
			var cantAux='';
			for(m=0; m < cantForm.length; m++){
				if(cantForm[m]<'0' || cantForm[m]>'9'){
					alert("En el campo cantidad sólo se permiten números");
					break;
				}
				else {
					cantAux += cantForm[m];
				}
			}
			var cant = cantAux;
			var preu = $("#pr_fhPreu").val();
			var total = preu * cant;
			$('#pr_fCant').val(cant);
			$("#pr_fTotal").val(total);
		}
	});
	//  CODI PER FINESTRES MODALS
	$('.modal').click(function(e) {	
		e.preventDefault();
		var nomColor = "color: "+$(this).attr('name');
		var maskHeight = $(document).height();
		var maskWidth = $(window).width();
		if( $(window).height() < alt ){
			window.open($(this).attr('href'));
		}
		else {
			$('#mask').css({'width':maskWidth,'height':maskHeight,'background-color':'#000'});
			$('#mask').fadeIn(1000);
			$('#mask').fadeTo('fast',0.8);
			$(divModal+'_img').attr('src',$(this).attr('href'));
			$(divModal+'_nom').html(nomColor);
			$(divModal).fadeIn(1000);
		}
	});
	$('.window .close').click(function (e) {
		e.preventDefault();
		$(divModal).hide();
		$('#mask').hide();
	});
	$(divModal+'_tancar').click(function () {
		$(divModal).hide();
		$('#mask').hide();
	});
	$('#mask').click(function () {
		$(this).hide();
		$(divModal).hide();
	});
}


function pr_iniciar (prod,id){
  $.post("vistes/prod.html", {  }, function (data) {
    $("#divMain").html(data);
		if ($('#carroMostra').is(':visible')) {
	  	$(".mainHolder").animate({ marginTop: "270px" }, 0 );
		}
		$.getJSON("php/obteInfoProd.php", { id : id }, function(json){
			$("#prodText").html(json.text);
			$("#prodComprar").css('top', $('#prodText').height()+20);
			pr_crearVista(id, json.nom, json.preuUnitari, json.preuCaixa, prod);
		});
	});
}

