1async function getRecomendations(container, productId, eventDateStart){ 2 let eventDateTo = ''; 3 4 let eventDateFrom = eventDateStart.split('.'); 5 if(eventDateFrom.length == 3){ 6 eventDateFrom = eventDateFrom[2]+'-'+eventDateFrom[1]+'-'+eventDateFrom[0]; 7 eventDateTo = new Date(eventDateFrom); 8 } else { 9 eventDateTo = new Date(); 10 eventDateFrom = eventDateTo.getFullYear() + '-' + ((eventDateTo.getMonth() + 1) < 10 ? '0' : '') + (eventDateTo.getMonth() + 1) + '-' + (eventDateTo.getDate() < 10 ? '0' : '') + eventDateTo.getDate(); 11 } 12 eventDateTo.setDate(eventDateTo.getDate() + 14); 13 eventDateTo = eventDateTo.getFullYear() + '-' + ((eventDateTo.getMonth() + 1) < 10 ? '0' : '') + (eventDateTo.getMonth() + 1) + '-' + (eventDateTo.getDate() < 10 ? '0' : '') + eventDateTo.getDate(); 14 await $.ajax({ 15 url: appendSubShopId("api/frontend/legacy/xSelling?productId="+productId+"&eventDateStart="+eventDateFrom+"&eventDateTo="+eventDateTo), 16 async: true, 17 success: (data) => { 18 container.empty(); 19 container.append('<div id="dynamic-cross-selling"></div>'); 20 $('.inc-cross-selling').show(); 21 for(let i of data){ 22 eval('object'+i.PRODUCTS_ID+'=undefined;'); 23 eval('delete(object'+i.PRODUCTS_ID+');'); 24 renderProductListItem($('#dynamic-cross-selling'), i, true, eventDateStart); 25 } 26 if($('#dynamic-cross-selling').is(':empty')) $('.inc-cross-selling').hide(); 27 else { 28 $('.inc-cross-selling').show(); 29 $('#dynamic-cross-selling').slick({ 30 infinite: false, 31 slidesToShow: 4, 32 slidesToScroll: 1, 33 rows: 1, 34 dots: false, 35 responsive: [ 36 { 37 breakpoint: twoColumnWindowWidth, 38 settings: { 39 slidesToShow: 2, 40 slidesToScroll: 2, 41 centerMode: true, 42 infinite: true 43 } 44 }, 45 { 46 breakpoint: oneColumnWindowWidth, 47 settings: { 48 slidesToShow: 1, 49 slidesToScroll: 1, 50 centerMode: true, 51 infinite: true 52 } 53 } 54 ] 55 }); 56 } 57 }, 58 error: (e) => { 59 console.log("no cross selling products", e); 60 $('.inc-cross-selling').remove(); 61 } 62 }); 63}
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.