Changeset View
Changeset View
Standalone View
Standalone View
web/controllers/plugs/set_user.ex
defmodule KolabChat.Plugs.SetUser do | defmodule KolabChat.Plugs.SetUser do | ||||
import Plug.Conn | import Plug.Conn | ||||
alias KolabChat.Repo | |||||
alias KolabChat.User | |||||
def init(params), do: params | def init(params), do: params | ||||
def call(conn, _params) do | def call(conn, _params) do | ||||
user_id = get_session(conn, :user_id) | |||||
cond do | cond do | ||||
user = get_session(conn, :user) -> | user = user_id && Repo.get(User, user_id) -> | ||||
assign(conn, :user, user) | assign(conn, :user, user) | ||||
true -> | true -> | ||||
assign(conn, :user, nil) | assign(conn, :user, nil) | ||||
end | end | ||||
end | end | ||||
end | end |