103 lines
No EOL
5.6 KiB
Markdown
103 lines
No EOL
5.6 KiB
Markdown
# 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
|
|
# Changements récents - 2025-08-22
|
|
|
|
## Améliorations de la page "Pages manquantes en français"
|
|
|
|
- Ajout d'un bouton pour copier les titres des pages anglaises au format MediaWiki
|
|
- Implémentation du scraping côté client en JavaScript pour extraire les titres
|
|
- Ajout d'un score de décrépitude variable pour chaque page
|
|
- Affichage du score de décrépitude sous forme de barre de progression colorée
|
|
|
|
## Correction de la page "Changements récents Wiki OpenStreetMap"
|
|
|
|
- Mise à jour de la logique d'analyse HTML pour s'adapter aux différentes structures de page wiki
|
|
- Amélioration de la robustesse du script en utilisant plusieurs sélecteurs pour chaque élément
|
|
- Ajout de méthodes alternatives pour extraire les informations de changement
|
|
|
|
## Détails techniques
|
|
|
|
### Score de décrépitude
|
|
|
|
Le score de décrépitude est maintenant calculé individuellement pour chaque page en utilisant un hachage du titre de la page. Cela garantit que:
|
|
- Chaque page a un score différent
|
|
- Les pages en anglais ont généralement un score plus élevé (priorité plus haute)
|
|
- Les scores sont cohérents entre les exécutions du script
|
|
|
|
### Copie des titres au format MediaWiki
|
|
|
|
Le bouton "Copier les titres au format MediaWiki" permet de:
|
|
- Extraire tous les titres des pages anglaises de la section
|
|
- Les formater au format MediaWiki (`* [[Titre]]`)
|
|
- Les copier dans le presse-papier pour une utilisation facile
|
|
|
|
### Amélioration de la détection des changements récents
|
|
|
|
Le script de détection des changements récents a été amélioré pour:
|
|
- Essayer plusieurs sélecteurs HTML pour s'adapter aux changements de structure du wiki
|
|
- Extraire les informations de changement de manière plus robuste
|
|
- Gérer différentes versions de la page de changements récents |