feat: add the study data models and schema migrations

Courses, meetings, class sessions, deadlines, readings with per-user
progress, materials with tags and file attachments. Timestamps are
stored in UTC and held as Europe/Warsaw text so the admin text inputs
can write them.
This commit is contained in:
Jakub Zych
2026-10-02 14:26:08 +02:00
parent cfdc6862bc
commit 1046237771
25 changed files with 1427 additions and 3 deletions

View File

@@ -0,0 +1,17 @@
// Code generated by summer make. DO NOT EDIT.
package models
import "time"
// ReadingProgress records that a user (a golem15.user users row) has read a
// reading. One row per reading and user.
type ReadingProgress struct {
ID uint `gorm:"column:id;primaryKey"`
ReadingID uint `gorm:"column:reading_id"`
UserID uint `gorm:"column:user_id"`
ReadAt time.Time `gorm:"column:read_at"`
}
// TableName is the plugin table.
func (ReadingProgress) TableName() string { return "jz_bm_reading_progress" }