end
def status_update(%{assigns: %{user: user}} = conn, %{"status" => status_text} = status_data) do
- if status_text |> String.trim |> String.length != 0 do
+ l = status_text |> String.trim |> String.length
+ if l > 0 && l < 5000 do
media_ids = extract_media_ids(status_data)
{:ok, activity} = TwitterAPI.create_status(user, Map.put(status_data, "media_ids", media_ids))
conn
end
end
+ def public_and_external_timeline(%{assigns: %{user: user}} = conn, params) do
+ statuses = TwitterAPI.fetch_public_and_external_statuses(user, params)
+ {:ok, json} = Poison.encode(statuses)
+
+ conn
+ |> json_reply(200, json)
+ end
+
def public_timeline(%{assigns: %{user: user}} = conn, params) do
statuses = TwitterAPI.fetch_public_statuses(user, params)
{:ok, json} = Poison.encode(statuses)
|> json_reply(200, response)
end
+ def external_profile(%{assigns: %{user: current_user}} = conn, %{"profileurl" => uri}) do
+ with {:ok, user_map} <- TwitterAPI.get_external_profile(current_user, uri),
+ response <- Poison.encode!(user_map) do
+ conn
+ |> json_reply(200, response)
+ end
+ end
+
defp bad_request_reply(conn, error_message) do
json = error_json(conn, error_message)
json_reply(conn, 400, json)