summaryrefslogtreecommitdiff
Commit message (Expand)AuthorAgeFilesLines
* style.css: Break element specifiers onto its own line when longRunxi Yu13 days1-6/+12
* style.css: Rename --boxbg to --boxRunxi Yu13 days1-13/+11
* style.css: Add a dark themeRunxi Yu13 days1-8/+28
* style.css: Remove poorly-framed comment on --x-contrast colorsRunxi Yu13 days1-5/+0
* ws.go, utils.go: Document some synchronization design choicesRunxi Yu13 days2-1/+21
* index.html: Disable checkbox initially when .Selected >= MaxRunxi Yu13 days1-0/+4
* main.js: Move connect(s) to the event listener directlyRunxi Yu13 days1-6/+2
* {config,index}.go, cca.scfg.example, style.css, *.html: Link to sourceRunxi Yu13 days6-14/+17
* *: Change license to AGPL-3.0-or-laterRunxi Yu13 days13-238/+787
* index.go: Correct typoRunxi Yu13 days1-1/+1
* auth.go, config.go, cca.scfg.example: Issue expiring cookiesRunxi Yu13 days3-2/+13
* {auth,index,ws}.go, schema.sql: Move session cookie into the user tableRunxi Yu13 days4-55/+23
* utils.go: Better logging for wstr()Runxi Yu13 days1-1/+1
* main.js: Disable boxes when fullRunxi Yu13 days1-0/+8
* main.js: Fix the IRC-style message parserRunxi Yu13 days1-0/+4
* index.html, main.js, ws.go: Enhance course selection rejection messageRunxi Yu13 days3-5/+9
* main.js: Handle "Y" (course selection approved)Runxi Yu14 days1-0/+4
* style.css: Remove styling for preformatted textRunxi Yu14 days1-9/+0
* ws.go, config.go, config.scfg.example: Attempt to fix deadlockRunxi Yu13 days3-4/+14
* main.js: Handle number updatesRunxi Yu13 days1-0/+3
* main.js: Relocate a comment and remove a blank lineRunxi Yu13 days1-2/+1
* ws.go: Attempt to propagate messagesRunxi Yu13 days1-1/+11
* ws.go: Implement course choice limitsRunxi Yu13 days1-0/+31
* pre-commit hook: Use && to chain lint.sh and eslint.shRunxi Yu13 days1-2/+1
* main.js: Add stub case "R" for course selection rejectedRunxi Yu13 days1-0/+5
* main.js: Comments should be /* */ rather than //Runxi Yu13 days1-2/+2
* main.js: Remove command "A" (authentication)Runxi Yu13 days1-3/+0
* auth.go: Document why we use a hybrid auth flowRunxi Yu13 days1-1/+12
* ws.go: protocolError is now its own functionRunxi Yu13 days1-28/+15
* index.html: Remind user to report connection closed errorsRunxi Yu13 days1-0/+3
* style.css, index.html: Emit warning when CSS doesn't loadRunxi Yu13 days2-0/+7
* .github, .woodpecker: Remove CI for nowRunxi Yu13 days2-59/+0
* .ws.go: Close websocket on protocol errorsRunxi Yu13 days1-0/+12
* ws.go: Stub for commands "Y" and "N", currently only counting argumentsRunxi Yu13 days1-0/+14
* lint.sh: Disable gocognitRunxi Yu13 days1-1/+1
* style.css: Use YK Pao GreenRunxi Yu13 days1-1/+1
* Add the pre-commit hookRunxi Yu13 days1-0/+4
* README.md: Add CI and IA noticeRunxi Yu13 days1-2/+7
* index.html: Use div instead of main to be semantically appropriateRunxi Yu13 days1-7/+5
* style.css: Do not differentiate between odd and even rowsRunxi Yu13 days1-9/+0
* index.html: Remove erroneous comma in tag attributesRunxi Yu13 days1-1/+1
* index.html, style.css: Use .reading-width instead of sectionRunxi Yu13 days2-3/+3
* index.html: acronym -> abbrRunxi Yu13 days1-4/+1
* index.html, style.css: #table-of-courses { width: 100%; }Runxi Yu13 days2-1/+5
* index.html, style.css: Misc enhancementsRunxi Yu13 days2-19/+24
* eslint.sh: Pass additional arguments to eslint (to use e.g. --fix)Runxi Yu13 days1-1/+1
* main.js: Set checkboxes to indeterminate after selectionRunxi Yu13 days1-1/+3
* index.html: Remove "course.Confirmed" as it was removed from structRunxi Yu13 days1-6/+5
* courses.go: courseT.{Lock->SelectedLock}Runxi Yu13 days1-12/+12
* courses.go: Add a RWMutex to courseTRunxi Yu2024-09-281-8/+15