Compare commits

..

1 commit

Author SHA1 Message Date
f0134f00ee Docs: note User-Member Linking enforcement in code
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
- update_user restricted via ActorIsAdmin; Form gates Member-Linking UI
2026-01-30 11:13:41 +01:00
2 changed files with 4 additions and 1 deletions

View file

@ -120,6 +120,7 @@ defmodule Mv.Authorization.PermissionSets do
pages: [ pages: [
# No "/" - Mitglied must not see member index at root (same content as /members). # No "/" - Mitglied must not see member index at root (same content as /members).
# Own profile (sidebar links to /users/:id) and own user edit # Own profile (sidebar links to /users/:id) and own user edit
"/profile",
"/users/:id", "/users/:id",
"/users/:id/edit", "/users/:id/edit",
"/users/:id/show/edit", "/users/:id/show/edit",
@ -155,6 +156,7 @@ defmodule Mv.Authorization.PermissionSets do
pages: [ pages: [
"/", "/",
# Own profile (sidebar links to /users/:id; redirect target must be allowed) # Own profile (sidebar links to /users/:id; redirect target must be allowed)
"/profile",
"/users/:id", "/users/:id",
"/users/:id/edit", "/users/:id/edit",
"/users/:id/show/edit", "/users/:id/show/edit",
@ -204,6 +206,7 @@ defmodule Mv.Authorization.PermissionSets do
pages: [ pages: [
"/", "/",
# Own profile (sidebar links to /users/:id; redirect target must be allowed) # Own profile (sidebar links to /users/:id; redirect target must be allowed)
"/profile",
"/users/:id", "/users/:id",
"/users/:id/edit", "/users/:id/edit",
"/users/:id/show/edit", "/users/:id/show/edit",

View file

@ -95,7 +95,7 @@ defmodule MvWeb.UserLive.Form do
</ul> </ul>
</div> </div>
<%= if @user && @can_manage_member_linking do %> <%= if @user do %>
<div class="p-3 mt-3 border border-orange-200 rounded bg-orange-50"> <div class="p-3 mt-3 border border-orange-200 rounded bg-orange-50">
<p class="text-sm text-orange-800"> <p class="text-sm text-orange-800">
<strong>{gettext("Admin Note")}:</strong> {gettext( <strong>{gettext("Admin Note")}:</strong> {gettext(