summaryrefslogtreecommitdiff
Commit message (Expand)AuthorAgeFilesLines
* ws.go: Reaffirm course choice when duplicate is requestedRunxi Yu8 days1-5/+13
* ws.go: propagateCouldFail -> propagateIgnoreFailuresRunxi Yu8 days1-2/+2
* ws.go, schema.sql: Enforce uniqueness of course choicesRunxi Yu8 days2-43/+65
* lint.sh: Disable yet another cyclomatic complexity checkerRunxi Yu8 days1-1/+1
* ws.go, *.sql: Add course choices to the databaseRunxi Yu8 days3-7/+47
* postgres_run.sh: Run in debug level 2Runxi Yu8 days1-1/+1
* ws.go: propagate -> propagateCouldFailRunxi Yu8 days1-3/+8
* ws.go: propagate course number updates in another goroutineRunxi Yu8 days1-1/+1
* auth.go: Add TODO about INSERTRunxi Yu8 days1-0/+7
* admin_handbook: List configuration caveatsRunxi Yu9 days1-3/+7
* iadocs: cover_page.{html->htm}Runxi Yu9 days2-353/+352
* docs, iadocs: RevampRunxi Yu9 days6-352/+544
* docs: TeXinfo kinda sucks, removingRunxi Yu9 days3-57/+0
* ws.go: Separate c.Write calls into writeText()Runxi Yu9 days1-25/+17
* utils.go, auth.go: Rename random to randomBytesRunxi Yu9 days2-3/+3
* main.go: Actually repsect config.Perf.ReadHeaderTimeoutRunxi Yu9 days1-1/+1
* style.css: Misc enhancementsRunxi Yu9 days1-29/+25
* style.css: Break element specifiers onto its own line when longRunxi Yu9 days1-6/+12
* style.css: Rename --boxbg to --boxRunxi Yu9 days1-13/+11
* style.css: Add a dark themeRunxi Yu9 days1-8/+28
* style.css: Remove poorly-framed comment on --x-contrast colorsRunxi Yu9 days1-5/+0
* ws.go, utils.go: Document some synchronization design choicesRunxi Yu9 days2-1/+21
* index.html: Disable checkbox initially when .Selected >= MaxRunxi Yu9 days1-0/+4
* main.js: Move connect(s) to the event listener directlyRunxi Yu9 days1-6/+2
* {config,index}.go, cca.scfg.example, style.css, *.html: Link to sourceRunxi Yu9 days6-14/+17
* *: Change license to AGPL-3.0-or-laterRunxi Yu9 days13-238/+787
* index.go: Correct typoRunxi Yu9 days1-1/+1
* auth.go, config.go, cca.scfg.example: Issue expiring cookiesRunxi Yu9 days3-2/+13
* {auth,index,ws}.go, schema.sql: Move session cookie into the user tableRunxi Yu9 days4-55/+23
* utils.go: Better logging for wstr()Runxi Yu9 days1-1/+1
* main.js: Disable boxes when fullRunxi Yu9 days1-0/+8
* main.js: Fix the IRC-style message parserRunxi Yu9 days1-0/+4
* index.html, main.js, ws.go: Enhance course selection rejection messageRunxi Yu9 days3-5/+9
* main.js: Handle "Y" (course selection approved)Runxi Yu10 days1-0/+4
* style.css: Remove styling for preformatted textRunxi Yu10 days1-9/+0
* ws.go, config.go, config.scfg.example: Attempt to fix deadlockRunxi Yu9 days3-4/+14
* main.js: Handle number updatesRunxi Yu9 days1-0/+3
* main.js: Relocate a comment and remove a blank lineRunxi Yu9 days1-2/+1
* ws.go: Attempt to propagate messagesRunxi Yu9 days1-1/+11
* ws.go: Implement course choice limitsRunxi Yu9 days1-0/+31
* pre-commit hook: Use && to chain lint.sh and eslint.shRunxi Yu9 days1-2/+1
* main.js: Add stub case "R" for course selection rejectedRunxi Yu9 days1-0/+5
* main.js: Comments should be /* */ rather than //Runxi Yu9 days1-2/+2
* main.js: Remove command "A" (authentication)Runxi Yu9 days1-3/+0
* auth.go: Document why we use a hybrid auth flowRunxi Yu9 days1-1/+12
* ws.go: protocolError is now its own functionRunxi Yu9 days1-28/+15
* index.html: Remind user to report connection closed errorsRunxi Yu9 days1-0/+3
* style.css, index.html: Emit warning when CSS doesn't loadRunxi Yu9 days2-0/+7
* .github, .woodpecker: Remove CI for nowRunxi Yu9 days2-59/+0
* .ws.go: Close websocket on protocol errorsRunxi Yu9 days1-0/+12