Browse Source

Add attachment link to posts.

tags/v0.9.9
Roger Braun 7 years ago
parent
commit
33c803d6da
2 changed files with 14 additions and 2 deletions
  1. +13
    -1
      lib/pleroma/web/twitter_api/twitter_api.ex
  2. +1
    -1
      test/web/twitter_api/twitter_api_test.exs

+ 13
- 1
lib/pleroma/web/twitter_api/twitter_api.ex View File

@@ -32,11 +32,23 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPI do

def get_replied_to_activity(_), do: nil

def add_attachments(text, attachments) do
attachment_text = Enum.map(attachments, fn
(%{"url" => [%{"href" => href} | _]}) ->
"<a href='#{href}'>#{href}</a>"
_ -> ""
end)
Enum.join([text | attachment_text], "<br>")
end

def create_status(user = %User{}, data = %{"status" => status}) do
attachments = attachments_from_ids(data["media_ids"])
context = ActivityPub.generate_context_id
mentions = parse_mentions(status)
content_html = format_input(status, mentions)
content_html = status
|> format_input(mentions)
|> add_attachments(attachments)

to = to_for_user_and_mentions(user, mentions)
date = make_date()



+ 1
- 1
test/web/twitter_api/twitter_api_test.exs View File

@@ -33,7 +33,7 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPITest do

{ :ok, activity = %Activity{} } = TwitterAPI.create_status(user, input)

assert get_in(activity.data, ["object", "content"]) == "Hello again, <a href='shp'>@shp</a>.<br>This is on another line."
assert get_in(activity.data, ["object", "content"]) == "Hello again, <a href='shp'>@shp</a>.<br>This is on another line.<br><a href='http://example.org/image.jpg'>http://example.org/image.jpg</a>"
assert get_in(activity.data, ["object", "type"]) == "Note"
assert get_in(activity.data, ["object", "actor"]) == user.ap_id
assert get_in(activity.data, ["actor"]) == user.ap_id


Loading…
Cancel
Save