mirror of
https://github.com/kuaifan/dootask.git
synced 2025-12-15 05:12:49 +00:00
no message
This commit is contained in:
parent
12265699b3
commit
0d7cc6a386
@ -2,6 +2,7 @@
|
||||
|
||||
namespace App\Http\Controllers\Api;
|
||||
|
||||
use App\Models\User;
|
||||
use App\Module\Apps\Apps;
|
||||
use App\Module\Base;
|
||||
use Request;
|
||||
@ -26,6 +27,8 @@ class AppsController extends AbstractController
|
||||
*/
|
||||
public function list()
|
||||
{
|
||||
User::auth('admin');
|
||||
//
|
||||
return Apps::appList();
|
||||
}
|
||||
|
||||
@ -47,6 +50,8 @@ class AppsController extends AbstractController
|
||||
*/
|
||||
public function info()
|
||||
{
|
||||
User::auth('admin');
|
||||
//
|
||||
$appName = Request::input('app_name');
|
||||
if (empty($appName)) {
|
||||
return Base::retError('应用名称不能为空');
|
||||
@ -75,6 +80,8 @@ class AppsController extends AbstractController
|
||||
*/
|
||||
public function install()
|
||||
{
|
||||
User::auth('admin');
|
||||
//
|
||||
$appName = Request::input('app_name');
|
||||
$version = Request::input('version', 'latest');
|
||||
$params = Request::input('params', []);
|
||||
@ -152,6 +159,8 @@ class AppsController extends AbstractController
|
||||
*/
|
||||
public function uninstall()
|
||||
{
|
||||
User::auth('admin');
|
||||
//
|
||||
$appName = Request::input('app_name');
|
||||
|
||||
if (empty($appName)) {
|
||||
@ -181,6 +190,8 @@ class AppsController extends AbstractController
|
||||
*/
|
||||
public function logs()
|
||||
{
|
||||
User::auth('admin');
|
||||
//
|
||||
$appName = Request::input('app_name');
|
||||
$lines = intval(Request::input('lines', 50));
|
||||
|
||||
|
||||
@ -245,6 +245,8 @@ class Apps
|
||||
|
||||
// 处理字段
|
||||
if (isset($configData['fields']) && is_array($configData['fields'])) {
|
||||
$appConfig = self::getAppConfig($appName);
|
||||
|
||||
$fields = [];
|
||||
foreach ($configData['fields'] as $field) {
|
||||
// 检查必需的name字段及其格式
|
||||
@ -261,7 +263,7 @@ class Apps
|
||||
$normalizedField = [
|
||||
'name' => $field['name'],
|
||||
'type' => $field['type'] ?? 'text',
|
||||
'default' => $field['default'] ?? '',
|
||||
'default' => $appConfig['params'][$field['name']] ?? $field['default'] ?? '',
|
||||
'label' => self::getMultiLanguageField($field['label'] ?? ''),
|
||||
'placeholder' => self::getMultiLanguageField($field['placeholder'] ?? ''),
|
||||
'required' => $field['required'] ?? false,
|
||||
@ -514,7 +516,7 @@ class Apps
|
||||
*/
|
||||
private static function getAppDocument(string $appName): string {
|
||||
$baseDir = base_path('docker/appstore/apps/' . $appName);
|
||||
$lang = Base::headerOrInput('language');
|
||||
$lang = strtoupper(Base::headerOrInput('language'));
|
||||
|
||||
// 使用 glob 遍历目录
|
||||
$files = glob($baseDir . '/*');
|
||||
@ -522,9 +524,14 @@ class Apps
|
||||
// 正则模式,包括语言特定和通用的 README 文件
|
||||
$readmePatterns = [
|
||||
"/^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) {
|
||||
$fileName = basename($filePath);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user