
var cartId = "cart"+sessionId;
var loginId = "login"+sessionId;

/*
var products = [
	{
		id : "a76dasd6asdas7a",
		tot : 3
	}
];
*/

function addProduct(productId,amount) {
	amount = parseInt(amount);
	var cart = getCart();
	var products = JSON.parse(cart);
	if (typeof products == 'object') {
		var startSize = products.length;
		var notfound = true;
		for (var i=0; i<products.length; i++) {
			var product = products[i];
			if (product.id == productId) {
				notfound = false;
				var productTotTmp = parseInt(product.tot);
				if (amount) {
					productTotTmp = amount;
				} else {
					productTotTmp += 1;
				}
				product.tot = productTotTmp;
				break;
			}
		}
		if (notfound) {
			products.push({id:productId,tot:1});
		}
		cart = JSON.stringify(products);
		setCart(cart);
		return (notfound && (products.length == (startSize+1))) || ((!notfound) && (products.length == startSize)) ? 1 : 0;
	} else {
		alert('addProduct: Errore in formato dati.');
	}
}


function decreaseProduct(productId) {
	var cart = getCart();
	var products = JSON.parse(cart);
	if (typeof products == 'object') {
		var newCart = [];
		for (var i=0; i<products.length; i++) {
			var product = products[i];
			if (product.id == productId) {
				var productTotTmp = parseInt(product.tot);
				if (productTotTmp > 1) {
					productTotTmp -= 1;
					product.tot = productTotTmp;
					newCart.push(product);
				}
			} else {
				newCart.push(product);			
			}
		}
		cart = JSON.stringify(newCart);
		setCart(cart);
		return newCart.length == products.length ? 0 : 1;
	} else {
		alert('delProduct: Errore in formato dati.');
	}
}


function delProduct(productId) {
	var cart = getCart();
	var products = JSON.parse(cart);
	if (typeof products == 'object') {
		var newCart = [];
		for (var i=0; i<products.length; i++) {
			var product = products[i];
			if (product.id != productId) {
				newCart.push(product);			
			}
		}
		cart = JSON.stringify(newCart);
		setCart(cart);
		return newCart.length == products.length ? 0 : 1;
	} else {
		alert('delProduct: Errore in formato dati.');
	}
}

function setCart(value) {
	jQuery.cookie(cartId, value, { path: '/' });
}

function getCart() {
	var cart = jQuery.cookie(cartId);
	if (cart == null) {
		var emptyCart = [];
		cart = JSON.stringify(emptyCart);
		setCart(cart);
	}
	return cart;
}

function delCart() {
	jQuery.cookie(cartId, null);
}

function cartExists() {
	return jQuery.cookie(cartId) == null ? false : true;
}

//========================================================

function syncCartAmount(counterItem,assetId) {
	var amount = jQuery("#quantitaItem"+assetId).val();
	if (isNumber(amount) && isInteger(amount) && (amount>0)) {
		addProduct(assetId,amount);
		reloadCart();
		refreshBasketResume();
	} else {
		jQuery("#quantitaItem"+assetId).val(
			jQuery("#quantity_"+counterItem).val()
		);
		alert("Attenzione, valore '"+amount+"' non corretto.");
	}
}

function deleteCartItem(assetId) {
	delProduct(assetId);
	reloadCart();
	refreshBasketResume();
}


function reloadCart() {
  jQuery.post("/index.html",{func:'cart'},
	  function(data) {
		jQuery("#dbCart").after(data).remove();
	  }
  );
}


function refreshBasketResume() {
	var string = counterBasketString();
	jQuery("#infocart > a").text(string);
}

function counterBasketString() {
	var string = '';
	var num = counterBasket();
	if (num == 1) {
		string = '1 elemento nel carrello';
	} else {
		string = num + ' elementi nel carrello';
		if (num != 0) {
			string = string.replace(/^0+/,"");
		}
	}
	return string;
}

function counterBasket() {
	var cart = getCart();
	var products = JSON.parse(cart);
    var counter = 0;
	if (typeof products == 'object') {
		for (var i=0; i<products.length; i++) {
			var product = products[i];
			counter += parseInt(product.tot);
		}
	}
	return counter;
}
//========================================================



// INVIO FORM A PAYPAL
function submitToPaypal() {
	if (userIsLogged()) {
		//jQuery('#dbCart').submit();
		alert('Siamo spiacenti ma gli acquisti su Paypal non sono stati ancora abilitati.');
	} else {
		document.location.href = '/autenticazione.html';
	}
}



// APERTURA BOXY CON CARRELLO
function showCart() {
  jQuery.post("/index.html",{func:'cart'},
			  function(data) {
                showBoxy(data);
			  }
  );	
}


// DISABILITA ENTER IN FORM CARRELLO E FA UN BLUR X AGGIORNARE
function disableEnterKey(evt) {
  var evt = (evt) ? evt : ((event) ? event : null);
  var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
  if ((evt.keyCode == 13) && (node.type=="text"))  {
	node.blur();
	return false;
  }
}


//===========================================================


// APERTURA BOXY CON ISCRIZIONE NEWSLETTER
function showNewsletterRegistration() {
  jQuery.post("/root/newsletter-modulo-iscrizione",{func:'view'},
			  function(data) {
                var theBox = showBoxy(data);
				jQuery("#stili").css("display", "none");
				theBox.center();
			  }
  );
}

function sendNewsletterRegistration(theInput) {
  var queryString = jQuery("#fm-form").formSerialize();
  closeBoxy(theInput);
  jQuery.post("/",queryString,
			  function(data) {
				var msg = "";
				if (data == 2) {
					msg = "<h2>Grazie per esserti registrato al servizio Newsletter del Borgo Ragazzi Don Bosco.</h2>";
				} else if (data == 1) {
					msg = "<h2>Attenzione. La mail che hai indicato risulta gi&agrave; registrata.</h2>";
				} else {
					msg = "<h2>Attenzione. Dati non validi.</h2>";
				}
                showBoxyTimer(msg,3);
			  }
  );
}


function showSendNewsletter() {
  jQuery.post("/root/newsletter-modulo-invio",{func:'view'},
			  function(data) {
                showBoxy(data);
			  }
  );
}

function sendNewsletter(theInput) {

	if (confirm('Inviare la Newsletter?')) {
		closeBoxy(theInput);

		jQuery.post("/index.html",{func:'sendNewsletter'},
				  function(data) {
					var response = eval('(' + data + ')');
					var esito;
					if (response['msg']) {
						esito = response['msg'];
					} else {
						esito = "<h3>ATTENZIONE: ERRORE IN TRASFERIMENTO DATI.</h3>"
					}
					showBoxy(esito);
				  }
		);

	}
}



