From e18918fa6113985e4f6eab8aeb4847b41232116a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Munsch?= Date: Thu, 14 Dec 2023 13:05:35 +0100 Subject: [PATCH] Dossier model refactor getMediacountAttribute --- app/Models/Dossier.php | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/app/Models/Dossier.php b/app/Models/Dossier.php index ded0a79..31f435b 100644 --- a/app/Models/Dossier.php +++ b/app/Models/Dossier.php @@ -73,19 +73,23 @@ class Dossier extends Model /** @var \App\Model\User $user */ $user = Auth::user(); - // * dossier classic - if ($this->parent_id != 1 && $this->id != 1) { - if ($user->hasRole(config('roles.const.ADMIN'))) { - return $this->mediaList()->count(); - } else { - return $this->mediaList() - ->where('statut', '<>', MediaStatut::brouillon) - ->orWhere('created_by', $user->id)->count(); - } - } else { - // * dossier dépôt + // ? Est un dossier dépot ? + if ($this->parent_id === 1 && $this->id === 1) { + // * Dossier dépôt return $this->mediaList()->count(); } + + // * Dossier classic + // ? User is admin ? + if ($user->hasRole(config('roles.const.ADMIN'))) { + // * Tout de tout le monde + return $this->mediaList()->count(); + } + + // * Tous les non brouillons ou crées par le user + return $this->mediaList() + ->where('statut', '<>', MediaStatut::brouillon) + ->orWhere('created_by', $user->id); } // * RELATIONSHIPS