(function(factory){if(typeof define==='function'&&define.amd){define(factory);}else if(typeof exports==='object'){module.exports=factory();}else{var _OldCookies=window.Cookies;var api=window.Cookies=factory(window.jQuery);api.noConflict=function(){window.Cookies=_OldCookies;return api;};}}(function(){function extend(){var i=0;var result={};for(;i1){attributes=extend({path:'/'},api.defaults,attributes);if(typeof attributes.expires==='number'){var expires=new Date();expires.setMilliseconds(expires.getMilliseconds()+attributes.expires*864e+5);attributes.expires=expires;} try{result=JSON.stringify(value);if(/^[\{\[]/.test(result)){value=result;}}catch(e){} value=encodeURIComponent(String(value));value=value.replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent);key=encodeURIComponent(String(key));key=key.replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent);key=key.replace(/[\(\)]/g,escape);return(document.cookie=[key,'=',value,attributes.expires&&'; expires='+attributes.expires.toUTCString(),attributes.path&&'; path='+attributes.path,attributes.domain&&'; domain='+attributes.domain,attributes.secure?'; secure':''].join(''));} if(!key){result={};} var cookies=document.cookie?document.cookie.split('; '):[];var rdecode=/(%[0-9A-Z]{2})+/g;var i=0;for(;i1?pieces[1].length:0;} function addClass(el,className){if(el.classList){el.classList.add(className);}else{el.className+=' '+className;}} function removeClass(el,className){if(el.classList){el.classList.remove(className);}else{el.className=el.className.replace(new RegExp('(^|\\b)'+className.split(' ').join('|')+'(\\b|$)','gi'),' ');}} function hasClass(el,className){if(el.classList){el.classList.contains(className);}else{new RegExp('(^| )'+className+'( |$)','gi').test(el.className);}} var actions=window.navigator.pointerEnabled?{start:'pointerdown',move:'pointermove',end:'pointerup'}:window.navigator.msPointerEnabled?{start:'MSPointerDown',move:'MSPointerMove',end:'MSPointerUp'}:{start:'mousedown touchstart',move:'mousemove touchmove',end:'mouseup touchend'},Classes=['noUi-target','noUi-base','noUi-origin','noUi-handle','noUi-horizontal','noUi-vertical','noUi-background','noUi-connect','noUi-ltr','noUi-rtl','noUi-dragable','','noUi-state-drag','','noUi-state-tap','noUi-active','','noUi-stacking'];function subRangeRatio(pa,pb){return(100 /(pb-pa));} function fromPercentage(range,value){return(value*100)/(range[1]-range[0]);} function toPercentage(range,value){return fromPercentage(range,range[0]<0?value+Math.abs(range[0]):value-range[0]);} function isPercentage(range,value){return((value*(range[1]-range[0]))/ 100)+range[0];} function getJ(value,arr){var j=1;while(value>=arr[j]){j+=1;} return j;} function toStepping(xVal,xPct,value){if(value>=xVal.slice(-1)[0]){return 100;} var j=getJ(value,xVal),va,vb,pa,pb;va=xVal[j-1];vb=xVal[j];pa=xPct[j-1];pb=xPct[j];return pa+(toPercentage([va,vb],value)/ subRangeRatio(pa,pb));} function fromStepping(xVal,xPct,value){if(value>=100){return xVal.slice(-1)[0];} var j=getJ(value,xPct),va,vb,pa,pb;va=xVal[j-1];vb=xVal[j];pa=xPct[j-1];pb=xPct[j];return isPercentage([va,vb],(value-pa)*subRangeRatio(pa,pb));} function getStep(xPct,xSteps,snap,value){if(value===100){return value;} var j=getJ(value,xPct),a,b;if(snap){a=xPct[j-1];b=xPct[j];if((value-a)>((b-a)/2)){return b;} return a;} if(!xSteps[j-1]){return value;} return xPct[j-1]+closest(value-xPct[j-1],xSteps[j-1]);} function handleEntryPoint(index,value,that){var percentage;if(typeof value==="number"){value=[value];} if(Object.prototype.toString.call(value)!=='[object Array]'){throw new Error("noUiSlider: 'range' contains invalid value.");} if(index==='min'){percentage=0;}else if(index==='max'){percentage=100;}else{percentage=parseFloat(index);} if(!isNumeric(percentage)||!isNumeric(value[0])){throw new Error("noUiSlider: 'range' value isn't numeric.");} that.xPct.push(percentage);that.xVal.push(value[0]);if(!percentage){if(!isNaN(value[1])){that.xSteps[0]=value[1];}}else{that.xSteps.push(isNaN(value[1])?false:value[1]);}} function handleStepPoint(i,n,that){if(!n){return true;} that.xSteps[i]=fromPercentage([that.xVal[i],that.xVal[i+1]],n)/ subRangeRatio(that.xPct[i],that.xPct[i+1]);} function Spectrum(entry,snap,direction,singleStep){this.xPct=[];this.xVal=[];this.xSteps=[singleStep||false];this.xNumSteps=[false];this.snap=snap;this.direction=direction;var index,ordered=[];for(index in entry){if(entry.hasOwnProperty(index)){ordered.push([entry[index],index]);}} ordered.sort(function(a,b){return a[0]-b[0];});for(index=0;index2){throw new Error("noUiSlider: 'start' option is incorrect.");} parsed.handles=entry.length;parsed.start=entry;} function testSnap(parsed,entry){parsed.snap=entry;if(typeof entry!=='boolean'){throw new Error("noUiSlider: 'snap' option must be a boolean.");}} function testAnimate(parsed,entry){parsed.animate=entry;if(typeof entry!=='boolean'){throw new Error("noUiSlider: 'animate' option must be a boolean.");}} function testConnect(parsed,entry){if(entry==='lower'&&parsed.handles===1){parsed.connect=1;}else if(entry==='upper'&&parsed.handles===1){parsed.connect=2;}else if(entry===true&&parsed.handles===2){parsed.connect=3;}else if(entry===false){parsed.connect=0;}else{throw new Error("noUiSlider: 'connect' option doesn't match handle count.");}} function testOrientation(parsed,entry){switch(entry){case'horizontal':parsed.ort=0;break;case'vertical':parsed.ort=1;break;default:throw new Error("noUiSlider: 'orientation' option is invalid.");}} function testMargin(parsed,entry){if(!isNumeric(entry)){throw new Error("noUiSlider: 'margin' option must be numeric.");} parsed.margin=parsed.spectrum.getMargin(entry);if(!parsed.margin){throw new Error("noUiSlider: 'margin' option is only supported on linear sliders.");}} function testLimit(parsed,entry){if(!isNumeric(entry)){throw new Error("noUiSlider: 'limit' option must be numeric.");} parsed.limit=parsed.spectrum.getMargin(entry);if(!parsed.limit){throw new Error("noUiSlider: 'limit' option is only supported on linear sliders.");}} function testDirection(parsed,entry){switch(entry){case'ltr':parsed.dir=0;break;case'rtl':parsed.dir=1;parsed.connect=[0,2,1,3][parsed.connect];break;default:throw new Error("noUiSlider: 'direction' option was not recognized.");}} function testBehaviour(parsed,entry){if(typeof entry!=='string'){throw new Error("noUiSlider: 'behaviour' must be a string containing options.");} var tap=entry.indexOf('tap')>=0,drag=entry.indexOf('drag')>=0,fixed=entry.indexOf('fixed')>=0,snap=entry.indexOf('snap')>=0;parsed.events={tap:tap||snap,drag:drag,fixed:fixed,snap:snap};} function testFormat(parsed,entry){parsed.format=entry;if(typeof entry.to==='function'&&typeof entry.from==='function'){return true;} throw new Error("noUiSlider: 'format' requires 'to' and 'from' methods.");} function testOptions(options){var parsed={margin:0,limit:0,animate:true,format:defaultFormatter},tests;tests={'step':{r:false,t:testStep},'start':{r:true,t:testStart},'connect':{r:true,t:testConnect},'direction':{r:true,t:testDirection},'snap':{r:false,t:testSnap},'animate':{r:false,t:testAnimate},'range':{r:true,t:testRange},'orientation':{r:false,t:testOrientation},'margin':{r:false,t:testMargin},'limit':{r:false,t:testLimit},'behaviour':{r:true,t:testBehaviour},'format':{r:false,t:testFormat}};var defaults={'connect':false,'direction':'ltr','behaviour':'tap','orientation':'horizontal'};Object.keys(defaults).forEach(function(name){if(options[name]===undefined){options[name]=defaults[name];}});Object.keys(tests).forEach(function(name){var test=tests[name];if(options[name]===undefined){if(test.r){throw new Error("noUiSlider: '"+name+"' is required.");} return true;} test.t(parsed,options[name]);});parsed.pips=options.pips;parsed.style=parsed.ort?'top':'left';return parsed;} function getPositions(a,b,delimit){var c=a+b[0],d=a+b[1];if(delimit){if(c<0){d+=Math.abs(c);} if(d>100){c-=(d-100);} return[limit(c),limit(d)];} return[c,d];} function fixEvent(e){e.preventDefault();var touch=e.type.indexOf('touch')===0,mouse=e.type.indexOf('mouse')===0,pointer=e.type.indexOf('pointer')===0,x,y,event=e;if(e.type.indexOf('MSPointer')===0){pointer=true;} if(touch){x=e.changedTouches[0].pageX;y=e.changedTouches[0].pageY;} if(mouse||pointer){x=e.clientX+window.pageXOffset;y=e.clientY+window.pageYOffset;} event.points=[x,y];event.cursor=mouse||pointer;return event;} function addHandle(direction,index){var origin=document.createElement('div'),handle=document.createElement('div'),additions=['-lower','-upper'];if(direction){additions.reverse();} addClass(handle,Classes[3]);addClass(handle,Classes[3]+additions[index]);addClass(origin,Classes[2]);origin.appendChild(handle);return origin;} function addConnection(connect,target,handles){switch(connect){case 1:addClass(target,Classes[7]);addClass(handles[0],Classes[6]);break;case 3:addClass(handles[1],Classes[6]);case 2:addClass(handles[0],Classes[7]);case 0:addClass(target,Classes[6]);break;}} function addHandles(nrHandles,direction,base){var index,handles=[];for(index=0;index-1)?1:(mode==='steps'?2:0);if(!index&&ignoreFirst){type=0;} if(!(i===high&&ignoreLast)){indexes[newPct.toFixed(5)]=[i,type];} prevPct=newPct;}});scope_Spectrum.direction=originalSpectrumDirection;return indexes;} function addMarking(spread,filterFunc,formatter){var style=['horizontal','vertical'][options.ort],element=document.createElement('div');addClass(element,'noUi-pips');addClass(element,'noUi-pips-'+style);function getSize(type){return['-normal','-large','-sub'][type];} function getTags(offset,source,values){return'class="'+source+' '+ source+'-'+style+' '+ source+getSize(values[1])+'" style="'+options.style+': '+offset+'%"';} function addSpread(offset,values){if(scope_Spectrum.direction){offset=100-offset;} values[1]=(values[1]&&filterFunc)?filterFunc(values[0],values[1]):values[1];element.innerHTML+='
';if(values[1]){element.innerHTML+='
'+formatter.to(values[0])+'
';}} Object.keys(spread).forEach(function(a){addSpread(a,spread[a]);});return element;} function pips(grid){var mode=grid.mode,density=grid.density||1,filter=grid.filter||false,values=grid.values||false,stepped=grid.stepped||false,group=getGroup(mode,values,stepped),spread=generateSpread(density,mode,group),format=grid.format||{to:Math.round};return scope_Target.appendChild(addMarking(spread,filter,format));} function baseSize(){return scope_Base['offset'+['Width','Height'][options.ort]];} function fireEvent(event,handleNumber){if(handleNumber!==undefined){handleNumber=Math.abs(handleNumber-options.dir);} Object.keys(scope_Events).forEach(function(targetEvent){var eventType=targetEvent.split('.')[0];if(event===eventType){scope_Events[targetEvent].forEach(function(callback){callback(asArray(valueGet()),handleNumber,inSliderOrder(Array.prototype.slice.call(scope_Values)));});}});} function inSliderOrder(values){if(values.length===1){return values[0];} if(options.dir){return values.reverse();} return values;} function attach(events,element,callback,data){var method=function(e){if(scope_Target.hasAttribute('disabled')){return false;} if(hasClass(scope_Target,Classes[14])){return false;} e=fixEvent(e);if(events===actions.start&&e.buttons!==undefined&&e.buttons>1){return false;} e.calcPoint=e.points[options.ort];callback(e,data);},methods=[];events.split(' ').forEach(function(eventName){element.addEventListener(eventName,method,false);methods.push([eventName,method]);});return methods;} function move(event,data){var handles=data.handles||scope_Handles,positions,state=false,proposal=((event.calcPoint-data.start)*100)/ baseSize(),handleNumber=handles[0]===scope_Handles[0]?0:1,i;positions=getPositions(proposal,data.positions,handles.length>1);state=setHandle(handles[0],positions[handleNumber],handles.length===1);if(handles.length>1){state=setHandle(handles[1],positions[handleNumber?0:1],false)||state;if(state){for(i=0;i1){addClass(scope_Target,Classes[12]);} var f=function(){return false;};document.body.noUiListener=f;document.body.addEventListener('selectstart',f,false);}} function tap(event){var location=event.calcPoint,total=0,handleNumber,to;event.stopPropagation();scope_Handles.forEach(function(a){total+=offset(a)[options.style];});handleNumber=(location1){to=trigger?Math.max(to,lowerMargin):Math.min(to,upperMargin);} if(noLimitOption!==false&&options.limit&&scope_Handles.length>1){to=trigger?Math.min(to,lowerLimit):Math.max(to,upperLimit);} to=scope_Spectrum.getStep(to);to=limit(parseFloat(to.toFixed(7)));if(to===scope_Locations[trigger]){return false;} handle.style[options.style]=to+'%';if(!handle.previousSibling){removeClass(handle,Classes[17]);if(to>50){addClass(handle,Classes[17]);}} scope_Locations[trigger]=to;scope_Values[trigger]=scope_Spectrum.fromStepping(to);fireEvent('update',trigger);return true;} function setValues(count,values){var i,trigger,to;if(options.limit){count+=1;} for(i=0;i1){values.reverse();} if(options.animate&&scope_Locations[0]!==-1){addClassFor(scope_Target,Classes[14],300);} count=scope_Handles.length>1?3:1;if(values.length===1){count=1;} setValues(count,values);for(i=0;i=step[1])?step[2]:(step[0]||false);return[decrement,increment];});return inSliderOrder(retour);} function bindEvent(namespacedEvent,callback){scope_Events[namespacedEvent]=scope_Events[namespacedEvent]||[];scope_Events[namespacedEvent].push(callback);if(namespacedEvent.split('.')[0]==='update'){scope_Handles.forEach(function(a,index){fireEvent('update',index);});}} function removeEvent(namespacedEvent){var event=namespacedEvent.split('.')[0],namespace=namespacedEvent.substring(event.length);Object.keys(scope_Events).forEach(function(bind){var tEvent=bind.split('.')[0],tNamespace=bind.substring(tEvent.length);if((!event||event===tEvent)&&(!namespace||namespace===tNamespace)){delete scope_Events[bind];}});} if(scope_Target.noUiSlider){throw new Error('Slider was already initialized.');} scope_Base=addSlider(options.dir,options.ort,scope_Target);scope_Handles=addHandles(options.handles,options.dir,scope_Base);addConnection(options.connect,scope_Target,scope_Handles);events(options.events);if(options.pips){pips(options.pips);} return{destroy:destroy,steps:getCurrentStep,on:bindEvent,off:removeEvent,get:valueGet,set:valueSet};} function initialize(target,originalOptions){if(!target.nodeName){throw new Error('noUiSlider.create requires a single element.');} var options=testOptions(originalOptions,target),slider=closure(target,options);slider.set(options.start);target.noUiSlider=slider;} return{create:initialize};}));jQuery(document).ready(function($) {$(".filter-box").each(function(){var checked=0;if($(this).find('[id="prices[0]"]').length>0){if($(this).find('[id="prices[0]"]').val()!=""){checked++;} if($(this).find('[id="prices[1]"]').val()!=""){checked++;}}else if($(this).find('[name="keywords"]').length>0){if($(this).find('[name="keywords"]').val()!=""){checked++;} if($(this).find('[name="keywords_desc"]').val()!=""){checked++;}}else{checked=$(this).find('[checked="checked"]').length;} if(checked>0) {$(this).addClass("active");$(this).find(".filter-title").attr("data-checked",checked);}});$('#fcslowo input[type=text]').on('keyup',function(e){ if(e.keyCode==13&&$(this).val()!=''){$('#f_filter').submit(); }});var type='many';if(Cookies.get('search-list-type')!=undefined) {type=Cookies.get('search-list-type');$('.change-search-list-type[data-type="'+type+'"]').addClass('button-active');switchSearchListType(type);}else{jQuery('.listing-classic').css('display','');} $(window).on('listing_products_loaded',function() {switchSearchListType(type);});$('.change-search-list-type').on('click',function() {loading_start();type=$(this).data('type');switchSearchListType(type);$(this).siblings().removeClass('button-active');$(this).addClass('button-active');Cookies.set('search-list-type',type);setTimeout(function(){$(window).trigger('change_listing_type');},50);});$(window).on('change_listing_type',function() {setTimeout(loading_stop,100);});if($('#sample-showcase').length>0){var slider=$('#sample-showcase')[0];$('#sample-showcase').after('
'+dget('bfs','min-price')+''+dget('bfs','max-price')+'
');var min_start=dget('bfs','min-price');var max_start=dget('bfs','max-price');if(parseInt($("#prices\\[0\\]").val())>0) min_start=$("#prices\\[0\\]").val();if(parseInt($("#prices\\[1\\]").val())>0) max_start=$("#prices\\[1\\]").val();noUiSlider.create(slider,{start:[min_start,max_start],step:0.1,connect:true,range:{'min':[parseFloat(dget('bfs','min-price'))],'max':[parseFloat(dget('bfs','max-price'))]}});slider.noUiSlider.on('update',function(values,handle){$('input[name="prices['+handle+']"]').val(values[handle]);$('#price-show-'+handle).text(values[handle]+' '+dget('rcVer','currency'));});if(min_start==dget('bfs','min-price'))$('input[name="prices[0]"]').val('');if(max_start==dget('bfs','max-price'))$('input[name="prices[1]"]').val('');} filtersInit();$(window).on('resize',filtersInit);$('#toggleFilters').on('click',function() {$('#mobile_filters').toggleClass('open');$('body').toggleClass('mobile_filters_open');});$('.clearGroup').on('click',function(e){var clearType=$(this).attr('data-type');var clearId=$(this).attr('data-id');if(clearType=='producers') $('[id^="'+clearType+'\["]').prop("checked",false);else $('[id^="'+clearType+'\['+clearId+'\]"]').prop("checked",false);$('#f_filter').submit();});var filters_cookie=(Cookies.get('rc_fs')&&JSON.parse(Cookies.get('rc_fs')))||{};$('.filter-content').each(function(){var id=$(this).attr('id').substr(2);if(filters_cookie[id]!==undefined)return;if($(this).hasClass('in')){filters_cookie[id]=true;}else{filters_cookie[id]=false;}});$.each(filters_cookie,function(k,v){if(v===true){$('#fc'+k).collapse('show');}else{$('#fc'+k).collapse('hide');}});$('.filter-content').on('shown.bs.collapse',function(){var id=$(this).attr('id').substr(2);filters_cookie[id]=true;Cookies.set('rc_fs',JSON.stringify(filters_cookie));}).on('hidden.bs.collapse',function(){var id=$(this).attr('id').substr(2);filters_cookie[id]=false;Cookies.set('rc_fs',JSON.stringify(filters_cookie));});$('.product-photo.swapping').on('mouseenter',function(){var div=$(this);var img=$(div.find('a').find('img')[0]);var pid=div.attr('data-pid');if($('#swapping-hidden-'+pid).length==0) $.ajax({method:"POST",url:'/ajax/pinfo/get_next_image/',data:{pid:pid},async:false,cache:false,success:function(img){if(img.length==0) img='null';div.append('');}});swapImg(img,pid);});$('.product-photo.swapping').on('mouseleave',function(){var div=$(this);var img=$(div.find('a').find('img')[0]);var pid=div.attr('data-pid');swapImg(img,pid);});function swapImg(img,pid) {var currentSrc=img.attr('src');var toShow=$('#swapping-hidden-'+pid).html();if(toShow.length>0&&toShow!='null'){$('#swapping-hidden-'+pid).html(getFile(currentSrc));$(img).attr('src',swapFile(currentSrc,toShow));}} function swapFile(src,file) {src=src.split('/');src[(src.length-1)]=file;src=src.join('/');return src;} function getFile(src) {src=src.split('/');return src[(src.length-1)];}});function filtersInit() {if(jQuery('.rc-box-filter-search').length<=0)return;if(jQuery('#mobile_filters').length<=0)jQuery('body').append('
');var num='';if(dget('fsbc','filters',true)>0)num=''+dget('fsbc','filters',true)+'';if(jQuery('#toggleFilters').length<=0)jQuery('body').append('');if(viewport_check.is_in(['xs','sm'])){var from=jQuery('.rc-box-filter-search').find('.box-simple');var to=jQuery('#mobile_filters');}else{var from=jQuery('#mobile_filters');var to=jQuery('.rc-box-filter-search').find('.box-simple');} if(viewport_check.is_in(['xs','sm'])){var t=from.find('.box-title');var b=from.find('.box-body');t.appendTo(to);b.appendTo(to);} if(viewport_check.is_in(['md','lg'])&&(viewport_check.previous()=='xs'||viewport_check.previous()=='sm')){var t=from.find('.box-title');var b=from.find('.box-body');t.appendTo(to);b.appendTo(to);}} function switchSearchListType(type) {var sclass=dget('sic','class');var shighlightclass=dget('sic','highlight-class');jQuery('.listing-classic > .product-item').removeClass(type=='one'?sclass:shighlightclass);jQuery('.listing-classic > .product-item').addClass(type=='many'?sclass:shighlightclass);jQuery('.listing-classic').css('display','');correctHeights();} function addPaginationButton(paginationType) {var mr=jQuery('#more_result').html();jQuery(document).on('click','.ajax-page-loader',function(e){jQuery(window).trigger('listing_products_load');nextPage(paginationType);});jQuery('.ajax-page-loader').append(''+mr+'');} function paginationButton(paginationType) {addPaginationButton(paginationType);} function nextPage(paginationType) {var url=jQuery('.ajax-page-loader').attr('data-url').replace(/amp;/g,'');jQuery('.ajax-page-loader').find('a').text('Wczytywanie...');jQuery('.ajax-page-loader').find('a').addClass('disabled');jQuery('.ajax-page-loader').remove();jQuery(document).off('click','.ajax-page-loader');if(paginationType==2) jQuery('.ajax-page-loader').remove();loading_start();jQuery.ajax({url:url}).done(function(data){var resp=jQuery(data);if(paginationType==3||paginationType==2) jQuery('.ajax-page-loader').remove();jQuery('.listing-classic').append(resp.children('.listing-classic').html());correctAddEventListener(document.querySelectorAll(".listing-classic .product-item .product-photo img"));jQuery('.mobile-product-list').append(resp.children('.mobile-product-list').html());window.history.pushState(null,null,url);loading_stop();rc3Event();quickView();if(paginationType==3||paginationType==2){addPaginationButton(paginationType);} jQuery(window).trigger('listing_products_loaded');});}