From 05cbeacbdb2aea22fe35348f514eb13e25eb2288 Mon Sep 17 00:00:00 2001
From: hamster1963 <1410514192@qq.com>
Date: Sun, 13 Oct 2024 16:20:39 +0800
Subject: [PATCH 1/2] feat: add custom header env
---
.env.example | 5 ++++-
app/[locale]/(main)/header.tsx | 15 +++++++++++----
docker/.env.example | 5 ++++-
3 files changed, 19 insertions(+), 6 deletions(-)
diff --git a/.env.example b/.env.example
index cf625da..b46311b 100644
--- a/.env.example
+++ b/.env.example
@@ -7,4 +7,7 @@ NEXT_PUBLIC_ShowFlag=true
NEXT_PUBLIC_DisableCartoon=false
NEXT_PUBLIC_ShowTag=true
NEXT_PUBLIC_ShowNetTransfer=false
-NEXT_PUBLIC_ForceUseSvgFlag=false
\ No newline at end of file
+NEXT_PUBLIC_ForceUseSvgFlag=false
+NEXT_PUBLIC_CustomLogo=https://nezha-cf.buycoffee.top/apple-touch-icon.png
+NEXT_PUBLIC_CustomTitle=NezhaDash
+NEXT_PUBLIC_CustomDescription=NezhaDash is a dashboard for Nezha.
diff --git a/app/[locale]/(main)/header.tsx b/app/[locale]/(main)/header.tsx
index ba182b4..15b3e82 100644
--- a/app/[locale]/(main)/header.tsx
+++ b/app/[locale]/(main)/header.tsx
@@ -3,6 +3,7 @@
import { LanguageSwitcher } from "@/components/LanguageSwitcher";
import { ModeToggle } from "@/components/ThemeSwitcher";
import { Separator } from "@/components/ui/separator";
+import getEnv from "@/lib/env-entry";
import { DateTime } from "luxon";
import { useTranslations } from "next-intl";
import Image from "next/image";
@@ -10,6 +11,10 @@ import React, { useEffect, useRef, useState } from "react";
function Header() {
const t = useTranslations("Header");
+ const customLogo = getEnv("NEXT_PUBLIC_CustomLogo");
+ const customTitle = getEnv("NEXT_PUBLIC_CustomTitle");
+ const customDescription = getEnv("NEXT_PUBLIC_CustomDescription");
+
return (
@@ -20,17 +25,19 @@ function Header() {
height={40}
unoptimized
alt="apple-touch-icon"
- src={"/apple-touch-icon.png"}
- className="relative !m-0 h-6 w-6 border-2 border-white object-cover object-top !p-0 transition duration-500 group-hover:z-30 group-hover:scale-105"
+ src={customLogo ? customLogo : "/apple-touch-icon.png"}
+ className="relative !m-0 border-2 border-transparent h-6 w-6 object-cover object-top !p-0"
/>
- NezhaDash
+ {customTitle ? customTitle : "NezhaDash"}
- {t("p_1079-1199_Simpleandbeautifuldashbo")}
+ {customDescription
+ ? customDescription
+ : t("p_1079-1199_Simpleandbeautifuldashbo")}
diff --git a/docker/.env.example b/docker/.env.example
index cf625da..358cedf 100644
--- a/docker/.env.example
+++ b/docker/.env.example
@@ -7,4 +7,7 @@ NEXT_PUBLIC_ShowFlag=true
NEXT_PUBLIC_DisableCartoon=false
NEXT_PUBLIC_ShowTag=true
NEXT_PUBLIC_ShowNetTransfer=false
-NEXT_PUBLIC_ForceUseSvgFlag=false
\ No newline at end of file
+NEXT_PUBLIC_ForceUseSvgFlag=false
+NEXT_PUBLIC_CustomLogo=https://nezha-cf.buycoffee.top/apple-touch-icon.png
+NEXT_PUBLIC_CustomTitle=NezhaDash
+NEXT_PUBLIC_CustomDescription=NezhaDash is a dashboard for Nezha.
\ No newline at end of file
From ca8a1b4a73a11bd75e1e5e16a1414d72f0b10df3 Mon Sep 17 00:00:00 2001
From: hamster1963 <1410514192@qq.com>
Date: Sun, 13 Oct 2024 16:24:58 +0800
Subject: [PATCH 2/2] doc: add env readme
---
README.md | 27 +++++++++++++++------------
1 file changed, 15 insertions(+), 12 deletions(-)
diff --git a/README.md b/README.md
index ac83666..f5402eb 100644
--- a/README.md
+++ b/README.md
@@ -12,18 +12,21 @@
#### 环境变量
-| 变量名 | 含义 | 示例 |
-| ------------------------------ | -------------------------------- | -------------------------------- |
-| NezhaBaseUrl | nezha 面板地址 | http://120.x.x.x:8008 |
-| NezhaAuth | nezha 面板 API Token | 5hAY3QX6Nl9B3Uxxxx26KMvOMyXS1Udi |
-| DefaultLocale | 面板默认显示语言(代码参考下表) | **默认**:en |
-| ForceShowAllServers | 是否强制显示所有服务器 | **默认**:false |
-| NEXT_PUBLIC_NezhaFetchInterval | 获取数据间隔(毫秒) | **默认**:2000 |
-| NEXT_PUBLIC_ShowFlag | 是否显示旗帜 | **默认**:false |
-| NEXT_PUBLIC_DisableCartoon | 是否禁用卡通人物 | **默认**:false |
-| NEXT_PUBLIC_ShowTag | 是否显示标签 | **默认**:false |
-| NEXT_PUBLIC_ShowNetTransfer | 是否显示流量信息 | **默认**:false |
-| NEXT_PUBLIC_ForceUseSvgFlag | 是否强制使用SVG旗帜 | **默认**:false |
+| 变量名 | 含义 | 示例 |
+| ------------------------------ | -------------------------------- | ------------------------------------------------------------- |
+| NezhaBaseUrl | nezha 面板地址 | http://120.x.x.x:8008 |
+| NezhaAuth | nezha 面板 API Token | 5hAY3QX6Nl9B3Uxxxx26KMvOMyXS1Udi |
+| DefaultLocale | 面板默认显示语言(代码参考下表) | **默认**:en |
+| ForceShowAllServers | 是否强制显示所有服务器 | **默认**:false |
+| NEXT_PUBLIC_NezhaFetchInterval | 获取数据间隔(毫秒) | **默认**:2000 |
+| NEXT_PUBLIC_ShowFlag | 是否显示旗帜 | **默认**:false |
+| NEXT_PUBLIC_DisableCartoon | 是否禁用卡通人物 | **默认**:false |
+| NEXT_PUBLIC_ShowTag | 是否显示标签 | **默认**:false |
+| NEXT_PUBLIC_ShowNetTransfer | 是否显示流量信息 | **默认**:false |
+| NEXT_PUBLIC_ForceUseSvgFlag | 是否强制使用SVG旗帜 | **默认**:false |
+| NEXT_PUBLIC_CustomLogo | 自定义Logo | **示例**:https://nezha-cf.buycoffee.top/apple-touch-icon.png |
+| NEXT_PUBLIC_CustomTitle | 自定义标题 | |
+| NEXT_PUBLIC_CustomDescription | 自定义描述(无多语言支持) | |
#### 多语言支持