diff options
author | Roger Braun <roger@rogerbraun.net> | 2017-04-14 18:15:15 +0200 |
---|---|---|
committer | Roger Braun <roger@rogerbraun.net> | 2017-04-14 18:15:15 +0200 |
commit | f4eea0847b4bfcc2a2e6e0c80480ca5818f17aa9 (patch) | |
tree | c615506d8ba5e20b31d09120682611090653661e /lib/pleroma/web/twitter_api | |
parent | a926038cd096d3340749f071a183c46a987e8c77 (diff) | |
download | pleroma-f4eea0847b4bfcc2a2e6e0c80480ca5818f17aa9.tar.gz |
Add unfavoriting to TwAPI.
Diffstat (limited to 'lib/pleroma/web/twitter_api')
-rw-r--r-- | lib/pleroma/web/twitter_api/twitter_api.ex | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/pleroma/web/twitter_api/twitter_api.ex b/lib/pleroma/web/twitter_api/twitter_api.ex index d6ef0f4ed..a23f465d4 100644 --- a/lib/pleroma/web/twitter_api/twitter_api.ex +++ b/lib/pleroma/web/twitter_api/twitter_api.ex @@ -137,6 +137,19 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPI do {:ok, status} end + def unfavorite(%User{} = user, %Activity{data: %{"object" => object}} = activity) do + object = Object.get_by_ap_id(object["id"]) + + {:ok, object} = ActivityPub.unlike(user, object) + new_data = activity.data + |> Map.put("object", object.data) + + status = %{activity | data: new_data} + |> activity_to_status(%{for: user}) + + {:ok, status} + end + def upload(%Plug.Upload{} = file, format \\ "xml") do {:ok, object} = ActivityPub.upload(file) |