no message

This commit is contained in:
kuaifan 2025-05-12 13:42:53 +08:00
parent 12265699b3
commit 0d7cc6a386
2 changed files with 22 additions and 4 deletions

View File

@ -2,6 +2,7 @@
namespace App\Http\Controllers\Api; namespace App\Http\Controllers\Api;
use App\Models\User;
use App\Module\Apps\Apps; use App\Module\Apps\Apps;
use App\Module\Base; use App\Module\Base;
use Request; use Request;
@ -26,6 +27,8 @@ class AppsController extends AbstractController
*/ */
public function list() public function list()
{ {
User::auth('admin');
//
return Apps::appList(); return Apps::appList();
} }
@ -47,6 +50,8 @@ class AppsController extends AbstractController
*/ */
public function info() public function info()
{ {
User::auth('admin');
//
$appName = Request::input('app_name'); $appName = Request::input('app_name');
if (empty($appName)) { if (empty($appName)) {
return Base::retError('应用名称不能为空'); return Base::retError('应用名称不能为空');
@ -75,6 +80,8 @@ class AppsController extends AbstractController
*/ */
public function install() public function install()
{ {
User::auth('admin');
//
$appName = Request::input('app_name'); $appName = Request::input('app_name');
$version = Request::input('version', 'latest'); $version = Request::input('version', 'latest');
$params = Request::input('params', []); $params = Request::input('params', []);
@ -152,6 +159,8 @@ class AppsController extends AbstractController
*/ */
public function uninstall() public function uninstall()
{ {
User::auth('admin');
//
$appName = Request::input('app_name'); $appName = Request::input('app_name');
if (empty($appName)) { if (empty($appName)) {
@ -181,6 +190,8 @@ class AppsController extends AbstractController
*/ */
public function logs() public function logs()
{ {
User::auth('admin');
//
$appName = Request::input('app_name'); $appName = Request::input('app_name');
$lines = intval(Request::input('lines', 50)); $lines = intval(Request::input('lines', 50));

View File

@ -245,6 +245,8 @@ class Apps
// 处理字段 // 处理字段
if (isset($configData['fields']) && is_array($configData['fields'])) { if (isset($configData['fields']) && is_array($configData['fields'])) {
$appConfig = self::getAppConfig($appName);
$fields = []; $fields = [];
foreach ($configData['fields'] as $field) { foreach ($configData['fields'] as $field) {
// 检查必需的name字段及其格式 // 检查必需的name字段及其格式
@ -261,7 +263,7 @@ class Apps
$normalizedField = [ $normalizedField = [
'name' => $field['name'], 'name' => $field['name'],
'type' => $field['type'] ?? 'text', 'type' => $field['type'] ?? 'text',
'default' => $field['default'] ?? '', 'default' => $appConfig['params'][$field['name']] ?? $field['default'] ?? '',
'label' => self::getMultiLanguageField($field['label'] ?? ''), 'label' => self::getMultiLanguageField($field['label'] ?? ''),
'placeholder' => self::getMultiLanguageField($field['placeholder'] ?? ''), 'placeholder' => self::getMultiLanguageField($field['placeholder'] ?? ''),
'required' => $field['required'] ?? false, 'required' => $field['required'] ?? false,
@ -514,7 +516,7 @@ class Apps
*/ */
private static function getAppDocument(string $appName): string { private static function getAppDocument(string $appName): string {
$baseDir = base_path('docker/appstore/apps/' . $appName); $baseDir = base_path('docker/appstore/apps/' . $appName);
$lang = Base::headerOrInput('language'); $lang = strtoupper(Base::headerOrInput('language'));
// 使用 glob 遍历目录 // 使用 glob 遍历目录
$files = glob($baseDir . '/*'); $files = glob($baseDir . '/*');
@ -522,9 +524,14 @@ class Apps
// 正则模式,包括语言特定和通用的 README 文件 // 正则模式,包括语言特定和通用的 README 文件
$readmePatterns = [ $readmePatterns = [
"/^README(_|-|\.)?{$lang}\.md$/i", // README_zh.md, README-zh.md, README.zh.md "/^README(_|-|\.)?{$lang}\.md$/i", // README_zh.md, README-zh.md, README.zh.md
"/^README\.md$/i", // README.md
"/^readme\.md$/i", // readme.md
]; ];
if ($lang == 'zh') {
$readmePatterns[] = "/^README(_|-|\.)?CN\.md$/i"; // README_CN.md, README-cn.md, README.cn.md
}
if ($lang == 'zh-CHT') {
$readmePatterns[] = "/^README(_|-|\.)?TW\.md$/i"; // README_TW.md, README-tw.md, README.tw.md
}
$readmePatterns[] = "/^README\.md$/i"; // README.md
foreach ($files as $filePath) { foreach ($files as $filePath) {
$fileName = basename($filePath); $fileName = basename($filePath);