From 956496d8401a90a9d9e8f94be5c4860ff7b292f5 Mon Sep 17 00:00:00 2001 From: Ioannis Dressos <96877388+idressos@users.noreply.github.com> Date: Sun, 22 Oct 2023 14:29:26 +0300 Subject: [PATCH 01/17] Additional configuration env variables WGUI_BRAND_TEXT - The brand text of the web application WGUI_ACCENT_COLOR - The color of the interface sidebar WGUI_LOGO_FILE_PATH - The file path of the website logo WGUI_PAGE_TITLE_PREFIX - The HTML title prefix for all pages --- README.md | 4 ++++ custom/img/logo.png | Bin 0 -> 7793 bytes handler/routes.go | 9 +++++++++ main.go | 16 +++++++++++++++- templates/base.html | 6 +++--- templates/login.html | 6 +++--- util/config.go | 7 +++++++ 7 files changed, 41 insertions(+), 7 deletions(-) create mode 100644 custom/img/logo.png diff --git a/README.md b/README.md index 0da4652..47be9cc 100644 --- a/README.md +++ b/README.md @@ -53,6 +53,10 @@ docker-compose up | `WGUI_TABLE` | The default WireGuard table value settings | `auto` | | `WGUI_CONFIG_FILE_PATH` | The default WireGuard config file path used in global settings | `/etc/wireguard/wg0.conf` | | `WGUI_LOG_LEVEL` | The default log level. Possible values: `DEBUG`, `INFO`, `WARN`, `ERROR`, `OFF` | `INFO` | +| `WGUI_BRAND_TEXT` | The brand text of the web application | `WireGuard UI` | +| `WGUI_ACCENT_COLOR` | The color of the interface sidebar | `#343a40` | +| `WGUI_LOGO_FILE_PATH` | The file path of the website logo | Embedded WireGuard logo | +| `WGUI_PAGE_TITLE_PREFIX` | The HTML title prefix for all pages | N/A | | `WG_CONF_TEMPLATE` | The custom `wg.conf` config file template. Please refer to our [default template](https://github.com/ngoduykhanh/wireguard-ui/blob/master/templates/wg.conf) | N/A | | `EMAIL_FROM_ADDRESS` | The sender email address | N/A | | `EMAIL_FROM_NAME` | The sender name | `WireGuard UI` | diff --git a/custom/img/logo.png b/custom/img/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..54256334d651176dde616b8205df2df3199f1e01 GIT binary patch literal 7793 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 - {{template "title" .}} + {{.pageTitlePrefix}}{{template "title" .}} @@ -84,10 +84,10 @@ -