Made auth customization be runtime-configurable.
This commit is contained in:
parent
e98d34e5fb
commit
b6f915313f
|
@ -5,14 +5,16 @@
|
|||
defmodule Pleroma.Web.Auth.DatabaseAuthenticator do
|
||||
alias Pleroma.User
|
||||
|
||||
@implementation Pleroma.Config.get(
|
||||
def implementation do
|
||||
Pleroma.Config.get(
|
||||
Pleroma.Web.Auth.DatabaseAuthenticator,
|
||||
Pleroma.Web.Auth.PleromaDatabaseAuthenticator
|
||||
)
|
||||
end
|
||||
|
||||
@callback get_user(Plug.Conn.t()) :: {:ok, User.t()} | {:error, any()}
|
||||
defdelegate get_user(plug), to: @implementation
|
||||
def get_user(plug), do: implementation().get_user(plug)
|
||||
|
||||
@callback handle_error(Plug.Conn.t(), any()) :: any()
|
||||
defdelegate handle_error(plug, error), to: @implementation
|
||||
def handle_error(plug, error), do: implementation().handle_error(plug, error)
|
||||
end
|
||||
|
|
|
@ -25,7 +25,7 @@ def authorize(conn, params) do
|
|||
available_scopes = (app && app.scopes) || []
|
||||
scopes = oauth_scopes(params, nil) || available_scopes
|
||||
|
||||
template = Application.get_env(:pleroma, :auth_template, "show.html")
|
||||
template = Pleroma.Config.get(:auth_template, "show.html")
|
||||
|
||||
render(conn, template, %{
|
||||
response_type: params["response_type"],
|
||||
|
|
|
@ -27,7 +27,11 @@ def controller do
|
|||
import Pleroma.Web.Gettext
|
||||
import Pleroma.Web.Router.Helpers
|
||||
|
||||
plug(:put_layout, Application.get_env(:pleroma, :app_layout, "app.html"))
|
||||
plug(:set_put_layout)
|
||||
|
||||
defp set_put_layout(conn, _) do
|
||||
put_layout(conn, Pleroma.Config.get(:app_layout, "app.html"))
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in New Issue