Masquer / dépublier un article (soft delete) #12

Closed
opened 2026-05-08 21:18:50 +00:00 by cedricAbonnel · 1 comment
Owner

Contexte

Un article publié ne peut pas être retiré de la vue publique sans intervention directe en base de données.

Besoin

Permettre à l'auteur de masquer un article publié (dépublication) ou de le supprimer logiquement, sans destruction physique de la donnée.

Comportement attendu

  • Bouton « Masquer » / « Dépublier » accessible depuis la vue d'un article (auteur authentifié uniquement)
  • L'article masqué n'apparaît plus dans la liste publique ni via son URL directe
  • L'article reste accessible dans une vue d'administration
  • Possibilité de le republier (bascule inverse)

Pistes techniques

  • Ajouter/utiliser un flag hidden (ou status) sur la table posts
  • Route POST /posts/{id}/hide et /posts/{id}/publish dans le routeur
  • Adapter les requêtes de listing dans PostManager pour filtrer selon le statut

Dépendances

  • Issue #9 (modification d'un article) — partage la logique d'accès authentifié

Critères d'acceptation

  • Un article masqué ne s'affiche plus côté public
  • L'auteur peut le republier
  • La donnée n'est pas supprimée en base
## Contexte Un article publié ne peut pas être retiré de la vue publique sans intervention directe en base de données. ## Besoin Permettre à l'auteur de masquer un article publié (dépublication) ou de le supprimer logiquement, sans destruction physique de la donnée. ## Comportement attendu - Bouton « Masquer » / « Dépublier » accessible depuis la vue d'un article (auteur authentifié uniquement) - L'article masqué n'apparaît plus dans la liste publique ni via son URL directe - L'article reste accessible dans une vue d'administration - Possibilité de le republier (bascule inverse) ## Pistes techniques - Ajouter/utiliser un flag `hidden` (ou `status`) sur la table `posts` - Route POST `/posts/{id}/hide` et `/posts/{id}/publish` dans le routeur - Adapter les requêtes de listing dans `PostManager` pour filtrer selon le statut ## Dépendances - Issue #9 (modification d'un article) — partage la logique d'accès authentifié ## Critères d'acceptation - [ ] Un article masqué ne s'affiche plus côté public - [ ] L'auteur peut le republier - [ ] La donnée n'est pas supprimée en base
Author
Owner

Ticket migré vers le dépôt Folio : cedricAbonnel/folio#4

Ticket migré vers le dépôt Folio : https://git.abonnel.fr/cedricAbonnel/folio/issues/4
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: cedricAbonnel/varlog#12