summaryrefslogtreecommitdiff
path: root/lib/aggiedit_web/channels/user_socket.ex
blob: b7c0124b78f66d0c8f971f02bd2ecbe39eeede27 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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