PageSourceSearch

https://collezionetappimatteo.it/js/tappi-manager.js?v=20230512

js collezionetappimatteo.it collected 2026-09-25 13:27:51 UTC 12,576 bytes, 351 lines download raw bytes

1var TappiManager = (function () {
2
3   //private variables:
4   //-------------------------------------------------------------------
5
6   var Tappi_pagina = [];
7   var Num_tot_tappi = 0;
8
9   var Function_set = {
10      translate_page_in_english: function () {},
11      ajax_error_callback: function (error) {
12         alert("Errore");
13         console.log(error);
14      },
15      lazyloadImg: function () {},
16      initTooltips: function () {}
17   }
18
19   var Config = {
20      spinner_html: "<span>Loading...</span>"
21   }
22
23   //private functions:
24   //-------------------------------------------------------------------
25
26   var print_tappi = function (data, containerCssId, withCheckbox, bigImages, inEnglish) {
27      if (bigImages) {
28         for (var i in data) data[i].lazyload = true;
29         $(containerCssId).html(HandlebarsManager.renderTappiBig(data));
30      } else {
31         $(containerCssId).html(HandlebarsManager.renderTappiSmall(data, withCheckbox));
32         Function_set.initTooltips();
33      }
34      if (inEnglish) Function_set.translate_page_in_english();
35      Function_set.lazyloadImg();
36   };
37
38   var print_tappo = function (containerCssId, data, inEnglish) {
39      $(containerCssId).html(HandlebarsManager.renderTappo(data));
40      if (inEnglish) Function_set.translate_page_in_english();
41   };
42
43   var get_unico_array = function (data) {
44      var res = [];
45      $.each(data, function (i, subData) {
46         if (subData instanceof Array) {
47            $.each(subData, function (i, val) {
48               if (val instanceof Array) {
49                  $.merge(res, val);
50               } else {
51                  res.push(val);
52               }
53            });
54         } else {
55            if (subData['num'] == undefined) {
56               $.each(subData, function (i, val) {
57                  if (val instanceof Array) {
58                     $.merge(res, val);
59                  } else {
60                     res.push(val);
61                  }
62               });
63            } else {
64               res.push(subData);
65            }
66         }
67      });
68      return res;
69   };
70
71   var saveInTappiPagina = function (jsonData) {
72      Tappi_pagina = jsonData;
73   };
74
75   var show_spinner = function (containerCssId) {
76      var spinner = Config.spinner_html;
77      $(containerCssId).html(spinner);
78   };
79
80
81   //public functions:
82   //-------------------------------------------------------------------
83
84   return {
85
86      init: function (jsonFuncSet, jsonConfig, done_callback) {
87         if (jsonFuncSet) {
88            Function_set.ajax_error_callback = jsonFuncSet.ajax_error_callback ? jsonFuncSet.ajax_error_callback : Function_set.ajax_error_callback;
89            Function_set.translate_page_in_english = jsonFuncSet.translate_page_in_english ? jsonFuncSet.translate_page_in_english : Function_set.translate_page_in_english;
90            Function_set.lazyloadImg = jsonFuncSet.lazyloadImg ? jsonFuncSet.lazyloadImg : Function_set.lazyloadImg;
91            Function_set.initTooltips = jsonFuncSet.initTooltips ? jsonFuncSet.initTooltips : Function_set.initTooltips;
92         }
93         if (jsonConfig) {
94            Config.spinner_html = jsonConfig.spinner_html ? jsonConfig.spinner_html : Config.spinner_html;
95         }
96         InfoTappiServices.getNumTappi()
97            .done(function (data) {
98               Num_tot_tappi = data.data;
99               if (done_callback) done_callback();
100            })
101            .fail(function (error) {
102               Function_set.ajax_error_callback(error);
103            });
104      },
105
106      getTappiPaginaAperta: function () {
107         return Tappi_pagina;
108      },
109
110      getNumTotTappi: function () {
111         return Num_tot_tappi;
112      },
113
114      printSearch: function (jsonReq, containerCssId, withCheckbox, bigImages, inEnglish, done_callback) {
115         show_spinner(containerCssId);
116         InfoTappiServices.search(jsonReq)
117            .done(function (data) {
118               print_tappi(data.data, containerCssId, withCheckbox, bigImages, inEnglish);
119               saveInTappiPagina(data.data);
120               if (done_callback) done_callback(jsonReq, data);
121            })
122            .fail(function (error) {
123               Function_set.ajax_error_callback(error);
124            });
125      },
126
127      printByTipo: function (tipo, containerCssId, withTitle, inEnglish) {
128         var jsonReq = {
129            tipo: tipo
130         };
131         show_spinner(containerCssId);
132         InfoTappiServices.getTappiDivisiPerTipo(jsonReq)
133            .done(function (data) {
134               data.tipo = tipo;
135               data.tipoTitle = withTitle ? true : false;
136               $(containerCssId).html(HandlebarsManager.renderTappiPerTipo(data));
137               if (inEnglish) Function_set.translate_page_in_english();
138               saveInTappiPagina(get_unico_array(data.data));
139               Function_set.lazyloadImg();
140               Function_set.initTooltips();
141            })
142            .fail(function (error) {
143               Function_set.ajax_error_callback(error);
144            });
145      },
146
147      printDoppi: function (containerCssId, onFinishHandler) {
148         show_spinner(containerCssId);
149         InfoTappiServices.getTappiDoppi()
150            .done(function (data) {
151               $(containerCssId).html(HandlebarsManager.renderDoppi(data.data));
152               saveInTappiPagina(get_unico_array(data.data));
153               Function_set.lazyloadImg();
154               Function_set.initTooltips();
155               if (onFinishHandler) onFinishHandler();
156            })
157            .fail(function (error) {
158               Function_set.ajax_error_callback(error);
159            });
160      },
161
162      printTappo: function (num, containerCssId, inEnglish) {
163         var jsonReq = {
164            num: num
165         };
166         show_spinner(containerCssId);
167         InfoTappiServices.getTappo(jsonReq)
168            .done(function (data) {
169               print_tappo(containerCssId, data.data, inEnglish);
170            })
171            .fail(function (error) {
172               Function_set.ajax_error_callback(error);
173            });
174      },
175
176      printNovita: function (n, containerCssId) {
177         var jsonReq = {
178            n: n
179         };
180         show_spinner(containerCssId);
181         InfoTappiServices.getNovita(jsonReq)
182            .done(function (data) {
183               print_tappi(data.data, containerCssId, false, false, false);
184               saveInTappiPagina(data.data);
185               Function_set.lazyloadImg();
186               Function_set.initTooltips();
187            })
188            .fail(function (error) {
189               Function_set.ajax_error_callback(error);
190            });
191      },
192
193      printTappiDivisiPerPaese: function (jsonReq, containerCssId, done_callback, lazyload) {
194         lazyload = lazyload != undefined ? lazyload : true;
195         show_spinner(containerCssId);
196         InfoTappiServices.getTappiDivisiPerPaese(jsonReq)
197            .done(function (data) {
198               $(containerCssId).html(HandlebarsManager.renderTappiPerPaese(data.data));
199               saveInTappiPagina(get_unico_array(data.data));
200               if (lazyload) Function_set.lazyloadImg();
201               Function_set.initTooltips();
202               if (done_callback) done_callback(data);
203            })
204            .fail(function (error) {
205               Function_set.ajax_error_callback(error);
206            });
207      },
208
209      printNumTappi: function (jsonReq, containerCssId) {
210         show_spinner(containerCssId);
211         InfoTappiServices.getNumTappi(jsonReq)
212            .done(function (data) {
213               $(containerCssId).text(data.data);
214            })
215            .fail(function (error) {
216               Function_set.ajax_error_callback(error);
217            });
218      },
219
220      setTitlesToPlanisfero: function () {
221         var jsonReq = {
222            tipo: "birra"
223         };
224         InfoTappiServices.getNumTappiDivisiPerContinente(jsonReq)
225            .done(function (data) {
226               for (var key in data.data) {
227                  $('.map_area[data-continente="' + key + '"]').attr('title', key + ' (' + data.data[key] + ')');
228               }
229               $('img[usemap]').rwdImageMaps();
230            })
231            .fail(function (error) {
232               Function_set.ajax_error_callback(error);
233            });
234         jsonReq.paese = "Italia";
235         InfoTappiServices.getNumTappi(jsonReq)
236            .done(function (data) {
237               $('#area_italia').attr('title', 'Italia (' + data.data + ')');
238            })
239            .fail(function (error) {
240               Function_set.ajax_error_callback(error);
241            });
242      },
243
244      printDoppiScelti: function (containerCssId, list) {
245         var jsonReq = {
246            list: list
247         };
248         InfoTappiServices.getTappiFromNumeri(jsonReq)
249            .done(function (data) {
250               $(containerCssId).html(HandlebarsManager.renderDoppiScelti(data));
251            })
252            .fail(function (error) {
253               Function_set.ajax_error_callback(error);
254            });
255      },
256
257      loadSelectTipi: function (selectCssId, inEnglish, callback) {
258         TappiManager.loadGenericSelect(selectCssId, InfoTappiServices.getListTipi, inEnglish, function () {
259            if (callback) callback();
260         });
261      },
262
263      loadSelectPaesi: function (selectCssId, inEnglish, callback) {
264         TappiManager.loadGenericSelect(selectCssId, InfoTappiServices.getListPaesi, inEnglish, function () {
265            if (callback) callback();
266         });
267      },
268
269      loadSelectColori: function (selectCssId, inEnglish, callback) {
270         TappiManager.loadGenericSelect(selectCssId, InfoTappiServices.getListColori, inEnglish, function () {
271            $(selectCssId).colorselector();
272            if (callback) callback();
273         });
274      },
275
276      loadGenericSelect: function (selectCssId, serviceCall, inEnglish, callback) {
277         $(selectCssId).html('<option value="" selected="selected" class="translatable">(tutti)</option>');
278         serviceCall()
279            .done(function (data) {
280               $.each(data.data, function (i, option) {
281                  var dataColor = option.code ? ' data-color="' + option.code + '"' : '';
282                  $(selectCssId).append('<option value="' + option.value + '" class="translatable" ' + dataColor + '>' + option.description + '</option>');
283               });
284               if (inEnglish) Function_set.translate_page_in_english();
285               if (callback) callback();
286            })
287            .fail(function (error) {
288               Function_set.ajax_error_callback(error);
289               if (callback) callback();
290            })
291      },
292
293      initAutocomplete_Nomi_Prod: function (inputCssId, onSelect_callback) {
294         InfoTappiServices.getListNomiEProduttori()
295            .done(function (data) {
296               var currencies = data.data;
297               $(inputCssId).autocomplete({
298                  lookup: currencies,
299                  onSelect: onSelect_callback
300               });
301               $(inputCssId).keypress(function (e) {
302                  if (e.which == 13) {
303                     onSelect_callback();
304                  }
305               });
306            })
307            .fail(function (error) {
308               Function_set.ajax_error_callback(error);
309            });
310      },
311
312      actionWith_getNumTappiDivisiPerPaese: function (tipo, numMax, done_callback) {
313         var jsonReq = {
314            tipo: tipo,
315            numMax: numMax
316         };
317         InfoTappiServices.getNumTappiDivisiPerPaese(jsonReq)
318            .done(function (data) {
319               if (done_callback) done_callback(data);
320            })
321            .fail(function (error) {
322               Function_set.ajax_error_callback(error);
323            });
324      },
325
326      actionWith_getNumTappiPerTipo: function (paese, done_callback) {
327         var jsonReq = {
328            paese: paese
329         };
330         InfoTappiServices.getNumTappiPerTipo(jsonReq)
331            .done(function (data) {
332               if (done_callback) done_callback(data);
333            })
334            .fail(function (error) {
335               Function_set.ajax_error_callback(error);
336            });
337      },
338
339      actionWith_getNumTappiPerAnno: function (done_callback) {
340         InfoTappiServices.getNumTappiPerAnno()
341            .done(function (data) {
342               if (done_callback) done_callback(data);
343            })
344            .fail(function (error) {
345               Function_set.ajax_error_callback(error);
346            });
347      }
348
349   }
350
351}());

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.