document.addEventListener('DOMContentLoaded', function () {const checkboxes = document.querySelectorAll('.cat-filter, .attr-filter');
const urlParams = new URLSearchParams(window.location.search);
checkboxes.forEach(function (checkbox) {const taxonomy = checkbox.getAttribute('data-taxonomy');
const termId = checkbox.getAttribute('data-term-id');if (!taxonomy || !termId) return;const paramName = 'b_' + taxonomy + '[0]';if (urlParams.has(paramName)) {
const values = urlParams.getAll(paramName);
if (values.includes(termId)) {
checkbox.checked = true;
}
}
});
checkboxes.forEach(function (checkbox) {checkbox.addEventListener('change', function () {const url = new URL(window.location.href);
const params = new URLSearchParams();document.querySelectorAll('.cat-filter:checked, .attr-filter:checked')
.forEach(function (cb) {const taxonomy = cb.getAttribute('data-taxonomy');
const termId = cb.getAttribute('data-term-id');if (!taxonomy || !termId) return;const paramName = 'b_' + taxonomy + '[0]';
params.append(paramName, termId);
});url.search = params.toString();
window.location.href = url.toString();
});
});});function showFiltersByName(filterNames) {
jQuery('.filter_con').each(function () {
var $filterBox = jQuery(this);
var headingText = $filterBox.find('h4').text().trim().toLowerCase();// default hide
$filterBox.hide();// check allowed filters
for (var i = 0; i < filterNames.length; i++) {
if (headingText === filterNames[i].toLowerCase()) {
$filterBox.show();
break;
}
}
});
}jQuery(document).ready(function () {// var url = window.location.pathname.toLowerCase();//
// if (url.indexOf("00-cubicle-walls") !== -1) {// var filtersForCubicleWalls = [
// "Cubicle Cubicle System Type",
// "Cubicle Cubicle Seats"
// ];// showFiltersByName(filtersForCubicleWalls);
// }//
// if (url.indexOf("office-partitions") !== -1) {// var filtersForPartitions = [
// "Cubicle Panel Height",
// "Cubicles with Glass"
// ];// showFiltersByName(filtersForPartitions);
// }// Check if URL contains "cubicle-walls"
if (window.location.href.indexOf("00-cubicle-walls") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Cubicle System Type", "Cubicles with Glass", "Cubicles with Doors", "Cubicle Panel Height", "Cubicle Seats"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("glass-cubicles") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Cubicle System Type", "Cubicles with Glass", "Cubicles with Doors", "Cubicle Panel Height", "Cubicle Seats"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("02-cubicle-desks-and-workstations") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Cubicle System Type", "Cubicles with Glass", "Cubicles with Doors", "Cubicle Panel Height", "Cubicle Seats"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("call-center-cubicles") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Cubicle System Type", "Cubicles with Glass", "Cubicle Panel Height", "Cubicle Seats"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("03-office-dividers-and-partitions") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Cubicle System Type", "Cubicles with Glass", "Cubicle Panel Height", "Cubicle Seats"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("06-desk-dividers-and-privacy-screens") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Cubicle System Type", "Application", "Cubicle Panel Height", "Height"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("05-cubicle-panel-extenders") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Application", "Height"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("cubicle-accessories") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Application", "Height", "Accessory Type"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("07-storage-solutions") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Storage Type"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("electrical-modules-for-office-cubicles") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = [""];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("worksurfaces") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = [""];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("wall-mounted-acoustic-panels") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Application", "Screen Height", "Screen Width", "Accessory Type"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("hanging-acoustical-panels") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Application", "Screen Width", "Screen Height"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("desk-dividers-and-modesty-panels") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Application", "Cubicle System Type", "Screen Height"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("acoustic-ceiling-baffles") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Application", "Screen Height"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("slat-wall-panels") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Application", "Screen Width"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("acoustic-cubicle-extenders") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Application", "Screen Height"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("desks") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Desk Style", "Table Style"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("chairs") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = [""];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("tables") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Table Style", "Cubicle Seats", "Conference Table Length", "Conference Table Capacity"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("ergonomic-solutions") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Accessory Type"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("storage-shelving") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Table Style", "Cubicle Seats", "Conference Table Length", "Storage Type"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("office-dividers-partitions") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Cubicle System Type", "Cubicles with Glass", "Cubicle Seats", "Cubicle Panel Height"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("desk-dividers-privacy-screens") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Application", "Cubicle System Type", "Cubicle Panel Height", "Height"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("cubicle-panel-extenders") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Application", "Screen Height"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("reception-lounge") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Desk Style", "Table Style", "Conference Table Length", "Cubicle System Type", "Cubicles with Glass", "Cubicles with Doors", "Cubicle Seats", "Cubicle Panel Height"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("conference-room") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Table Style", "Cubicle Seats", "Conference Table Length", "Storage Type"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("breakroom-lunchroom") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Table Style", "Cubicle Seats", "Conference Table Length", "Accessory Type"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("classroom") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Application", "Screen Width", "Screen Height", "Accessory Type"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("clearance") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Desk Style", "Table Style", "Cubicle Seats", "Conference Table Length", "Cubicle System Type", "Cubicles with Glass", "Cubicle Seats", "Cubicle Panel Height"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("office-accessories") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Application", "Width", "Height", "Accessory Type"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("table-bases") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = [""];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("electrical-modules-for-office-cubicles") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Application"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("sapphire-wall-system") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Cubicle System Type", "Cubicles with Glass", "Cubicles with Doors", "Cubicle Seats", "Cubicle Panel Height"];showFiltersByName(filtersForPartitions);
}
else if (window.location.href.indexOf("sapphire-cubicle-system") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Cubicle System Type", "Cubicles with Glass", "Cubicles with Doors", "Cubicle Seats", "Cubicle Panel Height"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("sapslim-cubicle-system") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Cubicle System Type", "Cubicles with Glass", "Cubicle Seats", "Cubicle Panel Height"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("emerald-cubicle-collection") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Cubicle System Type", "Cubicles with Glass", "Cubicles with Doors", "Cubicle Seats", "Cubicle Panel Height"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("quantum-sit-to-stand-desk-series") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Desk Style"];showFiltersByName(filtersForPartitions);
}
else if (window.location.href.indexOf("indigo-desk-series") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Desk Style"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("nova-desking-system") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Desk Style"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("sol-office-furniture-collection") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Desk Style", "Table Style", "Cubicle Seats", "Conference Table Length", "Cubicle System Type", "Cubicles with Glass", "Cubicle Seats", "Storage Type"];showFiltersByName(filtersForPartitions);
}
else if (window.location.href.indexOf("harmony-conference-series") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Table Style", "Cubicle Seats", "Conference Table Length", "Storage Type", "Conference Table Capacity"];showFiltersByName(filtersForPartitions);
}
else if (window.location.href.indexOf("harmony-office-tables-series") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Table Style", "Cubicle Seats", "Conference Table Length", "Conference Table Capacity"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("escape-solutions-series") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = ["Application", "Width", "Height", "Accessory Type"];showFiltersByName(filtersForPartitions);
}else if (window.location.href.indexOf("08-electrical-modules") !== -1) {
// Predefined keywords to match against
var filtersForPartitions = [""];showFiltersByName(filtersForPartitions);
}
});