Browse Source

Deny whitespace statuses

tags/v0.9.9
dtluna 7 years ago
parent
commit
5b6070ec40
2 changed files with 12 additions and 5 deletions
  1. +9
    -5
      lib/pleroma/web/twitter_api/twitter_api_controller.ex
  2. +3
    -0
      test/web/twitter_api/twitter_api_controller_test.exs

+ 9
- 5
lib/pleroma/web/twitter_api/twitter_api_controller.ex View File

@@ -16,11 +16,15 @@ defmodule Pleroma.Web.TwitterAPI.Controller do
empty_status_reply(conn)
end

def status_update(%{assigns: %{user: user}} = conn, %{"status" => _status_text} = status_data) do
media_ids = extract_media_ids(status_data)
{:ok, activity} = TwitterAPI.create_status(user, Map.put(status_data, "media_ids", media_ids ))
conn
|> json_reply(200, ActivityRepresenter.to_json(activity, %{user: user}))
def status_update(%{assigns: %{user: user}} = conn, %{"status" => status_text} = status_data) do
if status_text |> String.trim |> String.length != 0 do
media_ids = extract_media_ids(status_data)
{:ok, activity} = TwitterAPI.create_status(user, Map.put(status_data, "media_ids", media_ids ))
conn
|> json_reply(200, ActivityRepresenter.to_json(activity, %{user: user}))
else
empty_status_reply(conn)
end
end

def status_update(conn, _status_data) do


+ 3
- 0
test/web/twitter_api/twitter_api_controller_test.exs View File

@@ -42,6 +42,9 @@ defmodule Pleroma.Web.TwitterAPI.ControllerTest do
conn = conn_with_creds |> post(request_path, %{ status: "" })
assert json_response(conn, 400) == error_response

conn = conn_with_creds |> post(request_path, %{ status: " " })
assert json_response(conn, 400) == error_response

conn = conn_with_creds |> post(request_path, %{ status: "Nice meme." })
assert json_response(conn, 200) == ActivityRepresenter.to_map(Repo.one(Activity), %{user: user})
end


Loading…
Cancel
Save