(function privAppStozekSearch($){let App=function App(){this.session_id='oh9pnmgumj7d60st1imvk24k82';this.session_token='ec568ba1d12629cf2521ae587b4d0c95757e4cb8f6706a71c7147094c2ae2d99';this.shop_id=2;this.lang=Shop.lang.name;this.$style=$('').appendTo('head');this.insertStyle();if($('body').hasClass('shop_index')){this.index();return true;} if($('body').hasClass('shop_product_list')){this.productList();return true;}};App.prototype.index=function index(){this.indexFilter().catch((reason)=>this.errorHandler(reason));};App.prototype.productList=function productList(){this.loadCurrency().then(()=>this.filterProducts()).catch((reason)=>this.errorHandler(reason));$(window).on('popstate',(e)=>{if(e.originalEvent.state===null){location.reload();}});};App.prototype.indexFilter=function indexFilter(){return new Promise((resolve,reject)=>{let parameters_url_keys={inner_diameter:'sr_wewn',outer_diameter:'sr_zewn',width:'szerokosc',precision:'precyzja',};let parameters_inputs={};let box=$('
').prependTo('.top > .container');let box_head=$('').appendTo(box);box_head.append('Wyszukaj po wymiarach');let inner_box=$('').appendTo(box);let html=this.createFiltersHtml();let filters=html.filters.appendTo(inner_box);let inner_diameter_input=html.inner_diameter_input;let outer_diameter_input=html.outer_diameter_input;let width_input=html.width_input;let precision_input=html.precision_input;let filter_button=html.filter_button;filter_button.find('span').html('wyszukaj');filter_button.on('click.filter',(e)=>{e.preventDefault();let filter_parameters={inner_diameter:inner_diameter_input.val(),outer_diameter:outer_diameter_input.val(),width:width_input.val(),precision:precision_input.val(),};let emptyFilter=true;for(let key in filter_parameters){if(key=='precision'||filter_parameters[key]=='')continue;emptyFilter=false;break;} if(emptyFilter)return;let url=new URL(window.location);url.pathname='/pl/c/a/133';for(let key in filter_parameters){url.searchParams.set(parameters_url_keys[key],filter_parameters[key]);} window.location.href=url;});return resolve(true);});};App.prototype.filterProducts=function filterProducts(){return new Promise((resolve,reject)=>{let parameters_url_keys={inner_diameter:'sr_wewn',outer_diameter:'sr_zewn',width:'szerokosc',precision:'precyzja',};let parameters_inputs={};let html=this.createFiltersHtml();let filters=html.filters.prependTo('#box_mainproducts');let inner_diameter_input=html.inner_diameter_input;let outer_diameter_input=html.outer_diameter_input;let width_input=html.width_input;let precision_input=html.precision_input;let filter_button=html.filter_button;parameters_inputs.inner_diameter=inner_diameter_input;parameters_inputs.outer_diameter=outer_diameter_input;parameters_inputs.width=width_input;parameters_inputs.precision=precision_input;filter_button.on('click.filter',(e)=>{e.preventDefault();let filter_parameters={inner_diameter:inner_diameter_input.val(),outer_diameter:outer_diameter_input.val(),width:width_input.val(),precision:precision_input.val(),};let emptyFilter=true;for(let key in filter_parameters){if(key=='precision'||filter_parameters[key]=='')continue;emptyFilter=false;break;} if(emptyFilter)return;let url=new URL(window.location);for(let key in filter_parameters){url.searchParams.set(parameters_url_keys[key],filter_parameters[key]);} if(window.history.state==null||'urlPath'in window.history.state&&window.history.state.urlPath!=url){window.history.pushState({urlPath:url.toString()},'',url);} this.getFiltredProducts(filter_parameters).then((products)=>{$('#box_mainproducts .products').empty();$('#box_mainproducts .paginator').remove();if(products.length==0){let error=$('Nie znaleziono produktów spełniających podane kryteria.
');error.appendTo('#box_mainproducts .products');return resolve(true);} for(let product_data of products){let product=this.createProductHtml(product_data);product.appendTo('#box_mainproducts .products');}}).catch((reason)=>{this.errorHandler(reason);});});let urlWithFilters=false;let url=new URL(window.location);for(let param of url.searchParams){let name=param[0];let value=param[1];for(let key in parameters_url_keys){if(name!=parameters_url_keys[key])continue;if(value.trim()=='')break;urlWithFilters=true;parameters_inputs[key].val(value.trim());break;}} if(urlWithFilters){filter_button.click();} $(window).on('popstate',(e)=>{if(e.originalEvent.state!==null&&'urlPath'in window.history.state){let urlWithFilters=false;let url=new URL(window.location);for(let param of url.searchParams){let name=param[0];let value=param[1];for(let key in parameters_url_keys){if(name!=parameters_url_keys[key])continue;if(value.trim()=='')break;urlWithFilters=true;parameters_inputs[key].val(value.trim());break;}} if(urlWithFilters){filter_button.click();}}});return resolve(true);});};App.prototype.getFiltredProducts=function getFiltredProducts(filter_parameters){return new Promise((resolve,reject)=>{let link="https://stozek.maxserver.pl/privAppStozekSearch/getFiltredProducts.php";let postData={session_id:this.session_id,session_token:this.session_token,shop_id:this.shop_id,currency:this.currency};Object.assign(postData,filter_parameters);$.post(link,postData).done((response)=>{response=JSON.parse(response);if('error'in response)return reject(new Error(response.error));return resolve(response.data);}).fail((response)=>{return reject(new Error(`Network Error ${response.status}`));});});};App.prototype.createFiltersHtml=function createFiltersHtml(){let parameters_names={inner_diameter:'Średnica wewnętrzna',outer_diameter:'Średnica zewnętrzna',width:'Szerokość',precision:'Tolerancja',};let filters=$('');let inner_diameter_filter=$('').appendTo(filters);let inner_diameter_text=$(`