mirror of
https://github.com/lkddi/nexusphp.git
synced 2026-04-25 04:27:22 +08:00
add setting: custom menu enable or not
This commit is contained in:
@@ -86,9 +86,14 @@ class Test extends Command
|
|||||||
*/
|
*/
|
||||||
public function handle()
|
public function handle()
|
||||||
{
|
{
|
||||||
$menuRep = new MenuRepository();
|
add_filter('ttt', function ($d) {
|
||||||
$r = $menuRep->listItems()->toArray();
|
$d[] = 100;
|
||||||
dd($r);
|
return $d;
|
||||||
|
});
|
||||||
|
$a = [];
|
||||||
|
$a[] = '1';
|
||||||
|
$a = apply_filter('ttt', $a);
|
||||||
|
dd($a);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -41,36 +41,7 @@ class EditSetting extends Page implements Forms\Contracts\HasForms
|
|||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
Forms\Components\Tabs::make('Heading')
|
Forms\Components\Tabs::make('Heading')
|
||||||
->tabs([
|
->tabs($this->getTabs())
|
||||||
Forms\Components\Tabs\Tab::make(__('label.setting.hr.tab_header'))
|
|
||||||
->schema([
|
|
||||||
Forms\Components\Radio::make('hr.mode')->options(HitAndRun::listModes(true))->inline(true)->label(__('label.setting.hr.mode')),
|
|
||||||
Forms\Components\TextInput::make('hr.inspect_time')->helperText(__('label.setting.hr.inspect_time_help'))->label(__('label.setting.hr.inspect_time'))->integer(),
|
|
||||||
Forms\Components\TextInput::make('hr.seed_time_minimum')->helperText(__('label.setting.hr.seed_time_minimum_help'))->label(__('label.setting.hr.seed_time_minimum'))->integer(),
|
|
||||||
Forms\Components\TextInput::make('hr.ignore_when_ratio_reach')->helperText(__('label.setting.hr.ignore_when_ratio_reach_help'))->label(__('label.setting.hr.ignore_when_ratio_reach'))->integer(),
|
|
||||||
Forms\Components\TextInput::make('hr.ban_user_when_counts_reach')->helperText(__('label.setting.hr.ban_user_when_counts_reach_help'))->label(__('label.setting.hr.ban_user_when_counts_reach'))->integer(),
|
|
||||||
])->columns(2),
|
|
||||||
Forms\Components\Tabs\Tab::make(__('label.setting.backup.tab_header'))
|
|
||||||
->schema([
|
|
||||||
Forms\Components\Radio::make('backup.enabled')->options(self::$yesOrNo)->inline(true)->label(__('label.enabled'))->helperText(__('label.setting.backup.enabled_help')),
|
|
||||||
Forms\Components\Radio::make('backup.frequency')->options(['daily' => 'daily', 'hourly' => 'hourly'])->inline(true)->label(__('label.setting.backup.frequency'))->helperText(__('label.setting.backup.frequency_help')),
|
|
||||||
Forms\Components\Select::make('backup.hour')->options(range(0, 23))->label(__('label.setting.backup.hour'))->helperText(__('label.setting.backup.hour_help')),
|
|
||||||
Forms\Components\Select::make('backup.minute')->options(range(0, 59))->label(__('label.setting.backup.minute'))->helperText(__('label.setting.backup.minute_help')),
|
|
||||||
Forms\Components\TextInput::make('backup.google_drive_client_id')->label(__('label.setting.backup.google_drive_client_id')),
|
|
||||||
Forms\Components\TextInput::make('backup.google_drive_client_secret')->label(__('label.setting.backup.google_drive_client_secret')),
|
|
||||||
Forms\Components\TextInput::make('backup.google_drive_refresh_token')->label(__('label.setting.backup.google_drive_refresh_token')),
|
|
||||||
Forms\Components\TextInput::make('backup.google_drive_folder_id')->label(__('label.setting.backup.google_drive_folder_id')),
|
|
||||||
Forms\Components\Radio::make('backup.via_ftp')->options(self::$yesOrNo)->inline(true)->label(__('label.setting.backup.via_ftp'))->helperText(__('label.setting.backup.via_ftp_help')),
|
|
||||||
Forms\Components\Radio::make('backup.via_sftp')->options(self::$yesOrNo)->inline(true)->label(__('label.setting.backup.via_sftp'))->helperText(__('label.setting.backup.via_sftp_help')),
|
|
||||||
])->columns(2),
|
|
||||||
Forms\Components\Tabs\Tab::make(__('label.setting.seed_box.tab_header'))
|
|
||||||
->schema([
|
|
||||||
Forms\Components\Radio::make('seed_box.enabled')->options(self::$yesOrNo)->inline(true)->label(__('label.enabled'))->helperText(__('label.setting.seed_box.enabled_help')),
|
|
||||||
Forms\Components\TextInput::make('seed_box.not_seed_box_max_speed')->label(__('label.setting.seed_box.not_seed_box_max_speed'))->helperText(__('label.setting.seed_box.not_seed_box_max_speed_help'))->integer(),
|
|
||||||
Forms\Components\Radio::make('seed_box.no_promotion')->options(self::$yesOrNo)->inline(true)->label(__('label.setting.seed_box.no_promotion'))->helperText(__('label.setting.seed_box.no_promotion_help')),
|
|
||||||
Forms\Components\TextInput::make('seed_box.max_uploaded')->label(__('label.setting.seed_box.max_uploaded'))->helperText(__('label.setting.seed_box.max_uploaded_help'))->integer(),
|
|
||||||
])->columns(2),
|
|
||||||
])
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -110,4 +81,46 @@ class EditSetting extends Page implements Forms\Contracts\HasForms
|
|||||||
$this->notify('success', __('filament::resources/pages/edit-record.messages.saved'));
|
$this->notify('success', __('filament::resources/pages/edit-record.messages.saved'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private function getTabs(): array
|
||||||
|
{
|
||||||
|
$tabs = [];
|
||||||
|
$tabs[] = Forms\Components\Tabs\Tab::make(__('label.setting.hr.tab_header'))
|
||||||
|
->id('hr')
|
||||||
|
->schema([
|
||||||
|
Forms\Components\Radio::make('hr.mode')->options(HitAndRun::listModes(true))->inline(true)->label(__('label.setting.hr.mode')),
|
||||||
|
Forms\Components\TextInput::make('hr.inspect_time')->helperText(__('label.setting.hr.inspect_time_help'))->label(__('label.setting.hr.inspect_time'))->integer(),
|
||||||
|
Forms\Components\TextInput::make('hr.seed_time_minimum')->helperText(__('label.setting.hr.seed_time_minimum_help'))->label(__('label.setting.hr.seed_time_minimum'))->integer(),
|
||||||
|
Forms\Components\TextInput::make('hr.ignore_when_ratio_reach')->helperText(__('label.setting.hr.ignore_when_ratio_reach_help'))->label(__('label.setting.hr.ignore_when_ratio_reach'))->integer(),
|
||||||
|
Forms\Components\TextInput::make('hr.ban_user_when_counts_reach')->helperText(__('label.setting.hr.ban_user_when_counts_reach_help'))->label(__('label.setting.hr.ban_user_when_counts_reach'))->integer(),
|
||||||
|
])->columns(2);
|
||||||
|
|
||||||
|
$tabs[] = Forms\Components\Tabs\Tab::make(__('label.setting.backup.tab_header'))
|
||||||
|
->id('backup')
|
||||||
|
->schema([
|
||||||
|
Forms\Components\Radio::make('backup.enabled')->options(self::$yesOrNo)->inline(true)->label(__('label.enabled'))->helperText(__('label.setting.backup.enabled_help')),
|
||||||
|
Forms\Components\Radio::make('backup.frequency')->options(['daily' => 'daily', 'hourly' => 'hourly'])->inline(true)->label(__('label.setting.backup.frequency'))->helperText(__('label.setting.backup.frequency_help')),
|
||||||
|
Forms\Components\Select::make('backup.hour')->options(range(0, 23))->label(__('label.setting.backup.hour'))->helperText(__('label.setting.backup.hour_help')),
|
||||||
|
Forms\Components\Select::make('backup.minute')->options(range(0, 59))->label(__('label.setting.backup.minute'))->helperText(__('label.setting.backup.minute_help')),
|
||||||
|
Forms\Components\TextInput::make('backup.google_drive_client_id')->label(__('label.setting.backup.google_drive_client_id')),
|
||||||
|
Forms\Components\TextInput::make('backup.google_drive_client_secret')->label(__('label.setting.backup.google_drive_client_secret')),
|
||||||
|
Forms\Components\TextInput::make('backup.google_drive_refresh_token')->label(__('label.setting.backup.google_drive_refresh_token')),
|
||||||
|
Forms\Components\TextInput::make('backup.google_drive_folder_id')->label(__('label.setting.backup.google_drive_folder_id')),
|
||||||
|
Forms\Components\Radio::make('backup.via_ftp')->options(self::$yesOrNo)->inline(true)->label(__('label.setting.backup.via_ftp'))->helperText(__('label.setting.backup.via_ftp_help')),
|
||||||
|
Forms\Components\Radio::make('backup.via_sftp')->options(self::$yesOrNo)->inline(true)->label(__('label.setting.backup.via_sftp'))->helperText(__('label.setting.backup.via_sftp_help')),
|
||||||
|
])->columns(2);
|
||||||
|
|
||||||
|
$tabs[] = Forms\Components\Tabs\Tab::make(__('label.setting.seed_box.tab_header'))
|
||||||
|
->id('seed_box')
|
||||||
|
->schema([
|
||||||
|
Forms\Components\Radio::make('seed_box.enabled')->options(self::$yesOrNo)->inline(true)->label(__('label.enabled'))->helperText(__('label.setting.seed_box.enabled_help')),
|
||||||
|
Forms\Components\TextInput::make('seed_box.not_seed_box_max_speed')->label(__('label.setting.seed_box.not_seed_box_max_speed'))->helperText(__('label.setting.seed_box.not_seed_box_max_speed_help'))->integer(),
|
||||||
|
Forms\Components\Radio::make('seed_box.no_promotion')->options(self::$yesOrNo)->inline(true)->label(__('label.setting.seed_box.no_promotion'))->helperText(__('label.setting.seed_box.no_promotion_help')),
|
||||||
|
Forms\Components\TextInput::make('seed_box.max_uploaded')->label(__('label.setting.seed_box.max_uploaded'))->helperText(__('label.setting.seed_box.max_uploaded_help'))->integer(),
|
||||||
|
])->columns(2);
|
||||||
|
|
||||||
|
$tabs = apply_filter('nexus_setting_tabs', $tabs);
|
||||||
|
// return $tabs;
|
||||||
|
return $tabs;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -414,4 +414,7 @@ return array (
|
|||||||
'max_uploaded' => 3,
|
'max_uploaded' => 3,
|
||||||
'not_seed_box_max_speed' => 10240,
|
'not_seed_box_max_speed' => 10240,
|
||||||
],
|
],
|
||||||
|
'menu' => [
|
||||||
|
'enabled' => 'no',
|
||||||
|
],
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ return [
|
|||||||
'upload_speed' => 'Upload speed',
|
'upload_speed' => 'Upload speed',
|
||||||
'download_speed' => 'Download speed',
|
'download_speed' => 'Download speed',
|
||||||
'isp' => 'ISP',
|
'isp' => 'ISP',
|
||||||
'menu' => 'Menu',
|
'menu' => 'Custom menu',
|
||||||
],
|
],
|
||||||
'resources' => [
|
'resources' => [
|
||||||
'agent_allow' => [
|
'agent_allow' => [
|
||||||
|
|||||||
@@ -195,6 +195,10 @@ return [
|
|||||||
'ip_help' => 'Begin IP/End IP, IP(Block) Choose one',
|
'ip_help' => 'Begin IP/End IP, IP(Block) Choose one',
|
||||||
'status' => 'Status',
|
'status' => 'Status',
|
||||||
],
|
],
|
||||||
|
'menu' => [
|
||||||
|
'label' => 'Custom menu',
|
||||||
|
'enable_help' => 'Whether to enable custom menu',
|
||||||
|
],
|
||||||
'menu_item' => [
|
'menu_item' => [
|
||||||
'label' => 'Menu items',
|
'label' => 'Menu items',
|
||||||
'url' => 'Link',
|
'url' => 'Link',
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ return [
|
|||||||
'upload_speed' => '上行带宽',
|
'upload_speed' => '上行带宽',
|
||||||
'download_speed' => '下行带宽',
|
'download_speed' => '下行带宽',
|
||||||
'isp' => 'ISP',
|
'isp' => 'ISP',
|
||||||
'menu' => '菜单',
|
'menu' => '自定义菜单',
|
||||||
],
|
],
|
||||||
'resources' => [
|
'resources' => [
|
||||||
'agent_allow' => [
|
'agent_allow' => [
|
||||||
|
|||||||
@@ -198,6 +198,10 @@ return [
|
|||||||
'ip_help' => '起始 IP/结束 IP、IP(段) 二选一',
|
'ip_help' => '起始 IP/结束 IP、IP(段) 二选一',
|
||||||
'status' => '状态',
|
'status' => '状态',
|
||||||
],
|
],
|
||||||
|
'menu' => [
|
||||||
|
'label' => '自定义菜单',
|
||||||
|
'enable_help' => '是否启用自定义菜单',
|
||||||
|
],
|
||||||
'menu_item' => [
|
'menu_item' => [
|
||||||
'label' => '菜单项',
|
'label' => '菜单项',
|
||||||
'url' => '链接',
|
'url' => '链接',
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ return [
|
|||||||
'upload_speed' => '上行帶寬',
|
'upload_speed' => '上行帶寬',
|
||||||
'download_speed' => '下行帶寬',
|
'download_speed' => '下行帶寬',
|
||||||
'isp' => 'ISP',
|
'isp' => 'ISP',
|
||||||
'menu' => '菜單',
|
'menu' => '自定義菜單',
|
||||||
],
|
],
|
||||||
'resources' => [
|
'resources' => [
|
||||||
'agent_allow' => [
|
'agent_allow' => [
|
||||||
|
|||||||
@@ -195,6 +195,10 @@ return [
|
|||||||
'ip_help' => '起始 IP/結束 IP、IP(段) 二選一',
|
'ip_help' => '起始 IP/結束 IP、IP(段) 二選一',
|
||||||
'status' => '狀態',
|
'status' => '狀態',
|
||||||
],
|
],
|
||||||
|
'menu' => [
|
||||||
|
'label' => '自定義菜單',
|
||||||
|
'enable_help' => '是否啟用自定義菜單',
|
||||||
|
],
|
||||||
'menu_item' => [
|
'menu_item' => [
|
||||||
'label' => '菜單項',
|
'label' => '菜單項',
|
||||||
'url' => '鏈接',
|
'url' => '鏈接',
|
||||||
|
|||||||
Reference in New Issue
Block a user