From fa7b33ea6c073acf810b4d2931d292012e7a5315 Mon Sep 17 00:00:00 2001 From: rionaldichandraseta <rionaldi.chandraseta@gmail.com> Date: Thu, 19 Apr 2018 12:24:58 +0700 Subject: [PATCH] Add role check in user --- app/Http/Controllers/Auth/LoginController.php | 10 ++++++++++ app/User.php | 17 +++++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/app/Http/Controllers/Auth/LoginController.php b/app/Http/Controllers/Auth/LoginController.php index c3ba2a1..e3a65a0 100644 --- a/app/Http/Controllers/Auth/LoginController.php +++ b/app/Http/Controllers/Auth/LoginController.php @@ -4,6 +4,7 @@ namespace App\Http\Controllers\Auth; use App\Http\Controllers\Controller; use Illuminate\Foundation\Auth\AuthenticatesUsers; +use Illuminate\Http\Request; class LoginController extends Controller { @@ -36,4 +37,13 @@ class LoginController extends Controller { $this->middleware('guest')->except('logout'); } + + public function authenticated(Request $request) { + if($request->user()->isPegawaiOnly()){ + return redirect('/pages/profile'); + } + else { + return redirect('/pages'); + } + } } diff --git a/app/User.php b/app/User.php index edc85ff..a5d3db2 100644 --- a/app/User.php +++ b/app/User.php @@ -5,6 +5,7 @@ namespace App; use App\Notification\ResetPassword; use Illuminate\Notifications\Notifiable; +use Illuminate\Http\Request; use Illuminate\Foundation\Auth\User as Authenticatable; class User extends Authenticatable @@ -36,4 +37,20 @@ class User extends Authenticatable public function sendPasswordResetNotification($token) { $this->notify(new ResetPassword($token)); } + + public function isAdmin() { + return !is_null(Admin::find($this->id)); + } + + public function isPMO() { + return !is_null(PMO::find($this->id)); + } + + public function isPegawai() { + return !is_null(Pegawai::find($this->id)); + } + + public function isPegawaiOnly() { + return ($this->isPegawai() and !$this->isPMO() and !$this->isAdmin()); + } } -- GitLab