32 lines
1.0 KiB
Markdown
32 lines
1.0 KiB
Markdown
# Reviews & Albums
|
||
|
||
## Album page
|
||
- Artwork, metadata, average rating, and review count
|
||
- Full Spotify tracklist when available
|
||
- Reviews list (newest first)
|
||
- Inline new review form for logged‑in users
|
||
|
||
## Writing a review
|
||
- Rating slider from 1–10
|
||
- Title (max 160 chars) and body (20–5000 chars)
|
||
- Server-side validation provides inline errors on failure
|
||
- Successful submissions persist, flash a success message, and reload the album page
|
||
|
||
## Editing & deleting reviews
|
||
- Authors can edit/delete their own reviews
|
||
- Moderators/Admins can edit/delete any review
|
||
- CSRF protection is required for deletion
|
||
|
||
## Aggregates
|
||
- The album page computes:
|
||
- Total number of reviews for the album
|
||
- Average rating rounded to one decimal
|
||
|
||
## Demo data
|
||
```bash
|
||
docker compose exec tonehaus php bin/console app:seed-demo-albums --count=40 --attach-users
|
||
docker compose exec tonehaus php bin/console app:seed-demo-reviews --cover-percent=70 --max-per-album=8
|
||
```
|
||
- Use `--only-empty` to focus on albums that currently have no reviews.
|
||
|