defmodule ClacksWeb.ActivitiesController do use ClacksWeb, :controller alias Clacks.Activity alias ClacksWeb.Router.Helpers, as: Routes alias ClacksWeb.Endpoint def get(conn, %{"id" => id}) do case Activity.get(id) do %Activity{local: true, data: data} -> case conn.assigns[:format] do "activity+json" -> json(conn, data) "html" -> redirect(conn, to: Routes.frontend_path(Endpoint, :status, id)) end _ -> case conn.assigns[:format] do "activity+json" -> conn |> put_status(404) |> json(%{error: "Not Found"}) "html" -> resp(conn, 404, "Not Found") end end end end