From 54833a92cae41ed4975490a7d9ee34b90da6ceb7 Mon Sep 17 00:00:00 2001 From: KKlochko Date: Mon, 21 Apr 2025 16:46:30 +0300 Subject: [PATCH] Update User and Book LiveView to handle changed params. --- .../live/book_live/index.ex | 15 ++++++++------- .../live/user_live/index.ex | 14 +++++++------- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/lib/decentralised_book_index_web/live/book_live/index.ex b/lib/decentralised_book_index_web/live/book_live/index.ex index b16db42..242cb41 100644 --- a/lib/decentralised_book_index_web/live/book_live/index.ex +++ b/lib/decentralised_book_index_web/live/book_live/index.ex @@ -60,7 +60,12 @@ defmodule DecentralisedBookIndexWeb.BookLive.Index do end @impl true - def mount(params, _session, socket) do + def mount(_params, _session, socket) do + {:ok, socket} + end + + @impl true + def handle_params(params, _url, socket) do search_query = Map.get(params, "query", "") sort_by = Map.get(params, "sort_by", "title") |> validate_sort_by() search_mode = Map.get(params, "search_mode", "title") |> validate_search_mode() @@ -89,13 +94,9 @@ defmodule DecentralisedBookIndexWeb.BookLive.Index do |> assign(:page, page) |> assign(:params, params) |> assign_new(:current_user, fn -> nil end) + |> apply_action(socket.assigns.live_action, params) - {:ok, socket} - end - - @impl true - def handle_params(params, _url, socket) do - {:noreply, apply_action(socket, socket.assigns.live_action, params)} + {:noreply, socket} end defp apply_action(socket, :edit, %{"id" => id}) do diff --git a/lib/decentralised_book_index_web/live/user_live/index.ex b/lib/decentralised_book_index_web/live/user_live/index.ex index b5901fe..1656093 100644 --- a/lib/decentralised_book_index_web/live/user_live/index.ex +++ b/lib/decentralised_book_index_web/live/user_live/index.ex @@ -61,7 +61,12 @@ defmodule DecentralisedBookIndexWeb.UserLive.Index do end @impl true - def mount(params, _session, socket) do + def mount(_params, _session, socket) do + {:ok, socket} + end + + @impl true + def handle_params(params, _url, socket) do search_query = Map.get(params, "query", "") sort_by = Map.get(params, "sort_by", "name") |> validate_sort_by() page_params = AshPhoenix.LiveView.page_from_params(params, 10) @@ -84,12 +89,7 @@ defmodule DecentralisedBookIndexWeb.UserLive.Index do |> assign(:params, params) |> apply_action(socket.assigns.live_action, params) - {:ok, socket} - end - - @impl true - def handle_params(params, _url, socket) do - {:noreply, apply_action(socket, socket.assigns.live_action, params)} + {:noreply, socket} end defp apply_action(socket, :index, _params) do