Don't go through all available emoji.
authorlain <lain@soykaf.club>
Wed, 28 Mar 2018 07:56:32 +0000 (09:56 +0200)
committerlain <lain@soykaf.club>
Wed, 28 Mar 2018 07:56:32 +0000 (09:56 +0200)
object carry their emoji information.

lib/pleroma/formatter.ex
lib/pleroma/web/twitter_api/representers/activity_representer.ex
lib/pleroma/web/twitter_api/views/activity_view.ex

index 4afc73bf497455ff02e09cf88077866e58e93ca8..66ca92f270a8f80cb33bf085c44989dc2d4a89a2 100644 (file)
@@ -110,14 +110,10 @@ defmodule Pleroma.Formatter do
 
   @emoji @finmoji_with_filenames ++ @emoji_from_file
 
-  def emojify(text, additional \\ nil) do
-    all_emoji = if additional do
-      Map.to_list(additional) ++ @emoji
-    else
-      @emoji
-    end
-
-    Enum.reduce(all_emoji, text, fn ({emoji, file}, text) ->
+  def emojify(text, emoji \\ @emoji)
+  def emojify(text, nil), do: text
+  def emojify(text, emoji) do
+    Enum.reduce(emoji, text, fn ({emoji, file}, text) ->
       emoji = HtmlSanitizeEx.strip_tags(emoji)
       file = HtmlSanitizeEx.strip_tags(file)
       String.replace(text, ":#{emoji}:", "<img height='32px' width='32px' alt='#{emoji}' title='#{emoji}' src='#{MediaProxy.url(file)}' />")
index 5199cef8e7a3004a3ee23fe06d7b06690a562a40..73ae3422bb260d410e3f3c5f30275af7dea8e5c1 100644 (file)
@@ -145,7 +145,8 @@ defmodule Pleroma.Web.TwitterAPI.Representers.ActivityRepresenter do
       content
     end
 
-    html = HtmlSanitizeEx.basic_html(content) |> Formatter.emojify(object["emoji"])
+    html = HtmlSanitizeEx.basic_html(content)
+    |> Formatter.emojify(object["emoji"])
 
     %{
       "id" => activity.id,
index 76b8cb14bb92d37895e4888487fe48ce71b91eee..ae5be60ce9e32eeea048d81bbb752ea9538757ad 100644 (file)
@@ -37,7 +37,8 @@ defmodule Pleroma.Web.TwitterAPI.ActivityView do
       content
     end
 
-    html = HtmlSanitizeEx.basic_html(content) |> Formatter.emojify(object["emoji"])
+    html = HtmlSanitizeEx.basic_html(content)
+    |> Formatter.emojify(object["emoji"])
 
     %{
       "id" => activity.id,