refactor(auth): centralize role checks into utility

Removed direct user role string checks and replaced with type-safe utils.
This commit is contained in:
2026-06-16 18:30:26 +02:00 Unverified
parent b75e7bbafd
commit 942143ddc7
7 changed files with 61 additions and 26 deletions
+5 -1
View File
@@ -129,7 +129,9 @@ const handleStatusUpdate = async () => {
}
const handleAssignTeam = async () => {
if (isAdmin(user.value?.role)) return
if (!selectedTeamId.value) return
isAssigning.value = true
try {
const res = await assignTeam(reportId, {
@@ -229,6 +231,8 @@ const handleSendMessage = async (msgText: string, files: File[]) => {
const canFlagMessage = (message: Message) => {
if (!user.value) return false
if (isAdmin(user.value?.role)) return false
const isCitizenMessage = message.user_id !== user.value.id && message.user_id === report.value?.user_id
const isAlreadyFlagged = flaggedMessageIds.value.includes(message.id)
return isCitizenMessage && !isAlreadyFlagged
@@ -408,7 +412,7 @@ const formattedInterventionLinkExpiry = computed(() =>
</p>
</div>
</div>
<div class="card-body pt-0">
<div v-if="!isAdmin(user?.role)" class="card-body pt-0">
<button class="btn btn-outline-primary w-100" @click="isAssignModalOpen = true" :disabled="teams.length === 0">
Assegna team
</button>