Small UX fixes closes #281 #293
2 changed files with 5 additions and 1 deletions
|
|
@ -1126,6 +1126,9 @@ defmodule MvWeb.MemberLive.Index do
|
|||
|
||||
# Updates selection-related assigns (selected_count, any_selected?, mailto_bcc)
|
||||
# to avoid recalculating Enum.any? and Enum.count multiple times in templates.
|
||||
#
|
||||
# Note: Mailto URLs have length limits that vary by email client.
|
||||
# For large selections, consider using export functionality instead.
|
||||
defp update_selection_assigns(socket) do
|
||||
members = socket.assigns.members
|
||||
selected_members = socket.assigns.selected_members
|
||||
|
|
@ -1140,6 +1143,7 @@ defmodule MvWeb.MemberLive.Index do
|
|||
if any_selected? do
|
||||
format_selected_member_emails(members, selected_members)
|
||||
|> Enum.join(", ")
|
||||
|> URI.encode_www_form()
|
||||
else
|
||||
""
|
||||
end
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@
|
|||
<.button
|
||||
class="secondary"
|
||||
id="open-email-btn"
|
||||
href={"mailto:?bcc=" <> URI.encode(@mailto_bcc)}
|
||||
href={"mailto:?bcc=" <> @mailto_bcc}
|
||||
disabled={not @any_selected?}
|
||||
aria-label={gettext("Open email program with BCC recipients")}
|
||||
>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue