fix linting
This commit is contained in:
parent
80fe73a561
commit
e68a7cf8c7
4 changed files with 456 additions and 390 deletions
|
|
@ -245,7 +245,10 @@ defmodule MvWeb.MemberLive.Index do
|
|||
new_show_current,
|
||||
socket.assigns.boolean_custom_field_filters
|
||||
)
|
||||
|> maybe_add_field_selection(socket.assigns[:user_field_selection], socket.assigns[:fields_in_url?] || false)
|
||||
|> maybe_add_field_selection(
|
||||
socket.assigns[:user_field_selection],
|
||||
socket.assigns[:fields_in_url?] || false
|
||||
)
|
||||
|
||||
new_path = ~p"/members?#{query_params}"
|
||||
|
||||
|
|
@ -352,7 +355,10 @@ defmodule MvWeb.MemberLive.Index do
|
|||
socket.assigns.show_current_cycle,
|
||||
socket.assigns.boolean_custom_field_filters
|
||||
)
|
||||
|> maybe_add_field_selection(socket.assigns[:user_field_selection], socket.assigns[:fields_in_url?] || false)
|
||||
|> maybe_add_field_selection(
|
||||
socket.assigns[:user_field_selection],
|
||||
socket.assigns[:fields_in_url?] || false
|
||||
)
|
||||
|
||||
{:noreply, push_patch(socket, to: ~p"/members?#{query_params}", replace: true)}
|
||||
end
|
||||
|
|
@ -374,7 +380,10 @@ defmodule MvWeb.MemberLive.Index do
|
|||
socket.assigns.show_current_cycle,
|
||||
socket.assigns.boolean_custom_field_filters
|
||||
)
|
||||
|> maybe_add_field_selection(socket.assigns[:user_field_selection], socket.assigns[:fields_in_url?] || false)
|
||||
|> maybe_add_field_selection(
|
||||
socket.assigns[:user_field_selection],
|
||||
socket.assigns[:fields_in_url?] || false
|
||||
)
|
||||
|
||||
new_path = ~p"/members?#{query_params}"
|
||||
|
||||
|
|
@ -398,7 +407,10 @@ defmodule MvWeb.MemberLive.Index do
|
|||
socket.assigns.show_current_cycle,
|
||||
socket.assigns.boolean_custom_field_filters
|
||||
)
|
||||
|> maybe_add_field_selection(socket.assigns[:user_field_selection], socket.assigns[:fields_in_url?] || false)
|
||||
|> maybe_add_field_selection(
|
||||
socket.assigns[:user_field_selection],
|
||||
socket.assigns[:fields_in_url?] || false
|
||||
)
|
||||
|
||||
new_path = ~p"/members?#{query_params}"
|
||||
{:noreply, push_patch(socket, to: new_path, replace: true)}
|
||||
|
|
@ -428,7 +440,10 @@ defmodule MvWeb.MemberLive.Index do
|
|||
socket.assigns.show_current_cycle,
|
||||
updated_filters
|
||||
)
|
||||
|> maybe_add_field_selection(socket.assigns[:user_field_selection], socket.assigns[:fields_in_url?] || false)
|
||||
|> maybe_add_field_selection(
|
||||
socket.assigns[:user_field_selection],
|
||||
socket.assigns[:fields_in_url?] || false
|
||||
)
|
||||
|
||||
new_path = ~p"/members?#{query_params}"
|
||||
{:noreply, push_patch(socket, to: new_path, replace: true)}
|
||||
|
|
@ -452,7 +467,10 @@ defmodule MvWeb.MemberLive.Index do
|
|||
socket.assigns.show_current_cycle,
|
||||
boolean_filters
|
||||
)
|
||||
|> maybe_add_field_selection(socket.assigns[:user_field_selection], socket.assigns[:fields_in_url?] || false)
|
||||
|> maybe_add_field_selection(
|
||||
socket.assigns[:user_field_selection],
|
||||
socket.assigns[:fields_in_url?] || false
|
||||
)
|
||||
|
||||
new_path = ~p"/members?#{query_params}"
|
||||
{:noreply, push_patch(socket, to: new_path, replace: true)}
|
||||
|
|
@ -542,11 +560,12 @@ defmodule MvWeb.MemberLive.Index do
|
|||
@impl true
|
||||
def handle_params(params, _url, socket) do
|
||||
prev_sig = build_signature(socket)
|
||||
|
||||
fields_in_url? =
|
||||
case Map.get(params, "fields") do
|
||||
v when is_binary(v) and v != "" -> true
|
||||
_ -> false
|
||||
end
|
||||
case Map.get(params, "fields") do
|
||||
v when is_binary(v) and v != "" -> true
|
||||
_ -> false
|
||||
end
|
||||
|
||||
url_selection = FieldSelection.parse_from_url(params)
|
||||
|
||||
|
|
@ -691,9 +710,10 @@ defmodule MvWeb.MemberLive.Index do
|
|||
defp maybe_add_field_selection(params, selection, true) when is_map(selection) do
|
||||
fields_param = FieldSelection.to_url_param(selection)
|
||||
|
||||
cond do
|
||||
fields_param == "" -> Map.delete(params, "fields")
|
||||
true -> Map.put(params, "fields", fields_param)
|
||||
if fields_param == "" do
|
||||
Map.delete(params, "fields")
|
||||
else
|
||||
Map.put(params, "fields", fields_param)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
@ -900,15 +920,23 @@ defmodule MvWeb.MemberLive.Index do
|
|||
defp maybe_sort(query, _field, nil, _custom_fields), do: {query, false}
|
||||
|
||||
defp maybe_sort(query, field, order, _custom_fields) do
|
||||
if computed_field?(field) do
|
||||
{query, false}
|
||||
else
|
||||
apply_sort_to_query(query, field, order)
|
||||
end
|
||||
end
|
||||
|
||||
defp computed_field?(field) do
|
||||
computed_atoms = FieldVisibility.computed_member_fields()
|
||||
computed_strings = Enum.map(computed_atoms, &Atom.to_string/1)
|
||||
|
||||
cond do
|
||||
# Block computed fields (atom and string variants)
|
||||
(is_atom(field) and field in computed_atoms) or
|
||||
(is_binary(field) and field in computed_strings) ->
|
||||
{query, false}
|
||||
(is_atom(field) and field in computed_atoms) or
|
||||
(is_binary(field) and field in computed_strings)
|
||||
end
|
||||
|
||||
defp apply_sort_to_query(query, field, order) do
|
||||
cond do
|
||||
# Custom field sort -> after load
|
||||
custom_field_sort?(field) ->
|
||||
{query, true}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue