Commit Graph

8 Commits

Author SHA1 Message Date
Jakub Zych
2536bcb959 Management API: record routes for courses, meetings, class sessions, readings and deadlines (Fillable + Rules + TemporalErrors, PATCH, filters) 2026-10-17 18:05:39 +02:00
Jakub Zych
996b4d1542 Management API: POST/DELETE /materials/{id}/files (attach.Store, 50 MB, 20 files), DELETE /materials/{id} removes files; download keeps the file name 2026-10-17 17:53:22 +02:00
Jakub Zych
d2096e2128 feat(manage): GET and PUT /api/v1/bm/materials/{id}
The management API could only upsert a material on its title and course,
so a renamed note became a second material. PUT /materials/{id} applies the
same body to one material (422 when the new title and course belong to
another one), GET /materials/{id} shows a draft or published material with
its public files, and the upsert, update and validation share one path.
The README documents the management API.
2026-10-16 20:40:47 +02:00
Jakub Zych
71b848a376 Adopt SummerCMS v0.1.1 admin features
Datepickers on native time.Time / lagoon.Date fields, file uploads on
materials, readings and class sessions managed from the course form
(course_id made nullable).
2026-10-03 06:03:34 +02:00
Jakub Zych
57e4ff7cea docs: document the calendar feed routes and jz.bm.public_url 2026-10-02 17:38:48 +02:00
Jakub Zych
28f68d002f feat: add --prune and a rolled-back --dry-run to bm:seed 2026-10-02 17:28:07 +02:00
Jakub Zych
21107e9804 feat: serve the student app from the plugin 2026-10-02 14:43:02 +02:00
Jakub Zych
5106239c97 docs: add the plugin README
Overview, features, the API reference with every route and response
shape, admin screens, configuration, the bm:seed file format,
dependencies and testing.
2026-10-02 14:27:01 +02:00