Premier commit

This commit is contained in:
jeremy bayse
2026-02-09 11:27:21 +01:00
commit 89a369964d
114 changed files with 17837 additions and 0 deletions

View File

@@ -0,0 +1,52 @@
<?php
namespace App\Observers;
use App\Models\Contract;
use App\Models\AuditLog;
use Illuminate\Support\Facades\Auth;
class ContractObserver
{
/**
* Handle the Contract "created" event.
*/
public function created(Contract $contract): void
{
AuditLog::create([
'user_id' => Auth::id(),
'action' => 'contract_created',
'description' => "Contract {$contract->name} created.",
'ip_address' => request()->ip(),
'user_agent' => request()->userAgent(),
'changes' => $contract->getAttributes(),
]);
}
/**
* Handle the Contract "updated" event.
*/
public function updated(Contract $contract): void
{
AuditLog::create([
'user_id' => Auth::id(),
'action' => 'contract_updated',
'description' => "Contract {$contract->name} updated.",
'ip_address' => request()->ip(),
'changes' => $contract->getChanges(),
]);
}
/**
* Handle the Contract "deleted" event.
*/
public function deleted(Contract $contract): void
{
AuditLog::create([
'user_id' => Auth::id(),
'action' => 'contract_deleted',
'description' => "Contract {$contract->name} deleted.",
'ip_address' => request()->ip(),
]);
}
}