Initial commit

This commit is contained in:
net909
2023-09-28 16:21:06 +08:00
parent 498772eb04
commit ba7be004c0
640 changed files with 87745 additions and 0 deletions
+31
View File
@@ -0,0 +1,31 @@
<?php
declare (strict_types=1);
namespace app\middleware;
class AuthAdmin
{
public function handle($request, \Closure $next)
{
$islogin = false;
$cookie = cookie('admin_token');
if($cookie){
$token=authcode($cookie, 'DECODE', config_get('syskey'));
if($token){
list($user, $sid, $expiretime) = explode("\t", $token);
$session=md5(config_get('admin_username').config_get('admin_password'));
if($session==$sid && $expiretime>time()) {
$islogin = true;
}
}
}
if (!$islogin) {
if ($request->isAjax() || !$request->isGet()) {
return msg('error', '请登录')->code(401);
}
return redirect((string)url('/admin/login.html'));
}
return $next($request);
}
}
+41
View File
@@ -0,0 +1,41 @@
<?php
declare (strict_types=1);
namespace app\middleware;
use think\facade\Db;
class AuthUser
{
public function handle($request, \Closure $next)
{
$islogin = false;
$cookie = cookie('user_token');
$user = null;
if($cookie){
$token=authcode($cookie, 'DECODE', config_get('syskey'));
if($token){
list($uid, $sid, $expiretime) = explode("\t", $token);
$user = Db::name('user')->where('id', $uid)->find();
if($user && $user['enable']==1){
$session=md5($user['id'].$user['password']);
if($session==$sid && $expiretime>time()) {
if(!$user['avatar_url']) $user['avatar_url'] = '/static/images/user.png';
$islogin = true;
}
}elseif($user && $user['enable']==0 && !session('user_block')){
session('user_block', '1');
}
}
}
$request->islogin = $islogin;
$request->user = $user;
/*if (!$islogin) {
if ($request->isAjax() || !$request->isGet()) {
return msg('error','请登录');
}
return redirect((string)url('/login'));
}*/
return $next($request);
}
}
+29
View File
@@ -0,0 +1,29 @@
<?php
declare (strict_types = 1);
namespace app\middleware;
use think\facade\Db;
use think\facade\Config;
class LoadConfig
{
/**
* 处理请求
*
* @param \think\Request $request
* @param \Closure $next
* @return Response
*/
public function handle($request, \Closure $next)
{
if (!file_exists(app()->getRootPath().'.env')){
return redirect((string)url('/install'));
}
$res = Db::name('config')->cache('configs',0)->column('value','key');
Config::set($res, 'sys');
return $next($request);
}
}
+24
View File
@@ -0,0 +1,24 @@
<?php
declare (strict_types=1);
namespace app\middleware;
use think\facade\View;
class RefererCheck
{
/**
* 处理请求
*
* @param \think\Request $request
* @param \Closure $next
* @return Response
*/
public function handle($request, \Closure $next)
{
if(!checkRefererHost()){
return response('Access Denied', 403);
}
return $next($request);
}
}
+29
View File
@@ -0,0 +1,29 @@
<?php
declare (strict_types=1);
namespace app\middleware;
use think\facade\View;
class ViewOutput
{
/**
* 处理请求
*
* @param \think\Request $request
* @param \Closure $next
* @return Response
*/
public function handle($request, \Closure $next)
{
View::assign('islogin', $request->islogin);
View::assign('user', $request->user);
View::assign('cdn_cdnjs', config_get('cdn_cdnjs', '//cdn.staticfile.org/'));
View::assign('cdn_npm', config_get('cdn_npm', 'https://unpkg.com/'));
View::config(['view_path' => template_path_get()]);
return $next($request)->header([
'Cache-Control' => 'no-store, no-cache, must-revalidate',
'Pragma' => 'no-cache',
]);
}
}