/**
 * @author Antonio
 */
function toEuro(num, separator)
{
  var ret = 0;
  if(!separator)separator = ",";
  if((""+num).indexOf(".") != -1)
  {
    var t = (""+num).split(".");
	var intero = t[0];
	var decimale = t[1].substr(0, 2);
	if(decimale.length < 2) decimale = decimale+"0";
    ret = intero+separator+decimale;
  }
  else ret = num+separator+"00";
  
  return ret;
}
function scrollTo(selector, speed) {
		if(!speed)speed = 500;
        var targetOffset = $(selector).offset().top;
        $('html,body').animate({scrollTop: targetOffset-80}, speed);
    }
$(function(){
	$(document).pngFix();
	var win = new wdbox("default");
	win.model.title = "<div class=\"logo\">SicilianiDoc</div>";
	var defaultprompt = "<button class='cancel'>annulla</button> <button class='confirm'>conferma</button>";
	win.model.defaultWait = "<div style='text-align : center'><img class=\"zero-margin\" src=\"content/immagini/loader_refresh.gif\"/><br/>Sto aggiornando il sistema. Attendere prego...</div>";
	win.view.showFunction = function(){
		if($.browser.msie && $.browser.version < 7){
			$(".select-dest").css("visibility", "hidden");
		}
		win.view.all.css({opacity : 0});
		win.view.box.animate({opacity : 1}, 500);
		win.view.fader.animate({opacity : 0.5}, 500);
	}
	win.controller.closeFunction = function(){
		if($.browser.msie && $.browser.version < 7){
			$(".select-dest").css("visibility", "visible");
		}
		win.view.all.animate({opacity : 0}, 500, function(){
			win.controller.defaultClose();
		});
	};
	function cartAdd(pname, pid, ptab, quantity){
		//win.controller.wait("attendere...");
		//win.view.refresh();
		quantity = Math.abs(parseInt(quantity));
		if(isNaN(quantity))quantity = 1;
		$.post(ROOT_EXT+"cart/add", {item_id : pid, tab : ptab, quantity : quantity}, function (res){
			if(res){
				eval("var info = "+res+";");
				win.model.body = "Hai inserito "+quantity+" "+pname+" al tuo carrello<br/>Ci sono "+info.quantity+" prodotti nel tuo carrello, totale spesa: € "+info.finalTotal+",";
				if(info.destination != "selezionare destinazione"){
					win.model.body+=" compreso di costi di spedizione (€ "+info.shippingCost+" in "+info.destination+")";
				}else{
					win.model.body+=" escluso di costi di spedizione (destinazione non selezionata)";
				}
				win.model.prompt = "<button class=\"cancel continue\">continua acquisti</button> <a href=\"carrello\" class=\"tocarrello\">vai al carrello</a>";
				win.view.refresh();
				$("span.quant").html(info.quantity);
			}else{
				
			}
		});
	}
/*
 * ------------- EVENTO AGGIUNGI AL CARRELLO
 */
	$(".aggcarr.si").click(function(){
		var ptab = $(this).siblings("input.tabella").val();
		var pid = $(this).siblings("input.prodotto_id").val();
		var pname = $(this).siblings("input.prodotto_nome").val();
		win.dimensions.y = 60;
		//win.view.show();
		//win.controller.wait("attendere prego...");
		$.post(ROOT_EXT+"cart/getItem", {item_id : pid, tab : ptab}, function (res){
			if(res == "false"){
				win.model.body = "<div class='intern'><div>Vuoi aggiungere al tuo carrello:</div> <div class=\"sottotitolo\">"+pname+"</div><div>quante unità di questo prodotto vuoi ordinare? <input type=\"text\" value=\"6\" class=\"prodotto_quantita\"/></div>";
				win.model.prompt = defaultprompt;
				win.view.show();
				win.controller.confirm = function(){
					var quantity = win.view.body.find("input.prodotto_quantita").val();
					cartAdd(pname, pid, ptab, quantity);
				}
			}else{
				win.model.body = "<div class='intern'><div>Hai già aggiunto questo prodotto al carrello:</div> <div class=\"sottotitolo\">"+pname+"</div><div>Vuoi modificare la quantità? <input type=\"text\" value=\""+res+"\" class=\"prodotto_quantita\"/></div>";
				win.model.prompt = defaultprompt;
				win.view.show();
				win.controller.confirm = function(){
					var quantity = win.view.body.find("input.prodotto_quantita").val();
					cartAdd(pname, pid, ptab, quantity);
				}
			}
		});
		
		
	});
/*
 * ------------- EVENTO VISUALIZZA SCHEDA <DISATTIVARE HREF PER MOD DEBUG>
 */
	$("td.valore:empty").parent().remove();
	$("input.scheda").click(function(){
		$(this).removeAttr("href");
		var ptab = $(this).siblings("input.tabella").val();
		var pid = $(this).siblings("input.prodotto_id").val();
		var pname = $(this).siblings("input.prodotto_nome").val();
		win.dimensions.y = 10;
		$.post("scheda/"+ptab, {id : pid}, function(res){
			win.model.body = res;
			win.model.prompt = "";
			win.model.title = "";
			win.view.show();
			win.view.body.find("td.valore:empty").parent().remove();
			win.view.body.css("display", "none").slideDown(1600).find(".close").removeAttr("href").click(function(){
				win.controller.close();
			});
			
		});
			
	});
/*
 * ------------- EVENTO MODIFICA QUANTITA DA CARRELLO
 */
	$(".quantchange").change(function(){
		var pid = $(this).siblings("input.id").val();
		var me = $(this);
		var tr = me.parents("tr").eq(0);
		win.dimensions.y = 60;
		win.model.prompt = "";
		win.view.show();
		win.controller.wait();
		if(me.val() == 0){
			me.val(1);
		}
		setTimeout(function(){
			$.post("cart/setQuantity", {id : pid, v : me.val()}, function(res){
				win.model.body = "<div style=\"text-align : center;\">Carrello aggiornato con successo</div>";
				win.model.prompt = "";
				win.view.refresh();
				tr.find(".prodotto_quantita").val(me.val());
				tr.find(".totale_art").html(toEuro(me.val()*tr.find(".prodotto_prezzo").val()));
				$(".highter.totali").animate({opacity : 0},1000);
				setTimeout(function(){
					win.controller.close();
					$(".highter.totali").html(res).animate({opacity : 1},600);
					$("span.quant").html($(".totProd").val());
				}, 1000);
				
				
			});
		}, 2000);
				
		
			
	});
/*
 * ------------- EVENTO ELIMINA DA CARRELLO
 */
	$("input.cestino").click(function(){
		var tr = $(this).parents("tr").eq(0);
		var pid = $(this).siblings("input.id").val();
		var pname = $(this).siblings("input.prodotto_nome").val();
		win.dimensions.y = 60;
		win.model.body = "<div style='text-align : center;'>Vuoi eliminare: <div class=\"sottotitolo\">"+pname+"</div></div>";
		win.model.prompt = defaultprompt;
		win.view.show();
		win.controller.confirm = function(){
			win.controller.wait();
			
			setTimeout(function(){
				$.post("cart/deleteItem", {id : pid}, function(res){
					win.model.body = "<div style=\"text-align : center;\">articolo eliminato con successo</div>";
					win.model.prompt = "";
					win.view.refresh();
					setTimeout(function(){
						win.controller.close();
						tr.remove();
						if(!$(".carrello tr").not(".head").html()){
							$(".carrello").append("<tr class=\"vodo\"><td colspan=\"5\">Il tuo carrello è vuoto.<br/><br/>Inserisci i prodotti nel carrello<br/>cliccando sul pulsante carrello alla destra di ogni prodotto<br/><br/></td></tr>");	
							$(".svuotacarr, .concludiacquisto").parents(".left-flotter").addClass("ghost").find("a").removeAttr("href");
							$(".highter.totali").html("");
							$("span.quant").html("0");
						}else{
							$(".highter.totali").html(res);
							$("span.quant").html($(".totProd").val());
						}
					}, 1500);
				});
			}, 2000);
				
		};
		
			
	});
/*
 * ------------- EVENTO SVUOTA CARRELLO
 */
	$(".svuotacarr").click(function(){
		if($(this).parents(".ghost").html()) return 0;
		win.dimensions.y = 60;
		win.model.body = "<div style='text-align : center;'>Vuoi svuotare il carrello?</div>";
		win.model.prompt = defaultprompt;
		win.view.show();
		win.controller.confirm = function(){
			win.controller.wait();
			
			setTimeout(function(){
				$.post("cart/emptyCart", function(res){
					win.model.body = "<div style=\"text-align : center;\">Carrello svuotato con successo</div>";
					win.model.prompt = "";
					win.controller.refresh();
					
					
					
				});
			}, 2000);
				
		};
		
			
	});
/*
 * ------------- NAZIONE
 */
	function selectNazione(){
		if($("input[type=hidden][name=nazione]").val()){
			var nazione = $("input[type=hidden][name=nazione]").val();
			$("select[name=destinaz] option[value="+nazione+"]").attr("selected", "selected");
		}
	}
	function selectConsegna(){
		if($("input[type=hidden][name='consegna[nazione]']").val()){
			var nazione = $("input[type=hidden][name='consegna[nazione]']").val();
			$("select[name='consegna[nazione]'] option[value="+nazione+"]").attr("selected", "selected");
		}	
	}
	function switchDestination(me){
		win.controller.wait();
		toPost = {
			destinaz : me.val(),
			ajax : true,
			getPreconfirm : true
		};
		$.post("switchdestination", toPost, function(res){
			$(".riepilogo").html(res).find(".totale").css({fontWeight : "bold"});
			$("input[name=realDest]").val(toPost.destinaz);
			setTimeout(function(){
				win.controller.close();
				scrollTo(".riepilogo");
			}, 2000);
		});
		win.controller.repair();
	}
	selectNazione();
	selectConsegna();
	$(".concludi .select-dest[name=destinaz] option[value=0]").remove();
	$(".select-dest").change(function(){
		var me = $(this);
		win.dimensions.y = 60;
		var realDest = $("input[name=realDest]").val();
		if(me.val() == 0 ){
			if(me.attr("name") != "destinaz" && $(".select-dest[name=destinaz]").val() != "0"){
					win.view.show();
					switchDestination($(".select-dest[name=destinaz]"));
					var iname = "consegna[nazione]";
					if(me.attr("name") == "destinaz") iname = "nazione";
					$("input[type=hidden][name='"+iname+"']").val(me.val());
			}else{
				win.model.body = "devi selezionare una destinazione valida";
				win.model.prompt= "<button class='cancel'>annulla</button>";
				win.view.show();
			}
			
			
		}else if((me.attr("name") == "consegna[nazione]" && me.val() != realDest) || (me.attr("name") == "destinaz" && $("select[name='consegna[nazione]']").val() == 0)){
			win.model.body = "Attenzione.<br/>Cambiando la nazione del destinatario, cambierà il costo delle spese di spedizione.<br/>Vuoi cambiare la nazione del destinatario?";
			win.model.prompt= "<button class='cancel'>annulla</button> <button class='confirm'>conferma</button>";;
			win.view.show();
			win.controller.confirm = function(){
				switchDestination(me);
				var iname = "consegna[nazione]";
				if(me.attr("name") == "destinaz") iname = "nazione";
				$("input[type=hidden][name='"+iname+"']").val(me.val());
			};
			win.controller.close = function(){
				if(me.attr("name") == "destinaz"){
					selectNazione();
				}else{
					selectConsegna();
				}
				win.controller.repair();
				win.controller.closeFunction();
				
			}
		}else{
			var iname = "consegna[nazione]";
			if(me.attr("name") == "destinaz") iname = "nazione";
			$("input[type=hidden][name='"+iname+"']").val(me.val());
		}
	});
	$(".destinvio").remove();
	$(".destswitch select[name=destinaz]").change(function(){
		var me = $(this);
		if(me.val() != "0"){
			win.view.show();
			win.controller.wait();
			setTimeout(function(){
				me.parents("form").submit();	
			}, 1000);
			
		}else{
			win.model.body = "devi selezionare una destinazione valida";
			win.model.prompt= "<button class='cancel'>chiudi</button>";
			win.view.show();
			selectNazione();
		}
		
		
	});
/*
 * ------------- EVENTO SELEZIONA MARCA
 */
	$(".selmarca").click(function(){
		win.dimensions.y = 60;
		$.post("marchi", function(res){
			win.model.body = res;
			win.model.prompt = "";
			win.model.title = "";
			win.view.show();
			win.view.content.addClass("marchi").css({opacity : 0});
			win.view.body.css("display", "none").slideDown(1000, function(){
				win.view.content.animate({opacity : 1}, 600);
			}).find(".close").removeAttr("href").click(function(){
				win.controller.close();
			});
			
		});
			
	});
/*
 * ------------- EVENTO VISUALIZZA IMMAGINE
 */
	$("a.ingrandisci").click(function(){
		var img = $(this).find("input").val();
		win.dimensions.y = 10;
		win.model.body = "<div style='text-align : center;'><img style=\"\" src=\"resized/254/x/"+img+"\" /></div>";
		win.model.prompt = "";
		win.view.show();
		win.view.body.css("display", "none").find("img").load(function(){
			win.view.body.slideDown(1200);
		});
	});
//----------------COME ORDINARE
	$(".opz h4, .opz h3").css({cursor : "pointer"});
	$(".opz input[type=button]").click(function(){
	});
	$(".opener *, .opz h4, .opz h3").click(function()
	{
		var opzdiv=$(this).parents(".opz");
		opzdiv.nextAll(".toOpen").eq(0).slideToggle(600);
		var alink=opzdiv.find("input").attr("class",function()
		{
			if($(this).attr("class") == "giu")return "su fine-ordine"; else return "giu fine-ordine";
		}).end().find("a");
		
		if(alink.html() == "apri")alink.html("chiudi"); else if(alink.html() == "clicca qui")alink.html("chiudi");
		else alink.html("apri");
	});
//---------------- CLICK SU CERCA


//Click su cercamarr a
	$(".cercamarr a").click(function()
	{
		if(!$.browser.msie)
		{
			$("form.topsearch").css({opacity : 0, display : "block"}).animate({opacity : 1},600 );
			$(".barretta input.inputrot").focus().blur(function()
			{
				$("form.topsearch input.inputrot").css({display : "none"});
				
			});
/*
		 	$(".carrind, .cercamarr, .area-utenti").animate({opacity : 0},600, function()
			{
				$(this).css({display : "none"});
				$(".topsearch").css({display : "block", opacity : 0}).animate({opacity : 1},600);
				$(".barretta input.inputrot").focus().blur(function()
				{
					$(".topsearch").animate({opacity : 0}, 600, function()
					{
						$(this).css({display : "none"});
						$(".carrind, .cercamarr, .area-utenti").css({display : "block"}).animate({opacity : 1}, 600);
					});
				
				});
			});
*/
		}
		else
		{
			$("form.topsearch").css({ display : "block"});
			$(".barretta input.inputrot").focus().blur(function()
			{
				$("form.topsearch input.inputrot").css({display : "none"});
				
			});
		}
		
	});
//-- Gestione Privacy
	if($("input.check[name=privacy]").val()){
		var me = $("input.check[name=privacy]");
		$("form:not(.topsearch)").submit(function(){
			if(!me.attr("checked")){
				win.dimensions.y = 80;
				win.model.title = "";
				win.model.body = "<div style='text-align : center'><img class=\"zero-margin\" src=\"content/immagini/icone/attenzione.jpg\"/><br/>Attenzione.<br/> Devi accettare il trattamento dei dati personali.</div>";
				win.model.prompt = "<a class=\"close\">Torna alla compilazione del modulo</a><br/><br/>";
				win.view.show();
				win.view.prompt.find(".close").click(function(){
					win.controller.close();
				});
				return false;
			}else{
				return true;
			} 
		});
	}
//CONTATTI INVIATO

	if($("input[name=tutto-inviato-ok]").val())
	{
		setTimeout(function()
		{
			$("form.concludi").animate({opacity : 0},1200, function()
			{
				$(".messm").css({opacity : 0, display : "block"}).animate({opacity : 1},1200);
			});
		},1000);
	}
//Zebra CARRELLO
	if($.browser.msie && $.browser.version < 7){
		
	}else{
	$(".carrello tr").not(".head").eq(0).css({background : "rgb(247,245,237) url(content/immagini/ombra.png) no-repeat top"});		
	}
	$(".carrello tr:even").not(".head").css({background : "#fff"});
	$(".ghost a").removeAttr("href");

//PROMEMORIA
	$(".unlogged a[href=concludi], .unlogged input.concludiacquisto").click(function(){
		win.dimensions.y = 80;
		win.model.body = "<div style=\"text-align: center;\">Promemoria<div>Ti ricordiamo che se sei un utente registrato puoi effettuare l'accesso e ordinare</br> utilizzando i tuoi dati senza compilare il modulo</div></div>";
		win.model.prompt = "<button class=\"log\" rel='accesso'>Effettua il login</button><button class=\"registrati\" rel='registrati'>Registrati adesso</button><button class=\"ignora\" rel='compila'>Ignora e prosegui</button>";
		win.view.show();
		win.view.prompt.find("button").click(function(){
			window.location = ROOT_EXT+$(this).attr("rel");
		});
		return false;
	});
//CLASSE aLink
	$(".aLink").click(function(){
		var me = $(this);
		var href;
		if(me.val() != ""){
			href = me.val();
		}
		else if(me.attr("name")){
			href = me.attr("name");
		}
		window.location = ROOT_EXT+href;
	});
//GESTIONE PAGAMENTO
	$("#selez_pagamento .long .pulsverde").click(function(){
		var me = $(this);
		win.dimensions.y = 80;
		win.view.show();
		win.controller.wait();
		setTimeout(function(){
			var toPost = {
				metodo : me.val(),
				idOrder : $("input[name=idOrder]").val(),
				order_id : $("input[name=order_id]").val()
			};
			$.post("changePay", toPost, function(res){
				if(me.val() == "Carta di credito" || me.val() == "PayPal"){
					$("#paypalpay").submit();
				}else{
					win.model.body = "Gentile cliente,<br/>troverai nella tua casella di posta elettronica tutte le informazioni necessarie<br/> per pagare con "+me.val()+".";
					win.model.prompt = "<button class='confirm'>chiudi</button>";
					win.view.refresh();
					win.controller.confirm = function(){
						win.controller.close();
					}
				}
				
			});
			
		}, 1000);
		
	});
	$("form.concludi input[type='text'], form.concludi input[type='password'], textarea, form.concludi select").focus(function(){
		$(this).css({borderColor : "#D7CCAD"});
	});
	$("form.concludi input[type='text'], form.concludi input[type='password'], textarea, form.concludi select").blur(function(){
		$(this).css({borderColor : "#E7E1CE"});
	});
});
