Page admin/tags : gestion des valeurs par type + couleurs Atari/Amstrad #40

Open
opened 2026-05-13 22:09:57 +00:00 by cedricAbonnel · 0 comments
Owner

Contexte

Il n'existe pas de page dédiée à la gestion des valeurs de tags. Les tags se gèrent uniquement par article via /edit/{uuid}/tags/{type}. Il est impossible de renommer ou supprimer une valeur dans l'ensemble du blog, ni d'associer une couleur à un tag.

La page /admin/tags n'existe pas encore (URL actuellement non routée).

Comportement souhaité

1. Page /admin/tags

Créer une page dédiée avec :

  • Sélecteur de type de tag (dropdown ou onglets) listant tous les types définis (ex : Logiciels, Matériel…).
  • Pour le type sélectionné, liste de toutes les valeurs distinctes utilisées dans les articles, avec pour chacune :
    • Le nombre d'articles qui l'utilisent.
    • Un champ pour la renommer (propagé à tous les articles concernés).
    • Un bouton Supprimer (retire ce tag de tous les articles concernés).
    • Un sélecteur de couleur optionnel parmi la palette de 16 couleurs (voir §2).

2. Palette de couleurs — référence Atari/Amstrad

Les couleurs des tags feront référence aux 16 couleurs des ordinateurs Atari ST / Amstrad CPC (palette rétro à définir avec le client — remplacera ou complètera COLOR_PALETTE_16 dans helpers.php).

  • La couleur est optionnelle : un tag sans couleur assignée s'affiche avec le style par défaut.
  • La couleur choisie s'affiche en chip/badge sur le tag dans les vues publiques et dans l'admin.
  • Les couleurs sont stockées dans un fichier data/tag_colors.json de la forme {"type": {"valeur": 3}} (index 0–15 dans la palette).

3. Affichage public

Quand un tag possède une couleur, l'afficher en conséquence dans post_view.php et partout où les tags sont rendus.

Fichiers concernés

  • src/ArticleManager.php — ajouter renameTagValue(type, old, new), deleteTagValue(type, value), getTagColors(), saveTagColor(type, value, colorIndex|null)
  • public/index.php — ajouter les cases rename_tag_value, delete_tag_value, save_tag_color et la route admin/tags
  • templates/admin_tags.php — nouveau template (page admin/tags)
  • src/helpers.php — confirmer ou remplacer COLOR_PALETTE_16 avec la palette Atari/Amstrad exacte
  • templates/post_view.php — utiliser la couleur du tag si définie

Point ouvert

Quelle est la palette exacte souhaitée : Atari ST 16 couleurs, Amstrad CPC, ou CGA ? À confirmer pour finaliser COLOR_PALETTE_16.


Migré depuis varlog#55

## Contexte Il n'existe pas de page dédiée à la gestion des **valeurs de tags**. Les tags se gèrent uniquement par article via `/edit/{uuid}/tags/{type}`. Il est impossible de renommer ou supprimer une valeur dans l'ensemble du blog, ni d'associer une couleur à un tag. La page `/admin/tags` n'existe pas encore (URL actuellement non routée). ## Comportement souhaité ### 1. Page `/admin/tags` Créer une page dédiée avec : - **Sélecteur de type de tag** (dropdown ou onglets) listant tous les types définis (ex : Logiciels, Matériel…). - Pour le type sélectionné, **liste de toutes les valeurs distinctes** utilisées dans les articles, avec pour chacune : - Le nombre d'articles qui l'utilisent. - Un champ pour la **renommer** (propagé à tous les articles concernés). - Un bouton **Supprimer** (retire ce tag de tous les articles concernés). - Un sélecteur de **couleur optionnel** parmi la palette de 16 couleurs (voir §2). ### 2. Palette de couleurs — référence Atari/Amstrad Les couleurs des tags feront référence aux **16 couleurs des ordinateurs Atari ST / Amstrad CPC** (palette rétro à définir avec le client — remplacera ou complètera `COLOR_PALETTE_16` dans `helpers.php`). - La couleur est **optionnelle** : un tag sans couleur assignée s'affiche avec le style par défaut. - La couleur choisie s'affiche en chip/badge sur le tag dans les vues publiques et dans l'admin. - Les couleurs sont stockées dans un fichier `data/tag_colors.json` de la forme `{"type": {"valeur": 3}}` (index 0–15 dans la palette). ### 3. Affichage public Quand un tag possède une couleur, l'afficher en conséquence dans `post_view.php` et partout où les tags sont rendus. ## Fichiers concernés - `src/ArticleManager.php` — ajouter `renameTagValue(type, old, new)`, `deleteTagValue(type, value)`, `getTagColors()`, `saveTagColor(type, value, colorIndex|null)` - `public/index.php` — ajouter les cases `rename_tag_value`, `delete_tag_value`, `save_tag_color` et la route `admin/tags` - `templates/admin_tags.php` — nouveau template (page admin/tags) - `src/helpers.php` — confirmer ou remplacer `COLOR_PALETTE_16` avec la palette Atari/Amstrad exacte - `templates/post_view.php` — utiliser la couleur du tag si définie ## Point ouvert Quelle est la palette exacte souhaitée : Atari ST 16 couleurs, Amstrad CPC, ou CGA ? À confirmer pour finaliser `COLOR_PALETTE_16`. --- *Migré depuis [varlog#55](https://git.abonnel.fr/cedricAbonnel/varlog/issues/55)*
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: cedricAbonnel/folio#40