aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/pleroma/upload.ex6
-rw-r--r--lib/pleroma/web/twitter_api/twitter_api.ex10
2 files changed, 12 insertions, 4 deletions
diff --git a/lib/pleroma/upload.ex b/lib/pleroma/upload.ex
index 158656e92..d22421d37 100644
--- a/lib/pleroma/upload.ex
+++ b/lib/pleroma/upload.ex
@@ -8,7 +8,11 @@ defmodule Pleroma.Upload do
%{
"type" => "Image",
- "href" => url_for(Path.join(uuid, file.filename)),
+ "url" => [%{
+ "type" => "Link",
+ "mediaType" => file.content_type,
+ "href" => url_for(Path.join(uuid, file.filename))
+ }],
"name" => file.filename,
"uuid" => uuid
}
diff --git a/lib/pleroma/web/twitter_api/twitter_api.ex b/lib/pleroma/web/twitter_api/twitter_api.ex
index b6e7d5cc6..0624e73aa 100644
--- a/lib/pleroma/web/twitter_api/twitter_api.ex
+++ b/lib/pleroma/web/twitter_api/twitter_api.ex
@@ -99,6 +99,10 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPI do
def upload(%Plug.Upload{} = file) do
{:ok, object} = ActivityPub.upload(file)
+ url = List.first(object.data["url"])
+ href = url["href"]
+ type = url["mediaType"]
+
# Fake this as good as possible...
"""
<?xml version="1.0" encoding="UTF-8"?>
@@ -106,9 +110,9 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPI do
<mediaid>#{object.id}</mediaid>
<media_id>#{object.id}</media_id>
<media_id_string>#{object.id}</media_id_string>
- <media_url>#{object.data["href"]}</media_url>
- <mediaurl>#{object.data["href"]}</mediaurl>
- <atom:link rel="enclosure" href="#{object.data["href"]}" type="image"></atom:link>
+ <media_url>#{href}</media_url>
+ <mediaurl>#{href}</mediaurl>
+ <atom:link rel="enclosure" href="#{href}" type="#{type}"></atom:link>
</rsp>
"""
end