feat: support theme update and various improvements

- Add support for updating themes if a newer version is uploaded
- Hide config button for plugins without configuration items
- Auto refresh theme cache after panel update
- Fix issue where user used traffic cannot be set as a decimal
- Fix subscription issue for shadowrocket in v2board theme
This commit is contained in:
xboard
2025-07-15 01:26:14 +08:00
parent f6cf6706c7
commit 706ba5a7a9
7 changed files with 42 additions and 30 deletions
-3
View File
@@ -30,7 +30,6 @@ Route::get('/', function (Request $request) {
$themeService = new ThemeService();
try {
// 检查主题是否存在,不存在则尝试切换到默认主题
if (!$themeService->exists($theme)) {
if ($theme !== 'Xboard') {
Log::warning('Theme not found, switching to default theme', ['theme' => $theme]);
@@ -40,12 +39,10 @@ Route::get('/', function (Request $request) {
$themeService->switch($theme);
}
// 检查主题视图文件是否存在
if (!$themeService->getThemeViewPath($theme)) {
throw new Exception('主题视图文件不存在');
}
// 检查主题是否已复制到public目录
$publicThemePath = public_path('theme/' . $theme);
if (!File::exists($publicThemePath)) {
$themePath = $themeService->getThemePath($theme);