SUGGESTED_CHECK_INTERVAL=120000;suggestHintText='Consiglia un prodotto!
Perché consigliare un prodotto?';SUGGESTED_LIST=[];function SuggestedBar(container,width,height){this.container=container;this.w=width;this.h=height;this.obj=$('
');this.listDOM=$('');this.suggestHint=$('
'+suggestHintText+'
');this.addBlock=null;this.viewBlockText=null;this.suggestedLiText=null;this.suggestedEmptyLiBlock=null;this.suggExpBlock=null;this.suggestedLi=[];$.ajax("suggestedProductEmptyLi.php").done(jQuery.proxy(function(data){this.suggestedEmptyLiBlock=$(data);for(var i=0;i<20;i++){$(this.listDOM).append($(this.suggestedEmptyLiBlock).clone());}},this)).fail(jQuery.proxy(function(){},this));$.ajax("suggestedProductAdd.php").done(jQuery.proxy(function(data){this.addBlock=$(data);},this)).fail(jQuery.proxy(function(){},this));$.ajax("suggestedProductView.php").done(jQuery.proxy(function(data){this.viewBlockText=data;},this)).fail(jQuery.proxy(function(){},this));$.ajax("suggestedProductLi.php").done(jQuery.proxy(function(data){this.suggestedLiText=data;},this)).fail(jQuery.proxy(function(){},this));$.ajax("suggestedProductExplaination.php").done(jQuery.proxy(function(data){this.suggExpBlock=$(data);},this)).fail(jQuery.proxy(function(){},this));this.prepend=function(){$(this.container).prepend(this.obj);$(this.obj).css('position','absolute');$(this.obj).height(this.h);$(this.obj).width(this.w);$(this.obj).append(this.listDOM);$(this.obj).append(this.suggestHint);$("#suggestNow").click(jQuery.proxy(this.suggestNowClick,this));$("#suggestWhy").click(jQuery.proxy(this.suggestWhyClick,this));} this.suggestNowClick=function(e){e.preventDefault();$("#addSuggestedProductBack").remove();$("body").append($(this.addBlock).clone());$("#addSuggestedProductBack").hide().fadeIn();$(".addSuggestedProductBlock").hide();$("#addSuggestedProductBlock-1").fadeIn();$(".suggestedHow").click(jQuery.proxy(this.suggestWhyClick,this));} this.suggestWhyClick=function(e){e.preventDefault();$("#addSuggestedProductBack").remove();$("body").append($(this.suggExpBlock).clone());$("#addSuggestedProductBack").hide().fadeIn();$(".suggestedProductExp").hide();$("#suggestedProductExp").fadeIn();$(".suggestInSplitSecond").click(jQuery.proxy(this.suggestNowClick,this));} this.refreshProducts=function(){new ConnectRequest("suggested_product","getSomeSuggestedProductsFromTheInternet").sendRequest(jQuery.proxy(function(req){var suggProd=req.getResponse().data.suggProd;for(var i in suggProd){var p=suggProd[i];var id=parseInt(p.id);var undef=typeof SUGGESTED_LIST[id]=="undefined"||SUGGESTED_LIST[p.id]==null;SUGGESTED_LIST[id]=p;if(undef){this.showProduct(p,suggProd.length<5);}}},this));} this.refreshInterval=setInterval(jQuery.proxy(this.refreshProducts,this),SUGGESTED_CHECK_INTERVAL);this.refreshProducts();this.getWantText=function(p){return p.wanted==0?"":p.wanted==1?"Una persona vuole questo prodotto":p.wanted+" persone vogliono questo prodotto";} this.getWantLinkText=function(p){return p.iwantit=="true"?"Lo vuoi!":"Lo voglio";} this.showProduct=function(p,preloadImages){$(this.listDOM).find(".emptyLi").remove();var liText=this.suggestedLiText.replace(/{prodid}/g,p.id);liText=liText.replace("{username}",escapeHtml(p.username));var productname=p.title.length<27?p.title:p.title.substring(0,24)+"...";liText=liText.replace("{productname}",escapeHtml(productname));liText=liText.replace("{userid}",p.usermageid);var wanttext=this.getWantText(p);liText=liText.replace("{wanttext}",wanttext);var li=$(liText);$(li).find(".suggestedView").attr("href",p.id);$(li).find("a.suggestedView").click(jQuery.proxy(function(e){e.preventDefault();id=parseInt($(e.target).attr("href"));if(!id){id=parseInt($(e.target).parent().attr("href"));} var p=SUGGESTED_LIST[id];var vbt=this.viewBlockText.replace("{productname}",p.title);vbt=vbt.replace("{username}",p.username);if(p.description&&p.description!="null"){vbt=vbt.replace(/{productdesc}/g,p.description.replace(/\n/g,"
"));}else{vbt=vbt.replace(/{productdesc}/g,"Nessuna descrizione per questo prodotto.");} vbt=vbt.replace("{wantednum}",p.wanted);vbt=vbt.replace(/{product_id}/g,p.id);vbt=vbt.replace("{iwantit}",p.iwantit);var vb=$(vbt);$("body").append(vb);$(vb).hide().fadeIn();},this));this.suggestedLi[p.id]=li;if(preloadImages){var image=$(li).find(".suggProdImage").first();$(image).load(jQuery.proxy(function(){$(this.listDOM).prepend(li);$(li).hide().fadeIn();},this));}else{$(this.listDOM).append(li);$(li).hide().fadeIn();}} $(this.obj).on("mousewheel",jQuery.proxy(function(event,delta){event.preventDefault();var top=parseInt($(this.listDOM).css("top"));var newtop=(top+(delta*45));var hl=$(this.listDOM).outerHeight(true);var h=$(this.obj).height();var hsb=$(this.suggestHint).outerHeight(true);var hc=(h-hsb)-hl;newtop=Math.min(0,Math.max(hc,newtop));$(this.listDOM).css("top",newtop+"px");},this));setInterval(jQuery.proxy(function(){for(var id in this.suggestedLi){var wanttext=this.getWantText(SUGGESTED_LIST[id]);var wantlinktext=this.getWantLinkText(SUGGESTED_LIST[id]);$(this.suggestedLi[id]).find(".suggWants").text(wanttext);$(this.suggestedLi[id]).find(".suggWantButton").text(wantlinktext);if(SUGGESTED_LIST[id].iwantit=="true"){$(this.suggestedLi[id]).find(".suggWantButton").css("cursor","default");}else{$(this.suggestedLi[id]).find(".suggWantButton").css("cursor","pointer");}}},this),2000);} function sendIWantItRequest(prodId){if(SUGGESTED_LIST[prodId].iwantit=="true")return;new ConnectRequest("suggested_product","iWantIt").addArgument("id",prodId).sendRequest();SUGGESTED_LIST[prodId].iwantit="true";SUGGESTED_LIST[prodId].wanted++;} function sendRemoveIWantItRequest(prodId){if(SUGGESTED_LIST[prodId].iwantit=="false")return;new ConnectRequest("suggested_product","removeIWantIt").addArgument("id",prodId).sendRequest();SUGGESTED_LIST[prodId].iwantit="false";SUGGESTED_LIST[prodId].wanted--;} function countSuggestedProducts() {new ConnectRequest("suggested_product","countSuggestedProducts").sendRequest(valorizeCountSuggestedProducts);} function valorizeCountSuggestedProducts(request) {var response=request.getResponse();if(response.error) {alert("errore valorizeCountSuggestedProducts");alert(response.errorMessage);} count=response.data.countSuggProd;loadSuggestedProducts(start,prodPage);} function prevPage() {page--;start=(page-1)*prodPage;$("#suggestedProducts").empty();loadSuggestedProducts(start,prodPage);} function nextPage() {start=prodPage*page;page++;$("#suggestedProducts").empty();loadSuggestedProducts(start,prodPage);} function loadSuggestedProducts(start,prodPage) {new ConnectRequest("suggested_product","getAllSuggestedProducts").addArgument("start",start).addArgument("prodPage",prodPage).sendRequest(showSuggestedProducts);} function showSuggestedProducts(request) {var response=request.getResponse();if(response.error) {alert("errore showSuggestedProducts");alert(response.errorMessage);} else {var suggested=response.data.suggested;for(var i in suggested) {sp=suggested[i];var element=$("
  • "+sp.title+"
  • ");$("#suggestedProducts").append(element);if(sp.lovoglio==1) {$("#suggestedProduct-"+sp.id).addClass("wanted");}}} if(page*prodPage>=count) {$("#nextPage").css("visibility","hidden").removeClass('morePages');} else {$("#nextPage").css("visibility","visible").addClass('morePages');} if(page==1) {$("#prevPage").css("visibility","hidden").removeClass('morePages');} else {$("#prevPage").css("visibility","visible").addClass('morePages');}} function wantIt(spId) {if(!$("#suggestedProduct-"+spId).hasClass("wanted")) {new ConnectRequest("suggested_product","iWantIt").addArgument("id",spId).sendRequest();$("#suggestedProduct-"+spId).addClass("wanted");} else {new ConnectRequest("suggested_product","removeIWantIt").addArgument("id",spId).sendRequest();$("#suggestedProduct-"+spId).removeClass("wanted");}} function showProducts(request) {var response=request.getResponse();if(response.error) {alert("errore showProducts");alert(response.errorMessage);} else {var products=response.data.products;for(var i in products) {var p=products[i];var element=$("
  • "+p.name+"
  • ");$("#products").append(element);}}} function showRandomProducts(request) {var response=request.getResponse();if(response.error) {alert("errore showRandomProducts");alert(response.errorMessage);} else {var products=response.data.products;for(var i in products) {var p=products[i];var element=$("
  • "+p.name+"
  • ");$("#randomProducts").append(element);}}} function brickProduct(productId) {if(!$("#product-"+productId).hasClass("brikked")) {new ConnectRequest("user","addProduct").addArgument("productId",productId).sendRequest();$("#product-"+productId).addClass("brikked");} else {new ConnectRequest("user","removeProduct").addArgument("productId",productId).sendRequest();$("#product-"+productId).removeClass("brikked");}} function infoProd(prodId){new ConnectRequest("suggested_product","getSuggestedProductInfoFromId").addArgument("prodId",prodId).sendRequest(compilaSchedaProd);} function compilaSchedaProd(request) {var response=request.getResponse();if(response.error) {alert("errore compilaSchedaProd");alert(response.errorMessage);} else {var info=response.data.spData;$("#propName").text(info[2]);$("#productName").text(info[0]["title"]);document.title=info[0]["title"];$("#wantedNumber").text(info[1]);$("#productDesc").text(info[0]["description"]);for(var i in info[3]) {sp=info[3][i];var element=$("
  • '"+sp.username+"'
  • ");$("#userwantlist").append(element);} if(info[4]!=0) {$("#wantedButton").addClass("suggestedWantedSelected");$("#wantedText").text(youWantItText);}}} function wantIt(suggProdId) {new ConnectRequest("suggested_product","iWantIt").addArgument("id",suggProdId).sendRequest(setIWantIt);} function setIWantIt() {$("#wantedButton").addClass("suggestedWantedSelected");$("#wantedText").text(youWantItText);var val=parseInt($("#wantedNumber").text());$("#wantedNumber").text(++val);} function removeWantIt(suggProdId) {new ConnectRequest("suggested_product","removeIWantIt").addArgument("id",suggProdId).sendRequest(unsetIWantIt);} function unsetIWantIt() {$("#wantedButton").removeClass("suggestedWantedSelected");$("#wantedText").text(iWantItText);var val=parseInt($("#wantedNumber").text());$("#wantedNumber").text(--val);}