diff --git a/app/Http/Controllers/AdminController.php b/app/Http/Controllers/AdminController.php index e78b7e65..0ec580df 100644 --- a/app/Http/Controllers/AdminController.php +++ b/app/Http/Controllers/AdminController.php @@ -213,6 +213,18 @@ class AdminController extends Controller Option::set('announcement_'.config('app.locale'), request('announcement')); }); + $meta = Option::form('meta', OptionForm::AUTO_DETECT, function ($form) { + $form->text('meta_keywords')->hint(OptionForm::AUTO_DETECT); + $form->text('meta_description')->hint(OptionForm::AUTO_DETECT); + $form->textarea('meta_extras')->rows(6); + })->handle(); + + return view('admin.options') + ->with('forms', compact('general', 'announ', 'meta')); + } + + public function resource() + { $resources = Option::form('resources', OptionForm::AUTO_DETECT, function ($form) { $form->checkbox('force_ssl')->label()->hint(); $form->checkbox('auto_detect_asset_url')->label()->description(); @@ -223,7 +235,7 @@ class AdminController extends Controller ->hint(OptionForm::AUTO_DETECT) ->description(OptionForm::AUTO_DETECT); }) - ->type('warning') + ->type('primary') ->hint(OptionForm::AUTO_DETECT) ->after(function () { $cdnAddress = request('cdn_address'); @@ -237,14 +249,8 @@ class AdminController extends Controller }) ->handle(); - $meta = Option::form('meta', OptionForm::AUTO_DETECT, function ($form) { - $form->text('meta_keywords')->hint(OptionForm::AUTO_DETECT); - $form->text('meta_description')->hint(OptionForm::AUTO_DETECT); - $form->textarea('meta_extras')->rows(3); - })->handle(); - - return view('admin.options') - ->with('forms', compact('general', 'resources', 'announ', 'meta')); + return view('admin.resource') + ->with('forms', compact('resources')); } public function getUserData(Request $request) diff --git a/config/menu.php b/config/menu.php index a101d263..2d314dc7 100644 --- a/config/menu.php +++ b/config/menu.php @@ -21,10 +21,11 @@ $menu['admin'] = [ ['title' => 'general.player-manage', 'link' => 'admin/players', 'icon' => 'fa-gamepad'], ['title' => 'general.customize', 'link' => 'admin/customize', 'icon' => 'fa-paint-brush'], ['title' => 'general.score-options', 'link' => 'admin/score', 'icon' => 'fa-credit-card'], + ['title' => 'general.options', 'link' => 'admin/options', 'icon' => 'fa-cog'], + ['title' => 'general.res-options', 'link' => 'admin/resource', 'icon' => 'fa-atom'], ['title' => 'general.plugin-market', 'link' => 'admin/plugins/market', 'icon' => 'fa-shopping-bag'], ['title' => 'general.plugin-manage', 'link' => 'admin/plugins/manage', 'icon' => 'fa-plug'], ['title' => 'general.plugin-configs', 'id' => 'plugin-configs', 'icon' => 'fa-cogs', 'children' => []], - ['title' => 'general.options', 'link' => 'admin/options', 'icon' => 'fa-cog'], ['title' => 'general.check-update', 'link' => 'admin/update', 'icon' => 'fa-arrow-up'], ]; diff --git a/resources/lang/en/general.yml b/resources/lang/en/general.yml index 7ce36b96..d869b0f6 100644 --- a/resources/lang/en/general.yml +++ b/resources/lang/en/general.yml @@ -20,6 +20,7 @@ plugin-configs: Plugin Configs customize: Customize options: Options score-options: Score Options +res-options: Resource Options check-update: Check Update download-update: Download Updates close: Close diff --git a/resources/lang/zh_CN/general.yml b/resources/lang/zh_CN/general.yml index 1a917891..fc360893 100644 --- a/resources/lang/zh_CN/general.yml +++ b/resources/lang/zh_CN/general.yml @@ -20,6 +20,7 @@ plugin-configs: 插件配置 customize: 个性化 options: 站点配置 score-options: 积分配置 +res-options: 资源配置 check-update: 检查更新 download-update: 下载更新 close: 关闭 diff --git a/resources/views/admin/options.blade.php b/resources/views/admin/options.blade.php index f1921b67..32c13a98 100644 --- a/resources/views/admin/options.blade.php +++ b/resources/views/admin/options.blade.php @@ -24,8 +24,6 @@
{!! $forms['announ']->render() !!} - {!! $forms['resources']->render() !!} - {!! $forms['meta']->render() !!}
diff --git a/resources/views/admin/resource.blade.php b/resources/views/admin/resource.blade.php new file mode 100644 index 00000000..b4706c6e --- /dev/null +++ b/resources/views/admin/resource.blade.php @@ -0,0 +1,32 @@ +@extends('admin.master') + +@section('title', trans('general.res-options')) + +@section('content') + + +
+ +
+

+ @lang('general.res-options') +

+
+ + +
+ +
+
+ {!! $forms['resources']->render() !!} +
+ +
+
+ +
+ +
+
+ +@endsection diff --git a/routes/web.php b/routes/web.php index 8612ffe7..d0f6a14b 100644 --- a/routes/web.php +++ b/routes/web.php @@ -103,6 +103,7 @@ Route::group(['middleware' => ['auth', 'admin'], 'prefix' => 'admin'], function Route::any('/customize', 'AdminController@customize'); Route::any('/score', 'AdminController@score'); Route::any('/options', 'AdminController@options'); + Route::any('/resource', 'AdminController@resource'); Route::view('/users', 'admin.users'); Route::any('/user-data', 'AdminController@getUserData'); diff --git a/tests/AdminControllerTest.php b/tests/AdminControllerTest.php index 03c54e11..bdb24b8f 100644 --- a/tests/AdminControllerTest.php +++ b/tests/AdminControllerTest.php @@ -138,6 +138,19 @@ class AdminControllerTest extends BrowserKitTestCase $this->assertEquals('announcement', option('announcement')); $this->visit('/admin/options') + ->type('kw', 'meta_keywords') + ->type('desc', 'meta_description') + ->type('', 'meta_extras') + ->press('submit_meta'); + $this->visit('/') + ->see('') + ->see('') + ->see(''); + } + + public function testResource() + { + $this->visit('/admin/resource') ->check('force_ssl') ->uncheck('auto_detect_asset_url') ->check('return_204_when_notfound') @@ -150,20 +163,10 @@ class AdminControllerTest extends BrowserKitTestCase $this->assertEquals('0', option('cache_expire_time')); $this->visit('/')->see('url/app/index.js'); - $this->visit('/admin/options') + $this->visit('/admin/resource') ->type('', 'cdn_address') ->press('submit_resources'); $this->visit('/')->dontSee('url/app/index.js'); - - $this->visit('/admin/options') - ->type('kw', 'meta_keywords') - ->type('desc', 'meta_description') - ->type('', 'meta_extras') - ->press('submit_meta'); - $this->visit('/') - ->see('') - ->see('') - ->see(''); } public function testUsers()