mirror of
https://github.com/kuaifan/dootask.git
synced 2025-12-18 15:22:50 +00:00
no message
This commit is contained in:
parent
12265699b3
commit
0d7cc6a386
@ -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));
|
||||||
|
|
||||||
|
|||||||
@ -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);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user