25 lines
1.5 KiB
Plaintext
25 lines
1.5 KiB
Plaintext
<div class="flex align-center gap-half pad-inline">
|
|
<%= avatar_tag user, loading: :lazy, class: "flex-item-no-shrink" %>
|
|
|
|
<strong class="overflow-ellipsis">
|
|
<%= link_to user.name, user_path(user), class: "txt-ink btn btn--plain" %>
|
|
</strong>
|
|
|
|
<hr class="separator--horizontal flex-item-grow" style="--border-color: var(--color-subtle-dark); --border-style: dashed" aria-hidden="true">
|
|
|
|
<%= form_with model: user, url: account_user_path(user), data: { controller: "form" }, method: :patch do | form | %>
|
|
<label class="btn txt-small flex-item-no-shrink" for="<%= dom_id(user, :role) %>" arial-label="Role: <%= user.admin? ? "Administrator" : "Member" %>">
|
|
<%= image_tag "crown.svg", size: 20, aria: { hidden: "true" } %>
|
|
<%= form.check_box :role, { data: { action: "form#submit" }, disabled: !Current.user.can_administer?(user), hidden: true, id: dom_id(user, :role) }, "admin", "member" %>
|
|
</label>
|
|
<% end %>
|
|
|
|
<%# FIXME: Move this Current.user check to a stimulus controller that just checks for admin? or the like we so we can cache user list %>
|
|
<%= button_to account_user_path(user), method: :delete, class: "btn btn--small btn--negative flex-item-no-shrink",
|
|
disabled: !Current.user.can_administer?(user),
|
|
data: { turbo_confirm: "Are you sure you want to permanently remove this person from the account?" } do %>
|
|
<%= icon_tag "minus" %>
|
|
<span class="for-screen-reader">Remove <%= user.name %> from the account</span>
|
|
<% end %>
|
|
</div>
|