Source
map.updateFilter([this.bar.querySelectorAll('input[type="checkbox"]:checked')].map(n => n.value));
/*
** Copyright (C) 2001-2025 Zabbix SIA
**
** This program is free software: you can redistribute it and/or modify it under the terms of
** the GNU Affero General Public License as published by the Free Software Foundation, version 3.
**
** This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
** without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
** See the GNU Affero General Public License for more details.
**
** You should have received a copy of the GNU Affero General Public License along with this program.
** If not, see <https://www.gnu.org/licenses/>.
**/
/**
* Extend Leaflet Map with functions necessary for Zabbix "Geomap" widget.
*
* @type {L.Map}
*/
L.Map.include({
_center: null,
navigateHomeControl: null,
severityFilterControl: null,
setDefaultView: function(latLng, zoom) {
this._center = {
latLng: latLng,
zoom: zoom
};
},
updateFilter: function(filter_data) {
this.getContainer().dispatchEvent(new CustomEvent('filter', {detail: filter_data}));
},
elmntCounter: (function() {
let counter = 0;
return function() {
return ++counter;
}
})()
});
/**
* Leaflet extension to provide severity filter in "Geomap" widget.
*
* @type {L.Control}
*/
L.Control.severityFilterFilterControl = L.Control.extend({
_severity_levels: null,
_filter_checked: [],
initialize: function({checked, severity_levels, disabled}) {
this._filter_checked = checked;
this._severity_levels = severity_levels;
this._disabled = disabled;
},
onAdd: function(map) {