You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

26 lines
698 B

1 year ago
  1. <?php
  2. declare (strict_types=1);
  3. namespace app\middleware;
  4. class AuthAdmin
  5. {
  6. public function handle($request, \Closure $next)
  7. {
  8. $islogin = false;
  9. $cookie = cookie('admin_token');
  10. if($cookie){
  11. $token=authcode($cookie, 'DECODE', config_get('syskey'));
  12. if($token){
  13. list($user, $sid, $expiretime) = explode("\t", $token);
  14. $session=md5(config_get('admin_username').config_get('admin_password'));
  15. if($session==$sid && $expiretime>time()) {
  16. $islogin = true;
  17. }
  18. }
  19. }
  20. request()->islogin = $islogin;
  21. return $next($request);
  22. }
  23. }