Advertisement
ramadhanf_

CekRole.php

Aug 25th, 2019
238
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.17 KB | None | 0 0
  1. <?php
  2.  
  3. namespace App\Http\Middleware;
  4.  
  5. use Closure;
  6. use App\Role;
  7. use App\Auth;
  8. use App\Suketpengajuan;
  9. use App\User;
  10.  
  11. class CekRole
  12. {
  13.     /**
  14.      * Handle an incoming request.
  15.      *
  16.      * @param  \Illuminate\Http\Request  $request
  17.      * @param  \Closure  $next
  18.      * @return mixed
  19.      */
  20.     public function handle($request, Closure $next, $NoSK)
  21.     {
  22.         $roles = $this->CekRoute($request->route());
  23.  
  24.         $suketpengajuan == DB::table('suketpengajuan')
  25.                           ->where('NoSK', '=', $NoSK)
  26.                           ->get();
  27.  
  28.         if ($request->username()->hasRole($roles) || !$roles) {
  29.            
  30.             if (Auth::user()->role == Karyawan && $suketpengajuan->Status == "Sudah Diterima HRD") {
  31.                
  32.                 return redirect('suketpengajuan.selesaisubmit');
  33.             } else {
  34.            
  35.             return $next($request);
  36.            
  37.             }
  38.         }
  39.  
  40.         return abort(503, 'Anda tidak memiliki hak akses');
  41.     }
  42.  
  43.     private function CekRoute($route) {
  44.  
  45.         $actions = $route->getAction();
  46.  
  47.         return isset($actions['roles']) ? $actions['roles'] : null;
  48.     }
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement