分离后台和用户中心登录状态

This commit is contained in:
2020-04-27 08:10:23 +08:00
parent ab34ae6458
commit 246c95d956
6 changed files with 38 additions and 23 deletions

View File

@@ -13,16 +13,29 @@ use think\facade\Session;
use think\facade\Config;
/**
*
* @title 检查登录状态
*/
function is_login() {
$user = Session::get('userInfo');
return isset($user['uid']) ? $user['uid'] : false;
if(strpos(Request::controller(), ".")){
list($module, $controller) = explode(".", Request::controller());
}else{
$module = "";
}
$user = Session::get(strtolower($module) . 'Info');
return $user['uid'];
}
/**
* @title 检查是否为超级管理员
*/
function is_administrator() {
$user = Session::get('userInfo');
return (isset($user['uid']) && (int) $user['uid'] === (int) env('rootuid')) ? true : false;
if(strpos(Request::controller(), ".")){
list($module, $controller) = explode(".", Request::controller());
}else{
$module = "";
}
$user = Session::get(strtolower($module) . 'Info');
return (int) $user['uid'] === (int) env('rootuid') ? true : false;
}
function form($field = [], $data = []) {

View File

@@ -14,6 +14,7 @@ use app\model\AuthGroup;
use app\model\Menu;
use app\model\Model;
use think\facade\View;
use think\facade\Config;
class Base extends BaseC {

View File

@@ -48,7 +48,7 @@ class Index extends Base {
try {
$userinfo = $user->login($this->request);
if ($userinfo) {
Session::set('userInfo', $userinfo);
Session::set('adminInfo', $userinfo);
return $this->success('登录成功!', url('/admin/index/index'));
}
} catch (Exception $e) {
@@ -64,7 +64,7 @@ class Index extends Base {
* @return html
*/
public function logout(Member $user) {
Session::delete('userInfo');
Session::delete('adminInfo');
$this->redirect('/admin/login');
}

View File

@@ -8,11 +8,12 @@
// +----------------------------------------------------------------------
namespace app\controller\user;
use think\facade\View;
use think\facade\Cache;
use app\controller\Base as BaseC;
use app\model\Model;
use app\model\Form;
use app\model\Model;
use think\facade\Cache;
use think\facade\Config;
use think\facade\View;
class Base extends BaseC {
@@ -46,7 +47,7 @@ class Base extends BaseC {
$this->tpl_config['view_dir_name'] = 'public' . DIRECTORY_SEPARATOR . 'template' . DIRECTORY_SEPARATOR . $pc_themes;
}
}
if(!file_exists($this->app->getRootPath() . $this->tpl_config['view_dir_name'] . DIRECTORY_SEPARATOR . 'user')){
if (!file_exists($this->app->getRootPath() . $this->tpl_config['view_dir_name'] . DIRECTORY_SEPARATOR . 'user')) {
$this->tpl_config['view_dir_name'] = 'public' . DIRECTORY_SEPARATOR . 'template' . DIRECTORY_SEPARATOR . 'default';
}
if ($template == '') {

View File

@@ -39,7 +39,7 @@ class Index extends Base {
} catch (Exception $e) {
return $this->error($e->getError(), '');
}
}else{
} else {
return $this->fetch();
}
}
@@ -62,10 +62,10 @@ class Index extends Base {
$result = (new Member())->register($this->request);
if (false !== $result) {
return $this->success("注册成功!", url('/user/index/login'));
}else{
} else {
return $this->error("注册失败!");
}
}else{
} else {
return $this->fetch();
}
}
@@ -90,13 +90,13 @@ class Index extends Base {
$result = Member::sendFindPaswd($user);
if (false !== $result) {
return $this->success("已发送找回密码邮件!", url('/user/index/login'));
}else{
} else {
return $this->error("发送邮件失败!");
}
}else{
} else {
return $this->error('无此用户!');
}
}else{
} else {
return $this->fetch();
}
}
@@ -124,13 +124,13 @@ class Index extends Base {
$result = Member::update($data, ['uid' => $user['uid']]);
if (false !== $result) {
return $this->success("已重置!", url('/user/index/login'));
}else{
} else {
return $this->error("发送邮件失败!");
}
}else{
} else {
return $this->error('无此用户!');
}
}else{
} else {
$token = $this->request->param('token');
return $this->fetch();
}

View File

@@ -33,7 +33,7 @@
<li class="dropdown user user-menu">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
<img src="__plugins__/adminlte/img/user2-160x160.jpg" class="user-image" alt="User Image">
<span class="hidden-xs">{:session('userInfo.nickname')}</span>
<span class="hidden-xs">{:session('adminInfo.nickname')}</span>
</a>
<ul class="dropdown-menu">
<!-- User image -->
@@ -41,7 +41,7 @@
<img src="__plugins__/adminlte/img/user2-160x160.jpg" class="img-circle" alt="User Image">
<p>
{:session('userInfo.nickname')}
{:session('adminInfo.nickname')}
<small>Member since Nov. 2012</small>
</p>
</li>
@@ -89,7 +89,7 @@
<img src="__plugins__/adminlte/img/user2-160x160.jpg" class="img-circle" alt="User Image">
</div>
<div class="pull-left info">
<p>{:session('userInfo.nickname')}</p>
<p>{:session('adminInfo.nickname')}</p>
<a href="#"><i class="fa fa-circle text-success"></i> 在线</a>
</div>
</div>