osm-commerces/wiki_compare/CHANGES.md
2025-08-22 18:19:20 +02:00

3.9 KiB

Changements implémentés

Ce document résume les changements et nouvelles fonctionnalités implémentés dans le cadre de la mise à jour du système de gestion des pages wiki OSM.

1. Suivi des changements récents du wiki OSM

Fonctionnalités ajoutées

  • Création d'un script fetch_recent_changes.py qui récupère les changements récents dans l'espace de noms français du wiki OSM
  • Ajout d'une nouvelle route /wiki/recent-changes dans le contrôleur WikiController
  • Création d'un template wiki_recent_changes.html.twig pour afficher les changements récents
  • Mise à jour de la navigation pour inclure un lien vers la page des changements récents

Utilisation

  • Les changements récents sont automatiquement récupérés toutes les heures
  • La page affiche la liste des pages modifiées récemment avec des liens vers ces pages

2. Validation de la hiérarchie des titres

Fonctionnalités ajoutées

  • Implémentation d'une logique de détection des hiérarchies de titres incorrectes (par exemple, h4 directement sous h2 sans h3 intermédiaire)
  • Ajout d'indicateurs visuels (badges) pour signaler les hiérarchies incorrectes dans les listes de sections
  • Mise à jour du template wiki_compare.html.twig pour afficher ces indicateurs

Utilisation

  • Les hiérarchies incorrectes sont automatiquement détectées lors de la comparaison des pages wiki
  • Un badge rouge avec un point d'exclamation est affiché à côté des titres ayant une hiérarchie incorrecte

3. Vérification des groupes locaux

Fonctionnalités ajoutées

  • Mise à jour du script fetch_osm_fr_groups.py pour récupérer les données des groupes locaux depuis Framacalc
  • Ajout d'une fonctionnalité de vérification de l'existence d'une page wiki pour chaque groupe
  • Mise à jour du template wiki_osm_fr_groups.html.twig pour afficher les résultats de vérification
  • Ajout de filtres pour faciliter la navigation parmi les groupes

Utilisation

  • Les groupes sont affichés avec des badges indiquant leur source (wiki ou Framacalc)
  • Les groupes sans page wiki sont mis en évidence avec un badge rouge
  • Les filtres permettent de voir uniquement les groupes d'une certaine catégorie (tous, wiki, Framacalc, avec page wiki, sans page wiki)

Limitations connues

  1. Accès aux données externes : Les scripts peuvent rencontrer des difficultés pour accéder aux données externes (wiki OSM, Framacalc) en fonction de l'environnement d'exécution.

  2. Détection des hiérarchies : La détection des hiérarchies incorrectes se base uniquement sur les niveaux des titres et ne prend pas en compte le contenu ou la sémantique.

  3. Correspondance des groupes : La correspondance entre les groupes Framacalc et les pages wiki se fait par une comparaison approximative des noms, ce qui peut parfois donner des résultats imprécis.

Maintenance future

Scripts Python

  • Les scripts Python sont situés dans le répertoire wiki_compare/
  • Ils peuvent être exécutés manuellement ou via des tâches cron
  • L'option --dry-run permet de tester les scripts sans modifier les fichiers
  • L'option --force permet de forcer la mise à jour même si le cache est récent

Templates Twig

  • Les templates sont situés dans le répertoire templates/admin/
  • wiki_recent_changes.html.twig : Affichage des changements récents
  • wiki_compare.html.twig : Comparaison des pages wiki avec validation de hiérarchie
  • wiki_osm_fr_groups.html.twig : Affichage des groupes locaux avec vérification des pages wiki

Contrôleur

  • Le contrôleur WikiController.php contient toutes les routes et la logique de traitement
  • La méthode detectHeadingHierarchyErrors() peut être ajustée pour modifier les règles de validation des hiérarchies
  • Les méthodes de rafraîchissement des données (refreshRecentChangesData(), etc.) peuvent être modifiées pour ajuster la fréquence de mise à jour