AnonymousOverflow/public
httpjamesm 4c971f3121
Add theme support using environment variable (#145)
* Add theme support using environment variable

* Propagate theme variable to template in options.go

Propagate the `theme` variable from the environment to the template in `src/routes/options.go`

* Retrieve the `theme` variable from the environment using `os.Getenv("THEME")`
* Set the `theme` variable in the `gin.H` map when rendering the `home.html` template


---

For more details, open the [Copilot Workspace session](https://copilot-workspace.githubnext.com/httpjamesm/AnonymousOverflow/pull/145?shareId=6397c9b4-9450-425c-bbbe-019425965d2b).

* Move all theme environment variable logic to a utils function

Move theme environment variable logic to a utils function and update routes to use it.

* Add `GetThemeFromEnv` function in `src/utils/theme.go` to derive the theme from environment variables and default to "auto" if not set.
* Update `src/routes/home.go` to import and use `GetThemeFromEnv` in the `GetHome` function.
* Update `src/routes/options.go` to import and use `GetThemeFromEnv` in the `ChangeOptions` function.
* Update `src/routes/question.go` to import and use `GetThemeFromEnv` in the `ViewQuestion` function.


---

For more details, open the [Copilot Workspace session](https://copilot-workspace.githubnext.com/httpjamesm/AnonymousOverflow/pull/145?shareId=a0dab6f3-027c-4f6e-85fe-60e7675d0e70).

* fix: imports removed by copilot

* fix: override theme in posthome

* style: reduced repetition in themes with common vars
2024-07-25 10:50:06 -07:00
..
icons feat: permalink generator 2023-02-14 20:12:49 -05:00
katex Add client-side latex rendering (#61) 2023-09-24 00:59:41 -04:00
codecircles.webp perf: compress codecircles into webp (#59) 2023-09-24 00:59:54 -04:00
comments.css refactor: move comments styles to another file 2022-12-30 18:18:13 -05:00
globals.css Add theme support using environment variable (#145) 2024-07-25 10:50:06 -07:00
home.css Set maximum width to 40rem across screen sizes (#111) 2024-04-25 01:09:43 -04:00
question.css Wrap Answers heading on narrow screens (#112) 2024-04-25 01:11:25 -04:00
question.js Add client-side latex rendering (#61) 2023-09-24 00:59:41 -04:00
syntax.css feat: highlight code blocks within answers 2022-12-28 18:51:14 -05:00