diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pleroma/web/controller/frontend_controller.ex | 26 | ||||
-rw-r--r-- | lib/pleroma/web/feed/user_controller.ex | 2 | ||||
-rw-r--r-- | lib/pleroma/web/ostatus/ostatus_controller.ex | 8 | ||||
-rw-r--r-- | lib/pleroma/web/router.ex | 12 |
4 files changed, 27 insertions, 21 deletions
diff --git a/lib/pleroma/web/controller/frontend_controller.ex b/lib/pleroma/web/controller/frontend_controller.ex index 5fa4e6391..2e9082db1 100644 --- a/lib/pleroma/web/controller/frontend_controller.ex +++ b/lib/pleroma/web/controller/frontend_controller.ex @@ -13,7 +13,7 @@ defmodule Pleroma.Web.FrontendController do end def registration_page(conn, params) do - redirector(conn, params) + index(conn, params) end def api_not_implemented(conn, _params) do @@ -28,7 +28,7 @@ defmodule Pleroma.Web.FrontendController do |> text("") end - def redirector(conn, _params) do + def index(conn, _params) do {:ok, path} = Pleroma.Frontend.file_path("index.html") conn @@ -36,28 +36,28 @@ defmodule Pleroma.Web.FrontendController do |> send_file(conn.status || 200, path) end - def redirector_with_preload(conn, %{"path" => ["pleroma", "admin"]}) do + def index_with_preload(conn, %{"path" => ["pleroma", "admin"]}) do redirect(conn, to: "/pleroma/admin/") end - def redirector_with_preload(conn, params) do + def index_with_preload(conn, params) do index_with_generated_data(conn, params, [:preload]) end - def redirector_with_meta(conn, %{"maybe_nickname_or_id" => maybe_nickname_or_id} = params) do + def index_with_meta(conn, %{"maybe_nickname_or_id" => maybe_nickname_or_id} = params) do with %User{} = user <- User.get_cached_by_nickname_or_id(maybe_nickname_or_id) do - redirector_with_meta(conn, %{user: user}) + index_with_meta(conn, %{user: user}) else nil -> - redirector(conn, params) + index(conn, params) end end - def redirector_with_meta(conn, params) do + def index_with_meta(conn, params) do index_with_generated_data(conn, params, [:metadata, :preload]) end - def index_with_generated_data(conn, params, generators) do + defp index_with_generated_data(conn, params, generators) do {:ok, path} = Pleroma.Frontend.file_path("index.html") {:ok, index_content} = File.read(path) @@ -99,7 +99,13 @@ defmodule Pleroma.Web.FrontendController do end end - defoverridable redirector_with_preload: 2, fallback: 2 + defoverridable api_not_implemented: 2, + empty: 2, + fallback: 2, + index: 2, + index_with_preload: 2, + index_with_meta: 2, + registration_page: 2 end end diff --git a/lib/pleroma/web/feed/user_controller.ex b/lib/pleroma/web/feed/user_controller.ex index 47c3dba35..eb1b66e74 100644 --- a/lib/pleroma/web/feed/user_controller.ex +++ b/lib/pleroma/web/feed/user_controller.ex @@ -18,7 +18,7 @@ defmodule Pleroma.Web.Feed.UserController do with {_, %User{} = user} <- {:fetch_user, User.get_cached_by_nickname_or_id(nickname)} do conn |> Map.put(:params, %{user: user}) - |> Pleroma.Web.FrontendController.call(:redirector_with_meta) + |> Pleroma.Web.FrontendController.call(:index_with_meta) end end diff --git a/lib/pleroma/web/ostatus/ostatus_controller.ex b/lib/pleroma/web/ostatus/ostatus_controller.ex index e6ce1d350..a1b8a3adc 100644 --- a/lib/pleroma/web/ostatus/ostatus_controller.ex +++ b/lib/pleroma/web/ostatus/ostatus_controller.ex @@ -99,16 +99,16 @@ defmodule Pleroma.Web.OStatus.OStatusController do conn |> Map.put(:params, params) - |> Pleroma.Web.FrontendController.call(:redirector_with_meta) + |> Pleroma.Web.FrontendController.call(:index_with_meta) true -> - Pleroma.Web.FrontendController.call(conn, :redirector) + Pleroma.Web.FrontendController.call(conn, :index) end else reason when reason in [{:public?, false}, {:activity, nil}] -> conn |> put_status(404) - |> Pleroma.Web.FrontendController.call(:redirector) + |> Pleroma.Web.FrontendController.call(:index) e -> e @@ -135,7 +135,7 @@ defmodule Pleroma.Web.OStatus.OStatusController do _error -> conn |> put_status(404) - |> Pleroma.Web.FrontendController.call(:redirector) + |> Pleroma.Web.FrontendController.call(:index) end end diff --git a/lib/pleroma/web/router.ex b/lib/pleroma/web/router.ex index 3cf5728f0..599d0e196 100644 --- a/lib/pleroma/web/router.ex +++ b/lib/pleroma/web/router.ex @@ -714,12 +714,12 @@ defmodule Pleroma.Web.Router do get("/check_password", MongooseIMController, :check_password) end - scope "/" do - get("/registration/:token", Pleroma.Web.FrontendController, :registration_page) - get("/:maybe_nickname_or_id", Pleroma.Web.FrontendController, :redirector_with_meta) - get("/api*path", Pleroma.Web.FrontendController, :api_not_implemented) - get("/*path", Pleroma.Web.FrontendController, :redirector_with_preload) + scope "/", Pleroma.Web do + get("/registration/:token", FrontendController, :registration_page) + get("/:maybe_nickname_or_id", FrontendController, :index_with_meta) + get("/api*path", FrontendController, :api_not_implemented) + get("/*path", FrontendController, :index_with_preload) - options("/*path", Pleroma.Web.FrontendController, :empty) + options("/*path", FrontendController, :empty) end end |