var CatalogoFiltriWidget = CatalogoFiltriWidget || (function() {
      var arrayCategorieDaFiltrare=[];
      var arrayMarchiDaFiltrare=[];
      var arrayLineeDaFiltrare=[];
      var descrizioniDaFiltrare=[];
      var firstFilterMarchi=[];
      var firstFilterCategorie=[];
      var allMarchiCategorie=[];
      var idxCategorie= 0;
      var idxMarchi = 0;
      var reloadCatalogo = true;
      var reloadPage;
      var API = {};
      var isFirstFilter = true;                        
      var isFirstFilterTime = true;
      var arrayCodici = [];
      var allMarchi =[];
      var allCategorie = [];
      var isShowFilterPanel = false;
      var treeRoot;
      var arrayTree = [];
      var novitaDaCercare = "";
      var bestsellerDaCercare = "";
      var capofilaDaCercare = "";
      var vetrinaDaCercare = "";
      var tipoVetrina = "";                                                                      
      var showAllNuoviArrivi = false;
      var catalogoViewCookie = "catalogoGrid";
      var descrPerNuovaRicercaAutomatica = "";
      var levelViewed = {};
      var firstSearch = false;
      var levelToggle;
      var livello1 = "";
      var livello2 = "";
      var arrayLivello2 = [];
      var arrayLivello1 = [];
      var arrayMarchi = [];
      var arrayCategorie = [];
      var arrayMarchiXRicerca = [];
      var arrayLivello2XRicerca = [];
      var arrayLinee = [];
      var arrayLineeXRicerca = [];      
      var isViewGrid = false;
      var isShowNovita = false;
      var isShowBestseller = false;
      var vaiACarrelloArticolo = "";
      var esplodiCapofila = false;
      var percorsoRicerca = [];
      var ricercheFatte = [];
      var capofilaFromAutocomplete = false;
      var creaElencoFiltri = true;
	    var isViewArtDaShopInCatalogo = false;
	    var isRicercaXLivello2 = false;
	    var capofilaFromUrl = false;
      var carrelloInCatalogo = false;
      var preferitiInCatalogo = false;
      var ricercaArticoloFromUrl = false;
      var isPrimaRicerca = true;
      var isFiltroXMarchio = false;
      var arrayMarchiNumeri = [];
      var arrayMarchiDivisioni = [];
      var isRemoveRicerca = false;
      var isRicercaXLinea = false;
	    var ricercaXLinea = "";
      var divisioniPrimaRicerca = [];
      var divisioniFiltrate = [];
      var defaultCatalogoSearch = "C";
      var inizialiCatalogo = [];
      var timerRotazioneImmagini = 6000;

      function updateMarchiCategorie(data) {

          refreshFilter();


          //$("#selectCategoria").data('tokenize').clear();
          $("#selectCategoria").empty();
          //$("#selectMarchio").data('tokenize').clear();
          //$("#selectMarchio").empty();

          for( var i = 0; i < firstFilterMarchi.length; i++ ) {
             var marchio = $.trim(firstFilterMarchi[i]);
             var option = "<option value=\"" + marchio.trim() + "\"";
             if ($.inArray(marchio, arrayMarchiDaFiltrare) != -1) {
                option = option + " disabled";
             }
             option = option + " >" + marchio.trim() + "</option>"
             $( "#selectMarchio" ).append(option);
          }
          $("#selectMarchio").trigger('chosen:updated');

          for( var i = 0; i < firstFilterCategorie.length; i++ ) {
            var categoria = $.trim(firstFilterCategorie[i]);
            var option = "<option value=\"" + categoria.trim() + "\"";
            if ($.inArray(categoria, arrayCategorieDaFiltrare) != -1) {
              option = option + " disabled";
            }
            option = option + " >" + categoria.trim() + "</option>"
            $( "#selectCategoria" ).append(option);
          }
          $("#selectCategoria").trigger('chosen:updated');

          //openFilterPanel();
      }


      function removeMarchio(element) {

      }

      function removeCategoria(element) {

            function compare(a, b) {
              if (a.label < b.label) {
                return -1;

              }
              if (a.label > b.label) {
                return 1;
              }
              return 0
            }

            if (!element.checked) {
              if (!isFirstFilter) {
                allCategorie[allCategorie.length] = { label: element.value.replace(";"," "), value:element.value};
                allCategorie.sort(compare);
                //console.log(arrayCategorieDaFiltrare.indexOf(element.value));
                arrayCategorieDaFiltrare.splice(arrayCategorieDaFiltrare.indexOf(element.value), 1);
                refreshFilter();
                if (arrayCategorieDaFiltrare.length == 0 && arrayMarchiDaFiltrare == 0) {
                   removeFilter();
                } else {

                   execFilter();
                }
              }
            } else {
              if (!isFirstFilter) {
                for (var i = 0; i < allCategorie.length; i++) {
                  if (allCategorie[i].value == element.value) {
                    allCategorie.splice(i, 1);
                    break;
                  }
                }
             }
           }
          //20220711 Alessandro $( "#selectCategoria" ).autocomplete('option', 'source', allCategorie);
      }


      function removeFilter() {

      // Se loggato controllo se ho articoli non inseriti a carrello
          var artViewed = [];
          //$("#lenteRicerca").hide();
          CatalogoWidget.setArtViewed(artViewed);
          //CatalogoFiltriWidget.toggleLevel(level);
      
          CatalogoFiltriWidget.setLivello1("");
          arrayMarchiDaFiltrare = [];
          arrayLineeDaFiltrare = [];
          arrayLinee = [];
          arrayCategorieDaFiltrare = [];
          descrizioniDaFiltrare = [];
          idxMarchi = 0;
          idxCategorie = 0;
          isPrimaRicerca = true;
          setdescrizioneDaFiltrare = [];
          ricercheFatte = [];
          capofilaFromAutocomplete = false;
          isRicercaXLinea = false; 
          if (isWorkspace && nrCheck > 0) {
            CatalogoWidget.showErrorCarrello();
          } else {
            closeFilterPanel();
          //currentPage = 1;
            $('.pagination').empty();
            $('.pagination').removeData('twbs-pagination');
            $('.pagination').unbind();
          //$( "#filterPanel").hide();
          //$("#removeFilter").hide();
          //console.log(window.innerWidth);
            $("#nuoviArriviVert").hide();
            if (almenoUnaNews) {
              $("#bannerTable").show();
            }
            $("#removeFilter").attr('src','./src/images/vuota.png');
            $("#removeFilter").hover(function(){
                            $("removeFilter").css("cursor", "default");
                            }, function(){
                             $("removeFilter").css("cursor", "default");
                            });
            $("#removeFilter").attr('alt', '');
            $("#removeFilter").attr('title', '');
            //$("#raffinaRicercaTd").hide();
            $("#ricercaFullTextTd").show();
            $("#ricercaText").html("Ricerca testo libero");
           //document.getElementById("ricercadesElem").disabled = false;

            //arrayTree = [];
            $( "#listCapofila" ).empty();
            $("#ricercacodElem").val("");
            $("#ricercadesElem").val("");
             $("#ricercadesElemMobile").val("");
            //$("#raffinaRicerca").val("");
            $("#selectCategoria").val("");
            $("#selectMarchio").val("");
            $("#selectMarchio").attr("placeholder", "Scegli un marchio");
            $("#selectCategoria").attr("placeholder", "Scegli una famiglia");
            $( "#filtriCategoria").empty();
            $( "#filtriMarca").empty();
            $( "#filtriCategoriaHead").hide();
            $( "#filtriMarcaHead").hide();
            $( "#toggleCatalogoViewBody").hide();
            $( "#listCapofilaGrid" ).empty();
            CatalogoWidget.setOffset(0);
            if (CatalogoFiltriWidget.getShowAllNuoviArrivi() && arrayTree.length > 1) {
               arrayTree = [];
               CatalogoWidget.showNuoviArrivi();
            } else {

              if (window.innerWidth > 362 || document.documentElement.clientWidth  > 362 || document.body.clientWidth > 362 ) {
                if (isWorkspace) {
                  $("#tableWorkspace").show();
                } else {
                  $("#nuoviArrivi").show();
                }
                $("#nuoviArriviMobile").hide();
              } else {
                $("#nuoviArrivi").hide();
                $("#nuoviArriviMobile").show();
               

              }
              /* 20180129 riattivare se solo promo del mese
                $("#nuoviArriviVert").hide();
                $("#nuoviArrivi").hide();
                $("#nuoviArriviMobile").hide();
                Fino qui
                */
              if (showLastPromo == "1" && isWorkspace) {
                $("#lastPromo").show();
                
                /*var left = $("#lastPromoHead").offset().left + "px";
                var top = $("#lastPromoHead").offset().top + $("#newItemsHead").outerHeight() + "px";
               
                $("#lastPromoContent").css("top", top);
                $("#lastPromoContent").css("left", left);
                $("#lastPromoContent").css("position", 'fixed');
                */
                $("#lastPromoTitle").css("background-color", tableBackgroundColor);
                $("#lastPromoTitle").css("color", tableForegroundColor);
                
                var top2 = (window.innerHeight / 2);
                var left2 = (window.innerWidth / 2) - $("#lastPromoTitle").innerWidth();
                $("#lastPromo").css("top", top2);
                $("#lastPromo").css("left", left2);
                $("#lastPromo").css("position", 'fixed');
              }
              //29032018 $("#newItemsTitle").css("background-color", tableBackgroundColor);
              //29032018 $("#newItemsTitle").css("color", tableForegroundColor);
              arrayTree = [];
              reloadCatalogo = true;
              isFirstFilter = true;
              isFirstFilterTime = true;
              CatalogoFiltriWidget.setShowAllNuoviArrivi(false);
              CatalogoWidget.setShowVetrina(false);
              reloadCatalogo = false;
              novitaDaCercare = "";
              capofilaDaCercare = "";
              vetrinaDaCercare = "";
              CatalogoWidget.setResetPaginator(true);
              $('#tabMenu ul:first li:eq(0) a').text("CATALOGO");
              CatalogoWidget.caricaCatalogo();
              
            }
          }
          $("#ricercadesElem").focus();
      }

      function cleanArray(actual) {
          var newArray = new Array();
          for(var i = 0; i<actual.length; i++){
            if (actual[i]){
            newArray.push(actual[i]);
          }
        }

        return newArray;
      }

      function openFilterPanel() {

         // CatalogoFiltriWidget.createTree();
           CatalogoFiltriWidget.createOptionPanel();
          //$( "#filterTreeHead").show();
          //$( "#filterTreeHead").css("background-color", tableBackgroundColor);
          //$("#filterTreeHead").css("color", tableForegroundColor);


          //$("#filterPanel").css("top", $(this).scrollTop());
          
          
          setFilterPanelPosition();

          /*
          $("#btnShowFilter").html("Close");
          $("#btnShowFilter").show();
          $("#btnShowFilter").unbind('click');  // questo dealloca l'azione e ne crea una nuova
          $("#btnShowFilter").bind("click", (function() {closeFilterPanel()}));
          */

       }

      function setFilterPanelPosition() {
         
        if (kataWidth == "100%" && !isWorkspace) {
          /*
          $("#filterPanel").css("position", "relative");
          $("#filterPanel").css("width", "33%");
          $("#filterPanel").css("padding-left", "33%");
          $("#filterPanel").css("padding-top", "6px");
          */
          $("#filterPanel").css("position", "fixed");
          $("#filterPanel").css("width", "17%");
          $("#filterPanel").css("left", "10px");
          $("#filterPanel").css("top", "25%");
          //$("#filterPanel").css("background-color", "white");
        } else {
          $("#filterPanel").css("position", "fixed");
          $("#filterPanel").css("width", "17%");
        }
        $("#filterPanel").show();
        //$("#filterPanel").hide();
      }


      function closeFilterPanel() {

        //$("#filterPanel").animate({left: "-25%"}, 1000);
        $("#filterPanel").hide();
        isShowFilterPanel = false;
        /*
        $("#btnShowFilter").html("Open");
        $('#btnShowFilter').unbind('click');  // questo dealloca l'azione e ne crea una nuova
        $("#btnShowFilter").bind("click", (function() {
                                                openFilterPanel()
                                                }));
                                                */
      }

    API.getTimerRotazioneImmagini = function() {
      return timerRotazioneImmagini;
    }  

    API.setTimerRotazioneImmagini = function(timer) {
      timerRotazioneImmagini = timer;
    } 

    API.getInizialeCatalogo = function() {
      return inizialiCatalogo;
    }
    
    API.setInizialeCatalogo = function(value) {
      inizialiCatalogo = value;
    }
    API.setDefaultCatalogoSearch = function (value) {
        defaultCatalogoSearch = value;
    }
    API.getDefaultCatalogoSearch = function () {
        return defaultCatalogoSearch;
    }

    API.clearDivisioniPrimaRicerca = function() {
        divisioniPrimaRicerca = [];
    }
      
      API.getDivisioniPrimaRicerca = function() {
        return divisioniPrimaRicerca;
      }
      
      API.setDivisioniFiltrate = function(div) {
        divisioniFiltrate.push(div);
      }
      
      API.clearDivisioniFiltrate = function() {
        divisioniFiltrate = [];
      }
            
      API.getDivisioniFiltrate = function() {
        return divisioniFiltrate;
      }
      
      API.setRicercaXLinea = function(value) {
        ricercaXLinea = value;
      }
      
      API.isRicercaXLinea = function() {
        return ricercaXLinea;
      }
      
      API.setCarrelloInCatalogo = function(value) {
        carrelloInCatalogo = value;
      }
      
      API.isCarrelloInCatalogo = function() {
        return carrelloInCatalogo;
      }
             
	    API.setPreferitiInCatalogo = function(value) {
        preferitiInCatalogo = value;
      }
      
      API.isPreferitiInCatalogo = function() {
        return preferitiInCatalogo;
      }       

      API.setCapofilaFromUrl = function(value) {
        capofilaFromUrl = value;
      }
      
      API.isCapofilaFromUrl = function() {
        return capofilaFromUrl;
      }
      	  
      API.setRicercaArticoloFromUrl = function(value) {
        ricercaArticoloFromUrl = value;
      }
      
      API.isRicercaArticoloFromUrl = function() {
        return ricercaArticoloFromUrl;
      }       
	  
      API.setRicercaXLivello2 = function(value) {
        isRicercaXLivello2 = value;
      }
      
      API.isRicercaXLivello2 = function() {
        return isRicercaXLivello2;
      } 	  
	  
      API.setViewArtDaShopInCatalogo = function(value) {
        isViewArtDaShopInCatalogo = value;
      }
      
      API.isViewArtDaShopInCatalogo = function() {
        return isViewArtDaShopInCatalogo;
      } 
 
      API.setCapofilaFromAutocomplete = function(value) {
        capofilaFromAutocomplete = value;
      }
      
      API.isCapofilaFromAutocomplete = function() {
        return capofilaFromAutocomplete;
      }      
      
      API.setPercorsoRicerca = function(value) {
        percorsoRicerca = value;
      }
      
      API.getPercorsoRicerca = function() {
        return percorsoRicerca;
      }
            
      API.setLivello1 = function(lev1) {
        livello1 = lev1;
      }  

      API.getLivello1 = function() {
        return livello1;
      }

      API.setViewGrid = function(val) {
        isViewGrid = val;
      }
      
      API.isViewGrid = function() {
        return isViewGrid;
      }
      
      API.setArrayLivello2 = function(array) {
        arrayLivello2 = array;
      }

      API.getArrayLivello2 = function() {
        return arrayLivello2;
      }

      API.setArrayLivello1 = function(array) {
        arrayLivello1 = array;
      }

      API.getArrayLivello1 = function() {
        return arrayLivello1;
      }
      
      API.setArrayMarchi = function(array) {
        arrayMarchi = array;
      }

      API.getArrayMarchi = function() {
        return arrayMarchi;
      }

    API.setArrayCategorie = function (array) {
        arrayCategorie = array;
    }

    API.getArrayCategorie = function () {
        return arrayCategorie;
    }
      API.setArrayMarchiNumeri = function(array) {
        arrayMarchiNumeri = array;
      }

      API.getArrayMarchiNumeri = function() {
        return arrayMarchiNumeri;
      }

      API.setArrayMarchiDivisioni = function(array) {
        arrayMarchiDivisioni = array;
      }

      API.getArrayMarchiDivisioni = function() {
        return arrayMarchiDivisioni;
      }            

      API.setRemoveRicerca = function(val) {
        isRemoveRicerca = val;
      }

      API.isRemoveRicerca = function() {
        return isRemoveRicerca;
      }
      
      API.setArrayLinee = function(array) {
        arrayLinee = array;
      }

      API.getArrayLinee = function() {
        return arrayLinee;
      }

      API.setArrayLineeXRicerca = function(array) {
        arrayLineeXRicerca = array;
      }

      API.getArrayLineeXRicerca = function() {
        return arrayLineeXRicerca;
      }
                  
      API.setArrayLivello2XRicerca = function(array) {
        arrayLivello2XRicerca = array;
      }

      API.getArrayLivello2XRicerca = function() {
        return arrayLivello2XRicerca;
      }
      
      API.setArrayMarchiXRicerca = function(array) {
        arrayMarchiXRicerca = array;
      }

      API.getArrayMarchiXRicerca = function() {
        return arrayMarchiXRicerca;
      }      
                  
      API.setFilterPanelPosition = function() {
        setFilterPanelPosition();
      }

      API.setFirstSearch = function(value) {
        firstSearch = value;
      }
      
      API.getFirstSearch = function() {
         return firstSearch;
      }
      API.setShowAllNuoviArrivi = function(val) {
        showAllNuoviArrivi = val;
      }

      API.getShowAllNuoviArrivi = function() {
        return showAllNuoviArrivi;
      }

      API.removeCategoria = function(element) {
        removeCategoria(element);
      }

      API.openFilterPanel = function() {
        openFilterPanel();
      }


      API.setTreeRoot = function(element) {
        treeRoot = element;
      }

      API.getTreeRoot = function() {
        return treeRoot;
      }

      API.removeFilter = function() {
        removeFilter();
      }

      API.getCatalogoViewCookieName = function() {
         return catalogoViewCookie;
      }

      API.resetUltimaParola = function() {
      
         descrizioniDaFiltrare = [];
      }
       
      API.resetRicerca = function(ultimaRicerca) {
        $('#levelSelector').val("all");
        livello1= "";
        livello = "";
        livello2 = "";
        arrayLivello2XRicerca = [];
        arrayMarchiXRicerca = [];
        arrayLineeXRicerca = [];
        arrayLinee = [];
        arrayLineeDaFiltrare = [];
        arrayMarchiDaFiltrare = [];
        arrayCategorieDaFiltrare = [];
        descrPerNuovaRicercaAutomatica = "";
        descrizioniDaFiltrare = [];
        descrizioniDaFiltrare[0] = ultimaRicerca.replace(":*", "");  
        CatalogoFiltriWidget.resetRicercheFatte();
        CatalogoFiltriWidget.getRicercheFatte()[0] = "D:" + descrizioniDaFiltrare[0];
        CatalogoFiltriWidget.setInizialeCatalogo([]);
      }
      
      API.setHtmlFiltriRicerca = function() {
        var htmlDiv = "<div class='filtriRicercaItem '>Hai cercato:</div>";
        for (var i = 0; i < CatalogoFiltriWidget.getRicercheFatte().length; i++) {
          var addBox = true;
          //htmlDiv = htmlDiv + "<div class='filtriRicercaItem filtriRicercaBorder'><div class='filtriRicercaItem '>";
          if (CatalogoFiltriWidget.isCapofilaFromAutocomplete() || CatalogoFiltriWidget.isCapofilaFromUrl() || CatalogoFiltriWidget.isViewArtDaShopInCatalogo() ) {
            htmlDiv = htmlDiv + "<div class='filtriRicercaItem filtriRicercaBorder'><div class='filtriRicercaItem '>Capofila " + CatalogoFiltriWidget.getCapofila();
          } else if (CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[0] == "L2") {
             htmlDiv = htmlDiv + "<div class='filtriRicercaItem filtriRicercaBorder'><div class='filtriRicercaItem '>Famiglia " + CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[1];
          } else if (CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[0] == "D") {
             htmlDiv = htmlDiv + "<div class='filtriRicercaItem filtriRicercaBorder'><div class='filtriRicercaItem '>Descr. " + CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[1];
          } else if (CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[0] == "A" && CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[1].indexOf(";") != -1) {
             htmlDiv = htmlDiv + "<div class='filtriRicercaItem filtriRicercaBorder'><div class='filtriRicercaItem '>Articoli " + CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[1].replaceAll(";", " - ");
          } else if (CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[0] == "A" && CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[1].indexOf(";") == -1) {
             htmlDiv = htmlDiv + "<div class='filtriRicercaItem filtriRicercaBorder'><div class='filtriRicercaItem '>Articolo " + CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[1];
          } else if (CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[0] == "M" && i == 0) {
            htmlDiv = htmlDiv + "<div class='filtriRicercaItem filtriRicercaBorder'><div class='filtriRicercaItem '>Marchio " + CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[1];
          } else if (CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[0] == "M" && i != 0) {
            addBox = false;
          } else if (CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[0] == "F") {
            htmlDiv = htmlDiv + "<div class='filtriRicercaItem filtriRicercaBorder'><div class='filtriRicercaItem '>Famiglia " + CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[1];
          } else if (CatalogoFiltriWidget.getRicercheFatte()[i] == "U") {
            htmlDiv = htmlDiv + "<div class='filtriRicercaItem filtriRicercaBorder'><div class='filtriRicercaItem '>Nuovi Arrivi";
          } else if (CatalogoFiltriWidget.isShowNovita()) {
            htmlDiv = htmlDiv + "<div class='filtriRicercaItem filtriRicercaBorder'><div class='filtriRicercaItem '>Novit&agrave; " + CatalogoFiltriWidget.getNovita();
          } else if (CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[0] == "L") {
            htmlDiv = htmlDiv + "<div class='filtriRicercaItem filtriRicercaBorder'><div class='filtriRicercaItem '>Linea " + CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[1] +
                                " di " + CatalogoFiltriWidget.getMarchi()[0].trim();
          } 
          if (addBox) {
            htmlDiv = htmlDiv + "</div><div class='annullaFiltroParola' alt='Rimuovi questa ricerca' title='Rimuovi questa ricerca' ricerca='" + CatalogoFiltriWidget.getRicercheFatte()[i] + "'>" +
                    "<i class='fas fa-times-circle'></i></div></div>";
          }
        }
        $(".filtriApplicati").empty().html(htmlDiv);
         
      }  
      
	  
	  API.cambiaTipoVisualizzazione = function(element){
		if (!CatalogoFiltriWidget.isViewGrid()) { 
			CatalogoFiltriWidget.setViewGrid(true);
		}else{
			CatalogoFiltriWidget.setViewGrid(false);
		}
		
		eraseCookie("tipoVistaCatalogo");
		createCookie("tipoVistaCatalogo", CatalogoFiltriWidget.isViewGrid(), 365);
		
		CatalogoFiltriWidget.toggleCatalogoView(this)
	  }
	  
	  
	  
      API.toggleCatalogoView = function(element) {
         if (CatalogoFiltriWidget.isViewGrid()) { //visualizzo come griglia
           $(".boxAddCpf").addClass("display-none");  
           $(".boxAddCpfGrid").removeClass("display-none");
           $(".przListLbl").addClass("display-none");  
           $(".przListLblGrid").removeClass("display-none");
           $(".boxLink").addClass("capofilaGridHide");
           $(".boxLinkGrid").removeClass("capofilaGridHide");
           $(".boxPromoNovita").addClass("capofilaGridHide");
           $(".boxPromoNovitaGrid").removeClass("capofilaGridHide");
		       $(".marcaImageGrid").removeClass("display-none");
           $(".recordLineaGrid").removeClass("capofilaGridHide");
           $(".descrCapofila").addClass("descrCapofilaGrid");
		       $(".catalogoImage").addClass("catalogoImageGrid");
           $(".descrCapofila").hide();
           //$(".mrkLinea").hide();
		       $(".mrkLinea").addClass("display-none"); 
           $(".capofilaDesc").hide();
           $(".capofilaCatalogo").removeClass("capofilaCatalogoList");
           $(".capofilaCatalogo").addClass("capofilaCatalogoGrid");
           $(".capofilaList").removeClass("capofilaListRadius");
		       $(".capofilaDescEst2").show;	   
		       $(".capolifaDescEstGrid").removeClass("capofilaGridHide");
		       $(".capolifaDescEstGrid").addClass("capolifaGridShow");   
           $(".btnMostraArticoliGrid").removeClass("capofilaGridHide");
		       $(".btnMostraArticoliGrid").addClass("capolifaGridShow");	
		       $(".btnMostraArticoliList").addClass("capofilaGridHide");
		       $(".btnMostraArticoliList").removeClass("capolifaGridShow");	
		       $(".capofilaData").removeClass("flex-row");			 
		       $(".capofilaData").addClass("flex-column");			 		
		       $(".capofilaData").addClass("capofilaDataWidthGrid");
		   //CatalogoFiltriWidget.setViewGrid(true);
           $(".toggleView").removeClass("fa-th");
           $(".toggleView").addClass("fa-bars");
           $(".gridLi").attr("alt", CommonApis.getTipListView());
           $(".gridLi").attr("title", CommonApis.getTipListView());
           
         } else { 
           $(".boxAddCpf").removeClass("display-none");  
           $(".boxAddCpfGrid").addClass("display-none");
           $(".przListLbl").removeClass("display-none");
           $(".przListLblGrid").addClass("display-none");
           $(".boxLink").removeClass("capofilaGridHide");
           $(".boxLinkGrid").addClass("capofilaGridHide");
           $(".boxPromoNovita").removeClass("capofilaGridHide");
           $(".boxPromoNovitaGrid").addClass("capofilaGridHide");       
		       $(".marcaImageGrid").addClass("display-none");		
           $(".recordLineaGrid").addClass("capofilaGridHide");	 
           $(".descrCapofila").removeClass("descrCapofilaGrid");
		       $(".catalogoImage").removeClass("catalogoImageGrid");
           $(".descrCapofila").show();
           //$(".mrkLinea").show();
		       $(".mrkLinea").removeClass("display-none"); 
           $(".capofilaDesc").show();
           $(".capofilaCatalogo").removeClass("capofilaCatalogoGrid");
           $(".capofilaCatalogo").addClass("capofilaCatalogoList");
           $(".capofilaList").addClass("capofilaListRadius");
		       $(".capolifaDescEstGrid").removeClass("capolifaGridShow");
		       $(".capolifaDescEstGrid").addClass("capofilaGridHide");			   		   
		       $(".btnMostraArticoliGrid").addClass("capofilaGridHide");
		       $(".btnMostraArticoliGrid").removeClass("capolifaGridShow");		
           $(".btnMostraArticoliList").removeClass("capofilaGridHide");
		       $(".btnMostraArticoliList").addClass("capolifaGridShow");			
		       $(".capofilaData").removeClass("capofilaDataWidthGrid");		   
		       $(".capofilaData").addClass("flex-row");			 
		       $(".capofilaData").removeClass("flex-column");	
		   //CatalogoFiltriWidget.setViewGrid(false);
           $(".toggleView").removeClass("fa-bars");
           $(".toggleView").addClass("fa-th");
           $(".gridLi").attr("alt", CommonApis.getTipGridView());
           $(".gridLi").attr("title", CommonApis.getTipGridView());
         }
      
      }
      
      
      API.getVaiACarrelloArticolo = function() {
        return vaiACarrelloArticolo;
      }
      
      API.setVaiACarrelloArticolo = function(cod) {
        vaiACarrelloArticolo = cod;
      }
      
      API.isPrimaRicerca = function() {
        return isPrimaRicerca;
      }
      
      API.setPrimaRicerca = function(value) {
        isPrimaRicerca = value;
      }      

      API.isFiltroXMarchio = function() {
        return isFiltroXMarchio;
      }
      
      API.setFiltroXMarchio = function(value) {
        isFiltroXMarchio = value;
      }
            
      API.reloadCatalogo = function() {
        createCookie("reloadCatalogo", 1, 1);
        CatalogoFiltriWidget.setPrimaRicerca(true);
        CatalogoFiltriWidget.setFiltroXMarchio(false);
        CatalogoFiltriWidget.clearDivisioniFiltrate();
        CatalogoWidget.clearCapofilaResponse();
        
        var news = JSON.parse(localStorage.getItem("arrayNews"));
        var capofilaAutocomplete = JSON.parse(localStorage.getItem("arrayCapofilaAutocomplete"));
        var categorie = JSON.parse(localStorage.getItem("arrayCategorie"));
        var lastPromo = JSON.parse(localStorage.getItem("arrayLastPromo"));
        var livelli = JSON.parse(localStorage.getItem("arrayLivelli"));
        var mapperParms = CommonApis.getSessionData().mapperParms;
        var marchi = JSON.parse(localStorage.getItem("arrayMarchi"));
        var novita = JSON.parse(localStorage.getItem("arrayNovita"));
        var artInPromo = JSON.parse(localStorage.getItem("arrayArtInPromo"));
        var bestSellers = JSON.parse(localStorage.getItem("arrayBestSellers"));
        data = {
                  capofilaAutocomplete: capofilaAutocomplete,
                  categorie: categorie,
                  lastPromo: lastPromo,
                  livelli: livelli,
                  mapperParms: mapperParms,
                  marchi: marchi,
                  news: news,
                  novita: novita,
                  artInPromo: artInPromo,
                  bestSellers: bestSellers,
                };
        CatalogoFiltriWidget.creaArrayMarchiCategorie(data);
        CatalogoWidget.loadCatalogoInitialPage();
       // location.reload();
      }
      
      API.backToCatalogo = function() {
        CatalogoFiltriWidget.setShowAllNuoviArrivi(false);
        arrayTree = [];
        removeFilter();
      }

      API.getArrayTree = function() {
        return arrayTree;
      }

      API.removeMarchio = function(element) {
        removeMarchio(element);
      }

      API.getAllMarchi = function() {
        return allMarchi;
      }


      API.createOptionPanel = function() {

         var htmlTree =  "<div id='filtriCatalogoMain' class='flex-column'>" ;
 
		    // if (abilitaCarrello) {
    			// htmlTree = htmlTree + "<br><div class='infoAddCarrello'><span><img src=./src/images/Online-Shopping-icon.png  alt='Aggiungi al carrello' title='Aggiungi al carrello' " +
         
		     if (isWorkspace) {

			      htmlTree = htmlTree + "<div id='infoCatalogoButton'>" ;
			 
			      if (abilitaCarrello){    			
				       htmlTree = htmlTree + CatalogoWidget.creaHtmAggiungiArticoloAddDiv(); 
		        }
			
			      htmlTree = htmlTree + "</div>";
			 
			      htmlTree = htmlTree + CatalogoWidget.creaHtmAggiungiArticolo();
         }

          
 
          
          // Aggiungo i livelli
          if (CatalogoFiltriWidget.getArrayLivello1().length > 0) {
            var htmlTree = htmlTree +  "<div class='tableLevelMrk'>" + 
                                    "<div id='tableLevel'><table id='tableLevelContent'><th class='thMrkLinLev'>Famiglie</th><tr><td>";
            for(var i = 0; i<CatalogoFiltriWidget.getArrayLivello1().length; i++) { 
              var desLevel = capitalizeFirstLetter(CatalogoFiltriWidget.getArrayLivello1()[i].split(":")[0]);
              var level = CatalogoFiltriWidget.getArrayLivello1()[i].split(":")[1];
              htmlTree = htmlTree + "<ul class='level1Ul'><li class='level1'" + 
                                    //"alt='Visualizza gli articoli della famiglia " + desLevel + "'" +
                                    //"title='Visualizza gli articoli della famiglia " + desLevel + "'" +
                                   //"onclick='CatalogoFiltriWidget.ricercaXLivello1(\"" + level + "\")' " +
                                   "id='level1" + level + "' value='"+ level + "'>" + desLevel + "</li></ul>";
              for(var x = 0; x<CatalogoFiltriWidget.getArrayLivello2().length; x++) {
                var level2 = CatalogoFiltriWidget.getArrayLivello2()[x].split(":")[1];
                var desLevel2 = capitalizeFirstLetter(CatalogoFiltriWidget.getArrayLivello2()[x].split(":")[0]);
                  if (level2.slice(0, 2) == level) {              
                    htmlTree = htmlTree +"<ul class='level2Ul'><li class='level2' deslev='" + desLevel + "-" + desLevel2 + "' " +
                                    "alt='Visualizza gli articoli della famiglia " + desLevel2 + "'" +
                                    "title='Visualizza gli articoli della famiglia " + desLevel2 + "'" +
                                   //"onclick='CatalogoFiltriWidget.ricercaXLivello2(\"" + level2 + "\")' " +
                                   "id='level2" + level2 +"' value='" + level2 + "'>" + desLevel2 + "</li></ul>";                                                       
                }
              }                                                                             
            }
            htmlTree = htmlTree + "</td></tr></table></div>";
          }
          
          // Aggiungo i marchi   
          if (CatalogoFiltriWidget.getArrayMarchi().length > 0 && showTreeMrk == 1) {
            var htmlTree = htmlTree +  "<div id='tableMarchi'><table id='tableMarchiContent'><th class='thMrkLinLev'>Marchi</th><tr><td><ul class='mrkCheckUl'>";
            for(var i = 0; i<CatalogoFiltriWidget.getArrayMarchi().length; i++) {
              var marchio = CatalogoFiltriWidget.getArrayMarchi()[i];
              if (marchio.trim() != "") {
                htmlTree = htmlTree + "<li class='mrkCheck'>" + 
                                   "<input name='mrkChk' type='checkbox' class='checkMrk' " + 
                                   //"onclick='CatalogoFiltriWidget.ricercaXMarchio(this)' " +
                                   "id='checkMrk" +
                                     marchio +"' value='" + marchio + "'";
                if (CatalogoFiltriWidget.getArrayMarchiXRicerca().indexOf(marchio) != -1 || CatalogoFiltriWidget.getArrayMarchi().length == 1) {
                  htmlTree = htmlTree + " checked ";
                }
                
                if (CatalogoFiltriWidget.getArrayMarchiNumeri()[marchio] == 0 ||
                    CatalogoFiltriWidget.getArrayMarchi().length == 1 ||
                    (CatalogoFiltriWidget.getDivisioniFiltrate().length > 0 && 
                     CatalogoFiltriWidget.getDivisioniFiltrate().indexOf(CatalogoFiltriWidget.getArrayMarchiDivisioni()[marchio]) == -1 ) ) {
                  htmlTree = htmlTree + " disabled ";
                }
                htmlTree = htmlTree + " >" + marchio + "&nbsp(" + CatalogoFiltriWidget.getArrayMarchiNumeri()[marchio] + ")</li>";
              }
            }
            htmlTree = htmlTree + "</ul></td></tr></table></div></div>";           
          }
          // Aggiungo le linee   
          if (CatalogoFiltriWidget.getArrayLinee().length > 1 && showTreeLinee == 1) {
            var htmlTree = htmlTree +  "<div id='tableLinee'><table id='tableLineeContent'><th class='thMrkLinLev'>Linee</th><tr><td>";
            for(var i = 0; i<CatalogoFiltriWidget.getArrayLinee().length; i++) {
              var linea = CatalogoFiltriWidget.getArrayLinee()[i];
              htmlTree = htmlTree + "<ul class='lineaCheck'><li class='lineaCheck'>" + 
                                   "<input name='lineaChk' type='checkbox' onclick='CatalogoFiltriWidget.ricercaXLinea(this)' " +
                                   "id='checkLinea" +
                                     linea +"' value='" + linea + "'";
              if (CatalogoFiltriWidget.getArrayLineeXRicerca().indexOf(linea) != -1) {
                htmlTree = htmlTree + " checked";
              }

              htmlTree = htmlTree + " >" + linea + "</li></ul>";
            }
            htmlTree = htmlTree + "</td></tr></table></div>" +
			 "</div>" ; // filtriCatalogoMain          
          }
          
        // $("#filterTree").html(htmlTree);
         $("#filtriCatalogo").empty().html(htmlTree);

         // Se ho un solo marchio attivo, lo disabilito
         var mrkCheck = document.getElementsByName("mrkChk");
         var numChk = 0;
         for (var i = 0; i < mrkCheck.length; i++) {
           if (mrkCheck[i].disabled) {
              numChk ++;
           }
         }
         if (mrkCheck.length - numChk == 1) {
           for (var i = 0; i < mrkCheck.length; i++) {
             if (mrkCheck[i].checked && !mrkCheck[i].disabled) {
               $(mrkCheck[i]).prop('disabled', true);
               break;
           }
         }
         }
         htmlTree = htmlTree.replace(/level2Chk/g, "level2ChkGrid"); 
         htmlTree = htmlTree.replace(/mrkChk/g, "mrkChkGrid");
         $("#filterPanelNewGrid").empty().html(htmlTree);
         
         
         aggiungiListenerCatalogoButton();
         //$("#tableLevel").css("height", window.innerHeight / 3);
         //$("#filterTree").jstree();
         

      }

      
      API.createRootTree = function(type) {
          if (type == "C") {
              CatalogoFiltriWidget.setTreeRoot(CatalogoFiltriWidget.getCategorie()[0]);
              arrayTree[0] = CatalogoFiltriWidget.getCategorie()[0] + ":" + type;
          } else if (type == "M") {
              CatalogoFiltriWidget.setTreeRoot(CatalogoFiltriWidget.getMarchi()[0]);
              arrayTree[0] = CatalogoFiltriWidget.getMarchi()[0] + ":"  + type;
          } else if (type == "D") {
              CatalogoFiltriWidget.setTreeRoot($("#ricercadesElem").val().toUpperCase());
              arrayTree[0] = $("#ricercadesElem").val().toUpperCase() + ":"  + type;
          } else if (type == "N") {
              CatalogoFiltriWidget.setTreeRoot(CatalogoFiltriWidget.getNovita());
              arrayTree[0] = CatalogoFiltriWidget.getNovita() + ":"  + type;
          } else if (type == "V") {
              CatalogoFiltriWidget.setTreeRoot(CatalogoFiltriWidget.getVetrina());
              arrayTree[0] = CatalogoFiltriWidget.getVetrina() + ":"  + type;
          } else if (type == "AV") {
              CatalogoFiltriWidget.setTreeRoot("Tutti i nuovi arrivi");
              arrayTree[0] = "Tutti i nuovi arrivi:AV";
          } else if (type == "L") {
              CatalogoFiltriWidget.setTreeRoot(CatalogoFiltriWidget.getLinee()[0]);
              arrayTree[0] = CatalogoFiltriWidget.getLinee()[0] + ":"  + type;
          }
      }



       API.addNodesToTree = function() {
          if (CatalogoFiltriWidget.getDescrizione() != "") {
            if (arrayTree.indexOf(CatalogoFiltriWidget.getDescrizione() + ":D") == -1 ) {
              arrayTree[arrayTree.length] = CatalogoFiltriWidget.getDescrizione() + ":D";
            }
          }
          if (CatalogoFiltriWidget.getNovita() != "") {
            if (arrayTree.indexOf(CatalogoFiltriWidget.getNovita() + ":N") == -1 ) {
              arrayTree[arrayTree.length] = CatalogoFiltriWidget.getNovita() + ":N";
            }
          }
          if (CatalogoFiltriWidget.getVetrina() != "") {
            if (arrayTree.indexOf(CatalogoFiltriWidget.getVetrina() + ":V") == -1 ) {
              arrayTree[arrayTree.length] = CatalogoFiltriWidget.getVetrina() + ":V";
            }
          }
          for (var i = 0; i < CatalogoFiltriWidget.getCategorie().length; i++) {
              if (CatalogoFiltriWidget.getCategorie()[i] != "" && arrayTree.indexOf(CatalogoFiltriWidget.getCategorie()[i] + ":C") == -1 ) {
                arrayTree[arrayTree.length] = CatalogoFiltriWidget.getCategorie()[i] + ":C";
              }
          }
          for (var i = 0; i < CatalogoFiltriWidget.getMarchi().length; i++) {
              if (CatalogoFiltriWidget.getMarchi()[i] != "" && arrayTree.indexOf(CatalogoFiltriWidget.getMarchi()[i] + ":M") == -1 ) {
                arrayTree[arrayTree.length] = CatalogoFiltriWidget.getMarchi()[i] + ":M";
              }
          }
          for (var i = 0; i < CatalogoFiltriWidget.getLinee().length; i++) {
              if (CatalogoFiltriWidget.getLinee()[i] != "" && arrayTree.indexOf(CatalogoFiltriWidget.getLinee()[i] + ":L") == -1 ) {
                arrayTree[arrayTree.length] = CatalogoFiltriWidget.getLinee()[i] + ":M";
              }
          }
          if (CatalogoFiltriWidget.getRaffinaRicerca() != "") {
            if (arrayTree.indexOf(CatalogoFiltriWidget.getRaffinaRicerca() + ":D") == -1 ) {
              arrayTree[arrayTree.length] = CatalogoFiltriWidget.getRaffinaRicerca() + ":D";
            }
          }
      }

      API.getCategorie = function() {
          if (arrayCategorieDaFiltrare.length == 0 || arrayCategorieDaFiltrare.length == 1 && arrayCategorieDaFiltrare[0] == "") {
              arrayCategorieDaFiltrare[0] = "";
          } else {
            arrayCategorieDaFiltrare = cleanArray(arrayCategorieDaFiltrare);
          }
         return arrayCategorieDaFiltrare;
        }
        
      API.resetCategorieDaFiltrare = function() {
          arrayCategorieDaFiltrare = [];
        } 
      /*
      API.resetMarchiDaFiltrare = function() {
          arrayMarchiCategorie = [];
          arrayMarchiDaFiltrare = [];
      }
      
      API.resetLineeDaFiltrare = function() {
          arrayLineeDaFiltrare = [];
      } 
      */               
      /*
      API.removeFilter = function() {
        removeFilter();
      }
      */
    
      API.getRicercheFatte = function() {
        return ricercheFatte;
      }
      
      API.resetRicercheFatte = function() {         
        ricercheFatte = [];
      }
      
      API.getDescrizioneDaFiltrare = function() {
        return descrizioniDaFiltrare;
      }
      
      API.setDescrizioneDaFiltrare = function(descr) {
        descrizioniDaFiltrare = []
        if (descr != undefined) {
          descrizioniDaFiltrare[0]=descr;
        }
      }      
      API.getCodice = function() {
         codArt = $("#ricercacodElem").val();
         $("#ricercacodElem").val("");
         if (codArt == undefined) {
            codArt="";
         }
         return codArt;
      }

      API.setNovita = function(novitaIn) {
        novitaDaCercare = novitaIn;
      }

      API.getNovita = function() {
        return novitaDaCercare;
      }

        API.setBestseller = function (bestseller) {
            bestsellerDaCercare = bestseller;
    }

    API.getBestseller = function () {
        return bestsellerDaCercare;
    }   

      API.setCapofila = function(capof) {
        capofilaDaCercare = capof;
      }

      API.getCapofila = function() {
        return capofilaDaCercare;
      }

      API.setEsplodiCapofila = function(val) {
        esplodiCapofila = val;
      }

      API.isEsplodiCapofila = function() {
        return esplodiCapofila;
      }
                  
      API.setShowNovita = function(val) {
        isShowNovita = val;
      }

    API.setShowBestseller = function (val) {
        isShowBestseller = val;
    }
      API.isShowNovita = function() {
        return isShowNovita;
      }
    API.isShowBestseller = function () {
        return isShowBestseller;
    }
      API.setVetrina = function(vetrinaIn) {
        vetrinaDaCercare = vetrinaIn;
      }

      API.getVetrina = function() {
        return vetrinaDaCercare;
      }

      API.setTipoVetrina = function(tipoVetrinaIn) {
        tipoVetrina = tipoVetrinaIn;
      }

      API.getTipoVetrina = function() {
        return tipoVetrina;
      }

      API.getRaffinaRicerca = function() {
         var raffinaRicerca = $("#raffinaRicerca").val();
        // $("#ricercadesElem").val("");
         if (raffinaRicerca == undefined) {
            raffinaRicerca="";
         }
         return raffinaRicerca.toUpperCase();
      }

      API.getDescrPerNuovaRicerca = function() {
          return descrPerNuovaRicercaAutomatica;
      }

      API.setDescrPerNuovaRicerca = function(val) {
        descrPerNuovaRicercaAutomatica = val;
      }
      
      API.getDescrizione = function() {
         var desArt = "";
         var descr = document.getElementsByName('searchbar');
         for(var i = 0; i < descr.length; i++){
           if ($("#" + descr[i].id).val() != "") {
              desArt = $("#" + descr[i].id).val();
              break;
           }
         }
         if (desArt.trim()!= "") {
           CatalogoFiltriWidget.setCreaElencoFiltri(true);
         }
         return desArt.toUpperCase();
      }

      API.isReloadCatalogo = function() {
        return reloadCatalogo;
      }

      API.setReloadCatalogo = function(value) {
        reloadCatalogo = value;
      }
      
      API.isReloadPage = function() {
        return reloadPage;
      }

      API.setReloadPage = function(value) {
        reloadPage = value;
      }      

      API.isCreaElencoFiltri = function() {
        return creaElencoFiltri;
      }
      
      API.setCreaElencoFiltri= function(value) {
        creaElencoFiltri = value;
      }
      
      API.isFirstFilterTime = function() {
        return isFirstFilterTime;
      }

      API.setFirstFilterTime= function(value) {
        isFirstFilterTime = value;
      }

      API.isFirstFilter = function() {
        return isFirstFilter;
      }

      API.setFirstFilter = function(value) {
        isFirstFilter = value;
      }

      API.getMarchi = function() {

         if (arrayMarchiDaFiltrare.length == 0 || (arrayMarchiDaFiltrare.length == 1 && arrayMarchiDaFiltrare[0] == "")) {
            arrayMarchiDaFiltrare[0] = "";
         } else {
             arrayMarchiDaFiltrare = cleanArray(arrayMarchiDaFiltrare);
         }
         return arrayMarchiDaFiltrare;
      }
      
      API.getLinee = function() {

         if (arrayLineeDaFiltrare.length == 0 || (arrayLineeDaFiltrare.length == 1 && arrayLineeDaFiltrare[0] == "")) {
            arrayLineeDaFiltrare[0] = "";
         } else {
             arrayLineeDaFiltrare = cleanArray(arrayLineeDaFiltrare);
         }
         return arrayLineeDaFiltrare;
      }      

      API.updateMarchiCategorie = function(data) {
         updateMarchiCategorie(data);
      }

      API.creaArrayMarchiCategorie = function(data) {

         // Controllo se arriva una segnalazione di tipo 2
          CatalogoFiltriWidget.setInizialeCatalogo([]);        
          if (divisione == "") {
              try {
                  divisione = data.mapperParms.divisione;
              } catch {

              } 
          }
          try {
            CommonApis.setArtMercatino(data.artMercatino);
          }  catch {
          }
          
          //CatalogoWidget.creaSelettori(data);
          CatalogoWidget.setArrayMarchiCategorie(data);
          CommonApis.setCapofilaAutocomplete(data.capofilaAutocomplete);
          try {
            CommonApis.setAllArtPromoPortale(data.artInPromo);
          } catch {
          }
          
          showMessageForAll = false;
          var today = new Date().toISOString().slice(0,10).replace(/-/g, "");
          if (data.news != null) {
            if (data.news.length > 0) {
              for (var i = 0; i < data.news.length; i++) {
                var dataScad = data.news[i].dat_scad.slice(0,10).replace(/-/g, "");
                var tipoVisibilita = data.news[i].tipo_visibilita;
                var codVisibilita2 = data.news[i].cod_visibilita.substring(0, 2);
                var codVisibilita4 = data.news[i].cod_visibilita.substring(0, 4);
                var codVisibilita6 = data.news[i].cod_visibilita.substring(0, 6);
                var lenVisibilita = data.news[i].cod_visibilita.trim().length - 1; 
                if (data.news[i].riservata == 2 && today <= dataScad ) {
                  msgToShowForAll = {id: data.news[i].id,
                                     titolo: data.news[i].titolo,
                                     news: data.news[i].news,
                                     data: data.news[i].datanews  };
                  showMessageForAll = true;
                }

                if (data.news[i].riservata == 3 && isWorkspace && today <= dataScad && data.news[i].show_banner == 1 && tipoVisibilita == "" ||
                    data.news[i].riservata == 3 && isLogin && today <= dataScad && data.news[i].show_banner == 1 && tipoVisibilita == "" ||
                    data.news[i].riservata == 0 && isWorkspace && today <= dataScad && data.news[i].show_banner == 1 && tipoVisibilita == "" && data.news[i].nom_file.trim() != "") {

                  eraseCookie(cookieVetrina);
                  var diff = dateDiffInDays(new Date(), new Date(data.news[i].dat_scad));
                  if (readCookie(cookieVetrina) == null) {
                     vetrina = {img: data.news[i].nom_file,
                                azione: data.news[i].azione,
                                scad: data.news[i].dat_scad,
                                mand: data.news[i].mand,
                                divisione: divisione,
                                tipoSearch : data.news[i].tipo_search
                               };
                     //createCookie(cookieVetrina, JSON.stringify(vetrina), diff);
                     createCookie(cookieVetrina, JSON.stringify(vetrina), 1);
                  }
                }
              }
            }
          } 
          
          if (isLogin) {
            if (showMessageForAll) {
              showMessageForAllDiv();
            }
            return;
          }
          
          if (isWorkspace) {
             if (data.allArticoli != undefined) {
               for ( var i = 0; i < data.allArticoli.length; i++ ) {
                 arrayCodici[i] = data.allArticoli[i].articolo;
               }
            }
          }

          if ((isFirstFilter || reloadCatalogo) && !isLogin) {
                      
            allCategorie = [];
            $("#selectCategoria").empty();
        //    $("#selectMarchio").empty();
            var z = 0;
            if (data.marchiCategorie != undefined) {
                
              allMarchiCategorie =[];
              for ( var i = 0; i < data.marchiCategorie.length; i++ ) {
                if (data.marchiCategorie[i].lis_dft == 1) {
                  allMarchiCategorie[z] = data.marchiCategorie[i].marchiocategoria;
                  z++;
                }
              }
            }
        
            z = 0;
            var valueSaved = "";
            //var allMarchiOld = allMarchi;
            allMarchi = [];
            if (data.marchi != undefined) {
                          
              
              for( var i = 0; i < data.marchi.length; i++ ) {
              //if (data.marchi[i].marchio != " " && data.marchi[i].lis_dft == 1) {
               if (data.marchi[i].marchio != " ") {
              /*
                if ((isWorkspace && listinoAttuale != "" && listinoAttuale == data.marchi[i].listino)
                    || (isWorkspace && listinoAttuale == "" && data.marchi[i].lis_dft == 1)
                    || (!isWorkspace && data.marchi[i].lis_dft == 1) && valueSaved != data.marchi[i].marchio.trim()) {
                    */
                 if (valueSaved != $.trim(data.marchi[i].marchio)) {
                  allMarchi[z] = " " + $.trim(data.marchi[i].marchio);
                  z++;
                  valueSaved = $.trim(data.marchi[i].marchio);
                }
              }
            }
            

           
          
           }
           
          
           z = 0;
           var valueSaved = "";
           if (data.categorie != undefined) {
           for( var i = 0; i < data.categorie.length; i++ ) {
             //if (data.categorie[i].categoria != " " && data.categorie[i].lis_dft == 1) {
             if (data.categorie[i].categoria.replace(";"," ") != " ") {
             /*
               if (((isWorkspace && listinoAttuale != "" && listinoAttuale == data.categorie[i].listino)
                    || (isWorkspace && listinoAttuale == "" && data.categorie[i].lis_dft == 1)
                    || (!isWorkspace && data.categorie[i].lis_dft == 1)) && valueSaved != data.categorie[i].categoria ) {
                    */
               if (valueSaved != data.categorie[i].categoria ) {
                 //var value = { label: " " + data.categorie[i].categoria.replace(";"," "), value:data.categorie[i].categoria};
                 var value = { value: " " + data.categorie[i].categoria.replace(";"," "), label: data.categorie[i].categoria};
                 allCategorie[z] = value;
                 z++;
                 valueSaved = data.categorie[i].categoria;

               }
             }
           }
          //20220711 Alessandro $( "#selectCategoria" ).autocomplete('option', 'source', allCategorie);
           }

    }
    // Livelli
       
    almenoUnaNews = false;
    
    if (CatalogoWidget.getArrayNovita().length == 0 && typeof data.novita != 'undefined') {
      CatalogoWidget.creaArrayNovita(data);
    }
    if (CatalogoWidget.getUltimePromo().length == 0 && typeof data.lastPromo != 'undefined') {
      CatalogoWidget.creaArrayUltimePromo(data);
    }
    if (CatalogoWidget.getArrayBanner().length == 0 && typeof data.news != 'undefined' && !isLogin) {
      CatalogoWidget.creaArrayBanner(data);
    }
    if (CatalogoWidget.getArrayBestsellers().length == 0 && typeof data.bestSellers != 'undefined' && !isLogin) {
        CatalogoWidget.creaArrayBestsellers(data);
    }
    if (CatalogoWidget.getArrayArtInEvidenza().length == 0 && typeof data.artInEvidenza != 'undefined' && !isLogin) {
        CatalogoWidget.creaArrayArtInEvidenza(data);
    }
    
   
    //CatalogoWidget.creaTabellaNovita();
    //CatalogoWidget.creaBannerNews();
    // Se reload catalogo ricarico la tabella delle novit?
    /*
    if (reloadCatalogo) {
      if (CatalogoWidget.getArrayNovita().length == 0) {
        request =  {
                  limit:0,
                  offset:0}
        jolieCallNoSpin( "getNovitaFrontend", request, CatalogoWidget.creaArrayNovita , function( error ) {} );
      } else {
        CatalogoWidget.creaTabellaNovita();
        CatalogoWidget.creaBannerNews();
      }
     }
      */
      //var myTimer = setInterval(function() {CatalogoWidget.creaTabellaNovita()}, 10000);

      /* 20180129 riattivare se solo promo
      $("#nuoviArriviVert").hide();
      $("#nuoviArrivi").hide();
      $("#nuoviArriviMobile").hide();
      fino qui */
// inserire pezzo codice tolto
  
    if (arrayTree.length > 1) {
      var lastSearchType = arrayTree[arrayTree.length - 1].split(":")[1];
      if (!isFirstFilter && lastSearchType == "C") {
        allMarchi = [];
        //$("#selectMarchio").empty();
        var valueSaved = "";
        for( var i = 0; i < data.marchi.length; i++ ) {
          if (data.marchi[i].marchio != " ") {
            if (valueSaved != $.trim(data.marchi[i].marchio)) {
              allMarchi[z] = " " + $.trim(data.marchi[i].marchio);
              z++;
              valueSaved = $.trim(data.marchi[i].marchio);
            }
          }
        }
      }

     

    }
    if (showMessageForAll) {
      showMessageForAllDiv();
    }
    if (readCookie(cookieVetrina) != null && CatalogoWidget.getShowVetrina() && ((readCookie("cpfFromUrl") == null && readCookie("codFromUrl") == null)) ) {
       CatalogoWidget.setShowVetrina(false);
       if (CommonApis.getSessionData().abilita_tab_promo == 1) {
          CatalogoWidget.showVetrina("");
       }
    }
     
    if (isWorkspace) {
      if (CommonApis.getSessionData().abilita_tab_promo == 1) {
       CatalogoWidget.creaBannerNews();
      }
      if (CommonApis.getSessionData().mapperParms.showBestsellers == 1) {
         CatalogoWidget.creaTabellaBestsellers();
      }
      if (CommonApis.getSessionData().mapperParms.showArtInEvidenza == 1) {
         CatalogoWidget.creaTabellaArtInEvidenza();
      }
      CatalogoWidget.creaTabellaUltimiVisti();
      CatalogoWidget.riempiWorkspace();    
       
        //$(".nuoviArriviImg").width(CatalogoWidget.getArrayNovita().length * $(".novitaImage:first-child").width());   
      aggiungiListenerBoxPromo();
      $('.lastPromoBoxContainer').onSwipe(function(results){
                if(results.up == true) { /*nulla*/ }
                if(results.right == true) { ruotaImmaginePromo(false); }
                if(results.down == true) { /*nulla*/ }
                if(results.left == true) { ruotaImmaginePromo(true); }
      });		
      inizializzaBoxPromo();
	    aggiungiListenerNewsEventi();
		  $('.eventiBoxContainer2').onSwipe(function(results){
    			if(results.up == true) { /*nulla*/ }
			    if(results.right == true) { ruotaImmagineNewsEventi(false); }
			    if(results.down == true) { /*nulla*/ }
			    if(results.left == true) { ruotaImmagineNewsEventi(true); }
		  });		
		  inizializzaBoxNewsEventi();	

	
        /*
       var htmlTableWorkspace = "<table>";
       
       htmlTableWorkspace = htmlTableWorkspace.trim() + "<tr><td id='primoAcquistoTd'>" + 
                            CatalogoWidget.getHtmlTablePrimoAcquisto() +"</td></tr>"; 
       
       htmlTableWorkspace = htmlTableWorkspace.trim() + "<tr><td>" + CatalogoWidget.getHtmlTableNovita() + "</td></tr>" +               
                              "<tr><td>" + CatalogoWidget.getHtmlTableLastPromo() + "</td></tr></table>";       
       $("#tableWorkspace").empty().html(htmlTableWorkspace);
       setupRotator("nuoviArriviItem", "nuoviArriviRecord", 50000);
       if (showLastPromo == "1") {
         setupRotator("lastPromoItem", "lastPromoRecord", 50000);
       }
       //setupRotator("primoAcquistoItem", "primoAcquistoRecord", 10000);
       $("#nuoviArriviRecord").css("height", "180px");
       */

           // se non esiste cookie parametri lo richido e imposto
      if (readCookie("webParameters") == null) {
        CommonApis.requestWebParam();
      }
    }

    aggiungiListenerBoxNovita();
    aggiungiListenerBoxUltimiVisti();
    aggiungiListenerUltimiArrivi();
    aggiungiListenerBoxBestSellers();
    aggiungiListenerBoxArtInEvidenza();

    $('.nuoviArriviBoxContainer').onSwipe(function(results){
                if(results.up == true) { /*nulla*/ }
                if(results.right == true) { ruotaImmagineNovita(false); }
                if(results.down == true) { /*nulla*/ }
                if(results.left == true) { ruotaImmagineNovita(true); }
            });
    $('.lastViewedBoxContainer').onSwipe(function(results){
                if(results.up == true) { /*nulla*/ }
                if(results.right == true) { ruotaImmagineUltimiVisti(false); }
                if(results.down == true) { /*nulla*/ }
                if(results.left == true) { ruotaImmagineUltimiVisti(true); }
    });  
    $('.bestSellersBoxContainer ').onSwipe(function (results) {
              if (results.up == true) { /*nulla*/ }
              if (results.right == true) { ruotaImmagineBestSellers(false); }
              if (results.down == true) { /*nulla*/ }
              if (results.left == true) { ruotaImmagineBestSellers(true); }
    });        
	 /*initiate the autocomplete function on the "myInput" element, and pass along the countries array as possible autocomplete values:*/
   if (!isLogin) {
     if ($("#ricercadesElem").attr("autocompleta") == null) {
       autocomplete(document.getElementById("ricercadesElem"));
       $("#ricercadesElem").attr("autocompleta", "1");
     }
     if ($("#ricercadesElemMobile").attr("autocompleta") == null) {
       //autocomplete(document.getElementById("ricercadesElemMobile"), CommonApis.getCapofilaAutocomplete());
         autocomplete(document.getElementById("ricercadesElemMobile"));
       $("#ricercadesElemMobile").attr("autocompleta", "1");
     }
   }            
    inizializzaBoxNuoviArrivi();
    inizializzaBoxUltimiVisti();
    inizializzaBoxBestSellers();
    inizializzaBoxArtInEvidenza();
    //timerNovita = setInterval(ruotaImmagineNovita, 5000, "next");
    
    //timerLastPromo = setInterval(ruotaImmaginePromo, 5000, "next");   
     
     
	 if (isWorkspace) {
      
       $("#labelFunzione").css("color", "white");
       if ((readCookie("cpfFromUrl") != null || readCookie("codFromUrl") != null) && listinoAttuale != "") {
         CatalogoWidget.lanciaRicercaCapofila();
       }else
       if (readCookie("linFromUrl") != null && listinoAttuale != "") {
         showLinea(null, readCookie("linFromUrl"));
       }        
       /*
       else if (readCookie("prmFromUrl") != null ) {
         CatalogoWidget.vaiAPromo(readCookie("prmFromUrl") );
       }
       */
       if (($("#showcaseDiv").html() == "" || $("#showcaseDiv").html() == undefined) && document.getElementsByClassName("spinnerText").length == 0) {
             removeHider();
       }
       /* 20251230 Alessandro: spostato in fondo a caricaCatalogoSuccess
       if (abilitaCarrello && (CommonApis.getDettaglioOrdine().length == 0 || CommonApis.getDettaglioOrdine() == undefined)) {
	        getCarrello();
	      } 
          */
/*
      if (readCookie("prmFromUrl") != null ) {
        CatalogoWidget.vaiAPromo(readCookie("prmFromUrl") );
        eraseCookie("prmFromUrl");    
      }     
*/
     }
	
  }




  API.ricercaXLivelloDaSelector = function() {
    
     if (isWorkspace && nrCheck > 0) {
      CatalogoWidget.showErrorCarrello();
     } else {   
   //if ($("#levelSelector").val() != "all" && $("#levelSelector").val() != "novita") {
     CatalogoFiltriWidget.setPrimaRicerca(true); 
     CatalogoFiltriWidget.setLivello1($("#levelSelector").val());
     descrizioniDaFiltrare = [];
     arrayMarchiDaFiltrare = [];
     arrayLineeDaFiltrare = [];
     limit = CommonApis.getLimit(); 
     CatalogoWidget.setOffset(0);
     $(".filtriApplicati").empty();
     CatalogoFiltriWidget.resetRicercheFatte();
   //}
     CatalogoFiltriWidget.setFirstFilter(true);
     CatalogoWidget.setResetPaginator(true); 
     if($("#levelSelector").val() == "all") { 
       CatalogoFiltriWidget.setLivello1("");
       CatalogoFiltriWidget.setArrayLivello2XRicerca([]);
       CatalogoFiltriWidget.setDescrizioneDaFiltrare("");  
       CatalogoFiltriWidget.getRicercheFatte()[0] = "F:Tutte"; 
     } else {
       $("#tableMarchi").empty(); 
       $('#mrkSelector').val("all");       
       CatalogoFiltriWidget.getRicercheFatte()[0] = "F:" + $("#levelSelector option:selected").text();
       CatalogoFiltriWidget.setCapofila("");
       CatalogoFiltriWidget.setCapofilaFromAutocomplete(false);
       CatalogoFiltriWidget.setViewArtDaShopInCatalogo(false);
       CatalogoWidget.lanciaRicercaCapofila();
     }
     }
  }   

    API.ricercaXLivelloDaCtgPage = function (level) {

        if (isWorkspace && nrCheck > 0) {
            CatalogoWidget.showErrorCarrello();
        } else {
            
            CatalogoFiltriWidget.setPrimaRicerca(true);
            CatalogoFiltriWidget.setLivello1(level);
            descrizioniDaFiltrare = [];
            arrayMarchiDaFiltrare = [];
            arrayLineeDaFiltrare = [];
            limit = CommonApis.getLimit();
            CatalogoWidget.setOffset(0);
            $(".filtriApplicati").empty();
            CatalogoFiltriWidget.resetRicercheFatte();
            CatalogoFiltriWidget.setFirstFilter(true);
            CatalogoWidget.setResetPaginator(true);
            $("#tableMarchi").empty();
            CatalogoFiltriWidget.getRicercheFatte()[0] = "F:" + level;
            CatalogoFiltriWidget.setCapofila("");
            CatalogoFiltriWidget.setCapofilaFromAutocomplete(false);
            CatalogoFiltriWidget.setViewArtDaShopInCatalogo(false);
            CatalogoWidget.lanciaRicercaCapofila();
  
        }
    }

  API.ricercaXLivello2_ = function(element) {

    if (isWorkspace && nrCheck > 0) {
      CatalogoWidget.showErrorCarrello();
    } else {     
     var lev = $(element).attr("value");
     var desLev = $(element).attr("deslev");
     //var array = CatalogoFiltriWidget.getArrayLivello2XRicerca();
     var array = [];
     CatalogoFiltriWidget.setPrimaRicerca(true); 
     CatalogoFiltriWidget.resetRicercheFatte();
     CatalogoFiltriWidget.setCreaElencoFiltri(true);
     CatalogoFiltriWidget.setFirstFilter(true);
     CatalogoWidget.setResetPaginator(true);
     limit = CommonApis.getLimit();  
     CatalogoWidget.setOffset(0);   
     $("#tableMarchi").empty();    
     //$('#levelSelector').val(lev.slice(0, 2));
     $('#mrkSelector').val("all");
     array[array.length] = lev;
     CatalogoFiltriWidget.setArrayLivello2XRicerca(array);
     descrizioniDaFiltrare = [];
     arrayMarchiDaFiltrare = [];
     arrayLineeDaFiltrare = []; 
     CatalogoFiltriWidget.getRicercheFatte()[0] = "L2:" + desLev;
     CatalogoFiltriWidget.setCapofila("");
     CatalogoFiltriWidget.setCapofilaFromAutocomplete(false);
     CatalogoFiltriWidget.setViewArtDaShopInCatalogo(false);
     CatalogoWidget.lanciaRicercaCapofila();
   }  
  }

  API.ricercaXLivello2 = function (element) {

        if (isWorkspace && nrCheck > 0) {
            CatalogoWidget.showErrorCarrello();
        } else {
            var lev = $(element).attr("value");
            var desLev = $(element).attr("deslev");
            //var array = CatalogoFiltriWidget.getArrayLivello2XRicerca();
            var array = [];
            CatalogoFiltriWidget.setPrimaRicerca(true);
            CatalogoFiltriWidget.resetRicercheFatte();
            CatalogoFiltriWidget.setCreaElencoFiltri(true);
            CatalogoFiltriWidget.setFirstFilter(true);
            CatalogoWidget.setResetPaginator(true);
            limit = CommonApis.getLimit();
            CatalogoWidget.setOffset(0);
            $("#tableMarchi").empty();
            //$('#levelSelector').val(lev.slice(0, 2));
            //$('#mrkSelector').val("all");
            array[array.length] = lev;
            CatalogoFiltriWidget.setArrayLivello2XRicerca(array);
            descrizioniDaFiltrare = [];
            arrayMarchiDaFiltrare = [];
            arrayLineeDaFiltrare = [];
            CatalogoFiltriWidget.getRicercheFatte()[0] = "L2:" + desLev;
            CatalogoFiltriWidget.setCapofila("");
            CatalogoFiltriWidget.setCapofilaFromAutocomplete(false);
            CatalogoFiltriWidget.setViewArtDaShopInCatalogo(false);
            CatalogoWidget.lanciaRicercaCapofila();
        }
    }
  
  API.ricercaXLivello1 = function(element) {
  
    if (isWorkspace && nrCheck > 0) {
       CatalogoWidget.showErrorCarrello();
    } else {
     CatalogoFiltriWidget.setPrimaRicerca(true);
     var lev = $(element).attr("value");
     $('#levelSelector').val(lev);
     CatalogoFiltriWidget.ricercaXLivelloDaSelector();
     /*
     limit = CommonApis.getLimit(); 
     CatalogoWidget.setOffset(0);
     $('#mrkSelector').val("all");
     CatalogoFiltriWidget.resetRicercheFatte();
     CatalogoFiltriWidget.setCreaElencoFiltri(true);
     CatalogoFiltriWidget.setFirstFilter(true);
     CatalogoWidget.setResetPaginator(true);
     CatalogoFiltriWidget.setLivello1(lev);
     CatalogoFiltriWidget.setArrayLivello2XRicerca([]);
     descrizioniDaFiltrare = [];
     arrayMarchiDaFiltrare = [];
     arrayLineeDaFiltrare = [];   
     CatalogoFiltriWidget.getRicercheFatte()[0] = "F:" + $("#levelSelector option:selected").text();;
     $("#tableMarchi").empty();     
     CatalogoWidget.lanciaRicercaCapofila();
     */
    } 
  }  
  
  API.ricercaXMarchio = function(element) {
     
     /*
     var array = CatalogoFiltriWidget.getArrayMarchiXRicerca();
     if (array.length == 1 && array[0] == "") {
       array[0] = element.value;
     } else {
       array[array.length] = element.value;
     }
     CatalogoFiltriWidget.setArrayMarchiXRicerca(array);
     descrizioniDaFiltrare = [];
     */
     // se ho almeno un articolo selezionato, non faccio nulla
    if (isWorkspace && nrCheck > 0) {
      CatalogoWidget.showErrorCarrello();
    } else {     
      CatalogoFiltriWidget.setCapofilaFromAutocomplete(false);
      CatalogoFiltriWidget.setViewArtDaShopInCatalogo(false);
      CatalogoFiltriWidget.setCreaElencoFiltri(false);
      arrayMarchiDaFiltrare = [];
      arrayLineeDaFiltrare = []; 
      limit = CommonApis.getLimit();  
      CatalogoWidget.setOffset(0);
      CatalogoWidget.setResetPaginator(true);	
	    var idx = CatalogoFiltriWidget.getRicercheFatte().indexOf("M:"+element);
	    if (idx >= 0){
		    CatalogoFiltriWidget.getRicercheFatte().splice(idx, 1);
        CatalogoFiltriWidget.setRemoveRicerca(true);    
	    } else {
        CatalogoFiltriWidget.getRicercheFatte().push("M:"+element);
      }
	
      //if (CatalogoFiltriWidget.getRicercheFatte().length == 0) {
        //CatalogoFiltriWidget.reloadCatalogo();
      //} else {
	      CatalogoWidget.lanciaRicercaCapofila();
	    //}
	  
     }  
  }        
  
  API.ricercaXMarchioDaSelector = function() {
         
    if (isWorkspace && nrCheck > 0) {
      CatalogoWidget.showErrorCarrello();
    } else {  
     arrayMarchiDaFiltrare = [];
     arrayMarchiDaFiltrare[0] = $("#mrkSelector").val();
     arrayLineeDaFiltrare = []; 
     descrizioniDaFiltrare = [];
     CatalogoFiltriWidget.resetRicercheFatte(); 
     CatalogoFiltriWidget.setCreaElencoFiltri(true);
     CatalogoFiltriWidget.setCapofilaFromAutocomplete(false);
     CatalogoFiltriWidget.setViewArtDaShopInCatalogo(false);
     limit = CommonApis.getLimit(); 
     CatalogoWidget.setOffset(0);
     CatalogoWidget.setResetPaginator(true);
     $("#tableMarchi").empty();
     $('#levelSelector').val("all");
     CatalogoFiltriWidget.setLivello1("");  
     CatalogoFiltriWidget.setArrayLivello2XRicerca([]);
     CatalogoFiltriWidget.setFirstFilter(true); 
     CatalogoFiltriWidget.setPrimaRicerca(true); 
     CatalogoFiltriWidget.getRicercheFatte()[0] = "M:" + $("#mrkSelector option:selected").text();
     CatalogoWidget.lanciaRicercaCapofila();
     
    } 
  } 

    API.ricercaXMarchioDaCtgPage = function (mrk) {

        if (isWorkspace && nrCheck > 0) {
            CatalogoWidget.showErrorCarrello();
        } else {
            arrayMarchiDaFiltrare = [];
            arrayMarchiDaFiltrare[0] = mrk;
            arrayLineeDaFiltrare = [];
            descrizioniDaFiltrare = [];
            CatalogoFiltriWidget.resetRicercheFatte();
            CatalogoFiltriWidget.setCreaElencoFiltri(true);
            CatalogoFiltriWidget.setCapofilaFromAutocomplete(false);
            CatalogoFiltriWidget.setViewArtDaShopInCatalogo(false);
            limit = CommonApis.getLimit();
            CatalogoWidget.setOffset(0);
            CatalogoWidget.setResetPaginator(true);
            $("#tableMarchi").empty();        
            CatalogoFiltriWidget.setLivello1("");
            CatalogoFiltriWidget.setArrayLivello2XRicerca([]);
            CatalogoFiltriWidget.setFirstFilter(true);
            CatalogoFiltriWidget.setPrimaRicerca(true);
            CatalogoFiltriWidget.getRicercheFatte()[0] = "M:" + mrk;
            CatalogoWidget.lanciaRicercaCapofila();

        }
    } 
    
  API.toggleLevel = function(lev) {      
     
  if (lev != "") {
    var currentState = document.getElementById("level1"+lev).style.display;
    if(currentState!="none"){
    //var levHeight = $("#level1"+lev).height();    
     $("#level1"+lev).slideUp();
    //$("#tabCatalogo").height($("#tabCatalogo").height() - levHeight);
    } else {
     $("#level1"+lev).slideDown();
     var levHeight = $("#level1"+lev).height();
     $("#tabCatalogo").height($("#tabCatalogo").height() + levHeight);
    }
   }  
  }  
 
 
  API.setLevelViewed = function(levelIn) {
     levelViewed = levelIn;   
  }

  API.getLevelViewed = function() {
     return levelViewed;   
  }  


    API.create = function(id) {
       
       //20221012 aggiungiListeners();

         
       CatalogoFiltriWidget.setFirstFilter(true);
       if (isWorkspace) {
          var windowWidth = window.innerWidth;
          /* 20210607 prova
          $(".ui-widget-content").css("border", "0px");
          $("#searchBar").css("width", windowWidth /2);
          $("#searchBar").css("height", "36px");
          $("#searchBar").css("position", "fixed");
          $("#searchBar").css("top", "20px");
          $("#searchBar").css("left", windowWidth / 4);
          */ 
          $("#searchBar").show();
          //$("#ricercadesElem").css("width", "80%");
          //$("#ricercadesElem").css("border-top-left-radius", "3px");
          //$("#ricercadesElem").css("border-bottom-left-radius", "3px");
                  
        } else {
   
          var htmlFiltri = 
                         "<div id='searchBarBoxCtg' class='pos-center-center'>" +
                         
                         "<div id='selectorTableCtg widthSelect" + CommonApis.getSessionData().divisione.trim()  +"' class='flex-column'>" +
                         "<div>" +
                         "<select class='selectLevel' id='levelSelector'><option value='all'>Tutto il catalogo</option>" +
                         "</select></div>" +
                         "<div><select class='selectLevel' id='mrkSelector'><option value='all'>Tutti i marchi</option></select></div>" +
                         "</div><div id='searchSpan' class='searchBarCtg'>" +
                         "<form><input type='text' placeholder='Digita codice o descrizione prodotto' class='searchBar div-width-100 text-uppercase' onkeypress='keyDetection(event)' name='searchbar' id='ricercadesElem'>" +
                         "</form></div>" +
                         "<div id='lenteSpan'>" +
                         "<img src='./src/images/Lente.png' id='lenteRicercaNew' style=' border-bottom-right-radius: 3px; border-top-right-radius: 3px;' alt='Ricerca articolo' title='Ricerca articolo'>" +                        
                         "</div>" +
                         "</div>"               
          $("#" + id ).html(htmlFiltri);
          
        }
         
        var selectorWidth = $("#ricercadesElem").outerWidth() / 5 + "px";
        var selectorHeight = $("#ricercadesElem").outerHeight();  
        // 20210512 gestito con css $("#selectorTable").css("width", selectorWidth);
        // 20210512 gestito con css $("#selectorTable").css("height", selectorHeight + "px");
        $("#selectorTable").css("padding-bottom", "0px !important");
        // 20210512 gestito con css $("#levelSelector").css("width", selectorWidth);
        // 20210512 gestito con css $("#levelSelector").css("height", selectorHeight / 2 + "px");
        $("#levelSelector").css("padding-bottom", "0px !important");
        // 20210512 gestito con css $("#mrkSelector").css("width", selectorWidth);  
        // 20210512 gestito con css $("#mrkSelector").css("height", selectorHeight / 2 + "px");  
        $("#mrkSelector").css("padding-bottom", "0px !important");
        //$("#ricercadesElem").css("border-top-left-radius", "0px");
        //$("#ricercadesElem").css("border-top-right-radius", "0px");  
        //$("#lenteRicercaNew").css("width", selectorHeight + "px");
        //$("#lenteRicercaNew").css("height", selectorHeight + "px");
        //$("#lenteRicercaNew").css("width", selectorHeight + "px");
        //20180413 Se presente tab CATALOGO visualizzo barra ricerca
        if (isWorkspace && arrayMenuLoggato.indexOf("CATALOGO") == -1) {
           $("#searchBar").hide();
        }
        if (isPageWithLeftRightBanner && !isWorkspace) {
          $("#searchBar").css("width", "75%"); 
        }
        $("#ricercadesElem").change(function(){
            //document.getElementById("findPrimoAcqArt").placeholder = "Digita codice o descrizione prodotto";
            //$("#ricercadesElem").val("");
        });
       
    }    
              



      return API;
}());



var CatalogoWidget = CatalogoWidget || (function() {
      var API = {};
      var FiltroCatalogo;
      // var limit = 15;
      var sqlOffset = 0;
      var novitaOffset = 0;
     // var totPages = 0;
     // var maxPages = 10;
      var totPagesSav = 0;
	    var visualizablePages = 0;
      var imageSrc = "";
      var imgPath = "";
      var artViewed = {};
      var currentPage = 1;
      var testCodArt = "";
      var ricercaArticolo = false;
      var resetPaginator = true;
      var appendCapofila = false;
	    var openTableArtDett = [];
      var arrayNovita = [];
      var arrayUltimePromo = [];
      var arrayPromoPerArticolo = [];
      var lastCatalogoView = "";
      var arrayBanner = [];
      var arrayBestsellers = [];
      var artInEvidenza = [];
      var bannerOffset = 0;
      var isShowVetrina = true;
      var isErrorOnPaginator = false;
      var page = 1;
      var maxCapofilaGrid = 1;
      var capofilaImg = [];
      var capofilaDesc = [];
      var actImage = "";
      var addCarrelloDiretto = false;
      var addWishList = false;
      var totCarrello = 0;
      var htmlTableNovita = "";
      var htmlTableBestsellers = "";
      var htmlTableArtInEvidenza = "";
      var htmlTableLastPromo = "";
      var htmlUltimiVisti = "";
      var htmlTablePrimoAcquisto = "";
      var isLastPromoViewed=false;
      var marchiPrimoAcquisto = [];
      var isShowCarrelloInCatalogo = false;
      var htmlListCapofila = "";
      var htmlListCapofilaGrid = "";
      var workCapofilaArray = "";
      var kataCurrentPage = 1;
      var numArtEspansi = 0;
      var capofilaResponse = [];
      var capofilaPrimaRicerca = [];
      var marchiPrimaRicerca = [];
      var categoriePrimaRicerca = [];
      var isCatalogoLoaded = false;
      var chiudiCarrelloFromCatalogo = false;      

    function normalizeStr(str) {
        return str
            .toLowerCase()
            .normalize('NFD')                     // separa lettere da accenti
            .replace(/[\u0300-\u036f]/g, '')      // rimuove i diacritici (accenti)
            .trim();
    }

    function searchInObjects(arr, searchStr, fields = null) {
        const lowerSearch = normalizeStr(searchStr);

        if (lowerSearch.length < 2) return [];

        return arr.filter(item => {
            const keys = fields || Object.keys(item);
            return keys.some(key => {
                const val = item[key];
                return typeof val === 'string' && normalizeStr(val).includes(lowerSearch);
            });
        });
    }
   
    function lanciaRicercaCapofila() {

        // se non è la prima ricerca, cerco nell'array la parola
        var richiediDaServer = true;
        try {
            if (CatalogoWidget.getCapofilaResponse().capofila.length > 0) {
                var newCapofila = searchInObjects(CatalogoWidget.getCapofilaResponse().capofila, desArt = CatalogoFiltriWidget.getDescrizione(), ['titolo', 'desc_est']);
                if (newCapofila.length > 0) {
                    CatalogoWidget.getCapofilaResponse().capofila = newCapofila;
                    //CatalogoFiltriWidget.setDescrizioneDaFiltrare() = [];
                    showCapofila(CatalogoWidget.getCapofilaResponse());
                    return;
                } else {
                  CatalogoFiltriWidget.setLivello1("");
                }
            } 
        } catch {
        } 

        if (!richiediDaServer) {
            return;
        }

        var x = document.getElementsByClassName("autocomplete-items");
        for (var i = 0; i < x.length; i++) {
          x[i].parentNode.removeChild(x[i]);
        }
        $("#nuoviArriviMobile").hide();
        $("#nuoviArrivi").hide();
        $("#tableWorkspace").hide();
        $("#bannerTable").hide();
        $("#lastPromo").hide();
		    insPromoDirettaSel = [];
        var request = {};
        var codCapofila= "";
        var codArt ="";
        var desArt = "";
        var artViewed = [];
        var allArtPromo = false;
        var nuoviarrivi = false;
        var cercaSoloArticolo = false;
        CatalogoWidget.setArtViewed(artViewed);
        codArt = CatalogoFiltriWidget.getCodice();
        desArt = CatalogoFiltriWidget.getDescrizione();
        /*
        if (desArt.trim().length < 3) {
          $("#ricercadesElem").val("");  
          $("#ricercadesElemMobile").val("");  
          return;
        }
        */
        // elenco le parole che ho cercato per trovare i capofila da aggiungere alla ricerca
        if (desArt.trim() != "") {
          var words = desArt.toUpperCase().split(" ");
        } else {
          var words = []; 
        }
        
        var ultimaRicerca = CatalogoFiltriWidget.getDescrizione();
        
        // Se la ricerca precedente ha prodotto solo un capofila, resetto
        /*  20230629 Alessandro: spostato in showCapofila
        try {
          if (CatalogoWidget.getCapofilaPrimaRicerca().length == 1) {
            CatalogoFiltriWidget.setPrimaRicerca(true);
            CatalogoFiltriWidget.resetRicercheFatte();
            CatalogoFiltriWidget.setDescrizioneDaFiltrare();
          }
        } catch {
        }
        */
        
        var ultimaRicercaBase = ultimaRicerca;
        if (ultimaRicerca != "") {
           ultimaRicerca = ultimaRicerca.trim().replace(/ /g, ":*&").trim() + ":*";;
        }
        
        $("#ricercadesElem").val("");
        $("#ricercadesElemMobile").val("");   
       
        if (CatalogoFiltriWidget.getDescrizioneDaFiltrare().indexOf(desArt) == -1 && desArt != "") {
           CatalogoFiltriWidget.getDescrizioneDaFiltrare().push(desArt);
           CatalogoFiltriWidget.getRicercheFatte().push("D:" + desArt);
        }
         
         CatalogoFiltriWidget.setDescrPerNuovaRicerca(desArt);

         testCodArt = desArt;
         var arrayMarchiDaFiltrare = [""];
         var arrayLineeDaFiltrare = [""];
         var arrayCategorieDaFiltrare = [""];
        // adesso non serve perchè la ricerca viene fatta dalla funzione var descrToFilter = CatalogoFiltriWidget.getDescrizioneDaFiltrare();
        var descrToFilter = CatalogoFiltriWidget.getDescrizioneDaFiltrare();
         // Se sono rimaste solo descrizioni le carico nell'array per la ricerca          
         try {
           if (CatalogoFiltriWidget.getRicercheFatte()[0].split(":")[0] == "D" && CatalogoFiltriWidget.isPrimaRicerca() && desArt == "") {
             var descrDaRicerche = "";
             for (var i = 0; i < CatalogoFiltriWidget.getRicercheFatte().length; i++) {
               if (CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[0] == "D") {
                 words.push(CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[1].trim());
                 if (descrDaRicerche != "") {
                   descrDaRicerche = descrDaRicerche + " ";
                 }
                 descrDaRicerche = descrDaRicerche + CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[1].trim();
               }
             }
           
             descrToFilter.push(descrDaRicerche);
          
           }
         } catch {
         }
         
         if (!CatalogoFiltriWidget.isCapofilaFromAutocomplete()) {
           arrayMarchiDaFiltrare = CatalogoFiltriWidget.getMarchi();
           arrayLineeDaFiltrare = CatalogoFiltriWidget.getLinee();
           arrayCategorieDaFiltrare = CatalogoFiltriWidget.getCategorie();
         }
         

         // Se presente reimposto la ricerca vetrina
         if (CatalogoFiltriWidget.getVetrina() != "") {
           if (CatalogoFiltriWidget.getTipoVetrina() == "A") {
             desArt = CatalogoFiltriWidget.getVetrina().trim();
             descrToFilter[0] = CatalogoFiltriWidget.getVetrina().trim(); 
           } else if (CatalogoFiltriWidget.getTipoVetrina() == "M") {
             arrayMarchiDaFiltrare[0] = CatalogoFiltriWidget.getVetrina();
           } else if (CatalogoFiltriWidget.getTipoVetrina() == "F") {
             arrayCategorieDaFiltrare[0] = CatalogoFiltriWidget.getVetrina();
           }                                
         }
 
         desArt = "";
         // Analizzo l'array per splittare descrizioni multiple
         newDescr = [];
         for (var i = 0; i < descrToFilter.length; i++) {
            var arrayDescr =  descrToFilter[i].split(" ");
            for (var ii = 0; ii < arrayDescr.length; ii++) {
               newDescr.push(arrayDescr[ii]);
            }
         }
         descrToFilter = [];
         descrToFilter = newDescr;
         // Analizzo l'array per sapere se ci sono dei campi numerici
         newDescr = [];
 
         for (var i = 0; i < descrToFilter.length; i++) {
           if (descrToFilter[i] != "") {
             if (i > 0 && desArt != "") {
               //desArt = desArt + "+";
               desArt = desArt + ":*&";
             }
              desArt = desArt + descrToFilter[i].trim();

          }
         }
         if (desArt != "") {
           desArt = desArt.trim() + ":*";
         }
         
         var listino = "DFT";
         if (isWorkspace) {
            listino = listinoAttuale;
            if (listino == "") {
               listino = "DFT";
            }
         }
         var nuoviarrivi = CatalogoFiltriWidget.getShowAllNuoviArrivi();
         // Reimposto il codice articolo
         if (CatalogoFiltriWidget.isCapofilaFromAutocomplete() && descrToFilter.length > 0) {
            codArt = descrToFilter[0];
            CatalogoFiltriWidget.setCapofila(codArt);
            codArt = "";
            desArt = "";
         } else {
            codArt = desArt.trim().replace(" ", "").replace(":", "").replace("*", "");
         }
         //var sqlOffset = CatalogoWidget.getOffset();
         var sqlOffset = 0;
		 
         var level2 = "";
         CatalogoFiltriWidget.setRicercaXLivello2(false);
         for (var i = 0; i < CatalogoFiltriWidget.getArrayLivello2XRicerca().length; i++) { 
           CatalogoFiltriWidget.setRicercaXLivello2(true);
           if (i > 0) {
             level2 = level2 + ", ";
           }
             level2 = level2 + "'" + CatalogoFiltriWidget.getArrayLivello2XRicerca()[i] + "'";                    
         }                                               
         
         var level1 = CatalogoFiltriWidget.getLivello1();
         if (level1 == "novita") {
           level1 = "";
           nuoviarrivi = true;
         } else if (level1 == "allartpromo") {
           level1 = "";
           allArtPromo = true;
         }
        
         var mrkCheckName = "mrkChk";
        // if (CatalogoFiltriWidget.isViewGrid()) {
        //   mrkCheckName = "mrkChkGrid";
        // }
         var checkMarchi = document.getElementsByName("mrkChk");
         var checkMarchiGrid = document.getElementsByName("mrkChkGrid");
         for (var i = 0; i < checkMarchiGrid.length; i++) {
           checkMarchi.push(checkMarchiGrid[i]);
         }
         
         //if (checkMarchi.length > 0 ) {
         if (checkMarchi.length > 1 && !CatalogoFiltriWidget.isRicercaXLinea()) {
           arrayMarchiDaFiltrare = [];
           for (var i = 0; i < checkMarchi.length; i++) {
             if (checkMarchi[i].checked) {
               arrayMarchiDaFiltrare[arrayMarchiDaFiltrare.length] = checkMarchi[i].value.trim();
                if (CatalogoFiltriWidget.getRicercheFatte().indexOf("M:" +  checkMarchi[i].value.trim()) == -1 ) {
                  CatalogoFiltriWidget.getRicercheFatte()[CatalogoFiltriWidget.getRicercheFatte().length] = "M:" +  checkMarchi[i].value.trim();
                }
             }
           }                     
         } 
         
         if (readCookie("mrkConsumi") != null) {
           arrayMarchiDaFiltrare = [];
           arrayMarchiDaFiltrare[0] = readCookie("mrkConsumi");
           eraseCookie("mrkConsumi");
         }
         
         if (arrayMarchiDaFiltrare.length == 0) {
            //arrayMarchiDaFiltrare[0] = "";
         }
         if (CatalogoFiltriWidget.getNovita().trim() != "") {
            //CatalogoFiltriWidget.setNovita("");
            codCapofila = CatalogoFiltriWidget.getNovita();
            //nuoviarrivi = true;
         }  else if (CatalogoFiltriWidget.isCapofilaFromAutocomplete() || CatalogoFiltriWidget.isViewArtDaShopInCatalogo() ) {
			      codCapofila = CatalogoFiltriWidget.getCapofila();
            $('#mrkSelector').val("all"); 
            $('#mrkSelector').val("all"); 
            $('#levelSelector').val("all");			
         }
         //publicIp = "";
         CatalogoFiltriWidget.setArrayMarchiXRicerca(arrayMarchiDaFiltrare);
         
         if (readCookie("cpfFromUrl") != null) {
            codCapofila = readCookie("cpfFromUrl");
            CatalogoFiltriWidget.setCapofilaFromUrl(true);
            CatalogoFiltriWidget.setCapofila(codCapofila);
            CatalogoFiltriWidget.getRicercheFatte()[0] = codCapofila;
            CatalogoFiltriWidget.setPrimaRicerca(true);
            eraseCookie("cpfFromUrl");
         }
         
         if (readCookie("codFromUrl") != null) {
            codArt = readCookie("codFromUrl").replaceAll(":", ";");
            CatalogoFiltriWidget.getRicercheFatte()[0] = "A:" + codArt.trim();
            CatalogoFiltriWidget.setRicercaArticoloFromUrl(true);
            CatalogoFiltriWidget.setPrimaRicerca(true);
            cercaSoloArticolo = CatalogoFiltriWidget.isRicercaArticoloFromUrl();
            eraseCookie("codFromUrl");
         } 
         // Se non ho parametri non lancio ricerca
         if (codArt < 3 && desArt == "" && codCapofila == "" && arrayMarchiDaFiltrare[0] == "" && arrayLineeDaFiltrare[0] == "" &&
            arrayCategorieDaFiltrare[0] == "" && level2 == "" && level1 == "" && !nuoviarrivi && !allArtPromo
            ) {
           return; 
         }
         
          // Se ricerca successiva alla prima, cerco nell'array se ho quello che mi serve per non richiamare il service
          var primaRicerca = CatalogoFiltriWidget.isPrimaRicerca();  
          if (primaRicerca) {
              CatalogoFiltriWidget.resetRicercheFatte();
          }
        var chiamaService = true;
        var cpfFiltrati = [];
        var ricerca = "";
        var tipoRicerca = "";
        var ultimoTipoRicerca = "";
        if (!primaRicerca) {
         if (CatalogoFiltriWidget.isRemoveRicerca()) {
           CatalogoFiltriWidget.setRemoveRicerca(false);
           // Rileggo i filtri fatti
           var allCpf = CatalogoWidget.getCapofilaPrimaRicerca();
           if (CatalogoFiltriWidget.getRicercheFatte().length == 1) {
              cpfFiltrati = allCpf;
           } else {
            for (var i = 1; i < CatalogoFiltriWidget.getRicercheFatte().length; i++) {
               var ricerca = CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[1].trim();
               var tipoRicerca = CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[0];
               for (var y = 0 ; y < allCpf.length; y++) {
                 var testSearch = allCpf[y].desc_est.toUpperCase().trim() + " " + 
                                 allCpf[y].descr.toUpperCase().trim();
                 if (tipoRicerca == "M" && allCpf[y].marca.trim() == ricerca.trim()) {
                    cpfFiltrati.push(allCpf[y]);
                 } else if (tipoRicerca == "D" && testSearch.toUpperCase().includes(ricerca)) {
                   cpfFiltrati.push(allCpf[y]);
                 }
               }
             }
           }
         } else {
          // Parto sempre dall'ultimo elemento aggiunto
          var idx = CatalogoFiltriWidget.getRicercheFatte().length - 1;  
          var ricerca = CatalogoFiltriWidget.getRicercheFatte()[idx].split(":")[1].trim();
          var tipoRicerca = CatalogoFiltriWidget.getRicercheFatte()[idx].split(":")[0];
          if (tipoRicerca == "M") {
           try {
            // Se ricerca precedente era un marchio
            var tipoRicercaPrecedente = CatalogoFiltriWidget.getRicercheFatte()[idx-1].split(":")[0];
            if (tipoRicercaPrecedente == "M") {
               var allCpf = CatalogoWidget.getCapofilaResponse().capofila;
               for (var i = 0; i < allCpf.length; i++) {
                 cpfFiltrati.push(allCpf[i]);
               }
            }
            var allCpf = CatalogoWidget.getCapofilaPrimaRicerca();
            for (var i = 0; i < allCpf.length; i++) {
              if (allCpf[i].marca.toUpperCase().trim() == ricerca.toUpperCase().trim()) {
                 cpfFiltrati.push(allCpf[i]);
              }
            }
           } catch {
           }
          } else if (tipoRicerca == "D") {
            var allCpf = CatalogoWidget.getCapofilaResponse().capofila;
            for (var i = 0; i < allCpf.length; i++) {
              var testSearch = allCpf[i].desc_est.toUpperCase().trim() +  " " + 
                                   allCpf[i].descr.toUpperCase().trim();
              if (testSearch.toUpperCase().includes(ricerca)) {
                 cpfFiltrati.push(allCpf[i]);
              }
            }
          }
         }
         if (cpfFiltrati.length > 0) {
            CatalogoWidget.setResetPaginator(true);
            allCpf = CatalogoWidget.getCapofilaResponse();
            allCpf.capofila = cpfFiltrati;
            showCapofila(allCpf);
            return;
          } else {
            primaRicerca = true;
            desArt = ultimaRicerca;
            nuoviarrivi = false;
            words = ultimaRicercaBase.split(" ");
            CatalogoFiltriWidget.setPrimaRicerca(true);
            CatalogoFiltriWidget.resetRicercheFatte();
            CatalogoFiltriWidget.setDescrizioneDaFiltrare();
            CatalogoFiltriWidget.setArrayMarchiXRicerca([]);
            CatalogoFiltriWidget.getRicercheFatte().push("D:" + ultimaRicercaBase);
          }
        } 
        
        var allCapofila = CommonApis.getCapofilaAutocomplete();
        var capofilaToSearch = [];
        try {
          if (codCapofila != "") {
            capofilaToSearch.push(codCapofila);
          }
        } catch {
        }
        
        // Se non ho descrizione da filtrare, controllo se ho fatto delle ricerche dopo la prima
        if (desArt == "" && !CatalogoFiltriWidget.isCapofilaFromAutocomplete()) {
          for (var i = 1; i < CatalogoFiltriWidget.getRicercheFatte().length; i++) {
            if (CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[0] == "D") {
              words.push(CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[1].trim());
            }
          }  
        }
        if (desArt != "" || words.length > 0) { 
          for (i = 0; i < allCapofila.length; i++) {
            var elemFound = true;  
            for (y = 0; y < words.length; y++) {       
              if (allCapofila[i].includes(words[y]) == 0 || words[y].trim().length < 3) {
                elemFound = false;                                         
              }
            }
            if (elemFound) {
              var cpf = allCapofila[i].substr(0, allCapofila[i].indexOf("-")).trim(); 
              if (capofilaToSearch.indexOf(cpf) == -1) {
                capofilaToSearch.push(cpf);
              }                                       
            }
          }
        }
        
        if(arrayMarchiDaFiltrare.length > 0) {
        } else {
          for (i = 0; i < capofilaToSearch.length; i++) {
            if (codCapofila != "") {
              codCapofila = codCapofila.trim() + ";";
            }
              codCapofila = codCapofila.trim() + capofilaToSearch[i];
          }
        }   
        
        
        CatalogoWidget.setResetPaginator(true);
        $("#myAccountPrefs").addClass("display-none");
        request =  {
             loggato:isWorkspace,
             cod_art:codArt,
             descr:desArt,
             desc_est:"",
             marchio:arrayMarchiDaFiltrare,
             linea:arrayLineeDaFiltrare,
             categoria:arrayCategorieDaFiltrare,
             limit:CommonApis.getLimit(),
             offset:sqlOffset,
             listino:listino,
             capofila:codCapofila,
             //ipAddress:CommonApis.getPublicIp(),
             ipAddress:"",
             nuoviarrivi:nuoviarrivi,
             //nuoviarrivi:false,
             livello2:level2,
             livello1:level1,
             ultimaParola:ultimaRicerca,
             primoAcquisto:false,
             codCliCon:CommonApis.getSessionData().cod_cl_con,
             codCliDes:CommonApis.getSessionData().cod_cl_des,
             autocomplete:CatalogoFiltriWidget.isCapofilaFromAutocomplete(),
             allartpromo:allArtPromo,
             cercaArticolo:cercaSoloArticolo,
             primaRicerca:primaRicerca,
            };
           
        jolieCall( "getCapofilaFrontend", request, showCapofila, function( error ) { showError(error.message) } );
      }

    function creaElencoLivello2(livello2) {
      
      try { 
       var arrayLivello2 = [];
       var arrayLivello1 = [];
       CatalogoFiltriWidget.setArrayLivello2(arrayLivello2);
       CatalogoFiltriWidget.setArrayLivello1(arrayLivello1);           
       var y = 0;
       for(var i = 0; i<livello2.length; i++) {
          var level = livello2[i].livello2.split(":")[1];
          var desLevel = capitalizeFirstLetter(livello2[i].livello2.split(":")[0]);
          if (arrayLivello2.indexOf(livello2[i].livello2) == -1) {
             arrayLivello2[y] = livello2[i].livello2;
             y++;
          }
       }
       
       var y = 0;
       for(var i = 0; i<livello2.length; i++) {
          var level = livello2[i].livello1.split(":")[1];
          var desLevel = capitalizeFirstLetter(livello2[i].livello1.split(":")[0]);
          if (arrayLivello1.indexOf(livello2[i].livello1) == -1) {
             arrayLivello1[y] = livello2[i].livello1;
             y++;
          }
       } 
       arrayLivello2.sort();
       arrayLivello1.sort();
       CatalogoFiltriWidget.setArrayLivello2(arrayLivello2);       
       CatalogoFiltriWidget.setArrayLivello1(arrayLivello1);
      } catch {  
        }
     }

    function creaElencoLinee(linee) {
        try {   
         var arrayLinee = [];
         CatalogoFiltriWidget.setArrayLinee(arrayLinee);        
         var y = 0;
         for(var i = 0; i<linee.length; i++) {
           if (linee[i].linea.trim() != "") {
             var mrkLinea = linee[i].marca.trim() + ":" + linee[i].linea.trim();
             if (arrayLinee.indexOf(mrkLinea) == -1) {
               arrayLinee[y] = mrkLinea;
               y++;
             }
           }
         }  
         arrayLinee.sort();
         CatalogoFiltriWidget.setArrayLinee(arrayLinee);
        } catch {
        }      
      }  
      
      function creaElencoMarchi(marchi) {
       
         if (marchi == undefined) {
           return;
         }
         
         var arrayMarchi = [];
         var arrayMarchiNumeri = [];
         var arrayMarchiDivisioni = [];
         CatalogoFiltriWidget.setArrayMarchi(arrayMarchi);        
         //var y = 0;
         for(var i = 0; i < marchi.length; i++) {
           if (arrayMarchi.indexOf(marchi[i].marchio.trim()) == -1) {
             arrayMarchi.push(marchi[i].marchio.trim());
             arrayMarchiDivisioni[marchi[i].marchio.trim()] = marchi[i].nome_divisione.trim();
           //  y++;
           }
         }  
         arrayMarchi.sort();
         // Conto i capofila per marchio
         for(var i = 0; i < arrayMarchi.length; i++) {
           var numCpf = 0;
           for (var y = 0; y < CatalogoWidget.getCapofilaResponse().capofila.length; y++) {
             if (arrayMarchi[i].trim() == CatalogoWidget.getCapofilaResponse().capofila[y].marca.trim()) {
               numCpf = numCpf + CatalogoWidget.getCapofilaResponse().capofila[y].numart;
             }
           }
           arrayMarchiNumeri[arrayMarchi[i]] = numCpf;
         }
         CatalogoFiltriWidget.setArrayMarchi(arrayMarchi);
         CatalogoFiltriWidget.setArrayMarchiNumeri(arrayMarchiNumeri);
         CatalogoFiltriWidget.setArrayMarchiDivisioni(arrayMarchiDivisioni);
              
      }      
	  
	  
      
  function showCapofila( data ) {
	  
    if (data != undefined && data.capofila != undefined && CatalogoFiltriWidget.isPrimaRicerca()) {
      CatalogoWidget.setCapofilaResponse(data);
      CatalogoWidget.setCapofilaPrimaRicerca(data.capofila);
      CatalogoWidget.setMarchiPrimaRicerca(data.marchi);
      CatalogoWidget.setCategoriePrimaRicerca(data.categorie);
      CatalogoFiltriWidget.setPrimaRicerca(false);
      // Controllo se avevo dei filtri descrizione impostate
      var arrayRicerche = [];
      var almenoUno = false;
      if (CatalogoFiltriWidget.getRicercheFatte().length > 1) {
       for (var i = 0; i < CatalogoFiltriWidget.getRicercheFatte().length; i++) {
        if (CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[0] == "D") {
            almenoUno = true;
            arrayRicerche.push(CatalogoFiltriWidget.getRicercheFatte()[i].split(":")[1].trim());
        }
       }
       if (almenoUno) {
        var allCpf = CatalogoWidget.getCapofilaResponse().capofila;
        var cpfFiltrati = [];
        for (var i = 0; i < allCpf.length; i++) {
          var elemFound = true;  
          for (y = 0; y < arrayRicerche.length; y++) {
            var testSearch = allCpf[i].desc_est + allCpf[i].descr + allCpf[i].misura;      
            if (testSearch.toUpperCase().includes(arrayRicerche[y]) == 0 || arrayRicerche[y] == "") {
              elemFound = false;
              break;                                            
            }
          }
           
          if (elemFound) {
            cpfFiltrati.push(allCpf[i]);                                
          }
        }
        
        data.capofila = cpfFiltrati;
        
        CatalogoWidget.setCapofilaResponse(data);
       }
      }
    } 
    
    $("#myAccountPrefs").addClass("display-none");
	CatalogoWidget.setNumArtEspansi(0);
	var menuAttivo = CommonApis.getMenuAttivoSave();
	window.scrollTo( 0, 0 );
	try {
        if (menuAttivo != "" || menuAttivo != "tabCatalogo"){			
			     segnalaMenuAttivo("tabCatalogo");
			     showSection("tabCatalogo");
        }
        
	} catch {
    
    }

    $(".containerNews").hide();
	$(".containerNews2").hide();
    $("#ricercadesElemMobile").val("");
    $("#ricercadesElem").val("");
    CatalogoWidget.clearCapofilaImg();
        
         //  20220831
         if (data != undefined && data.resetRicerca) {
           CatalogoFiltriWidget.resetRicerca(data.ultimaParola.replace("&"," ").replace(/:/g, "").replace(/\*/g, ""));
           artViewed = []; 
           CatalogoFiltriWidget.setArrayMarchi([]);
           CatalogoFiltriWidget.setFirstFilter(true);  
         } 
         
        if (data != undefined && CatalogoFiltriWidget.isCreaElencoFiltri()) { 
          //CatalogoFiltriWidget.setFirstFilter(false); 
          creaElencoMarchi(data.marchi);
          creaElencoLinee(data.linee);   
          creaElencoLivello2(data.categorie);
        }                                                                                        

        if (data != undefined && !data.nuoviArriviRequest) {
          //creaElencoLivello2(data.categorie);
        } else {
          var arrayLivello2 = []; 
          CatalogoFiltriWidget.setArrayLivello2(arrayLivello2);       
        } 
        
       
        $("#removeFilter").attr('src','./src/images/filter-remove.png');
        $("#removeFilter").hover(function(){
                             $("removeFilter").css("cursor", "pointer");
                            }, function(){
                             $("removeFilter").css("cursor", "default");
                            });
        var tipRemove = "Rimuovi filtri";
        if (CatalogoFiltriWidget.getShowAllNuoviArrivi() && CatalogoFiltriWidget.getArrayTree().length > 1) {
           tipRemove = "Rimuovi filtri novit&#224";
        } else if (CatalogoFiltriWidget.getShowAllNuoviArrivi() && CatalogoFiltriWidget.getArrayTree().length == 1) {
           tipRemove = "Rimuovi filtri novit&#224 e ritorna al catalogo";
        }
 
        $("#removeFilter").attr('alt', tipRemove);
        $("#removeFilter").attr('title', tipRemove);
           //CatalogoFiltriWidget.openFilterPanel();
        var descLivello = "";

         
       if(CatalogoWidget.isResetPaginator()) {
             $('.pagination').empty();
             $('.pagination').removeData('twbs-pagination');
             $('.pagination').unbind();
             CatalogoWidget.setPage(1);
             totPages = 0;
             CatalogoWidget.setCurrentPage(1);
             CatalogoWidget.setOffset(0);
       }
           

        var codCapofila = "";
        var capofilaToShow = "";
        var immagine = "";
        var descLivello = "";
        var marca = "";
        var desc_est = "";
        var mand = "";
        var arrayCapofilaToShow = [];
        var isarticolo = 0;
        var linea = "";
        var madeInItaly = "";
        var img_mrk = "";
        var numArt = 0;
        var titolo = "";
        
        if (data.capofila != undefined && data.capofila.length > 0) {
          CatalogoWidget.creaWorkCapofilaArray(data);
        } 
          
        var htmlFunctionalTop = CatalogoWidget.getHtmlFunctionalTop("Catalogo", true);
         

                      
        var listCapofila = "<div id='filtriCatalogoScroll'><a href='#' id='showCatalogoFilterMobile' class='mobileBtn'><i class='toggleViewCatalogo fas fa-angle-double-right  menuListSize'></i></a></div>" +
		
							 "<div class='filtriCatalogoWidth'>"+
/*							 
							 "<div id='infoCatalogoButton'>" ;
							 
							if (abilitaCarrello){    			
								listCapofila = listCapofila + CatalogoWidget.creaHtmAggiungiArticoloAddDiv(); 
							}
							 listCapofila = listCapofila + "</div>"+		
*/						 
							 "<div id='filtriCatalogo' class='filtriCatalogo border-radius-20 transition'></div>"+							 							 
							 "</div><div id='tooltipDesc' class='tooltipDesc'></div> " +
               "<div class='datiCatalogo datiCatalogoWCart margin-right-5'>" +
							 "<div id='infoCatalogoMain' class='flex-row div-width-100'>"+
/*							 "<div id='infoCatalogoButton'>" ;
							 
							if (abilitaCarrello){    			
								listCapofila = listCapofila + CatalogoWidget.creaHtmAggiungiArticoloAddDiv(); 
							}
							listCapofila = listCapofila + "</div>"+							 
*/	
               "<div class='infoCatalogo flex-column margin-bottom-5 div-width-100' name='functionalRecord' id='functionalRecordTop'>" + htmlFunctionalTop + "</div>" +
							 "</div>" +
               "<div class='capofilaCatalogo capofilaCatalogoList'></div></div>" +
              // "<div id='shopInCatalogoPick' class='shopInCatalogoPick' alt='Mostra anteprima carrello' title='Mostra anteprima carrello'><i class='fas-menu fas fa-shopping-cart margin-right-5'></i></div>" +
               "<div id='previewCarrelloMaster' class='previewCarrelloMaster div-width-15 float-right'><div class='previewCarrello ov.auto border-radius-20'></div></div>";
        
        var nrCapofilaGrid = 1;
        var htmlCapofila = ""
        
          //if (data.capofila.length == 0) {
        var ripetiRicercaScanner = false;
        if (data != undefined && data.numeroCapofila == 0) {
            //CatalogoFiltriWidget.resetRicerca("");       
            CatalogoFiltriWidget.setPrimaRicerca(true);
            var idx = CatalogoFiltriWidget.getRicercheFatte().length - 1;
           /*
            if (idx == 0) {
                CatalogoFiltriWidget.resetRicercheFatte();
            } else {
                CatalogoFiltriWidget.getRicercheFatte()[idx].splice(idx, 1);
            }
           */
            htmlCapofila = "<div class='capofilaDescError div-width-100 pos-center-center'>NESSUN RISULTATO TROVATO PER LA RICERCA EFFETTUATA.&nbsp" +
                                           "<br>RIESEGUIRE LA RICERCA</div>";
             //CatalogoFiltriWidget.resetRicerca(data.ultimaParola.replace("&"," ").replace(/:/g, "").replace(/\*/g, ""));
             //CatalogoFiltriWidget.resetUltimaParola();
             //artViewed = []; 
             //CatalogoFiltriWidget.setArrayMarchi([]);
             //CatalogoFiltriWidget.setFirstFilter(true);  
              
            if (CommonApis.getRicercaAvviataDaScanner()) {
               ripetiRicercaScanner = true;
            }


        } else {
          CommonApis.setRicercaAvviataDaScanner(false);
          //20210715: se mobile aggiiungo i nuovi capofila
          if (data == undefined && CatalogoWidget.isAppendCapofila && $(".capofilaCatalogo").html() != undefined) {
             htmlCapofila = $(".capofilaCatalogo").html(); 
          } 
         // var workCapofilaArray = CatalogoWidget.getWorkCapofilaArray();
          var  workCapofilaArray = [];
          for (var i = 0; i < CatalogoWidget.getWorkCapofilaArray().length; i++) {
            if (CatalogoWidget.getWorkCapofilaArray()[i].visualizza) {
              workCapofilaArray.push(CatalogoWidget.getWorkCapofilaArray()[i]);
            }
          }
            
            
            
            //for( var i = 0; i < data.capofila.length; i++ ) {
          if (totPages == 0) {
             totPages = Math.floor(workCapofilaArray.length / CommonApis.getLimit());
             
             if (workCapofilaArray.length % CommonApis.getLimit() > 0) {
               totPages ++;
             }
             if (totPages == 0) {
               totPages = 1;
             }
          }
           //} else {
           //  totPages = 1;
           //}

          if (totPages < maxPages) {
            CatalogoWidget.setVisualizablePages(totPages);
          } else {
            CatalogoWidget.setVisualizablePages(maxPages);
          }
		  
		      CatalogoWidget.setTotPagesSav(totPages);

          descLivello = "";
          /*20210713 if (CommonApis.isMobile()) {
            limit = workCapofilaArray.length;
          }
          */
            //for( var i = 0; i < workCapofilaArray.length; i++ ) {
            CatalogoWidget.creaHtmlCapofila(workCapofilaArray, CatalogoWidget.getPage());
            htmlCapofila = htmlCapofila + CatalogoWidget.getHtmlListCapofila();
            //listCapofilaGrid = listCapofilaGrid + CatalogoWidget.getHtmlListCapofilaGrid();

            ricercaArticolo = false;

          }

          $(".catalogoResultNew").empty().html(listCapofila);
            $(".capofilaCatalogo").empty().html(htmlCapofila);
            if (data != undefined && data.numeroCapofila == 0) {
              $(".infoCatalogo").addClass("display-none-important");
            }
          $(".btnMostraArticoli").css("background-color", windowBackgroundColor);
		  

		  
          if (CommonApis.getDettaglioOrdine().length > 0 && CommonApis.getDettaglioOrdine() != undefined ||
              CommonApis.getDettaglioWishList().length > 0 && CommonApis.getDettaglioWishList() != undefined) {
            CatalogoFiltriWidget.setPreferitiInCatalogo(false);
            CatalogoFiltriWidget.setCarrelloInCatalogo(false);
		        CatalogoWidget.showCarrelloInCatalogo(".previewCarrello");
          }
              
          if (totPages > 1 && CatalogoWidget.getPage() <= totPages) {
            CatalogoWidget.setPaginator(totPages, CatalogoWidget.getVisualizablePages(), CatalogoWidget.getPage(), true, false);
          } 
          
          $("#catalogoResult").empty();
          // Compongo filtri ricerca
          CatalogoFiltriWidget.setHtmlFiltriRicerca();
          CatalogoFiltriWidget.openFilterPanel();
          CatalogoFiltriWidget.setNovita("");
          if (data != undefined && data.numeroCapofila == 0) {
            $("#toggleCatalogoViewBody").hide();
            CatalogoFiltriWidget.resetRicerca("");        
            CatalogoFiltriWidget.resetRicerca(data.ultimaParola.replace("&"," ").replace(/:/g, "").replace(/\*/g, ""));
            CatalogoFiltriWidget.resetUltimaParola();
            artViewed = []; 
            CatalogoFiltriWidget.setArrayMarchi([]);
            CatalogoFiltriWidget.setFirstFilter(true);                                                                                        
          }
           
          if (data != undefined && !CatalogoWidget.isAppendCapofila) {
            window.scrollTo( 0, top );
          }   
                
		//	window.scrollTo( 0, document.body.offsetHeight );
		
          if (readCookie("tipoVistaCatalogo") != null ) {
		         var tipoVCatalogo = readCookie("tipoVistaCatalogo");
		         let tipoGridL = tipoVCatalogo === 'true';
		         CatalogoFiltriWidget.setViewGrid(tipoGridL); 
	        } else {
		         CatalogoFiltriWidget.setViewGrid(true);
		         eraseCookie("tipoVistaCatalogo");
             createCookie("tipoVistaCatalogo", CatalogoFiltriWidget.isViewGrid(), 365);
          }
		
   // Se non sono loggato, non faccio vedere i filtri
         if (!isWorkspace) {
           $("#filtriCatalogoScroll").addClass("display-none");
           $(".orderMode").addClass("display-none"); 
         }
         if (workCapofilaArray == undefined || workCapofilaArray.length == 1) {
           $(".orderMode").addClass("display-none"); 
         }
         /*
         if (CatalogoFiltriWidget.isShowNovita()) {
           CatalogoFiltriWidget.setShowNovita(false); 
           CatalogoFiltriWidget.resetRicercheFatte();
         }
         if (CatalogoFiltriWidget.isShowBestseller()) {
           CatalogoFiltriWidget.setShowBestseller(false);
           CatalogoFiltriWidget.resetRicercheFatte();
         }
         */
         // Se ho richiesto un ordinamento, imposto il selettore e cancello cookie
         if (readCookie("orderMode") != null) {
           var opt = document.getElementsByName("orderMode");
           for (var i = 0; i < opt.length; i++) {
             if ($(opt[i]).val() == readCookie("orderMode")) {
               $(opt[i]).prop('selected', true);
               break;
             }
           }
           eraseCookie("orderMode");
         }
	       CatalogoFiltriWidget.toggleCatalogoView();
         
         // aggiungo i parametri articolo
         if (data != undefined && data.numeroCapofila != 0) {
           var inputdataGrid = $("#tabCatalogo div .inputQtaCpfGrid");
           var inputdata = $("#tabCatalogo div .inputQtaCpf");
           var inputdataUp = $("#tabCatalogo div .arrowUpCpf");
           var inputdataDown = $("#tabCatalogo div .arrowDwCpf");
           var inputdataUpGrid = $("#tabCatalogo div .arrowUpCpfGrid");
           var inputdataDownGrid = $("#tabCatalogo div .arrowDwCpfGrid");
           var inputdataCart = $("#tabCatalogo div .addCarrelloDirettoCpf");
           var inputdataCartGrid = $("#tabCatalogo div .addCarrelloDirettoCpfGrid");
           var inputdataWish = $("#tabCatalogo div .addWishListCpf");
           var inputdataWishGrid = $("#tabCatalogo div .addWishListCpfGrid");
           var inputdataCk = $("#tabCatalogo div .ckCatCpf"); 
           var inputdataCkGrid = $("#tabCatalogo div .ckCatCpfGrid");
          
           
           z = 0;  
           for( var i = CatalogoWidget.getOffset(); i < workCapofilaArray.length; i++ ) {
            if (i >= CommonApis.getLimit() * currentPage) {
               break;
            }
            if (workCapofilaArray[i].numArt == 1) {
             try {
               $.data(inputdata[z],"data",{
                  num_rig:0,
                  cod_art:workCapofilaArray[i].codCapofila,
                  qta_conf:workCapofilaArray[i].qta_conf,
                  risp_conf:workCapofilaArray[i].risp_conf,
                  risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,                     
                });
             } catch {
             } 
             
             try {
               $.data(inputdataGrid[z],"data",{
                  num_rig:0,
                  cod_art:workCapofilaArray[i].codCapofila,
                  qta_conf:workCapofilaArray[i].qta_conf,
                  risp_conf:workCapofilaArray[i].risp_conf,
                  risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,                     
                });
             } catch {
             }
             
             try {     
               $.data(inputdataUp[z],"data",{
                  num_rig:0,
                  cod_art:workCapofilaArray[i].codCapofila,
                  qta_conf:workCapofilaArray[i].qta_conf,
                  risp_conf:workCapofilaArray[i].risp_conf,
                  risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,                     
                });
             } catch {
             }
             
             try { 
               $.data(inputdataUpGrid[z],"data",{
                  num_rig:0,
                  cod_art:workCapofilaArray[i].codCapofila,
                  qta_conf:workCapofilaArray[i].qta_conf,
                  risp_conf:workCapofilaArray[i].risp_conf,
                  risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,                     
                });
             } catch {
             }
             
             try {  
               $.data(inputdataDown[z],"data",{
                  num_rig:0,
                  cod_art:workCapofilaArray[i].codCapofila,
                  qta_conf:workCapofilaArray[i].qta_conf,
                  risp_conf:workCapofilaArray[i].risp_conf,
                  risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,                     
                });
             } catch {
             }
             
             try {
               $.data(inputdataDownGrid[z],"data",{
                  num_rig:0,
                  cod_art:workCapofilaArray[i].codCapofila,
                  qta_conf:workCapofilaArray[i].qta_conf,
                  risp_conf:workCapofilaArray[i].risp_conf,
                  risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,                     
                }); 
             } catch {
             }
             
             try {
               $.data(inputdataCart[z],"data",{
                  num_rig:0,
                  cod_art:workCapofilaArray[i].codCapofila,
                  qta_conf:workCapofilaArray[i].qta_conf,
                  risp_conf:workCapofilaArray[i].risp_conf,
                  risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,                     
                });
             } catch {
             }
             
             try {
               $.data(inputdataCartGrid[z],"data",{
                  num_rig:0,
                  cod_art:workCapofilaArray[i].codCapofila,
                  qta_conf:workCapofilaArray[i].qta_conf,
                  risp_conf:workCapofilaArray[i].risp_conf,
                  risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,                     
                });
             } catch {
             }
             
             try { 
               $.data(inputdataWish[z],"data",{
                  num_rig:0,
                  cod_art:workCapofilaArray[i].codCapofila,
                  qta_conf:workCapofilaArray[i].qta_conf,
                  risp_conf:workCapofilaArray[i].risp_conf,
                  risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,                     
                });
             } catch {
             }
             
             try {
               $.data(inputdataWishGrid[z],"data",{
                  num_rig:0,
                  cod_art:workCapofilaArray[i].codCapofila,
                  qta_conf:workCapofilaArray[i].qta_conf,
                  risp_conf:workCapofilaArray[i].risp_conf,
                  risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,                    
                });
             } catch {
             } 
             
             try {
                $.data(inputdataCk[z],"data",{
                  num_rig:0,
                  cod_art:workCapofilaArray[i].codCapofila,
                  qta_conf:workCapofilaArray[i].qta_conf,
                  risp_conf:workCapofilaArray[i].risp_conf,
                  risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,
                  prz:workCapofilaArray[i].prz_lis,
                  sco1:0,
                  sco2:0,
                  sco3:0,
                  sco4:0,
                  sco5:0,
                  sco6:0,                  
                });
             } catch {
             }

             try {                             
                $.data(inputdataCkGrid[z],"data",{
                  num_rig:0,
                  cod_art:workCapofilaArray[i].codCapofila,
                  qta_conf:workCapofilaArray[i].qta_conf,
                  risp_conf:workCapofilaArray[i].risp_conf,
                  risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,
                  prz:workCapofilaArray[i].prz_lis,
                  sco1:0,
                  sco2:0,
                  sco3:0,
                  sco4:0,
                  sco5:0,
                  sco6:0,                                       
                });
             } catch {
             }
                z++;                                                
             }
           }
         }   
	
		CommonApis.clearListPromoInserite();
		CommonApis.clearDataArray();
		
		
		//menu ordina direttamente da catalogo senza aprire il capofila - salvo gli elementi data per ricrearli successivamente se devo rientrare nel catalogo 
		CommonApis.riempiArrayRigeneraDataObj(inputdataDownGrid);
		CommonApis.riempiArrayRigeneraDataObj(inputdataUpGrid);
		CommonApis.riempiArrayRigeneraDataObj(inputdataGrid);
		CommonApis.riempiArrayRigeneraDataObj(inputdataCartGrid);
		CommonApis.riempiArrayRigeneraDataObj(inputdataWishGrid);
		CommonApis.riempiArrayRigeneraDataObj(inputdataCkGrid);
		CommonApis.riempiArrayRigeneraDataObj(inputdataCk);
		
	
		
		
		
	/*
		var arrayElemLoc = {};
	
		for( var zi = 0; zi < inputdataDownGrid.length; zi++ ) {
		  var capof = $.data(inputdataDownGrid[zi], 'data').cod_art;	
			
		  var dataEl = [];
		  $.each($.data(inputdataDownGrid[zi], 'data'), function(key, value) {
			dataEl.push({ chiave: key, valore: value });			
		  });
		  
			//arrayElemLoc[]
			var name = inputdataDownGrid[zi].getAttribute("name");
			arrayElemLoc[capof] = dataEl;
			CommonApis.getDataArray()[name]=arrayElemLoc;
			
		}
		*/
		 
         aggiungiListenerCatalogo();
         aggiungiListenerRimuoviRicerca();
         aggiungiListenerRicercaLivelloMarchio();
         aggiungiListenersCatalogoBtnApri();
        
        // Se la ricerca precedente ha prodotto solo un capofila, resetto
        try {
          if (CatalogoWidget.getCapofilaPrimaRicerca().length == 1) {
            CatalogoFiltriWidget.setPrimaRicerca(true);
            CatalogoFiltriWidget.resetRicercheFatte();
            CatalogoFiltriWidget.setDescrizioneDaFiltrare();
          }
        } catch {
        }
        
       // Se solo un capofila, visualizzo gli articoli
         if (data != undefined){
 		       if (data.numeroCapofila == 1 || readCookie("codFromUrl") != null) {
		         if (CatalogoFiltriWidget.isViewGrid()) {
		           var elem = $(".btnMostraArticoliGrid");
		         } else {
		           var elem = $(".btnMostraArticoliList");
		         }
             if (data.isarticolo == 1) {
               createCookie("isArticolo", data.codArticolo, 1);
             }
		         $(elem).addClass("display-none");
		         elem.click(); 
		  //document.getElementById(id).click();
		       }
	       }

          if (ripetiRicercaScanner) {
               console.log("Nessun risultato, riapro lo scanner...");
               CommonApis.setRicercaAvviataDaScanner(false);               
               reopenScanner(); 
               return; 
          }


}        
      
 function mostraArticoli(data) {  
  
  $("#myAccountPrefs").addClass("display-none");
  // Ordino gli articoli per descrizione
  data.articoliricerca.sort((a,b) => (a.desart > b.desart) ? 1 : ((b.desart > a.desart) ? -1 : 0));
  // Se ho richiesto un codice da url, sistemo lascio nell'array solo quello
  var arrayArticoli = {}
  if (readCookie("codFromUrl") != null) {
    for (var i = 0; i < data.articoliricerca.length; i++) {
      if (readCookie("codFromUrl").trim() == data.articoliricerca[i].cod_art.trim() ) {
        arrayArticoli = data.articoliricerca[i];
        break;
      } 
    }
    data.articoliricerca = [];
    data.articoliricerca.push(arrayArticoli);
    eraseCookie("codFromUrl");
  }
  
  if (readCookie("isArticolo") != null) {
     for (var i = 0; i < data.articoliricerca.length; i++) {
      if (readCookie("isArticolo").trim() == data.articoliricerca[i].cod_art.trim() ||
          readCookie("isArticolo").trim() == data.articoliricerca[i].barcode.trim() ||
          readCookie("isArticolo").trim() == data.articoliricerca[i].art_fornitore.trim()) {
        arrayArticoli = data.articoliricerca[i];
        break;
      } 
    }
    data.articoliricerca = [];
    data.articoliricerca.push(arrayArticoli);
    eraseCookie("isArticolo");
  }
  
	var sc1 = 0;
	var sc2 = 0;
	var sc3 = 0;
	var sc4 = 0;
	var sc5 = 0;
	var sc6 = 0;
  var capofilaToShow = "";
  
  
  loggato = false;
  if (data.articoliricerca != undefined) {
    loggato = data.articoliricerca[0].loggato;
  }

  var arrayCapofila = [];
  for (var x = 0; x < data.articoliricerca.length; x++) {
    var arrayCapofilaReq = data.articoliricerca[x].capofila.split(";");
     for (var y = 0; y < arrayCapofilaReq.length; y++) {
       if (arrayCapofila.indexOf(arrayCapofilaReq[y].trim()) == -1) {
         arrayCapofila.push(arrayCapofilaReq[y].trim());
      }
    }
  }
  arrayCapofila.sort();
  for (var x = 0; x < arrayCapofila.length; x++) {
    capofilaToShow = capofilaToShow.trim() + arrayCapofila[x].trim().replace(/\//g, "S").replace(/\./g, "D")
  }
  while (capofilaToShow.indexOf(";") != -1) {
    capofilaToShow = capofilaToShow.replace(";", "");
  }

  if (loggato){

		for( var i = 0; i < data.articoliricerca.length; i++ ) {

		   if (numScoGest >= 1){
					 sc1 = data.articoliricerca[i].scontoStd1
				 }

			if (numScoGest >= 2){
					 sc2 = data.articoliricerca[i].scontoStd2
				 }

			if (numScoGest >= 3){
					 sc3 = data.articoliricerca[i].scontoStd3
				 }

			if (numScoGest >= 4){
					 sc4 = data.articoliricerca[i].scontoStd4
				 }

			if (numScoGest >= 5){
					 sc5 = data.articoliricerca[i].scontoStd5
				 }

			if (numScoGest >= 6){
					 sc6 = data.articoliricerca[i].scontoStd6
				 }


		 }

	}

    var idTabella = "tableArticoli" + capofilaToShow ;
    var capofilaOk = capofilaToShow;
    
    var actCapofila = "";

		openTableArtDett.push(idTabella);
		capofilaToShow = arrayCapofila[y];

    if(!$("#" + capofilaOk ).is(':empty') ) {
        
          $( "#" + idTabella ).slideUp();          
          $( "#" + capofilaOk + " td" ).empty();
      } else {          
          if (data.articoliricerca.length > 0) {
           var almenoUno = false;
           var przClass = "text-prz";
           var przClassSconti = "text-prz";
           var prezziRaddoppiati = readCookieValue("prezziDoppi");          
           for (var x1 = 0; x1 < 1; x1++) {
  
              almenoUno = true;
              var listArticoli = "<div id='" + idTabella +  "' class='display-none tableArticoliListCls' cpf = '" + capofilaOk +  "'><div class='tableArticoli table-table table-grid'>";
              // Header desktop
               // 20251230 Alessandro listArticoli = listArticoli + "<div class='table-tr table-carrello-desktp' style='background-color:" + windowBackgroundColor +";' >";
               listArticoli = listArticoli + "<div class='table-carrello-desktp table-carrello-th color-black'>";

              if (loggato) {
                 listArticoli = listArticoli + "<div class='table-th div-width-10 text-center' " +
                              " alt='Seleziona tutti gli articoli' title='Seleziona tutti gli articoli' >" +                               
                              "<input name='checkCatHeader' type='checkbox' class='selCkCatHeader selCkCatHeader" + capofilaOk + "' capofila='" + data.articoliricerca[0].capofila.trim() + "'>" +
                              "</div>";
              }
               listArticoli = listArticoli + "<div class='table-th div-width-100 color-black'>PRODOTTO</div>";
              
              if (showMisura != "0") {
                  listArticoli = listArticoli + "<div class='table-th div-width-30 text-left color-black'>MISURA</div>";                              
              }
               listArticoli = listArticoli + "<div class='table-th div-width-10 text-center color-black'>UM</div>";
              var confVenditaVariabile = false;
              if (loggato) {
                            
                if (data.articoliricerca[x1].uni_mis_primaria.trim() != data.articoliricerca[x1].uni_mis.trim()) {
                  confVenditaVariabile = true;
                    listArticoli = listArticoli +  "<div class='table-th div-width-30 text-center color-black'>CNF.<br>VENDITA</div>" +
                    "<div class='table-th div-width-30 text-center  color-black'>IMBALLO</div>";
                } else {
                    listArticoli = listArticoli + "<div class='table-th div-width-20 text-center color-black'>CNF.</div>";
                }

                var przLbl = "PREZZO";
                if (prezziRaddoppiati == 1) {
                  przLbl = "PREZZO AL<br>PUBBLICO";
                }
                  listArticoli = listArticoli +  "<div class='table-th div-width-70 text-center color-black'>QTA</div>" +    
				"<div class='table-th div-width-15 text-center'></div>" +    				 //COLONNA PER ICONA PREZZO OFFERTA SPECIALE
                      "<div name='headerPrzLabel" + capofilaOk.trim() + "' class='table-th div-width-30 text-prz  color-black' >" + przLbl + "</div>";

					      if (numScoGest >= 1){
                              listArticoli = listArticoli + "<div class='table-th div-width-20 text-prz color-black'>SC.1</div>";
					      }   

					      if (numScoGest >= 2){
                              listArticoli = listArticoli + "<div class='table-th div-width-20 text-prz color-black'>SC.2</div>";
					      } 

					      if (numScoGest >= 3){
                              listArticoli = listArticoli + "<div class='table-th div-width-20 text-prz color-black'>SC.3</div>";
					      }

					      if (numScoGest >= 4){
                              listArticoli = listArticoli + "<div class='table-th div-width-20 text-prz color-black'>SC.4</div>";
					      }

					      if (numScoGest >= 5){
                              listArticoli = listArticoli + "<div class='table-th div-width-20 text-prz color-black'>SC.5</div>";
					      }

					      if (numScoGest >= 6){
                              listArticoli = listArticoli + "<div class='table-th div-width-20 text-prz color-black'>SC.6</div>";
					      }

                if (showGiacenzaNumerica == "1"){
                    listArticoli = listArticoli + "<div class='table-th div-width-20 text-prz color-black'>DISP.</div>";
                }

                  listArticoli = listArticoli + "<div class='table-th div-width-60 text-center color-black'>INFO</div></div>";
              } else {
                  listArticoli = listArticoli + "<div class='table-th div-width-30 text-right color-black'>CONF.</div></div>";
              }

              var numArtDelCapofila = 0;
              var image = "";
              if (data.articoliricerca.length > 0){
                image = data.articoliricerca[0].nom_imm_p.trim(); 
              }

            // Da qui carico gli articoli del capofila
              for( var i = 0; i < data.articoliricerca.length; i++ ) {
  
                if (actCapofila != data.articoliricerca[i].capofila.trim() && arrayCapofila.length == 1
                    || actCapofila != data.articoliricerca[i].nom_imm_p.trim() && arrayCapofila.length > 1) {
                    actCapofila = data.articoliricerca[i].capofila.trim();
                    var z = 0;               
                }
                z++;          
                var qta;
                numArtDelCapofila ++;
                if (showMisura == "1") {              
                }

                if (data.articoliricerca[i].risp_conf == 1 && data.risp_conf_mand == 1 ){

                  qta = data.articoliricerca[i].qta_conf;
                } else {
                  qta = 1;
                }
              // Togliere se si vuole gi? impostare la qta
                if (showQtaInCatalogo == "0") {
                  qta = 0;
                }
              // Imposto qta carrello
                var qtaCarrello = data.articoliricerca[i].qta_carrello;
                var btnClass = "";
                var idTr = "trArt" + $.trim(data.articoliricerca[i].cod_art);
    
              
                listArticoli = listArticoli + "<div id='" + idTr + "' class='";
                
                var shopCart = "./src/images/shopping-cart-plus.png";
                  if (z % 2 == 0 && z > 1) {
                  if (qtaCarrello > 0) {
                      // portale2026 Alessandro listArticoli = listArticoli + " table-tr table rowTableArticoliCarrAlt'>";
                      listArticoli = listArticoli + " flex-row div-width-100 table rowTableArticoliAlt'>";
                    btnClass = "btnModQtaCarrAlt";
                    shopCart = "./src/images/shopping-cart-green.png";
                  } else {
                      // portale2026 Alessandro listArticoli = listArticoli + " table-tr table rowTableArticoliAlt'>";
                      listArticoli = listArticoli + " flex-row div-width-100 table rowTableArticoliAlt'>";
                    btnClass = "btnModQtaAlt";
                  }
                } else {
                  if (qtaCarrello > 0) {
                      // portale2026 Alessandro listArticoli = listArticoli + " table-tr table rowTableArticoliCarr'>";
                      listArticoli = listArticoli + " flex-row div-width-100 table rowTableArticoli'>";
                    btnClass = "btnModQtaCarr";
                    shopCart = "./src/images/shopping-cart-green.png";
                  } else {
                      // portale2026 Alessandro listArticoli = listArticoli + " table-tr table rowTableArticoli'>";
                      listArticoli = listArticoli + " flex-row div-width-100 table rowTableArticoli'>";
                    btnClass = "btnModQta";
                  }
                }
                
                if (loggato) {
                   listArticoli = listArticoli + "<div class='table-td-bottom-border table-carrello-desktp div-width-10 artTableSel vert-align-middle text-center '><input type='checkbox' class='selCkCat' name='checkCat" + $.trim(data.articoliricerca[i].capofila) +
                   "' id='CKCAT_" + $.trim(data.articoliricerca[i].cod_art.replace(/\//g, "S").replace(/\./g, "D")) + "' ";
				           if (clienteAttuale == "") {
                     listArticoli = listArticoli + " disabled";
                   }
                   listArticoli = listArticoli + "></div>"; 
                }
               
                  // portale 2026 Alessandro listArticoli = listArticoli + "<div class='table-td-bottom-border table-carrello-desktp div-width-100 font-15 vert-align-middle '>" + 
                  listArticoli = listArticoli + "<div class='flex-column-space-between  table-carrello-desktp div-width-100 font-15 vert-align-middle '>" + 
                             "<p class='paddingBottom1P'>" + $.trim(data.articoliricerca[i].desart) + "</p>";
                listArticoli = listArticoli + "<p class='paddingBottom1P font-14'><span>Codice: </span><span class='font-16'><b>" + $.trim(data.articoliricerca[i].cod_art) + "</b></span></p>";
                listArticoli = listArticoli + "<p class='paddingBottom1P font-14'><span>Barcode: </span><span class='font-16'><b>" + $.trim(data.articoliricerca[i].barcode) + "</b></span></p></div>";
               
                if (showMisura != "0") {
                    // portale 2026 Alessandro listArticoli = listArticoli + "<div class='table-td-bottom-border table-carrello-desktp font-14 div-width-30 vert-align-middle '>" + 
                    listArticoli = listArticoli + "<div class='  table-carrello-desktp font-14 div-width-30 vert-align-middle '>" + 
                                $.trim(data.articoliricerca[i].misura) + "</div>";                                                 
                }
                listArticoli = listArticoli + "<div class=' table-carrello-desktp font-14 div-width-10 vert-align-middle text-center' >" + $.trim(data.articoliricerca[i].uni_mis) + "</div>";

                if (data.articoliricerca[i].qta_conf == 0) {
                   data.articoliricerca[i].qta_conf = 1;
                }
                
                if (loggato) {
                  if (confVenditaVariabile) {
                    listArticoli = listArticoli +  "<div class='padding-right-15  table-carrello-desktp font-14 div-width-30 vert-align-middle text-conf'>" + data.articoliricerca[i].qta_conf + "</div>" + 
                                          "<div class='padding-right-15  table-carrello-desktp font-14 div-width-30 vert-align-middle text-center'>" + data.articoliricerca[i].qta_conf_primaria + " " + data.articoliricerca[i].uni_mis_primaria + "</div>";
                  } else {
                    listArticoli = listArticoli +  "<div class='padding-right-15 table-carrello-desktp font-14 div-width-20 vert-align-middle text-conf'>" + data.articoliricerca[i].qta_conf + "</div>";
                  }
				          var prezzo ;
                  var prz;
				          if (data.articoliricerca[i].prezzoStd > 0){
                    prz = data.articoliricerca[i].prezzoStd;                                      
                	  prezzo = data.articoliricerca[i].prezzoStd.toFixed(4).toLocaleString().replace(".", ",")
				           } else {
                    prz = data.articoliricerca[i].prezzoLis;          
					          prezzo = data.articoliricerca[i].prezzoLis.toFixed(4).toLocaleString().replace(".", ",");
			            }
                  var prezzoVendita = (prz * 2).toFixed(4).toLocaleString().replace(".", ",");
                
    
    
                    listArticoli = listArticoli + "<div class='padding-left-15 table-carrello-desktp div-width-60 vert-align-middle text-center'><div class='qtaMinusPlus qtaMinusPlusColumn'>" +
                        "<div class='qtaSelector justify-center'><div class='arrowDw arrowDw" + capofilaOk + "'>" +
                            "<img  src='./src/images/minus.png'  class = 'minusPlusIcon'></img ></div >" +
                               "<div class='qtaFld'><input class='inputQta inputQta" + capofilaOk + "' ";
               
                  listArticoli = listArticoli +  " id='CAT_" + $.trim(data.articoliricerca[i].cod_art.replace(/\//g, "S").replace(/\./g, "D")) + "' type='text' autocomplete='off' value='" + qta +
                    "' ";
                  if (clienteAttuale == "") {
                    listArticoli = listArticoli + " disabled";
                  }
               
                    listArticoli = listArticoli + "></input></div><div class='arrowUp arrowUp" + capofilaOk + "'><img  src='./src/images/add.png' class = 'minusPlusIcon'></img></div></div>";
                  
                  
                  // Se impostata qta, aggiungo bottone per aggiungere al carrello
                  var artInCarrelloCls = "";
                  var tipCarrello = "Aggiungi al carrello";
                  if (qtaCarrello > 0) {
                     artInCarrelloCls = "";
                     tipCarrello = "Articolo gi&agrave; nel carrello. Clicca per aggiungere altra quantit&agrave;"
                  }
                     listArticoli = listArticoli + "<div class='vert-align-middle artTableRow1 pos-center-center'>" + 
                     "<div class='addCartWish margin-left-10 margin-right-10 " + artInCarrelloCls + "'>" +
                     "<img src='" +  shopCart +"' class = 'icoDimension infoCatalogo addCarrelloDiretto addCarrelloDiretto" + capofilaOk + "' id='ADD_DIRECT_" + $.trim(data.articoliricerca[i].cod_art.replace(/\//g, "S").replace(/\./g, "D")) + "'" +
                            " alt='" + tipCarrello + "' ' title='" + tipCarrello + "'></img></div>";   
                  //}
                  
                  
                  var prezziNascosti = readCookieValue("hidePrezzi");

                // Se loggato, aggingo pulsante per lista desideri
                  if (loggato) {
						  
                    var in_wishlist = data.articoliricerca[i].wlist;
					          if (in_wishlist == 1){
						          listArticoli = listArticoli +  "<div class='addCartWish margin-left-10 margin-right-5'><img src=./src/images/Star-icon-green.png class= 'icoDimension addWishList addWishList" + capofilaOk + "' id='ADD_WISHLIST_" + $.trim(data.articoliricerca[i].cod_art.replace(/\//g, "S").replace(/\./g, "D")) + "'" +
                            " alt='Articolo presente nei preferiti. Clicca per aggiungere ulteriore quantit&agrave;' title='Articolo presente nei preferiti. Clicca per aggiungere ulteriore quantit&agrave;'></img></div>";    	     
					          } else {
						        listArticoli = listArticoli +  "<div class='addCartWish margin-left-5 margin-right-5'><img src=./src/images/Star-icon.png class= 'icoDimension addWishList addWishList" + capofilaOk + "' id='ADD_WISHLIST_" + $.trim(data.articoliricerca[i].cod_art.replace(/\//g, "S").replace(/\./g, "D")) + "'" +
                            " alt='Aggiungi ai preferiti' title='Aggiungi ai preferiti'></img></div>";                            					
                    }
                    // volantino
                   var volantinoImg = "";
                   if (CommonApis.isGestVolantini()) {
                     volantinoImg = "./src/images/Flyer.png";
                     var tipVolantino = "Aggiungi a un volantino";
                     if (CommonApis.getArticoliVolantini().indexOf(data.articoliricerca[i].cod_art.trim()) != -1) {
                       volantinoImg = "./src/images/Flyer-green.png";
                       tipVolantino = "Articolo presente in un volantino. Clicca per aggiungerlo a un altro volantino";
                     }
                     listArticoli = listArticoli +  "<div class='addCartWish margin-left-5 margin-right-10 '><img src=" + volantinoImg + " name='icoVolantino' class= 'icoDimension addVolantino' codart='" + $.trim(data.articoliricerca[i].cod_art.replace(/\//g, "S").replace(/\./g, "D")) + "'" +
                            " alt='" + tipVolantino + "' title='" + tipVolantino + "'></img></div>";
                  }
                 }

			

                  listArticoli = listArticoli + "</div></div>"; 
                  
				  
				  if (prezziNascosti == 1) {
                    przClass = "textshadow-prz";   
                    przClassSconti = "textshadow-prz";                                        
                  }

                  listArticoli = listArticoli.trim() +  "</div>";
				  
				  
				  //GESTIONE DIV ICONA PREZZO OFFERTA SPECIALE
				  listArticoli = listArticoli.trim() + "<div  class=' table-carrello-desktp font-14 div-width-15 text-right vert-align-middle'>";
				  
					// Icona in offerta
					listArticoli = listArticoli.trim() + "<div name= 'prezzoIcoDiv' class = ' margin-right-10'>";
					
					for (var x = 0; x < data.artinpromo.length; x++) {								
						var artInPromozione = false;                 
						if (data.artinpromo[x].articolo.trim() == data.articoliricerca[i].cod_art.trim()) {
						   artInPromozione = true;
						   break;
						}
					}
			   
                  if (isWorkspace && ((data.articoliricerca[i].prezzoStd > 0 && !artInPromozione) || data.articoliricerca[i].scontoPrAcq1 || 
                                      data.articoliricerca[i].scontoPrAcq2 || 
                                      data.articoliricerca[i].scontoPrAcq3 || 
                                      data.articoliricerca[i].scontoPrAcq4 || 
                                      data.articoliricerca[i].scontoPrAcq5 || 
                                      data.articoliricerca[i].scontoPrAcq6)) {
                    var scontoconf = "Offerta speciale!";
						listArticoli = listArticoli + "<td><i class='fa-solid fa-sack-dollar fa-fade fa-2xl' style='color: #d6cc0c;' title='" + scontoconf +"'></i></td>";
                  } else {
                    listArticoli = listArticoli + "<td><img src=./src/images/vuota.png ></td>";
                  }		
				listArticoli = listArticoli.trim() + "</div >"; //fine div icona prezzo speciale	
				  
				  listArticoli = listArticoli.trim() + "</div>";
				  
				  
				  //gestione div PREZZO
				     listArticoli = listArticoli.trim() +  "<div class=' table-carrello-desktp font-14 div-width-30 artTablePrz text-right vert-align-middle " + przClass + " artTableRow1' " + 
                                  "id='prz" + data.articoliricerca[i].cod_art.trim() + "' name='przCatTD' onmouseover='togglePrz(this)' onmouseout='togglePrz(this)'>";
                  if (prezziRaddoppiati == 1) {
                    listArticoli = listArticoli.trim() + prezzoVendita + "</div>" ;
                    przClassSconti = "textshadow-prz";
                    //$("#headerPrzLabel").text("PREZZO AL PUBBLICO");   
                  } else {
                    listArticoli = listArticoli.trim() + prezzo + "</div>" ; 
                  } 
				          if (clienteAttuale == "") {
                    $("." + btnClass).prop('disabled', true);
                    $("#CAT_" + $.trim(data.articoliricerca[i].cod_art.replace(/\//g, "S").replace(/\./g, "D")) ).prop('disabled', true);
                  }
				  
			            if (numScoGest >= 1){
							      listArticoli = listArticoli +  "<div name='scCatTD' class='table-td-bottom-border table-carrello-desktp font-14 div-width-20 artTableSco1  vert-align-middle " + przClassSconti + " artTableRow1' onmouseover='toggleSco(this)' onmouseout='toggleSco(this)'>" + data.articoliricerca[i].scontoStd1 + " %</div>" ;
						      }

      			      if (numScoGest >= 2){
      							listArticoli = listArticoli +  "<div name='scCatTD' class='table-td-bottom-border table-carrello-desktp font-14 div-width-20 artTableSco2  vert-align-middle " + przClassSconti + " artTableRow1' onmouseover='toggleSco(this)' onmouseout='toggleSco(this)'>" + data.articoliricerca[i].scontoStd2 + " %</div>" ;
      						}

      			      if (numScoGest >= 3){
      							listArticoli = listArticoli +  "<div name='scCatTD' class='table-td-bottom-border table-carrello-desktp font-14 div-width-20 artTableSco3  vert-align-middle " + przClassSconti + " artTableRow1' onmouseover='toggleSco(this)' onmouseout='toggleSco(this)'>" + data.articoliricerca[i].scontoStd3 + " %</div>";
      						}

      			      if (numScoGest >= 4){
      							listArticoli = listArticoli +  "<div name='scCatTD' class='table-td-bottom-border table-carrello-desktp font-14 div-width-20 artTableSco4  vert-align-middle " + przClassSconti + " artTableRow1' onmouseover='toggleSco(this)' onmouseout='toggleSco(this)'>" + data.articoliricerca[i].scontoStd4 + " %</div>" ;
      						}

      			      if (numScoGest >= 5){
      							listArticoli = listArticoli +  "<div name='scCatTD' class='table-td-bottom-border table-carrello-desktp font-14 div-width-20 artTableSco5  vert-align-middle " + przClassSconti + " artTableRow1' onmouseover='toggleSco(this)' onmouseout='toggleSco(this)'>" + data.articoliricerca[i].scontoStd5 + " %</div>" ;
      						}

      			      if (numScoGest >= 6){
      							listArticoli = listArticoli +  "<div name='scCatTD' class='table-td-bottom-border table-carrello-desktp font-14 div-width-20 artTableSco6  vert-align-middle " + przClassSconti + " artTableRow1' onmouseover='toggleSco(this)' onmouseout='toggleSco(this)'>" + data.articoliricerca[i].scontoStd6 + " %</div>";
      						}
            // Visualizzo giacenza numerica
                  if (showGiacenzaNumerica == "1") {
                    if (clienteAttuale == "" && magazzinoCompetenza == "") {
                      var tipText = "";
                      var inArrivo = 0;
                      var novita = 0;
                      for (var x = 0; x < data.giacenza.length; x++) {
                        if (data.giacenza[x].articolo.trim() == data.articoliricerca[i].cod_art.trim()) {
                           var disp = data.giacenza[x].disp;     
                           listArticoli = listArticoli + "<div name='dispArtTd' class='table-td-bottom-border table-carrello-desktp font-14 div-width-20 disp-art text-right'>" + disp + "</div>";
                        }
                      }
                    } else {
                      for (var x = 0; x < data.giacenza.length; x++) {
                        if (data.giacenza[x].articolo.trim() == data.articoliricerca[i].cod_art.trim()) {
                            inArrivo = data.giacenza[x].in_arrivo;
                            novita = data.giacenza[x].novita;
                            if (data.giacenza[x].mag.trim() == magazzinoCompetenza.trim()) {
                              giacenza = data.giacenza[x].disp;
                              listArticoli = listArticoli + "<div name='dispArtTd' class='table-td-bottom-border table-carrello-desktp font-14 div-width-20 disp-art text-right'>" + giacenza + "</div>";
                            }
                        }
                      } 
                    }
                  }
               
				  listArticoli = listArticoli +   "<div class='table-td-bottom-border table-carrello-desktp div-width-60'> " ;
							
							
				  listArticoli = listArticoli + "<table class='iconTable vert-align-middle'><tr>";

                                                               
               // Icona Info
                  listArticoli = listArticoli + "<td><img  src=./src/images/information-icon.png  class = 'icoDimension infoCatalogo imgDetailArticoloStart infoIcon' id='infoCarrelloImg' alt='Scheda articolo' " +                           
						    "title='Scheda articolo' codArt = '"  + data.articoliricerca[i].cod_art.trim() + "' ></img></td>"; 
				
               
               // SE non ho selezionato il cliente
                  if (showGiacenzaNumerica == "0") {
                    if (clienteAttuale == "" && magazzinoCompetenza == "") {
                      var tipText = "";
                      var inArrivo = 0;
                      var novita = 0;
                      for (var x = 0; x < data.giacenza.length; x++) {
                        if (data.giacenza[x].articolo.trim() == data.articoliricerca[i].cod_art.trim()) {
                           var mag = data.giacenza[x].mag.trim();
                           var disp = data.giacenza[x].disp;
                           inArrivo = data.giacenza[x].in_arrivo;
                           novita = data.giacenza[x].novita;
                           tipText = tipText + "Magazzino " + mag + ": " + disp + "\n";
                        }
                      }
                      
                      listArticoli = listArticoli + "<td><img src=./src/images/Status-battery-100.png class = 'infoCatalogo ' alt='" + tipText + "' title='" + tipText + "'></img></td>";
                      if (inArrivo == 1) {
                        listArticoli = listArticoli + "<td><img class=' icoDimension ' src=./src/images/New.png" +
                                " alt='Novit&#224;' " +
                                "title='Novit&#224;'></td>";
                                listArticoli = listArticoli + "<td><i class='fas fa-truck-moving infoCatalogo'" +
                                " alt='In Arrivo.\n Il materiale verr&#224 consegnato appena arriver&#224; in magazzino.' " +
                                "title='In Arrivo.\n Il materiale verr&#224 consegnato appena arriver&#224; in magazzino.'></i></td>";
                      } else if (inArrivo == 0 && novita > 0) {
                           listArticoli = listArticoli + "<td><img class='blinkImage garbageImage ' src=./src/images/New.png" +
                                " alt='Novit&#224;' " +
                                "title='Novit&#224;'></td>";
                      } else if (inArrivo == 0 && novita == 0) {
                           listArticoli = listArticoli + "<td><img src=./src/images/vuota.png></td>";
                      }
                    } else {
                      var inArrivo = 0;
                      var novita = 0;
                      var giacenza = 0;
                      if (data.giacenza.length == 0) {
                        
                         listArticoli = listArticoli + "<td><img src=./src/images/Status-battery-low.png class = 'infoCatalogo'" +
                                                       " alt='Non disponibile' title='Non disponibile'></img></td>";
                      
                      }
                      for (var x = 0; x < data.giacenza.length; x++) {
                        if (data.giacenza[x].articolo.trim() == data.articoliricerca[i].cod_art.trim()) {
                           inArrivo = data.giacenza[x].in_arrivo;
                           novita = data.giacenza[x].novita;
                           if (data.giacenza[x].mag.trim() == magazzinoCompetenza.trim()) {
                             giacenza = data.giacenza[x].disp;
                               if (data.giacenza[x].acq_interc == 'S') {
                                 listArticoli = listArticoli + "<td><img src=./src/images/vuota.png></td>";
                               } else if (data.giacenza[x].disp > 0) {
                                 listArticoli = listArticoli + "<td><img src=./src/images/Status-battery-100.png class = ' infoCatalogo icoDimension' " +
                                 " alt='Disponibile' title='Disponibile'></img></td>";
                               } else {
                                 listArticoli = listArticoli + "<td><img src=./src/images/Status-battery-low.png class = 'infoCatalogo icoDimension'" +
                                 " alt='Non disponibile' title='Non disponibile'></img></td>";
                               }
                              
                           }
                           if (inArrivo == 1 && giacenza == 0 || inArrivo == 0 && novita > 0 && giacenza == 0 ) {
                                "<td><i class='fas fa-truck-moving infoCatalogo' " +
                                " alt='Nuovo assortimento in arrivo.\n Il materiale verr&#224; consegnato appena disponibile in magazzino.' " +
                                "title='Nuovo assortimento in arrivo.\n Il materiale verr&#224; consegnato appena disponibile in magazzino.'></i></td>";
                           } else if (inArrivo == 1 && giacenza > 0) {
                             listArticoli = listArticoli + "<td><img src=./src/images/vuota.png></td>";
                           } else if (inArrivo == 0 && novita > 0 && giacenza > 0) {
                             listArticoli = listArticoli + "<td><img  class=' icoDimension'  src=./src/images/New.png" +
                               " alt='Novit&#224;' " +
                                "title='Novit&#224;'></td>";
                           } else if (inArrivo == 0 && novita == 0) {
                             listArticoli = listArticoli + "<td><img src=./src/images/vuota.png></td>";
                           }
                           break;
                        }
                      }    
                    }
                  } 
                    // Già acquistato
                    if (data.articoliricerca[i].art_acq > 0) {
                        var tipText = "Gi&agrave acquistato " + data.articoliricerca[i].art_acq + " volte";
                        listArticoli = listArticoli + "<td><img src=./src/images/chart-simple-solid-full.png class = ' infoCatalogo icoDimension' " +
                            " alt='" + tipText + "' title='" + tipText + "'></img></td>";
                    } else {
                        listArticoli = listArticoli + "<td><img src=./src/images/vuota.png></td>";
                    }
                  listArticoli = listArticoli + "</tr><tr>";
				  
                    
                  var almenoUnaPromo = false;
				 
                  for (var x = 0; x < data.artinpromo.length; x++) {         
					if (data.artinpromo[x].articolo.trim() == data.articoliricerca[i].cod_art.trim()) {
                       var imgSrc = "./src/images/Promozioni.png";
                       var imgClass = "infoCatalogo";
                       if (promoDaSconti == 1) {
                         imgSrc = "./src/images/promodasconti.png";
                         imgClass = "blinkImage";
                       }
                       listArticoli = listArticoli + "<td><img src=" + imgSrc +" class='" + imgClass + " artOfferta imgPromoArtMob' title='Articolo in Promozione" +
                                 ", clicca qui per vedere le promo di questo articolo' alt='Articolo in Promozione" +
                                  ", clicca qui per vedere le promo di questo articolo'" +
                                  " id='imgPromoArt' promo='" + data.artinpromo[x].promo.trim() + "' " +
                                  "art='" + data.articoliricerca[i].cod_art.trim() + "'></td>";
                       almenoUnaPromo = true;
                       break;
                    }
                  }
                  if (!almenoUnaPromo) {
                    listArticoli = listArticoli + "<td><img src=./src/images/vuota.png ></td>";
                  }
				  
				  				  
               // Icona in offerta
               /*   if (isWorkspace && ((data.articoliricerca[i].prezzoStd > 0 && !artInPromozione) || data.articoliricerca[i].scontoPrAcq1 || 
                                      data.articoliricerca[i].scontoPrAcq2 || 
                                      data.articoliricerca[i].scontoPrAcq3 || 
                                      data.articoliricerca[i].scontoPrAcq4 || 
                                      data.articoliricerca[i].scontoPrAcq5 || 
                                      data.articoliricerca[i].scontoPrAcq6)) {
                    var scontoconf = "Offerta speciale!";
                   // imgSrc = "./src/images/euro_icon_small.png";
                   // listArticoli = listArticoli + "<td><img src=" + imgSrc +" class='infoCatalogo icoDimension' title='" + scontoconf +"'</td>";
				   // listArticoli = listArticoli + "<td><i class='fa-solid fa-sack-dollar fa-bounce fa-xl' style='color: #d6cc0c;' title='" + scontoconf +"'></i></td>";
						listArticoli = listArticoli + "<td><i class='fa-solid fa-sack-dollar fa-fade fa-xl' style='color: #d6cc0c;' title='" + scontoconf +"'></i></td>";
                  } else {
                    listArticoli = listArticoli + "<td><img src=./src/images/vuota.png ></td>";
                  }		
				 */ 
			

                  if (data.articoliricerca[i].scontoCf1 > 0 && data.articoliricerca[i].scontoCf1 > data.articoliricerca[i].scontoStd1 
                     || data.articoliricerca[i].scontoCf2 > 0 && data.articoliricerca[i].scontoCf2 > data.articoliricerca[i].scontoStd2 
                     || data.articoliricerca[i].scontoCf2 > 0 || data.articoliricerca[i].scontoCf2 > 0 
                     || data.articoliricerca[i].scontoCf2 > 0 || data.articoliricerca[i].scontoCf2 > 0 ){

                    var scontoconf = "Sconto per confezione intera o multipli: ";

                    if (data.articoliricerca[i].scontoCf1 > 0) { scontoconf = scontoconf + data.articoliricerca[i].scontoCf1 + "%"; }
                    if (data.articoliricerca[i].scontoCf2 > 0) { scontoconf = scontoconf + " + " + data.articoliricerca[i].scontoCf2 + "%"; }
                    if (data.articoliricerca[i].scontoCf3 > 0) { scontoconf = scontoconf + " + " + data.articoliricerca[i].scontoCf3 + "%"; }
                    if (data.articoliricerca[i].scontoCf4 > 0) { scontoconf = scontoconf + " + " + data.articoliricerca[i].scontoCf4 + "%"; }
                    if (data.articoliricerca[i].scontoCf5 > 0) { scontoconf = scontoconf + " + " + data.articoliricerca[i].scontoCf5 + "%"; }
                    if (data.articoliricerca[i].scontoCf6 > 0) { scontoconf = scontoconf + " + " + data.articoliricerca[i].scontoCf6 + "%"; }

                    listArticoli = listArticoli + "<td><img src=./src/images/Box-icon.png title= '" + scontoconf + "' alt= '" + scontoconf + "' height=28' width='28'></td>";
                  } else {
                    listArticoli = listArticoli + "<td><img src=./src/images/vuota.png ></td>";
                  }

                  if (data.articoliricerca[i].qta_min > 0 && data.articoliricerca[i].scontoOpz1 > 0){
                  
                     var scontoconf = "Sconto " + data.articoliricerca[i].scontoOpz1 + "%" + " per quantit&agrave; minima " + data.articoliricerca[i].qta_min + " "  + data.articoliricerca[i].uni_mis.trim();

                     listArticoli = listArticoli + "<td><img src=./src/images/Box-icon.png title= '" + scontoconf + "' alt= '" + scontoconf + "' height=28' width='28'></td>";
                  }


                  listArticoli = listArticoli + "</tr>";
                                                                
                  listArticoli = listArticoli + "</table></div>";
                  
                } else {
                    listArticoli = listArticoli + "<div class='table-td-bottom-border table-carrello-desktp text-right'>" + data.articoliricerca[i].qta_conf + "</div></div>";
                }
                // 20210715 aggiungo record per tabella mobile
                  if (loggato) {
                  	listArticoli = listArticoli +  "<div class ='table-td carrello-mobile font90Perc'>";
                    listArticoli = listArticoli +  "<div class='margin-left-5 margin-bottom-5 '>" + $.trim(data.articoliricerca[i].desart) + "</div>";
                    listArticoli = listArticoli +  "<div class='margin-left-5 margin-bottom-5 '>Cod: " + $.trim(data.articoliricerca[i].cod_art) + "</div>";
                    listArticoli = listArticoli +  "<div class='margin-left-5 margin-bottom-5 '>Barcode: " + $.trim(data.articoliricerca[i].barcode) + "</div>";
                    listArticoli = listArticoli +  "<div class='margin-left-5 margin-bottom-5 '>Misura: " + $.trim(data.articoliricerca[i].misura) + "</div>";
                    listArticoli = listArticoli +  "<div class='flex-row '><div class='margin-left-5 margin-bottom-5 '>UM: " + $.trim(data.articoliricerca[i].uni_mis) + "</div>";
                    if (confVenditaVariabile) {
                       listArticoli = listArticoli +  "<div class='margin-bottom-5 padding-left-20 '>Conf.vendita:" + data.articoliricerca[i].qta_conf + "</div>" + 
                                          "<div class='margin-bottom-5 padding-left-20'>Imballo: " + data.articoliricerca[i].qta_conf_primaria + " " + data.articoliricerca[i].uni_mis_primaria + "</div></div>";
                    } else {
                      listArticoli = listArticoli +  "<div class='margin-left-5 margin-bottom-5 padding-left-20'>Conf: " + data.articoliricerca[i].qta_conf + "</div></div>";                      
                    }
                    // Se devo visualizzare giacenza numerica
                    if (showGiacenzaNumerica == "1"){
                       listArticoli = listArticoli + "<div class='flex-row margin-left-5 margin-bottom-5'><div>Disp. </div>";
                       if (clienteAttuale == "" && magazzinoCompetenza == "") {
                         var tipText = "";
                         var inArrivo = 0;
                         var novita = 0;
                         for (var x = 0; x < data.giacenza.length; x++) {
                           if (data.giacenza[x].articolo.trim() == data.articoliricerca[i].cod_art.trim()) {
                             var disp = data.giacenza[x].disp;     
                             listArticoli = listArticoli + "<div class='margin-left-5 text-prz font120Perc fontBold'>" + disp + "</div></div>";
                           }
                         }
                       } else {
                         for (var x = 0; x < data.giacenza.length; x++) {
                          if (data.giacenza[x].articolo.trim() == data.articoliricerca[i].cod_art.trim()) {
                            inArrivo = data.giacenza[x].in_arrivo;
                            novita = data.giacenza[x].novita;
                            if (data.giacenza[x].mag.trim() == magazzinoCompetenza.trim()) {
                              giacenza = data.giacenza[x].disp;
                              listArticoli = listArticoli + "<div class='margin-left-5 text-prz font120Perc fontBold'>" + giacenza + "</div></div>";
                            }
                          }
                         }
                       }
                    }
                    
                    // Se presenti aggiungo i dati aggiuntivi articolo 
                    if (data.articoliricerca[i].linea.trim() != "") {
                      listArticoli = listArticoli + "<div class='margin-left-5 margin-bottom-5 '>Linea: " + data.articoliricerca[i].linea.trim() + "</div>";
                    }
                    if (data.articoliricerca[i].colore.trim() != "") {
                      listArticoli = listArticoli + "<div class='margin-left-5 margin-bottom-5'>Colore: " + data.articoliricerca[i].colore.trim() + "</div>";
                    } 
                    if ( data.articoliricerca[i].materiale.trim() != "") {
                       listArticoli = listArticoli + "<div class='margin-left-5 margin-bottom-5'>Materiale: " + data.articoliricerca[i].materiale.trim() + "</div>";
                    } 
                    if (data.articoliricerca[i].altezza != 0) {
                      listArticoli = listArticoli + "<div class='margin-left-5 margin-bottom-5 '>Altezza: " + data.articoliricerca[i].altezza + "</div>";
                    }
                    if (data.articoliricerca[i].larghezza != 0) {                      
                      listArticoli = listArticoli + "<div class='margin-left-5 margin-bottom-5 '>Larghezza: " + data.articoliricerca[i].larghezza + "</div>";
                    }
                    if (data.articoliricerca[i].lunghezza != 0) {                                
                       listArticoli = listArticoli + "<div class='margin-left-5 margin-bottom-5 '>Lunghezza: " + data.articoliricerca[i].lunghezza + "</div>";
                    }
                    if (data.articoliricerca[i].um_capacita.trim() != "") { 
                      listArticoli = listArticoli + "<div class='margin-left-5 margin-bottom-5 '>Capacita: " + data.articoliricerca[i].um_capacita.trim() + 
                                                    "&nbsp" + data.articoliricerca[i].capacita + "</div>";
                    } 
                    if (data.articoliricerca[i].diametro != 0 ) {
                      listArticoli = listArticoli + "<div class='margin-left-5 margin-bottom-5 '>Diametro: " + data.articoliricerca[i].diametro + "</div>";
                    }
                    //listArticoli = listArticoli +  "</div>";
                    // testata prezzi
                    var przDiv = "<div class='margin-bottom-10 prezziMobile'>";	
                    //przDiv = przDiv + "<div>";							
                    var headerPrezzo = "PREZZO";
                    if (prezziRaddoppiati == 1) {
                      headerPrezzo = "PREZZO<br>AL<br>PUBBLICO";
           			}
                    przDiv = przDiv + "<div class='margin-left-5'>" + headerPrezzo + "</div><div class='margin-left-5 text-prz font120Perc'><b>";
                    if (prezziNascosti == 1) {
                       przClass = "textshadow-prz";   
                       przClassSconti = "textshadow-prz";                                        
                    } 
					          
                    if (prezziRaddoppiati == 1) {
                        przDiv = przDiv.trim() + prezzoVendita;
                        przClassSconti = "textshadow-prz";   
                    } else {
                       przDiv = przDiv.trim() + prezzo; 
                    }                          
                    przDiv = przDiv + " &euro;</b></div>"                          
					          if (numScoGest >= 1) {
					  	         przDiv = przDiv + "<div class='margin-left-10'>SC.1: </div><div class='margin-left-5 text-prz font120Perc'><b>" + data.articoliricerca[i].scontoStd1 +" %</b></div>";
			              }
          					if (numScoGest >= 2) {
          							przDiv = przDiv + "<div class='margin-left-10'>SC.2: </div><div class='margin-left-5 text-prz font120Perc'><b>" + data.articoliricerca[i].scontoStd2 +" %</b></div>";
          					}		
          					if (numScoGest >= 3) {
          							przDiv = przDiv + "<div class='margin-left-10'>SC.3: </div><div class='margin-left-5 text-prz font120Perc'><b>" + data.articoliricerca[i].scontoStd3 +" %</b></div>";
          					}	
          					if (numScoGest >= 4) {
          							przDiv = przDiv + "<div class='margin-left-10'>SC.4: </div><div class='margin-left-5 text-prz font120Perc'><b>" + data.articoliricerca[i].scontoStd4 +" %</b></div>";
          					}				
          					if (numScoGest >= 5) {
          							przDiv = przDiv + "<div class='margin-left-10'>SC.5: </div><div class='margin-left-5 text-prz font120Perc'><b>" + data.articoliricerca[i].scontoStd5 +" %</b></div>";
          					}						
          					if (numScoGest >= 6) {
          							przDiv = przDiv + "<div class='margin-left-10'>SC.6: </div><div class='margin-left-5 text-prz font120Perc'><b>" + data.articoliricerca[i].scontoStd6 +" %</b>/p></div>";
          					}	
          													
          					przDiv = przDiv + "</div>"; // Chiusura header
                    // dettaglio prezzi
                    
         					   
                    listArticoli = listArticoli +  przDiv; 
                    // Quantità e aggiungi al carrello
                    var qtaDiv =  "<div class='display-table vert-align-middle text-center'><div class='qtaMinusPlus'><div class='arrowDwMobile arrowDwMobile" + capofilaOk + "'><img  src='./src/images/minus.png'  class = 'minusPlusIcon'></img></div>" + 
                               "<div class='qtaFld'><input class='inputQtaMobile  inputQtaMobile" + capofilaOk + "' ";
                
                    qtaDiv = qtaDiv +  " id='CAT_MOBILE_" + $.trim(data.articoliricerca[i].cod_art.replace(/\//g, "S").replace(/\./g, "D")) + "' type='text' autocomplete='off' value='" + qta +
                       "'  ";
                    if (clienteAttuale == "") {
                      qtaDiv = qtaDiv + " disabled";
                    }
               
                      qtaDiv = qtaDiv + "></input></div><div class='arrowUpMobile arrowUpMobile" + capofilaOk + "'><img  src='./src/images/add.png' class = 'minusPlusIcon'></img></div>";
                  
                    //if (showQtaInCatalogo == "1") {
                       qtaDiv = qtaDiv + "<div class='display-table div-width-30 vert-align-middle'><div class='addCartWish'>" +
                       "<img  src='./src/images/shopping-cart-plus.png' class = 'icoDimension addCarrelloDirettoMobile addCarrelloDirettoMobile" + capofilaOk + " margin-left-5 margin-right-5' id='ADD_DIRECT_MOBILE_" + $.trim(data.articoliricerca[i].cod_art.replace(/\//g, "S").replace(/\./g, "D")) + "'" +
                            " alt='Aggiungi al carrello' ' title='Aggiungi al carrello'></img>";   
                    //}    
                    if (loggato) {
						           var in_wishlist = data.articoliricerca[i].wlist;
		                   if (in_wishlist == 1){
							            qtaDiv = qtaDiv +  "<img src=./src/images/Star-icon-green.png class= 'icoDimension addWishListMobile addWishListMobile"  + capofilaOk + " margin-left-5 margin-right-5' id='ADD_WISHLIST_MOBILE_" + $.trim(data.articoliricerca[i].cod_art.replace(/\//g, "S").replace(/\./g, "D")) + "'" +
                            " alt='Articolo presente nei preferiti. Clicca per aggiungere ulteriore quantita\'' title='Articolo presente nei preferiti. Clicca per aggiungere ulteriore quantita\''></img>";                                 
						           } else {
							           qtaDiv = qtaDiv +  "<img src=./src/images/Star-icon.png class= 'icoDimension addWishListMobile addWishListMobile" + capofilaOk + " margin-left-5 margin-right-5' id='ADD_WISHLIST_MOBILE_" + $.trim(data.articoliricerca[i].cod_art.replace(/\//g, "S").replace(/\./g, "D")) + "'" +
                            " alt='Aggiungi ai preferiti' title='Aggiungi ai preferiti'></img>";   							
						          }
                    // volantino
                      var volantinoImg = "./src/images/Flyer.png";
                      var tipVolantino = "Aggiungi a un volantino";
                      if (CommonApis.getArticoliVolantini().indexOf(data.articoliricerca[i].cod_art.trim()) != -1) {
                        volantinoImg = "./src/images/Flyer-green.png";
                        tipVolantino = "Articolo presente in un volantino. Clicca per aggiungerlo a un altro volantino";
                      } 
                      qtaDiv = qtaDiv +  "<img src=" + volantinoImg + " class= 'icoDimension imgDetailArticoloStart addVolantinoMobile margin-left-5 margin-right-5'" +
                                         " alt='" + tipVolantino + "' title='" + tipVolantino + "'></img>";
                   }              
                   listArticoli = listArticoli + "<div class='margin-bottom-10 qtaMobile'>" + qtaDiv + "</div></div></div>";
                    
                    // Icone
                    // Primo acquisto
                    var iconDiv = "<div class='flex-row margin-top-10 margin-bottom-10'><table><tr>";
                    if (isWorkspace && (data.articoliricerca[i].scontoPrAcq1 || 
                                      data.articoliricerca[i].scontoPrAcq2 || 
                                      data.articoliricerca[i].scontoPrAcq3 || 
                                      data.articoliricerca[i].scontoPrAcq4 || 
                                      data.articoliricerca[i].scontoPrAcq5 || 
                                      data.articoliricerca[i].scontoPrAcq6)) {
                        var scontoconf = "Offerta speciale!";
                        imgSrc = "./src/images/Sale.png";
                        iconDiv = iconDiv + "<td><img src='" + imgSrc + "'' class='carrelloIconMobile' title='" + scontoconf +"'</td>";
                    } else {
                        iconDiv = iconDiv + "<td><img src='./src/images/vuota.png' ></td>";
                    }
				
                    // Giacenza
                    if (showGiacenzaNumerica == "0") {
                    if (clienteAttuale == "" && magazzinoCompetenza == "") {
                      var tipText = "";
                      var inArrivo = 0;
                      var novita = 0;
                      for (var x = 0; x < data.giacenza.length; x++) {
                        if (data.giacenza[x].articolo.trim() == data.articoliricerca[i].cod_art.trim()) {
                           var mag = data.giacenza[x].mag.trim();
                           var disp = data.giacenza[x].disp;
                           inArrivo = data.giacenza[x].in_arrivo;
                           novita = data.giacenza[x].novita;
                           tipText = tipText + "Magazzino " + mag + ": " + disp + "\n";
                        }
                      }
                      
                  
                      iconDiv = iconDiv + "<td><img src=./src/images/Status-battery-100.png  class = 'carrelloIconMobile' alt='" + tipText + "' title='" + tipText + "'></img></td>";
                      if (inArrivo == 1) {
                        iconDiv = iconDiv + "<td><img class=' infoCatalogo carrelloIconMobile icoDimension ' src='./src/images/New.png'" +
                                " alt='Novit&#224;' " +
                                "title='Novit&#224;'></td>";
                        iconDiv = iconDiv + "<td><img class='carrelloIconMobile' src='./src/images/Inarrivo.png'" +
                                " alt='In Arrivo.\n Il materiale verr&#224 consegnato appena arriver&#224; in magazzino.' " +
                                "title='In Arrivo.\n Il materiale verr&#224 consegnato appena arriver&#224; in magazzino.'></i></td>";
                      } else if (inArrivo == 0 && novita > 0) {
                           iconDiv = iconDiv + "<td><img class=' infoCatalogo carrelloIconMobile icoDimension ' src='./src/images/New.png'" +
                                " alt='Novit&#224;' " +
                                "title='Novit&#224;'></td>";
                      } else if (inArrivo == 0 && novita == 0) {
                           iconDiv = iconDiv + "<td><img src=./src/images/vuota.png></td>";
                      }

          
                    } else {
                      var inArrivo = 0;
                      var novita = 0;
                      var giacenza = 0;
                      if (data.giacenza.length == 0) {
                        
                         // 20210427 listArticoli = listArticoli + "<td><img src=./src/images/battery-empty.png " +
                         iconDiv = iconDiv + "<td><img src=./src/images/Status-battery-low.png class = 'carrelloIconMobile icoDimension' " +
                                                       " alt='Non disponibile' title='Non disponibile'></img></td>";
                      
                      }
                      for (var x = 0; x < data.giacenza.length; x++) {
                        if (data.giacenza[x].articolo.trim() == data.articoliricerca[i].cod_art.trim()) {
                           inArrivo = data.giacenza[x].in_arrivo;
                           novita = data.giacenza[x].novita;
                           if (data.giacenza[x].mag.trim() == magazzinoCompetenza.trim()) {
                             giacenza = data.giacenza[x].disp;
                               if (data.giacenza[x].acq_interc == 'S') {
                                 iconDiv = iconDiv + "<td><img src=./src/images/vuota.png></td>";
                               } else if (data.giacenza[x].disp > 0) {
                                 
                                 iconDiv = iconDiv + "<td><img src=./src/images/Status-battery-100.png class = ' icoDimension' " +
                                 " alt='Disponibile' title='Disponibile'></img></td>";
                               } else {
                                 
                                 iconDiv = iconDiv + "<td><img src=./src/images/Status-battery-low.png class = ' icoDimension'" +
                                 " alt='Non disponibile' title='Non disponibile'></img></td>";
                               }
                              
                           }
                           if (inArrivo == 1 && giacenza == 0 || inArrivo == 0 && novita > 0 && giacenza == 0 ) {
                              
                                iconDiv = iconDiv + "<td><img class='inarrivoMobile' src='./src/images/Inarrivo.png'" +
                                " alt='Nuovo assortimento in arrivo.\n Il materiale verr&#224; consegnato appena disponibile in magazzino.' " +
                                "title='Nuovo assortimento in arrivo.\n Il materiale verr&#224; consegnato appena disponibile in magazzino.'></i></td>";
                           }  else if (inArrivo == 0 && novita > 0 && giacenza > 0) {
                             iconDiv = iconDiv + "<td><img  class=' icoDimension ' src=./src/images/New.png" +
                               " alt='Novit&#224;' " +
                                "title='Novit&#224;'></td>";
                           } else if (inArrivo == 1 && giacenza > 0) {
                             iconDiv = iconDiv + "<td><img src=./src/images/vuota.png></td>";
                           } else if (inArrivo == 0 && novita == 0) {
                             iconDiv = iconDiv + "<td><img src=./src/images/vuota.png></td>";
                           }
                           break;
                        }
                      }    
                    }
                  } 

                  var almenoUnaPromo = false;
                  for (var x = 0; x < data.artinpromo.length; x++) {
                    if (data.artinpromo[x].articolo.trim() == data.articoliricerca[i].cod_art.trim()) {
                       var imgSrc = "./src/images/Promozioni.png";
                       if (promoDaSconti == 1) {
                         imgSrc = "./src/images/promodasconti.png";
                       }
                       iconDiv = iconDiv + "<td><img src=" + imgSrc +" class='blinkImage imgPromoArtMob artOfferta' title='Articolo in Promozione" +
                                 ", clicca qui per vedere le promo di questo articolo' alt='Articolo in Promozione" +
                                  ", clicca qui per vedere le promo di questo articolo' " + 
								  " cpf='" + capofilaOk + "' " +
								  " id='imgPromoArt' art='" + data.articoliricerca[i].cod_art.trim() + "' promo='" + data.artinpromo[x].promo.trim() + "'></td>";
                       almenoUnaPromo = true;
                       break;
                    }
                  }
                  if (!almenoUnaPromo) {
                    iconDiv = iconDiv + "<td><img src=./src/images/vuota.png ></td>";
                  }                            
                    iconDiv = iconDiv + "</tr></table></div>";
                    listArticoli = listArticoli + "<div class='margin-top-10 margin-bottom-5'>" + iconDiv + "</div></div></div></div></div>"; 
                  } 
              }

               // Se richiesto capofila monoarticolo, non visualizzo bottone
              if (actCapofila != capofilaToShow && almenoUno) {
                actCapofila = capofilaToShow;
                if (ricercaCapofilaMonoarticolo == "1" && numArtDelCapofila == 1 
                    || ricercaSempreArticoli == "1" && numArtDelCapofila > 1
                    || CatalogoFiltriWidget.isShowNovita()
                    || CatalogoFiltriWidget.isShowBestseller()
                    || CatalogoFiltriWidget.isCapofilaFromAutocomplete()) {
                } else {
                    //if (data.articoliricerca.length > 1) {
                        listArticoli = listArticoli +  "</div><br><div class='btnChiudiArticoliMaster div-width-20'><span>" + 
                           "<div  class='btnChiudiArticoli margin-left-10 margin-right-10 width50' style='background-color:" + windowBackgroundColor +";' "+
						               "id='closeImage' class='btnChiudiArticoli' cpf='" + $.trim(data.articoliricerca[0].capofila) + 
                                "' isarticolo='" + $.trim(data.articoliricerca[0].isArticolo) + "' image='" + image + "' cod=''>" +
                            "Nascondi articoli</div></span></div>";
                    //}
                }
				
				/*DAVIDE: vecchio bottone non più usato*/
                listArticoli = listArticoli + "<span style='padding-left: 25%'><button alt='Aggiungi al carrello' title='Aggiungi al carrello' " +
                            "onClick='addCarrelloArticoliTabella()' id='addCarrelloBtnTable" + $.trim(data.articoliricerca[0].capofila) + "' style='display:none'>Aggiungi al carrello</button></span>" +
                            "</div>";

                $( "#" + capofilaOk ).empty().html( listArticoli );
				
				        aggiungiListenersCatalogoBtnChiudi();

                var width = $("#btn" + capofilaOk).width();
                if (width == 0) {
                  width = $("#catalogoImageInfo").width();
                }
                if (width == 0) {
                  width = 150;
                }
				
                aggiungiListenerCatalogo(capofilaOk);
               // 20251230 Alessandro $(".rowTableArticoliAlt").css("background-color", altRowColor);
                //Alessandro 20220919 $("#closeImage").css("width", width);
            

				if (!CatalogoFiltriWidget.isViewGrid()) {
					$("#btn" + capofilaOk ).hide();
				}else{
					$("#btnGrid" + capofilaOk ).hide();
                  } 	
                  if (CatalogoFiltriWidget.isShowNovita()) {
                      CatalogoFiltriWidget.setShowNovita(false);
                      CatalogoFiltriWidget.resetRicercheFatte();
                  }
                  if (CatalogoFiltriWidget.isShowBestseller()) {
                      CatalogoFiltriWidget.setShowBestseller(false);
                      CatalogoFiltriWidget.resetRicercheFatte();
                  }
                  
        if (loggato) {
          var inputdataCk = $("#" + capofilaOk + " div .selCkCat");
          var inputdata = $("#" + capofilaOk + " div .inputQta");
		  var inputdataMobile = $("#" + capofilaOk + " div .inputQtaMobile");
          var inputdataUp = $("#" + capofilaOk + " div .arrowUp");
		  var inputdataUpMobile = $("#" + capofilaOk + " div .arrowUpMobile");
          var inputdataDown = $("#" + capofilaOk + " div .arrowDw");
		  var inputdataDownMobile = $("#" + capofilaOk + " div .arrowDwMobile");
          var dataImg = $("#" + capofilaOk  + " div .infoIcon");
          var addCarrelloDiretto = $("#" + capofilaOk  + " div .addCarrelloDiretto");
          var addCarrelloDirettoMob = $("#" + capofilaOk  + " div .addCarrelloDirettoMobile");
          var addWishListData = $("#" + capofilaOk  + " div .addWishList");
          var addWishListDataMob = $("#" + capofilaOk  + " div .addWishListMobile");
          var addVolantinoData = $("#" + capofilaOk  + " div .addVolantino");
          var addVolantinoDataMob = $("#" + capofilaOk  + " div .addVolantinoMobile");
          var przData = $("#" + capofilaOk  + " div .artTablePrz");
          var promoOkListCod = [];
          var codProScelta;   //serve ad aggiornare la qta di una riga nel carrello (anzich? crearne una nuova) se ho pi? volte lo stesso articolo in ordine su pi? promo differenti
          var i2 = 0;
          for( var i = 0; i < data.articoliricerca.length; i++ ) {
                    
					//var insPromo = "";
					var insPromo = [];
					if (readCookie("addPromoAuto") == null ) {
						gestPromoAutoCookie();
					}
					var addPromoAuto = readCookie("addPromoAuto");
		 
		 
					if (insPromoDirettamenteDaCatalogo == 1 && addPromoAuto == "1"){
						var listPromo = CommonApis.getListPromoArticolo(data, data.articoliricerca[i].cod_art);					
						if (listPromo.length > 0){
							for (var y = 0; y < listPromo.length; y++){
								//insPromo = listPromo[0];
								insPromo.push(listPromo[y]);
							}
						}
					}
                    $.data(inputdata[i2],"data",{

                        num_rig:0,
                        cod_art:data.articoliricerca[i].cod_art.trim(),
                        qta_conf:data.articoliricerca[i].qta_conf,
                        risp_conf:data.articoliricerca[i].risp_conf,
                        risp_conf_mand:data.risp_conf_mand,
                        insPromo:insPromo,
                        
                    });

                    $.data(inputdataMobile[i2],"data",{

                        num_rig:0,
                        cod_art:data.articoliricerca[i].cod_art.trim(),
                        qta_conf:data.articoliricerca[i].qta_conf,
                        risp_conf:data.articoliricerca[i].risp_conf,
                        risp_conf_mand:data.risp_conf_mand,
						insPromo:insPromo,
                        
                        
                    });
					
					$.data(inputdataCk[i2],"data",{

                        num_rig:0,
                        cod_art:data.articoliricerca[i].cod_art.trim(),
                        qta_conf:data.articoliricerca[i].qta_conf,
                        risp_conf:data.articoliricerca[i].risp_conf,
                        risp_conf_mand:data.risp_conf_mand,
						promoOkListCod:promoOkListCod,
						codProScelta:codProScelta,
                        prz:data.articoliricerca[i].prezzoLis,
                        sco1:data.articoliricerca[i].scontoStd1,
                        sco2:data.articoliricerca[i].scontoStd2,
                        sco3:data.articoliricerca[i].scontoStd3,
                        sco4:data.articoliricerca[i].scontoStd4,
                        sco5:data.articoliricerca[i].scontoStd5,
                        sco6:data.articoliricerca[i].scontoStd6,
						insPromo:insPromo,
                        
                    });
                    
                    $.data(inputdataUp[i2],"data",{
                        num_rig:0,
                        cod_art:data.articoliricerca[i].cod_art.trim(),
                        qta_conf:data.articoliricerca[i].qta_conf,
                        risp_conf:data.articoliricerca[i].risp_conf,
                        risp_conf_mand:data.risp_conf_mand
                        
                    });
					
                    $.data(inputdataUpMobile[i2],"data",{
                        num_rig:0,
                        cod_art:data.articoliricerca[i].cod_art.trim(),
                        qta_conf:data.articoliricerca[i].qta_conf,
                        risp_conf:data.articoliricerca[i].risp_conf,
                        risp_conf_mand:data.risp_conf_mand
                        
                    });					
                                        
                    $.data(inputdataDown[i2],"data",{
                        num_rig:0,
                        cod_art:data.articoliricerca[i].cod_art.trim(),
                        qta_conf:data.articoliricerca[i].qta_conf,
                        risp_conf:data.articoliricerca[i].risp_conf,
                        risp_conf_mand:data.risp_conf_mand
                        
                    });                    
                            
                                                            
                    $.data(inputdataDownMobile[i2],"data",{
                        num_rig:0,
                        cod_art:data.articoliricerca[i].cod_art.trim(),
                        qta_conf:data.articoliricerca[i].qta_conf,
                        risp_conf:data.articoliricerca[i].risp_conf,
                        risp_conf_mand:data.risp_conf_mand
                        
                    });     
					
                      $.data(addCarrelloDiretto[i2],"data",{
                        num_rig:0,
                        cod_art:data.articoliricerca[i].cod_art.trim(),
                        qta_conf:data.articoliricerca[i].qta_conf,
                        risp_conf:data.articoliricerca[i].risp_conf,
                        risp_conf_mand:data.risp_conf_mand
                        
                      });
                      $.data(addCarrelloDirettoMob[i2],"data",{
                        num_rig:0,
                        cod_art:data.articoliricerca[i].cod_art.trim(),
                        qta_conf:data.articoliricerca[i].qta_conf,
                        risp_conf:data.articoliricerca[i].risp_conf,
                        risp_conf_mand:data.risp_conf_mand
                        
                      });
                               
                    $.data(addWishListData[i2],"data",{                                               
                        cod_art:data.articoliricerca[i].cod_art.trim(),
                        qta_conf:data.articoliricerca[i].qta_conf,
                        risp_conf:data.articoliricerca[i].risp_conf,
                        risp_conf_mand:data.risp_conf_mand,
                        prz:data.articoliricerca[i].prezzoLis,
                        sco1:data.articoliricerca[i].scontoStd1,
                        sco2:data.articoliricerca[i].scontoStd2,
                        sco3:data.articoliricerca[i].scontoStd3,
                        sco4:data.articoliricerca[i].scontoStd4,
                        sco5:data.articoliricerca[i].scontoStd5,
                        sco6:data.articoliricerca[i].scontoStd6,
                    });
                    $.data(addWishListDataMob[i2],"data",{                                               
                        cod_art:data.articoliricerca[i].cod_art.trim(),
                        qta_conf:data.articoliricerca[i].qta_conf,
                        risp_conf:data.articoliricerca[i].risp_conf,
                        risp_conf_mand:data.risp_conf_mand,
                        prz:data.articoliricerca[i].prezzoLis,
                        sco1:data.articoliricerca[i].scontoStd1,
                        sco2:data.articoliricerca[i].scontoStd2,
                        sco3:data.articoliricerca[i].scontoStd3,
                        sco4:data.articoliricerca[i].scontoStd4,
                        sco5:data.articoliricerca[i].scontoStd5,
                        sco6:data.articoliricerca[i].scontoStd6,
                    });
                    if (CommonApis.isGestVolantini()) {
                      $.data(addVolantinoData[i2],"data",{  
                        desart:data.articoliricerca[i].desart,                                              
                        cod_art:data.articoliricerca[i].cod_art.trim(),
                        um:data.articoliricerca[i].uni_mis,
                        qta_conf:data.articoliricerca[i].qta_conf,
                        risp_conf:data.articoliricerca[i].risp_conf,
                        risp_conf_mand:data.risp_conf_mand,
                        prz:data.articoliricerca[i].prezzoLis,
                        sco1:data.articoliricerca[i].scontoStd1,
                        sco2:data.articoliricerca[i].scontoStd2,
                        sco3:data.articoliricerca[i].scontoStd3,
                        sco4:data.articoliricerca[i].scontoStd4,
                        sco5:data.articoliricerca[i].scontoStd5,
                        sco6:data.articoliricerca[i].scontoStd6,
                      });
                      $.data(addVolantinoDataMob[i2],"data",{ 
                        desart:data.articoliricerca[i].desart,                                              
                        cod_art:data.articoliricerca[i].cod_art.trim(),
                        um:data.articoliricerca[i].uni_mis,
                        qta_conf:data.articoliricerca[i].qta_conf,
                        risp_conf:data.articoliricerca[i].risp_conf,
                        risp_conf_mand:data.risp_conf_mand,
                        prz:data.articoliricerca[i].prezzoLis,
                        sco1:data.articoliricerca[i].scontoStd1,
                        sco2:data.articoliricerca[i].scontoStd2,
                        sco3:data.articoliricerca[i].scontoStd3,
                        sco4:data.articoliricerca[i].scontoStd4,
                        sco5:data.articoliricerca[i].scontoStd5,
                        sco6:data.articoliricerca[i].scontoStd6,
                    });
                    }
                    if (loggato) {
                      if (data.articoliricerca[i].prezzoStd > 0){
                	      prezzoLordo = data.articoliricerca[i].prezzoStd;
					  } else {
					      prezzoLordo = data.articoliricerca[i].prezzoLis;
					  }                      
                      var prezzoVendita = prezzoLordo * 2;
                      
                      $.data(przData[i2],"data",{
                      
                        cod_art:data.articoliricerca[i].cod_art.trim(),
                        prz_lordo:prezzoLordo,
                        prezzoVendita:prezzoVendita,
                        capofila:data.articoliricerca[i].capofila.trim()
                      }); 
                                        
                      $.data(dataImg[i2],"dataImg",{

                        num_rig:0,
                        cod_art:data.articoliricerca[i].cod_art.trim(),
                        qta_conf:data.articoliricerca[i].qta_conf,
                        risp_conf:data.articoliricerca[i].risp_conf,
                        risp_conf_mand:data.risp_conf_mand,
                        colore:data.articoliricerca[i].colore.trim(),
                        materiale:data.articoliricerca[i].materiale.trim(),
                        capacita:data.articoliricerca[i].capacita,
                        um_capacita:data.articoliricerca[i].um_capacita.trim(), 
                        cf_inner:data.articoliricerca[i].cf_inner,
                        cf_master:data.articoliricerca[i].cf_master,
                        cf_pallet:data.articoliricerca[i].cf_pallet,
                        altezza:data.articoliricerca[i].altezza,
                        larghezza:data.articoliricerca[i].larghezza,
                        lunghezza:data.articoliricerca[i].lunghezza,
                        diametro:data.articoliricerca[i].diametro,
                        mand:mandatario.trim(),
                        nom_imm_p:data.articoliricerca[i].nom_imm_p.trim(),
                        barcode:data.articoliricerca[i].barcode.trim(),
                        descr:data.articoliricerca[i].desart.trim(),
                        desc_est:data.articoliricerca[i].desc_est.trim(),
                        capofila:data.articoliricerca[i].capofila.trim(),
                        uni_di_mis:data.articoliricerca[i].uni_mis.trim(),
                        prz_lordo:prezzoLordo,
                        sco1:data.articoliricerca[i].scontoStd1,
                        sco2:data.articoliricerca[i].scontoStd2,
                        sco3:data.articoliricerca[i].scontoStd3,
                        sco4:data.articoliricerca[i].scontoStd4,
                        sco5:data.articoliricerca[i].scontoStd5,
                        sco6:data.articoliricerca[i].scontoStd6,
                        misura:data.articoliricerca[i].misura.trim(),          
                        linea:data.articoliricerca[i].linea.trim(),
                        titolo:data.articoliricerca[i].titolo.trim(),  
                        prezzoVendita:prezzoVendita

                      });
                    }
                           
                    i2 ++;       

                  }    

                }
         
                if (ricercaArticolo) {
                  $( "#listCapofila" ).show();
                  ricercaArticolo = false;
                }

                $( "#" + idTabella ).slideDown();
                artViewed[capofilaOk] = 1;
                $("#desc" + capofilaOk).attr('alt', 'Nascondi articoli');
                $("#desc" + capofilaOk).attr('title', 'Nascondi articoli');
   
              }
             
           }
         } 
      }
      
      CatalogoFiltriWidget.setViewArtDaShopInCatalogo(false);
      CatalogoFiltriWidget.setCapofilaFromAutocomplete(false);
      var catalogoHeight = 0;
      var capofilaHeight = $(".capofilaDescEst").outerHeight();
      for (var xx = 0; xx < arrayCapofila.length; xx++) {
        if (artViewed[arrayCapofila[xx]] == 1) {            
           catalogoHeight = catalogoHeight + $("#" + arrayCapofila[xx] ).outerHeight() + capofilaHeight + 20;
       
        }                          
      }
      $("#shopInCatalogo").show();   

      //if (!CatalogoWidget.isShowCarrelloInCatalogo()) {
      if (document.getElementsByClassName("previewCarrello") == null) {
        CatalogoFiltriWidget.setPreferitiInCatalogo(false);
        CatalogoFiltriWidget.setCarrelloInCatalogo(false);      
		    CatalogoWidget.showCarrelloInCatalogo(".previewCarrello");
        $("#shopInCatalogo").css("height", CommonApis.getMaxWindowHeight());
        CatalogoWidget.setShowCarrelloInCatalogo(true);
      }

      //CommonApis.setBoxCapofilaOnTop("#capofilaData_" + capofilaOk.replace(";", "_"), 0); 
      CommonApis.setBoxCapofilaOnTop("#capofilaData_" + capofilaOk.replaceAll(";", "_"), 0);
	  
  
 }

    API.loadCatalogoInitialPage = function () {
        

        var listMrkCategorie = "<div id='filtriCatalogoScroll'><a href='#' id='showCatalogoFilterMobile' class='mobileBtn'><i class='toggleViewCatalogo fas fa-angle-double-right  menuListSize'></i></a></div>" +
            "<div class='filtriCatalogoWidth'>" +
            "<div class='filtriCatalogo border-radius-20 transition'><div id='filtriCatalogoMain' class='flex-column'>" +
            "<div class='sceltaTipoElenco'><div class='lblTipoElenco pos-center-center'>Visualizza:</div>" +
            "<div class='tipoElenco margin-top-5 margin-bottom-5'>" +
            "<div><input class='radioElencoCatalogo' type='radio' name='catalogoView' value='C'>Categora</div>" +
            "<div><input class='radioElencoCatalogo' type='radio' name='catalogoView' value='M'>Marchio</div>" + 
            "</div></div>" + 
            "<div class='listInizialiMrk padding-top-5'></div>" +
            "</div></div></div></div>";
        listMrkCategorie = listMrkCategorie + "<div class='catalogoInit'>";
        // Divisioni se più di una
        var divisioneAttiva = readCookie("divisioneAttiva");
        var arrDivisioni = CommonApis.getSessionData().divisioni_lis.split(",");

        if (arrDivisioni.length > 1 && CommonApis.getSessionData().mapperParms.showDivisioniCatalogo == 1) {
            listMrkCategorie = listMrkCategorie + "<div class='divisioniCatalogoInit'>";
            listMrkCategorie = listMrkCategorie + "<div class='divisioniCatalogoInit margin-bottom-10 margin-left-10 pos-cen-valign'>";
            listMrkCategorie = listMrkCategorie + "<div class='margin-right-10 pos-cen-valign'>Visualizza articoli della categoria:</div> ";
            listMrkCategorie = listMrkCategorie + "<ul>";
            for (var i = 0; i < nIdx; i++) {
                var tipText = "Visualizza le categorie della famiglia " + divisioni[i].toUpperCase().trim();
                listMrkCategorie = listMrkCategorie + "<li class='menuItem margin-right-10'><a name='divisioneCatalogo' divisione='" + divisioni[i].toUpperCase().trim() + "'" +
                    "href = '#' class='tabDivisioniPromoMercatino tabDivisioniCatalogoDft";
                if (divisioni[i].toUpperCase().trim() == divisioneAttiva) {
                    listMrkCategorie = listMrkCategorie + " divisionePromoAttiva";
                    divisioneAttiva = divisioni[i].toUpperCase().trim();
                }
                listMrkCategorie = listMrkCategorie + "' alt='" + tipText + "' title='" + tipText + "'>" + divisioni[i].toUpperCase().trim() +
                    "</a></li>";
            }
            listMrkCategorie = listMrkCategorie + "</ul></div></div>";
        }

        var flrImage = mandatario.trim();
        if (divisione != "") {
          flrImage = divisione.trim();
        }  
        if (CatalogoFiltriWidget.getDefaultCatalogoSearch() == "C") {
            listMrkCategorie = listMrkCategorie + "<div class='locandineCatalogo'>";
            for (var i = 0; i < CatalogoFiltriWidget.getArrayCategorie().length; i++) {
                if (CatalogoFiltriWidget.getArrayCategorie()[i].divisione.toUpperCase().trim() == divisioneAttiva && CommonApis.getSessionData().mapperParms.showDivisioniCatalogo == 1
                    ||
                   CommonApis.getSessionData().mapperParms.showDivisioniCatalogo == 0) {
                    var tiptext = "Visualizza gli articoli della categoria " + CatalogoFiltriWidget.getArrayCategorie()[i].descr.trim();
                    var livello = CatalogoFiltriWidget.getArrayCategorie()[i].liv1.trim();
                    var imgPath = CommonApis.getImgDir() + flrImage + "/livelli/LIV" + livello;
                    if (mrkImgExt != "undefined") {
                        imgPath = imgPath.trim() + mrkImgExt;
                    } else {
                        imgPath = imgPath.trim() + ".bmp";
                    }
                    listMrkCategorie = listMrkCategorie + "<div class='catalogoDftGrid border-radius-20'><div class='catalogoGrid2'>" +
                        "<img src=" + imgPath + " title='" + tiptext + "' alt ='" + tiptext + "' data-tooltip='" + tiptext + "' onerror='this.replaceWith(placeholderSVG(this.dataset.tooltip))' class='catalogoDftLevelImage' livello='" + livello + "'></div></div>";
                }
            }
            listMrkCategorie = listMrkCategorie + "</div>";
        }
        var arrayMrk = [];
        var arrayIniziali = [];
        if (CatalogoFiltriWidget.getDefaultCatalogoSearch() == "M") {
            listMrkCategorie = listMrkCategorie + "<div class='mrkCatalogo'>";
            for (var i = 0; i < CatalogoFiltriWidget.getArrayMarchi().length; i++) {
                if (CatalogoFiltriWidget.getArrayMarchi()[i].divisione.toUpperCase().trim() == divisioneAttiva && CommonApis.getSessionData().mapperParms.showDivisioniCatalogo == 1
                    ||
                   CommonApis.getSessionData().mapperParms.showDivisioniCatalogo == 0) {                    
                    var imgMrk = CatalogoFiltriWidget.getArrayMarchi()[i].imgmrk.trim().replace(/ /g, "%20");                    
                    var marchio = CatalogoFiltriWidget.getArrayMarchi()[i].marchio.trim();                    
                    if (arrayIniziali.indexOf(marchio.substring(0, 1)) == -1) {
                      arrayIniziali.push(marchio.substring(0, 1));
                    }
                    var tiptext = "Visualizza gli articoli del marchio " + marchio;             
                    var imgPath = CommonApis.getImgDir() + flrImage + "/marchi/" + imgMrk;
                    if (mrkImgExt != "undefined") {
                        imgPath = imgPath.trim() + mrkImgExt;
                    } else {
                        imgPath = imgPath.trim() + ".bmp";
                    }
                    if (arrayMrk.indexOf(marchio) == -1 && CatalogoFiltriWidget.getInizialeCatalogo().length != 0 
                        && CatalogoFiltriWidget.getInizialeCatalogo().indexOf(marchio.substring(0, 1)) != -1
                        ||
                        arrayMrk.indexOf(marchio) == -1 && CatalogoFiltriWidget.getInizialeCatalogo().length == 0) {
                        listMrkCategorie = listMrkCategorie + "<div class='catalogoDftGrid border-radius-20'><div class='catalogoDftGridMarchi'>" +
                            "<img src=" + imgPath + " title='" + tiptext + "' alt ='" + tiptext + "' data-tooltip='" + tiptext + "' onerror='this.replaceWith(placeholderSVG(this.dataset.tooltip))' class='catalogoDftMrkImage' mrk='" + marchio + "'></div></div>";
                        arrayMrk.push(marchio);
                    }
                }
            }
            listMrkCategorie = listMrkCategorie + "</div>";
        }
        listMrkCategorie = listMrkCategorie + "</div>";
        // Aggiungo le iniziali
        var listIniziali = "";
        if (arrayIniziali.length > 0) {
          listIniziali = "<div class='pos-center-center pos-cen-valign'>Cerca marchio:</div><div><ul>";
          $(".listInizialiMrk").addClass("border-top-1-ccc");
        }
        for (let i = 0; i < arrayIniziali.length; i++) {
            listIniziali += "<li class='inizialeMarchio margin-left-10'><input name='checkMrkCatalogoAll' type='checkbox' iniziale='" + arrayIniziali[i] + "'";
            if (CatalogoFiltriWidget.getInizialeCatalogo().indexOf(arrayIniziali[i]) != -1) {
              listIniziali += " checked";
            }
            listIniziali += ">" + arrayIniziali[i] + "</li>";
        }
        listIniziali += "</ul></div>";
        $(".catalogoResultNew").empty();       
        $("#gestioneCatalogo").empty().html(listMrkCategorie);
        $(".listInizialiMrk").empty().html(listIniziali);

        var radios = document.getElementsByName("catalogoView");
        for (var i = 0; i < radios.length; i++) {
            if (radios[i].value == CatalogoFiltriWidget.getDefaultCatalogoSearch()) {
                radios[i].checked = true;
                break;
            }
        }
        eraseCookie("divisioneAttiva");
        createCookie("divisioneAttiva", divisioneAttiva, 365);
        aggiungiListenersCatalogoDft();

    }

  API.setChiudiCarrelloFromCatalogo = function(value) {
    chiudiCarrelloFromCatalogo = value;
  } 
 
  API.isChiudiCarrelloFromCatalogo = function() {
    return chiudiCarrelloFromCatalogo;
  }
  
  API.setCatalogoLoaded = function(value) {
    isCatalogoLoaded = value;
  }

    API.removeLocalStorageCatalogo = function () {
        localStorage.removeItem("arrayNews");
        localStorage.removeItem("arrayCapofilaAutocomplete");
        localStorage.removeItem("arrayCategorie");
        localStorage.removeItem("arrayLastPromo");
        localStorage.removeItem("arrayLivelli");
        localStorage.removeItem("arrayMarchi");
        localStorage.removeItem("arrayNovita");
        localStorage.removeItem("arrayArtInPromo");
        localStorage.removeItem("arrayBestSellers");
    }

  API.isCatalogoLoaded = function() {
    return isCatalogoLoaded;
  } 
  API.setCapofilaResponse = function(data) {
    capofilaResponse = data;
  }

    API.clearCapofilaResponse = function () {
        capofilaResponse = [];
    }

  API.getCapofilaResponse = function() {
    return capofilaResponse;
  }

  API.setCapofilaPrimaRicerca = function(data) {
    capofilaPrimaRicerca = data;

    for (var i = 0; i < capofilaPrimaRicerca.length; i++) {
      if (!CatalogoFiltriWidget.getDivisioniPrimaRicerca().includes(capofilaPrimaRicerca[i].nome_divisione.trim())) {
        CatalogoFiltriWidget.getDivisioniPrimaRicerca()[CatalogoFiltriWidget.getDivisioniPrimaRicerca().length] = capofilaPrimaRicerca[i].nome_divisione.trim(); 
      }
    }
  }
      
  API.getCapofilaPrimaRicerca = function() {
    return capofilaPrimaRicerca;
  }
  
  API.setCategoriePrimaRicerca = function(data) {
    categoriePrimaRicerca = data;
  }
      
  API.getCategoriePrimaRicerca = function() {
    return categoriePrimaRicerca;
  }  

  API.setMarchiPrimaRicerca = function(data) {
    marchiPrimaRicerca = data;
  }
      
  API.getMarchiPrimaRicerca = function() {
    return marchiPrimaRicerca;
  }  
  
  API.setNumArtEspansi = function(val) {
    numArtEspansi = val;
  }
      
  API.getNumArtEspansi = function() {
    return numArtEspansi;
  }
    
  API.setCurrentPage = function(page) {
    currentPage = page;
  }
      
  API.getCurrentPage = function() {
    return currentPage;
  }
  
  API.setVisualizablePages = function(page) {
    visualizablePages = page;
  }
      
  API.getVisualizablePages = function() {
    return visualizablePages;
  }      
  API.getHtmlListCapofila = function() {
    return htmlListCapofila;
  }

  API.setHtmlListCapofila = function(html) {
      htmlListCapofila=html;
  }

  API.getHtmlListCapofilaGrid = function() {
    return htmlListCapofilaGrid;
  }

  API.setHtmlListCapofilaGrid = function(html) {
     htmlListCapofilaGrid=html;
  }

  
    API.creaHtmAggiungiArticolo = function() {
		var  html = "<div id='infoCarrello' class='infoAddCarrello'>";
    return html;  

  }
  
  
    API.creaHtmAggiungiArticoloAddDiv = function() {
    var html = "<div id='addCarrelloDiv' class='functionDiv flex-column margin-top-10'>" +	
			   "<div id='ArtSelDiv' class='numSelezionati'></div> " +
			   "<div id='addCarrelloBtn' class='addCarrelloBtnCls disable-div'>Aggiungi al carrello</div> " +			   
			   //"<div id='addCarrelloBtn' class='btnMostraArticoli disable-div'>Aggiungi al carrello</div> " +			   
	"</div>";
    return html;  

  }  
  
  
  API.riempiWorkspace = function() {
    //$(".boxNuoviArriviPromo").empty().html(CatalogoWidget.getHtmlTableNovita() +
    //CatalogoWidget.getHtmlTableLastPromo() + CatalogoWidget.getHtmlUltimiVisti());

    var htmlPromo = "";
    if (CommonApis.getSessionData().abilita_tab_promo != undefined && CommonApis.getSessionData().abilita_tab_promo != 0) {
      htmlPromo += CatalogoWidget.getHtmlTableLastPromo();
    }
    if (CommonApis.getSessionData().mapperParms.showArtInEvidenza == 1) {
      htmlPromo += CatalogoWidget.getHtmlTableArtInEvidenza();
    }
    htmlPromo += CatalogoWidget.getHtmlTableNovita();
    if (CommonApis.getSessionData().mapperParms.showBestsellers == 1) {
      htmlPromo += CatalogoWidget.getHtmlTableBestsellers();
    }
    htmlPromo += CatalogoWidget.getHtmlUltimiVisti();
    $(".boxNuoviArriviPromo").empty().html(htmlPromo);
  }
  

  API.setPaginator = function(totPages, visualizablePages, currentPage, fromCatalogo, fromOfferte) {
	  
	  
	  
     $('.pagination').twbsPagination({
               totalPages: totPages,
               visiblePages: visualizablePages,
               startPage: currentPage,
               first:"Inizio",
               last:"Fine",
               prev :"Precedente",
               next:"Successiva",
          
               onPageClick: function (event, page) {
                                                     var checks = document.getElementsByClassName("selCkCat");
                                                     nrCheck = 0;
                                                     for (var i = 0; i < checks.length; i++) {
                                                       if (checks[i].checked) {
                                                         nrCheck ++;
                                                       }
                                                     }
                                                     if (isWorkspace && nrCheck > 0) {
                                                       CatalogoWidget.setErrorOnPaginator(true);
                                                       CatalogoWidget.showErrorCarrello();
                                                     } else {  
                                                       if (fromCatalogo) {
                                                         var artViewed = [];
                                                         CatalogoWidget.setArtViewed(artViewed);
                                                         CatalogoWidget.setPage(page);
                                                       if (page == 1) {
                                                         CatalogoWidget.setOffset(0);
                                                       } else {
                                                         CatalogoWidget.setOffset((CommonApis.getLimit() * page) - CommonApis.getLimit());
                                                       }  

                                                       CatalogoWidget.setCurrentPage(page);
                                                       $(document).scrollTop(0);
                                                       CatalogoWidget.setResetPaginator(false);
                                                       showCapofila(CatalogoWidget.getCapofilaResponse());;
                                                     } else {
                                                       OfferteWidget.setCurrentPage(page);                                                    
                                                       $(document).scrollTop(0);
                                                       var marca = OfferteWidget.getMarchiPrimoAcquisto()[OfferteWidget.getIdViewed()].marca;
                                                       var offset = 0;
                                                       if (page > 1) {
                                                         offset = (CommonApis.getLimit() * page) - CommonApis.getLimit();  
                                                       }
                                                       CatalogoWidget.setOffset(offset);
                                                       OfferteWidget.showCapofilaOfferte();
                                                    }
                                                  }
                                                }
            });
  }

  API.setHtmlCarrelloInCatalogo = function() { 
   
   var htmlCarrello = "<div id='shopInCatalogoMaster' class='shopInCatalogo ov-auto'>" + 
                      "<div class='pos-center height50px'>" + 
                      "<div class='carrelloInCatalogo vaiACarrelloDaCatalogo div-width-50' alt='Visualizza carrello' title='Visualizza carrello'><i class='fa-solid fa-cart-shopping iconSize margin-top-15'></i>&nbsp(" + CommonApis.getNumRigheCarrello() + ")</div>" +
                      "<div class='carrelloInCatalogo vaiAWishDaCatalogo div-width-50' alt='Visualizza preferiti' title='Visualizza preferiti'><i class='fa-regular fa-star iconSize margin-top-15'></i>&nbsp(" + CommonApis.getNumRigheWishList() + ")</div></div>";
   
   var arrowUpClass = "arrowUpChartInCat";
   var arrowDwClass = "arrowDwChartInCat";
   var inputQtaClass = "inputQtaChartInCat";    
   if (CatalogoFiltriWidget.isCarrelloInCatalogo()) {
     data = CommonApis.getDettaglioOrdine();
   } else if (CatalogoFiltriWidget.isPreferitiInCatalogo()) {
     data = CommonApis.getDettaglioWishList();
     arrowUpClass = "arrowUpWishInCat";
     arrowDwClass = "arrowDwWishInCat";
     inputQtaClass = "inputQtaWishInCat";  
   } else {
     data = CommonApis.getDettaglioOrdine();
   }    
   var totDoc = 0; 
   for (var i = 0; i < data.length; i++) {
     if (!data[i].is_artpromo){
       totDoc += data[i].imp_netto;
     }   
   }                                  
   for (var i = 0; i < data.length; i++) {
	   
     if (!data[i].is_artpromo){
	     
      var codArt =  data[i].cod_art.trim();
      var capofila =  data[i].capofila.trim();
	  var divisioneLocal = divisione.trim();
	  if (divisione.trim() == ""){
		divisioneLocal = mandatario.trim();
	  }			  
	  
      var imgPath = CommonApis.getImgDir() + divisioneLocal + "/";
      var desArt = "";
      try {
        imgPath = imgPath + data[i].immagine.trim() + ".jpg";
      } catch {
        imgPath = imgPath + data[i].nom_imm_p.trim() + ".jpg";
      }
      try {
        desArt = data[i].des_art.trim();
      } catch {
        desArt = data[i].descr.trim();
      }
      var qta = 0;
      if (data[i].qta == undefined) {
        qta = data[i].qta_ord;
      } else {
        qta = data[i].qta;
      }
      var um = "";          
      if (data[i].uni_di_mis == undefined) {
        um = data[i].um;
      } else {
        um = data[i].uni_di_mis;
      }                        
      if (CatalogoFiltriWidget.isCarrelloInCatalogo() && i == 0) {
        try {
          htmlCarrello = htmlCarrello + "<div class='pos-center-center margin-top-10 margin-bottom-10'>" + 
                                        "<div class='validaCarrelloBtn confermaOrdineBtn closeCarrelloInCatalogo' id='confermaOrdineBtnInBoxCatalogo'" + 
                                        "a=\"Conferma l'ordine\" title=\"Conferma l'ordine\">Conferma l'ordine</div></div>" + 
                                        "<div class='pos-center-center margin-bottom-10 h2bParagraph valoreCarrelloPanel'>" + 
                                        "<div>Valore ordine<b>&nbsp;&euro;&nbsp" + totDoc.toFixed(3).toLocaleString().replace(".", ",") + "</b></div></div>";
        
        } catch {
        }
      }
      htmlCarrello = htmlCarrello + "<div class='shopInCatalogoBox'>" +
                                    "<div class='paddingBottom1P vaiACarrelloImg' idRiga = " + i + " codArt =  '" + codArt + "'  capofila =  '" + capofila + "' >" + 
                                    "<img src='" + imgPath + "' class='shopInCatalogoImg' onerror='this.replaceWith(placeholderSVG(''))'></div>" +
                                     "<div class='paddingBottom1P shopInCatalogoDescr margin-left-4'>" + desArt + "</div>" +
                                     "<div class='paddingBottom1P shopInCatalogoArt margin-left-4 flex-column'><div class='vaiACarrelloDett'>Cod. " + codArt + "</div>"+
									 "<div id='qtaMain' class='paddingBottom1P flex-row margin-right-20'>"+
									 "<div class='padding-right-10'>" + um + "</div>";
	  var inputQtaDsktp = "CAT2_" + codArt + "_" + data[i].num_rig;	
      if (CatalogoFiltriWidget.isPreferitiInCatalogo()) {
        inputQtaDsktp = "WSH_" + codArt;
      }
	  var qtaSelector = "<div class='table-carrello-desktp ' name='shopQta'>" +
										"<div class='qtaMinusPlus'><div class='arrowDw " + arrowDwClass + "' id='ARROW_DW_" + codArt + "'";
										//  if (data.docRighe[i].pallBox.trim() == "") {
	  qtaSelector = qtaSelector + " alt='Diminuisce' title='Diminuisce' '";
										//  }		
         qtaSelector = qtaSelector + "><img  src='./src/images/minus.png'  class = 'minusPlusIcon'></img></div>" + 
										"<div class='qtaFld'><input class='inputQta " +  inputQtaClass + "' " +
										" id='" + inputQtaDsktp + "'" +
										  " type='text' autocomplete='off' value='" + qta + "' ";

										  //qtaSelector = qtaSelector + " disabled ";       

	  qtaSelector = qtaSelector + "></input></div><div class='arrowUp "+ arrowUpClass + "' id='ARROW_UP_" + codArt + "'";

	  qtaSelector = qtaSelector + " alt='Aumenta' title='Aumenta' ";

         qtaSelector = qtaSelector + "><img  src='./src/images/add.png' class = 'minusPlusIcon'></img></div>";
                      
      var imgVolantino = "./src/images/Flyer.png";
      if (CatalogoFiltriWidget.isPreferitiInCatalogo()) {
         imgSrc = "./src/images/shopping-cart-plus.png";
         tipTextAdd = "Sposta nel carrello";
         tipTextDelete = "Rimuovi articolo " +  data[i].cod_art.trim()  +  " dai preferiti";
      } else if (CatalogoFiltriWidget.isCarrelloInCatalogo()) {
         imgSrc = "./src/images/Star-icon.png";
         tipTextAdd = "Sposta nei preferiti";
         tipTextDelete = "Rimuovi articolo " +  data[i].cod_art.trim()  +  " dal carrello";
      }
                      // cancella riga 
      qtaSelector = qtaSelector + "<div><img class='shopInCatalogoDelete icoDimension margin-left-10' " + 
                                                "src='./src/images/Trash-icon.png' alt='" + tipTextDelete + "' title='" + tipTextDelete + "'></div>";
                      // Aggiungi a preferiti 
      qtaSelector = qtaSelector + "<div><img class='shopInCatalogoAddWish icoDimension ' " + 
                                  "src='" + imgSrc + "' alt='" + tipTextAdd + "' title='" + tipTextAdd + "'></div>";     
                        // Aggiungi a volantino
      if (CatalogoFiltriWidget.isCarrelloInCatalogo()) {
         qtaSelector = qtaSelector + "<div><img class='shopInCatalogoAddVolantino icoDimension ' " + 
                                     "src='" + imgVolantino + "' alt='Aggiungi a un volantino' title='Aggiungi a un volantino'></div>";
      }                                                                                                                        
      qtaSelector = qtaSelector + "</div></div>";						
										
	  htmlCarrello = htmlCarrello + qtaSelector; 	
									 
                                    //"<div class='vaiACarrelloDett'>Q.ta " + CommonApis.getDettaglioOrdine()[i].qta + "</div></div></div>";
	  htmlCarrello = htmlCarrello + "</div></div></div>";
   }
   }
   htmlCarrello = htmlCarrello + "</div>";
   
   return htmlCarrello;
  }
    
  
  API.viewArtDaShopInCatalogo = function(capofila) {
    //var capofila =  CommonApis.getDettaglioOrdine()[id].capofila.trim();
	  CatalogoFiltriWidget.setViewArtDaShopInCatalogo(true);
    // Ripulisco eventuali marchi scelti
    var checkMarchi = document.getElementsByName("mrkChk");
    var checkMarchiGrid = document.getElementsByName("mrkChkGrid");
    for (var i = 0; i < checkMarchiGrid.length; i++) {
      checkMarchi.push(checkMarchiGrid[i]);
    }
    for (var i = 0; i < checkMarchi.length; i++) {
      if (checkMarchi[i].checked) {
        checkMarchi[i].checked = false;
      }
    }
    CatalogoFiltriWidget.resetRicerca("");
    CatalogoFiltriWidget.getRicercheFatte()[0] = "";
    visualizzaCapofila(capofila);
  }
  
  API.setShowCarrelloInCatalogo = function(val) {
    isShowCarrelloInCatalogo=val;
  }
  
  API.isShowCarrelloInCatalogo = function() {
    return isShowCarrelloInCatalogo;
  }
    
  API.updateCarrelloInCatalogo = function(data) {
    if (data.maxQtaAcq != undefined) {
        CatalogoWidget.segnalaQtaMaxAcquistabile(data.maxQtaAcq, true);
    }
	
	if (CommonApis.getListPromoInserite().length > 0){
		var msg = "";		
		for (var j = 0; j < CommonApis.getListPromoInserite().length; j++) {
			msg = msg + CommonApis.getListPromoInserite()[j] + "<br>";
		}
		showPopupAScomparsa("PROMO INSERITE", msg);
		CommonApis.clearListPromoInserite();
	}		
	
    var checks = document.getElementsByClassName("selCkCat");

	var mumRighe = 0;
  
    var dettaglioOrdine = [];
	CommonApis.clearArtPromoOrdine();
	
	try{
	
		for (var i = 0; i < data.docRighe.length; i++) {
		   if (!data.docRighe[i].is_artpromo) {
		   //Aggiorno la riga come aggiunta a carrello
		   for (var y = 0; y < checks.length; y++) { 
			 var element = $("#" + checks[y].id);
			 var codArt= $.data(element[0], 'data').cod_art.trim();
			 var qtaCnf = $.data(element[0], 'data').qta_conf;
			 var rispConf = $.data(element[0], 'data').risp_conf;
			 if (codArt == data.docRighe[i].cod_art.trim()) {
			   if (rispConf == 0) {
				 $( "#CAT_" +  codArt.replace(/\//g, "S").replace(/\./g, "D")).val(1);
			   } else { 
				 $( "#CAT_" +  codArt.replace(/\//g, "S").replace(/\./g, "D")).val(qtaCnf);
			   }
                 var tipText = "Articolo già nel carrello. Clicca per aggiungere altra quantità"
			   $("#ADD_DIRECT_" + codArt.trim().replace(/\//g, "S").replace(/\./g, "D")).attr("src", "./src/images/shopping-cart-green.png");
               $("#ADD_DIRECT_" + codArt.trim().replace(/\//g, "S").replace(/\./g, "D")).attr("alt", tipText);                 
               $("#ADD_DIRECT_" + codArt.trim().replace(/\//g, "S").replace(/\./g, "D")).attr("title", tipText);
			 }
		   } 
		   dettaglioOrdine.push({mand:data.docRighe[i].mand,
								cod_art:data.docRighe[i].cod_art,
								des_art:data.docRighe[i].descr,
								qta:data.docRighe[i].qta_ord,
								capofila:data.docRighe[i].capofila,
								immagine:data.docRighe[i].nom_imm_p,
								num_rig:data.docRighe[i].num_rig,
								uni_di_mis:data.docRighe[i].uni_di_mis,
								risp_conf:data.docRighe[i].risp_conf,
								qta_conf:data.docRighe[i].qta_conf
		  });
		  mumRighe ++;
		 }else
		 {
			CommonApis.setArtPromoOrdine({codPromo:data.docRighe[i].cod_art,
										  desPromo:data.docRighe[i].descr
			});
		 }
			 
	   }
   
	}  catch (error) {

	}
   if (!CommonApis.isMobile()) {
    CommonApis.setNumRigheCarrello(mumRighe);
   }
   
   
   //CommonApis.setDettaglioOrdine(dettaglioOrdine);
   //if (CatalogoWidget.isShowCarrelloInCatalogo()) {
   if (document.getElementsByClassName("previewCarrello") != null) {
    CatalogoFiltriWidget.setPreferitiInCatalogo(false);
    CatalogoFiltriWidget.setCarrelloInCatalogo(false);      
	  CatalogoWidget.showCarrelloInCatalogo(".previewCarrello");
   }  
  }
   
  API.segnalaQtaMaxAcquistabile = function(data, fromCatalogo) {
    var dialogdiv = document.createElement("div");
    dialogdiv.id = "maxQtaDiv";
    var showDiv = true;
    var htmlDiv = "<div class='divWarningHeader'>Attenzione!</div>";
    var primoGiro = true;
    for (var i = 0; i < data.length; i++) {
      var qta = 0;
      if (primoGiro) {
        primoGiro = false;
        if (fromCatalogo) {
          htmlDiv = htmlDiv + "<p class='h2bParagraph'>I seguenti articoli superano la quantit&#225; massima acquistabile " +
                      "per cui non sono stati inseriti nell'ordine.<br>Modifica la quantit&#225; per poterli ordinare</p>";
        } else {  
          htmlDiv = htmlDiv + "<p class='h2bParagraph'>L'articolo supera la quantit&#225; massima acquistabile " +
                      "per cui non è possibile inserirne di pi&#250;."; 
        }
        htmlDiv = htmlDiv + "<div style='padding:10px 5px; height:35%;'><table style='width: 100%; overflow: auto;'>" +
                     "<tr><th class='headerTableArticoli'>Codice</th><th class='headerTableArticoli'>Descrizione</th>";
      }
      if (data[i].qtaMax != 0) {
         qta = data[i].qtaMax;
         htmlDiv = htmlDiv + "<th class='headerTableArticoli'>Qta.Max<br>Acquistabile</th></tr>";
      } else {
          qta = data[i].cfMax;
          htmlDiv = htmlDiv + "<th class='headerTableArticoli'>Conf.Max<br>Acquistabili</th></tr>";
      }             
                     
      htmlDiv = htmlDiv + "<tr><td>" + data[i].codArt.trim() + "</td><td>" + data[i].desArt.trim() + "</td>" +
                            "<td style='text-align: right;'>" + qta + "</td></tr>";
      
    }
    htmlDiv = htmlDiv + "</table>" +
                    "<div align='center' class='divBottomClass'>" +
                    "<span class='buttonSpan'><button class='btn80' onclick='closeDiv(\"maxQtaDiv\")'>Ok</button></span>";

    dialogdiv.innerHTML = htmlDiv;
    document.getElementsByTagName("body")[0].appendChild(dialogdiv);
    showHider();
    $("#" + dialogdiv.id).show();
  }
    
  API.creaHtmlCapofila = function(workCapofilaArray, currentPage) {
      var descLivello="";
      var listCapofila ="";    
      var nrCapofilaGrid = 1;
      for( var i = CatalogoWidget.getOffset(); i < workCapofilaArray.length; i++ ) {
         if (i >= CommonApis.getLimit() * currentPage) {
               break;
          }
          var codCapofila = workCapofilaArray[i].codCapofila.trim();
          var immagine = workCapofilaArray[i].immagine.trim();
          var capofilaToShow = workCapofilaArray[i].capofilaToShow.trim();
          var divisioneLocal = divisione.trim();
		  if (divisione.trim() == ""){
			divisioneLocal = mandatario.trim();
		  }
          artViewed[codCapofila] = 0;
          listCapofila = listCapofila + "<div id='capofilaList_" + workCapofilaArray[i].capofilaToShow.trim().replaceAll(";", "_") + "'  class='capofilaList flex-column ";
              //04042018 imgPath = CommonApis.getImgDir() + workCapofilaArray[i].mand.trim() + "/" + immagine.trim();
          imgPath = CommonApis.getImgDir() + divisioneLocal.trim() + "/" + immagine.trim();
          var mand = workCapofilaArray[i].mand;
            //04042018 var pathMarchio = CommonApis.getImgDir() + mand + "/marchi/";
          var pathMarchio = CommonApis.getImgDir() + divisioneLocal.trim() + "/marchi/";
          var imgUrl =  imgPath + ".jpg";
          var descEst = workCapofilaArray[i].desc_est.trim();
          var imgMarchio = pathMarchio + workCapofilaArray[i].img_mrk.trim().replace(/ /g, "%20");
          var tiptext = workCapofilaArray[i].codCapofila.trim() + " - " + workCapofilaArray[i].descr.trim();
          if (mrkImgExt != "undefined") {
             imgMarchio = imgMarchio.trim() + mrkImgExt; 
          } else {
            imgMarchio = imgMarchio.trim() + ".bmp";
          }
          CatalogoWidget.getCapofilaImg().push({immagine:immagine, desc_est:descEst});
              // Se cambia descrizione livello emetto separatore
          if (descLivello != workCapofilaArray[i].descLivello) {
             listCapofila = listCapofila + "capofilaListRadius'><div class='capofilaDesc'>" + workCapofilaArray[i].descLivello + "</div>";
             descLivello = workCapofilaArray[i].descLivello;
          } else {
             listCapofila = listCapofila + "'>";
          } 
          addMultimediaLink = false; 
          if (workCapofilaArray[i].file_mm1.trim() != "" && workCapofilaArray[i].file_mm1.trim().toUpperCase() != (workCapofilaArray[i].immagine.trim() + ".jpg").toUpperCase()
                 && workCapofilaArray[i].file_mm1.trim().toUpperCase() != workCapofilaArray[i].immagine.trim().toUpperCase() || 
                  workCapofilaArray[i].file_mm2.trim() != "" && workCapofilaArray[i].file_mm2.trim().toUpperCase() != (workCapofilaArray[i].immagine.trim() + ".jpg").toUpperCase() 
                  && workCapofilaArray[i].file_mm2.trim().toUpperCase() != workCapofilaArray[i].immagine.trim().toUpperCase()
                  || workCapofilaArray[i].allegati == 1) { 
            addMultimediaLink = true;
          }
          listCapofila = listCapofila + "<div id='capofilaData_" + workCapofilaArray[i].capofilaToShow.trim().replaceAll(";", "_") + "'  class='capofilaData pos-center pos-cen-valign'>";

          var mrkTitle = "Visualizza tutto il marchio " + workCapofilaArray[i].marca.trim();
          var idLinea = workCapofilaArray[i].marca.trim()+ ":" + workCapofilaArray[i].linea.trim();
          var descEstWidth = "auto;";
          if (!isPageWithLeftRightBanner) {
                 descEstWidth = (window.innerWidth * 65 ) / 100 - 400 + "px;";
          }
          var codCapofilaBtn = workCapofilaArray[i].capofilaToShow.replace(/;/g, "").replace(/\//g, "S").replace(/\./g, "D");

          var numArtCapofila = "Mostra " + workCapofilaArray[i].numArt;
          if (workCapofilaArray[i].numArt == 1) {
             numArtCapofila = numArtCapofila + " Articolo"; 
          } else {
             numArtCapofila = numArtCapofila + " Articoli";
          }
          //20240426 Alessandro listCapofila = listCapofila + "<div  id='catalogoImgBtn_" + workCapofilaArray[i].capofilaToShow.replace(";", "_") + "'  class='catalogoImgBtn flex-column'>"+
          listCapofila = listCapofila + "<div  id='catalogoImgBtn_" + workCapofilaArray[i].capofilaToShow.replaceAll(";", "_") + "'  class='catalogoImgBtn flex-column'>"+
                    // marchio se mobile
//                    "<div class='marcaImageMobile'><img src = " + imgMarchio + 
//                    " title='Visualizza tutto il marchio' alt='Visualizza tutto il marchio' " +
//                    " onClick='showMarca(\"" + workCapofilaArray[i].marca.trim() + "\")'></div>" +
                    "<div id='marcaImageGrid_" + workCapofilaArray[i].capofilaToShow.replaceAll(";", "_") + "' class='marcaImageGrid' marchio = '" + workCapofilaArray[i].marca.trim() + "'>";
          
               
          listCapofila = listCapofila + "<img src = " + imgMarchio + 
                    " data-tooltip='" + tiptext + "' onerror='this.replaceWith(placeholderSVG(this.dataset.tooltip))' title='Visualizza tutto il marchio " + workCapofilaArray[i].marca.trim() + "' alt='Visualizza tutto il marchio " + workCapofilaArray[i].marca.trim() + "'></div>";
                    // linea
              
          if (workCapofilaArray[i].linea.trim() != "") {
            var desLinea = workCapofilaArray[i].linea.trim().toUpperCase();
            var tipText = "Visualizza tutti gli articoli della linea " + desLinea + " di " + workCapofilaArray[i].marca.trim().toUpperCase();
            var lineaClass = "";
            var lblLinea = "Linea";
          } else {
            var desLinea = "A";
            var tipText = "";
            var lineaClass = "color-white";
            var lblLinea = "";
          }  
          listCapofila = listCapofila + "<div><div name='recordLinea' linea='" + desLinea + "' marca='" + workCapofilaArray[i].marca.trim().toUpperCase() + 
                                            "' id='lineaGrid_" + workCapofilaArray[i].capofilaToShow.replaceAll(";", "_") + 
                                            "' class='recordLineaGrid margin-top-5" + lineaClass + "'>" + 
                                            "<div class='" + lineaClass + "'>Linea</div>" + 
                                            "<div class='lineaName " + lineaClass + "' title='" +tipText+ "' alt='" + tipText + "'>" +
                                            desLinea + "</div></div></div>"; 
                                  // immagine
          listCapofila = listCapofila +  "<div id= 'catalogoImage_" + workCapofilaArray[i].capofilaToShow.replaceAll(";", "_") + "' class='catalogoImage' immagine = '" + immagine.trim() + "'>" +
                    "<img src = " + imgUrl + " title='Seleziona per ingrandire' alt='Selezione per ingrandire' data-tooltip='" + tiptext + "' onerror='this.replaceWith(placeholderSVG(this.dataset.tooltip))'>" + 
                    "</div>" +
					          "<div id='capolifaDescEstGrid_" + workCapofilaArray[i].capofilaToShow.replaceAll(";", "_") + "' class='capolifaDescEstGrid capofilaGridHide capofilaDescToolTip margin-left-5' data-cpf='" + workCapofilaArray[i].capofilaToShow + "'>";
              if (showTitoloCapofila == "1") { 
                listCapofila = listCapofila + "<p class='titoloCapofila";
                if (workCapofilaArray[i].titolo.trim() == "�") {
                 //  listCapofila = listCapofila + " color-white";
                } 

                if (workCapofilaArray[i].titolo.trim() == "�") {
                  listCapofila = listCapofila + "'>" + workCapofilaArray[i].descr.trim() + "</p>";
                }else{
                  listCapofila = listCapofila + "'>" + workCapofilaArray[i].titolo.trim() + "</p>";
                }
              }                                                                 
              listCapofila = listCapofila + "<div class='descEstCpf' id='descEstCpf_" + immagine.trim() + "'  style='display: none;'>" + workCapofilaArray[i].desc_est.trim().replace(/\"/g, "&#34;").replace(/\'/g, "&#39;") + 
					          "</div></div>";              
              
                    // bottone mostra articoli

                    /*Alessandro 20220722
                    "<div class='btnMostraArticoli btnMostraArticoliList' id='btn" + codCapofilaBtn + "' onClick='" + onClickAction + ">" +
                    */ 
          listCapofila = listCapofila +
              "<div class='btnMostraArticoli btnMostraArticoliList' id='btn" + codCapofilaBtn + "' cpf='" + workCapofilaArray[i].capofilaToShow + "' " +
              //"numart='" + workCapofilaArray[i].numArt + "' isarticolo='" + workCapofilaArray[i].isarticolo + "' cod='" + workCapofilaArray[i].isarticolo + "'>" + numArtCapofila + "</div>"+
              "image='" + immagine.trim() + "' numart='" + workCapofilaArray[i].numArt + "' isarticolo='" + workCapofilaArray[i].isarticolo;
          if (workCapofilaArray[i].isarticolo == 1) {
              listCapofila = listCapofila + "' cod=''";
          } else {
              listCapofila = listCapofila + "' cod=''"; 
          }
          listCapofila = listCapofila + ">" + numArtCapofila + "</div>" +

					           "</div>" +

                    // Descrizione capofila
                    "<div class='descrCapofila'><div name='descrCapofila' cpf='" + workCapofilaArray[i].capofilaToShow.trim() + 
                    "isarticolo='" + workCapofilaArray[i].isarticolo + "' class='capofilaDescEst2'" +
                    "' alt='Visualizza articoli' title='Visualizza articoli'>";
             if (showTitoloCapofila == "1") {
               listCapofila = listCapofila + "<p class='titoloCapofila'>" + workCapofilaArray[i].titolo.trim() + "</p>"; 
             }       
                    // descrizione capofila
              listCapofila = listCapofila + workCapofilaArray[i].desc_est.trim().replace(/\"/g, "&#34;").replace(/\'/g, "&#39;") + "</div>";
              
              // box per link, promo, articoli in offerta
              listCapofila = listCapofila + "<div class='flex-column' name='boxMostraArticoli'>" + creHtmlBoxLink(i, false) + "</div>";
              // box con prezzo listino
              var lblListino = "Listino: ";
              if (workCapofilaArray[i].numArt > 1) {
                lblListino = "Listino<br>a partire da: ";
              }
              var prezziNascosti = readCookieValue("hidePrezzi");
              var prezziDoppi = readCookie("prezziDoppi");
              var przClass="";
              if (prezziNascosti == 1) {
                przClass = "textshadow-prz";
              }
              var przListino = workCapofilaArray[i].prz_lis;
              if (prezziDoppi == 1) {
                przListino = przListino * 2;
              }
              lblClass = "";
              if (!CatalogoFiltriWidget.isViewGrid()) {
                lblClass = "display-none";
              } 
              if (isWorkspace) {  
                listCapofila = listCapofila + "<div class='przListLbl przListLbl" + workCapofilaArray[i].capofilaToShow.replaceAll(";", "_") + " descEstPromoGrid " + lblClass + "'>" + lblListino +
                                            "<span name='przListinoLbl' class='fontBold " + przClass + "' przLis='" + przListino + "'" + 
                                            " onmouseover='togglePrz(this)' onmouseout='togglePrz(this)'>" + przListino.toFixed(3).toLocaleString().replace(".", ",")  + "<span> &euro;</span</span></div>";
                listCapofila = listCapofila + creaBoxAddCarrello(i, false);                            
              }
              if (workCapofilaArray[i].inOfferta > 0 && readCookie(cookiePrimoAcquisto) == 1) {
                var inOffertaDescr = workCapofilaArray[i].inOfferta;
                if(workCapofilaArray[i].inOfferta == 1) {
                   inOffertaDescr = inOffertaDescr + " Articolo "; 
                } else {
                   inOffertaDescr = inOffertaDescr + " Articoli "; 
                }
                inOffertaDescr = inOffertaDescr + "in offerta per te!";                                                 
                listCapofila = listCapofila + "<div><p class='artOfferta'>" + inOffertaDescr + "</p></div>";
                                           
              } 

              
              // Aggiungo link multimediale
              /*
              if (addMultimediaLink) {



                        
                var img = "/src/images/Link-icon.png";    
                var title = "Visualizza le schede tecniche di questo articolo";                                   
                listCapofila = listCapofila + "<div class='allegatiLink'><div><img class='viewAllegatiImg' src = " + img + " title='" + title + "' alt='" + title + "' onClick='CatalogoWidget.viewAllegati(" + i + ")'></div>" +  
                                              "<div class='viewAllegati' title='" + title + "' alt='" + title + "' onClick='CatalogoWidget.viewAllegati(" + i + ")'>Visualizza allegati/schede tecniche</div></div>";
                                           
              }       */
              listCapofila = listCapofila + "</div>";
              
              // marchio e linea non mobile
              listCapofila = listCapofila + "<div id='mrkLinea_" + workCapofilaArray[i].capofilaToShow.replaceAll(";", "_") + "' class='mrkLinea'>" +
              // Marchio
                    "<div id='tdTableMrk" +  i  + "' class='marcaImage' marchio = '" + workCapofilaArray[i].marca.trim() + "'>" + 
                    "<img src = " + imgMarchio + " title='" + mrkTitle + "' alt='" + mrkTitle + "' data-tooltip='" + mrkTitle + "' onerror='this.replaceWith(placeholderSVG(this.dataset.tooltip))'" +
                    "></div>";
              
              if (workCapofilaArray[i].linea.trim() != "") {
                var desLinea = workCapofilaArray[i].linea.trim().toUpperCase();
                var tipText = "Visualizza tutti gli articoli della linea " + desLinea + " di " + workCapofilaArray[i].marca.trim().toUpperCase();
                var lineaClass = "";
                var lblLinea = "Linea";
              } else {
                var desLinea = "A";
                var tipText = "";
                var lineaClass = "color-white";
                var lblLinea = "";
              } 
                       /* Immagine linea
                       listCapofila = listCapofila + "<tr><td class='marcaImage' id='marcaImageNormal'><img src = " + pathMarchio + workCapofilaArray[i].linea.trim() + ".bmp title='Visualizza tutta la linea' alt='Visualizza tutta la linea' " +
                       "id='marcaImage' onClick='showLinea(\"" + workCapofilaArray[i].linea.trim() + "\")' ></td>";
                       */
                       // Link linea
                  
          listCapofila = listCapofila + "<div name='recordLinea ' linea='" + desLinea + "' marca='" + workCapofilaArray[i].marca.trim().toUpperCase() + 
                                            "' class='recordLinea margin-top-5 flex-column " + lineaClass + "'><div>Linea</div>" +
                                            "<div class='lineaName " + lineaClass + "' id='LNKLIN_" + idLinea + "' title='" +tipText+ "' alt='" + tipText + "'>" + desLinea +"</div>"; 
                
              /*} else {
                listCapofila = listCapofila + "<\div>";   
              }
              */ 
              // Made in italy
              if (workCapofilaArray[i].madeInItaly.trim() != "") { 
                // logo made in italy
                 //20201007 Alessandro: ripristinare quando ok listCapofila = listCapofila + "<tr name='recordMadeInItaly'><td><img src='./src/images/madeinitaly.png'></td></tr>"; 
                 listCapofila = listCapofila + "<div class='madeInItaly'><img src='./src/images/madeinitaly.png'></div>";
                 gestMadeInItaly = true;   
              }  
                           
              listCapofila = listCapofila + "</div></div>";
              
              //20180907 Alessandro: se capofila doppi, uso immagine
              //"id='" + workCapofilaArray[i].capofilaToShow.replace(/;/g, "").replace(/\//g, "S").replace(/\./g, "D") + "'>" +
              var tdCapofila = workCapofilaArray[i].capofilaToShow.replace(/;/g, "").replace(/\//g, "S").replace(/\./g, "D");
              
              listCapofila = listCapofila + 
                           "</div><div id='" + tdCapofila.trim() + "' class='elencoArticoli'></div>";
              // contenitore box promo link e bottone
              listCapofila = listCapofila + "<div class='flex-column' name='boxLinkPromo'>" + creHtmlBoxLink(i, true);    
              // box con prezzo listino
              var lblListino = "Listino: ";
              if (workCapofilaArray[i].numArt > 1) {
                lblListino = "Listino<br>a partire da: ";
              }
              if (CatalogoFiltriWidget.isViewGrid()) {
                 lblClass = "";
              }
              if (isWorkspace) {
                listCapofila = listCapofila + "<div class='przListLblGrid przListLblGrid" + workCapofilaArray[i].capofilaToShow.replaceAll(";", "_") + " descEstPromoGrid " + lblClass + "'>" + lblListino + 
                                            "<span name='przListinoLbl' class='fontBold " + przClass + "' przLis='" + przListino + "'" + 
                                            " onmouseover='togglePrz(this)' onmouseout='togglePrz(this)'>" + przListino.toFixed(3).toLocaleString().replace(".", ",")  + "<span> &euro;</span></span></div>";
              }  
              // Aggiungo inserimento a carrello
              if (isWorkspace) {
                listCapofila = listCapofila + creaBoxAddCarrello(i, true);
              }    
                                     
              listCapofila = listCapofila + "<div class = 'btnMostraArticoliMaster margin-bottom-10 margin-right-10 margin-left-10'><div class='btnMostraArticoli btnMostraArticoliGrid capofilaGridHide' id='btnGrid" + codCapofilaBtn + "'" +
               //Alessandro 20220722" onClick='" + onClickAction + ">" +
                     " cpf='" + workCapofilaArray[i].capofilaToShow + "' " +
                     " image='" + workCapofilaArray[i].immagine.trim() + "' " +
                    "isarticolo='" + workCapofilaArray[i].isarticolo + "' numart='" + workCapofilaArray[i].numArt + "' " +
                    //" cod='" + workCapofilaArray[i].isarticolo + "'>" + numArtCapofila + "</div>";
					    " cod=''>" + numArtCapofila + "</div></div></div>";
              listCapofila = listCapofila + "</div>";            
            }                              
            listCapofila = listCapofila + "</div><div class='infoCatalogo'>" + CatalogoWidget.getHtmlFunctionalBottom() + "</div></div>";


            CatalogoWidget.setHtmlListCapofila(listCapofila);
           
            //return listCapofila;
    }
    
		
	
		
    API.setWorkCapofilaArray = function(array) {
      workCapofilaArray = array;
    }
    
    API.getWorkCapofilaArray = function() {
      return workCapofilaArray;
    }
        
    API.creaWorkCapofilaArray = function(data) {
       var workCapofilaArray = [];
       var capofilaImg = [];
       var capofilaData = "";
       var codCapofila = "";
       var capofilaToShow = "";
       var immagine = "";
       var descLivello = "";
       var marca = "";
       var desc_est = "";
       var arrayCapofilaToShow = [];
       var mand = "";
       var linea = "";
       var img_mrk = "";
       var numArt = 0;
       var titolo = "";
       var madeInItaly = "";
       var inOfferta = 0;
       var file_mm1 = "";
       var file_mm2 = "";
       var promo_rif = "";
       var nr_novita = 0;
       var allegati = 0;
       var prz_lis = 0;
       var numPromo = 0;
       var risp_conf = 0;
       var qta_conf = 0;
       var descr = "";
       var nome_divisione = "";
       var ordinamento_div = 0;
       var order_seq = 0;
       var isarticolo = 0;
       var visualizza = true;
       var arrayArticoliDelCapofila = [];
       var arrayInOfferta = [];
       var arrayNovita = [];
       var y = 0;
       
       for( var i = 0; i < data.capofila.length; i++ ) {
          if (codCapofila != $.trim(data.capofila[i].capofila) && 
              immagine != $.trim(data.capofila[i].immagine) && 
              immagine != "" && codCapofila != "") {
            for (var x = 0; x < arrayCapofilaToShow.length; x++) {
              if (capofilaToShow.length > 0) {
                capofilaToShow= capofilaToShow.trim() + ";"
              }
              capofilaToShow = capofilaToShow.trim() + arrayCapofilaToShow[x].trim();
            }
            
            for (var x = 0; x < arrayArticoliDelCapofila.length; x++) {
              numArt += arrayArticoliDelCapofila[x];
            }
            for (var x = 0; x < arrayInOfferta.length; x++) {
              inOfferta += arrayInOfferta[x];
            }
            for (var x = 0; x < arrayNovita.length; x++) {
              nr_novita += arrayNovita[x];
            }
            
            workCapofilaArray.push({mand:mand, 
                                    codCapofila:codCapofila, 
                                    immagine:immagine, 
                                    descLivello:descLivello, 
                                    marca:marca,
                                    capofilaToShow:capofilaToShow, 
                                    isarticolo:isarticolo, 
                                    desc_est:desc_est, 
                                    img_mrk:img_mrk, 
                                    linea:linea, 
                                    numArt:numArt, 
                                    titolo:titolo, 
                                    madeInItaly:madeInItaly,
                                    inOfferta:inOfferta,
                                    file_mm1:file_mm1,
                                    file_mm2:file_mm2,
                                    promo_rif:promo_rif,
                                    nr_novita:nr_novita,
                                    allegati:allegati,
                                    prz_lis:prz_lis,
                                    numPromo:numPromo,
                                    risp_conf:risp_conf,
                                    qta_conf:qta_conf,
                                    descr:descr,
                                    nome_divisione:nome_divisione,
                                    ordinamento_div:ordinamento_div,
                                    order_seq:order_seq,
                                    visualizza:visualizza,
                                   });
                  
                      
                                                                          
            codCapofila = "";
            capofilaToShow = "";
            immagine = "";
            descLivello = "";
            marca = "";
            desc_est = "";
            arrayCapofilaToShow = [];
            mand = "";
            linea = "";
            img_mrk = "";
            numArt = 0;
            titolo = "";
            madeInItaly = "";
            inOfferta=0;
            file_mm1 = "";
            file_mm2 = "";
            promo_rif = "";
            nr_novita = 0;
            allegati = 0;
            prz_lis = 0;
            numPromo = 0;
            risp_conf = 0;
            qta_conf = 0;
            descr = "";
            nome_divisione = "";
            ordinamento_div = 0;
            order_seq = 0;
            isarticolo = 0;
            visualizza = true;
            arrayArticoliDelCapofila = [];
            arrayInOfferta = [];
            arrayNovita = [];
            y = 0;
        }
        
        isarticolo = data.capofila[i].isarticolo;
        allegati = data.capofila[i].allegati;
        prz_lis = data.capofila[i].prz_lis;
        risp_conf = data.capofila[i].risp_conf;
        qta_conf = data.capofila[i].qta_conf;
        nome_divisione = data.capofila[i].nome_divisione;
        ordinamento_div = data.capofila[i].ordinamento_div + 1000;
        order_seq = data.capofila[i].order_seq + 1000;
               
        if (codCapofila == "") {
           codCapofila = $.trim(data.capofila[i].capofila);
        }
        if (codCapofila == "") {
           descr = $.trim(data.capofila[i].descr);
        }
        if (immagine == "") {
           immagine = $.trim(data.capofila[i].immagine);
           if (immagine == "") {
              immagine = "_";
           }
        }
        if (mand == "") {
           mand = $.trim(data.capofila[i].mand);
        }
        if (descLivello == "") {
           descLivello = $.trim(data.capofila[i].desc_liv);
        }
        if (marca == "") {
           marca = $.trim(data.capofila[i].marca);
        }
        if (desc_est == "") {
           if (showTitoloCapofila == "1") {
              desc_est = $.trim(data.capofila[i].desc_est.replace(data.capofila[i].titolo, ""));
           } else {
              desc_est = $.trim(data.capofila[i].desc_est);
           }
        }
        if (linea == "") {
           linea = $.trim(data.capofila[i].linea);
        }
        if (img_mrk == "") {
           img_mrk = $.trim(data.capofila[i].imgmrk);
        }
        if (titolo == "") {
           titolo = $.trim(data.capofila[i].titolo);
           if (titolo == "") {
              titolo = data.capofila[i].descr.replace(/\s*\d+[,.]?\d*X0*\d+[,.]?\d*/i, "");
           }
        }

        if (descr == "") {
           descr = $.trim(data.capofila[i].descr);
        }

        if (madeInItaly == "") {
           madeInItaly = $.trim(data.capofila[i].made_in_italy);
        }
        //if (numArt == 0) {
        //   numArt = data.capofila[i].numart;
        //}
        //if (inOfferta == 0) {
        //   inOfferta = data.capofila[i].maiacq;
        //}
        if (file_mm1 == "") {
           file_mm1 = $.trim(data.capofila[i].file_mm1);
        }
        if (file_mm2 == "") {
           file_mm2 = $.trim(data.capofila[i].file_mm2);
        }
        if (promo_rif == "") {
           promo_rif = $.trim(data.capofila[i].promo_rif);
           numPromo = promo_rif.split("PR").length;
        }
        //if (nr_novita == 0) {
        //   nr_novita = data.capofila[i].nr_novita;
        //}
        arrayArticoliDelCapofila[y] = data.capofila[i].numart;
        arrayInOfferta[y] = data.capofila[i].maiacq;
        arrayNovita[y] = data.capofila[i].nr_novita;
        y++;
        
        if (arrayCapofilaToShow.indexOf($.trim(data.capofila[i].capofila)) == -1) {
           arrayCapofilaToShow.push($.trim(data.capofila[i].capofila));
        }
        
               
      }
      
      for (var x = 0; x < arrayCapofilaToShow.length; x++) {
        if (capofilaToShow.length > 0) {
          capofilaToShow= capofilaToShow.trim() + ";"
        }
        capofilaToShow = capofilaToShow.trim() + arrayCapofilaToShow[x].trim();
      }
      for (var x = 0; x < arrayArticoliDelCapofila.length; x++) {
        numArt += arrayArticoliDelCapofila[x];
      }
      for (var x = 0; x < arrayInOfferta.length; x++) {
        inOfferta += arrayInOfferta[x];
      }
      for (var x = 0; x < arrayNovita.length; x++) {
        nr_novita += arrayNovita[x];
      }
      
      workCapofilaArray.push({mand:mand, 
                              codCapofila:codCapofila, 
                              immagine:immagine, 
                              descLivello:descLivello, 
                              marca:marca,
                              capofilaToShow:capofilaToShow, 
                              isarticolo:isarticolo, 
                              desc_est:desc_est, 
                              img_mrk:img_mrk, 
                              linea:linea, 
                              numArt:numArt, 
                              titolo:titolo, 
                              madeInItaly:madeInItaly,
                              inOfferta:inOfferta,
                              file_mm1:file_mm1,
                              file_mm2:file_mm2,
                              promo_rif:promo_rif,
                              nr_novita:nr_novita,
                              allegati:allegati,
                              prz_lis:prz_lis,
                              risp_conf:risp_conf,
                              qta_conf:qta_conf,
                              numPromo:numPromo,
                              descr:descr,
                              nome_divisione:nome_divisione,
                              ordinamento_div:ordinamento_div,
                              order_seq:order_seq,
                              visualizza:visualizza,
                              });
                              
         // Tolgo divisione non richiesta
         if (CatalogoFiltriWidget.getDivisioniFiltrate().length > 0) {
           for (var x = 0; x < workCapofilaArray.length; x++) {
              if (CatalogoFiltriWidget.getDivisioniFiltrate().indexOf(workCapofilaArray[x].nome_divisione) == -1 ) {
                workCapofilaArray[x].visualizza = false;
              }
           }
         }                                                                                                            
         // Riordino
         for (var x = 0; x < workCapofilaArray.length; x++) {
              if (workCapofilaArray[x].capofilaToShow.indexOf(";") > 0) {
                 var arrayCpf = workCapofilaArray[x].capofilaToShow.split(";");
                 arrayCpf.sort();
              
                 var newCapofila = "";
                 for (var y = 0; y < arrayCpf.length; y++) {
                   if (y > 0) {
                     newCapofila = newCapofila.trim() + ";";
                   }
                   newCapofila = newCapofila.trim() + arrayCpf[y];
                 }
                
                 //workCapofilaArray[x].capofilaToShow = arrayCpf[0];
                 workCapofilaArray[x].capofilaToShow = newCapofila;
              }
         }
         
         // Ordino per metodo scelto
         if (readCookie("orderMode") != null) {
           
           switch(readCookie("orderMode")) {
             case "dft":
               workCapofilaArray.sort((a,b) => a.order_seq * a.ordinamento_div - b.order_seq * b.ordinamento_div);
               break;
             case "asc":
               workCapofilaArray.sort((a,b) => a.prz_lis - b.prz_lis);
               break;
             case "desc":
               workCapofilaArray.sort((a,b) => b.prz_lis - a.prz_lis );
               break;
             case "new":
               workCapofilaArray.sort((a,b) => b.nr_novita - a.nr_novita);
               break;
             case "promo":
               workCapofilaArray.sort((a,b) => b.numPromo - a.numPromo);
               break; 
             case "italy":
               workCapofilaArray.sort((a,b) => (b.madeInItaly > a.madeInItaly) ? 1 : ((a.madeInItaly > b.madeInItaly) ? -1 : 0));
               break; 
             case "mrk":
               workCapofilaArray.sort((a,b) => (a.marca > b.marca) ? 1 : ((b.marca > a.marca) ? -1 : 0));
               break;
             case "linea":
               workCapofilaArray.sort((a,b) => (a.linea > b.linea) ? 1 : ((b.linea > a.linea) ? -1 : 0));
               break;              
           }
          
         } else {
             //workCapofilaArray.sort((a,b) => a.order_seq * a.ordinamento_div - b.order_seq * b.ordinamento_div)
             
         }    
         CatalogoWidget.setWorkCapofilaArray(workCapofilaArray);                                                       
         return workCapofilaArray;
      }
 
     
     API.getHtmlFunctionalTop = function(from, addReset) {
        
      var htmlFunctionalTop = "<div class='flex-row'>" ;
       
	  
			htmlFunctionalTop = htmlFunctionalTop + "<div id='toggleCatalogoViewBody'>" +
                        "<ul class=\"functionalUl\">";
      var classColor = "color" + windowBackgroundColor.replace("#", "-");

      if (!readCookie("gridView")) {
         htmlFunctionalTop = htmlFunctionalTop + "<li class='toggleVisualizzazione gridLi' alt='" + CommonApis.getTipGridView() + "' title='" + CommonApis.getTipGridView() + "'>" +
                        "<i class='toggleView fas fa-th " + classColor +"'></i></li>";
      }

      if (addReset) {                        
         htmlFunctionalTop = htmlFunctionalTop + "<li class='reloadCatalogo' alt='" + CommonApis.getTipReset() +"' title='" + CommonApis.getTipReset() +"'>" +
                        "<i class='fas fa-redo-alt " + classColor + "'></i></li>";
      }                        
       htmlFunctionalTop = htmlFunctionalTop + "</ul></div>" ;
       var orderMode = "Rilevanza";
       if (readCookie("orderMode") != null) {
         switch (readCookie("orderMode")) {
           case "asc":
             orderMode = "Prezzo crescente";
             break;
           case "desc":
             orderMode = "Prezzo decrescente";
             break;
           case "new":
             orderMode = "Novit&agrave;";
             break;
           case "promo":
             orderMode = "In promozione";
             break; 
           case "italy":
             orderMode = "Made in Italy";
             break;
           case "linea":
             orderMode = "Linea";
             break;  
           case "mrk":
             orderMode = "Marca";
             break;     
         }  
       } 
       var linee = false;
       var madeInItaly = false;
       var inPromo = false;
       var novita = false;
       var divisioniRicerca = [];

       for (var i = 0; i < CatalogoWidget.getWorkCapofilaArray().length; i++) {
         if (CatalogoWidget.getWorkCapofilaArray()[i].madeInItaly.trim() != "") {
           madeInItaly = true;
         }
         if (CatalogoWidget.getWorkCapofilaArray()[i].linea.trim() != "") {
           linee = true;
         }
         if (CatalogoWidget.getWorkCapofilaArray()[i].numPromo > 0) {
           inPromo = true;
         }
         if (CatalogoWidget.getWorkCapofilaArray()[i].nr_novita > 0) {
           novita = true;
         }
       } 
       
       if (CatalogoFiltriWidget.getDivisioniPrimaRicerca().length > 1) {
           htmlFunctionalTop = htmlFunctionalTop + "<div class='divisioniChk pos-center margin-left-20 height28px pos-cen-valign filtriRicercaBorder'><span class='margin-left-5'>Prodotti:&nbsp</span>";
           for (var i = 0; i < CatalogoFiltriWidget.getDivisioniPrimaRicerca().length; i++) {
              htmlFunctionalTop = htmlFunctionalTop + "<input value='" + CatalogoFiltriWidget.getDivisioniPrimaRicerca()[i] + "' name='chkDivisione' class='chkDivisione'" +
                                                   "type='checkbox'";
              if (CatalogoFiltriWidget.getDivisioniFiltrate().indexOf(CatalogoFiltriWidget.getDivisioniPrimaRicerca()[i]) != -1 ) {
                htmlFunctionalTop = htmlFunctionalTop + " checked ";
              }                                                                                       
              htmlFunctionalTop = htmlFunctionalTop + "><span class='margin-right-5'>" + CatalogoFiltriWidget.getDivisioniPrimaRicerca()[i] + "</span></input>";
           }  
 
           htmlFunctionalTop = htmlFunctionalTop + "</div>";
       } 
	     htmlFunctionalTop = htmlFunctionalTop + "<div class='orderMode pos-center height28px pos-cen-valign div-width-350px margin-left-20 filtriRicercaBorder vert-align-middle'>" + 
                        "<div class='margin-left-5'>Ordina per:<span class='margin-left-5'>" + orderMode + "</span>" +
                        "<span class='margin-left-5'><i class='fa-solid fa-chevron-down'></i></span></div></div>";
                        
       htmlFunctionalTop = htmlFunctionalTop + "<div class='pos-fixed zindex-900 div-width-350px orderModeList display-none filtriRicercaBorder backg-e2e2e2' onmouseleave='CatalogoWidget.hideOrderMode(this)'>" + 
                          "<ul><li class='backg-e2e2e2 orderModeElem' ord='dft'>Rilevanza</li>" +
                          "<li class='backg-e2e2e2 orderModeElem' ord='asc'>Prezzo crescente</li>" +  
                          "<li class='backg-e2e2e2 orderModeElem' ord='desc'>Prezzo decrescente</li>" +
                          "<li class='backg-e2e2e2 orderModeElem' ord='mrk'>Marca</li>";
       if (linee) {
         htmlFunctionalTop = htmlFunctionalTop + "<li class='backg-e2e2e2 orderModeElem' ord='linea'>Linea</li>";
       }                          
       if (novita) {                     
         htmlFunctionalTop = htmlFunctionalTop + "<li class='backg-e2e2e2 orderModeElem' ord='new'>Novit&agrave;</li>";
       }
       if (inPromo) { 
         htmlFunctionalTop = htmlFunctionalTop + "<li class='backg-e2e2e2 orderModeElem' ord='promo'>In promozione</li>";
       }
       if (madeInItaly) { 
         htmlFunctionalTop = htmlFunctionalTop + "<li class='backg-e2e2e2 orderModeElem' ord='italy'>Made in Italy</li>";
       }
       htmlFunctionalTop = htmlFunctionalTop + "</ul></div>";                             
                       
       htmlFunctionalTop = htmlFunctionalTop + "<div class='functionDiv'><div id=\"paginator\"> " +
                        "<ul class=\"pagination\" class=\"pagination-sm\"></ul> " +
                        "</div></div></div><div class='filtriApplicati'></div>";
      
                                        
      return htmlFunctionalTop;                  
    }
          
    API.hideOrderMode = function(element) {
      $(element).addClass("display-none");
    }
    
    API.getHtmlFunctionalBottom = function() {
    
      var html = "<div id=\"paginator_2\" align=\"center\"> " +
                        "<ul class=\"pagination\" class=\"pagination-sm\"></ul></div>";
      return html;                  
    }
    
    API.setMarchiPrimoAcquisto = function(data) {
      marchiPrimoAcquisto = data;
      marchiPrimoAcquisto.sort();
      CatalogoWidget.creaTabellaPrimoAcquisto();
    }

    API.getMarchiPrimoAcquisto = function() {
      return marchiPrimoAcquisto;
    }

    
    API.setHtmlTableNovita = function(html) {
      htmlTableNovita = html;
    }
    
    API.setHtmlTablePrimoAcquisto = function(html) {
      htmlTablePrimoAcquisto = html;
    }

    API.setHtmlTableLastPromo = function(html) {
      htmlTableLastPromo = html;
    }

    API.setHtmlTableBestsellers = function (html) {
        htmlTableBestsellers = html;
    }
    
    API.setHtmlTableArtInEvidenza = function (html) {
        htmlTableArtInEvidenza = html;
    }
    API.getHtmlTableNovita = function() {
      return htmlTableNovita;
    }

    API.getHtmlTablePrimoAcquisto = function() {
    
      //return htmlTablePrimoAcquisto;
      return "";
    }

    API.getHtmlTableLastPromo = function() {
      return htmlTableLastPromo;
    }

    API.getHtmlTableBestsellers = function () {
        return htmlTableBestsellers;
    }

    API.getHtmlTableArtInEvidenza = function () {
        return htmlTableArtInEvidenza;
    }

    API.setHtmlUltimiVisti = function(html) {
      htmlUltimiVisti = html;
    }
        
    API.getHtmlUltimiVisti = function() {
      return htmlUltimiVisti;
    }
            
    API.viewCatalogoArtDetail = function(element) {

     var request = {cod_art:$.data(element, 'dataImg').cod_art};
     jolieCall( "getInfoArticoloFrontend", request, function(data) {infoarticolo = data.infoarticolo[0];
                                                                    CatalogoWidget.showInfoArticolo(infoarticolo, element) }, function( error ) { showError(error.message) } );
    }              


    API.showInfoArticolo = function (data, element) {

     var artDetailHtml = "";
     var cartellaImmagini = mandatario.trim();
     if (divisione.trim() != "") {
       cartellaImmagini = divisione.trim();
     }
	  
     var imgPath = CommonApis.getImgDir() + cartellaImmagini + "/" + data.nom_imm_p.trim();
	   var imgUrl =  imgPath + artImgExtension;
     var gestisciDatiAggiuntivi = false; 
     if (data.linea.trim() != "" || data.colore.trim() != "" ||
       data.materiale.trim() != "" || data.altezza != 0 ||
       data.larghezza != 0 || data.lunghezza != 0 ||
       data.um_capacita.trim() != "" || data.diametro != 0 ) {
       gestisciDatiAggiuntivi = true;
      }
     var infoArt = {cod_art:     data.cod_art,
                    descr:       data.descr.toUpperCase(),
                    titolo:      data.titolo.trim(),           // gestito esternamente
                    desc_est:    data.titolo ? data.desc_est.replace(data.titolo.trim(), "") : data.desc_est,
                    barcode:     data.barcode.trim(),
                    misura:      data.misura.trim(),
                    uni_di_mis:  data.uni_di_mis.trim(),
                    img:         imgUrl,  
                    qta_conf:    data.qta_conf,
                    vend_conf:   data.vend_conf == 1 ? "Si" : "No", 
                    prz_lordo:   $.data(element, 'dataImg').prz_lordo.toFixed(3).toLocaleString().replace(".", ","),
                    sco1:        CommonApis.getSessionData().num_sco >= 1 ? $.data(element, 'dataImg').sco1 : null,
                    sco2:        CommonApis.getSessionData().num_sco >= 2 ? $.data(element, 'dataImg').sco2 : null,
                    sco3:        CommonApis.getSessionData().num_sco >= 3 ? $.data(element, 'dataImg').sco3 : null,
                    sco4:        CommonApis.getSessionData().num_sco >= 4 ? $.data(element, 'dataImg').sco4 : null,
                    sco5:        CommonApis.getSessionData().num_sco >= 5 ? $.data(element, 'dataImg').sco5 : null,
                    sco6:        CommonApis.getSessionData().num_scoscogest >= 6 ? $.data(element, 'dataImg').sco6 : null,
                    linea:       gestisciDatiAggiuntivi ? data.linea.trim() : null,
                    colore:      gestisciDatiAggiuntivi ? data.colore.trim() : null,
                    materiale:   gestisciDatiAggiuntivi ? data.materiale.trim() : null,
                    altezza:     gestisciDatiAggiuntivi ? data.altezza.toFixed(1).toLocaleString().replace(".", ",") : null,
                    lunghezza:   gestisciDatiAggiuntivi ? data.lunghezza.toFixed(1).toLocaleString().replace(".", ",") : null,
                    diametro:    gestisciDatiAggiuntivi ? data.diametro.toFixed(1).toLocaleString().replace(".", ",") : null,
                    um_capacita: gestisciDatiAggiuntivi ? data.um_capacita.trim() : null,
                    capacita:    gestisciDatiAggiuntivi ? data.capacita.toFixed(1).toLocaleString().replace(".", ",") : null,
                    cf_master:   data.cf_master != 0 ? data.cf_master: null,
                    cf_pallet:   data.cf_pallet != 0 ? data.cf_pallet: null
                  };
     const sconti = [infoArt.sco1, infoArt.sco2, infoArt.sco3, infoArt.sco4, infoArt.sco5, infoArt.sco6].filter(s => s !== null);
     const thSconti = sconti.map((_, i) => `<th>Sc.${i + 1}</th>`).join("");
     const tdSconti = sconti.map(s => `<td>${s}</td>`).join("");             
	   var artDetail = document.createElement("div");
	   artDetail.id = "detailArticolo";	
	   var artDetailHtml = `<div class='modal-overlay padding-2rem'> 
                          <div class='modal-ovf-hidden max-width-700'>
                          <div class='modal__header-info'><div class='modal__header-left'>
                          <div class='modal__header-dot'></div>
                          <span class='modal__header-title'>Dettaglio articolo</span></div>
                          <button class='modal__close closeDetailArticolo'>&times;</button></div>
                          <div class='modal__body-info'><p class='product__code'>${infoArt.cod_art}</p>
                          <p class='product__name'>${infoArt.descr}</p><div class='product__hero'>
                          <div class='product__img'><img src='${infoArt.img}' alt='${infoArt.descr}' onerror='this.replaceWith(placeholderSVG(''))'></div>
                          <p class='product__desc'>${infoArt.desc_est}</p></div>
                          <table class='data-table'><thead>
                          <tr><th>Barcode</th>
                          <th>Misura</th>
                          <th>UM</th>
                          <th>Pz. conf.</th>
                          <th>Vend. conf.</th>
                          <th>Prezzo</th>
                          ${thSconti}
                          </tr></thead><tbody>
                          <tr><td>${infoArt.barcode}</td>
                          <td>${infoArt.misura}</td>
                          <td>${infoArt.uni_di_mis}</td>
                          <td>${infoArt.qta_conf}</td>
                          <td>${infoArt.vend_conf}</td>
                          <td><span class='price-badge'>&euro; ${infoArt.prz_lordo}</span></td>
                          ${tdSconti}
                          </tr></tbody></table>
                          ${infoArt.linea || infoArt.colore || infoArt.materiale ? `
                          <table class='data-table'>
                          <thead><tr>
                          ${infoArt.linea     !== null ? `<th>Linea</th>`     : ''}
                          ${infoArt.colore    !== null ? `<th>Colore</th>`    : ''}                          
                          ${infoArt.materiale !== null ? `<th>Materiale</th>` : ''}
                          </tr></thead><tbody><tr>
                          ${infoArt.linea     !== null ? `<td>${infoArt.linea}</td>`     : ''}
                          ${infoArt.colore    !== null ? `<td>${infoArt.colore}</td>`    : ''}                          
                          ${infoArt.materiale !== null ? `<td>${infoArt.materiale}</td>` : ''}
                          </tr></tbody></table>` : ''}
                          ${infoArt.altezza || infoArt.lunghezza || infoArt.diametro || infoArt.capacita ? `
                          <table class='data-table'><thead>
                          <tr>${infoArt.altezza   !== null ? `<th>Altezza cm</th>`                    : ''}
                          ${infoArt.lunghezza !== null ? `<th>Lunghezza cm</th>`                  : ''}
                          ${infoArt.diametro  !== null ? `<th>Diametro cm</th>`                   : ''}
                          ${infoArt.capacita  !== null ? `<th>Capacità ${infoArt.um_capacita ?? ''}</th>` : ''}
                          </tr></thead>
                          <tbody><tr>
                          ${infoArt.altezza   !== null ? `<td>${infoArt.altezza}</td>`   : ''}
                          ${infoArt.lunghezza !== null ? `<td>${infoArt.lunghezza}</td>` : ''}
                          ${infoArt.diametro  !== null ? `<td>${infoArt.diametro}</td>`  : ''}
                          ${infoArt.capacita  !== null ? `<td>${infoArt.capacita}</td>`  : ''}
                          </tr></tbody></table>` : ''}
                          ${infoArt.cf_master || infoArt.cf_pallet ? `
                          <table class='data-table'>
                          <thead>
                          <tr>
                          ${infoArt.cf_master !== null ? `<th>CF. Master</th>` : ''}
                          ${infoArt.cf_pallet !== null ? `<th>CF. Pallet</th>` : ''}
                          </tr>
                          </thead>
                          <tbody>
                          <tr>
                          ${infoArt.cf_master !== null ? `<td>${infoArt.cf_master}</td>` : ''}
                          ${infoArt.cf_pallet !== null ? `<td>${infoArt.cf_pallet}</td>` : ''}
                          </tr></tbody></table>` : ''}
                          <div class='modal__footer-info'>
                          <button class='btn btn--primary closeDetailArticolo'>Chiudi</button></div></div></div></div>`;
     artDetail.innerHTML = artDetailHtml;
	   showHider();
	   $("body").append(artDetail);		
	   
     aggiungiListenerInfoArticolo();
      
 }
  
  function creaDettArticoloMobile(data, element, gestisciDatiAggiuntivi) {
    var htmlDett= "<div class='flex-column infoArticoloMobile'>" + 
                  "<div class='carrTableMobile'> " + 
                  "<div class='carrHeadingMobile'>" + 
                  "<div class='carrCellMobile'><p>BARCODE</p></div>";
    if (showMisura == "1" || showMisura == "2") {              
      htmlDett = htmlDett + "<div class='carrCellMobile'><p>MISURA</p></div>";
    }                  
    htmlDett = htmlDett + "</div>" + 
                  "<div class='table-td carrRowMobile'>" + 
                  "<div class='carrCellMobile'><p>" + data.barcode.trim() + "</p></div>";
    if (showMisura == "1" || showMisura == "2") {                     
      htmlDett = htmlDett + "<div class='carrCellMobile'><p>" + data.misura.trim() + "</p></div>";
    }
    htmlDett = htmlDett + "</div></div>" +
                  "<div class='carrTableMobile'> " +
                  "<div class='carrHeadingMobile'>" + 
                  "<div class='carrCellMobile'><p>UM</p></div>" + 
                  "<div class='carrCellMobile'><p>PZ.<br>CONF.</p></div>" +
                  "<div class='carrCellMobile'><p>VENDITA<br>CONF.</p></div>" + 
                  "</div>" + 
                  "<div class='table-td carrRowMobile'>" + 
                  "<div class='carrCellMobile'><p>" + data.uni_di_mis.trim() + "</p></div>" +
                  "<div class='carrCellMobile'><p>" + data.qta_conf + "</p></div>";
    var vendConf = "No";
    if (data.vend_conf == 1) {
      vendConf = "Si";
    }
    htmlDett = htmlDett + "<div class='carrCellMobile'><p>" + vendConf + "</p></div>" +
                  "</div></div>" +
                  "<div class='carrTableMobile'> " +
                  "<div class='carrHeadingMobile'>" + 
                  "<div class='carrCellMobile'><p>PREZZO</p></div>"; 
    if (numScoGest >= 1){
		   htmlDett = htmlDett + "<div class='carrCellMobile'><p>SC.1</p></div>";						
    }
		if (numScoGest >= 2){		
		   htmlDett = htmlDett + "<div class='carrCellMobile'><p>SC.2</p></div>";						
    }
		if (numScoGest >= 3){		
		   htmlDett = htmlDett + "<div class='carrCellMobile'><p>SC.3</p></div>";						
    }
		if (numScoGest >= 4){		
		   htmlDett = htmlDett + "<div class='carrCellMobile'><p>SC.4</p></div>";						
    }
		if (numScoGest >= 5){		
		   htmlDett = htmlDett + "<div class='carrCellMobile'><p>SC.5</p></div>";						
    }
		if (numScoGest >= 6){		
		   htmlDett = htmlDett +  "<div class='carrCellMobile'><p>SC.6</p></div>";						
      }     
      try {
          htmlDett = htmlDett + "</div>" +
              "<div class='table-td carrRowMobile'>" +
              "<div class='carrCellMobile text-prz padding-right-10'><p>" + $.data(element, 'dataImg').prz_lordo.toFixed(3).toLocaleString().replace(".", ",") + "</div>";
      } catch {
      } try {
        if (numScoGest >= 1){
		   htmlDett = htmlDett + "<div class='carrCellMobile text-prz padding-right-10'><p>" + $.data(element, 'dataImg').sco1 + "</div>";						
        }
      } catch {
      }
      try {
		if (numScoGest >= 2){		
		   htmlDett = htmlDett + "<div class='carrCellMobile text-prz padding-right-10'><p>" + $.data(element, 'dataImg').sco2 + "</div>";						
        }   
      } catch {
      }
      try {
		if (numScoGest >= 3){		
		   htmlDett = htmlDett + "<div class='carrCellMobile text-prz padding-right-10'><p>" + $.data(element, 'dataImg').sco3 + "</div>";						
        }
      } catch {
      }
      try {
		if (numScoGest >= 4){		
		   htmlDett = htmlDett + "<div class='carrCellMobile text-prz padding-right-10'><p>" + $.data(element, 'dataImg').sco4 + "</div>";						
        }
      } catch {
      }
      try {
		if (numScoGest >= 5){		
		   htmlDett = htmlDett + "<div class='carrCellMobile text-prz padding-right-10'><p>" + $.data(element, 'dataImg').sco5 + "</div>";						
        }
      } catch {
      }
      try {
		if (numScoGest >= 6){		
		   htmlDett = htmlDett + "<div class='carrCellMobile text-prz padding-right-10'><p>" + $.data(element, 'dataImg').sco6 + "</div>";						
        }
      } catch {
      }
    htmlDett = htmlDett + "</div></div>"; 
    if (gestisciDatiAggiuntivi) {
      htmlDett = htmlDett +  "<div class='carrTableMobile'> " +
                             "<div class='carrHeadingMobile'>" + 
                             "<div class='carrCellMobile'><p>LINEA</p></div>" + 
                             "<div class='carrCellMobile'><p>COLORE</p></div>" + 
                             "<div class='carrCellMobile'><p>MATERIALE</p></div>" +                  
                             "</div>" + 
                             "<div class='table-td carrRowMobile'>" + 
                             "<div class='carrCellMobile'><p>" + data.linea.trim() + "</p></div>" +
                             "<div class='carrCellMobile'><p>" + data.colore.trim() + "</p></div>" +
                             "<div class='carrCellMobile'><p>" + data.materiale.trim() + "</p></div>" +
                             "</div></div>" +
                             "<div class='carrTableMobile'> " +
                             "<div class='carrHeadingMobile'>" + 
                             "<div class='carrCellMobile'><p>ALTEZZA cm</p></div>" + 
                             "<div class='carrCellMobile'><p>LARGHEZZA cm</p></div>" + 
                             "<div class='carrCellMobile'><p>PROFONDITA' cm</p></div>" +                  
                             "</div>" + 
                             "<div class='table-td carrRowMobile'>" + 
                             "<div class='carrCellMobile text-prz padding-right-10'><p>" + data.altezza.toFixed(1).toLocaleString().replace(".", ",") + "</p></div>" +
                             "<div class='carrCellMobile text-prz padding-right-10'><p>" + data.larghezza.toFixed(1).toLocaleString().replace(".", ",") + "</p></div>" +
                             "<div class='carrCellMobile text-prz padding-right-10'><p>" + data.lunghezza.toFixed(1).toLocaleString().replace(".", ",") + "</p></div>" +
                             "</div></div>" +
                             "<div class='carrTableMobile'> " +
                             "<div class='carrHeadingMobile'>" + 
                             "<div class='carrCellMobile'><p>DIAMETRO cm</p></div>" + 
                             "<div class='carrCellMobile'><p>CAPACITA' " + data.um_capacita.trim().toLowerCase() + "</p></div>" +                                               
                             "</div>" + 
                             "<div class='table-td carrRowMobile'>" + 
                             "<div class='carrCellMobile text-prz padding-right-10'><p>" + data.diametro.toFixed(1).toLocaleString().replace(".", ",") + "</p></div>" +
                             "<div class='carrCellMobile text-prz padding-right-10'><p>" + data.capacita.toFixed(1).toLocaleString().replace(".", ",") + "</p></div>" +
                             "</div></div>";
    }
    htmlDett = htmlDett + "</div></div></div></div>"; 
   return htmlDett;
  }

    API.setAddCarrelloDiretto = function(value) {
      addCarrelloDiretto = value;
    }
    
    API.getAddCarrelloDiretto = function() {
      return addCarrelloDiretto;
    }

    API.setAddWishList = function(value) {
      addWishList = value;
    }
    
    API.getAddWishList = function() {
      return addWishList;
    }

    API.setTotCarrello = function(value) {
      totCarrello = value;
    }
    
    API.getTotCarrello = function() {
      return totCarrello;
    }

    API.setCapofilaImg = function(array) {
      capofilaImg = array;
    }

    API.clearCapofilaImg = function() {
      capofilaImg = [];
    }

    API.getCapofilaImg = function() {
      return capofilaImg;
    }

    API.setActualImage = function(value) {
      actImage = value;
    }

    API.getActualImage = function() {
      return actImage;
    }

    API.setShowVetrina = function(value) {
        isShowVetrina = value;
    }

    API.getShowVetrina = function() {
        return isShowVetrina;
    }

    API.isRicercaArticolo = function() {
      return ricercaArticolo;
    }

    API.getArtViewed = function(){
      return artViewed;
    }

    API.setArtViewed = function(artViewedIn){
      artViewed = artViewedIn;
    }

    API.setArrayPromoPerArticolo = function(arrayPromo) {
      arrayPromoPerArticolo = arrayPromo;
    }

    API.getArrayPromoPerArticolo = function() {
       return arrayPromoPerArticolo;
    }

    API.setLastCatalogoView = function(html) {
      lastCatalogoView = html;
	  $(".tableArticoliListCls").slideUp();
    }

    API.getLastCatalogoView = function() {
       return lastCatalogoView;
    }
	

  API.getTotPagesSav = function() {
	 return totPagesSav;
  }

  API.setTotPagesSav = function(pages) {
	 totPagesSav = pages;
  }
  
  
  API.getTotPages = function() {
	 return totPages;
  }

  API.setTotPages = function(pages) {
	 totPages = pages;
  }
	
    API.getArrayNovita = function() {
        return arrayNovita;
    }

    API.setArrayNovita = function(novita) {
        arrayNovita = novita;
    }

    API.creaArrayNovita = function(data) {
        arrayNovita = data.novita;
        CatalogoWidget.creaTabellaNovita();

    }

    API.creaArrayUltimePromo = function (data) {
        try {
            arrayUltimePromo = data.lastPromo;
            if (showLastPromo == "1" && arrayUltimePromo.length > 0) {
                CatalogoWidget.creaTabellaUltimePromo();
            }
        } catch {

        }

    }
    
    API.getUltimePromo = function() {
        return arrayUltimePromo;
    }   

    API.setUltimePromo = function(lastPromo) {
        arrayUltimePromo = lastPromo;
    }
         
    API.getArrayBanner = function() {
        return arrayBanner;
    }

    API.setArrayBanner = function(banner) {
        arrayBanner = banner;
    }

    API.creaArrayBanner = function(data) {
        arrayBanner = data.news;
        //20221019 spostato dopo creazione box novita CatalogoWidget.creaBannerNews();
    }

    API.creaArrayBestsellers = function (data) {
        arrayBestsellers = data.bestSellers;
        //20221019 spostato dopo creazione box novita CatalogoWidget.creaBannerNews();
    }

    API.setArrayBestsellers = function (bestsellers) {
        arrayBestsellers = bestsellers;
    }

    API.getArrayBestsellers = function () {
        return arrayBestsellers;
    }
    
    API.creaArrayArtInEvidenza = function (data) {
        artInEvidenza = data.artInEvidenza;
        //20221019 spostato dopo creazione box novita CatalogoWidget.creaBannerNews();
    }
    API.setArrayArtInEvidenza = function (array) {
        artInEvidenza = array;
    }

    API.getArrayArtInEvidenza = function () {
        return artInEvidenza;
    }

    API.setErrorOnPaginator = function(value) {
      isErrorOnPaginator = value;
    }

    API.getErrorOnPaginator = function(value) {
      return isErrorOnPaginator;
    }

    API.setArrayMarchiCategorie = function (data) {
        CatalogoFiltriWidget.setArrayMarchi(data.marchi);
        CatalogoFiltriWidget.setArrayCategorie(data.livelli);
    }

    API.creaSelettori = function(data) {
       /* riattivare da qui se voglio barra livelli
       var htmlLivelli = document.getElementById("levelTreeList").innerHTML.trim() + 
                       "<table><tr><td class='filterTableTD'>Categorie</td></tr>";
       var actLevel = "";
       var levelViewed = [];

       for( var i = 0; i < data.livelli.length; i++ ) {
         if (actLevel != data.livelli[i].liv1) {
           if (i > 0) {
             htmlLivelli = htmlLivelli + "</td></tr></table>";         
           }
           actLevel = data.livelli[i].liv1.trim();
           htmlLivelli = htmlLivelli + "<tr><td class='level1Class'  onclick='CatalogoFiltriWidget.toggleLevel(\"" + actLevel +"\")'>" + data.livelli[i].descr.trim() + "</td></tr>" + 
                            "<tr><td id='level1"+ actLevel + "' style='display: none;'><table>";
           levelViewed[actLevel] = 0;                              
        }
        if (data.livelli[i].liv2 != " ") {
          htmlLivelli = htmlLivelli + "<tr><td class='level2Class' id='leve12"+ + data.livelli[i].liv1.trim() + data.livelli[i].liv2.trim() +
          "' onclick='CatalogoWidget.showLevel(\"" + data.livelli[i].liv1.trim() + data.livelli[i].liv2.trim() +"\")'>" +
                        data.livelli[i].descr.trim() + "</td></tr>";
                             
        }          
    
      }      
      htmlLivelli = htmlLivelli + "</ul></li></ul></div>";

      
      document.getElementById("levelTreeList").innerHTML = htmlLivelli;
      CatalogoFiltriWidget.setLevelViewed(levelViewed);

     var top = $("#statusBar").height() * 2 + "px";
     var left = 25 + "px";
     $("#levelTreeList").css("top", top);
     $("#levelTreeList").css("left", left);
     $("#levelTreeList").css("position", 'absolute');
     $("#levelTreeList").css('text-align', 'left');
     $("#levelTreeList").show();
     var offset = $("#levelTreeList").offset().top;
     if ($("#tabCatalogo").outerHeight() < offset + $("#levelTreeList").outerHeight()) {
        $("#tabCatalogo").height($("#tabCatalogo").height() + offset); 
     }
      riattivare fino a qui se voglio barra dei livelli */
    
    // Livelli in barra ricerca
    
	
	      $('#levelSelector').append($('<option>', {
						  value: "all",
						  text: "Tutto il catalogo",
       })); 
	   
    if (data.livelli != undefined) {
      
      var divisioni = [];
      for( var i = 0; i < data.livelli.length; i++ ) {
        if (divisioni.indexOf(data.livelli[i].nome_divisione) == -1) {
          divisioni[divisioni.length] = data.livelli[i].nome_divisione;
        }
      }
	  
	  
      if (data.novita != undefined) {
       $('#levelSelector').append($('<option>', {
                                  value: "novita",
                                  text: "Tutte le novita'",
       })); 
       if (isWorkspace) {
         $('#levelSelector').append($('<option>', {
                                  value: "allartpromo",
                                  text: "Articoli in promozione",
         }));
       }  
	/*   
       if (isWorkspace) {
         $('#levelSelector').append($('<option>', {
                                  value: "prova",
                                  text: "PROVA",
         }));
       } 	   
	  */ 
      }
      var actLevel = "";
      var actDivisione = "";
      
      for( var i = 0; i < data.livelli.length; i++ ) {
         if (divisioni.length > 1) {
           if (actDivisione != data.livelli[i].nome_divisione) {
             actDivisione = data.livelli[i].nome_divisione;
             $('#levelSelector').append($("<option>", {
                                 value: 'divisione',
                                 text: data.livelli[i].nome_divisione.trim()
            }));         
           }
         }
         if (actLevel != data.livelli[i].liv1) {
          actLevel = data.livelli[i].liv1.trim();
          if ($("#levelSelector option[value='" + actLevel + "']").length == 0) {
            $('#levelSelector').append($('<option>', {
                                  value: actLevel,
                                  text: capitalizeFirstLetter(data.livelli[i].descr.trim())
            }));         
          } 
         }

         // Aggiungo stile alle divisioni
         if (divisioni.length > 1) {
            //$("#levelSelector").each(function(e) {
            $("#levelSelector > option").each(function() {            
                                      if (this.value == "divisione") {
                                        $(this).addClass("divisioneSelector");
                                      }                         
            }); 
         }
      }
  
    }
      
	
	$('#mrkSelector').append($('<option>', {
						  value: "all",
						  text: "Tutti i marchi",
	}));      

	// Aggiungo i marchi al selettore marchi
    if (data.marchi != undefined) {
      var divisioni = [];
      for( var i = 0; i < data.marchi.length; i++ ) {
        if (divisioni.indexOf(data.marchi[i].nome_divisione) == -1) {
          divisioni[divisioni.length] = data.marchi[i].nome_divisione;
        }
      }
      
      var actLevel = "";
      var optionText = "";
      for( var i = 0; i < data.marchi.length; i++ ) {
         if (actLevel != data.marchi[i].marchio.trim()) {
          actLevel = data.marchi[i].marchio.trim();
          optionText = data.marchi[i].marchio.trim().toUpperCase();  
          if (divisioni.length > 1) {
            optionText = data.marchi[i].marchio.trim().toUpperCase() + " ( " + data.marchi[i].nome_divisione.trim() + " )";
          }
          if ($("#mrkSelector option[value='" + actLevel + "']").length == 0) {
            $('#mrkSelector').append($('<option>', {
                                  value: actLevel,
                                  text: optionText,
            }));         
          } 
         }
      }
  
    }    
    }

    API.vaiAOfferte = function() {
      if ($("#showcaseDiv").is(":visible")) {
         closeDiv("showcaseDiv");
      }
    // 20210607 $("#tabMenu").tabs("enable");
      $("#tableWorkspace").hide();
      $("#nuoviArrivi").hide();
      for (var i = 0 ; i < CommonApis.getSessionData().elencoMenu.length; i++) {
        if (CommonApis.getSessionData().elencoMenu[i].primo_acquisto == 1) {
          var idxTab = i;
          break;
        }
      }
      // 20210607 $('#tabMenu').tabs( "option", "active", idxTab );
    }
    
    API.vaiAPromoCarrello = function(element) {
    
      var promoRif = $.data(element, 'data').promo_rif.split(";"); 
      eraseCookie("promoFromCarrello");
      createCookie("promoFromCarrello", JSON.stringify(promoRif), 365);
      // Simulo click su tab promo
      var idxTab = arrayMenuLoggato.indexOf("PROMOZIONI");
      var tabId = document.getElementsByName("tabMenu")[idxTab].id;
      $(".tabPromoCls").click();
      if ($("#divMenuTabMobile").hasClass("visibileLeft")) {
        $("#divMenuTabMobile").removeClass("visibileLeft");
      }
      
    }   
     
    API.vaiAPromo = function(codPromo) {
    
      eraseCookie("promoFromLastPromo");
      createCookie("promoFromLastPromo", codPromo.trim(), 1);
      // Simulo click su tab promo
      var idxTab = arrayMenuLoggato.indexOf("PROMOZIONI");
      var tabId = document.getElementsByName("tabMenu")[idxTab].id;
      $(".tabPromoCls").click();
      if ($("#divMenuTabMobile").hasClass("visibileLeft")) {
        $("#divMenuTabMobile").removeClass("visibileLeft");
      }
      
    }
    
    API.showErrorCarrello = function() {
      var text = "<p>Ci sono <b>" + nrCheck + "</b> articoli non inseriti a carrello.<br>Vuoi inserirli?</p>";
      $("#textErroreCarrello").empty().html(text);
      $("#errCarrello").css("width", "300px");
      $("#errCarrello").css("height", "150px");
      showHider();
      $("#errCarrello").show();
    }


     API.showVetrina = function(id) {
       if (isWorkspace && readCookie("reloadCatalogo") == null) {
         eraseCookie("reloadCatalogo");
         var scad = "";
         var image = "";
         var action = "";
         var mand = "";
         var scadOri = "";
         var imageOri = "";
         var actionOri = "";
         var mandOri = "";
         var tempImage1 = new Image();
         var showVetrina = false;
         if (id != "") {
           for (var i = 0; i < CatalogoWidget.getArrayBanner().length; i++) {
             if (CatalogoWidget.getArrayBanner()[i].id == id) {
               scad = CatalogoWidget.getArrayBanner()[i].dat_scad;
               image = CatalogoWidget.getArrayBanner()[i].nom_file.trim().replace(/ /g, "%20");
               action = CatalogoWidget.getArrayBanner()[i].azione.trim();
               mand = CatalogoWidget.getArrayBanner()[i].mand.trim();
               tipoSrch = CatalogoWidget.getArrayBanner()[i].tipo_search.trim();
               var vetrinaValues = readCookie(cookieVetrina);
               if (vetrinaValues != null) {
                 scadOri = vetrinaValues.scad;
                 imageOri = vetrinaValues.img;
                 actionOri = vetrinaValues.azione;
                 mandOri = vetrinaValues.mand;
                 tipoSearchOri = vetrinaValues.tipoSearch;
                 divisioneOri = vetrinaValues.divisione;
                 var vetrinaOri = {img: imageOri,
                                azione: actionOri,
                                scad: scadOri,
                                mand: mandOri,
                                tipoSearch : tipoSearchOri,
                                divisione: divisioneOri
                               };
                     //createCookie(cookieVetrina, JSON.stringify(vetrina), diff);
                 createCookie(cookieVetrinaSave, JSON.stringify(vetrinaOri), 1);
               }
               eraseCookie(cookieVetrina);
               var vetrina = {img: image,
                                azione: action,
                                scad: scad,
                                mand: mand,
                                divisione: divisione,
                                tipoSearch : tipoSrch
                               };
               createCookie(cookieVetrina, JSON.stringify(vetrina), 1);
               showVetrina = true;
               break;
             }
           }
         } else {
           if (readCookieValue(cookieVetrina) != null) {
              var vetrinaValues = readCookieValue(cookieVetrina);
              scad = vetrinaValues.scad.slice(0,10).replace(/-/g, "");;
              image = vetrinaValues.img.trim().replace(/ /g, "%20");
              action = vetrinaValues.azione;
              mand = vetrinaValues.mand;
              divisione = vetrinaValues.divisione;
              showVetrina = true;
           } else {
             scad = 0;
           }
         }
         var currentdate = new Date().toISOString().slice(0,10).replace(/-/g, "");
         var viewCalendario = CommonApis.getSessionData().mapperParms.showCalendario;
        // if ( currentdate <= scad || viewCalendario) {
         if ( showVetrina || viewCalendario == "1") {
           var imgPath = CommonApis.getImgDir() + divisione.trim() + "/vetrine/" + image.trim();
           //var tempImage1 = new Image();
           tempImage1.src = imgPath;
  
           var titleText = "";
           if (action.trim() != "?") {
             titleText = "Clicca qui per scoprire di pi&ugrave;";
           }
           var dialogDivMaster = document.createElement("div");
           dialogDivMaster.id="showCaseMaster";
           var htmlDiv = "<div id='showcaseDiv' class='showcaseDiv'>";
           if (showVetrina) {
               htmlDiv = htmlDiv +
                         "<img src = " + imgPath.trim() + " title = ' " + titleText + "' alt='" + titleText + "' data-tooltip='" + titleText + "' onerror='this.replaceWith(placeholderSVG(this.dataset.tooltip))'";
           //if (action.trim() != "?") {
             //htmlDiv = htmlDiv +  " id='vetrinaImg' onclick='CatalogoWidget.showArticoloVetrina()'>";
                htmlDiv = htmlDiv +  " id='vetrinaImg' action='" + action.trim() + "'>";
           }
             
             // Aggiungo immagine primo acquisto
           if (isWorkspace && readCookie(cookiePrimoAcquisto) == 1 && readCookie("reloadCatalogo") == null) {
             var title = CommonApis.getTextPrimoAcquisto();
             var imgPath = CommonApis.getImgDir() + CommonApis.getSessionData().divisione.trim() + "/vetrine/Primo_Acquisto.jpg";
             var tempImage2 = new Image();
             tempImage2.src = imgPath;
             var htmlImage = "<img src='" + imgPath + "'" +
                           " alt='" + title + "' title='" + title + "' data-tooltip='" + title + "' onerror='this.replaceWith(placeholderSVG(this.dataset.tooltip))'" +
                           " id='offerteImg'>";
           }
           // Alessandro 20251016: aggiunto calendario del giorno 
           if (viewCalendario == "1") {
             var imgPath = CommonApis.getImgDir() + CommonApis.getSessionData().divisione.trim() + "/calendario/" + currentdate +".jpg";
             var tempImage2 = new Image();
             tempImage2.src = imgPath;
             htmlDiv = htmlDiv + "<div  class='calendarioImg'><img src='" + imgPath + "'" +
                           " alt='" + title + "' title='" + title + "'></div>";
           }
             // Bottone chiusura
           htmlDiv = htmlDiv + "<div id='bigImageButton'>"+
                            "<img src = '/src/images/Close-icon.png' title='Chiudi' alt='Chiudi'></div></div>"; 
            
           dialogDivMaster.innerHTML = htmlDiv;
           showHider();
           if (document.getElementById("showCaseMaster") == undefined) { 
      	     document.getElementsByTagName("body")[0].appendChild(dialogDivMaster);
      		   
           }
     
           if (readCookie("reloadCatalogo") != null) {
                eraseCookie("reloadCatalogo");
            }
            aggiungiListenersShowcase();
    
          }

   }
 }
    



    API.showArticoloVetrina = function() {
       var vetrinaValues = readCookieValue(cookieVetrina);
       var tipoSearch = vetrinaValues.tipoSearch;
       var codice = vetrinaValues.azione;
       closeDiv("showCaseMaster");
       if (tipoSearch == "A" || tipoSearch == "M" || tipoSearch == "F") {
        // CatalogoFiltriWidget.setVetrina(codice);
        // CatalogoFiltriWidget.setTipoVetrina(tipoSearch);
         if (CatalogoFiltriWidget.isFirstFilter()) {
            CatalogoFiltriWidget.createRootTree("V");
          } else {
            CatalogoFiltriWidget.addNodesToTree();
          }
          if (tipoSearch == "A") {
            $("#ricercadesElem").val(codice);
          } else if (tipoSearch == "M") {

          } else if (tipoSearch == "F") {
          }
         CatalogoWidget.lanciaRicercaCapofila();
        } else if (tipoSearch == "P") {
           CatalogoWidget.vaiAPromo(codice);
        } else if (tipoSearch == "L") {
          pathLink = CommonApis.getImgDir() + mandatario.trim() + "/promo/" + codice.trim();
          window.open(pathLink, '_blank');
        } else if (tipoSearch == "H") {
          window.open(codice.trim(), '_blank');
        } else if (tipoSearch == "K") {
           var element;
           showLinea(element, codice); 
        }     
        if (readCookie(cookieVetrinaSave) != null) {
            vetrinaValues = readCookie(cookieVetrinaSave);
            scadOri = vetrinaValues.scad;
            imageOri = vetrinaValues.img;
            actionOri = vetrinaValues.azione;
            mandOri = vetrinaValues.mand;
            divisioneOri = vetrinaValues.divisione;
            tipoSearchOri = vetrinaValues.tipoSearch;
            var vetrinaOri = {img: imageOri,
                                azione: actionOri,
                                scad: scadOri,
                                mand: mandOri,
                                divisione: divisioneOri,
                                tipoSearch : tipoSearchOri
                               };
                     //createCookie(cookieVetrina, JSON.stringify(vetrina), diff);
            eraseCookie(cookieVetrina);
            createCookie(cookieVetrina, JSON.stringify(vetrinaOri), 1);
            eraseCookie(cookieVetrinaSave);
        }

    }
	
	
	API.showBigImage = function(descImg, imgPath){	
	
	
	    var dialogDivMaster = document.createElement("div");
        dialogDivMaster.id="showCaseMaster";
	
		var htmlDiv = "<div class='img-magnifier-container showcaseDiv' id='showcaseDiv'><img id='bigImageDivId'  src = " 
                        + imgPath.trim() + ".jpg title = ' " + descImg + "' id='bigImageImg'>" + 
                        "<div id='bigImgDescr' class='capofilaDescImage'>" + descImg + "</div></div>";

             // Bottone chiusura
           htmlDiv = htmlDiv + "<div id='bigImageButton'>"+
                            "<img src = '/src/images/Close-icon.png' title='Chiudi' alt='Chiudi'></div></div>"; 

           dialogDivMaster.innerHTML = htmlDiv;
           showHider();
           if (document.getElementById("showCaseMaster") == undefined) { 
      	     document.getElementsByTagName("body")[0].appendChild(dialogDivMaster);
      		   
           }
		 		 
		 aggiungiListenersShowcase();
		 
		var imgElement = $("#showcaseDiv img");
		
	imgElement.on("load", function() {
	  var imgHeight = imgElement.height();
	  var imgWidth = imgElement.width();
	  console.log("dentro load - img.width " + imgWidth + " img.height " + imgHeight );
	  magnify("bigImageDivId", 3);
	});

		 
		 
		
		
	}
	
	

    API.selectAllArticoli = function(codCapofila) {

		var checkHead = document.getElementsByClassName("selCkCatHeader" + codCapofila.trim());	
        var checks = document.getElementsByName("checkCat" + codCapofila.trim());
		var stato = false;
		if (checkHead[0].checked){
			stato = true;
		} 	
        for (var i = 0; i < checks.length; i++) {
        //  if (checks[i].checked) {
        //    checks[i].checked = false;
        //  } else {
        //    checks[i].checked = true;
        //  }
		
		if (stato != checks[i].checked){		
			checks[i].checked = stato;
			  //var id =  checks[i].id.replace("CKCAT_", "");
			var id = $.data(checks[i], 'data').cod_art;
			  //selArticolo(id);
			var checkElem = [];
			checkElem.push(checks[i]);
			selArticolo(checkElem);
		  }
       }
	   showBtnAddCarrello();
       //$("#hider").hide();
      }

    API.nascondiArticoli = function(idTabella, capofila) {
      $("#btn" + capofila ).show();
      $("#" + idTabella).slideUp();
    }


    API.getNovita = function() {
        var limit = 5;
        var offset = CatalogoWidget.getNovitaOffset();
        CatalogoWidget.setNovitaOffset(offset + limit);
        /*
        request =  {
          limit:limit,
          offset:offset,
        }
        jolieCallNoSpin( "getNovitaFrontend", request, CatalogoWidget.creaTabellaNovita , function( error ) { showError(error.message) } );
        */
        CatalogoWidget.creaTabellaNovita();

     }

      
      API.creaTabellaPrimoAcquisto = function() {
      
       CatalogoWidget.getMarchiPrimoAcquisto().sort;
       if (CatalogoWidget.getMarchiPrimoAcquisto().length > 0) {
          var idx = parseInt(window.innerWidth / 160);
          if (idx > 7) {
            var idx = 7;
          }

         var tableWidth = (idx * 160) + 100;
         var contentWidth = tableWidth + 10;
         var title ="Scopri gli articoli a prezzo scontato in offerta per te";
         var tableNovita = "<table id='primoAcquistoHead'><th id='primoAcquistoTitle' " +
                           "title='" + title + "' alt='" + title + "' onclick='CatalogoWidget.showPrimoAcquisto()'>In offerta per te</th>" +
                           "<tr id='primoAcquistoRecord'>" +
                           "<td class=\"primoAcquistoItem\" style='display: none; padding-left:0px!important;'>";

         var z = 0;
         for (var i = 0; i < CatalogoWidget.getMarchiPrimoAcquisto().length; i++){
           if (i > 0 && i % idx == 0) {
             tableNovita = tableNovita + "</td><td class=\"primoAcquistoItem\" style='display: none; padding-left:0px!important;'>";
             z = 0;
           }
           var marca = $.trim(CatalogoWidget.getMarchiPrimoAcquisto()[i].marca);
           var onClickAction = "CatalogoWidget.showPrimoAcquisto('" + marca + "')";
           imgUrl = CommonApis.getImgDir() + mandatario.trim() + "/marchi/" + marca.replace(/ /g, "%20") + mrkImgExt;
           var descr =  $.trim(CatalogoWidget.getMarchiPrimoAcquisto()[i].marca);
           
           tableNovita = tableNovita + "<img src = " + imgUrl + " title='" + $.trim(descr) + "'  alt='" + $.trim(descr) + "' data-tooltip='" + descr.trim() + "' onerror='this.replaceWith(placeholderSVG(this.dataset.tooltip))' " +
                   "id='#primoAcquistoMrkImage' onClick='" + onClickAction +"' >";
           z++;

        }
        // Se sono arrivato alla fine, aggiungo le immagini vuote che mancano ad arrivare al numero di immagini
        if (z < idx) {
          for (var i = 0; i < idx - z; i++) {
           var onClickAction = "";
           imgUrl = "./src/images/null.png";
           var descr = "";
           tableNovita = tableNovita + "<img src = '" + imgUrl + "' id='novitaImage'>";
          }
        }
        //20160509 tableNovita = tableNovita + "</div></td></tr></table>";
        tableNovita = tableNovita + //"</td><td style='width: 50px !important;'><img src='./src/images/More.png'>" +
                                  "</td></tr></table>";

          CatalogoWidget.setHtmlTablePrimoAcquisto(tableNovita);
        }                                                                                         
      }
	  
	  
	API.creaTabellaUltimePromo = function() {
       if (!isLogin) {
         if (CatalogoWidget.getUltimePromo().length > 0 && CommonApis.getSessionData().abilita_tab_promo == 1) {
             var htmlPromo = "<div class='border-lastpromo padding-bottom-20'>" +
             //"<div class='backg-fcfca0'>" +
                 "<div>" +
                 "<p class='newItemsTitle margin-left-5'>PROMO DEL MESE</p></div>" +
                            "<div class='lastPromoBoxContainer pos-rel ov-hid'>" + 
                            "<div class='lastPromoImgBox pos-rel ov-hid'>";
            for (var i = 0; i < CatalogoWidget.getUltimePromo().length; i++){
              var immagine = $.trim(CatalogoWidget.getUltimePromo()[i].cod) + ".jpg";
              var mand = $.trim(CatalogoWidget.getUltimePromo()[i].mand);
              var onClickAction = "CatalogoWidget.vaiAPromo(\"" +
                           $.trim(CatalogoWidget.getUltimePromo()[i].cod) + "\")";
			  var divisioneLocal = divisione.trim();
			  if (divisione.trim() == ""){
				divisioneLocal = CommonApis.getSessionData().mandatario.trim();
			  }					   
              imgUrl = CommonApis.getImgDir() + divisioneLocal + "/promo/" + immagine;
              var idName = $.trim(CatalogoWidget.getUltimePromo()[i].cod);
              var descr =  $.trim(CatalogoWidget.getUltimePromo()[i].descr);
              htmlPromo = htmlPromo + "<div class='lastPromoImage transition'" ;
	          htmlPromo = htmlPromo + "><div promo='" + idName + "' class='lastPromoImageInside pos-center backg-white'>" + 
            "<img src = " + imgUrl + " onerror='this.replaceWith(placeholderSVG(this.dataset.tooltip))' data-tooltip='" + $.trim(descr) + "'title='" + $.trim(descr) + "'   alt='" + $.trim(descr) + "'></div></div>";
            }
         }
          htmlPromo = htmlPromo +  "</div><div id='leftArrowLastPromo' class='arrowBox leftArrowBoxPromo pos-abs margin-left-5'><i class='fas fa-chevron-left'></i></div>" +
                            "<div id='rightArrowLastPromo' class='arrowBox rightArrowBoxPromo pos-abs margin-right-5'><i class='fas fa-chevron-right'></i></div></div></div>";
            
         $(".boxUltimePromo ").empty().html(htmlPromo); 
         CatalogoWidget.setHtmlTableLastPromo(htmlPromo);
       }
  }
     
	  
	 API.creaTabellaUltimiVisti = function() {
       if (!isLogin) {
        try {
         if (readCookie("ultimiVisti") != null) {
           var ultimiVisti = JSON.parse(readCookie("ultimiVisti"));
             var htmlVisti = "<div class='border-lastviewed padding-bottom-20' >" +
             //"<div class='backg-a7cafa'>" +
                 "<div>" +
                 "<p class='newItemsTitle margin-left-5'>VISTI DI RECENTE</p></div>" +
                            "<div class='lastViewedBoxContainer pos-rel ov-hid'>" + 
                            "<div class='ultimiVistiImgBox pos-rel ov-hid'>";
           var nbrElem = ultimiVisti.length -1;                      
           for (var i = nbrElem; i >= 0; i--) {
             var immagine = $.trim(ultimiVisti[i]).split(":")[1];
             //var capofila = $.trim(ultimiVisti[i]).split(":")[0].replace("_", ";");
             var capofila = $.trim(ultimiVisti[i]).split(":")[0].replaceAll("_", ";");
			       var divisioneLocal = divisione.trim();
			        if (divisione.trim() == ""){
				        divisioneLocal = CommonApis.getSessionData().mandatario.trim();
      			  }				 
              imgUrl = CommonApis.getImgDir() + divisioneLocal + "/" + immagine;
              htmlVisti = htmlVisti + "<div  class='ultimiVistiImage transition'";
              htmlVisti = htmlVisti + "><div cpf='" + capofila.trim() + "' class='ultimiVistiImageInside pos-center backg-white'><img  src = " + imgUrl + ".jpg  " + 
                          "data-tooltip='" + capofila + "' onerror='this.replaceWith(placeholderSVG(this.dataset.tooltip))' title='Visualizza gli articoli di questo capofila'  alt='Visualizza gli articoli di questo capofila'></div></div>";      
            }                 
             htmlVisti = htmlVisti +  "</div><div id='leftArrowLastViewed' class='arrowBox leftArrowBox pos-abs margin-left-5'><i class='fas fa-chevron-left'></i></div>" +
                            "<div id='rightArrowLastViewed' class='arrowBox rightArrowBox pos-abs margin-right-5'><i class='fas fa-chevron-right'></i></div></div></div>";
                      
           
         $(".boxVistiDiRecente").empty().html(htmlVisti); 
         CatalogoWidget.setHtmlUltimiVisti(htmlVisti);
        }
       } catch {
         eraseCookie("ultimiVisti");
       }
      }
     } 

  API.creaTabellaBestsellers = function () {
        if (!isLogin) {
            if (CatalogoWidget.getArrayBestsellers().length > 0) {
                var htmlBestsellers = "<div class='border-novita padding-bottom-20 '>" +
                    //"< div class='backg-b8edb8' > " +
                    "<div>" +
                    "<p class='newItemsTitle margin-left-5'>PI&Ugrave; VENDUTI</p></div > " +
                    "<div class='bestSellersBoxContainer pos-rel ov-hid'>" +
                    "<div class='bestSellersImgBox pos-rel ov-hid'>";
                for (var i = 0; i < CatalogoWidget.getArrayBestsellers().length; i++) {
                    var immagine = $.trim(CatalogoWidget.getArrayBestsellers()[i].immagine);
                    var mand = $.trim(CatalogoWidget.getArrayBestsellers()[i].mand);
                    var idName = $.trim(CatalogoWidget.getArrayBestsellers()[i].capofila);
					  var divisioneLocal = divisione.trim();
					  if (divisione.trim() == ""){
						divisioneLocal = CommonApis.getSessionData().mandatario.trim();
					  }						
                    imgUrl = CommonApis.getImgDir() + divisioneLocal + "/" + immagine;
                    var descr = $.trim(CatalogoWidget.getArrayBestsellers()[i].cod_art) + " - " + CatalogoWidget.getArrayBestsellers()[i].descr;
                    htmlBestsellers = htmlBestsellers + "<div  class='bestSellersImage transition'";
                    htmlBestsellers = htmlBestsellers + "><div cpf='" + CatalogoWidget.getArrayBestsellers()[i].capofila.trim() +
                        "' class='bestSellersImageInside pos-center backg-white'><img  src = " + imgUrl + ".jpg  data-tooltip='" + descr + "' onerror='this.replaceWith(placeholderSVG(this.dataset.tooltip))' title='" + $.trim(descr) + "'  alt='" + $.trim(descr) + "'></div></div>";
                }
                htmlBestsellers = htmlBestsellers + "</div><div class='leftArrowBestSellers arrowBox leftArrowBox pos-abs margin-left-5'><i class='fas fa-chevron-left'></i></div>" +
                    "<div class='rightArrowBestSellers arrowBox rightArrowBox pos-abs margin-right-5'><i class='fas fa-chevron-right'></i></div></div></div>";
                $(".boxBestsellers").empty().html(htmlBestsellers);
                CatalogoWidget.setHtmlTableBestsellers(htmlBestsellers);

            }
        }
  }
  
  API.creaTabellaArtInEvidenza = function () {
        if (!isLogin) {
            if (CatalogoWidget.getArrayArtInEvidenza().length > 0) {
                var htmlEvidenza = "<div class='border-novita padding-bottom-20 '>" +
                    //"< div class='backg-b8edb8' > " +
                    "<div>" +
                    "<p class='newItemsTitle margin-left-5'>ARTICOLI IN EVIDENZA</p></div > " +
                    "<div class='artInEvidenzaBoxContainer pos-rel ov-hid'>" +
                    "<div class='artInEvidenzaImgBox pos-rel ov-hid'>";
                var numCicli = CatalogoWidget.getArrayArtInEvidenza().length;
                for (var i = 0; i < numCicli; i++) {
                    var immagine = $.trim(CatalogoWidget.getArrayArtInEvidenza()[i].immagine);                    
					          var divisioneLocal = divisione.trim();
					          if (divisione.trim() == ""){
						          divisioneLocal = CommonApis.getSessionData().mandatario.trim();
					          }						
                    imgUrl = CommonApis.getImgDir() + divisioneLocal + "/" + immagine;
                    var descr = $.trim(CatalogoWidget.getArrayArtInEvidenza()[i].cod_art) + " - " + CatalogoWidget.getArrayArtInEvidenza()[i].descr;
                    htmlEvidenza += "<div  class='artInEvidenzaImage transition'";
                    htmlEvidenza += "><div cod='" + CatalogoWidget.getArrayArtInEvidenza()[i].cod_art.trim() +
                        "' class='artInEvidenzaImageInside pos-center backg-white'><img  src = " + imgUrl + ".jpg  data-tooltip='" + $.trim(descr) + "' onerror='this.replaceWith(placeholderSVG(this.dataset.tooltip))' title='" + $.trim(descr) + "'  alt='" + $.trim(descr) + "'></div></div>";
                }
                htmlEvidenza += "</div><div class='leftArrowArtInEvidenza arrowBox leftArrowBox pos-abs margin-left-5'><i class='fas fa-chevron-left'></i></div>" +
                    "<div class='rightArrowArtInEvidenza arrowBox rightArrowBox pos-abs margin-right-5'><i class='fas fa-chevron-right'></i></div></div></div>";
                $(".boxArtInEvidenza").empty().html(htmlEvidenza);
                CatalogoWidget.setHtmlTableArtInEvidenza(htmlEvidenza);

            }
        }
    }

     API.creaTabellaNovita = function() {
       if (!isLogin) {
        if (CatalogoWidget.getArrayNovita().length > 0) { 
            var htmlNovita = "<div class='border-novita padding-bottom-20 '>" +
            //"< div class='backg-b8edb8' > " +
                            "<div>" +
                            "<p class='newItemsTitle margin-left-5' id='nuoviArriviLink' title='Visualizza tutti i nuovi arrivi' alt='Visualizza tutti i nuovi arrivi' >NUOVI ARRIVI</p></div > " +
                            "<div class='nuoviArriviBoxContainer pos-rel ov-hid'>" + 
                            "<div class='nuoviArriviImgBox pos-rel ov-hid'>";
           for (var i = 0; i < CatalogoWidget.getArrayNovita().length; i++){
             var immagine = $.trim(CatalogoWidget.getArrayNovita()[i].immagine);
             var mand = $.trim(CatalogoWidget.getArrayNovita()[i].mand);
             var idName = $.trim(CatalogoWidget.getArrayNovita()[i].capofila);
			  var divisioneLocal = divisione.trim();
			  if (divisione.trim() == ""){
				divisioneLocal = CommonApis.getSessionData().mandatario.trim();
			  }					 
             imgUrl = CommonApis.getImgDir() + divisioneLocal + "/" + immagine;
             var descr =  $.trim(CatalogoWidget.getArrayNovita()[i].capofila)+ " - " + CatalogoWidget.getArrayNovita()[i].descr;
             htmlNovita = htmlNovita + "<div  class='novitaImage transition'";
             htmlNovita = htmlNovita + "><div cpf='" + CatalogoWidget.getArrayNovita()[i].capofila.trim() + "' class='novitaImageInside pos-center backg-white'>" + 
                    "<img  src = " + imgUrl + ".jpg  title='" + $.trim(descr) + "'  alt='" + $.trim(descr) + "' data-tooltip='" + $.trim(descr) + "' onerror='this.replaceWith(placeholderSVG(this.dataset.tooltip))'></div></div>";      
           }                 
            htmlNovita = htmlNovita + "</div>" +
                "<div id = 'leftArrowNovita' class='arrowBox leftArrowBox pos-abs margin-left-5' > <i class='fas fa-chevron-left'></i></div > " +
                            "<div id='rightArrowNovita' class='arrowBox rightArrowBox pos-abs margin-right-5'><i class='fas fa-chevron-right'></i></div></div></div>";
           $(".boxNuoviArrivi").empty().html(htmlNovita);
           CatalogoWidget.setHtmlTableNovita(htmlNovita);
             
        }
      } 
     }   

  API.setQtaCpf = function(element, segno) {
  
   var risp_conf = $.data(element, 'data').risp_conf;
   var qta_conf = $.data(element, 'data').qta_conf;
   var cpf = $.data(element, 'data').cod_art;
   var qtaInputName = "inputQtaCpf";
   if (CatalogoFiltriWidget.isViewGrid()) {
     qtaInputName += "Grid";
   } else {
   }
   var inputQta = document.getElementsByName(qtaInputName); 
   var qta = 0;
   var newQta = 0;
   for (var i = 0; i < inputQta.length; i++) {
     if ($(inputQta[i]).attr("cpf") == cpf) {
        qta = parseInt($(inputQta[i]).val());
        break;
     }
   }
   if (segno == "+") {
     if (risp_conf == 1) {
       newQta = qta + qta_conf;
     } else {
       newQta = qta + 1;
     }
   } else if (segno == "-") {
     if (risp_conf == 1) {
       newQta = qta - qta_conf;
     } else {
       newQta = qta - 1;
     }
     if (newQta <= 0) {
       if (risp_conf == 1) {
         newQta = qta_conf;
       } else {
         newQta = 1;
       }
     }   
   }
   $(inputQta[i]).val(newQta);
  }

  API.vaiAPromoArticolo = function(codArt) {
	  
	  vaiAPromoArticolo(codArt);
  } 


  API.showNuoviArrivi = function() {
   // Imposto il selettore livelli su novita
   $("#levelSelector").val("novita");
   CatalogoFiltriWidget.ricercaXLivelloDaSelector();
  }
  
    API.creaBannerNews = function () {
        almenoUnaNews = false;
        var today = new Date().toISOString().slice(0, 10).replace(/-/g, "");

        // Se attivo primo acquisto aggiungo locandina

        /*
        var htmlBanner = "<div><p class='newItemsTitle margin-bottom-25'>News & eventi</p></div>" +
                             "<div class='eventiBoxContainer pos-rel'>" + 
                             "<div class='eventiImg pos-abs'>";
                             */
        var classBoxContainer = "eventiBoxContainer";
        try {
            if (CatalogoWidget.getArrayBanner().length > 1) {
                classBoxContainer = "eventiBoxContainer2";
            }
        } catch {

        }


        var htmlBanner = //"<div class='backg-ececec'>" +
            //   "<p class='newItemsTitle margin-bottom-25'>NEWS & EVENTI</p></div>" +
            "<div>" +
            "<p class='newItemsTitle margin-bottom-25'>IN EVIDENZA</p></div>" +
            "<div class='" + classBoxContainer + " pos-rel ov-hid'>" +
            "<div class='eventiImg pos-rel ov-hid margin-left-85'>";



        if (isWorkspace && readCookie(cookiePrimoAcquisto) == 1) {
        }

        try {
            if (CatalogoWidget.getArrayBanner().length > 0) {
                for (var i = 0; i < CatalogoWidget.getArrayBanner().length; i++) {
                    var dataScad = CatalogoWidget.getArrayBanner()[i].dat_scad.slice(0, 10).replace(/-/g, "");
                    var tipoVisibilita = CatalogoWidget.getArrayBanner()[i].tipo_visibilita.trim();
                    var codVisibilita = CatalogoWidget.getArrayBanner()[i].cod_visibilita.split(";");
                    if (today <= dataScad) {
                        var okVolantinoCat = false;
                        var okVolantinoAge = false;
                        if (CatalogoWidget.getArrayBanner()[i].tipo_visibilita.trim() == "C") {
                            for (var x = 0; x < codVisibilita.length; x++) {
                                var lenVisibilita = codVisibilita[x].trim().length - 1;
                                if (codVisibilita[x].substring(0, lenVisibilita).trim() == CommonApis.getSessionData().cat_cli.substring(0, lenVisibilita)) {
                                    okVolantinoCat = true;
                                    break;
                                }
                            }
                        }

                        if (CatalogoWidget.getArrayBanner()[i].tipo_visibilita.trim() == "A") {
                            for (var x = 0; x < codVisibilita.length; x++) {
                                var lenVisibilita = codVisibilita[x].trim().length - 1;
                                if (codVisibilita[x].trim() == CommonApis.getSessionData().cod_age.trim()) {
                                    okVolantinoAge = true;
                                    break;
                                }
                            }
                        }

                        if (CatalogoWidget.getArrayBanner()[i].riservata == 0 || (CatalogoWidget.getArrayBanner()[i].riservata == 1 && isWorkspace)
                            || (CatalogoWidget.getArrayBanner()[i].riservata == 3 && isWorkspace && CatalogoWidget.getArrayBanner()[i].tipo_visibilita.trim() == "")
                            || (CatalogoWidget.getArrayBanner()[i].riservata == 3 && isWorkspace && CatalogoWidget.getArrayBanner()[i].tipo_visibilita.trim() == "A" && okVolantinoAge)
                            || (CatalogoWidget.getArrayBanner()[i].riservata == 3 && isWorkspace && CatalogoWidget.getArrayBanner()[i].tipo_visibilita.trim() == "C" && okVolantinoCat)) {

                            if (CatalogoWidget.getArrayBanner()[i].show_banner == 1) {
                                eraseCookie(cookieVetrina);
                                var diff = dateDiffInDays(new Date(), new Date(CatalogoWidget.getArrayBanner()[i].dat_scad));
                                if (readCookie(cookieVetrina) == null) {
                                    vetrina = {
                                        img: CatalogoWidget.getArrayBanner()[i].nom_file,
                                        azione: CatalogoWidget.getArrayBanner()[i].azione,
                                        scad: CatalogoWidget.getArrayBanner()[i].dat_scad,
                                        mand: CatalogoWidget.getArrayBanner()[i].mand,
                                        divisione: divisione,
                                        tipoSearch: CatalogoWidget.getArrayBanner()[i].tipo_search
                                    };
                                    createCookie(cookieVetrina, JSON.stringify(vetrina), 1);
                                }
                            }
                            var img = "";
                            if (CatalogoWidget.getArrayBanner()[i].nom_file.trim() != "") {
                                img = CommonApis.getImgDir() + divisione.trim() + "/vetrine/" + CatalogoWidget.getArrayBanner()[i].nom_file.trim().replace(/ /g, "%20");
                            }
                            var azione = "viewNews(" + CatalogoWidget.getArrayBanner()[i].id + ")";
                            var tipText = "Visualizza la notizia";
                            if (CatalogoWidget.getArrayBanner()[i].tipo_search == "H" || CatalogoWidget.getArrayBanner()[i].tipo_search == "L") {
                                tipText = "Vai al sito";
                            } else if (CatalogoWidget.getArrayBanner()[i].tipo_search == "A") {
                                tipText = "Visualizza articolo";
                            } else if (CatalogoWidget.getArrayBanner()[i].tipo_search == "M") {
                                tipText = "Visualizza tutto il marchio";
                            } else if (CatalogoWidget.getArrayBanner()[i].tipo_search == "P") {
                                tipText = "Visualizza la promo";
                            } else if (CatalogoWidget.getArrayBanner()[i].tipo_search == "F") {
                                tipText = "Visualizza la categoria";
                            } else if (CatalogoWidget.getArrayBanner()[i].tipo_search == "N") {
                                tipText = "Visualizza la linea";
                            }
                            var idName = CatalogoWidget.getArrayBanner()[i].id;
                            htmlBanner = htmlBanner + "<div id='" + idName + "' class='newsContent transition '>";
                            htmlBanner = htmlBanner + "<div class='newsContentInside pos-center backg-white flex-column margin-bottom-25'>";
                            // Titolo
                            htmlBanner = htmlBanner + "<div class='bannerTitle' alt='" + tipText + "' title='" + tipText + "'>" +
                                $.trim(CatalogoWidget.getArrayBanner()[i].titolo) + "</div><div>";
                            // Notizia                           
                            var news = "";
                            if (CatalogoWidget.getArrayBanner()[i].nom_file.trim() == "") {
                                news = CatalogoWidget.getArrayBanner()[i].news.substring(0, CatalogoWidget.getArrayBanner()[i].news.indexOf(".")) + "...(Leggi tutto)";
                            } else {
                                news = $.trim(CatalogoWidget.getArrayBanner()[i].news);
                            }
                            htmlBanner = htmlBanner + "<div class='bannerNews' alt='" + tipText + "' title='" + tipText + "'>" +
                                news.trim() + "</div>";

                            // Immagine
                            if (CatalogoWidget.getArrayBanner()[i].nom_file.trim() != "") {
                                htmlBanner = htmlBanner + "<div><img class='bannerRightImg' alt='" + tipText + "' title='" + tipText + "' src='" + img + "' data-tooltip='" + tiptext + "' onerror='this.replaceWith(placeholderSVG())'></div>";
                            }
                            htmlBanner = htmlBanner + "</div>" +
                                $.trim(CatalogoWidget.getArrayBanner()[i].datanews) + "</div>";
                            htmlBanner = htmlBanner + "</div>";


                            //htmlBanner = htmlBanner + "</td></tr></table></td></tr>";
                            almenoUnaNews = true;

                        }

                    }
                }
                htmlBanner = htmlBanner + "</div><div id='leftArrowLastNewsEventi' class='arrowBox leftArrowNewsEventi pos-abs'><i class='fas fa-chevron-left'></i></div>" +
                    "<div id='rightArrowLastNewsEventi' class='arrowBox rightArrowNewsEventi pos-abs'><i class='fas fa-chevron-right'></i></div></div>";

                if (almenoUnaNews) {
                    $(".boxNewsEventi").empty().html(htmlBanner);
                }
                if (CommonApis.getSessionData().abilita_tab_promo == 0) {
                    $(".boxNewsEventi").empty();
                }
            }
        } catch {

        }
    }


    API.setResetPaginator = function(value) {
       resetPaginator = value;
    }

    API.isResetPaginator = function() {
       return resetPaginator;
    }

    API.setAppendCapofila = function(value) {
       appendCapofila = value;
    }

    API.isAppendCapofila = function() {
       return appendCapofila;
    }
    
	  API.getOpenTableArtDett = function(){
		  return openTableArtDett;
	  }

    API.resetOpenTableArtDett = function(){
       openTableArtDett = [];
	  }
	  /*
	  API.pushOpenTableArtDett = function(currTableArtDett){
		openTableArtDett.push(currTableArtDett)
	  }
      */


      API.setOffset = function(offset) {
         sqlOffset = offset;
      }

      API.getOffset = function() {
         return sqlOffset;
      }

      API.setLastPromoViewed = function(value) {
         isLastPromoViewed = value;
      }

      API.getLastPromoViewed = function() {
         return isLastPromoViewed;
      }
      
      API.setPage = function(currPage) {
         page = currPage;
      }

      API.getPage = function() {
         return page;
      }

      API.setNovitaOffset = function(offset) {
         novitaOffset = offset;
      }

      API.getNovitaOffset = function() {
         return novitaOffset;
      }

      API.setBannerOffset = function(offset) {
         bannerOffset = offset;
      }
                                                                    
      API.getBannerOffset = function() {
         return bannerOffset;
      }  
       /* 20210704
      API.mostraGiacenze = function(data, codArt) {

        var giacenze = "";
        for (var i = 0; i < data.giacenza.length; i++) {
          if (data.giacenza[i].articolo.trim() == codArt) {
            var mag = data.giacenza[i].mag.trim();
            var disp = data.giacenza[i].disp;
            giacenze = giacenze + "Magazzino " + mag + ": " + disp + "\n";
          }
        }

        $("#textGiacenze").empty().append(giacenze);
        var dialog = $( "#divGiacenze" ).dialog({
                        autoOpen: false,
                        height: 300,
                        width: 350,
		                    modal: true,
                        buttons: [{text: "Ok",
                                   click: function() {
                                          $( this ).dialog( "close" );
                                          }
                                  }]
                        });
        dialog.dialog({ dialogClass: 'no-close' });
        dialog.dialog( "open" );
      }
       */

      API.caricaCatalogo = function() {
          CatalogoWidget.setCatalogoLoaded(true);
          var richiediDaServer = true;
          if (readCookie("lastCatalogoLoaded") == null) {
              CatalogoWidget.setCatalogoLoaded(false);
              CatalogoWidget.removeLocalStorageCatalogo();

          } else {
              var dataLastCatalogo = readCookie("lastCatalogoLoaded");
              var dataOggi = new Date().toISOString().slice(0, 10);
              if (dateDiffInDays(new Date(dataLastCatalogo), new Date(dataOggi)) >= 1) {
                  CatalogoWidget.setCatalogoLoaded(false);
                  CatalogoWidget.removeLocalStorageCatalogo();
              }
          }
          if (CatalogoWidget.isCatalogoLoaded()) {
              removeHider();
              richiediDaServer = false;
        }
        
        if (readCookie("dataUltMarchiCategorie") != null) {
           var ultSync = readCookie("dataUltMarchiCategorie");          
           var d = new Date();
           var today = (d.getFullYear() * 10000) + ((d.getMonth() + 1) * 100) + d.getDate();
           if (today - ultSync == 0) {
              richiediDaServer = false;
           }
        }
          
         
        if (richiediDaServer) {
          var ancheCodici = false;
          if (isWorkspace) {
            ancheCodici = false;
          }
          var listino = "";
          if (isWorkspace) {
            listino = CommonApis.getSessionData().casc_lis.trim();
          } 
          var request =  {
            cercaCodici: ancheCodici,
            isWorkspace: isWorkspace,
            listino: listino,
            mandatario: CommonApis.getSessionData().mandatario.trim(),
            divisione: CommonApis.getSessionData().divisione.trim()
          };
        
            jolieCall("getMarchiCategorie", request, caricaCatalogoSuccess, function (error) { showError(error.message) });
        } else  {
            var news = JSON.parse(localStorage.getItem("arrayNews"));
            var capofilaAutocomplete = JSON.parse(localStorage.getItem("arrayCapofilaAutocomplete"));
            var categorie = JSON.parse(localStorage.getItem("arrayCategorie"));
            var lastPromo = JSON.parse(localStorage.getItem("arrayLastPromo"));
            var livelli = JSON.parse(localStorage.getItem("arrayLivelli"));
            var mapperParms = CommonApis.getSessionData().mapperParms;
            var marchi = JSON.parse(localStorage.getItem("arrayMarchi"));
            var novita = JSON.parse(localStorage.getItem("arrayNovita"));
            var artInPromo = JSON.parse(localStorage.getItem("arrayArtInPromo"));
            var bestSellers = JSON.parse(localStorage.getItem("arrayBestSellers"));
            var artInEvidenza = JSON.parse(localStorage.getItem("arrayArtInEvidenza"));
            CommonApis.setCapofilaAutocomplete(capofilaAutocomplete);
          if (readCookie("allArticoli") != null) {
              data = {
                  capofilaAutocomplete: capofilaAutocomplete,
                  categorie: categorie,
                  latPromo: lastPromo,
                  livelli: livelli,
                  mapperParms: mapperParms,
                  marchi: marchi,
                  news: news,
                  novita: novita,
                  artInPromo: artInPromo,                  
                  allArticoli:JSON.parse(readCookie("allArticoli")),
                }
          } else {
              data = {
                  capofilaAutocomplete: capofilaAutocomplete,
                  categorie: categorie,
                  lastPromo: lastPromo,
                  livelli: livelli,
                  mapperParms: mapperParms,
                  marchi: marchi,
                  news: news,
                  novita: novita,
                  artInPromo: artInPromo,
                  bestSellers: bestSellers,
                  artInEvidenza: artInEvidenza,
                }
          }
                    
          CatalogoFiltriWidget.creaArrayMarchiCategorie(data);
          
        }
        
      }
     
    
      API.showCapofila = function(data) {
          showCapofila(data);
      }
      
      API.lanciaRicercaCapofila = function(inputField) {
          lanciaRicercaCapofila();
      }

      API.lanciaRicercaNovita = function(codNovita) {
         CatalogoFiltriWidget.removeFilter();
         CatalogoFiltriWidget.setNovita(codNovita);
         CatalogoFiltriWidget.setShowNovita(true);
         /*
         if (CatalogoFiltriWidget.isFirstFilter()) {
           CatalogoFiltriWidget.createRootTree("N");
         } else {
           CatalogoFiltriWidget.addNodesToTree();
         }
         */
         CatalogoFiltriWidget.getRicercheFatte().push(codNovita);
         lanciaRicercaCapofila();
      }



      API.create = function(id, filtro, novita) {

                  FiltroCatalogo = filtro;

                  var imgGrid = "./src/images/" + divisione.trim() + "Gridview.png";
                  var imgList = "./src/images/" + divisione.trim() + "Listview.png";
                  var tipGrid = "Visualizza a griglia";
                  var tipList = "Visualizza ad elenco";
				  
                  $("#" + id ).addClass("catalogoClass");

                  var catalogoNovita = "";      
                  if (novita) {
                    catalogoNovita = "Novita";
                  }      
                  var htmlPaginatore = "<div id=\"listCapofila" + catalogoNovita + "\">" + 
                        "<div id=\"tableArticoli\"></div></div><div id=\"listCapofilaGrid" + catalogoNovita + "\"></div> ";
                  htmlPaginatore = htmlPaginatore + "<div id='shopInCatalogo'></div>";        
                  $("#" + id ).html(htmlPaginatore);                        

      }
      


      API.lanciaRicercaArticoliDelCapofilaGrid = function(capofila, isarticolo, codArt) {
        $( "#listCapofila" ).show();
        $( "#listCapofilaGrid" ).hide();
        $(".boxPromoNovitaGrid").addClass("capofilaGridHide");
        $("#toggleCatalogoImg").attr("src", "./src/images/" + divisione.trim() + "Gridview.png");
        eraseCookie(CatalogoFiltriWidget.getCatalogoViewCookieName());
        $("#toggleCatalogoImg").attr("alt", "Visualizza a griglia");
        $("#toggleCatalogoImg").attr("title", "Visualizza a griglia");
        $("#toggleCatalogoImgBody").attr("src", "./src/images/" + divisione.trim() + "Gridview.png");
        $("#toggleCatalogoImgBody").attr("alt", "Visualizza a griglia");
        $("#toggleCatalogoImgBody").attr("title", "Visualizza a griglia");
        $(".przListLbl").addClass("display-none");
        $(".boxAddCpfGrid").addClass("display-none");
        $(".boxAddCpf").addClass("display-none");
        var offset = $("#" + capofila).offset();
        var top = offset.top - 300;
        window.scrollTo( 0, top );
        //localtion.href="#" + capofila;
        //element = document.getElementById(capofila)
        //alignWithTop = true;
        //element.scrollIntoView(alignWithTop);
        CatalogoWidget.lanciaRicercaArticoliDelCapofila(capofila, isarticolo, codArt);

      }

     
  API.lanciaRicercaArticoliDelCapofila = function(elemnt) {

       //$(".boxPromoNovitaGrid").addClass("capofilaGridHide");
     $(".boxPromoNovita").addClass("capofilaGridHide");
     var capofila = $(elemnt).attr("cpf");
     var capofilaRegular = capofila.replaceAll(";", "_");
     var isArticolo = $(elemnt).attr("isarticolo");
     var codArt = $(elemnt).attr("cod");
     var img = $(elemnt).attr("image");
	   //var elemId = document.getElementById("boxPromoNovitaGrid_" + capofila.replace(";", "_"));
     var elemId = document.getElementById("boxPromoNovitaGrid_" + capofilaRegular);
	 if (elemId != undefined){
	   elemId.style.visibility = "hidden";
	 }
     var boxLinkGrid = document.getElementsByClassName("boxPromoNovitaGrid");
     var boxLink = document.getElementsByClassName("boxPromoNovita");
     var capofilaTest = capofila.replace(/;/g, "").replace(/\//g, "S").replace(/\./g, "D");

      $("#capofilaList_" + capofila).addClass("capofilaListMobileWith100x100");
	
     if (!showImage) {
       if(artViewed[capofilaTest] == 1) {
           CatalogoWidget.setNumArtEspansi(CatalogoWidget.getNumArtEspansi() - 1);
           /*
           $(".boxAddCpfGrid" + capofila.replace(";", "_")).removeClass("display-none");
           $(".boxAddCpf" + capofila.replace(";", "_")).removeClass("display-none");
           $(".przListLblGrid" + capofila.replace(";", "_")).removeClass("display-none");
           $(".przListLbl" + capofila.replace(";", "_")).removeClass("display-none");
           */
           $(".boxAddCpfGrid" + capofilaRegular).removeClass("display-none");
           $(".boxAddCpf" + capofilaRegular).removeClass("display-none");
           $(".przListLblGrid" + capofilaRegular).removeClass("display-none");
           $(".przListLbl" + capofilaRegular).removeClass("display-none");
           $("#descEstCpf_" + img).hide();
           $("#capolifaDescEstGrid_" + img).addClass("capofilaDescToolTip");
           $("#capofilaList_" + capofila).removeClass("capofilaListMobileWith100x100");

           $( "#tableArticoli" + capofilaTest ).slideUp("0", function() {
                            for (var i = 0; i < boxLinkGrid.length; i++) {
                               if ($(boxLinkGrid[i]).attr("cpf") == capofila) {
                                 $(boxLinkGrid[i]).removeClass("display-none");
                                 break;
                               }
                            } 
                            for (var i = 0; i < boxLink.length; i++) {
                               if ($(boxLink[i]).attr("cpf") == capofila) {
                                 $(boxLink[i]).addClass("display-none");
                                 break;
                               }
                            } 		     
							if (!CatalogoFiltriWidget.isViewGrid()) {
								$("#btn" + capofilaTest ).show();
								$(".boxPromoNovita").removeClass("capofilaGridHide");                                                 
							} else{
							//	var elemId = document.getElementById("boxPromoNovitaGrid_" + capofila.replace(";", "_"));
              	var elemId = document.getElementById("boxPromoNovitaGrid_" + capofila);
								if (elemId != undefined){
									elemId.style.visibility = "visible";
								}
                /*
								$("#btnGrid" + capofilaTest.replace(";", "_") ).show();
								$("#capofilaData_" + capofila.replace(";", "_")).addClass("capofilaDataWidthGrid");
                */
                $("#btnGrid" + capofilaTest).show();
								$("#capofilaData_" + capofilaRegular).addClass("capofilaDataWidthGrid");
								if (!CommonApis.isMobile()) {									
									//$("#catalogoImgBtn_" + capofila.replace(";", "_")).removeClass("flex-row");	
                  $("#catalogoImgBtn_" + capofilaRegular).removeClass("flex-row");
								}
                /*
								$("#marcaImageGrid_" + capofila.replace(";", "_")).removeClass("display-none");	
                $("#lineaGrid_" + capofila.replace(";", "_")).removeClass("capofilaGridHide");
								$("#mrkLinea_" + capofilaTest.replace(";", "_") ).addClass("display-none");
                */
                $("#marcaImageGrid_" + capofilaRegular).removeClass("display-none");	
                $("#lineaGrid_" + capofilaRegular).removeClass("capofilaGridHide");
								$("#mrkLinea_" + capofilaTest).addClass("display-none");
							}                                                           

																						
								artViewed[capofilaTest] = 2;
								/*
                $("#desc" + capofilaTest.replace(";", "_")).attr('alt', 'Visualizza articoli');
								$("#desc" + capofilaTest.replace(";", "_")).attr('title', 'Visualizza articoli');
                */
                $("#desc" + capofilaTest).attr('alt', 'Visualizza articoli');
								$("#desc" + capofilaTest).attr('title', 'Visualizza articoli');
                

								});
								if (CatalogoFiltriWidget.isViewGrid() && !CommonApis.isMobile()) {	
									//CommonApis.setBoxCapofilaOnTop("#capofilaData_" + capofilaTest.replace(";", "_"), 500);
                   CommonApis.setBoxCapofilaOnTop("#capofilaData_" + capofilaTest, 500);
								}
													
         } else if (artViewed[capofilaTest] == 2) {
           CatalogoWidget.setNumArtEspansi(CatalogoWidget.getNumArtEspansi() + 1);
           /*
           $(".przListLblGrid" + capofila.replace(";", "_")).addClass("display-none");
           $(".przListLbl" + capofila.replace(";", "_")).addClass("display-none"); 
           $(".boxAddCpfGrid" + capofila.replace(";", "_")).addClass("display-none");
           $(".boxAddCpf" + capofila.replace(";", "_")).addClass("display-none");
           */
           $(".przListLblGrid" + capofilaRegular).addClass("display-none");
           $(".przListLbl" + capofilaRegular).addClass("display-none"); 
           $(".boxAddCpfGrid" + capofilaRegular).addClass("display-none");
           $(".boxAddCpf" + capofilaRegular).addClass("display-none");           
           $( "#tableArticoli" + capofilaTest ).slideDown();
			     if (!CatalogoFiltriWidget.isViewGrid()) {
				      //$("#btn" + capofilaTest.replace(";", "_") ).hide();
              $("#btn" + capofilaTest).hide();
			     } else {      
				     //$("#btnGrid" + capofilaTest.replace(";", "_") ).hide();
             $("#btnGrid" + capofilaTest).hide();
					 if (CommonApis.isMobile()) {
           /*
						$("#marcaImageGrid_" + capofila.replace(";", "_")).removeClass("display-none");
            $("#lineaGrid_" + capofila.replace(";", "_")).removeClass("capofilaGridHide");	
						$("#mrkLinea_" + capofilaTest.replace(";", "_") ).addClass("display-none");
            */
 						$("#marcaImageGrid_" + capofilaRegular).removeClass("display-none");
            $("#lineaGrid_" + capofilaRegular).removeClass("capofilaGridHide");	
						$("#mrkLinea_" + capofilaTest).addClass("display-none");

					 }else
					 {
           /*
						$("#marcaImageGrid_" + capofila.replace(";", "_")).addClass("display-none");
            $("#lineaGrid_" + capofila.replace(";", "_")).addClass("capofilaGridHide");	
            */
						$("#marcaImageGrid_" + capofilaRegular).addClass("display-none");
            $("#lineaGrid_" + capofilaRegular).addClass("capofilaGridHide");	            
						$("#mrkLinea_" + capofilaTest).removeClass("display-none");
            /*			 
						$("#catalogoImgBtn_" + capofila.replace(";", "_")).removeClass("flex-column");	
						$("#catalogoImgBtn_" + capofila.replace(";", "_")).addClass("flex-row");	
						$("#capofilaData_" + capofila.replace(";", "_")).removeClass("flex-column");		
						$("#capofilaData_" + capofila.replace(";", "_")).addClass("flex-row");
            */							
            $("#catalogoImgBtn_" + capofilaRegular).removeClass("flex-column");	
						$("#catalogoImgBtn_" + capofilaRegular).addClass("flex-row");	
						$("#capofilaData_" + capofilaRegular).removeClass("flex-column");		
						$("#capofilaData_" + capofilaRegular).addClass("flex-row");
					 }
					 //$("#capofilaData_" + capofila.replace(";", "_")).removeClass("capofilaDataWidthGrid");
           $("#capofilaData_" + capofilaRegular).removeClass("capofilaDataWidthGrid");
				     //$("#mrkLinea_" + capofilaTest ).show();	
				
			     } 
           artViewed[capofilaTest] = 1;
           /*
           $("#desc" + capofilaTest.replace(";", "_")).attr('alt', 'Nascondi articoli');
           $("#desc" + capofilaTest.replace(";", "_")).attr('title', 'Nascondi articoli');
           CommonApis.setBoxCapofilaOnTop("#capofilaData_" + capofilaTest.replace(";", "_"), 0);
           */
           $("#desc" + capofilaTest).attr('alt', 'Nascondi articoli');
           $("#desc" + capofilaTest).attr('title', 'Nascondi articoli');           
           CommonApis.setBoxCapofilaOnTop("#capofilaData_" + capofilaTest, 0); 
         } else {
           CatalogoWidget.setNumArtEspansi(CatalogoWidget.getNumArtEspansi() + 1);
           /*
           $(".przListLbl" + capofila.replace(";", "_")).addClass("display-none");
           $(".przListLblGrid" + capofila.replace(";", "_")).addClass("display-none");
           $(".boxAddCpfGrid" + capofila.replace(";", "_")).addClass("display-none");
           $(".boxAddCpf" + capofila.replace(";", "_")).addClass("display-none");
           */
           $(".przListLbl" + capofilaRegular).addClass("display-none");
           $(".przListLblGrid" + capofilaRegular).addClass("display-none");
           $(".boxAddCpfGrid" + capofilaRegular).addClass("display-none");
           $(".boxAddCpf" + capofilaRegular).addClass("display-none");           
           var ricerca_giacenza = false;
           var listino = "DFT";
           if (isWorkspace) {
             ricerca_giacenza = true;
             listino = listinoAttuale;
             if (listino == "") {
               listino = "DFT";
             }
           }
           var novita = false;
           if ($("#levelSelector").val() == "novita") {
             novita = true;
           }
           var request = {
               ricerca_giacenza:ricerca_giacenza,
      	       capofila: capofila,
               cod_art: codArt,
               listino: listino,
               novita: novita,
               workspace: isWorkspace,
           }
			     if (CatalogoFiltriWidget.isViewGrid()) {
  			     //$("#capofilaData_" + capofila.replace(";", "_")).removeClass("capofilaDataWidthGrid");
             $("#capofilaData_" + capofilaRegular).removeClass("capofilaDataWidthGrid");
				     //$(".marcaImageGrid").addClass("display-none");	
					 if (CommonApis.isMobile()) {
           /*
						$("#marcaImageGrid_" + capofila.replace(";", "_")).removeClass("display-none");	
            $("#lineaGrid_" + capofila.replace(";", "_")).removeClass("display-none");
						$("#mrkLinea_" + capofilaTest.replace(";", "_") ).addClass("display-none");
            */
						$("#marcaImageGrid_" + capofilaRegular).removeClass("display-none");	
            $("#lineaGrid_" + capofilaRegular).removeClass("display-none");
						$("#mrkLinea_" + capofilaTest).addClass("display-none");            
            $("#descEstCpf_" + img).show();
            $("#capolifaDescEstGrid_" + img).removeClass("capofilaDescToolTip");            
					 }else
					 {
           /*
						$("#marcaImageGrid_" + capofila.replace(";", "_")).addClass("display-none");
            $("#lineaGrid_" + capofila.replace(";", "_")).addClass("capofilaGridHide");	
						$("#mrkLinea_" + capofilaTest.replace(";", "_") ).removeClass("display-none");
						$("#catalogoImgBtn_" + capofila.replace(";", "_")).removeClass("flex-column");	
						$("#catalogoImgBtn_" + capofila.replace(";", "_")).addClass("flex-row");	
						$("#capofilaData_" + capofila.replace(";", "_")).removeClass("flex-column");					 
						$("#capofilaData_" + capofila.replace(";", "_")).addClass("flex-row");
            */							
            $("#marcaImageGrid_" + capofilaRegular).addClass("display-none");
            $("#lineaGrid_" + capofilaRegular).addClass("capofilaGridHide");	
						$("#mrkLinea_" + capofilaTest).removeClass("display-none");
						$("#catalogoImgBtn_" + capofilaRegular).removeClass("flex-column");	
						$("#catalogoImgBtn_" + capofilaRegular).addClass("flex-row");	
						$("#capofilaData_" + capofilaRegular).removeClass("flex-column");					 
						$("#capofilaData_" + capofilaRegular).addClass("flex-row");
            $("#descEstCpf_" + img).show();
            $("#capolifaDescEstGrid_" + img).removeClass("capofilaDescToolTip");            
					 }
             for (var i = 0; i < boxLinkGrid.length; i++) {
               if ($(boxLinkGrid[i]).attr("cpf") == capofila) {
                 $(boxLinkGrid[i]).addClass("display-none");
                 break;
               }
             } 	
             for (var i = 0; i < boxLink.length; i++) {
               if ($(boxLink[i]).attr("cpf") == capofila) {
                 $(boxLink[i]).removeClass("display-none");
                 break;
               }
             } 				 
			     }	
			     //$("#mrkLinea_" + capofilaTest ).show();			
		   var ultimiVisti = [];
           if (readCookie("ultimiVisti") != null) {
              ultimiVisti = JSON.parse(readCookie("ultimiVisti"));
           }
           //var cpfImage = capofila.replace(";", "_") + ":" + img;
           var cpfImage = capofila + ":" + img;
           
           if (ultimiVisti.indexOf(cpfImage) == -1) {
             if (ultimiVisti.length == 40) {
               var idxUltimiVisti = 0;
               if (readCookie("idxUltimiVisti") != null) {
                  idxUltimiVisti = readCookie("idxUltimiVisti") + 1;
                  if (idxUltimiVisti == 39) {
                    idxUltimiVisti = 0;
                  }
                  eraseCookie("idxUltimiVisti");
                  createCookie("idxUltimiVisti", idxUltimiVisti, 1);
               }
               ultimiVisti.splice(idxUltimiVisti, 1);
             }
             ultimiVisti.push(cpfImage);
             eraseCookie("ultimiVisti");
             createCookie("ultimiVisti", JSON.stringify(ultimiVisti), 7);
             CatalogoWidget.creaTabellaUltimiVisti();
           }
			     jolieCall( "getArticoliDelCapofilaFrontend", request, mostraArticoli, function( error ) { showError(error.message) } );	
		    }

	   	}
		
   }
     
     API.viewAllegati_old = function(id) {  
        if (id != undefined) {
          var dialogdiv = document.createElement("div");
	        dialogdiv.id = "linkListDiv";
          var htmlInfo = "<div class='divHeader'>Allegati articolo</div>" +
                       "<div id=\"linkList\"><ul>";
          var numAllegati = 0;             
          if (CatalogoWidget.getWorkCapofilaArray()[id].file_mm1.trim() != "") {
             
             var link = "";
             var fileName = CatalogoWidget.getWorkCapofilaArray()[id].file_mm1.trim();

             if (fileName.indexOf("http") != -1) {
               link = fileName;
             } else {
               link = CommonApis.getImgDir() + divisione.trim() + "/allegati/" + CatalogoWidget.getWorkCapofilaArray()[id].file_mm1.trim();
             }
             if (fileName.endsWith(".avi") || fileName.endsWith(".mp4") || fileName.indexOf("http")>0 ) {
                htmlInfo = htmlInfo + "<li style='padding:5 15 5 15;'><a href='" + link + "' target='_blank'>" + fileName + "</a></li>";
             } else { 
                htmlInfo = htmlInfo + "<li style='padding:5 15 5 15;'><a href='" + link + "' target='_blank'>" + fileName + "</a></li>";
            }
            numAllegati ++;
          }
          if (CatalogoWidget.getWorkCapofilaArray()[id].file_mm2.trim() != "") {
             var link = "";
             var fileName = CatalogoWidget.getWorkCapofilaArray()[id].file_mm2.trim();
             if (fileName.indexOf("http") != -1) {
               link = fileName;
             } else {
               link = CommonApis.getImgDir() + divisione.trim() + "/allegati/" + CatalogoWidget.getWorkCapofilaArray()[id].file_mm2.trim();
             }             
             htmlInfo = htmlInfo + "<li style='padding:5 15 5 15;'><a href='" + link + "' target='_blank'>" + fileName + "</a></li>";
             numAllegati ++;
          }
          
          htmlInfo = htmlInfo + "</ul></div><div class='dialogSep'></div>" +
                       "<div class='pos-center-center buttonLinkClose margin-top-20' divname='" + dialogdiv.id + "'><div class='btnCloseDiv'>Chiudi</div></div>";
                       
          dialogdiv.innerHTML = htmlInfo;
          if (numAllegati > 0) {
	          document.getElementsByTagName("body")[0].appendChild(dialogdiv);
            $("#linkListDiv").addClass("flex-column");
            $("#linkListDiv").addClass("linkListDiv");                 
            $(".divHeader").css("color", windowForegroundColor);
            $(".divHeader").css("background-color", windowBackgroundColor);
            showHider();
            $("#linkListDiv").show();               
            $(".buttonLinkClose").click(function(e) {
              e.preventDefault(); 
              removeDialog($(this).attr("divname"));
              removeHider();
           });
         }

        }      
      }
	  
    API.viewAllegati = function(id) {  
        if (id != undefined) {
          var link = "";  
          if (CatalogoWidget.getWorkCapofilaArray()[id].file_mm1.trim() != "") {
             
             
             var fileName = CatalogoWidget.getWorkCapofilaArray()[id].file_mm1.trim();

             if (fileName.indexOf("http") != -1) {
               link = fileName;
             } else {
               link = CommonApis.getImgDir() + divisione.trim() + "/allegati/" + CatalogoWidget.getWorkCapofilaArray()[id].file_mm1.trim();
             }
             window.open(link, '_blank').focus();
          }
          if (CatalogoWidget.getWorkCapofilaArray()[id].file_mm2.trim() != "") {
             var fileName = CatalogoWidget.getWorkCapofilaArray()[id].file_mm2.trim();
             if (fileName.indexOf("http") != -1) {
               link = fileName;
             } else {
               link = CommonApis.getImgDir() + divisione.trim() + "/allegati/" + CatalogoWidget.getWorkCapofilaArray()[id].file_mm2.trim();
             }
             window.open(link, '_blank').focus();            
          }
          if (CatalogoWidget.getWorkCapofilaArray()[id].allegati == 1) {             
             link = CommonApis.getImgDir() + divisione.trim() + "/allegati/" + CatalogoWidget.getWorkCapofilaArray()[id].codCapofila.trim() + ".pdf";
             window.open(link, '_blank').focus();
          }      
        }      
      }

 
 API.showCarrelloInCatalogo = function (obj) {
   
   if (!CatalogoFiltriWidget.isCarrelloInCatalogo() && !CatalogoFiltriWidget.isPreferitiInCatalogo()) {
     if (CommonApis.getDettaglioOrdine() != undefined && CommonApis.getDettaglioOrdine().length != 0 ) {
       CatalogoFiltriWidget.setCarrelloInCatalogo(true);
     } else if (CommonApis.getDettaglioWishList() != undefined && CommonApis.getDettaglioWishList().length != 0) {
       CatalogoFiltriWidget.setPreferitiInCatalogo(true);
     }
   }  
   var html = CatalogoWidget.setHtmlCarrelloInCatalogo();
	$(obj).empty().html( html );

  if (CatalogoFiltriWidget.isCarrelloInCatalogo()) {
    $(".vaiACarrelloDaCatalogo").addClass("carrelloInCatalogoSelect");
    $(".vaiACarrelloDaCatalogo").attr("alt", "Vai al carrello");
    $(".vaiACarrelloDaCatalogo").attr("title", "Vai al carrello");
  } else if (CatalogoFiltriWidget.isPreferitiInCatalogo()) {
    $(".vaiAWishDaCatalogo").addClass("carrelloInCatalogoSelect");
    $(".vaiAWishDaCatalogo").attr("alt", "Vai ai preferiti");
    $(".vaiAWishDaCatalogo").attr("title", "Vai ai preferiti");
  } 
  
  var inputdata = $("#shopInCatalogoMaster div .inputQta");
  var inputdataUp = $("#shopInCatalogoMaster div .arrowUp");
  var inputdataDown = $("#shopInCatalogoMaster div .arrowDw");
  var inputdataDelete = $("#shopInCatalogoMaster div .shopInCatalogoDelete");
  var inputdataWish = $("#shopInCatalogoMaster div .shopInCatalogoAddWish");
  var inputdataVolantino = $("#shopInCatalogoMaster div .shopInCatalogoAddVolantino");     	 
  var countrow = 0;
  var data = [];
	if (CatalogoFiltriWidget.isCarrelloInCatalogo()) {
     data = CommonApis.getDettaglioOrdine();
   } else if (CatalogoFiltriWidget.isPreferitiInCatalogo()) {
     data = CommonApis.getDettaglioWishList();
   }  
	try{ 
         for (var i = 0; i < data.length; i++) {
			     var idRiga = data[i].cod_art.trim().trim().replace(/\//g, "S").replace(/\./g, "D") + "_" + 
                        data[i].num_rig;
           var qta = 0;             
				   if (data[i].qta == undefined) {
             qta = data[i].qta_ord;
           } else {
             qta = data[i].qta;
           }   
           
		   try {
			 var descr = data[i].des_art.trim();
           } catch {
             var descr = data[i].descr.trim();
           }  

				
		   $.data(inputdata[countrow],"data",{
					      num_rig:data[i].num_rig,
    					  cod_art:data[i].cod_art.trim(),
    					  qta_conf:data[i].qta_conf,
    					  risp_conf:data[i].risp_conf,
    					  risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,
    					  nom_imm_p:"",					  
    					  desc_est:"",
    					  descr:descr,
    					  mand:data[i].mand,
    					  capofila:data[i].capofila,
    					  uni_di_mis:"",
    					  prz_lordo:0,
    					  sco1:0,
						    promo_rif:"",
						    idRiga:"CAT2_" +idRiga,
    		});
                                
           $.data(inputdataDelete[countrow],"data",{
					      num_rig:data[i].num_rig,
    					  cod_art:data[i].cod_art.trim(),
    					  qta_conf:data[i].qta_conf,
    					  risp_conf:data[i].risp_conf,
    					  risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,
    					  nom_imm_p:"",					  
    					  desc_est:"",
    					  descr:descr,
    					  mand:data[i].mand,
    					  capofila:data[i].capofila,
    					  uni_di_mis:"",
    					  prz_lordo:0,
    					  sco1:0,
    		});
           if (CatalogoFiltriWidget.isCarrelloInCatalogo()) {
                
        
                $.data(inputdataVolantino[countrow],"data",{  
                        desart:descr,                                              
                        cod_art:data[i].cod_art.trim(),
                        um:data[i].uni_di_mis.trim(),
                        qta_conf:data[i].qta_conf,
                        risp_conf:data[i].risp_conf,
                        risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,
                        prz:data[i].prz_lordo,
                        sco1:data[i].sco1,
                        sco2:data[i].sco2,
                        sco3:data[i].sco3,
                        sco4:data[i].sco4,
                        sco5:data[i].sco5,
                        sco6:data[i].sco6,
                    });
           }              
           $.data(inputdataWish[countrow],"data",{
					      num_rig:data[i].num_rig,
    					  cod_art:data[i].cod_art.trim(),
    					  qta_conf:data[i].qta_conf,
    					  risp_conf:data[i].risp_conf,
    					  risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,
    					  nom_imm_p:"",					  
    					  desc_est:"",
    					  descr:data[i].des_art,
    					  mand:data[i].mand,
    					  capofila:data[i].capofila,
    					  uni_di_mis:"",
    					  prz_lordo:data[i].prz_lordo,
                          prz:data[i].prz_lordo,
    					  sco1:data[i].sco1,
                          sco2:data[i].sco2,
                          sco3:data[i].sco3,
                          sco4:data[i].sco4,
                          sco5:data[i].sco5,
                          sco6:data[i].sco6,       
                          qta:qta,
    				   });                                               
					   
            $.data(inputdataUp[countrow],"data",{					
							  num_rig:data[i].num_rig,
							  cod_art:data[i].cod_art.trim(),
							  qta_conf:data[i].qta_conf,
							  risp_conf:data[i].risp_conf,
							  risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,
							  nom_imm_p:"",					  
							  desc_est:"",
							  descr:descr,
							  mand:data[i].mand,
							  capofila:data[i].capofila,
							  uni_di_mis:"",
							  prz_lordo:0,
							  sco1:0,
							  promo_rif:"",
							  idRiga:"CAT2_" + idRiga,
						   });    


            $.data(inputdataDown[countrow],"data",{
							  num_rig:data[i].num_rig,
							  cod_art:data[i].cod_art.trim(),
							  qta_conf:data[i].qta_conf,
							  risp_conf:data[i].risp_conf,
							  risp_conf_mand:CommonApis.getSessionData().risp_conf_mand,
							  nom_imm_p:"",					  
							  desc_est:"",
							  descr:descr,
							  mand:data[i].mand,
							  capofila:data[i].capofila,
							  uni_di_mis:"",
							  prz_lordo:0,
							  sco1:0,
							  promo_rif:"",
							  idRiga:"CAT2_" + idRiga,
						   });  						   
 
	
			countrow++;			 
		}	
	
		
	
	}  catch (error) {

	}
	aggiungiListenerCarrelloInCatalogo();
}	
  	  
	API.showMarca = function( marchio ){	
		
		 arrayLineeDaFiltrare = []; 
		 descrizioniDaFiltrare = [];
		 CatalogoFiltriWidget.resetRicercheFatte();
		 limit = CommonApis.getLimit(); 
		 CatalogoWidget.setOffset(0);
		 CatalogoWidget.setResetPaginator(true);
		 $("#tableMarchi").empty();
		 $('#levelSelector').val("all");
		 CatalogoFiltriWidget.setLivello1("");  
     CatalogoFiltriWidget.setPrimaRicerca(true);  
		 CatalogoFiltriWidget.setArrayLivello2XRicerca([]);
		 CatalogoFiltriWidget.setFirstFilter(true); 
     CatalogoFiltriWidget.setCreaElencoFiltri(true);
		 showMarca(marchio);
		
	}
      
      return API;
      }());



  var timerNovita;
  var timerLastPromo;
  var timerNewsEventi;
  var timerUltimiVisti;
  var timerBestSeller;
  var timerArtInEvidenza;


function caricaCatalogoSuccess(data) {
    //    CatalogoWidget.setCatalogoLoaded(true);
    var oggi =  new Date().toISOString().slice(0, 10);
    createCookie("lastCatalogoLoaded", oggi, 7);
    CatalogoFiltriWidget.creaArrayMarchiCategorie(data);
    
    localStorage.setItem("arrayArtInPromo", JSON.stringify(data.artInPromo));
    localStorage.setItem("arrayArtMercatino", JSON.stringify(data.artMercatino))
    localStorage.setItem("arrayBestSellers", JSON.stringify(data.bestSellers));
    localStorage.setItem("arrayCapofilaAutocomplete", JSON.stringify(data.capofilaAutocomplete));
    localStorage.setItem("arrayCategorie", JSON.stringify(data.categorie));
    localStorage.setItem("arrayLastPromo", JSON.stringify(data.lastPromo));
    localStorage.setItem("arrayLivelli", JSON.stringify(data.livelli));
    localStorage.setItem("arrayMarchi", JSON.stringify(data.marchi));    
    localStorage.setItem("arrayNews", JSON.stringify(data.news));
    localStorage.setItem("arrayNovita", JSON.stringify(data.novita));
    localStorage.setItem("arrayArtInEvidenza", JSON.stringify(data.artInEvidenza));
    
    // Se menu mercatino, controllo se ho articoli nuovi da ultimo accesso
    if (readCookie("visitMercatino") != null) {
        var mercatinoOld = JSON.parse(readCookie("articoliMercatino"));
        var menu = document.getElementsByName("tabMenu");
        var tabs = document.getElementsByName("tabMenuLink");
        var isNewArtMercatino = false;
        for (var y = 0; y < CommonApis.getArtMercatino().length; y++) {
            if (mercatinoOld.indexOf(CommonApis.getArtMercatino()[y]) == -1) {
                isNewArtMercatino = true;
                MercatinoApis.getNewArticoliMercatino().push(CommonApis.getArtMercatino()[y]);
            }
        }
    }
    if (isNewArtMercatino) {
        for (var i = 0; i < menu.length; i++) {
            if ($(menu[i]).attr("mercatino") == 1) {
                $(menu[i]).addClass("newsMercatino");
                $(menu[i]).attr("title", "Nuovi articoli inseriti nel mercatino");
                $(menu[i]).attr("alt", "Nuovi articoli inseriti nel mercatino");
                break;
            }
        }
        for (var i = 0; i < tabs.length; i++) {
            if ($(tabs[i]).attr("mercatino") == 1) {
                $(tabs[i]).addClass("tabNewsMercatino");
                break;
            }
        }
    }
    if ($("#showcaseDiv").html() == "" && document.getElementsByClassName("spinnerText").length == 0) {
        removeHider();
    }
    if (abilitaCarrello && (CommonApis.getDettaglioOrdine().length == 0 || CommonApis.getDettaglioOrdine() == undefined)) {
        getCarrello();
    }
    /*
    aggiungiListenerNewsEventi();
    aggiungiListenerBoxNovita();
    aggiungiListenerBoxUltimiVisti();
    aggiungiListenerUltimiArrivi();
    aggiungiListenerBoxPromo();
    aggiungiListenerBoxBestSellers();
    */
}

function inizializzaBoxNuoviArrivi() {

   if($(window).width() > 1023 && $(window).width() < 1279) {
     $('.nuoviArriviImgBox').width( (($(window).width()*0.75)/3) * 4 );                
   } else if ($(window).width() > 1279) { 
     $('.nuoviArriviImgBox').width( (($(window).width()*0.75)/4) * 5 );
   } else {
    $('.nuoviArriviImgBox').width( $(window).width() * 4 );
   }
   $('.nuoviArriviImgBox').delay(6000).queue(function(next){
      ruotaImmagineNovita();
      next();
   });
   
}

function ruotaImmagineUltimiVisti(verso) {
  
     var ultimiVisti = JSON.parse(readCookie("ultimiVisti"));
     if (ultimiVisti.length < 5) {
       return;
     }
     var avanti = (typeof verso === 'undefined')? true:verso;
            
     clearTimeout(timerUltimiVisti);
            
     var padre = $('.ultimiVistiImgBox');
     var figlio = (avanti)? padre.find($('.ultimiVistiImage').first()) : padre.find($('.ultimiVistiImage').last());
     if(avanti) {
          figlio.addClass('sparito').delay(600).queue(function(next){
          $(this).removeClass('sparito').detach();
          padre.append(figlio);
          next();
          });
     } else {
          figlio.addClass('sparito').detach();
          padre.prepend(figlio).delay(10).queue(function(next){
          figlio.removeClass('sparito');
          next();
     });
  }
            
            
    timerUltimiVisti = setTimeout(ruotaImmagineUltimiVisti, CatalogoFiltriWidget.getTimerRotazioneImmagini());
}
  
function ruotaImmagineNovita(verso) {
  
     var avanti = (typeof verso === 'undefined')? true:verso;
            
     clearTimeout(timerNovita);
            
     var padre = $('.nuoviArriviImgBox');
     var figlio = (avanti)? padre.find($('.novitaImage').first()) : padre.find($('.novitaImage').last());
     if(avanti) {
          figlio.addClass('sparito').delay(600).queue(function(next){
          $(this).removeClass('sparito').detach();
          padre.append(figlio);
          next();
          });
     } else {
          figlio.addClass('sparito').detach();
          padre.prepend(figlio).delay(10).queue(function(next){
          figlio.removeClass('sparito');
          next();
     });
  }
            
            
    timerNovita = setTimeout(ruotaImmagineNovita, CatalogoFiltriWidget.getTimerRotazioneImmagini());
}
   


function inizializzaBoxNewsEventi() {

   if($(window).width() > 1023 && $(window).width() < 1279) {
     $('.eventiImg').width( (($(window).width()*0.75)/3) * 4 );                
   } else if ($(window).width() > 1279) { 
     $('.eventiImg').width( (($(window).width()*0.75)/4) * 5 );
   } else {
    $('.eventiImg').width( $(window).width() * 4 );
   }
   $('.eventiImg').delay(6000).queue(function(next){
      ruotaImmagineNewsEventi();
      next();
   });
   
} 
 
function ruotaImmagineNewsEventi(verso) {
  
     var avanti = (typeof verso === 'undefined')? true:verso;
            
     clearTimeout(timerNewsEventi);
            
     var padre = $('.eventiImg');
     var figlio = (avanti)? padre.find($('.newsContent').first()) : padre.find($('.newsContent').last());
     if(avanti) {
          figlio.addClass('sparito').delay(600).queue(function(next){
          $(this).removeClass('sparito').detach();
          padre.append(figlio);
          next();
          });
     } else {
          figlio.addClass('sparito').detach();
          padre.prepend(figlio).delay(10).queue(function(next){
          figlio.removeClass('sparito');
          next();
     });
	
	} 
  	 
	 timerNewsEventi = setTimeout(ruotaImmagineNewsEventi, CatalogoFiltriWidget.getTimerRotazioneImmagini());

}  

function inizializzaBoxUltimiVisti() {

   if($(window).width() > 1023 && $(window).width() < 1279) {
     $('.ultimiVistiImgBox ').width( (($(window).width()*0.75)/3) * 4 );                
   } else if ($(window).width() > 1279) { 
     $('.ultimiVistiImgBox ').width( (($(window).width()*0.75)/4) * 5 );
   } else {
    $('.ultimiVistiImgBox ').width( $(window).width() * 4 );
   }
   $('.ultimiVistiImgBox ').delay(6000).queue(function(next){
      ruotaImmagineUltimiVisti();
      next();
   });
   
} 

function inizializzaBoxBestSellers() {

    if ($(window).width() > 1023 && $(window).width() < 1279) {
        $('.bestSellersImgBox  ').width((($(window).width() * 0.75) / 3) * 4);
    } else if ($(window).width() > 1279) {
        $('.bestSellersImgBox  ').width((($(window).width() * 0.75) / 4) * 5);
    } else {
        $('.bestSellersImgBox  ').width($(window).width() * 4);
    }
    $('.bestSellersImgBox  ').delay(6000).queue(function (next) {
        ruotaImmagineBestSellers();
        next();
    });

}

function inizializzaBoxArtInEvidenza() {

    if ($(window).width() > 1023 && $(window).width() < 1279) {
        $('.artInEvidenzaImgBox').width((($(window).width() * 0.75) / 3) * 4);
    } else if ($(window).width() > 1279) {
        $('.artInEvidenzaImgBox').width((($(window).width() * 0.75) / 4) * 5);
    } else {
        $('.artInEvidenzaImgBox').width($(window).width() * 4);
    }
    $('.artInEvidenzaImgBox').delay(6000).queue(function (next) {
        ruotaImmagineArtInEvidenza();
        next();
    });

}

function inizializzaBoxPromo() {

   if($(window).width() > 1023 && $(window).width() < 1279) {
     $('.lastPromoImgBox').width( (($(window).width()*0.75)/3) * 4 );                
   } else if ($(window).width() > 1279) { 
     $('.lastPromoImgBox').width( (($(window).width()*0.75)/4) * 5 );
   } else {
    $('.lastPromoImgBox').width( $(window).width() * 4 );
   }
   $('.lastPromoImgBox').delay(6000).queue(function(next){
      ruotaImmaginePromo();
      next();
   });
   
 }
  
function ruotaImmaginePromo(verso) {
	  
     var avanti = (typeof verso === 'undefined')? true:verso;
            
     clearTimeout(timerLastPromo);

     var padre = $('.lastPromoImgBox');
     var figlio = (avanti)? padre.find($('.lastPromoImage').first()) : padre.find($('.lastPromoImage').last());
     if(avanti) {
          figlio.addClass('sparito').delay(600).queue(function(next){
          $(this).removeClass('sparito').detach();
          padre.append(figlio);
          next();
          });
     } else {
          figlio.addClass('sparito').detach();
          padre.prepend(figlio).delay(10).queue(function(next){
          figlio.removeClass('sparito');
          next();
     });
  }
            
            
    timerLastPromo = setTimeout(ruotaImmaginePromo, CatalogoFiltriWidget.getTimerRotazioneImmagini());
         
} 

function ruotaImmagineBestSellers(verso) {

    var avanti = (typeof verso === 'undefined') ? true : verso;

    clearTimeout(timerBestSeller);

    var padre = $('.bestSellersImgBox');
    var figlio = (avanti) ? padre.find($('.bestSellersImage').first()) : padre.find($('.bestSellersImage').last());
    if (avanti) {
        figlio.addClass('sparito').delay(600).queue(function (next) {
            $(this).removeClass('sparito').detach();
            padre.append(figlio);
            next();
        });
    } else {
        figlio.addClass('sparito').detach();
        padre.prepend(figlio).delay(10).queue(function (next) {
            figlio.removeClass('sparito');
            next();
        });
    }


    timerBestSeller = setTimeout(ruotaImmagineBestSellers, CatalogoFiltriWidget.getTimerRotazioneImmagini());

}

function ruotaImmagineArtInEvidenza(verso) {

    var avanti = (typeof verso === 'undefined') ? true : verso;

    clearTimeout(timerArtInEvidenza);

    var padre = $('.artInEvidenzaImgBox');
    var figlio = (avanti) ? padre.find($('.artInEvidenzaImage').first()) : padre.find($('.artInEvidenzaImage').last());
    if (avanti) {
        figlio.addClass('sparito').delay(600).queue(function (next) {
            $(this).removeClass('sparito').detach();
            padre.append(figlio);
            next();
        });
    } else {
        figlio.addClass('sparito').detach();
        padre.prepend(figlio).delay(10).queue(function (next) {
            figlio.removeClass('sparito');
            next();
        });
    }


    timerArtInEvidenza = setTimeout(ruotaImmagineArtInEvidenza, CatalogoFiltriWidget.getTimerRotazioneImmagini());

}

function selArticoloCheckPromo(codArt){
		
		var elementCk = $("#CKCAT_" + codArt.replace(/\//g, "S").replace(/\./g, "D"));		
		
		if (elementCk[0].checked) {		
			//checkPromoInsDiretta(elementCk);	
			selArticolo(elementCk);			
		}
		
		showBtnAddCarrello();
		
	}
  
  
  
  	function selArticolo(element){

		//checkPromoArt(codArt);
		var codArt = $.data(element[0], 'data').cod_art;
		var element = $("#CKCAT_" + codArt.replace(/\//g, "S").replace(/\./g, "D"));

		var qta = 0;
		var risp_conf = $.data(element[0], 'data').risp_conf;
		var risp_conf_mand = $.data(element[0], 'data').risp_conf_mand;

		if (element[0].checked) {
		  nrCheck = nrCheck + 1;
			  if(risp_conf == 1 && risp_conf_mand == 1){
				 qta = $.data(element[0], 'data').qta_conf;
		  } else {
				 qta = 1;
			}

		} else {
		  nrCheck = nrCheck - 1;
		}
		
	
		//showBtnAddCarrello();
		$("#CAT_" + codArt.replace(/\//g, "S").replace(/\./g, "D")).val(qta);
		
		checkPromoInsDiretta(element);		

	}
	
  
	function selArticolo_old(codArt){

	checkPromoArt(codArt);

	var element = $("#CKCAT_" + codArt.replace(/\//g, "S").replace(/\./g, "D"));

	var qta = 0;
	var risp_conf = $.data(element[0], 'data').risp_conf;
    var risp_conf_mand = $.data(element[0], 'data').risp_conf_mand;

    if (element[0].checked) {
      nrCheck = nrCheck + 1;
		  if(risp_conf == 1 && risp_conf_mand == 1){
			 qta = $.data(element[0], 'data').qta_conf;
      } else {
			 qta = 1;
	    }

    } else {
      nrCheck = nrCheck - 1;
    }
    showBtnAddCarrello();
	$("#CAT_" + codArt.replace(/\//g, "S").replace(/\./g, "D")).val(qta);

	}
	
	


function showBtnAddCarrello() {
  nrCheck = 0;
  var capofila = "";
  var checks = document.getElementsByClassName("selCkCat");
  for (var i = 0; i < checks.length; i++) {
    if (checks[i].checked) {
      capofila = $(checks[i]).closest('div').closest('tr').attr('id');
      nrCheck ++;
    }
  }

  var nrSel = "Articoli selezionati <b>" + nrCheck + "</b>";
  //var mnu = document.getElementsByClassName("menuItem");
	if (nrCheck > 0) {
    //$(".carrelloImage").show();
    //$("#addCarrelloBtn").show();
    //$("#addCarrelloBtn").prop('disabled', false);
	$("#addCarrelloBtn").removeClass("disable-div");
	$("#addCarrelloBtn").addClass("enable-div-carrelloBtn");
	
    /*
    20180226 - Non visualizzo più il bottone nella tabella
    $("#addCarrelloBtnTable" + capofila.replace(/\//g, "S").replace(/\./g, "D")).show();
    $("#addCarrelloBtnTable" + capofila.replace(/\//g, "S").replace(/\./g, "D")).css("width",  $("#addCarrelloBtn").width() + "px");
    $("#addCarrelloBtnTable" + capofila.replace(/\//g, "S").replace(/\./g, "D")).hover(function(){
                                        $("#addCarrelloBtnTable" + capofila.replace(/\//g, "S").replace(/\./g, "D")).css("cursor", "pointer");
                                        $("#addCarrelloBtnTable" + capofila.replace(/\//g, "S").replace(/\./g, "D")).css("color", "#dbdbdb");
                                      });
    */
    $(".numSelezionati").empty().html(nrSel).show();
    //20180413 $("#tabMenu").tabs( "option", "disabled", [1, 2, 3, 4, 5, 6] );
  // 20210607  var actTab = $("#tabMenu").tabs('option', 'active');

	menuEnable(false);
/*
    for (var i = 0; i < mnu.length; i++) {
      if (!$(mnu[i]).hasClass("menuSelect")) {
        $(mnu[i]).addClass("menuDisabled");
      }
    }  
*/  

  // 20210607 $("#tabMenu").tabs( "option", "disabled", arrayTabDisabled);    
    gestPaginatorFunction(false);
    // SE sono nelle offerte, blocco ricerca
    if ($("#findPrimoAcqArt").is(":visible")) {
      var radios = document.getElementsByName("offerteView"); 
      for (var i = 0; i < radios.length; i++) {
         radios[i].disabled = true;
      }
      $("#findPrimoAcqArt").prop('disabled', true);
    }
  } else {
   // $(".carrelloImage").hide();
    //$("#addCarrelloBtn").prop('disabled', true);
	$("#addCarrelloBtn").addClass("disable-div");
	$("#addCarrelloBtn").removeClass("enable-div-carrelloBtn");
	
    //$("#addCarrelloBtn").hide();
    $("[id^=addCarrelloBtnTable]").hide();
    nrSel = "Articoli selezionati <b>0</b>";
    $(".numSelezionati").empty().html(nrSel).show();;
    gestPaginatorFunction(true);
	menuEnable(true);
	/*
    for (var i = 0; i < mnu.length; i++) {
      if ($(mnu[i]).hasClass("menuDisabled")) {
        $(mnu[i]).removeClass("menuDisabled");
      }
    }
	*/
   // 20210607 $("#tabMenu").tabs("enable");
    if ($("#findPrimoAcqArt").is(":visible")) {
      var radios = document.getElementsByName("offerteView"); 
      for (var i = 0; i < radios.length; i++) {
         radios[i].disabled = false;
      }
      $("#findPrimoAcqArt").prop('disabled', false);
    }
	
	insPromoDirettaSel = [];  
		
  }
}


function menuEnable(abilita){
	var mnu = document.getElementsByClassName("menuItem");
	
	if (abilita){
		for (var i = 0; i < mnu.length; i++) {
		  if ($(mnu[i]).hasClass("menuDisabled")) {
			$(mnu[i]).removeClass("menuDisabled");
		  }
		}
	}else //disabilita menu
	{
		for (var i = 0; i < mnu.length; i++) {
		  if (!$(mnu[i]).hasClass("menuSelect")) {
			$(mnu[i]).addClass("menuDisabled");
		  }
		}  		
	}
	
}


function gestPaginatorFunction(enable) {
  if (enable) {
    var allPages = document.getElementsByClassName("page");
    var lastPages = document.getElementsByClassName("last");
    var nextPages = document.getElementsByClassName("next");
    for (var i = 0; i < allPages.length; i++) {
       if (allPages[i].className.indexOf("active") == -1){
          allPages[i].className = "page";
       }
    }
    for (var i = 0; i < nextPages.length; i++) {
       nextPages[i].className = "next";
    }
    for (var i = 0; i < lastPages.length; i++) {
       lastPages[i].className = "last";
    }
  } else {
    var allPages = document.getElementsByClassName("page");
    var lastPages = document.getElementsByClassName("last");
    var nextPages = document.getElementsByClassName("next");
    for (var i = 0; i < allPages.length; i++) {
       if (allPages[i].className.indexOf("active") == -1){
          allPages[i].className = allPages[i].className + " disabled";
       }
    }
    for (var i = 0; i < nextPages.length; i++) {
       nextPages[i].className = nextPages[i].className + " disabled";
    }
    for (var i = 0; i < lastPages.length; i++) {
       lastPages[i].className = lastPages[i].className + " disabled";
    }
  }
}

function addQtaLocal(element, typeOp, mobile_suff){

  var codArt= $.data(element, 'data').cod_art;
  var inputElement = document.getElementById("CAT_" + mobile_suff + codArt );
	addQta(inputElement, typeOp);

	
	var elementCk = $("#CKCAT_" + codArt.replace(/\//g, "S").replace(/\./g, "D"));
	if (!elementCk[0].checked) {
		$("#CKCAT_" + codArt.replace(/\//g, "S").replace(/\./g, "D")).prop('checked', true);
		//checkPromoArt(codArt);
		checkPromoInsDiretta(elementCk);
	}
  showBtnAddCarrello();
}


function removeQtaLocal(element, typeOp, mobile_suff) {

  var codArt= $.data(element, 'data').cod_art;
  var qtaConf = $.data(element, 'data').qta_conf;
  var inputElement = document.getElementById("CAT_" + mobile_suff  + codArt);
	removeQta(inputElement, typeOp);

	var qta = $("#CAT_" + codArt.replace(/\//g, "S").replace(/\./g, "D")).val();
  var almenoUno = false;
  if (qta == qtaConf && showQtaInCatalogo == "1") {
    $("#CKCAT_" + codArt.replace(/\//g, "S").replace(/\./g, "D")).prop('checked', false);
  } else if (qta > 0){
		$("#CKCAT_" + codArt.replace(/\//g, "S").replace(/\./g, "D")).prop('checked', true);
	} else {
		$("#CKCAT_" + codArt.replace(/\//g, "S").replace(/\./g, "D")).prop('checked', false);
	}
  showBtnAddCarrello();
}

function addCarrelloDiretto(element, mobile_suff){
  CatalogoWidget.setAddCarrelloDiretto(true);
  CatalogoWidget.setAddWishList(false);
	var codArt= $.data(element, 'data').cod_art;
	var elementCk = $("#CKCAT_" + codArt.replace(/\//g, "S").replace(/\./g, "D"));
	if (!elementCk[0].checked) {
		$(elementCk).prop('checked', true);
		//checkPromoArt(codArt);
		checkPromoInsDiretta(elementCk);
	} else {
	CommonApis.setSelCk("selCkCat");
    addCarrelloArticoliTabella(mobile_suff);
  }
}

function addWishList(element, mobile_suff){
  CatalogoWidget.setAddWishList(true);
  CatalogoWidget.setAddCarrelloDiretto(false);
  var codArt= $.data(element, 'data').cod_art;
  var elementCk = $("#CKCAT_" + codArt.replace(/\//g, "S").replace(/\./g, "D"));
  if (!elementCk[0].checked) {
    elementCk[0].checked = true;
  }
  CommonApis.setSelCk("selCkCat");
  addCarrelloArticoliTabella(mobile_suff); 

}

function updateRigaLocal(element, typeOp, mobile_suff){

  var codArt= $.data(element, 'data').cod_art;
  var inputElement = document.getElementById("CAT_" + mobile_suff + codArt);
	updateRiga(inputElement, typeOp);

	var codArt= $.data(element, 'data').cod_art;
	var elementCk = $("#CKCAT_" + codArt.replace(/\//g, "S").replace(/\./g, "D"));
	var qta = $("#CAT_" + codArt.replace(/\//g, "S").replace(/\./g, "D")).val();

	if (qta > 0 && !elementCk[0].checked){
		$("#CKCAT_" + codArt.replace(/\//g, "S").replace(/\./g, "D")).prop('checked', true);
		//checkPromoArt(codArt);
		checkPromoInsDiretta(elementCk);
	} else
	if (qta == 0)
	{
		$("#CKCAT_" + codArt.replace(/\//g, "S").replace(/\./g, "D")).prop('checked', false);
	}
	showBtnAddCarrello();


}

function inserisciCarrelloDaErrore(value) {

 if (value == 0) {
   $("#hider").hide();
   $("#errCarrello").hide();
   nrCheck = 0;
   $("#filterPanel").hide();
   if (CatalogoWidget.getErrorOnPaginator())  {
     CatalogoWidget.setErrorOnPaginator(false);
     showBtnAddCarrello();
     if (CatalogoWidget.getPage() == 1) {
       CatalogoWidget.setOffset(0);
     } else {
       CatalogoWidget.setOffset((CommonApis.getLimit() * CatalogoWidget.getPage()) - CommonApis.getLimit());
     }
     $(document).scrollTop(0);
     CatalogoWidget.setResetPaginator(false);
     gestPaginatorFunction(true);
   // 20210607  $("#tabMenu").tabs("enable");
     CatalogoWidget.lanciaRicercaCapofila();
   } else {

     CatalogoFiltriWidget.removeFilter();
     showBtnAddCarrello();
   //  $("#filterPanel").hide();
   }
 } else if (value == 1) {
   CommonApis.setSelCk("selCkCat");
   addCarrelloArticoliTabella("");
   $("#hider").hide();
   $("#errCarrello").hide();
   if (CatalogoWidget.getErrorOnPaginator())  {
     if (CatalogoWidget.getPage() == 1) {
       CatalogoWidget.setOffset(0);
     } else {
       CatalogoWidget.setOffset((CommonApis.getLimit() * CatalogoWidget.getPage()) - CommonApis.getLimit());
     }
     $(document).scrollTop(0);
     CatalogoWidget.setResetPaginator(false);
     CatalogoWidget.lanciaRicercaCapofila();
   }
 } else if (value == 2) {
   $("#hider").hide();
   $("#errCarrello").hide();
   showBtnAddCarrello();
   //$("#filterPanel").show();
 }
}



function addCarrelloArticoliTabella(mobile_suff, elemIn){

	var updriga = [];
	var request ;
	var table;
	var openTable = CatalogoWidget.getOpenTableArtDett();
	var promoListOrdine = [];
	var listPromoInserite = [];
	  
	  var selElement = CommonApis.getSelCk();
	  var checks = document.getElementsByClassName(selElement);
	  
	  if (elemIn != undefined){ //da inserimento veloce o wishlist bottone carrello
		  
		var element  = elemIn;
		var qta_ord = $.data(element[0], 'data').qta_ord;
	  
		var codProScelta = $.data(element[0], 'data').codProScelta;
		var insPromoDiretta = $.data(element[0], 'data').insPromoSelez;		
		var listPromo = $.data(element[0], 'data').promoOkListCod;
		
		  if (insPromoDiretta != "" && insPromoDiretta != undefined){
			var go = true;
			if ($.data(element[0], 'data').insPromoQtaMin != undefined && $.data(element[0], 'data').insPromoQtaMin > 0){
				var qta_min_promo = $.data(element[0], 'data').insPromoQtaMin;
				if ($.data(element[0], 'data').insPromoFlgConf == 1){
					var qta_promo = qta_min_promo;
					if ($.data(element[0], 'data').insPromoQtaConf != undefined){
						qta_promo = qta_min_promo * $.data(element[0], 'data').insPromoQtaConf;									
					}
					if (qta_ord < qta_promo){
						go = false;
						listPromo = [];
					}
					
				}	
		
			}			  
			  
			if (go){
				  
				if (promoListOrdine.length == 0 && $.data(element[0], 'data').promoListOrdine != undefined){
					promoListOrdine = $.data(element[0], 'data').promoListOrdine;				
				}
				
				if (promoListOrdine.indexOf(insPromoDiretta) == -1 && promoDaSconti == 0) {			
					promoListOrdine[promoListOrdine.length] = insPromoDiretta;
				
					updriga.push({qta_ord:1, cod_art:insPromoDiretta, isPromo:1});
					listPromoInserite.push(insPromoDiretta);
				}
			}
		}

		if (listPromoInserite.length > 0){
			CommonApis.setListPromoInserite(listPromoInserite);
		}		  
		
		var cod_art = elemIn.cod_art;

		
		updriga.push({cod_art:cod_art, qta_ord:qta_ord, codPromoList:listPromo, codProScelta:codProScelta});
		var request = {updriga: updriga, returnDoc: true}
		
		if (elemIn.inserimentoVeloce == true){
			jolieCall( "inserimentoVeloceFrontend", request, caricaCarrello, function( error ) { showError(error.message) } );  
		}else
		if (elemIn.inserimentoWisthList == true){
			jolieCall( "insArtWishToCarrelloFrontend", request, insWishArtToCarrelloResult, function( error ) { showError(error.message) } );	
		}else
		if (elemIn.inserimentoWisthListDaCatalogo == true){
			addCarrelloFromPreferitiInCatalogoStep3(request);		
		}			
		
		
		
		
	  }else
	  {
		  for (var i = 0; i < checks.length; i++) {
			if (checks[i].checked) { 
				if (CommonApis.getSelCk() == "selCkCatWsh"){//da wishList
						var element = $("#" + checks[i].id);
						var codArt= $.data(element[0], 'data').cod_art;
						var listPromo = $.data(element[0], 'data').promoOkListCod;
						var inputElement = document.getElementById("WSH_" + codArt);
						var qta_ord = parseFloat(inputElement.value); 	
						var codProScelta = $.data(element[0], 'data').codProScelta;
						var insPromoDiretta = $.data(element[0], 'data').insPromoSelez;
						  
						  if (insPromoDiretta != "" && insPromoDiretta != undefined){
							if (promoListOrdine.length == 0 && $.data(element[0], 'data').promoListOrdine != undefined){
								promoListOrdine = $.data(element[0], 'data').promoListOrdine;				
							}
							
							if (promoListOrdine.indexOf(insPromoDiretta) == -1 && promoDaSconti == 0) {
				
								promoListOrdine[promoListOrdine.length] = insPromoDiretta;
							
								updriga.push({qta_ord:1, cod_art:insPromoDiretta, isPromo:1});
								listPromoInserite.push(insPromoDiretta);							
							}
				
						  }
						  
							updriga.push({qta_ord:qta_ord, cod_art:codArt, codPromoList:listPromo, codProScelta:codProScelta, newriga:false});
					
					checks[i].checked = false;
				}else
				{//da catalogo
					  var element = $("#" + checks[i].id);
					  var codArt= $.data(element[0], 'data').cod_art;
						var listPromo = $.data(element[0], 'data').promoOkListCod;
					  var qtaCnf = $.data(element[0], 'data').qta_conf;
						var qta_ord ;
						if ($( "#CAT_" + mobile_suff + codArt.replace(/\//g, "S").replace(/\./g, "D")).is(":visible")){
							qta_ord = $( "#CAT_" + mobile_suff +  codArt.replace(/\//g, "S").replace(/\./g, "D")).val();
						}
					  if (qta_ord == undefined) {
						 qta_ord = $( "#CAT_CPF_GRID" + codArt.replace(/\//g, "S").replace(/\./g, "D")).val();
					  }
					  if (qta_ord == undefined) {
						 qta_ord = $( "#CAT_CPF" + codArt.replace(/\//g, "S").replace(/\./g, "D")).val();
					  }   
						var codProScelta = $.data(element[0], 'data').codProScelta;
						var insPromoDiretta = $.data(element[0], 'data').insPromoSelez;

					  if (CatalogoWidget.getAddWishList()) {

						if (qta_ord == 0) {
						  qta_ord = qtaCnf;
						}
						var prz = $.data(element[0], 'data').prz;
						var sco1 = $.data(element[0], 'data').sco1;
						var sco2 = $.data(element[0], 'data').sco2;
						var sco3 = $.data(element[0], 'data').sco3;
						var sco4 = $.data(element[0], 'data').sco4;
						var sco5 = $.data(element[0], 'data').sco5;
						var sco6 = $.data(element[0], 'data').sco6;
						updriga.push({qta_ord:qta_ord, cod_art:codArt, prz:prz, sco1:sco1, sco2:sco2, sco3:sco3, sco4:sco4, sco5:sco5, sco6:sco6});
					  } else {
						  
						if (insPromoDiretta != "" && insPromoDiretta != undefined){
							var go = true;
							if ($.data(element[0], 'data').insPromoQtaMin != undefined && $.data(element[0], 'data').insPromoQtaMin > 0){
								var qta_min_promo = $.data(element[0], 'data').insPromoQtaMin;
								if ($.data(element[0], 'data').insPromoFlgConf == 1){
									var qta_promo = qta_min_promo;
									if ($.data(element[0], 'data').insPromoQtaConf != undefined){
										qta_promo = qta_min_promo * $.data(element[0], 'data').insPromoQtaConf;									
									}
									if (qta_ord < qta_promo){
										go = false;
									}
									
								}	
						
							}
						if (go){
				
							if (promoListOrdine.length == 0 && $.data(element[0], 'data').promoListOrdine != undefined){
								promoListOrdine = $.data(element[0], 'data').promoListOrdine;				
							}
							
							if (promoListOrdine.indexOf(insPromoDiretta) == -1 && promoDaSconti == 0) {
							//if (insPromoDiretta.length > 0 && promoDaSconti == 0){
							
								promoListOrdine[promoListOrdine.length] = insPromoDiretta;
							
								updriga.push({qta_ord:1, cod_art:insPromoDiretta, isPromo:1});
								listPromoInserite.push(insPromoDiretta);
								
							}
						}
						
					  }
						  
   					  updriga.push({qta_ord:qta_ord, cod_art:codArt, codPromoList:listPromo, codProScelta:codProScelta, newriga:false});
						  
					  }
				  
					checks[i].checked = false;
					
				}

			}
		  }

		  if (!CatalogoWidget.getAddWishList()) {
			showBtnAddCarrello();
		  }
		 
		  request = { updriga: updriga, returnDoc:true };
			nrCheck = 0;
		  if (CatalogoWidget.isRicercaArticolo() && !CatalogoWidget.getAddCarrelloDiretto() && !CatalogoWidget.getAddWishList()) {
			CatalogoFiltriWidget.removeFilter();
		  }
		  
		  if (CommonApis.getSelCk() == "selCkCatWsh"){
			jolieCall( "insArtWishToCarrelloFrontend", request, insWishArtToCarrelloResult, function( error ) { showError(error.message) } );	
		  }else		  
		  if (CatalogoWidget.getAddWishList()) {
			CatalogoWidget.setAddWishList(false);
			jolieCall( "updateWishListFrontend", request, function(data) { var iconElement = document.getElementById("ADD_WISHLIST_" + mobile_suff + codArt);
                                                                   if (iconElement == undefined) {
                                                                     iconElement = document.getElementById("ADD_WISHLIST_CPF_GRID" + codArt);
                                                                   }
                                                                   if (iconElement == undefined) {
                                                                     iconElement = document.getElementById("ADD_WISHLIST_CPF_" + codArt);
                                                                   }
                                                                   iconElement.src="./src/images/Star-icon-green.png";
  
                                                                   menuEnable(true);
                                                                   CommonApis.setNumRigheWishList(data.wishList.length);
                                                                   CommonApis.setDettaglioWishList(data.wishList);
                                                                   if (document.getElementsByClassName("previewCarrello") != null) {
                                                                      CatalogoWidget.showCarrelloInCatalogo(".previewCarrello");
                                                                   }  
                                                                    }, function( error ) { showError(error.message) } );
		  } else {
			
			if (listPromoInserite.length > 0){
				CommonApis.setListPromoInserite(listPromoInserite);
			}


			CatalogoWidget.setAddCarrelloDiretto(false);
			jolieCall( "updateRigaOrdinePortaleFrontend", request, function(data) {var iconElement = document.getElementById("ADD_DIRECT_" + mobile_suff + codArt);
																				 if (iconElement == undefined) {
																				   iconElement = document.getElementById("ADD_DIRECT_CPF_GRID" + codArt);
																				 }
																				 if (iconElement == undefined) {
																				   iconElement = document.getElementById("ADD_DIRECT_CPF_" + codArt);
																				 }
																				 iconElement.src="./src/images/shopping-cart-green.png";
																				 CommonApis.setDettaglioOrdine(data.docRighe);
																				 CatalogoWidget.updateCarrelloInCatalogo(data);
																			  }, function( error ) { showError(error.message) } );
																				
			
																	  
		  }
		  
	}

}


function showMarca(marchio) {

  CatalogoFiltriWidget.removeFilter();
  CatalogoFiltriWidget.getMarchi()[CatalogoFiltriWidget.getMarchi().length] = marchio;
  $('#levelSelector').val("all");
  CatalogoFiltriWidget.setFirstFilter(true);
  CatalogoFiltriWidget.getArrayTree()[CatalogoFiltriWidget.getArrayTree().length] = marchio + ":M";
  CatalogoWidget.lanciaRicercaCapofila();
  CatalogoFiltriWidget.getRicercheFatte()[0] = "M:" + marchio;
}

function showScanner() {

    $("#tabCatalogo").addClass("display-none");
    $(".barcodeCamera").removeClass("display-none");
}

function showLinea(element, lineaIn) {

  if (element != undefined) {
    
    var linea = $(element).attr("linea");
    var marca = $(element).attr("marca");
  } else {
    var linea = lineaIn.split(":")[1];
    var marca = lineaIn.split(":")[0];
  }
  CatalogoFiltriWidget.removeFilter();
  CatalogoFiltriWidget.getLinee()[CatalogoFiltriWidget.getLinee().length] = linea;
  CatalogoFiltriWidget.getMarchi()[CatalogoFiltriWidget.getMarchi().length] = marca;
  $('#levelSelector').val("all");
  CatalogoFiltriWidget.setFirstFilter(true);
  CatalogoFiltriWidget.setRicercaXLinea(true);
  CatalogoFiltriWidget.getArrayTree()[CatalogoFiltriWidget.getArrayTree().length] = linea + ":L";
  CatalogoFiltriWidget.getRicercheFatte()[0] = "L:" + linea;
  CatalogoWidget.lanciaRicercaCapofila();
  if (readCookie("linFromUrl") != null ){
     eraseCookie("linFromUrl");
  }

}

function addPromoInOrdine(codPromo){

	var dataAdd = {
			codArt:codPromo,
			num_rig:0,
			idName:"CAT_",
			isPromo:1
		};


		addArtCarrello(dataAdd);

}


function addArticoloInOrdineDaCatalogo(codArt) {

  	var dataAdd = {
			codArt:codArt,
			num_rig:0,
			idName:"CAT_"
		};

	addArtCarrello(dataAdd);


}

function execFilter () {

      if (CatalogoFiltriWidget.isFirstFilter()) {
        CatalogoFiltriWidget.createRootTree("D");
      } else {
         CatalogoFiltriWidget.addNodesToTree();
      }
      CatalogoWidget.setTotPages(0);
      CatalogoWidget.setOffset(0);
      CatalogoFiltriWidget.setReloadCatalogo(false);

        /*
        if (CatalogoFiltriWidget.isFirstFilterTime()) {
           CatalogoFiltriWidget.setFirstFilter(true);
           CatalogoFiltriWidget.setFirstFilterTime(false);
        }
        */
        CatalogoWidget.setResetPaginator(true);
        CatalogoWidget.lanciaRicercaCapofila();
}

function vaiACarrello(art) {
   // 20210607 $("#tabMenu").tabs("enable");
    //var idxTab = arrayMenuLoggato.indexOf("CARRELLO");
    var idxTab = $('#showcarrelliLi').index();
   // 20210607 $('#tabMenu').tabs( "option", "active", idxTab );
    CatalogoFiltriWidget.setVaiACarrelloArticolo(art); 
}

function visualizzaCapofila(cpf) {
    //var idxTab = arrayMenuLoggato.indexOf("CARRELLO");
    $("#ricercadesElem").val("");
    CatalogoFiltriWidget.setDescrizioneDaFiltrare();
    CatalogoFiltriWidget.setFirstFilter(true);
    CatalogoFiltriWidget.setEsplodiCapofila(true);
    CatalogoWidget.setResetPaginator(true);
    CatalogoFiltriWidget.setCapofila(cpf);
    //CatalogoFiltriWidget.resetRicercheFatte();
    CatalogoFiltriWidget.setPrimaRicerca(true);
    CatalogoWidget.lanciaRicercaCapofila(); 
}

function vaiAPromoArticolo(codArt) {
    
    eraseCookie("promoFromCatalogo");
    createCookie("promoFromCatalogo", codArt, 1);    
    eraseCookie("modoElencoPromo");
    createCookie("modoElencoPromo", "E");
    $(".tabPromoCls").click();
    if ($("#divMenuTabMobile").hasClass("visibileLeft")) {
      $("#divMenuTabMobile").removeClass("visibileLeft");
    }

}

function vaiAPromoCapofila(capofila) {
    eraseCookie("promoXCapofila"); 
    createCookie("promoXCapofila", capofila, 1);
    $(".tabPromoCls").click();
    if ($("#divMenuTabMobile").hasClass("visibileLeft")) {
      $("#divMenuTabMobile").removeClass("visibileLeft");
    }

}

function viewNews(id) {
 var dialogdiv = document.createElement("div");
 dialogdiv.id = "newsDiv";
 var showNews = false;
 var htmlNews = "<div class='divHeader'>News & Eventi</div><div>";
 for (var i = 0; i < CatalogoWidget.getArrayBanner().length; i++) {
   if (CatalogoWidget.getArrayBanner()[i].id == id) {
     if (CatalogoWidget.getArrayBanner()[i].riservata == 3 ||
         CatalogoWidget.getArrayBanner()[i].riservata == 1 && isWorkspace && CatalogoWidget.getArrayBanner()[i].show_banner == 1) {
       //if (readCookie(cookieVetrina) != null) {   
       if (CatalogoWidget.getArrayBanner()[i].tipo_search == "P") {
         CatalogoWidget.vaiAPromo(CatalogoWidget.getArrayBanner()[i].azione.trim());
         break;
       }
       if (CatalogoWidget.getArrayBanner()[i].tipo_search == "K") {
         var element;
         showLinea(element, CatalogoWidget.getArrayBanner()[i].azione.trim());
         break;
       }
       if (CatalogoWidget.getArrayBanner()[i].tipo_search == "H" ) {
         window.open(CatalogoWidget.getArrayBanner()[i].azione.trim());
         break;
       }
       if (CatalogoWidget.getArrayBanner()[i].tipo_search == "L") {
        var azione = "./immagini_portale/" + mandatario.trim() + "/contenuti/Volantini/" + CatalogoWidget.getArrayBanner()[i].azione.trim();
        window.open(azione);
        break;
       }
       if (CatalogoWidget.getArrayBanner()[i].tipo_search == "A") {
        createCookie("codFromUrl", CatalogoWidget.getArrayBanner()[i].azione.trim(), 1);
        CatalogoFiltriWidget.setRicercaArticoloFromUrl(true);
        CatalogoWidget.lanciaRicercaCapofila();
        return;
       }       
       if (CatalogoWidget.getArrayBanner()[i].nom_file.trim() != "") {
         CatalogoWidget.setShowVetrina(false);
         if (CommonApis.getSessionData().abilita_tab_promo == 1) {
           CatalogoWidget.showVetrina(id);
         }
       } else {
         showNews = true;
         htmlNews = htmlNews + "<p class='newsTitle'>" + CatalogoWidget.getArrayBanner()[i].titolo + "</p><br><p class='newsBody'>" +  CatalogoWidget.getArrayBanner()[i].news + "</p>" +
                "<p class='newsPublished'>Pubblicata il " + CatalogoWidget.getArrayBanner()[i].datanews + "</p></div>";
         break;
       }
       //} 
     } else if (CatalogoWidget.getArrayBanner()[i].tipo_search == "H" || CatalogoWidget.getArrayBanner()[i].tipo_search == "L") {
         window.open(CatalogoWidget.getArrayBanner()[i].azione.trim());
         break;
     } else if (CatalogoWidget.getArrayBanner()[i].nom_file.trim() != "") {
         //04042018 var imgPath = CommonApis.getImgDir() + CatalogoWidget.getArrayBanner()[i].mand.trim() + "/vetrine/" + CatalogoWidget.getArrayBanner()[i].nom_file.trim();
         var imgPath = CommonApis.getImgDir() + divisione.trim() + "/vetrine/" + CatalogoWidget.getArrayBanner()[i].nom_file.trim().replace(/ /g, "%20");
         var tempImage1 = new Image();
         tempImage1.src = imgPath;
         var dialogdiv = document.createElement("div");
         dialogdiv.id = "showcaseDiv";
         var tipText = "Immagine non disponibile";
         dialogdiv.innerHTML = "<img src = " + imgPath.trim() + " data-tooltip='" + tipText + "' onerror='this.replaceWith(placeholderSVG(this.dataset.tooltip))'>";

         var imgdivClose = document.createElement("div");
    	   imgdivClose.id = "bigImageButton";
		   imgdivClose.className="bigImageButtonCls";
		   imgdivClose.setAttribute("idDiv", imgdiv.id);
         imgdivClose.innerHTML = "<img src = '/src/images/Close-icon.png' title='Chiudi' alt='Chiudi'>";
		 aggiungiListenerbigImageButton();
         var height = window.innerHeight + "px";
         showHider();
    	   document.getElementsByTagName("body")[0].appendChild(dialogdiv);
    		 document.getElementsByTagName("body")[0].appendChild(imgdivClose);
         var imgWidth = 0;
         var imgHeight = 0;
         tempImage1.onload = function() {
                        imgWidth =  tempImage1.width;
                        imgHeight = tempImage1.height;
                        dialogdiv.style.left = (window.innerWidth -  imgWidth) / 2 + 'px';
                   	   //dialogdiv.style.top = ((window.innerHeight - imgHeight) / 2) + $(window).scrollTop() + 'px';
                        dialogdiv.style.top = $("#statusBar").outerHeight() + 'px';   
                        imgdivClose.style.left = $("#" + dialogdiv.id).offset().left + imgWidth - 12 + 'px' ;
                        imgdivClose.style.top = $("#" + dialogdiv.id).offset().top - 12 + 'px';
                       }
		aggiungiListenerbigImageButton();
     } else {
       showNews = true;
       htmlNews = htmlNews + "<p class='newsTitle'>" + CatalogoWidget.getArrayBanner()[i].titolo + "</p><br><p class='newsBody'>" +  CatalogoWidget.getArrayBanner()[i].news + "</p>" +
                "<p class='newsPublished'>Pubblicata il " + CatalogoWidget.getArrayBanner()[i].datanews + "</p></div>";
       break;
     }
   }
   
 }
 if (showNews) {
   htmlNews = htmlNews + "<div class='divBottomClass'>" +
                    "<span class='buttonSpanCenter'><button class='btn80' onclick='closeDiv(\"newsDiv\")'>Chiudi</button></span></div>";
   dialogdiv.innerHTML = htmlNews;
   document.getElementsByTagName("body")[0].appendChild(dialogdiv);
   showHider();
   $("#newsDiv").show();
   $("#divHeader").css("background-color", windowBackgroundColor);
   $("#divHeader").css("color", windowForegroundColor);
 }

}

function showPrz(element) {

    $(element).removeClass("textshadow-prz");
    $(element).addClass("text-prz");

}

function hidePrz(element) {

    $(element).removeClass("text-prz");
    $(element).addClass("textshadow-prz");

}

function raddoppiaPrz(element, raddoppia) {
 try {
  var prz = $.data(element, 'data').prz_lordo;
  var przVendita = $.data(element, 'data').prezzoVendita;
  var idPrz = "#prz" + $.data(element, 'data').cod_art.trim();
  var capofila = $.data(element, 'data').capofila;
  var headers = document.getElementsByName("headerPrzLabel" + capofila);
  var lblPrz = "PREZZO";
  if (raddoppia) {
     $(idPrz).text(przVendita.toFixed(4).toLocaleString().replace(".", ","));
     lblPrz = "PREZZO AL<br>PUBBLICO";
  } else {
     $(idPrz).text(prz.toFixed(4).toLocaleString().replace(".", ","));
  }
  for (var i = 0; i < headers.length; i++) {
    $(headers[i]).html(lblPrz);
  }
 } catch {
 }
}

function togglePrz(element) {
 var prezziNascosti = readCookieValue("hidePrezzi");
 if (prezziNascosti == 1) {
  if ($(element).hasClass("text-prz")) {
    $(element).removeClass("text-prz");
    $(element).addClass("textshadow-prz");
    for (var i = 0; i < numScoGest; i++) {
      element = $(element).next();
      if ($(element).attr("name") == "przCatTD" || $(element).attr("name") == "scCatTD") {
        $(element).removeClass("text-prz");
        $(element).addClass("textshadow-prz");
      }
    }
  } else {
    $(element).removeClass("textshadow-prz");
    $(element).addClass("text-prz");
    for (var i = 0; i < numScoGest; i++) {
      element = $(element).next();
      if ($(element).attr("name") == "przCatTD" || $(element).attr("name") == "scCatTD") {
        $(element).removeClass("textshadow-prz");
        $(element).addClass("text-prz");
      }
    }
  }
 }
}

function toggleSco(element) {
 var prezziNascosti = readCookieValue("hidePrezzi");
 var originalElement = element;
 if (prezziNascosti == 1) {
  if ($(element).hasClass("text-prz")) {
    $(element).removeClass("text-prz");
    $(element).addClass("textshadow-prz");
    for (var i = 0; i < numScoGest + 1; i++) {
      element = $(element).prev();
      if ($(element).attr("name") == "przCatTD" || $(element).attr("name") == "scCatTD") {
        $(element).removeClass("text-prz");
        $(element).addClass("textshadow-prz");
      }
    }
    element = originalElement;
    for (var i = 0; i < numScoGest + 1; i++) {
      element = $(element).next();
      if ($(element).attr("name") == "przCatTD" || $(element).attr("name") == "scCatTD") {
        $(element).removeClass("text-prz");
        $(element).addClass("textshadow-prz");
      }
    }
    if ($($(element).prev()).attr("name") == "przCatTD" || $($(element).prev()).attr("name") == "scCatTD") {
      $($(element).prev()).removeClass("text-prz");
      $($(element).prev()).addClass("textshadow-prz");
    }
  } else {
    $(element).removeClass("textshadow-prz");
    $(element).addClass("text-prz");
    for (var i = 0; i < numScoGest + 1; i++) {
      element = $(element).prev();
      if ($(element).attr("name") == "przCatTD" || $(element).attr("name") == "scCatTD") {
        $(element).removeClass("textshadow-prz");
        $(element).addClass("text-prz");
      }
    }
    element = originalElement;
    for (var i = 0; i < numScoGest + 1; i++) {
      element = $(element).next();
      if ($(element).attr("name") == "przCatTD" || $(element).attr("name") == "scCatTD") {
        $(element).removeClass("textshadow-prz");
        $(element).addClass("text-prz");
      }
    }
  }
 }
}

function creHtmlBoxLink(idx, isGrid) {
 var htmlBox = "";  
 //var capofilaToShow = CatalogoWidget.getWorkCapofilaArray()[idx].capofilaToShow.trim().replace(";", "_");
 var capofilaToShow = CatalogoWidget.getWorkCapofilaArray()[idx].capofilaToShow.trim().replaceAll(";", "_");
 if (isGrid) {
   htmlBox = htmlBox + "<div id = 'boxPromoNovitaGrid_" + capofilaToShow +"' class='flex-column boxPromoNovitaGrid'>";
 } else {
   htmlBox = htmlBox + "<div class='flex-column boxPromoNovita'>";
 }
 htmlBox = htmlBox + "<div class='flex-row' cpf='" + CatalogoWidget.getWorkCapofilaArray()[idx].capofilaToShow.trim() + "'>";      
 if (CatalogoWidget.getWorkCapofilaArray()[idx].promo_rif.trim() != "") {
    htmlBox = htmlBox + "<div class='allegatiLink artOfferta margin-left-10 margin-bottom-5'><img src='./src/images/Promozioni.png' class='infoCatalogo imgPromoArtCpf'" + 
                        " cpf='" + CatalogoWidget.getWorkCapofilaArray()[idx].capofilaToShow.trim() + 
                        "' title='Vai alle promo di questo capofila' alt='Vai alle promo di questo capofila'></div>"; 
 } 
 if (CatalogoWidget.getWorkCapofilaArray()[idx].nr_novita > 0) {
    htmlBox = htmlBox + "<div class='allegatiLink margin-left-10 margin-bottom-5'><img src='./src/images/New.png' class='infoCatalogo' id='imgNuovoArtCpf' " + 
                        " title='Novit&agrave;' alt='Novit&agrave;'></div>"; 
 }
 if (CatalogoWidget.getWorkCapofilaArray()[idx].madeInItaly.trim() != "" ) {
    htmlBox = htmlBox + "<div class='allegatiLink margin-left-10 margin-bottom-5'><img src='./src/images/madeinitaly.png' class='infoCatalogo' id='imgMadeInItaly' " + 
                        " title='Made in Italy' alt='Made in Italy'></div>"; 
 } 
 htmlBox = htmlBox + "</div></div>";
 //muiltimedia

 if (addMultimediaLink) {
    if (isGrid) {
      htmlBox = htmlBox + "<div class='flex-column boxLinkGrid'>";
    } else {
      htmlBox = htmlBox + "<div class='flex-column boxLink'>";
    }
    var img = "/src/images/Link-icon.png";    
    var title = "Visualizza le schede tecniche di questo articolo";                                   
    htmlBox = htmlBox + "<div class='allegatiLink viewLink margin-left-10 margin-bottom-5' idx='" + idx + "'><img src='" + img + "' " + 
                            " title='" + title + "' alt='" + title + "' ></div></div>";       
 }
 
 // articoli in offerta
 if (CatalogoWidget.getWorkCapofilaArray()[idx].inOfferta > 0 && readCookie(cookiePrimoAcquisto) == 1) { 
   var inOffertaDescr = workCapofilaArray[i].inOfferta;
 
   if(workCapofilaArray[i].inOfferta == 1) {
     inOffertaDescr = inOffertaDescr + " Articolo "; 
   } else {
     inOffertaDescr = inOffertaDescr + " Articoli "; 
   }
   inOffertaDescr = inOffertaDescr + "in offerta per te!";                                                 
   htmlBox = htmlBox + "<div class='pos-center artOfferta ";
   if (isGrid) {
     htmlBox = htmlBox + "font120Perc";
   } else {
     htmlBox = htmlBox + "font150Perc";
   }

   htmlBox = htmlBox + "'>" + inOffertaDescr + "</div>";
                                           
  } 
 //htmlBox = htmlBox + "</div>";
  return htmlBox;
 }

 function creaBoxAddCarrello(idx, isGrid) {
    var boxClass = "boxAddCpf";
    var id = "CAT_CPF";
    var inputQtaName = "inputQtaCpf";
    var chkCpfName = "chkCpf";
    var grid = "";
    var gridUp = "";
    if (isGrid) {
      boxClass += "Grid";
      id += "_GRID";
      inputQtaName += "Grid";
      grid = "Grid";
      gridUp = grid.toUpperCase();
      chkCpfName += "Grid";
    }
    var imgCarrello = "./src/images/shopping-cart-plus.png";
    var imgWish = "./src/images/Star-icon.png";
    var boxClassCpf = boxClass + CatalogoWidget.getWorkCapofilaArray()[idx].codCapofila; 
    var tipCarrello = "Aggiungi al carrello";
    var tipWish = "Aggiungi ai preferiti";
    var htmlBox ="<div class='" + boxClass + " " + boxClassCpf +"'><div class='flex-row' name='boxAddGrid'>";
    if (CatalogoWidget.getWorkCapofilaArray()[idx].numArt == 1) {
       var qtaConf = 1;
       
       if (CatalogoWidget.getWorkCapofilaArray()[idx].risp_conf == 1) {
         qtaConf = CatalogoWidget.getWorkCapofilaArray()[idx].qta_conf;
       }
       var capofila = CatalogoWidget.getWorkCapofilaArray()[idx].codCapofila;
    
       if (CommonApis.getDettaglioOrdine().map(({cod_art}) => { return cod_art.trim()}).indexOf(capofila) != -1) {
          imgCarrello = "./src/images/shopping-cart-green.png";
          tipCarrello = "Articolo gi&agrave; nel carrello. Clicca per aggiungere altra quantit&agrave;";
       }
       
       if (CommonApis.getDettaglioWishList().map(({cod_art}) => { return cod_art.trim()}).indexOf(capofila) != -1) {
          imgWish = "./src/images/Star-icon-green.png";
          tipWish = "Articolo presente nei preferiti. Clicca per aggiungere ulteriore quantit&agrave;";
       }
       
       htmlBox = htmlBox + "<div class='qtaMinusPlus margin-left-15'>" +               
           "<div name = 'arrowDwCpf' cpf='" + capofila + "' class='arrowDwCpf" + grid + "'><img  src='./src/images/minus.png'  class = 'minusPlusIcon'></img></div>" + 
                               "<div class='qtaFld'>" +
                               "<input cpf='" + capofila + "' name='" + chkCpfName +"' type='checkbox' class='selCkCat ckCatCpf" + grid + "' id='CKCAT_" + grid + "_" + capofila +"' hidden></input>" + 
                               "<input name='" + inputQtaName + "' cpf='" + capofila + "' class='text-right " + inputQtaName + "'' " +
                               " id='" + id + $.trim(capofila.replace(/\//g, "S").replace(/\./g, "D")) + "' type='text' autocomplete='off' value='" + qtaConf + "'" + 
           "></input></div><div  name = 'arrowUpCpf'  cpf='" + capofila + "' class='arrowUpCpf" + grid + "'><img  src='./src/images/add.png' class = 'minusPlusIcon'></img></div></div>" +
                               "<div class='addArticoloCarrelloCls vert-align-middle artTableRow1'><div class='addCartWishCpf flex-row-up'>" +
                               "<img  src='" + imgCarrello + "' cpf='" + capofila + "' class = 'icoDimension addCarrelloDirettoCpf" + grid + " margin-left-5 margin-right-5' id='ADD_DIRECT_CPF_" + gridUp + $.trim(capofila.replace(/\//g, "S").replace(/\./g, "D")) + "'" +
                               " alt='" + tipCarrello + "' ' title='" + tipCarrello + "'></img>" +
				                       "<img src='" + imgWish + "' cpf='" + capofila + "' class= 'icoDimension addWishListCpf" + grid + " margin-left-5 margin-right-5' id='ADD_WISHLIST_CPF_" + gridUp + $.trim(capofila.replace(/\//g, "S").replace(/\./g, "D")) + "'" +
                              " alt='" + tipWish +"' title='" + tipWish + "'></img>" +
                              "</div></div>";   							
                             
    } else {
    
    }
      htmlBox = htmlBox + "</div></div>";
    return htmlBox;
 }
 
 function addWishFromCarrelloInCatalogoStep1(element, fromCarrello, idInputQta) {
 var updriga = [];
 var request;
 var id = idInputQta + $.data(element, 'data').cod_art.trim() + "_" + $.data(element, 'data').num_rig
 var inputElementQta = document.getElementById(id).value;
 
 updriga.push({qta_ord:inputElementQta, 
               cod_art:$.data(element, 'data').cod_art.trim(),
               prz:$.data(element, 'data').prz,
               sco1:$.data(element, 'data').sco1,
               sco2:$.data(element, 'data').sco2,
               sco3:$.data(element, 'data').sco3,
               sco4:$.data(element, 'data').sco4,
               sco5:$.data(element, 'data').sco5,
               sco6:$.data(element, 'data').sco6,
               newriga:false});
 request = { updriga: updriga, returnDoc:true };               
 jolieCall( "updateWishListFrontend", request, function(data) {
                                                               CommonApis.setNumRigheWishList(data.wishList.length);
                                                               CommonApis.setDettaglioWishList(data.wishList);
                                                               addWishFromCarrelloInCatalogoStep2(element, fromCarrello);
                                                               }, function( error ) { showError(error.message) } );          
 
 }
 
 function addWishFromCarrelloInCatalogoStep2(element, fromCarrello) {
  
  request =  {cod_art:$.data(element, 'data').cod_art.trim(),
              isPromo:0, 
              num_rig:$.data(element, 'data').num_rig
              };
   jolieCall( "removeRigaOrdinePortaleFrontend", request, esitoDeleteArt, function( error ) { showError(error.message) });
 }
 
 
 
 function addCarrelloFromPreferitiInCatalogoStep1(elem) {

	var cod_art = $.data(elem, 'data').cod_art.toUpperCase();
	var qta_ord = checkQta(document.getElementById("WSH_" + cod_art), "*");
	var element = [];
	element.inserimentoWisthListDaCatalogo = true;
	element.cod_art = cod_art; 
	CommonApis.setSelCk("selCkCatWsh");	
	inserimentoVeloceStep2(element, qta_ord, cod_art)

	
	//addCarrelloFromPreferitiInCatalogoStep2(element);

 }
 
function addCarrelloFromPreferitiInCatalogoStep2(element) {

	 addCarrelloFromPreferitiInCatalogoStep3(element);

 } 
 
  function addCarrelloFromPreferitiInCatalogoStep3(request) {
         
 jolieCall( "updateRigaOrdinePortaleFrontend", request, function(data) { CommonApis.setDettaglioOrdine(data.docRighe);
                                                                          var numRighe = 0;
                                                                          for (var i = 0; i < data.docRighe.length; i++) {
                                                                            if (!data.docRighe[i].is_artpromo) {
                                                                              numRighe ++;
                                                                            }
                                                                          }
                                                                          CommonApis.setNumRigheCarrello(numRighe);
																		  var cod_art = "";
																		  
																		  if (request.updriga.length == 1){
																				cod_art = request.updriga[0].cod_art;
                                                                          }else
																		  if (request.updriga.length == 2){
                                                                              cod_art = request.updriga[1].cod_art;
                                                                          }																				
																		  
                                                                         addCarrelloFromPreferitiInCatalogoStep4(cod_art);
                                                               }, function( error ) { showError(error.message) } );          
 
 }
 
 
 function addCarrelloFromPreferitiInCatalogoStep3_OLD(element) {
 var updriga = [];
 var request;
 var cod_art = $.data(element, 'data').cod_art.trim()
// var qtaAct = parseFloat(document.getElementById("WSH_" + cod_art).value); 
 var qtaAct = checkQta(document.getElementById("WSH_" + cod_art), "*");
 updriga.push({qta_ord:qtaAct, 
               cod_art:cod_art,
              });
 request = { updriga: updriga, returnDoc:true };               
 jolieCall( "updateRigaOrdinePortaleFrontend", request, function(data) { CommonApis.setDettaglioOrdine(data.docRighe);
                                                                          var numRighe = 0;
                                                                          for (var i = 0; i < data.docRighe.length; i++) {
                                                                            if (!data.docRighe[i].is_artpromo) {
                                                                              numRighe ++;
                                                                            }
                                                                          }
                                                                          CommonApis.setNumRigheCarrello(numRighe);
                                                                         addCarrelloFromPreferitiInCatalogoStep4(element);
                                                               }, function( error ) { showError(error.message) } );          
 
 }
 
  function addCarrelloFromPreferitiInCatalogoStep4(cod_art) {
  
  var delriga = [];
  //delriga.push({cod_art:$.data(element, 'data').cod_art});	
  delriga.push({cod_art:cod_art});	
	var request = {delriga: delriga}
  jolieCall( "deleteArtWishListFrontend", request, function(data){ CommonApis.setNumRigheWishList(data.wishList.length);
                                                                   CommonApis.setDettaglioWishList(data.wishList);
                                                                    CatalogoWidget.showCarrelloInCatalogo(".previewCarrello");
                                                                        }, function( error ) { showError(error.message) });


 }
 

 function decodeHtml(html) {
    var txt = document.createElement("textarea");
    txt.innerHTML = html;
    return txt.value;
}

function placeholderSVG(tipText) {
  const div = document.createElement("div");
  div.innerHTML = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 160 160" width="160" height="160">
  <title>${tipText}</title>
    <rect width="160" height="160" rx="12" fill="#f3f4f6"/>
    <rect x="28" y="28" width="104" height="104" rx="8" fill="none" stroke="#d1d5db" stroke-width="1.5" stroke-dasharray="6 4"/>
    <g transform="translate(80,66)">
      <rect x="-22" y="-18" width="44" height="34" rx="4" fill="none" stroke="#9ca3af" stroke-width="1.5"/>
      <circle cx="8" cy="-6" r="5" fill="none" stroke="#9ca3af" stroke-width="1.5"/>
      <polyline points="-22,10 -8,-4 4,8 12,2 22,12" fill="none" stroke="#9ca3af" stroke-width="1.5" stroke-linejoin="round"/>
      <rect x="-28" y="-24" width="10" height="8" rx="2" fill="none" stroke="#9ca3af" stroke-width="1.5"/>
    </g>
    <line x1="46" y1="46" x2="114" y2="114" stroke="#d1d5db" stroke-width="1.5"/>
    <text x="80" y="118" text-anchor="middle" font-family="sans-serif" font-size="11" fill="#9ca3af">Immagine non disponibile</text>
  </svg>`;
  return div.firstElementChild;
}
 


