Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | courses.go, schema.sql: Validate course{Type,Group} in server, not SQL | Runxi Yu | 2024-10-04 | 1 | -9/+1 |
| | |||||
* | *.sql: New schema with ctypes and cgroups | Runxi Yu | 2024-10-04 | 1 | -12/+22 |
| | |||||
* | schema.sql: users.expr should be BIGINT | Runxi Yu | 2024-10-03 | 1 | -1/+1 |
| | |||||
* | ws.go, schema.sql: Enforce uniqueness of course choices | Runxi Yu | 2024-10-01 | 1 | -1/+1 |
| | | | | References: https://todo.sr.ht/~runxiyu/cca/1 | ||||
* | ws.go, *.sql: Add course choices to the database | Runxi Yu | 2024-10-01 | 1 | -1/+9 |
| | | | | | | | | | | | | | | | | | | | | Note that this naive implementation currently allows users to submit multiple requests for the same course. See the TODO comment below: /* * TODO: Ensure that the user is not already enrolled in this course * and pay attention to relevant race conditions. It might be useful * to restructure this part, to begin a transaction that adds the user * to the database (and check the (currently not existing) uniqueness) * constraint at that exact moment, and abort the transaction if the * course limit is exceeded. * Or perhaps choices should be also stored in an internal data * structure, though that requires extra attention on consistency * issues between the internal data structure and the database. * (Sometime I should really go fix the LMDB bindings...) */ References: https://todo.sr.ht/~runxiyu/cca/1 | ||||
* | {auth,index,ws}.go, schema.sql: Move session cookie into the user table | Runxi Yu | 2024-09-30 | 1 | -7/+3 |
| | | | | | | | One user shall only have one session at a time. This reduces the possibility of strange race conditions and simplifies the code a lot. References: https://todo.sr.ht/~runxiyu/cca/4 | ||||
* | docs, scripts, sql: Sort support files into subdirectories | Runxi Yu | 2024-09-24 | 1 | -0/+20 |