mirror of
https://forge.chapril.org/tykayn/libre-charge-map
synced 2025-06-20 01:34:43 +02:00
filter min power slider, display count of hidden stations
This commit is contained in:
parent
33c4bd0668
commit
a114635fce
10 changed files with 177 additions and 51 deletions
|
@ -344,6 +344,9 @@ function calculerPourcentage(partie, total, reduc) {
|
|||
// Ajouter une variable globale pour stocker le nombre d'issues Osmose
|
||||
let osmoseIssuesCount = 0;
|
||||
|
||||
// Ajouter une variable globale pour stocker le nombre de stations affichées
|
||||
let displayedStationsCount = 0;
|
||||
|
||||
function displayStatsFromGeoJson(resultAsGeojson) {
|
||||
let count = resultAsGeojson.features.length;
|
||||
let count_station_output = 0;
|
||||
|
@ -463,6 +466,7 @@ function displayStatsFromGeoJson(resultAsGeojson) {
|
|||
|
||||
// Remplacer la ligne existante par un appel à updateCounters
|
||||
updateCounters();
|
||||
|
||||
}
|
||||
|
||||
// Ajouter une fonction pour mettre à jour les compteurs
|
||||
|
@ -506,6 +510,9 @@ function displayPointsFromApi(points, convert_to_osm_json) {
|
|||
geojsondata = osmtogeojson(points);
|
||||
}
|
||||
|
||||
// Réinitialiser le compteur avant d'afficher les points
|
||||
displayedStationsCount = 0;
|
||||
|
||||
displayStatsFromGeoJson(geojsondata);
|
||||
|
||||
let resultLayer = L.geoJson(geojsondata, {
|
||||
|
@ -530,6 +537,9 @@ function displayPointsFromApi(points, convert_to_osm_json) {
|
|||
},
|
||||
onEachFeature: eachFeature,
|
||||
});
|
||||
|
||||
// Mettre à jour le compteur de stations filtrées
|
||||
updateFilteredStationsCount();
|
||||
}
|
||||
|
||||
function makePopupOfFeature(feature) {
|
||||
|
@ -580,7 +590,6 @@ function eachFeature(feature, layer) {
|
|||
|
||||
// Filtrage par puissance
|
||||
if (outPowerGuessed === 0 || outPowerGuessed === null) {
|
||||
// Gestion des stations à puissance inconnue
|
||||
if (display_unknown_max_power_station === 'hide') {
|
||||
return;
|
||||
}
|
||||
|
@ -591,6 +600,9 @@ function eachFeature(feature, layer) {
|
|||
}
|
||||
}
|
||||
|
||||
// Incrémenter le compteur de stations affichées
|
||||
displayedStationsCount++;
|
||||
|
||||
let link_josm = createJOSMEditLink(feature);
|
||||
|
||||
let popupContent = makePopupOfFeature(feature);
|
||||
|
@ -840,7 +852,8 @@ function refreshDisplay(convert_points_to_osm = false) {
|
|||
supprimerMarqueurs();
|
||||
if (geojsondata) {
|
||||
displayPointsFromApi(geojsondata, convert_points_to_osm);
|
||||
updateCounters(); // Mettre à jour les compteurs après le filtrage
|
||||
updateCounters();
|
||||
updateFilteredStationsCount();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1260,6 +1273,12 @@ function init() {
|
|||
"Bornes potentielles (Osmose)": osmose_markers
|
||||
};
|
||||
|
||||
// const baseLayersControl = L.control.layers(baseLayers, null, {
|
||||
// collapsed: true,
|
||||
// className: 'leaflet-control-layers base-layers',
|
||||
// id: 'base-layers-control'
|
||||
// }).addTo(map);
|
||||
|
||||
const overlayControl = L.control.layers(null, overlayMaps, {
|
||||
collapsed: true,
|
||||
className: 'leaflet-control-layers overlay-layers',
|
||||
|
@ -1333,4 +1352,18 @@ init()
|
|||
|
||||
// Créer un nouveau pane pour les marqueurs Osmose avec un zIndex plus élevé
|
||||
map.createPane('osmosePane');
|
||||
map.getPane('osmosePane').style.zIndex = 1000;
|
||||
map.getPane('osmosePane').style.zIndex = 1000;
|
||||
|
||||
// Ajouter une nouvelle fonction pour mettre à jour le compteur de stations filtrées
|
||||
function updateFilteredStationsCount() {
|
||||
const totalStations = geojsondata ? geojsondata.features.length : 0;
|
||||
const filterStats = `<div class="filter-stats">${displayedStationsCount} stations sur ${totalStations} trouvées</div>`;
|
||||
|
||||
// Mettre à jour ou créer l'élément après le slider
|
||||
let existingStats = $('.filter-stats');
|
||||
if (existingStats.length) {
|
||||
existingStats.replaceWith(filterStats);
|
||||
} else {
|
||||
$('#filter_max_output_display').after(filterStats);
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue