(function(){ function afInit(){ var filters={brand:[],body:[],fuel:[],seats:[],drive:[],price:[]}; function getAttr(el,a){return el.getAttribute(a)||'';} function apply(){ var cards=document.querySelectorAll('.af-card[data-af-brand]'); var visible=0; for(var i=0;i-1)&& (filters.body.length===0||filters.body.indexOf(getAttr(c,'data-af-body'))>-1)&& (filters.fuel.length===0||filters.fuel.indexOf(getAttr(c,'data-af-fuel'))>-1)&& (filters.seats.length===0||filters.seats.indexOf(getAttr(c,'data-af-seats'))>-1)&& (filters.drive.length===0||filters.drive.indexOf(getAttr(c,'data-af-drive'))>-1)&& (filters.price.length===0||filters.price.indexOf(getAttr(c,'data-af-bucket'))>-1); c.classList[ok?'remove':'add']('af-hidden'); if(ok) visible++; } var el=document.getElementById('afCount'); if(el) el.textContent=visible; var em=document.getElementById('afEmpty'); if(em) em.classList[visible===0?'add':'remove']('af-visible'); } function renderTags(){ var container=document.getElementById('afTags'); if(!container) return; container.innerHTML=''; var keys=Object.keys(filters); for(var k=0;kx'; tag.addEventListener('click',function(){removeFilter(key,val);}); container.appendChild(tag); })(key,vals[v]); } } } function removeFilter(key,val){ filters[key]=filters[key].filter(function(v){return v!==val;}); var cbs=document.querySelectorAll('[data-af-filter="'+key+'"][value="'+val+'"]'); for(var i=0;i