added audit trails

This commit is contained in:
Jagad R R
2025-01-01 17:14:46 +07:00
parent 9b1ca9f58d
commit d4bbe3a602
20 changed files with 287 additions and 34 deletions
@@ -9,6 +9,7 @@ use Illuminate\Foundation\Auth\AuthenticatesUsers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Session;
use App\Helpers\AuditTrailHelper;
class LoginController extends Controller
{
@@ -76,30 +77,38 @@ class LoginController extends Controller
// Attempt to login
if (Auth::guard('admin')->attempt(['email' => $request->email, 'password' => $request->password], $request->remember)) {
session()->flash('success', 'Successully Logged in !');
Session::put('current_guard', 'admin');
return redirect()->route('admin.dashboard');
session()->flash('success', 'Successully Logged in !');
Session::put('current_guard', 'admin');
AuditTrailHelper::AuthAttempt('Login', 'User (' . $request->email . ') Logged in to the System');
return redirect()->route('admin.dashboard');
} else if (Auth::guard('admin')->attempt(['username' => $request->email, 'password' => $request->password], $request->remember)) {
session()->flash('success', 'Successully Logged in !');
Session::put('current_guard', 'admin');
return redirect()->route('admin.dashboard');
session()->flash('success', 'Successully Logged in !');
Session::put('current_guard', 'admin');
AuditTrailHelper::AuthAttempt('Login', 'User (' . $request->email . ') Logged in to the System');
return redirect()->route('admin.dashboard');
}else if (Auth::guard('web')->attempt(['username' => $request->email, 'password' => $request->password], $request->remember)) {
session()->flash('success', 'Successully Logged in !');
Session::put('current_guard', 'web');
return redirect()->route('admin.dashboard');
}else if (Auth::guard('web')->attempt(['email' => $request->email, 'password' => $request->password], $request->remember)) {
session()->flash('success', 'Successully Logged in !');
Session::put('current_guard', 'web');
return redirect()->route('admin.dashboard');
} else if (Auth::guard('web')->attempt(['username' => $request->email, 'password' => $request->password], $request->remember)) {
session()->flash('success', 'Successully Logged in !');
Session::put('current_guard', 'web');
AuditTrailHelper::AuthAttempt('Login', 'User (' . $request->email . ') Logged in to the System');
return redirect()->route('admin.dashboard');
} else if (Auth::guard('web')->attempt(['email' => $request->email, 'password' => $request->password], $request->remember)) {
session()->flash('success', 'Successully Logged in !');
Session::put('current_guard', 'web');
AuditTrailHelper::AuthAttempt('Login', 'User (' . $request->email . ') Logged in to the System');
return redirect()->route('admin.dashboard');
}
// error
session()->flash('error', 'Invalid email and password..');
return back();
// error
session()->flash('error', 'Invalid email and password..');
return back();
}
/**
* logout admin guard
*
@@ -107,13 +116,25 @@ class LoginController extends Controller
*/
public function logout()
{
try{
$user = Auth::guard('admin')->user();
if (!$user) {
Auth::guard('admin')->logout();
return redirect()->route('admin.login');
}catch (Exception $e) {
Auth::guard('web')->logout();
return redirect()->route('admin.login');
}
// Log activity
AuditTrailHelper::AuthAttempt('Logout', 'User (' . $user->email . ') Logged out from the System');
try {
// Logout from admin guard
Auth::guard('admin')->logout();
} catch (Exception $e) {
// Fallback to web guard if admin logout fails
Auth::guard('web')->logout();
}
// Redirect to admin login
return redirect()->route('admin.login');
}
}