refactor: simplify system role deletion validation

Remove redundant action_type check since validation already
runs only on destroy actions. Add field to error for better
error handling.
This commit is contained in:
Moritz 2026-01-06 18:37:34 +01:00
parent 9bb0fe5e37
commit 557eb4d27d

View file

@ -88,14 +88,11 @@ defmodule Mv.Authorization.Role do
message: "must be one of: own_data, read_only, normal_user, admin"
validate fn changeset, _context ->
if changeset.action_type == :destroy do
if changeset.data.is_system_role do
{:error,
message:
"Cannot delete system role. System roles are required for the application to function."}
else
:ok
end
if changeset.data.is_system_role do
{:error,
field: :is_system_role,
message:
"Cannot delete system role. System roles are required for the application to function."}
else
:ok
end