aboutsummaryrefslogtreecommitdiff
path: root/ws_utils.go (unfollow)
Commit message (Expand)AuthorFilesLines
2024-10-11iadocs: Include iadocs's own codeRunxi Yu3-1/+7
2024-10-11iadocs: AGPL \texttt -> \urlRunxi Yu1-2/+2
2024-10-11iadocs: Appendix updateRunxi Yu3-11/+37
2024-10-11latexify-source.sh: CSS is of language CSS, not JavaScriptRunxi Yu1-1/+1
2024-10-11endpoint_index.go: Fix bug of not returning after rendering login pageRunxi Yu1-1/+1
2024-10-11Remove benchmarking utilityRunxi Yu4-134/+0
2024-10-11Reduce code repetition and remove fake authenticationRunxi Yu9-349/+157
2024-10-11*.go: Use wrapError() for brevityRunxi Yu13-91/+53
2024-10-11Don't pass session ID to WebSocket routinesRunxi Yu5-13/+1
2024-10-11drop.sql: DROP TABLE misc;Runxi Yu1-0/+1
2024-10-11Rename tmpl -> templatesRunxi Yu8-10/+7
2024-10-11*.go: Restructure backend filesRunxi Yu14-143/+161
2024-10-11Combine "Enrichment" and "Culture" into "Non-sport"Runxi Yu2-12/+10
2024-10-11courses.go: courseTypes should be a map[courseTypeT]struct{}Runxi Yu1-4/+4
2024-10-11Separate wsm.go into a file for each functionRunxi Yu3-155/+215
2024-10-11Move AGPL out of the primary appendix documentRunxi Yu3-688/+685
2024-10-11latexify-source.sh: Use a function instead of copying code aroundRunxi Yu1-55/+23
2024-10-10deploy.sh: Update sed expressionRunxi Yu1-1/+1
2024-10-10student.js: Use wss://cca.runxiyu.org/wsv0.1.9Runxi Yu1-1/+1
2024-10-10README.md: Remove "(WIP)"Runxi Yu1-1/+1
2024-10-10Revert "auth.go: Set SameSite=Strict"Runxi Yu1-1/+1
2024-10-10*.html: s/IA Docs/IA/gRunxi Yu4-4/+4
2024-10-10auth.go: Set SameSite=StrictRunxi Yu1-1/+1
2024-10-10Implement course selection started/stopped statesRunxi Yu10-21/+135
2024-10-10staff.html: Add search functionalityRunxi Yu1-0/+11
2024-10-10state.go: Cancel connections when setting state 0Runxi Yu1-8/+16
2024-10-10newcourses.go: setupCourses must be run after commitRunxi Yu1-10/+11
2024-10-10wsc.go: Check newCtx.Done() when entering other event casesRunxi Yu1-12/+25
2024-10-10wsh.go: Remove old TODO about limiting connections per userRunxi Yu1-7/+0
2024-10-10wsh.go: Remove TODO about checking pgErrRunxi Yu1-1/+0
2024-10-10export.go: Remove unnecessary TODORunxi Yu1-1/+1
2024-10-10auth.go: Remove access token expiration fields and related TODORunxi Yu1-14/+5
2024-10-10auth.go: Remove TODO about implementing nonce checksRunxi Yu1-7/+0
2024-10-10auth.go: Remove TODO about using ON CONFLICTRunxi Yu1-7/+0
2024-10-10Replace tcourse.sql with an example importable CSVRunxi Yu3-14/+15
2024-10-10Validate course group and course type when importing from CSVRunxi Yu1-0/+24
2024-10-10Allow staff to upload a CSV containing coursesRunxi Yu6-39/+432
2024-10-10export.go: Remove unnecessary fields from user queryRunxi Yu1-3/+3
2024-10-10style.css: Fix file selector buttonsRunxi Yu1-1/+7
2024-10-09{wsp,wsx}.go: Move comment about RFC1459-like message formatRunxi Yu2-23/+23
2024-10-09auth.go, schema.sql: Add "confirmed" field to usersRunxi Yu2-2/+3
2024-10-09index.go, student_disabled.html: Repsect state = 0Runxi Yu3-17/+98
2024-10-09*.go, schema.sql, staff.html: Implement state settingRunxi Yu7-3/+187
2024-10-09*.go, tmpl/staff.html: Allow staff to export choicesRunxi Yu6-2/+250
2024-10-09staff.html: Update from students.html and only display link to /exportRunxi Yu1-112/+5
2024-10-09docs/fields.txt: RemoveRunxi Yu1-27/+0
2024-10-09{courses,wsc}.go: Atomic 64-bit alignmentRunxi Yu2-4/+7
2024-10-09wsc.go: Use sync.Map for cancelPool to reduce lock contentionRunxi Yu1-21/+10
2024-10-09student.html: Use separate columns for Selected and MaxRunxi Yu1-2/+9
2024-10-09eslint.sh: Call eslint directly rather than through npxRunxi Yu1-1/+1