hasRole(['admin', 'amministratore']); } /** * Determine whether the user can view the model. */ public function view(User $user, PianoRateizzazione $pianoRateizzazione): bool { if ($user->hasRole('admin')) { return true; } if ($user->hasRole('amministratore')) { return $pianoRateizzazione->ripartizioneSpese->voceSpesa->stabile->amministratore_id === $user->amministratore->id_amministratore; } return false; } /** * Determine whether the user can create models. */ public function create(User $user): bool { return $user->hasRole(['admin', 'amministratore']); } /** * Determine whether the user can update the model. */ public function update(User $user, PianoRateizzazione $pianoRateizzazione): bool { if ($user->hasRole('admin')) { return true; } if ($user->hasRole('amministratore')) { return $pianoRateizzazione->ripartizioneSpese->voceSpesa->stabile->amministratore_id === $user->amministratore->id_amministratore; } return false; } /** * Determine whether the user can delete the model. */ public function delete(User $user, PianoRateizzazione $pianoRateizzazione): bool { if ($user->hasRole('admin')) { return true; } if ($user->hasRole('amministratore')) { return $pianoRateizzazione->ripartizioneSpese->voceSpesa->stabile->amministratore_id === $user->amministratore->id_amministratore; } return false; } /** * Determine whether the user can restore the model. */ public function restore(User $user, PianoRateizzazione $pianoRateizzazione): bool { return $this->delete($user, $pianoRateizzazione); } /** * Determine whether the user can permanently delete the model. */ public function forceDelete(User $user, PianoRateizzazione $pianoRateizzazione): bool { return $user->hasRole('admin'); } }