This commit is contained in:
2025-11-22 15:31:01 +08:00
parent 9f25a85d07
commit b52a51c09b
37 changed files with 2587 additions and 240 deletions
+2 -19
View File
@@ -39,25 +39,8 @@ class AccessControl implements MiddlewareInterface
$response = view('common/403')->withStatus(403);
}
}
} else {
$config = Config('site');
$config['debug'] = config('app.debug');
$config['controller'] = $request->controller_name;
$config['action'] = $request->action_name;
$config['moduleurl'] = '/app/admin';
$request->_view_vars = array_merge((array) $request->_view_vars,[
'user' => session('admin'),
'config' => $config
]);
$response = $request->method() == 'OPTIONS' ? response('') : $handler($request);
$response->withBody(str_replace([
'__SELF__'
],[
request()->path()
//url(request()->action)
],$response->rawBody()))->getStatusCode();
return $response;
}
return $response;
return $handler($request);
}
}
+41
View File
@@ -0,0 +1,41 @@
<?php
namespace plugin\admin\app\middleware;
use plugin\admin\api\Auth;
use ReflectionException;
use support\exception\BusinessException;
use Webman\Http\Request;
use Webman\Http\Response;
use Webman\MiddlewareInterface;
class Config implements MiddlewareInterface
{
/**
* @param Request $request
* @param callable $handler
* @return Response
* @throws ReflectionException|BusinessException
*/
public function process(Request $request, callable $handler): Response
{
$request->controller_name = get_controller_name();
$request->action_name = get_action_name();
$config = Config('site');
$config['debug'] = config('app.debug');
$config['controller'] = $request->controller_name;
$config['action'] = $request->action_name;
$config['moduleurl'] = '/app/admin';
$request->_view_vars = array_merge((array) $request->_view_vars,[
'user' => session('admin'),
'config' => $config
]);
$IM = new \support\OpenImSdk\Client([
'host' => 'http://127.0.0.1:10002', // OpenIM API地址
'secret' => 'openIM123', // OpenIM密钥
]);
$request->IM = $IM;
return $handler($request);
}
}
+34
View File
@@ -0,0 +1,34 @@
<?php
namespace plugin\admin\app\middleware;
use plugin\admin\api\Auth;
use ReflectionException;
use support\exception\BusinessException;
use Webman\Http\Request;
use Webman\Http\Response;
use Webman\MiddlewareInterface;
class Tpl implements MiddlewareInterface
{
/**
* @param Request $request
* @param callable $handler
* @return Response
* @throws ReflectionException|BusinessException
*/
public function process(Request $request, callable $handler): Response
{
$response = $request->method() == 'OPTIONS' ? response('') : $handler($request);
$response->withBody(str_replace([
'__SELF__',
'__2__'
],[
request()->path(),
'-'
//url(request()->action)
],$response->rawBody()))->getStatusCode();
return $response;
}
}