4.2 KiB
4.2 KiB
Corrections apportées à QualiWiki
Ce document décrit les corrections apportées pour résoudre les problèmes mentionnés dans la description des issues.
1. Correction de l'erreur dans wiki_archived_proposals.html.twig
Problème
Key "total_proposals" for sequence/mapping with keys "0, 1, 2, 3, ..." does not exist in admin/wiki_archived_proposals.html.twig at line 193.
Solution
Ajout d'une valeur par défaut pour total_proposals
dans le template :
<div class="stats-value">{{ statistics.total_proposals|default(proposals|length) }}</div>
Cette modification permet d'utiliser le nombre de propositions dans le tableau proposals
comme valeur par défaut si statistics.total_proposals
n'est pas défini.
2. Implémentation d'un panneau latéral sombre pour la navigation
Modifications
- Ajout d'un panneau latéral sombre dans
templates/base.html.twig
- Ajout de styles CSS dans
public/css/main.css
pour le panneau latéral - Réorganisation de la structure HTML pour intégrer le panneau latéral
- Ajout de liens vers toutes les sections principales de l'application
Avantages
- Navigation plus claire et plus accessible
- Meilleure organisation visuelle de l'application
- Accès rapide à toutes les fonctionnalités principales
3. Création d'une page dashboard avec graphiques
Fonctionnalités
- Ajout d'une méthode
dashboard
dansWikiController.php
- Création d'un template
admin/wiki_dashboard.html.twig
- Implémentation de graphiques montrant :
- L'évolution du score moyen de décrépitude
- L'évolution du nombre de pages suivies
- L'évolution du nombre de pages sans catégorie
Données suivies
- Score moyen de décrépitude des pages
- Nombre de pages suivies
- Nombre de pages sans catégorie (pages orphelines)
4. Correction de l'erreur dans wiki_random_suggestion.html.twig
Problème
Key "en_page" for sequence/mapping with keys "title, level" does not exist in admin/wiki_random_suggestion.html.twig at line 28.
Solution
- Ajout de vérifications pour l'existence de
en_page
dans le template - Ajout de valeurs par défaut pour les propriétés de
en_page
- Filtrage des pages pour s'assurer qu'elles ont une clé
en_page
dans le contrôleur
5. Ajout d'avatars utilisateurs dans la page des changements récents
Fonctionnalités
- Ajout d'une fonction
fetchUserAvatar
dansWikiController.php
pour récupérer et mettre en cache les avatars des utilisateurs - Mise à jour des templates
admin/wiki_recent_changes.html.twig
etpublic/wiki_recent_changes.html.twig
pour afficher les avatars - Mise en cache des avatars pour éviter de les récupérer à chaque fois
6. Correction de l'erreur de mémoire dans la page des suppressions suspectes
Problème
Error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 175260864 bytes)
Solution
- Modification de la méthode
suspiciousDeletions
dansWikiController.php
pour utiliser une approche plus efficace en mémoire - Utilisation de la méthode
extractJsonArrayByKey
au lieu dejson_decode(file_get_contents())
pour traiter le fichier JSON - Limitation du nombre d'éléments extraits à 50 avec le paramètre
$maxItems
- Ajout d'une limite pour arrêter le traitement après avoir trouvé 20 pages suspectes
7. Implémentation du suivi des pages "France" sans catégorie
Fonctionnalités
- Ajout de constantes pour l'URL des DeadendPages et le fichier de sortie dans
wiki_compare.py
- Création d'une fonction
fetch_deadend_pages
pour récupérer les pages commençant par "France" depuis la liste des DeadendPages - Création d'une fonction
suggest_categories
pour suggérer des catégories pour les pages sans catégorie - Modification de la fonction
main
pour traiter et sauvegarder les données des DeadendPages - Mise à jour du contrôleur pour charger et afficher les données des DeadendPages
- Ajout de sections dans le template pour afficher les pages sans catégorie et les pages récemment catégorisées
Avantages
- Suivi des pages qui devraient avoir des catégories
- Suggestion de catégories pour faciliter le travail des contributeurs
- Suivi des progrès dans la catégorisation des pages