diff options
Diffstat (limited to 'lib/aggiedit_web/channels/user_socket.ex')
-rw-r--r-- | lib/aggiedit_web/channels/user_socket.ex | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/lib/aggiedit_web/channels/user_socket.ex b/lib/aggiedit_web/channels/user_socket.ex new file mode 100644 index 0000000..b7c0124 --- /dev/null +++ b/lib/aggiedit_web/channels/user_socket.ex @@ -0,0 +1,17 @@ +defmodule AggieditWeb.UserSocket do + alias Aggiedit.Accounts + use Phoenix.Socket + + channel "post:*", AggieditWeb.PostChannel + + @impl true + def connect(_params, socket, %{:session => %{"user_token" => token}}) do + case Accounts.get_user_by_session_token(token) do + user=%Accounts.User{} -> {:ok, assign(socket, %{:current_user => user})} + _ -> {:error, "Invalid user token."} + end + end + + @impl true + def id(_socket), do: nil +end
\ No newline at end of file |