diff --git a/public/js/utils.js b/public/js/utils.js new file mode 100644 index 0000000..cfa61a7 --- /dev/null +++ b/public/js/utils.js @@ -0,0 +1,116 @@ +// Fonction pour gérer la recherche de villes +function setupCitySearch(searchInputId, suggestionListId, onCitySelected) { + const searchInput = document.getElementById(searchInputId); + const suggestionList = document.getElementById(suggestionListId); + + // Vérifier si les éléments existent avant de continuer + if (!searchInput || !suggestionList) { + console.debug(`Éléments de recherche non trouvés: ${searchInputId}, ${suggestionListId}`); + return; + } + + let searchTimeout; + + // Fonction pour nettoyer la liste des suggestions + function clearSuggestions() { + suggestionList.innerHTML = ''; + suggestionList.style.display = 'none'; + } + + // Fonction pour afficher les suggestions + function displaySuggestions(suggestions) { + clearSuggestions(); + if (suggestions.length === 0) { + return; + } + + suggestions.forEach(suggestion => { + const item = document.createElement('div'); + item.className = 'suggestion-item'; + item.innerHTML = ` +
- {{query_places|raw}} --
+ {{query_places|raw}} ++ + Exécuter dans Overpass Turbo + +
Zone | -Nombre de lieux | -Complétude % | -Actions | -
---|---|---|---|
- {{ stat.zone }} {{ stat.name }} - | -{{ stat.placesCount }} | -{{ stat.completionPercent }} | -- - - - | -
Ville | +Code postal | +Complétion | +Nombre de commerces | +Actions | +
---|---|---|---|---|
{{ stat.name }} | +{{ stat.zone }} | +{{ stat.completionPercent }}% | +{{ stat.places|length }} | ++ Voir les statistiques + | +
- {{ dump(commerce_overpass) }} --