diff options
| -rw-r--r-- | lib/pleroma/web/common_api/common_api.ex | 3 | ||||
| -rw-r--r-- | lib/pleroma/web/ostatus/activity_representer.ex | 8 | ||||
| -rw-r--r-- | test/web/ostatus/activity_representer_test.exs | 4 | ||||
| -rw-r--r-- | test/web/twitter_api/twitter_api_test.exs | 6 | 
4 files changed, 12 insertions, 9 deletions
| diff --git a/lib/pleroma/web/common_api/common_api.ex b/lib/pleroma/web/common_api/common_api.ex index 9bc7f2ce6..dc94e5377 100644 --- a/lib/pleroma/web/common_api/common_api.ex +++ b/lib/pleroma/web/common_api/common_api.ex @@ -59,7 +59,8 @@ defmodule Pleroma.Web.CommonAPI do           content_html <- make_content_html(status, mentions, attachments, tags),           context <- make_context(inReplyTo),           cw <- data["spoiler_text"], -         object <- make_note_data(user.ap_id, to, context, content_html, attachments, inReplyTo, tags, cw) do +         object <- make_note_data(user.ap_id, to, context, content_html, attachments, inReplyTo, tags, cw), +         object <- Map.put(object, "emoji", Formatter.get_emoji(status) |> Enum.reduce(%{}, fn({name, file}, acc) -> Map.put(acc, name, "#{Pleroma.Web.Endpoint.static_url}#{file}") end)) do        res = ActivityPub.create(to, user, context, object)        User.increase_note_count(user)        res diff --git a/lib/pleroma/web/ostatus/activity_representer.ex b/lib/pleroma/web/ostatus/activity_representer.ex index cfc342fca..aa2b1df39 100644 --- a/lib/pleroma/web/ostatus/activity_representer.ex +++ b/lib/pleroma/web/ostatus/activity_representer.ex @@ -56,9 +56,9 @@ defmodule Pleroma.Web.OStatus.ActivityRepresenter do    defp get_links(_activity), do: [] -  defp get_emoji_links(content) do -    Enum.map(Formatter.get_emoji(content), fn({emoji, file}) -> -      {:link, [name: to_charlist(emoji), rel: 'emoji', href: to_charlist("#{Pleroma.Web.Endpoint.static_url}#{file}")], []} +  defp get_emoji_links(emojis) do +    Enum.map(emojis, fn({emoji, file}) -> +      {:link, [name: to_charlist(emoji), rel: 'emoji', href: to_charlist(file)], []}      end)    end @@ -81,7 +81,7 @@ defmodule Pleroma.Web.OStatus.ActivityRepresenter do      categories = (activity.data["object"]["tag"] || [])      |> Enum.map(fn (tag) -> {:category, [term: to_charlist(tag)], []} end) -    emoji_links = get_emoji_links(activity.data["object"]["content"] || "") +    emoji_links = get_emoji_links(activity.data["object"]["emoji"] || %{})      summary = if activity.data["object"]["summary"] do        [{:summary, [], h.(activity.data["object"]["summary"])}] diff --git a/test/web/ostatus/activity_representer_test.exs b/test/web/ostatus/activity_representer_test.exs index 0d83ad964..ed7fdc432 100644 --- a/test/web/ostatus/activity_representer_test.exs +++ b/test/web/ostatus/activity_representer_test.exs @@ -41,7 +41,7 @@ defmodule Pleroma.Web.OStatus.ActivityRepresenterTest do      <link type="text/html" href="#{note_activity.data["object"]["id"]}" rel="alternate" />      <category term="2hu"/>      <link rel="mentioned" ostatus:object-type="http://activitystrea.ms/schema/1.0/collection" href="http://activityschema.org/collection/public"/> -    <link name="moominmamma" rel="emoji" href="#{Pleroma.Web.Endpoint.static_url}/finmoji/128px/moominmamma-128.png" /> +    <link name="2hu" rel="emoji" href="corndog.png" />      """      tuple = ActivityRepresenter.to_simple_form(note_activity, user) @@ -81,7 +81,7 @@ defmodule Pleroma.Web.OStatus.ActivityRepresenterTest do      <category term="2hu"/>      <thr:in-reply-to ref="#{note.data["object"]["id"]}" href="someurl" />      <link rel="mentioned" ostatus:object-type="http://activitystrea.ms/schema/1.0/collection" href="http://activityschema.org/collection/public"/> -    <link name="moominmamma" rel="emoji" href="#{Pleroma.Web.Endpoint.static_url}/finmoji/128px/moominmamma-128.png" /> +    <link name="2hu" rel="emoji" href="corndog.png" />      """      tuple = ActivityRepresenter.to_simple_form(answer, user) diff --git a/test/web/twitter_api/twitter_api_test.exs b/test/web/twitter_api/twitter_api_test.exs index 60daeec70..96552f97e 100644 --- a/test/web/twitter_api/twitter_api_test.exs +++ b/test/web/twitter_api/twitter_api_test.exs @@ -28,13 +28,13 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPITest do      object = Repo.insert!(%Object{data: object_data})      input = %{ -      "status" => "Hello again, @shp.<script></script>\nThis is on another line. #2hu #epic #phantasmagoric", +      "status" => "Hello again, @shp.<script></script>\nThis is on another :moominmamma: line. #2hu #epic #phantasmagoric",        "media_ids" => [object.id]      }      { :ok, activity = %Activity{} } = TwitterAPI.create_status(user, input) -    assert get_in(activity.data, ["object", "content"]) == "Hello again, <a href='shp'>@shp</a>.<script></script><br>This is on another line. #2hu #epic #phantasmagoric<br><a href=\"http://example.org/image.jpg\" class='attachment'>image.jpg</a>" +    assert get_in(activity.data, ["object", "content"]) == "Hello again, <a href='shp'>@shp</a>.<script></script><br>This is on another :moominmamma: line. #2hu #epic #phantasmagoric<br><a href=\"http://example.org/image.jpg\" class='attachment'>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 @@ -43,6 +43,8 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPITest do      assert Enum.member?(get_in(activity.data, ["to"]), "shp")      assert activity.local == true +    assert %{"moominmamma" => "http://localhost:4001/finmoji/128px/moominmamma-128.png"} = activity.data["object"]["emoji"] +      # hashtags      assert activity.data["object"]["tag"] == ["2hu", "epic", "phantasmagoric"] | 
