From 0b0d659c5e003fe5acb7dc2fa44b70a3ef5853a6 Mon Sep 17 00:00:00 2001 From: molong Date: Thu, 12 Sep 2019 23:57:10 +0800 Subject: [PATCH] =?UTF-8?q?tp6=E6=9B=B4=E6=96=B0=E5=88=B0=E6=9C=80?= =?UTF-8?q?=E6=96=B0=E7=89=88=E6=9C=AC=20=E7=9B=AE=E5=BD=95=E7=BB=93?= =?UTF-8?q?=E6=9E=84=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controller/Admin.php | 12 +- app/controller/Index.php | 2 +- app/controller/admin/Group.php | 13 +- app/controller/admin/Index.php | 1 + app/controller/admin/Menu.php | 35 +++-- app/{ => http}/middleware/Admin.php | 13 +- app/{ => http}/middleware/AdminAuth.php | 2 +- app/{ => http}/middleware/Front.php | 14 +- app/{ => http}/middleware/Validate.php | 4 +- app/{ => http}/validate/admin/Index.php | 2 +- config/middleware.php | 8 + config/session.php | 8 +- config/{template.php => view.php} | 22 +-- public/favicon.ico | Bin 1150 -> 9662 bytes public/static/admin/js/app.js | 14 ++ public/static/admin/js/index.js | 8 +- public/static/common/js/core.js | 26 +++- .../plugins/layer/theme/moon/default.png | Bin 7563 -> 0 bytes .../static/plugins/layer/theme/moon/style.css | 138 ----------------- view/README.md | 1 - view/admin/ad/index.html | 129 ++++++++-------- view/admin/addons/hooks.html | 126 +++++++++------- view/admin/addons/index.html | 142 +++++++++--------- view/admin/base.html | 7 +- view/admin/form/index.html | 128 +++++++++------- view/admin/group/access.html | 136 +++++++++-------- view/admin/group/index.html | 130 ++++++++-------- view/admin/index/index.html | 6 +- view/admin/link/index.html | 108 ++++++++----- view/admin/menu/edit.html | 44 +++--- view/admin/menu/index.html | 12 +- 31 files changed, 656 insertions(+), 635 deletions(-) rename app/{ => http}/middleware/Admin.php (83%) rename app/{ => http}/middleware/AdminAuth.php (98%) rename app/{ => http}/middleware/Front.php (79%) rename app/{ => http}/middleware/Validate.php (94%) rename app/{ => http}/validate/admin/Index.php (95%) create mode 100644 config/middleware.php rename config/{template.php => view.php} (63%) delete mode 100644 public/static/plugins/layer/theme/moon/default.png delete mode 100644 public/static/plugins/layer/theme/moon/style.css delete mode 100644 view/README.md diff --git a/app/controller/Admin.php b/app/controller/Admin.php index 668ed168..5ad25a62 100644 --- a/app/controller/Admin.php +++ b/app/controller/Admin.php @@ -17,9 +17,9 @@ use think\facade\Cache; class Admin extends BaseController { protected $middleware = [ - '\app\middleware\Validate', - '\app\middleware\AdminAuth' => ['except' => ['login']], - '\app\middleware\Admin' + '\app\http\middleware\Validate', + '\app\http\middleware\AdminAuth' => ['except' => ['login']], + '\app\http\middleware\Admin' ]; protected $data = ['data' => [], 'code' => 0, 'msg' => '']; @@ -33,17 +33,17 @@ class Admin extends BaseController { $this->data['config'] = $config; } - protected function success($msg, $url){ + protected function success($msg, $url = ''){ $this->data['code'] = 0; $this->data['msg'] = $msg; $this->data['url'] = $url->__toString(); return $this->data; } - protected function error($msg, $url){ + protected function error($msg, $url = ''){ $this->data['code'] = 1; $this->data['msg'] = $msg; - $this->data['url'] = $url->__toString(); + $this->data['url'] = $url ? $url->__toString() : ''; return $this->data; } } diff --git a/app/controller/Index.php b/app/controller/Index.php index c1ba1d02..b21fd7a1 100644 --- a/app/controller/Index.php +++ b/app/controller/Index.php @@ -5,7 +5,7 @@ use app\BaseController; class Index extends BaseController { - protected $middleware = ['\app\middleware\Front']; + protected $middleware = ['\app\http\middleware\Front']; /** * @title 网站首页 diff --git a/app/controller/admin/Group.php b/app/controller/admin/Group.php index 1a239c43..77acffbc 100644 --- a/app/controller/admin/Group.php +++ b/app/controller/admin/Group.php @@ -16,6 +16,17 @@ class Group extends Admin{ * @title 系统首页 */ public function index(){ - + if ($this->request->isAjax()) { + # code... + } + } + + /** + * @title 权限列表 + */ + public function access(){ + if ($this->request->isAjax()) { + # code... + } } } \ No newline at end of file diff --git a/app/controller/admin/Index.php b/app/controller/admin/Index.php index 2c5d3f37..7e045528 100644 --- a/app/controller/admin/Index.php +++ b/app/controller/admin/Index.php @@ -69,6 +69,7 @@ class Index extends Admin{ public function logout(){ Session::set('user', null); $this->data['code'] = 0; + $this->data['msg'] = "成功退出!"; return $this->data; } } diff --git a/app/controller/admin/Menu.php b/app/controller/admin/Menu.php index d6505b98..264328a6 100644 --- a/app/controller/admin/Menu.php +++ b/app/controller/admin/Menu.php @@ -19,8 +19,9 @@ class Menu extends Admin{ public function index(){ if($this->request->isAjax()){ $menu = new MenuModel(); + $map = array(); - $res = $menu->select(); + $res = $menu->where($map)->order('sort asc, id asc')->select(); $this->data['data'] = $res; return $this->data; @@ -31,14 +32,28 @@ class Menu extends Admin{ * @title 编辑菜单 */ public function edit(){ + $menu = new MenuModel(); if($this->request->isAjax()){ - $menu = new MenuModel(); + $data = $this->request->post(); - $res = $menu->select(); - - $this->data['data'] = $res; + $result = $menu->where('id', $data['id'])->save($data); + if (false !== $result) { + $this->data['code'] = 0; + $this->data['msg'] = '更新成功!'; + }else{ + $this->data['code'] = 1; + $this->data['msg'] = '更新失败!'; + } return $this->data; }else{ + $id = $this->request->param('id', 0); + + if (!$id) { + return $this->error('非法操作!'); + } + $info = $menu->where('id', $id)->find(); + + $this->data['data'] = array('info'=>$info); return $this->data; } } @@ -48,11 +63,6 @@ class Menu extends Admin{ */ public function add(){ if($this->request->isAjax()){ - $menu = new MenuModel(); - - $res = $menu->select(); - - $this->data['data'] = $res; return $this->data; }else{ $this->data['template'] = 'edit'; @@ -65,11 +75,6 @@ class Menu extends Admin{ */ public function remove(){ if($this->request->isAjax()){ - $menu = new MenuModel(); - - $res = $menu->select(); - - $this->data['data'] = $res; return $this->data; } } diff --git a/app/middleware/Admin.php b/app/http/middleware/Admin.php similarity index 83% rename from app/middleware/Admin.php rename to app/http/middleware/Admin.php index 194fa288..b53ac5ec 100644 --- a/app/middleware/Admin.php +++ b/app/http/middleware/Admin.php @@ -6,7 +6,7 @@ // +---------------------------------------------------------------------- // | Author: molong // +---------------------------------------------------------------------- -namespace app\middleware; +namespace app\http\middleware; use think\facade\View; @@ -19,6 +19,7 @@ class Admin { public function handle($request, \Closure $next) { $response = $next($request); + if (is_array($response->getData())) { $this->data = array_merge($this->data, $response->getData()); } else { @@ -52,10 +53,10 @@ class Admin { $template = (isset($this->data['template']) && $this->data['template']) ? $this->data['template'] : $template; - return View::config($config) - ->assign('sent_version', sent_version) - ->assign('config', (isset($this->data['config']) ? $this->data['config'] : [])) - ->assign((isset($this->data['data']) ? $this->data['data'] : [])) - ->fetch($template); + View::config($config); + View::assign('sent_version', sent_version); + View::assign('config', (isset($this->data['config']) ? $this->data['config'] : [])); + View::assign((isset($this->data['data']) ? $this->data['data'] : [])); + return View::fetch($template); } } \ No newline at end of file diff --git a/app/middleware/AdminAuth.php b/app/http/middleware/AdminAuth.php similarity index 98% rename from app/middleware/AdminAuth.php rename to app/http/middleware/AdminAuth.php index 15b4c69b..20b0d920 100644 --- a/app/middleware/AdminAuth.php +++ b/app/http/middleware/AdminAuth.php @@ -6,7 +6,7 @@ // +---------------------------------------------------------------------- // | Author: molong // +---------------------------------------------------------------------- -namespace app\middleware; +namespace app\http\middleware; use think\facade\Cache; use think\facade\Session; diff --git a/app/middleware/Front.php b/app/http/middleware/Front.php similarity index 79% rename from app/middleware/Front.php rename to app/http/middleware/Front.php index 18d2f2c5..24e91003 100644 --- a/app/middleware/Front.php +++ b/app/http/middleware/Front.php @@ -6,7 +6,7 @@ // +---------------------------------------------------------------------- // | Author: molong // +---------------------------------------------------------------------- -namespace app\middleware; +namespace app\http\middleware; use think\facade\View; @@ -36,15 +36,17 @@ class Front { $config = array( 'tpl_replace_string' => array( '__static__' => '/static', - '__img__' => '/static/admin/images', - '__css__' => '/static/admin/css', - '__js__' => '/static/admin/js', - '__public__' => '/static/admin', + '__img__' => '/static/front/images', + '__css__' => '/static/front/css', + '__js__' => '/static/front/js', + '__public__' => '/static/front', ) ); if (is_string($this->data)) { $this->data = array('data' => $this->data); } - return View::config($config)->assign($this->data)->fetch($template); + View::config($config); + View::assign($this->data); + return View::engine('Think')->fetch($template); } } \ No newline at end of file diff --git a/app/middleware/Validate.php b/app/http/middleware/Validate.php similarity index 94% rename from app/middleware/Validate.php rename to app/http/middleware/Validate.php index 6f93df1e..9e47da1f 100644 --- a/app/middleware/Validate.php +++ b/app/http/middleware/Validate.php @@ -7,7 +7,7 @@ // | Author: molong // +---------------------------------------------------------------------- -namespace app\middleware; +namespace app\http\middleware; use think\Response; class Validate { @@ -24,7 +24,7 @@ class Validate { $controller = strtr(strtolower($request->controller()), '.', '\\'); //获取操作名,用于验证场景scene $scene = $request->action(); - $validate = "app\\validate\\" . $controller; + $validate = "app\\http\\validate\\" . $controller; //仅当验证器存在时 进行校验 if (class_exists($validate) && $request->isPost()) { $v = new $validate; diff --git a/app/validate/admin/Index.php b/app/http/validate/admin/Index.php similarity index 95% rename from app/validate/admin/Index.php rename to app/http/validate/admin/Index.php index 46b46718..4f178227 100644 --- a/app/validate/admin/Index.php +++ b/app/http/validate/admin/Index.php @@ -7,7 +7,7 @@ // | Author: molong // +---------------------------------------------------------------------- -namespace app\validate\admin; +namespace app\http\validate\admin; use think\Validate; diff --git a/config/middleware.php b/config/middleware.php new file mode 100644 index 00000000..ce508376 --- /dev/null +++ b/config/middleware.php @@ -0,0 +1,8 @@ + [], + //优先级设置,此数组中的中间件会按照数组中的顺序优先执行 + 'priority' => [], +]; diff --git a/config/session.php b/config/session.php index 7abf056d..c1ef6e16 100644 --- a/config/session.php +++ b/config/session.php @@ -5,13 +5,15 @@ return [ // session name - 'name' => '', + 'name' => 'PHPSESSID', // SESSION_ID的提交变量,解决flash上传跨域 'var_session_id' => '', - // 驱动方式 支持file redis memcache memcached + // 驱动方式 支持file cache 'type' => 'file', + // 存储连接标识 当type使用cache的时候有效 + 'store' => null, // 过期时间 - 'expire' => 0, + 'expire' => 1440, // 前缀 'prefix' => '', ]; diff --git a/config/template.php b/config/view.php similarity index 63% rename from config/template.php rename to config/view.php index 51a42117..469eb64d 100644 --- a/config/template.php +++ b/config/view.php @@ -5,23 +5,23 @@ return [ // 模板引擎类型使用Think - 'type' => 'Think', + 'type' => 'Think', // 默认模板渲染规则 1 解析为小写+下划线 2 全部转换小写 3 保持操作方法 - 'auto_rule' => 1, - // 模板基础路径 - 'view_base' => '', + 'auto_rule' => 1, + // 模板目录名 + 'view_dir_name' => 'view', // 模板路径 - 'view_path' => '', + 'view_path' => '', // 模板后缀 - 'view_suffix' => 'html', + 'view_suffix' => 'html', // 模板文件名分隔符 - 'view_depr' => DIRECTORY_SEPARATOR, + 'view_depr' => DIRECTORY_SEPARATOR, // 模板引擎普通标签开始标记 - 'tpl_begin' => '{', + 'tpl_begin' => '{', // 模板引擎普通标签结束标记 - 'tpl_end' => '}', + 'tpl_end' => '}', // 标签库标签开始标记 - 'taglib_begin' => '{', + 'taglib_begin' => '{', // 标签库标签结束标记 - 'taglib_end' => '}', + 'taglib_end' => '}', ]; diff --git a/public/favicon.ico b/public/favicon.ico index e71815a6618c6ef19c78d27840b8995fb2521499..08e450025ce384de236ffc48eb52429b8f70196d 100644 GIT binary patch literal 9662 zcmeI2e{2(F7{}k1W*c*Elbo(;Iu)Ek~(^x077nUTooQ9+=&NAHO-vVP2A4ZAm0>i5{P zQy;{QpZbB$p@6c>>&6ospNBuYxblnOuL<(olHjY`|3Usv#DUS$Ry_&)+Sfd96X)?& zJuq)U>z3W~TR-0ZMC+Ey1*bpSn8(}JAqNyw|IpWzMqxv$`&Mmg)9qgn3;i*P1JB(6 zo`FdVKe+nA`s0&lHm_fFvLgEx@B7AW2SS)Z*fHMU{GpC4sy~^WarpX+kGTKZiM-Su z{anC*R6RdsU*7!AqhsJ{KDD^sn=sYY_b%qqrF|Zn`2(LiUrW#osiH&9Pk&5Fa|aG% zJ!r_WAElz?x7whuHI19$aoLY55=_kFQEVoS0O&e%K`z=Y`airaKqa zttI{Z#Vs3C7M!kJhP<<5UTf8{e7^b;%rDg+ysehOA^()kI&^Km?d#82Q$(HW>Md8d zj-uy(=G2GzVEz`YLgam8`2L03=icN-Ve68;O`*C@X%bHzIGc(bi`;U*dP6(^>nGmJ z1owCFuZlWpIKRY$_?+gtxmt-kybb%r$yoDKX85}&vcJP?hsgC0*uDv8Rr-u;_QafD zb6u+7f2@hgjlK#c=I}PGpPKQ=|8Uctb2P_#U{Auo6Zu6nb8A`n2ZA{vO&(X2BLcP&NU;jz!Pt2A%2XF%1O)C}`~2h|>!%Uw;M#r3t%a(unVTKN$pfu*aDCo`r&*ES*UEn9We zG}n4%9p(}Gv0+sFQa?M006PZe3Sl3~q%m%|s1dfVL9wZh&o<@{ofB)Uwm-SpLk> zR6nb!v4huW%KuT+(~KYfNBhtU6Tz*lv0 zywUHh(HYh|?z1c0@67)r)xuph=31|s^q9qZIaF(7Oe45WI&CDTbSz3QLVUzvCuxLq zP)#JHnd$^W>{JcmnuSw1P89!^G)oli^cdPKYlo~pNk0(>sLnL(lr&vdV%RDjlhASS zJTcVB?ZJLzf+*dGq{;e%Nbk?MnSy74&~ehl4q1cTS)#0ivik3%Lw0GrG%+|{qO22S eHONYAGEbr?jW^0qLBBQ2e(azMzcN2F?tcJ9+;p7) literal 1150 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 -{/block} {block name="body"}

{$meta_title|default='新功能'}

- 新 增 -
-
- - - - - - - - - - - - - - {volist name="list" id="item"} - - - - - - - - - - {/volist} - -
ID名称标识创建时间更新时间操作
{$item['id']}{$item['title']}{$item['name']}{$item['create_time']|date='Y-m-d H:i',###}{$item['update_time']|date='Y-m-d H:i',###} - 广告列表 - 编辑 - 删除 -
- {$page|raw} + + + +
+
{/block} {block name="script"} - - + + + + - if(url != undefined && url != ''){ - window.location.href = url + '/ids/' + param; - } + {/block} \ No newline at end of file diff --git a/view/admin/addons/hooks.html b/view/admin/addons/hooks.html index adf60113..fd5dc5a2 100644 --- a/view/admin/addons/hooks.html +++ b/view/admin/addons/hooks.html @@ -1,75 +1,87 @@ {extend name="admin/base"/} -{block name="style"} - -{/block} {block name="body"}

{$meta_title|default='新功能'}

- 新 增 -
-
- - - - - - - - - - - - - {volist name="list" id="item"} - - - - - - - - - {/volist} - -
ID名称描述类型操作
{$item['id']|default=0}{$item['name']}{$item['description']}{$item['type_text']} - 编辑 - 删除 -
- {$page|raw} + + + +
+
{/block} {block name="script"} - - + + + + - if(url != undefined && url != ''){ - window.location.href = url + '/ids/' + param; - } + {/block} \ No newline at end of file diff --git a/view/admin/addons/index.html b/view/admin/addons/index.html index 606367de..fd5dc5a2 100644 --- a/view/admin/addons/index.html +++ b/view/admin/addons/index.html @@ -1,91 +1,87 @@ {extend name="admin/base"/} -{block name="style"} - -{/block} {block name="body"}

{$meta_title|default='新功能'}

- 更 新 - 新 增 -
-
- - - - - - - - - - - - - - - - {volist name="list" id="item"} - - - - - - - - - - - - {/volist} - -
ID名称标识描述状态作者版本操作
{$item['id']|default=0}{$item['title']}{$item['name']}{$item['description']}{$item['status_text']}{$item['author']}{$item['version']} - {if !$item['isinstall']} - 安装 - {else/} - 卸载 - {if $item['status']} - 禁用 - {else/} - 启用 - {/if} - 设置 - {/if} -
- {$page|raw} + + + +
+
{/block} {block name="script"} - - + + + + - if(url != undefined && url != ''){ - window.location.href = url + '/ids/' + param; - } + {/block} \ No newline at end of file diff --git a/view/admin/base.html b/view/admin/base.html index 0d50320c..3ec7eba1 100644 --- a/view/admin/base.html +++ b/view/admin/base.html @@ -19,6 +19,7 @@ folder instead of downloading all of them to reduce the load. --> + @@ -56,10 +57,10 @@ folder instead of downloading all of them to reduce the load. -->
- - + + - + {block name="script"}{/block} \ No newline at end of file diff --git a/view/admin/form/index.html b/view/admin/form/index.html index 3705fa2b..fd5dc5a2 100644 --- a/view/admin/form/index.html +++ b/view/admin/form/index.html @@ -1,67 +1,87 @@ {extend name="admin/base"/} -{block name="style"} - -{/block} {block name="body"}

{$meta_title|default='新功能'}

- 新 增 -
-
- - - - - - - - - - - - - {notempty name="list"} - {volist name="list" id="item"} - - - - - - - - - - {/volist} - {else/} - - {/notempty} - -
ID名称排序时间操作
- - {$item['id']}{$item['name']} - {$item['title']} - - {$item.create_time|time_format} - - {if $item['status']} - {$item['status_text']} - {else/} - {$item['status_text']} - {/if} - - 字段 - {$item['status']|show_status_op} - 编辑 - 删除 - 数据 -
aOh! 暂时还没有创建模型!
- {$page|raw} + + + +
+
+{/block} +{block name="script"} + + + + + + + + {/block} \ No newline at end of file diff --git a/view/admin/group/access.html b/view/admin/group/access.html index 38e2e773..fd5dc5a2 100644 --- a/view/admin/group/access.html +++ b/view/admin/group/access.html @@ -4,72 +4,84 @@

{$meta_title|default='新功能'}

-
- -
-
- {if condition="empty($list)"} -

暂无数据!

- {else/} -
- - - - - - - - - - - - - - {volist name="list" id="item"} - - - - - - - - - - {/volist} - -
ID组名标识分组状态操作
{$item['id']}{$item['title']}{$item['name']}{$item['group']} - {if condition="$item['status'] eq '0'"} - 禁用 - {elseif condition="$item['status'] eq '1'"/} - 启用 - {/if} - - 编辑 - 删除 -
- {$page|raw} -
- {/if} -
-
+ + + +
+
+{/block} +{block name="script"} + + + + + + + + {/block} \ No newline at end of file diff --git a/view/admin/group/index.html b/view/admin/group/index.html index 5498c6cc..fd5dc5a2 100644 --- a/view/admin/group/index.html +++ b/view/admin/group/index.html @@ -1,81 +1,87 @@ {extend name="admin/base"/} -{block name="style"} - -{/block} {block name="body"}

{$meta_title|default='新功能'}

-
- -
-
- {if condition="empty($list)"} -

暂无数据!

- {else/} -
- - - - - - - - - - - - - {volist name="list" id="item"} - - - - - - - - - {/volist} - -
ID组名描述状态操作
{$item['id']}{$item['title']}{$item['description']} - {if condition="$item['status'] eq '0'"} - 禁用 - {elseif condition="$item['status'] eq '1'"/} - 启用 - {/if} - - 编辑 - 授权 - 删除 -
- {$page|raw} -
- {/if} -
-
+ + + +
+
{/block} {block name="script"} - + + + + + + + {/block} \ No newline at end of file diff --git a/view/admin/index/index.html b/view/admin/index/index.html index 6823daaf..bfd8ac65 100644 --- a/view/admin/index/index.html +++ b/view/admin/index/index.html @@ -13,7 +13,7 @@ - + @@ -87,7 +87,7 @@ folder instead of downloading all of them to reduce the load. --> 个人资料
@@ -169,7 +169,7 @@ folder instead of downloading all of them to reduce the load. -->