osb/app/Traits/ScopeAccountUserAuthorised.php
Deon George ef0d4dc773
All checks were successful
Create Docker Image / Build Docker Image (x86_64) (push) Successful in 55s
Create Docker Image / Final Docker Image Manifest (push) Successful in 12s
Change ScopeServiceUserAuthorised to ScopeAccountUserAuthorised. Scope payments to AccountUserAuthorised, and added PaymentPolicy
2024-08-10 23:53:13 +10:00

29 lines
574 B
PHP

<?php
/**
* Add a ScopeAuthorised to an Eloquent Model
* This will help limit the scope of accounts that a user can see.
*/
namespace App\Traits;
use Illuminate\Support\Facades\Auth;
use App\Models\User;
trait ScopeAccountUserAuthorised
{
/**
* Only query records that the user is authorised to see
*/
public function scopeAccountUserAuthorised($query,string $table=NULL,User $uo=NULL)
{
if (! $uo)
$uo = Auth::user();
if (! $table)
$table = $this->getTable();
return $query
->whereIN($table.'.account_id',$uo->accounts_all->pluck('id'));
}
}