`;
previousOptionId = filterOptionValue;
}
filterInputElement = `
`
filterInputClass = `form-check${(isChildOption) ? ' pl-4' : ''} field_input checkbox-field`;
parentCollapseTarget = '';
collapseDataAttributes = 'style="padding-left: 1.5em !important;"';
if (showCollapseControls) {
filterInputElement = '';
filterInputClass = 'collapse collapsible-parent-filter pb-1 pl-0_95 pointer d-flex flex-row justify-content-between align-items-center';
parentCollapseTarget = `parent_collapse_${filterOptionValue}_d8ccaf5b40812ab44559a46233178854`
collapseDataAttributes = `data-toggle="collapse" data-target="#${parentCollapseTarget}" aria-expanded="false" aria-controls="${parentCollapseTarget}"`;
}
filterValueInput += `
`;
if (!isChildOption && optionIndex < filterConfig.optionsOrder.length - 1) {
// start of collapsible container
parentOptionIndex = filterOptionValue;
filterValueInput += `
`;
}
});
filterValueInput += '
';
break;
case "countrySelect":
case "dropDown":
case "multipleChoice":
case "state":
filterValueInput = '
';
break;
default:
const selectizeFieldIdentifier = filterConfig.selectizeJs ? 'data-selectize-field' : '';
const additionalClasses = (selectizeFieldIdentifier) ? 'custom-select custom-select-selectize' : 'form-control';
filterValueInput = `
`;
}
const nodeType = filterConfig.hidden ? 'aside' : 'div';
const filterContainer = jQuery('<' + nodeType + ' class="filter_container card p-0' + (filterConfig.hidden ? ' d-none' : '') + '" style="display:none;" data-filter-config-type="' + filterConfig.type + '">'
+ ''
+ '
'
+ '
[clear]'
+ '
'
+ ''
+ '
'
+ '
'
+ '' + nodeType + '>'
);
filterContainer.find('.filter_label').html(filterConfig.label).on('click', (e) => {
jQuery(e.target).parent().parent('[data-container-expand]').find('[data-container-toggles] a:visible').click();
});
filterContainer.find('.filter_value_select').replaceWith(filterValueInput);
filterContainer.attr('data-filter-id', filterId);
return filterContainer;
}
function applyHideBadgeListOption_d8ccaf5b40812ab44559a46233178854(filterContainer, filterId)
{
if (filterId === 'field_badgeList' && true) {
filterContainer.addClass('d-none');
filterContainer.insertBefore(filterContainer.prev());
}
}
function addModalFilter_d8ccaf5b40812ab44559a46233178854(filterSelection, expand, callback)
{
const filterId = jQuery(filterSelection).attr('data-filter-id');
const filterContainer = buildFilterContainer_d8ccaf5b40812ab44559a46233178854(filterSelection, filterId);
const collapsibleId = `filter_body_side_${filterId}_d8ccaf5b40812ab44559a46233178854`;
filterContainer.find('.collapse:not([data-checkbox-collapse])').attr('id', collapsibleId).attr('data-collapse-field-id', filterId);
filterContainer.find('.filter_collapse').attr('style', '').attr('href', '#' + collapsibleId).attr('aria-controls', collapsibleId);
filterContainer.find('.filter_expand').attr('style', 'display:none;').attr('href', '#' + collapsibleId).attr('aria-controls', collapsibleId);
filterContainer.find('.filter_value_select').on('change', (e) => {
// remove active quick filters
const activeQuickfilters = jQuery(e.target).parents('.modal-body').find('.quick_filter.active');
if (activeQuickfilters.length > 0 && (e.target.type === 'checkbox' && e.target.checked) || e.target.value !== '') {
activeQuickfilters.each((_, quickFilterElement) => {
const quickFilter = jQuery(quickFilterElement);
quickFilter.addClass('btn-outline-secondary');
quickFilter.removeClass('active');
quickFilter.removeClass('btn-secondary');
});
}
});
if (expand) {
filterContainer.find('.collapse').addClass('show');
} else {
filterContainer.find('.filter_collapse').attr('style', 'display:none;');
filterContainer.find('.filter_expand').attr('style', '');
}
const existingModalFilters = jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal #applied_filters');
existingModalFilters.append(filterContainer);
applyHideBadgeListOption_d8ccaf5b40812ab44559a46233178854(filterContainer, filterId);
filterContainer.show();
if (typeof callback === 'function') {
callback();
}
}
function addSideFilter_d8ccaf5b40812ab44559a46233178854(filterSelection)
{
const filterId = jQuery(filterSelection).attr('data-filter-id');
const filterContainer = buildFilterContainer_d8ccaf5b40812ab44559a46233178854(filterSelection, filterId);
const collapsibleId = `filter_body_side_${filterId}_d8ccaf5b40812ab44559a46233178854`;
filterContainer.find('div[data-container-toggles]').addClass('pl-1');
filterContainer.find('.collapse:not([data-checkbox-collapse])').attr('id', collapsibleId).attr('data-collapse-field-id', filterId)
filterContainer.find('.filter_collapse').attr('href', '#' + collapsibleId).attr('aria-controls', collapsibleId);
filterContainer.find('.filter_expand').attr('href', '#' + collapsibleId).attr('aria-controls', collapsibleId);
filterContainer.find('.filter_value_select').on('change', (e) => {
const modifiedFilters = jQuery(e.target);
applyFilters_d8ccaf5b40812ab44559a46233178854({ modifiedFilters });
});
const existingSideFilters = jQuery('#d8ccaf5b40812ab44559a46233178854_tableListTypeFilters');
existingSideFilters.append(filterContainer);
applyHideBadgeListOption_d8ccaf5b40812ab44559a46233178854(filterContainer, filterId);
filterContainer.show();
}
function buildFilterSelector_d8ccaf5b40812ab44559a46233178854()
{
var searchFilters = searchFilters_d8ccaf5b40812ab44559a46233178854;
var filterDropdownInternal = '';
var fieldsGroup = '';
Object.entries(searchFilters).forEach(([filterId, filterConfig]) => {
const isHidden = (filterConfig.hidden) ? ' d-none' : '';
const dropdownItem = '
' + filterConfig.label + '';
if (filterId.indexOf('field_') === 0)
{
fieldsGroup += dropdownItem;
}
else
{
filterDropdownInternal += dropdownItem;
}
});
if (fieldsGroup.length !== 0)
{
var separator = (filterDropdownInternal.length === 0)
? '' : '
';
filterDropdownInternal += separator + fieldsGroup;
}
if (filterDropdownInternal.length === 0)
{
jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal #filter_dropdown').remove();
}
else
{
var filterModalInternalWrapper = jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal .dropdown-menu-internal');
filterModalInternalWrapper.append(filterDropdownInternal);
if (typeof SimpleBar === 'function')
{
new SimpleBar(filterModalInternalWrapper[0]);
}
}
}
var createFilterPill = function(filterId, label)
{
activeFilterPill = jQuery('
'
+ '' + ((label.length <= 15) ? label : label.substring(0, 15) + '...') + ''
+ ''
+ '');
return activeFilterPill;
}
var addActiveFilter_d8ccaf5b40812ab44559a46233178854 = function(filterId, filterValue)
{
if (typeof searchFilters_d8ccaf5b40812ab44559a46233178854[filterId] === 'undefined')
{
return;
}
const filterConfig = searchFilters_d8ccaf5b40812ab44559a46233178854[filterId];
const activeFiltersContainer = jQuery('#d8ccaf5b40812ab44559a46233178854_active_filters');
if (filterConfig.type === "checkboxes")
{
filterValue.forEach(function(value)
{
const filterLabel = filterConfig['options'][value];
activeFilterPill = createFilterPill(filterId, filterLabel);
activeFilterPill.find('.fa-times').on('click keypress', function(event){
if (!accessibleClick(event, true))
{
return;
}
const filterContainer = jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal #applied_filters .filter_container[data-filter-id="' + filterId + '"]');
const filterChecked = filterContainer.find('.filter_value_select:checked');
// Remove filter selection, but keep wrapper for table list types
if (filterChecked.length > 0) {
const filterInput = filterChecked.filter('input[value="' + value + '"]');
filterInput.prop('checked', false);
const modifiedFilters = jQuery(filterInput);
applyFilters_d8ccaf5b40812ab44559a46233178854({ modifiedFilters });
}
});
activeFiltersContainer.append(activeFilterPill);
});
}
else
{
var filterLabel = (typeof filterConfig['options'][filterValue] !== 'undefined') ? filterConfig['options'][filterValue] : filterValue;
activeFilterPill = createFilterPill(filterId, filterLabel);
activeFilterPill.find('.fa-times').on('click keypress', function(event){
if (accessibleClick(event, true))
{
const filter = jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal #applied_filters .filter_container[data-filter-id="' + filterId + '"]')
.find('.filter_value_select')
.val('');
const modifiedFilters = jQuery(filter);
applyFilters_d8ccaf5b40812ab44559a46233178854({ modifiedFilters });
}
});
activeFiltersContainer.append(activeFilterPill);
}
}
var addActiveFilters_d8ccaf5b40812ab44559a46233178854 = function(params)
{
jQuery('#d8ccaf5b40812ab44559a46233178854_active_filters [data-filter-id]').remove();
jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal .filter_container').each(function()
{
var filterId = jQuery(this).attr('data-filter-id');
if (filterId.indexOf('field_') === 0)
{
fieldId = filterId.substring(6);
if (typeof params['search_filters']['fields'][fieldId] !== 'undefined')
{
addActiveFilter_d8ccaf5b40812ab44559a46233178854(filterId, params['search_filters']['fields'][fieldId]);
}
}
else
{
if (typeof params['search_filters'][filterId] !== 'undefined')
{
addActiveFilter_d8ccaf5b40812ab44559a46233178854(filterId, params['search_filters'][filterId]);
}
}
});
};
var getSearchParams_d8ccaf5b40812ab44559a46233178854 = function()
{
var filterModal = jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal');
var searchFilters = searchFilters_d8ccaf5b40812ab44559a46233178854;
var query = jQuery('#d8ccaf5b40812ab44559a46233178854_query').val();
var tags = jQuery('#d8ccaf5b40812ab44559a46233178854_tags').val();
var filters = filterModal.find('.filter_container');
var quickFilters = jQuery('#module_1_0-0 .quick_filter');
var params = {
search_query : query,
search_tags : tags,
search_filters: {
fields: {}
},
active_quick_filters: {},
inactive_quick_filters: {}
};
quickFilters.each(function(){
var filterContainer = jQuery(this);
var destination = filterContainer.hasClass('active') ? 'active_quick_filters' : 'inactive_quick_filters';
var filterType = filterContainer.attr('data-filter-type');
var filterId = filterContainer.attr('data-filter-id');
var filterVal = filterContainer.attr('data-filter-value');
if (typeof filterId !== 'undefined' && filterId !== '')
{
if (!params[destination].hasOwnProperty(filterType))
{
params[destination][filterType] = {};
}
params[destination][filterType][filterId] = filterVal;
}
});
if (filters.length === 0)
{
return params;
}
filters.each(function()
{
var filterContainer = jQuery(this);
var filterId = filterContainer.attr('data-filter-id');
var filterValue = null;
if ((typeof filterId === 'undefined' || filterId == '')
|| typeof searchFilters[filterId] === 'undefined')
{
return;
}
var filterConfig = searchFilters[filterId];
if (filterConfig.type === "checkboxes")
{
filterValue = filterContainer.find('.filter_value_select:checked');
}
else
{
filterValue = filterContainer.find('.filter_value_select').val();
}
if (typeof filterValue === 'undefined' || filterValue.length === 0)
{
return;
}
if (filterConfig.type === "checkboxes")
{
filterValue = filterValue.map(function(){ return jQuery(this).val(); }).get();
}
if (filterId.indexOf('field_') === 0)
{
filterId = filterId.substring(6);
params['search_filters']['fields'][filterId] = filterValue;
}
else
{
params['search_filters'][filterId] = filterValue;
}
});
return params;
};
var toggleTableHeaderFilters_d8ccaf5b40812ab44559a46233178854 = function(filterId, filterValue)
{
const filterContainer = jQuery(`#module_1_0-0 [data-filter-id="${filterId}"]`);
const eventData = { headerToggledFilter: true };
if (filterContainer.is(':button')) {
toggleQuickFilterButton_d8ccaf5b40812ab44559a46233178854(filterContainer[0]);
eventData.modifiedFilters = jQuery(filterContainer[0]);
} else if (filterContainer.attr('data-filter-config-type') === "checkboxes") {
const modifiedFilters = filterContainer.find(`.filter_value_select[value="${filterValue}"]`);
modifiedFilters.prop('checked', !modifiedFilters.prop('checked'));
eventData.modifiedFilters = modifiedFilters;
}
applyFilters_d8ccaf5b40812ab44559a46233178854(eventData);
}
var applyFilters_d8ccaf5b40812ab44559a46233178854 = function({ headerToggledFilter = false, modifiedFilters, modalSubmit = false, textSearch = false } = {})
{
if (modifiedFilters) {
jQuery('#module_1_0-0').trigger('updateSideAndModalFilters_d8ccaf5b40812ab44559a46233178854', { headerToggledFilter, modifiedFilters, modalSubmit, textSearch });
}
var paginator = jQuery('#d8ccaf5b40812ab44559a46233178854').data('jsPaginator');
var searchParams = getSearchParams_d8ccaf5b40812ab44559a46233178854();
addActiveFilters_d8ccaf5b40812ab44559a46233178854(searchParams);
paginator.setParams(searchParams);
paginator.clearPagination();
paginator.load(false);
toggleSortVisibility_d8ccaf5b40812ab44559a46233178854(searchParams);
};
var toggleSortVisibility_d8ccaf5b40812ab44559a46233178854 = function(searchParams)
{
var removeClass = 'd-none';
var addClass = 'd-flex';
// Sort and filtering are unable to be applied at same time currently so show/hide container depending on if filters exist
if (searchParams.search_query || searchParams.search_tags
|| Object.keys(searchParams.search_filters).length > 1
|| Object.keys(searchParams.search_filters.fields).length > 0
|| searchHasCustomActiveQuickFilters_d8ccaf5b40812ab44559a46233178854(searchParams))
{
removeClass = 'd-flex';
addClass = 'd-none';
}
jQuery('#d8ccaf5b40812ab44559a46233178854_search_sort_container').removeClass(addClass).addClass(removeClass);
const relevanceText = 'Relevance';
const searchOrderContainer = jQuery('#d8ccaf5b40812ab44559a46233178854_search_order_by');
const activeRelevanceOrderBy = searchOrderContainer.find('[data-button-type="search-order-label"]').filter(function() {
return this.innerText === relevanceText;
});
if (activeRelevanceOrderBy.length > 0) {
// Insert checkbox icon into selected sort inside dropdown
let activeText = '
' + relevanceText;
const relevanceOption = jQuery('#d8ccaf5b40812ab44559a46233178854_search_order_by [data-order-by="' + relevanceText.toLowerCase() +'"]').html(activeText);
}
jQuery('#d8ccaf5b40812ab44559a46233178854_sort_container').removeClass(removeClass).addClass(addClass);
};
const searchHasCustomActiveQuickFilters_d8ccaf5b40812ab44559a46233178854 = function (searchParams = {}) {
const { active_quick_filters: { data: activeQuickFilterData = {} } = {}} = searchParams;
const customActiveQuickFilters = Object.keys(activeQuickFilterData).filter((quickFilter) => {
return quickFilter.includes('custom_filter_tag') || quickFilter.includes('custom_filter_query')
});
return customActiveQuickFilters.length > 0;
}
var toggleAllowingNewSearchFilters_d8ccaf5b40812ab44559a46233178854 = function () {
// Quick filters do not work with search filters so if quick filters, disable search filters
if (jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal .quick_filter.active').length > 0) {
if (false) {
jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal #applied_filters').empty();
}
jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal #filter_dropdown_btn').prop('disabled', true);
} else {
jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal #filter_dropdown_btn').prop('disabled', false);
}
}
var toggleQuickFilterButton_d8ccaf5b40812ab44559a46233178854 = function (buttonElement) {
const quickFilterButton = jQuery(buttonElement);
const addClass = (quickFilterButton.hasClass('active') ? 'btn-outline-secondary' : 'btn-secondary');
const removeClass = (quickFilterButton.hasClass('active') ? 'btn-secondary' : 'btn-outline-secondary');
quickFilterButton.removeClass(removeClass);
quickFilterButton.addClass(addClass);
quickFilterButton.toggleClass('active');
if (typeof quickFilterButton.data('external-quick-filter') !== 'undefined') {
const modifiedFilters = jQuery(quickFilterButton);
applyFilters_d8ccaf5b40812ab44559a46233178854({ modifiedFilters });
} else if (quickFilterButton.hasClass('active')) {
// updating bulk filter change in modal, remove all field filters
jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal .filter_container .filter_value_select').each((_, filterElement) => {
if (filterElement.type === 'text' || filterElement.type === 'select-one') {
filterElement.value = '';
} else if (filterElement.type === 'checkbox') {
filterElement.checked = false;
}
});
}
toggleAllowingNewSearchFilters_d8ccaf5b40812ab44559a46233178854();
}
const filterModalCurrentValues_d8ccaf5b40812ab44559a46233178854 = new Map();
const quickFilterModalCurrentValues_d8ccaf5b40812ab44559a46233178854 = new Map();
jQuery(document).ready(function()
{
var filterModal_d8ccaf5b40812ab44559a46233178854 = jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal');
jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal').on('hide.bs.modal', function () {
// restore previous values
const filterIds = [...filterModalCurrentValues_d8ccaf5b40812ab44559a46233178854.keys()];
const quickFilterIds = [...quickFilterModalCurrentValues_d8ccaf5b40812ab44559a46233178854.keys()];
quickFilterIds.forEach((quickFilterId) => {
jQuery(`#d8ccaf5b40812ab44559a46233178854_filter_modal .quick_filter[data-filter-id=${quickFilterId}]`).attr('class', quickFilterModalCurrentValues_d8ccaf5b40812ab44559a46233178854.get(quickFilterId));
});
toggleAllowingNewSearchFilters_d8ccaf5b40812ab44559a46233178854();
filterIds.forEach((fieldId) => {
const fieldValues = filterModalCurrentValues_d8ccaf5b40812ab44559a46233178854.get(fieldId);
if (fieldValues instanceof Map) {
[...fieldValues.keys()].forEach((fieldValue) => {
const { isChecked, isIndeterminate } = fieldValues.get(fieldValue);
jQuery(`#d8ccaf5b40812ab44559a46233178854_filter_modal .filter_container .filter_value_select[data-filter-form-element="${fieldId}"][value="${fieldValue}"]`).prop('checked', isChecked).prop('indeterminate', isIndeterminate);
});
} else {
// select or text
jQuery(`#d8ccaf5b40812ab44559a46233178854_filter_modal .filter_container .filter_value_select[data-filter-form-element="${fieldId}"]`).val(fieldValues)
}
})
});
jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal').on('shown.bs.modal', function () {
filterModalCurrentValues_d8ccaf5b40812ab44559a46233178854.clear();
quickFilterModalCurrentValues_d8ccaf5b40812ab44559a46233178854.clear();
jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal .quick_filter').each((_, filterElement) => {
quickFilterModalCurrentValues_d8ccaf5b40812ab44559a46233178854.set(filterElement.getAttribute('data-filter-id'), filterElement.className);
});
jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal .filter_container .filter_value_select').each((_, filterElement) => {
const fieldId = filterElement.getAttribute('data-filter-form-element');
if (filterElement.type === 'text' || filterElement.type === 'select-one') {
filterModalCurrentValues_d8ccaf5b40812ab44559a46233178854.set(fieldId, filterElement.value);
} else if (filterElement.type === 'checkbox') {
if (filterModalCurrentValues_d8ccaf5b40812ab44559a46233178854.has(fieldId) == false) {
filterModalCurrentValues_d8ccaf5b40812ab44559a46233178854.set(fieldId, new Map());
}
const options = filterModalCurrentValues_d8ccaf5b40812ab44559a46233178854.get(fieldId);
options.set(filterElement.value, { isChecked: filterElement.checked, isIndeterminate: filterElement.indeterminate });
}
});
});
jQuery('#d8ccaf5b40812ab44559a46233178854_enable_filters').on('click',function(){
jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal').modal('show');
});
jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal .clear_filters').on('click',function(){
filterModal_d8ccaf5b40812ab44559a46233178854.find('.filter_remove').click();
jQuery('#d8ccaf5b40812ab44559a46233178854_query, #d8ccaf5b40812ab44559a46233178854_tags').val("");
filterModal_d8ccaf5b40812ab44559a46233178854.find('.quick_filter.active').click();
});
jQuery('#d8ccaf5b40812ab44559a46233178854_query, #d8ccaf5b40812ab44559a46233178854_tags').on('change',function(){
applyFilters_d8ccaf5b40812ab44559a46233178854({ modifiedFilters: jQuery(), textSearch: true });
});
jQuery('#d8ccaf5b40812ab44559a46233178854_query, #d8ccaf5b40812ab44559a46233178854_tags').on('keydown',function(e){
var code = typeof e.originalEvent.code !== 'undefined' ? e.originalEvent.code : e.keyCode;
if (code == 'Enter' || code == '13')
{
applyFilters_d8ccaf5b40812ab44559a46233178854();
jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal').modal('hide');
}
});
jQuery('#d8ccaf5b40812ab44559a46233178854_apply, #d8ccaf5b40812ab44559a46233178854_submit').on('click',function(){
filterModalCurrentValues_d8ccaf5b40812ab44559a46233178854.clear();
quickFilterModalCurrentValues_d8ccaf5b40812ab44559a46233178854.clear();
// Filter selection from the modal occured. Update the filters
const modifiedFilters = jQuery(this).parents('.modal-content').find('.modal-body .quick_filter,.modal-body .filters_container .filter_value_select');
applyFilters_d8ccaf5b40812ab44559a46233178854({ modifiedFilters, modalSubmit: true });
jQuery('#d8ccaf5b40812ab44559a46233178854_filter_modal').modal('hide');
});
jQuery('#module_1_0-0 .quick_filter').on('click', function(e) {
toggleQuickFilterButton_d8ccaf5b40812ab44559a46233178854(e.target);
});
// populate filter selector
buildFilterSelector_d8ccaf5b40812ab44559a46233178854();
// add applied filter
filterModal_d8ccaf5b40812ab44559a46233178854.find('#filter_dropdown').on('click', '.dropdown-item', function()
{
addModalFilter_d8ccaf5b40812ab44559a46233178854(this, true);
});
if (true) {
jQuery('#module_1_0-0 #filter_dropdown .dropdown-item').each((_, searchFilter) => {
addModalFilter_d8ccaf5b40812ab44559a46233178854(searchFilter);
addSideFilter_d8ccaf5b40812ab44559a46233178854(searchFilter);
});
jQuery('#d8ccaf5b40812ab44559a46233178854_tableListTypeFilters').on('click', '.filter_collapse, .filter_expand', function() {
jQuery(this).toggle();
jQuery(this).siblings().toggle();
});
jQuery('#d8ccaf5b40812ab44559a46233178854_tableListTypeFilters').on('click', '.collapsible-parent-filter', function() {
var expandToggle = jQuery(this).find('.checkbox_filter_expand[data-toggle="collapse"]');
var collapseToggle = jQuery(this).find('.checkbox_filter_collapse[data-toggle="collapse"]')
expandToggle.toggle();
collapseToggle.toggle();
});
}
const toggleIndeterminate = (wrapper, fieldId, parentOptionId) => {
const indeterminate = Boolean(jQuery(wrapper).find(`[data-parent-option-id="${parentOptionId}"]:checked`).length);
jQuery(`#module_1_0-0 [data-filter-form-element="${fieldId}"][value="${parentOptionId}"]`).prop('indeterminate', indeterminate);
}
jQuery('#module_1_0-0 .field_input input[data-parent-option-id]').on('change', ({ target }) => {
const parentOptionId = jQuery(target).attr('data-parent-option-id');
const fieldId = jQuery(target).attr('data-filter-form-element');
const wrapper = jQuery(target).parents('.filter_container')[0];
toggleIndeterminate(wrapper, fieldId, parentOptionId);
});
jQuery('#module_1_0-0 .field_input input').each((_, field) => {
const fieldId = field.getAttribute('data-filter-form-element');
const parentOptionId = field.value;
const wrapper = jQuery(field).parents('.filter_container')[0];
toggleIndeterminate(wrapper, fieldId, parentOptionId);
});
// remove applied filters
jQuery('#module_1_0-0 .filter_container, #applied_filters').on('click', '.filter_remove', (e) => {
e.preventDefault();
const filterContainer = jQuery(e.target).closest('.filter_container');
const filterId = filterContainer.attr('data-filter-id');
const filterConfigType = filterContainer.attr('data-filter-config-type');
if (filterConfigType === "checkboxes") {
filterContainer.find(`.filter_value_select[data-filter-form-element="${ filterId }"]`)
.prop('checked', false)
.prop('indeterminate', false);
} else if (filterConfigType === "dropDown"
|| filterConfigType === "textField"
|| filterConfigType === "multipleChoice"
|| filterConfigType === "state"
|| filterConfigType === "countrySelect") {
if ($selectize_d8ccaf5b40812ab44559a46233178854[filterId]) {
$selectize_d8ccaf5b40812ab44559a46233178854[filterId].forEach((selectizeInput) => selectizeInput.context.selectize.clear());
} else {
filterContainer.find(`.filter_value_select[data-filter-form-element="${ filterId }"]`).val('');
}
}
if (jQuery(e.target).parents('#d8ccaf5b40812ab44559a46233178854_tableListTypeFilters').length > 0) {
const modifiedFilters = filterContainer.find('.filter_value_select');
applyFilters_d8ccaf5b40812ab44559a46233178854({ modifiedFilters });
}
});
filterModal_d8ccaf5b40812ab44559a46233178854.find('#applied_filters').on('click', '.filter_collapse, .filter_expand', function()
{
jQuery(this).toggle();
jQuery(this).siblings().toggle();
});
var searchParams = (typeof getSearchParams_d8ccaf5b40812ab44559a46233178854 == 'function') ? getSearchParams_d8ccaf5b40812ab44559a46233178854() : '';
jQuery('#d8ccaf5b40812ab44559a46233178854_search_order_by .dropdown-item').on('click', function(e) {processOrderBy_d8ccaf5b40812ab44559a46233178854(e, true)});
jQuery('#d8ccaf5b40812ab44559a46233178854_search_sort_order').on('click keyup', function(e) {processSortOrder_d8ccaf5b40812ab44559a46233178854(e, true)});
var searchParams = (typeof getSearchParams_d8ccaf5b40812ab44559a46233178854 == 'function') ? getSearchParams_d8ccaf5b40812ab44559a46233178854() : '';
toggleSortVisibility_d8ccaf5b40812ab44559a46233178854(searchParams);
jQuery('#d8ccaf5b40812ab44559a46233178854_order_by .dropdown-item').on('click', function(e) {processOrderBy_d8ccaf5b40812ab44559a46233178854(e, false)});
jQuery('#d8ccaf5b40812ab44559a46233178854_sort_order').on('click keyup', function(e) {processSortOrder_d8ccaf5b40812ab44559a46233178854(e, false)});
// Event handler to sync filters
jQuery(document).on("#module_1_0-0 updateSideAndModalFilters_d8ccaf5b40812ab44559a46233178854", ( event, {
headerToggledFilter = false,
modalSubmit = false,
modifiedFilters = [],
textSearch = false,
} = {} ) => {
const removeAllFieldFilters = () => {
jQuery('#d8ccaf5b40812ab44559a46233178854_active_filters').empty();
jQuery('#module_1_0-0 .filter_container .filter_value_select').each((_, filterElement) => {
if (filterElement.type === 'text' || filterElement.type === 'select-one') {
filterElement.value = '';
} else if (filterElement.type === 'checkbox') {
filterElement.checked = false;
}
});
}
const removeQuickFilters = () => {
jQuery('#module_1_0-0 .quick_filter')
.each((_, quickFilterElement) => {
const quickFilter = jQuery(quickFilterElement);
quickFilter.addClass('btn-outline-secondary');
quickFilter.removeClass('active');
quickFilter.removeClass('btn-secondary');
});
}
if (textSearch) {
removeQuickFilters();
}
modifiedFilters.each((_, eventTarget) => {
const wrapper = jQuery(eventTarget).parents('.filter_container[data-filter-id]');
const filterFieldId = wrapper.attr('data-filter-id');
const fieldType = wrapper.attr('data-filter-config-type');
const expandFilterContainer = () => {
jQuery(`#module_1_0-0 div[data-collapse-field-id="${filterFieldId}"]`).collapse('show');
if (jQuery(`#module_1_0-0 div[data-collapse-field-id="${filterFieldId}"]`).hasClass('show') === false) {
wrapper.find('a.filter_expand').toggle();
wrapper.find('a.filter_expand').siblings().toggle();
}
}
if (jQuery(eventTarget).hasClass('quick_filter')) {
jQuery(`#module_1_0-0 .quick_filters .quick_filter[data-filter-id="${eventTarget.getAttribute('data-filter-id')}"]`)
.each((_, el) => {
const isSideFilter = el.classList.contains('mb-2');
el.className = eventTarget.className;
if (isSideFilter) {
el.classList.add('mb-2');
}
});
jQuery(`#d8ccaf5b40812ab44559a46233178854_query`).val('');
if (jQuery(eventTarget).hasClass('active')) {
removeAllFieldFilters();
}
} else if (fieldType === "checkboxes") {
const filterElement = jQuery(`#module_1_0-0 .filter_value_select[value="${eventTarget.value}"][data-filter-form-element="${filterFieldId}"]`);
if (filterElement.prop('checked') !== eventTarget.checked || ((headerToggledFilter || modalSubmit) && eventTarget.checked)) {
expandFilterContainer();
}
filterElement.prop('checked', eventTarget.checked);
if (!modalSubmit) {
removeQuickFilters();
}
} else if (fieldType === "dropDown"
|| fieldType === "textField"
|| fieldType === "multipleChoice"
|| fieldType === "state"
|| fieldType === "countrySelect") {
const filterElement = jQuery(`#module_1_0-0 .filter_value_select[data-filter-form-element="${filterFieldId}"]`);
if (filterElement.val() !== eventTarget.value || (modalSubmit && eventTarget.value !== '')) {
expandFilterContainer();
}
if (eventTarget.selectize) {
jQuery(eventTarget).trigger('js_paginatorFilterUpdate', { contextId: 'd8ccaf5b40812ab44559a46233178854', fieldId: filterFieldId, value: eventTarget.value });
} else {
filterElement.val(eventTarget.value);
}
if (!modalSubmit) {
removeQuickFilters();
}
}
});
});
document.querySelectorAll('#module_1_0-0 [data-selectize-field]').forEach((selectizeField) => {
initializeSelectize_d8ccaf5b40812ab44559a46233178854(selectizeField);
});
});
$selectize_d8ccaf5b40812ab44559a46233178854 = {};
function parseSelectizeOptions_d8ccaf5b40812ab44559a46233178854(selectizeOptions) {
const parsedOptions = [];
for (let optGroup in selectizeOptions) {
for (let [key, value] of Object.entries(selectizeOptions[optGroup])) {
const row = {
title: value,
value: key,
};
if (optGroup) row['optGroup'] = optGroup;
parsedOptions.push(row);
};
}
return parsedOptions;
}
function initializeSelectize_d8ccaf5b40812ab44559a46233178854(input) {
jQuery(input).addClass('position-static');
const fieldId = input.dataset.filterFormElement;
const { options, config = {}} = searchFilters_d8ccaf5b40812ab44559a46233178854[fieldId]['selectizeJs'] ?? {};
if (!options) return;
const parsedOptions = parseSelectizeOptions_d8ccaf5b40812ab44559a46233178854(options);
const silentUpdate = true;
if (!$selectize_d8ccaf5b40812ab44559a46233178854[fieldId]) {
$selectize_d8ccaf5b40812ab44559a46233178854[fieldId] = [];
}
const baseConfig = {
closeAfterSelect: true,
create: true,
maxItems: 1,
options: parsedOptions,
persist: false,
placeholder: 'Select',
labelField: 'title',
searchField: ['title'],
valueField: 'value',
optgroupField: 'optGroup',
optgroupValueField: 'optGroup',
};
const selectizeInput = jQuery(input).selectize({
...baseConfig,
...config,
onChange: function(value) {
// sync text inputs
jQuery(`[data-selectize-field][data-filter-form-element="${ fieldId }"]`).val(value);
// sync selects
const selectInputs = jQuery(`select[data-filter-form-element="${ fieldId }"] option`)
.val(value)
.attr('selected', true);
// sync selectize inputs
$selectize_d8ccaf5b40812ab44559a46233178854[fieldId].forEach((selectizeInput) => selectizeInput.context.selectize.setValue(value, silentUpdate));
if (jQuery(input).parents('.modal-content').length == 0) {
// Only auto update for side filters
applyFilters_d8ccaf5b40812ab44559a46233178854({ modifiedFilters: jQuery(input) });
}
},
optionGroupRegister: function (optgroup) {
return {
label: optgroup,
[this.settings.optgroupValueField]: optgroup,
};
},
render: {
option_create: function(data, escape) {
return '
Search for: ' + escape(data.input) + '…
';
}
},
});
selectizeInput.context.selectize.$wrapper
.removeClass('filter_value_select')
.find('.filter_value_select')
.removeClass('filter_value_select');
// Event to catch filter updates from js_paginator
jQuery(input).on('js_paginatorFilterUpdate', function(event, { contextId, fieldId, value }) {
if ('d8ccaf5b40812ab44559a46233178854' != contextId) return;
if (value !== '') {
$selectize_d8ccaf5b40812ab44559a46233178854[fieldId].forEach((selectizeInput) => selectizeInput.context.selectize.addOption({ value, title: value }));
}
$selectize_d8ccaf5b40812ab44559a46233178854[fieldId].forEach((selectizeInput) => selectizeInput.context.selectize.setValue(value, silentUpdate));
});
$selectize_d8ccaf5b40812ab44559a46233178854[fieldId].push(selectizeInput);
}
function processOrderBy_d8ccaf5b40812ab44559a46233178854(e, isSearchSort)
{
let orderBySelector = isSearchSort ? '#d8ccaf5b40812ab44559a46233178854_search_order_by' : '#d8ccaf5b40812ab44559a46233178854_order_by';
let sortOrderSelector = isSearchSort ? '#d8ccaf5b40812ab44559a46233178854_search_sort_order' : '#d8ccaf5b40812ab44559a46233178854_sort_order';
jQuery(orderBySelector + ' span.fa-check').remove();
let sortbyText = jQuery.trim(jQuery(e.target).text());
// Set dropdown text to match new sort
jQuery(orderBySelector + ' [data-toggle]').text(sortbyText).attr('aria-label', sortbyText);
// Insert checkbox icon into selected sort inside dropdown
let activeText = '
' + sortbyText;
jQuery(e.target).html(activeText);
let orderBy = jQuery(e.target).data('order-by');
let sortOrder = jQuery(e.target).data('default-sort-order');
// Make sortOrder arrow icon match the default sortOrder for selected sort option
if (sortOrder == 'desc')
{
jQuery(sortOrderSelector).removeClass('fa-arrow-up').addClass('fa-arrow-down');
}
else
{
jQuery(sortOrderSelector).removeClass('fa-arrow-down').addClass('fa-arrow-up');
}
let params = {
sortOrder: sortOrder,
orderBy: orderBy,
};
if (orderBy == 'relevance') {
params.sortOrder = null;
params.orderBy = null;
}
let paginator = jQuery('#d8ccaf5b40812ab44559a46233178854').data('jsPaginator');
paginator.setParams(params);
paginator.clearPagination();
paginator.load();
}
function processSortOrder_d8ccaf5b40812ab44559a46233178854(e, isSearchSort)
{
const keycode = (e.keyCode ? e.keyCode : e.which);
const orderBySelector = isSearchSort ? '#d8ccaf5b40812ab44559a46233178854_search_order_by .fa-check' : '#d8ccaf5b40812ab44559a46233178854_order_by .fa-check';
const orderBy = jQuery(orderBySelector).parent().data('order-by');
if (orderBy === 'relevance')
{
return;
}
if (e.type == 'click' || (e.type == 'keyup' && keycode == 13))
{
// Reverse the sort order between asc / desc
if (jQuery(e.target).hasClass('fa-arrow-up'))
{
jQuery(e.target).data('sort-order', 'desc').removeClass('fa-arrow-up').addClass('fa-arrow-down');
}
else
{
jQuery(e.target).data('sort-order', 'asc').removeClass('fa-arrow-down').addClass('fa-arrow-up');
}
const sortOrderSelector = isSearchSort ? '#d8ccaf5b40812ab44559a46233178854_search_sort_order' : '#d8ccaf5b40812ab44559a46233178854_sort_order';
const sortOrder = jQuery(sortOrderSelector).data('sort-order');
const params = {
sortOrder: sortOrder,
orderBy: orderBy,
};
const paginator = jQuery('#d8ccaf5b40812ab44559a46233178854').data('jsPaginator');
paginator.setParams(params);
paginator.clearPagination();
paginator.load();
}
}
//]]>