Parcourir la source

Deny whitespace statuses

tags/v0.9.9
dtluna il y a 7 ans
Parent
révision
5b6070ec40
2 fichiers modifiés avec 12 ajouts et 5 suppressions
  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 Voir le fichier

@@ -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 Voir le fichier

@@ -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


Chargement…
Annuler
Enregistrer