feat : statistiques admin, livres, setup.sh, permissions rsync (v1.3.0) #66

Merged
cedricAbonnel merged 3 commits from feat/books into main 2026-05-15 07:18:50 +00:00
Owner

Résumé

  • Onglet Statistiques : pages les plus visitées, livres consultés, répartition par AS avec groupes configurables
  • Notion de livre : grouper des pages en série ordonnée (BookManager, template book.php)
  • Logs Apache : pattern glob configurable depuis l'UI, support .gz et .tar.gz
  • Permissions rsync : --chmod=Fug+rw,Fo-w pour la lisibilité groupe (fix écriture www-data)
  • saveSiteSettings() / saveSmtpSettings() : retournent bool, erreur affichée si échec
  • scripts/setup.sh : initialisation Folio (composer, répertoires, droits, groupe adm, migrations)

Plan de test

  • /admin/stats : pages, livres, tableau AS s'affichent
  • Filtrer par groupe AS -> badge actif + lignes filtrées
  • Ajouter/supprimer un groupe AS -> formulaire sauvegardé -> filtre fonctionne
  • Pattern log glob configurable depuis Recherches -> stats se mettent à jour
  • /book/<slug> : rendu correct d'une série
  • Enregistrer les réglages Site -> message succès/erreur selon droits
  • sync.sh : fichiers déployés lisibles/inscriptibles par www-data
## Résumé - **Onglet Statistiques** : pages les plus visitées, livres consultés, répartition par AS avec groupes configurables - **Notion de livre** : grouper des pages en série ordonnée (`BookManager`, template `book.php`) - **Logs Apache** : pattern glob configurable depuis l'UI, support `.gz` et `.tar.gz` - **Permissions rsync** : `--chmod=Fug+rw,Fo-w` pour la lisibilité groupe (fix écriture `www-data`) - **`saveSiteSettings()` / `saveSmtpSettings()`** : retournent `bool`, erreur affichée si échec - **`scripts/setup.sh`** : initialisation Folio (composer, répertoires, droits, groupe `adm`, migrations) ## Plan de test - [ ] `/admin/stats` : pages, livres, tableau AS s'affichent - [ ] Filtrer par groupe AS -> badge actif + lignes filtrées - [ ] Ajouter/supprimer un groupe AS -> formulaire sauvegardé -> filtre fonctionne - [ ] Pattern log glob configurable depuis Recherches -> stats se mettent à jour - [ ] `/book/<slug>` : rendu correct d'une série - [ ] Enregistrer les réglages Site -> message succès/erreur selon droits - [ ] `sync.sh` : fichiers déployés lisibles/inscriptibles par `www-data`
cedricAbonnel added 1 commit 2026-05-14 22:56:06 +00:00
cedricAbonnel added 1 commit 2026-05-15 07:18:05 +00:00
- DATA_PATH : chemin /data hors document root, configurable via .env
  (fallback sur BASE_PATH/data si absent)
- DataGit : auto-commit git sur toutes les écritures articles/livres
  (create, update, delete, meta, tags, fichiers, liens…) sauf autosave
- UpdateChecker : getBranch() / getLastChecked() / clearCache(),
  branche configurable via FOLIO_UPDATE_BRANCH (plus de main hardcodé)
- Admin dashboard : affiche la branche suivie, date du dernier contrôle,
  bouton Vérifier pour forcer le check sans attendre le TTL
- CLAUDE.md : architecture DATA_PATH et flux de déploiement documentés

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
cedricAbonnel added 1 commit 2026-05-15 07:18:44 +00:00
cedricAbonnel merged commit 9069a64a0c into main 2026-05-15 07:18:50 +00:00
cedricAbonnel deleted branch feat/books 2026-05-15 07:20:50 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: cedricAbonnel/folio#66