diff --git a/app/Http/Routes/web.php b/app/Http/Routes/web.php
index cecc1a6c..42a9da53 100644
--- a/app/Http/Routes/web.php
+++ b/app/Http/Routes/web.php
@@ -98,7 +98,8 @@ Route::group(['middleware' => 'admin', 'prefix' => 'admin'], function ()
{
Route::get('/', 'AdminController@index');
- Route::any('/plugins', 'AdminController@plugins');
+ Route::any('/plugins/manage', 'AdminController@plugins');
+
Route::any('/customize', 'AdminController@customize');
Route::any('/score', 'AdminController@score');
Route::any('/options', 'AdminController@options');
diff --git a/app/helpers.php b/app/helpers.php
index 42fc9f28..62303a73 100644
--- a/app/helpers.php
+++ b/app/helpers.php
@@ -158,14 +158,28 @@ if (! function_exists('bs_menu')) {
throw new InvalidArgumentException;
}
- $request = App::make('request');
+ echo bs_menu_render($menu[$type]);
+ }
- foreach ($menu[$type] as $key => $value) {
- echo ($request->is($value['link'])) ? '
' : '';
+ function bs_menu_render($data)
+ {
+ $content = "";
- echo ' '.trans($value['title']).'';
+ foreach ($data as $key => $value) {
+ $content .= (app('request')->is(@$value['link'])) ? '' : '';
+
+ if (isset($value['children'])) {
+ $content .= ' '.trans($value['title']).'';
+ // recurse
+ $content .= '';
+ } else {
+ $content .= ' '.trans($value['title']).'';
+ }
+
+ $content .= '';
}
+ return $content;
}
}
diff --git a/config/menu.php b/config/menu.php
index db36623f..f0985174 100644
--- a/config/menu.php
+++ b/config/menu.php
@@ -12,18 +12,21 @@ $menu['user'] = array(
['title' => 'general.dashboard', 'link' => 'user', 'icon' => 'fa-dashboard'],
['title' => 'general.my-closet', 'link' => 'user/closet', 'icon' => 'fa-star'],
['title' => 'general.player-manage', 'link' => 'user/player', 'icon' => 'fa-users'],
- ['title' => 'general.profile', 'link' => 'user/profile', 'icon' => 'fa-user']
+ ['title' => 'general.profile', 'link' => 'user/profile', 'icon' => 'fa-user'],
);
$menu['admin'] = array(
['title' => 'general.dashboard', 'link' => 'admin', 'icon' => 'fa-dashboard'],
['title' => 'general.user-manage', 'link' => 'admin/users', 'icon' => 'fa-users'],
['title' => 'general.player-manage', 'link' => 'admin/players', 'icon' => 'fa-gamepad'],
- ['title' => 'general.plugin-manage', 'link' => 'admin/plugins', 'icon' => 'fa-plug'],
+ ['title' => 'general.plugin-manage', 'icon' => 'fa-plug', 'children' => [
+ ['title' => 'general.plugin-market', 'link' => 'admin/plugins/market', 'icon' => 'fa-shopping-bag'],
+ ['title' => 'general.plugin-installed', 'link' => 'admin/plugins/manage', 'icon' => 'fa-download'],
+ ]],
['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.check-update', 'link' => 'admin/update', 'icon' => 'fa-arrow-up']
+ ['title' => 'general.check-update', 'link' => 'admin/update', 'icon' => 'fa-arrow-up'],
);
return $menu;
diff --git a/resources/lang/en/general.yml b/resources/lang/en/general.yml
index e5901729..72db3cc5 100644
--- a/resources/lang/en/general.yml
+++ b/resources/lang/en/general.yml
@@ -16,6 +16,8 @@ my-closet: Closet
player-manage: Player Manage
user-manage: User Manage
plugin-manage: Plugin Manage
+plugin-market: Plugin Market
+plugin-installed: Installed
customize: Customize
options: Options
import-v2: Import Data
diff --git a/resources/lang/zh-CN/general.yml b/resources/lang/zh-CN/general.yml
index 871b0925..36b615fc 100644
--- a/resources/lang/zh-CN/general.yml
+++ b/resources/lang/zh-CN/general.yml
@@ -16,6 +16,8 @@ my-closet: 我的衣柜
player-manage: 角色管理
user-manage: 用户管理
plugin-manage: 插件管理
+plugin-market: 插件市场
+plugin-installed: 已安装
customize: 个性化
options: 站点配置
import-v2: 导入数据