Skip to Content

Monitors

412.40 € 699.00 €
412.40 €
(function () { var INGESCHAKELD = true; if (!INGESCHAKELD) return; if (!document.querySelector('.products_attributes_filters')) return; var params = new URLSearchParams(window.location.search); var search = params.get('search') || ''; var attribs = params.getAll('attribute_value'); var categoryId = null; if (params.get('category')) { categoryId = parseInt(params.get('category')); } else { var m = window.location.pathname.match(/\/shop\/category\/[^\/]+-(\d+)/); if (m) categoryId = parseInt(m[1]); } var domain = [ ['product_tmpl_id.sale_ok', '=', true], ['product_tmpl_id.is_published', '=', true] ]; if (categoryId) { domain.push(['product_tmpl_id.public_categ_ids', 'child_of', categoryId]); } if (search) { domain.push(['product_tmpl_id.name', 'ilike', search]); } attribs.forEach(function (av) { var p = av.split('-'); if (p.length === 2) { domain.push(['value_ids', 'in', [parseInt(p[1])]]); } }); fetch('/web/dataset/call_kw', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ jsonrpc: '2.0', method: 'call', id: 1, params: { model: 'product.template.attribute.line', method: 'search_read', args: [domain], kwargs: { fields: ['value_ids'], limit: 0 } } }) }) .then(function (r) { return r.json(); }) .then(function (data) { if (!data.result || !data.result.length) return; var beschikbaar = new Set(); data.result.forEach(function (line) { (line.value_ids || []).forEach(function (id) { beschikbaar.add(id); }); }); document.querySelectorAll( '.products_attributes_filters input[type="checkbox"][id]' ).forEach(function (input) { var parts = input.id.split('-'); if (parts.length !== 2) return; if (!beschikbaar.has(parseInt(parts[1]))) { var wrap = input.closest('.form-check'); if (wrap) wrap.style.display = 'none'; } }); document.querySelectorAll('[id^="o_products_attributes_"]').forEach(function (groep) { var zichtbaar = groep.querySelectorAll('.form-check:not([style*="display: none"])'); if (zichtbaar.length === 0) { var item = groep.closest('.accordion-item') || groep; item.style.display = 'none'; } }); }) .catch(function (e) { console.warn('[Gamegear filter]', e); }); })();