aboutsummaryrefslogtreecommitdiff
Commit message (Expand)AuthorAgeFilesLines
* Use groups in id_token instead of querying userinfoRunxi Yu33 hours4-161/+69
* Update admin_handbookRunxi Yu36 hours1-5/+12
* ws*.go: Error handilng updateRunxi Yu2 days9-102/+40
* Remove minifier targetRunxi Yu2 days2-8/+5
* Use pandoc/markdown for production documentationRunxi Yu3 days4-70/+50
* student.js: Less verbose handling of ERunxi Yu4 days1-1/+1
* *.go: Catch panics during requestsRunxi Yu4 days5-2/+42
* *.go: Switch to log/slog for non-fatal loggingRunxi Yu4 days5-41/+49
* student.js, eslint: Add semicolonsRunxi Yu4 days2-146/+146
* student.js: Note how horrible it isRunxi Yu4 days1-0/+4
* latexify-source.sh: Make a function for \chapterRunxi Yu4 days1-20/+24
* latexify-source.sh: Don't do the relative path stuffRunxi Yu4 days1-22/+14
* ws_connection.go: Remove TODO that should be resolved elsewhereRunxi Yu4 days1-10/+0
* style.css: No sticky headerRunxi Yu4 days1-9/+1
* endpoint_*.go: s/http.StatusInternalServerError/-1/Runxi Yu4 days3-28/+23
* .inc -> .texincRunxi Yu4 days10-11/+11
* sethandler.go: Log errors from handlersRunxi Yu4 days1-1/+8
* *.go: Return and report errors from HTTP handlersRunxi Yu4 days10-424/+249
* .gitattributesRunxi Yu5 days3-2/+3
* {student,staff}.html: Fix column widthsv0.1.10Runxi Yu5 days2-2/+20
* student.js: Display confirmed table when HI is after YCRunxi Yu5 days1-0/+35
* Allow exporting student list with confirmed attributeRunxi Yu5 days4-4/+147
* student.js: ReformatRunxi Yu5 days1-28/+29
* endpoint_export.go: Strip leading s from student IDRunxi Yu5 days1-1/+1
* go.mod, go.sum: Remove UUIDRunxi Yu5 days2-3/+0
* Add course metadata course_id and section_id for PowerSchoolRunxi Yu5 days5-21/+44
* Add confirmed courses table to confirmed stateRunxi Yu5 days2-2/+36
* wsmsg_{un,}confirm.go: Check course selections open stateRunxi Yu5 days2-0/+24
* Add confirmed dialogue on the client side (table not added yet)Runxi Yu5 days7-64/+213
* {wsmsg_hello,confirm}.go: Send confirmed stateRunxi Yu5 days3-3/+51
* cancelled -> canceledRunxi Yu5 days7-13/+16
* Show required course types on frontend tooRunxi Yu5 days3-4/+74
* Backend confirm course type minimum checkRunxi Yu5 days10-48/+295
* Display allowed groups/types on csv error; course{Group,Type}T -> stringRunxi Yu5 days8-30/+37
* iadocs: Use Inconsolatazi4Runxi Yu5 days2-2/+2
* iadocs: Include iadocs's own codeRunxi Yu5 days3-1/+7
* iadocs: AGPL \texttt -> \urlRunxi Yu5 days1-2/+2
* iadocs: Appendix updateRunxi Yu5 days3-11/+37
* latexify-source.sh: CSS is of language CSS, not JavaScriptRunxi Yu5 days1-1/+1
* endpoint_index.go: Fix bug of not returning after rendering login pageRunxi Yu5 days1-1/+1
* Remove benchmarking utilityRunxi Yu5 days4-134/+0
* Reduce code repetition and remove fake authenticationRunxi Yu5 days9-349/+157
* *.go: Use wrapError() for brevityRunxi Yu5 days13-91/+53
* Don't pass session ID to WebSocket routinesRunxi Yu5 days5-13/+1
* drop.sql: DROP TABLE misc;Runxi Yu5 days1-0/+1
* Rename tmpl -> templatesRunxi Yu5 days8-10/+7
* *.go: Restructure backend filesRunxi Yu5 days14-143/+161
* Combine "Enrichment" and "Culture" into "Non-sport"Runxi Yu5 days2-12/+10
* courses.go: courseTypes should be a map[courseTypeT]struct{}Runxi Yu5 days1-4/+4
* Separate wsm.go into a file for each functionRunxi Yu5 days3-155/+215