diff options
Diffstat (limited to 'lib/lsg_web/controllers/page_controller.ex')
-rw-r--r-- | lib/lsg_web/controllers/page_controller.ex | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/lib/lsg_web/controllers/page_controller.ex b/lib/lsg_web/controllers/page_controller.ex deleted file mode 100644 index 2ac4d0a..0000000 --- a/lib/lsg_web/controllers/page_controller.ex +++ /dev/null @@ -1,53 +0,0 @@ -defmodule NolaWeb.PageController do - use NolaWeb, :controller - - plug NolaWeb.ContextPlug when action not in [:token] - plug NolaWeb.ContextPlug, [restrict: :public] when action in [:token] - - def token(conn, %{"token" => token}) do - with \ - {:ok, account, perks} <- Nola.AuthToken.lookup(token) - do - IO.puts("Authenticated account #{inspect account}") - conn = put_session(conn, :account, account) - case perks do - nil -> redirect(conn, to: "/") - {:redirect, path} -> redirect(conn, to: path) - {:external_redirect, url} -> redirect(conn, external: url) - end - else - z -> - IO.inspect(z) - text(conn, "Error: invalid or expired token") - end - end - - def index(conn = %{assigns: %{account: account}}, _) do - memberships = IRC.Membership.of_account(account) - users = IRC.UserTrack.find_by_account(account) - metas = IRC.Account.get_all_meta(account) - predicates = IRC.Account.get_predicates(account) - conn - |> assign(:title, account.name) - |> render("user.html", users: users, memberships: memberships, metas: metas, predicates: predicates) - end - - def irc(conn, _) do - bot_helps = for mod <- Nola.IRC.env(:handlers) do - mod.irc_doc() - end - render conn, "irc.html", bot_helps: bot_helps - end - - def authenticate(conn, _) do - with \ - {:account, account_id} when is_binary(account_id) <- {:account, get_session(conn, :account)}, - {:account, account} when not is_nil(account) <- {:account, IRC.Account.get(account_id)} - do - assign(conn, :account, account) - else - _ -> conn - end - end - -end |