Initial commit - expense
Deploy to VPS (PAT over HTTPS) / deploy (push) Has been cancelled

This commit is contained in:
root
2026-06-01 15:01:03 +07:00
parent 9e9fab4a3f
commit 1c1418f3e0
123 changed files with 18622 additions and 10376 deletions
+51 -21
View File
@@ -4,29 +4,59 @@ namespace App\Helpers;
use Illuminate\Support\Facades\Auth;
use App\Models\AuditTrail;
use Illuminate\Support\Facades\Request;
class AuditTrailHelper
{
public static function AddAuditTrail($action, $activity)
{
$audit = new AuditTrail();
$audit->user_id = Auth::user()->id;
$audit->ip_address = request()->ip();
$audit->activity = $activity;
$audit->action = $action;
$audit->user_agent = request()->userAgent();
$audit->browser = substr($audit->user_agent, 0, strpos($audit->user_agent, '/'));
$audit->save();
}
/**
* Mencatat aktivitas umum (Insert, Update, Delete, Approve, Reject)
*/
public static function AddAuditTrail($action, $activity)
{
// Menggunakan guard 'admin' sesuai spesifikasi login aplikasi Anda
$user = Auth::guard('admin')->user();
public static function AuthAttempt($action, $activity)
{
$audit = new AuditTrail();
$audit->ip_address = request()->ip();
$audit->activity = $activity;
$audit->action = $action;
$audit->user_agent = request()->userAgent();
$audit->browser = substr($audit->user_agent, 0, strpos($audit->user_agent, '/'));
$audit->save();
}
$audit = new AuditTrail();
$audit->user_id = $user ? $user->id : null;
$audit->ip_address = Request::ip();
$audit->activity = $activity;
$audit->action = $action;
$audit->user_agent = Request::userAgent();
$audit->browser = self::getBrowserName(Request::userAgent());
$audit->save();
}
/**
* Mencatat percobaan otentikasi (Login/Logout)
*/
public static function AuthAttempt($action, $activity)
{
$audit = new AuditTrail();
$audit->user_id = Auth::guard('admin')->id(); // Tetap coba ambil ID jika ada (misal saat logout)
$audit->ip_address = Request::ip();
$audit->activity = $activity;
$audit->action = $action;
$audit->user_agent = Request::userAgent();
$audit->browser = self::getBrowserName(Request::userAgent());
$audit->save();
}
/**
* Helper internal untuk deteksi browser yang lebih bersih
*/
private static function getBrowserName($userAgent)
{
if (!$userAgent) return 'Unknown';
if (strpos($userAgent, 'Opera') || strpos($userAgent, 'OPR')) return 'Opera';
if (strpos($userAgent, 'Edge')) return 'Edge';
if (strpos($userAgent, 'Chrome')) return 'Chrome';
if (strpos($userAgent, 'Safari')) return 'Safari';
if (strpos($userAgent, 'Firefox')) return 'Firefox';
if (strpos($userAgent, 'MSIE') || strpos($userAgent, 'Trident/7')) return 'Internet Explorer';
return explode('/', $userAgent)[0] ?? 'Unknown';
}
}