mirror of
https://github.com/ClaperCo/Claper.git
synced 2026-02-24 12:09:59 +01:00
30 lines
783 B
Elixir
30 lines
783 B
Elixir
defmodule ClaperWeb.MailboxGuard do
|
|
import Plug.Conn
|
|
import Phoenix.Controller
|
|
|
|
def init(default), do: default
|
|
|
|
def call(conn, _params \\ %{}) do
|
|
mailbox_username =
|
|
Application.get_env(:claper, ClaperWeb.MailboxGuard) |> Keyword.get(:username)
|
|
|
|
mailbox_password =
|
|
Application.get_env(:claper, ClaperWeb.MailboxGuard) |> Keyword.get(:password)
|
|
|
|
mailbox_enabled =
|
|
Application.get_env(:claper, ClaperWeb.MailboxGuard) |> Keyword.get(:enabled)
|
|
|
|
IO.puts(mailbox_enabled)
|
|
|
|
if mailbox_enabled do
|
|
if mailbox_username && mailbox_password do
|
|
Plug.BasicAuth.basic_auth(conn, username: mailbox_username, password: mailbox_password)
|
|
else
|
|
conn
|
|
end
|
|
else
|
|
conn |> redirect(to: "/") |> halt()
|
|
end
|
|
end
|
|
end
|