jQuery(function($) { var mx_shop_id = 115; var MOD_CURRENT_URL = decodeURIComponent(window.location.href); if(MOD_CURRENT_URL.indexOf('mx_add_kupon') !== -1 || MOD_CURRENT_URL.indexOf('?mxz/') !== -1) { current_href = MOD_CURRENT_URL.split('mx_add_kupon='); kupon = current_href[1]; $(document).ready(function() { if($('#promocodeshow').length) { $('#promocodeshow').click(); $('input[name="promocode"]').val(kupon); $('.promocode button[type="submit"]').click(); } else { console.log('MX - kod rabatowy jest już wpisany.'); } }); } if(MOD_CURRENT_URL.indexOf('maxsote_zapisany_koszyk') !== -1 || MOD_CURRENT_URL.indexOf('?mxz/') !== -1 || MOD_CURRENT_URL.indexOf('?mx_zapisany_koszyk') !== -1) { $('body').append('
loading...
'); } $(document).ready(function() { function modApiLoader() { if(!window.frontAPI) { setTimeout(modApiLoader,1); return; } function add_to_basket_recursive(products,i,func_on_complete) { if(i>=products.length) { //koniec func_on_complete(); return; } product = products[i]; add_data = { stock_id: product.stock_id, quantity: product.quantity, }; // console.log(product); if(product.variant) { product.variant = product.variant.replace("::","|cwefds234324|:"); add_data["options"] = {}; // console.log(product.variant); let current_options = product.variant.split(';'); // console.log(current_options); let current_options_names = []; for(let k in current_options) { // console.log(k,current_options[k]); if(typeof current_options[k] !== 'string') { continue; } option_string = current_options[k].trim().split(':'); option_name = option_string[0].trim(); option_value = option_string[1].trim(); option_name = option_name.replace("|cwefds234324|",":"); option_value = option_value.replace("|cwefds234324|",":"); current_options_names.push({ option_name: option_name, option_value: option_value, }); } frontAPI.getProduct(function (product_info) { option_value_id_array = {}; // console.log(product_info.options_configuration); for(let k in product_info.options_configuration) { option = product_info.options_configuration[k]; for(let k1 in current_options_names) { option_id = false; ovalue_id = false; // console.log(current_options_names[k1].option_name,option.name); if(current_options_names[k1].option_name == option.name) { option_id = option.id; // console.log(option.id,option.name); if(option.type=='text') { ovalue_id = current_options_names[k1].option_value; } if(option.type=='checkbox') { if(current_options_names[k1].option_value == 'tak' || current_options_names[k1].option_value == 'yes' || current_options_names[k1].option_value == 'ja') { ovalue_id = true; } else if(current_options_names[k1].option_value == 'nie' || current_options_names[k1].option_value == 'no' || current_options_names[k1].option_value == 'nein') { ovalue_id = false; } } else { for(let k2 in option.values) { //console.log(current_options_names[k1].option_value,option.values[k2].name); if(current_options_names[k1].option_value == option.values[k2].name) { ovalue_id = option.values[k2].id; } // else if(current_options_names[k1].option_value == option.values[k2].name) // { // ovalue_id = option.values[k2].name; // } } } } //console.log(option_id,ovalue_id); if(option_id && ovalue_id) { add_data["options"][option_id] = ovalue_id; } } } // console.log(add_data["options"]); frontAPI.addToBasket(function (addInfo) { add_to_basket_recursive(products,i+1,func_on_complete); }, { data: add_data }); }, { id: product.product_id }); } else { frontAPI.addToBasket(function (addInfo) { add_to_basket_recursive(products,i+1,func_on_complete); }, { data: add_data }); } } function remove_from_basket_recursive(products,i,func_on_complete) { if(i>=products.length) { //koniec func_on_complete(); return; } product = products[i]; frontAPI.removeFromBasket(function (removeInfo) { remove_from_basket_recursive(products,i+1,func_on_complete); }, { id: product.id }); } var current_lang = Shop.lang.name; if(MOD_CURRENT_URL.indexOf('maxsote_zapisany_koszyk') !== -1 || MOD_CURRENT_URL.indexOf('?mxz/') !== -1 || MOD_CURRENT_URL.indexOf('?mx_zapisany_koszyk') !== -1) { koszyk_id = 0; friendly_url = ''; if(MOD_CURRENT_URL.indexOf('maxsote_zapisany_koszyk') !== -1) { current_href = MOD_CURRENT_URL.split('maxsote_zapisany_koszyk='); current_href = current_href[1].split('&'); current_href = current_href[0]; koszyk_id = current_href.replace(/\D/g,''); } else if(MOD_CURRENT_URL.indexOf('mx_zapisany_koszyk') !== -1) { current_href = MOD_CURRENT_URL.split('mx_zapisany_koszyk='); current_href = current_href[1].split('&'); current_href = current_href[0]; koszyk_id = current_href.replace(/\D/g,''); } else { current_href = MOD_CURRENT_URL.split('?mxz/'); current_href = current_href[1].split('&'); friendly_url = current_href[0]; } $.post('https://hotinfo.maxserver.pl/appZapiszKoszyk/pobierz_koszyk.php',{ koszyk_id: koszyk_id, friendly_url: friendly_url, shop_id: 115, },function(products_to_add) { if('error' in products_to_add) { $('.mx_body_preloader').html('Przepraszamy, coś poszło nie tak.'); setTimeout(function() { $('.mx_body_preloader').fadeOut(200); },1000); } frontAPI.getBasketInfo(function (basketInfo) { // console.log(basketInfo); remove_from_basket_recursive(basketInfo.products,0,function() { new_products = products_to_add['products']; add_to_basket_recursive(new_products,0,function() { $('.mx_body_preloader').fadeOut(1000); add_kupon = ''; kupon = products_to_add['kupon']; if(kupon.length > 0) { add_kupon = '?mx_add_kupon='+kupon; } window.location.href = '/'+current_lang+'/basket'+add_kupon; }); }); // console.log(products_to_add); }); }); } var active_link = 1; var active_csv = 0; var active_qr = 1; if($('body').hasClass('shop_basket')) { var translations_array = '{"btn_link_text":{"__default":"Zapisz koszyk","pl_PL":"Zapisz koszyk"},"btn_csv_text":{"__default":"Pobierz koszyk w CSV","pl_PL":"Pobierz koszyk w CSV"},"btn_qr_text":{"__default":"Pobierz kod QR","pl_PL":"Pobierz kod QR"},"btn_qr_download_link_text":{"__default":"Pobierz","pl_PL":"Pobierz"}}'; translations_array = JSON.parse(translations_array); //todo zrobic cala klase do zarzadzania translacjami var container = $('
') if(active_link) { if(!(current_lang in translations_array['btn_link_text'])) { btn_link_translation = translations_array['btn_link_text']['__default']; } else { btn_link_translation = translations_array['btn_link_text'][current_lang]; } btn_link = $(''); btn_link.click(function() { container.find('.maxsote_div_loading').fadeIn(100); frontAPI.getBasketInfo(function(basket) { basket.shippings = {}; basket.countries = {}; $.post('https://hotinfo.maxserver.pl/appZapiszKoszyk/zapisz_koszyk.php?id=115',{ basket: basket },function(response) { koszyk_id = response; if(container.find('.maxsote_koszyk_link_input').length<1) { if(current_lang != 'pl_PL'){ container.append($('
Link:')); }else{ container.append($('
Link do koszyka:')); } } maxsote_koszyk_link_input = container.find('.maxsote_koszyk_link_input'); current_href = MOD_CURRENT_URL.split('/'); base_url = current_href[0]+'/'+current_href[1]+'/'+current_href[2]; if(current_lang != 'pl_PL') { base_url = base_url + '/' + current_lang +'/index'; } maxsote_koszyk_link_input.val(base_url+'?mx_zapisany_koszyk='+koszyk_id); maxsote_koszyk_link_input.unbind().focus(function() { $(this).select(); }); maxsote_koszyk_link_input.select(); container.find('.maxsote_div_loading').fadeOut(100); }); }); }); container.append(btn_link); } if(mx_shop_id == 199) { let mxUserInfo = frontAPI.getUser(); let jest_w_grupie = false; for(let mxk in mxUserInfo.groups) { if(mxUserInfo.groups[mxk].group_id == 4) { jest_w_grupie = true; } } if(!jest_w_grupie) { return true; } } if(active_qr) { if(!(current_lang in translations_array['btn_qr_text'])) { btn_qr_translation = translations_array['btn_qr_text']['__default']; } else { btn_qr_translation = translations_array['btn_qr_text'][current_lang]; } btn_qr = $(''); btn_qr.click(function() { if(mx_shop_id == 199 && !confirm("Czy na pewno pobrać QR i wyczyścić koszyk?")) { return false; } container.find('.maxsote_div_loading').fadeIn(100); frontAPI.getBasketInfo(function(basket) { basket.shippings = {}; basket.countries = {}; basket_codes = {}; if(mx_shop_id == 199) { $('.productlist tr').each(function() { let basket_prod_id = $(this).data('id'); let basket_prod_code = $(this).data('code'); basket_codes[basket_prod_id] = basket_prod_code; }); } $.post('https://hotinfo.maxserver.pl/appZapiszKoszyk/zapisz_koszyk.php?id=115',{ basket: basket, basket_codes: basket_codes },function(response) { koszyk_id = response; if(container.find('.maxsote_koszyk_link_input').length<1) { container.append($('
Link do koszyka:')); } maxsote_koszyk_link_input = container.find('.maxsote_koszyk_link_input'); current_href = MOD_CURRENT_URL.split('/'); base_url = current_href[0]+'/'+current_href[1]+'/'+current_href[2]; if(current_lang != 'pl_PL') { base_url = base_url + '/' + current_lang +'/index'; } maxsote_koszyk_link_input.val(base_url+'?mx_zapisany_koszyk='+koszyk_id); maxsote_koszyk_link_input.unbind().focus(function() { $(this).select(); }); maxsote_koszyk_link_input.select(); if(container.find('.maxsote_koszyk_qr_input').length<1) { container.append($('
')); } $('.maxsote_koszyk_qr_input').html(''); if(0) { if(!(current_lang in translations_array['btn_qr_download_link_text'])) { btn_qrdl_translation = translations_array['btn_qr_download_link_text']['__default']; } else { btn_qrdl_translation = translations_array['btn_qr_download_link_text'][current_lang]; } $('.maxsote_koszyk_qr_input').append(''+btn_qrdl_translation+'') } container.find('.maxsote_div_loading').fadeOut(100); if(mx_shop_id == 199) { frontAPI.getBasketInfo(function (basketInfo) { // console.log(basketInfo); remove_from_basket_recursive(basketInfo.products,0,function() { // window.location.href="/pl/basket"; $('.productlist tr').each(function() { if($(this).data('id') > 0) { $(this).detach(); } }); }); }); } }); }); }); container.append(btn_qr); } if(active_csv) { if(!(current_lang in translations_array['btn_csv_text'])) { btn_csv_translation = translations_array['btn_csv_text']['__default']; } else { btn_csv_translation = translations_array['btn_csv_text'][current_lang]; } btn_csv = $(''); btn_csv.click(function() { if(mx_shop_id == 199 && !confirm("Czy na pewno pobrać CSV i wyczyścić koszyk?")) { return false; } container.find('.maxsote_div_loading').fadeIn(100); frontAPI.getBasketInfo(function(basket) { var new_basket = { "p": [], }; if(mx_shop_id == 199 || mx_shop_id == 297) { basket_codes = {}; $('.productlist tr').each(function() { let basket_prod_id = $(this).data('id'); let basket_prod_code = $(this).data('code'); basket_codes[basket_prod_id] = basket_prod_code; }); if(mx_shop_id == 297) { new_basket['mx_codes_297'] = 1; } else { new_basket['mx_codes'] = 1; } } for(let k in basket.products) { cur_csv_prod = { 'n' : basket.products[k]['name'], 'p' : basket.products[k]['price_float'], 'q' : basket.products[k]['quantity'], 'u' : basket.products[k]['unit']['name'], 's' : basket.products[k]['sum_float'], 'v' : basket.products[k]['variant'], }; if(mx_shop_id == 199 || mx_shop_id == 297) { cur_csv_prod['mx_code'] = basket_codes[basket.products[k]['id']]; cur_csv_prod['mx_shop_id'] = mx_shop_id; } new_basket["p"].push(cur_csv_prod); } var iframe = $('');//.css('display','none') iframe.prop('src','https://hotinfo.maxserver.pl/appZapiszKoszyk/koszyk_csv.php?'+$.param(new_basket)); iframe.appendTo($('body')); container.find('.maxsote_div_loading').fadeOut(100); if(mx_shop_id == 199) { frontAPI.getBasketInfo(function (basketInfo) { // console.log(basketInfo); remove_from_basket_recursive(basketInfo.products,0,function() { // window.location.href="/pl/basket"; $('.productlist tr').each(function() { if($(this).data('id') > 0) { $(this).detach(); } }); }); }); } }); }); container.append(btn_csv); } container.append($('
loading...
').css('display','none')); if(false) { container.appendTo($('#')); } else { //czekanie na soobasket, jesli istnieje if(typeof GlobalSoolutionSoobasket != 'undefined'){ shoper.addEvent("soobasket:loaded", function(event, basket){ container.insertAfter(".el-table__body"); }); } else { container.insertAfter($('.productlist')); } } } } modApiLoader(); }); });