Browse Source

Made auth customization be runtime-configurable.

tags/v1.1.4
Ivan Tashkinov 5 years ago
parent
commit
b6f915313f
3 changed files with 14 additions and 8 deletions
  1. +8
    -6
      lib/pleroma/web/auth/database_authenticator.ex
  2. +1
    -1
      lib/pleroma/web/oauth/oauth_controller.ex
  3. +5
    -1
      lib/pleroma/web/web.ex

+ 8
- 6
lib/pleroma/web/auth/database_authenticator.ex View File

@@ -5,14 +5,16 @@
defmodule Pleroma.Web.Auth.DatabaseAuthenticator do
alias Pleroma.User

@implementation Pleroma.Config.get(
Pleroma.Web.Auth.DatabaseAuthenticator,
Pleroma.Web.Auth.PleromaDatabaseAuthenticator
)
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

+ 1
- 1
lib/pleroma/web/oauth/oauth_controller.ex View File

@@ -25,7 +25,7 @@ defmodule Pleroma.Web.OAuth.OAuthController 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"],


+ 5
- 1
lib/pleroma/web/web.ex View File

@@ -27,7 +27,11 @@ defmodule Pleroma.Web 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…
Cancel
Save