summaryrefslogtreecommitdiff
Commit message (Expand)AuthorAgeFilesLines
* wsmsg_{un,}confirm.go: Check course selections open stateRunxi Yu7 days2-0/+24
* Add confirmed dialogue on the client side (table not added yet)Runxi Yu7 days7-64/+213
* {wsmsg_hello,confirm}.go: Send confirmed stateRunxi Yu7 days3-3/+51
* cancelled -> canceledRunxi Yu7 days7-13/+16
* Show required course types on frontend tooRunxi Yu7 days3-4/+74
* Backend confirm course type minimum checkRunxi Yu7 days10-48/+295
* Display allowed groups/types on csv error; course{Group,Type}T -> stringRunxi Yu7 days8-30/+37
* iadocs: Use Inconsolatazi4Runxi Yu7 days2-2/+2
* iadocs: Include iadocs's own codeRunxi Yu7 days3-1/+7
* iadocs: AGPL \texttt -> \urlRunxi Yu7 days1-2/+2
* iadocs: Appendix updateRunxi Yu7 days3-11/+37
* latexify-source.sh: CSS is of language CSS, not JavaScriptRunxi Yu7 days1-1/+1
* endpoint_index.go: Fix bug of not returning after rendering login pageRunxi Yu7 days1-1/+1
* Remove benchmarking utilityRunxi Yu7 days4-134/+0
* Reduce code repetition and remove fake authenticationRunxi Yu7 days9-349/+157
* *.go: Use wrapError() for brevityRunxi Yu7 days13-91/+53
* Don't pass session ID to WebSocket routinesRunxi Yu7 days5-13/+1
* drop.sql: DROP TABLE misc;Runxi Yu7 days1-0/+1
* Rename tmpl -> templatesRunxi Yu7 days8-10/+7
* *.go: Restructure backend filesRunxi Yu7 days14-143/+161
* Combine "Enrichment" and "Culture" into "Non-sport"Runxi Yu7 days2-12/+10
* courses.go: courseTypes should be a map[courseTypeT]struct{}Runxi Yu7 days1-4/+4
* Separate wsm.go into a file for each functionRunxi Yu7 days3-155/+215
* Move AGPL out of the primary appendix documentRunxi Yu7 days3-688/+685
* latexify-source.sh: Use a function instead of copying code aroundRunxi Yu8 days1-55/+23
* deploy.sh: Update sed expressionRunxi Yu8 days1-1/+1
* student.js: Use wss://cca.runxiyu.org/wsv0.1.9Runxi Yu8 days1-1/+1
* README.md: Remove "(WIP)"Runxi Yu8 days1-1/+1
* Revert "auth.go: Set SameSite=Strict"Runxi Yu8 days1-1/+1
* *.html: s/IA Docs/IA/gRunxi Yu8 days4-4/+4
* auth.go: Set SameSite=StrictRunxi Yu8 days1-1/+1
* Implement course selection started/stopped statesRunxi Yu8 days10-21/+135
* staff.html: Add search functionalityRunxi Yu8 days1-0/+11
* state.go: Cancel connections when setting state 0Runxi Yu8 days1-8/+16
* newcourses.go: setupCourses must be run after commitRunxi Yu8 days1-10/+11
* wsc.go: Check newCtx.Done() when entering other event casesRunxi Yu8 days1-12/+25
* wsh.go: Remove old TODO about limiting connections per userRunxi Yu8 days1-7/+0
* wsh.go: Remove TODO about checking pgErrRunxi Yu8 days1-1/+0
* export.go: Remove unnecessary TODORunxi Yu8 days1-1/+1
* auth.go: Remove access token expiration fields and related TODORunxi Yu8 days1-14/+5
* auth.go: Remove TODO about implementing nonce checksRunxi Yu8 days1-7/+0
* auth.go: Remove TODO about using ON CONFLICTRunxi Yu8 days1-7/+0
* Replace tcourse.sql with an example importable CSVRunxi Yu8 days3-14/+15
* Validate course group and course type when importing from CSVRunxi Yu8 days1-0/+24
* Allow staff to upload a CSV containing coursesRunxi Yu8 days6-39/+432
* export.go: Remove unnecessary fields from user queryRunxi Yu9 days1-3/+3
* style.css: Fix file selector buttonsRunxi Yu9 days1-1/+7
* {wsp,wsx}.go: Move comment about RFC1459-like message formatRunxi Yu9 days2-23/+23
* auth.go, schema.sql: Add "confirmed" field to usersRunxi Yu9 days2-2/+3
* index.go, student_disabled.html: Repsect state = 0Runxi Yu9 days3-17/+98