Merge branch 'safe-mentions' into 'develop'
authorkaniini <nenolod@gmail.com>
Fri, 22 Mar 2019 00:50:24 +0000 (00:50 +0000)
committerkaniini <nenolod@gmail.com>
Fri, 22 Mar 2019 00:50:24 +0000 (00:50 +0000)
Add safe dm mode option.

See merge request pleroma/pleroma!958

229 files changed:
config/config.exs
docs/Differences-in-MastodonAPI-Responses.md
docs/config.md
lib/pleroma/activity.ex
lib/pleroma/gopher/server.ex
lib/pleroma/instances/instance.ex
lib/pleroma/repo.ex
lib/pleroma/user.ex
lib/pleroma/web/common_api/utils.ex
lib/pleroma/web/mastodon_api/views/status_view.ex
lib/pleroma/web/oauth/authorization.ex
lib/pleroma/web/oauth/token.ex
lib/pleroma/web/twitter_api/twitter_api.ex
lib/pleroma/web/twitter_api/twitter_api_controller.ex
lib/pleroma/web/twitter_api/views/activity_view.ex
lib/pleroma/web/websub/websub_client_subscription.ex
mix.exs
mix.lock
priv/repo/migrations/20170426154155_create_websub_client_subscription.exs
priv/repo/migrations/20170906143140_create_o_auth_authorizations.exs
priv/repo/migrations/20170906152508_create_o_auth_token.exs
priv/repo/migrations/20180813003722_create_filters.exs
priv/repo/migrations/20180919060348_users_add_last_refreshed_at.exs
priv/repo/migrations/20190123125546_create_instances.exs
priv/static/emoji/Firefox.gif
priv/static/emoji/blank.png
priv/static/emoji/f_00b.png
priv/static/emoji/f_00b11b.png
priv/static/emoji/f_00b33b.png
priv/static/emoji/f_00h.png
priv/static/emoji/f_00t.png
priv/static/emoji/f_01b.png
priv/static/emoji/f_03b.png
priv/static/emoji/f_10b.png
priv/static/emoji/f_11b.png
priv/static/emoji/f_11b00b.png
priv/static/emoji/f_11b22b.png
priv/static/emoji/f_11h.png
priv/static/emoji/f_11t.png
priv/static/emoji/f_12b.png
priv/static/emoji/f_21b.png
priv/static/emoji/f_22b.png
priv/static/emoji/f_22b11b.png
priv/static/emoji/f_22b33b.png
priv/static/emoji/f_22h.png
priv/static/emoji/f_22t.png
priv/static/emoji/f_23b.png
priv/static/emoji/f_30b.png
priv/static/emoji/f_32b.png
priv/static/emoji/f_33b.png
priv/static/emoji/f_33b00b.png
priv/static/emoji/f_33b22b.png
priv/static/emoji/f_33h.png
priv/static/emoji/f_33t.png
priv/static/favicon.png
priv/static/finmoji/1000px/a_trusted_friend.png
priv/static/finmoji/1000px/alandislands.png
priv/static/finmoji/1000px/association.png
priv/static/finmoji/1000px/auroraborealis.png
priv/static/finmoji/1000px/baby_in_a_box.png
priv/static/finmoji/1000px/bear.png
priv/static/finmoji/1000px/black_gold.png
priv/static/finmoji/1000px/christmasparty.png
priv/static/finmoji/1000px/crosscountryskiing.png
priv/static/finmoji/1000px/cupofcoffee.png
priv/static/finmoji/1000px/education.png
priv/static/finmoji/1000px/fashionista_finns.png
priv/static/finmoji/1000px/finnishlove.png
priv/static/finmoji/1000px/flag.png
priv/static/finmoji/1000px/forest.png
priv/static/finmoji/1000px/four_seasons_of_bbq.png
priv/static/finmoji/1000px/girlpower.png
priv/static/finmoji/1000px/handshake.png
priv/static/finmoji/1000px/happiness.png
priv/static/finmoji/1000px/headbanger.png
priv/static/finmoji/1000px/icebreaker.png
priv/static/finmoji/1000px/iceman.png
priv/static/finmoji/1000px/joulutorttu.png
priv/static/finmoji/1000px/kaamos.png
priv/static/finmoji/1000px/kalsarikannit_f.png
priv/static/finmoji/1000px/kalsarikannit_m.png
priv/static/finmoji/1000px/karjalanpiirakka.png
priv/static/finmoji/1000px/kicksled.png
priv/static/finmoji/1000px/kokko.png
priv/static/finmoji/1000px/lavatanssit.png
priv/static/finmoji/1000px/losthopes_f.png
priv/static/finmoji/1000px/losthopes_m.png
priv/static/finmoji/1000px/mattinykanen.png
priv/static/finmoji/1000px/meanwhileinfinland.png
priv/static/finmoji/1000px/moominmamma.png
priv/static/finmoji/1000px/nordicfamily.png
priv/static/finmoji/1000px/out_of_office.png
priv/static/finmoji/1000px/peacemaker.png
priv/static/finmoji/1000px/perkele.png
priv/static/finmoji/1000px/pesapallo.png
priv/static/finmoji/1000px/polarbear.png
priv/static/finmoji/1000px/pusa_hispida_saimensis.png
priv/static/finmoji/1000px/reindeer.png
priv/static/finmoji/1000px/sami.png
priv/static/finmoji/1000px/sauna_f.png
priv/static/finmoji/1000px/sauna_m.png
priv/static/finmoji/1000px/sauna_whisk.png
priv/static/finmoji/1000px/sisu.png
priv/static/finmoji/1000px/stuck.png
priv/static/finmoji/1000px/suomimainittu.png
priv/static/finmoji/1000px/superfood.png
priv/static/finmoji/1000px/swan.png
priv/static/finmoji/1000px/the_cap.png
priv/static/finmoji/1000px/the_conductor.png
priv/static/finmoji/1000px/the_king.png
priv/static/finmoji/1000px/the_voice.png
priv/static/finmoji/1000px/theoriginalsanta.png
priv/static/finmoji/1000px/tomoffinland.png
priv/static/finmoji/1000px/torillatavataan.png
priv/static/finmoji/1000px/unbreakable.png
priv/static/finmoji/1000px/waiting.png
priv/static/finmoji/1000px/white_nights.png
priv/static/finmoji/1000px/woollysocks.png
priv/static/finmoji/128px/a_trusted_friend-128.png
priv/static/finmoji/128px/alandislands-128.png
priv/static/finmoji/128px/association-128.png
priv/static/finmoji/128px/auroraborealis-128.png
priv/static/finmoji/128px/baby_in_a_box-128.png
priv/static/finmoji/128px/bear-128.png
priv/static/finmoji/128px/black_gold-128.png
priv/static/finmoji/128px/christmasparty-128.png
priv/static/finmoji/128px/crosscountryskiing-128.png
priv/static/finmoji/128px/cupofcoffee-128.png
priv/static/finmoji/128px/education-128.png
priv/static/finmoji/128px/fashionista_finns-128.png
priv/static/finmoji/128px/finnishlove-128.png
priv/static/finmoji/128px/flag-128.png
priv/static/finmoji/128px/forest-128.png
priv/static/finmoji/128px/four_seasons_of_bbq-128.png
priv/static/finmoji/128px/girlpower-128.png
priv/static/finmoji/128px/handshake-128.png
priv/static/finmoji/128px/happiness-128.png
priv/static/finmoji/128px/headbanger-128.png
priv/static/finmoji/128px/icebreaker-128.png
priv/static/finmoji/128px/iceman-128.png
priv/static/finmoji/128px/joulutorttu-128.png
priv/static/finmoji/128px/kaamos-128.png
priv/static/finmoji/128px/kalsarikannit_f-128.png
priv/static/finmoji/128px/kalsarikannit_m-128.png
priv/static/finmoji/128px/karjalanpiirakka-128.png
priv/static/finmoji/128px/kicksled-128.png
priv/static/finmoji/128px/kokko-128.png
priv/static/finmoji/128px/lavatanssit-128.png
priv/static/finmoji/128px/losthopes_f-128.png
priv/static/finmoji/128px/losthopes_m-128.png
priv/static/finmoji/128px/mattinykanen-128.png
priv/static/finmoji/128px/meanwhileinfinland-128.png
priv/static/finmoji/128px/moominmamma-128.png
priv/static/finmoji/128px/nordicfamily-128.png
priv/static/finmoji/128px/out_of_office-128.png
priv/static/finmoji/128px/peacemaker-128.png
priv/static/finmoji/128px/perkele-128.png
priv/static/finmoji/128px/pesapallo-128.png
priv/static/finmoji/128px/polarbear-128.png
priv/static/finmoji/128px/pusa_hispida_saimensis-128.png
priv/static/finmoji/128px/reindeer-128.png
priv/static/finmoji/128px/sami-128.png
priv/static/finmoji/128px/sauna_f-128.png
priv/static/finmoji/128px/sauna_m-128.png
priv/static/finmoji/128px/sauna_whisk-128.png
priv/static/finmoji/128px/sisu-128.png
priv/static/finmoji/128px/stuck-128.png
priv/static/finmoji/128px/suomimainittu-128.png
priv/static/finmoji/128px/superfood-128.png
priv/static/finmoji/128px/swan-128.png
priv/static/finmoji/128px/the_cap-128.png
priv/static/finmoji/128px/the_conductor-128.png
priv/static/finmoji/128px/the_king-128.png
priv/static/finmoji/128px/the_voice-128.png
priv/static/finmoji/128px/theoriginalsanta-128.png
priv/static/finmoji/128px/tomoffinland-128.png
priv/static/finmoji/128px/torillatavataan-128.png
priv/static/finmoji/128px/unbreakable-128.png
priv/static/finmoji/128px/waiting-128.png
priv/static/finmoji/128px/white_nights-128.png
priv/static/finmoji/128px/woollysocks-128.png
priv/static/images/avi.png
priv/static/images/banner.png
priv/static/images/city.jpg
priv/static/instance/thumbnail.jpeg
priv/static/packs/clippy_frame-3446d4d28d72aef2f64f7fabae30eb4a.png
priv/static/packs/clippy_wave-afb828463da264adbce26a3f17731f6c.gif
priv/static/packs/glitch-preview-bb9cc15a0102bfaf65712e5cff7e58df.jpg
priv/static/packs/icon_about-ffafc67a2e97ca436da6c1bf61a8ab68.png
priv/static/packs/icon_blocks-0b0e54d45ff0177b02e1357ac09c0d51.png
priv/static/packs/icon_cached-26ffa26120a2a16a9be78a75cc603793.png
priv/static/packs/icon_done-e07ea253e82d137816cfb8d77a3b1562.png
priv/static/packs/icon_email-ed5d2a37fa765e4c5fec080a82b0a783.png
priv/static/packs/icon_file_download-0b212ed1bca11e1e02539a20b3821d87.png
priv/static/packs/icon_follow_requests-32eaf00987b072b2b12f8015d6a6a250.png
priv/static/packs/icon_grade-1f9e039d0f024626ab071d18098b65a0.png
priv/static/packs/icon_home-433b9d93fc1f035ec09330c2512a4879.png
priv/static/packs/icon_keyboard_shortcuts-4b183486762cfcc9f0de7522520a5485.png
priv/static/packs/icon_likes-27b8551da2d56d81062818c035ed622e.png
priv/static/packs/icon_lists-ae69bf4fb26c40d2c9b056c55c9153e2.png
priv/static/packs/icon_local-eade3ebeb7ac50f798cd40ed5fe62232.png
priv/static/packs/icon_lock_open-d377f10d3f005d0d042a1ee1dee8284d.png
priv/static/packs/icon_logout-3abd28c4fc25290e6e4088c50d3352f4.png
priv/static/packs/icon_mutes-5e7612d5c63fedb3fc59558284304cfc.png
priv/static/packs/icon_person_add-44d0a8dfa7dce95be5f6e3cfe0cdd133.png
priv/static/packs/icon_pin-79e04b07bcaa1266eee3164e83f574b4.png
priv/static/packs/icon_public-2d798a39bb2bd6314e47b00669686556.png
priv/static/packs/icon_reply-1c00f97d10006dd420bc620b26a79d8a.png
priv/static/packs/icon_settings-e7c53fb8ee137f93827e2db21f507cb1.png
priv/static/packs/icon_warning-af2b38fe580f274ca4c80479bd12141e.png
priv/static/packs/logo_full-efefe08462ede002abb7fc1e69005cbb.png
priv/static/packs/logo_transparent-73bf4bea5ad08ce44d516e472dc452c1.png
priv/static/packs/reticle-6490ecbb61185e86e62dca0845cf2dcf.png
priv/static/packs/screenshot-752460e373ba6c7519109936bd0656f6.jpg
priv/static/packs/start-d443e819b6248a54c6eb466c75938306.png
priv/static/packs/void-4c8270c17facce6d53726a2ebb9745f2.png
priv/static/packs/wave-drawer-ee1bfcbe5811ea31771b7187c7507ee6.png
priv/static/packs/wave-drawer-glitched-33467bf8c8d2b995d6c76d8810aba3db.png
priv/static/static/aurora_borealis.jpg
priv/static/static/bg2.jpg
priv/static/static/bgalt.jpg
priv/static/static/img/nsfw.74818f9.png
priv/static/static/logo.png
test/fixtures/image.jpg
test/upload_test.exs
test/web/common_api/common_api_utils_test.exs
test/web/mastodon_api/status_view_test.exs
test/web/twitter_api/twitter_api_test.exs
test/web/twitter_api/views/activity_view_test.exs

index b01c097c5d014e256dc1eae3553837e564384430..bd8922b772355b5b0cf21ac651bd6486b1042d17 100644 (file)
@@ -8,8 +8,6 @@ use Mix.Config
 # General application configuration
 config :pleroma, ecto_repos: [Pleroma.Repo]
 
-config :pleroma, Pleroma.Repo, types: Pleroma.PostgresTypes
-
 config :pleroma, Pleroma.Captcha,
   enabled: false,
   seconds_valid: 60,
@@ -274,8 +272,6 @@ config :pleroma, :media_proxy,
 
 config :pleroma, :chat, enabled: true
 
-config :ecto, json_library: Jason
-
 config :phoenix, :format_encoders, json: Jason
 
 config :pleroma, :gopher,
index 14b67ca7d383fa41a229792b67ae2c30535acadc..d993d13830f508c182792cf245c3cfcb27ab5743 100644 (file)
@@ -19,6 +19,7 @@ Adding the parameter `with_muted=true` to the timeline queries will also return
 Has these additional fields under the `pleroma` object:
 
 - `local`: true if the post was made on the local instance.
+- `conversation_id`: the ID of the conversation the status is associated with (if any)
 
 ## Attachments
 
index 78967204baa32dcfd715c88d3505a12d3321b789..c1246ee25760ef833ff2f4e5457ee41f69ab552c 100644 (file)
@@ -191,6 +191,7 @@ This section is used to configure Pleroma-FE, unless ``:managed_config`` in ``:i
 * `enabled`: Enables the gopher interface
 * `ip`: IP address to bind to
 * `port`: Port to bind to
+* `dstport`: Port advertised in urls (optional, defaults to `port`)
 
 ## :activitypub
 * ``accept_blocks``: Whether to accept incoming block activities from other instances
index de0e6668129841387eaa19e6a95d0af6bf3991ac..04c3bb6737a6dbc5d469cc1b9a8ef52f729cca99 100644 (file)
@@ -113,7 +113,8 @@ defmodule Pleroma.Activity do
 
   def delete_by_ap_id(id) when is_binary(id) do
     by_object_ap_id(id)
-    |> Repo.delete_all(returning: true)
+    |> select([u], u)
+    |> Repo.delete_all()
     |> elem(1)
     |> Enum.find(fn
       %{data: %{"type" => "Create", "object" => %{"id" => ap_id}}} -> ap_id == id
index 6baacc5661ffbb4e3bec9dd4250cd469d1f53416..3b9629d77643a4fa3e3f9f817af76626aa4bb542 100644 (file)
@@ -66,7 +66,8 @@ defmodule Pleroma.Gopher.Server.ProtocolHandler do
   def link(name, selector, type \\ 1) do
     address = Pleroma.Web.Endpoint.host()
     port = Pleroma.Config.get([:gopher, :port], 1234)
-    "#{type}#{name}\t#{selector}\t#{address}\t#{port}\r\n"
+    dstport = Pleroma.Config.get([:gopher, :dstport], port)
+    "#{type}#{name}\t#{selector}\t#{address}\t#{dstport}\r\n"
   end
 
   def render_activities(activities) do
index e92006151b218dd3333e50c88ce6ffa6a7d9631a..420803a8fa84203c28335d0e5c198a737d0c1d20 100644 (file)
@@ -12,7 +12,7 @@ defmodule Pleroma.Instances.Instance do
 
   schema "instances" do
     field(:host, :string)
-    field(:unreachable_since, :naive_datetime)
+    field(:unreachable_since, :naive_datetime_usec)
 
     timestamps()
   end
index e6a51b19e7866156732dbdbb1f3020a771e8555f..4af1bde566b4df98e299e87fbfb61a4b8613a426 100644 (file)
@@ -3,7 +3,10 @@
 # SPDX-License-Identifier: AGPL-3.0-only
 
 defmodule Pleroma.Repo do
-  use Ecto.Repo, otp_app: :pleroma
+  use Ecto.Repo,
+    otp_app: :pleroma,
+    adapter: Ecto.Adapters.Postgres,
+    migration_timestamps: [type: :naive_datetime_usec]
 
   @doc """
   Dynamically loads the repository url from the
index c1aebfc29980767e4e9aa0e2c1c7fff8de26ea85..e16141edcc84eb2b1d79c6996e9cc74d13208387 100644 (file)
@@ -52,7 +52,7 @@ defmodule Pleroma.User do
     field(:search_rank, :float, virtual: true)
     field(:tags, {:array, :string}, default: [])
     field(:bookmarks, {:array, :string}, default: [])
-    field(:last_refreshed_at, :naive_datetime)
+    field(:last_refreshed_at, :naive_datetime_usec)
     has_many(:notifications, Notification)
     embeds_one(:info, Pleroma.User.Info)
 
@@ -334,10 +334,11 @@ defmodule Pleroma.User do
                 ^followed_addresses
               )
           ]
-        ]
+        ],
+        select: u
       )
 
-    {1, [follower]} = Repo.update_all(q, [], returning: true)
+    {1, [follower]} = Repo.update_all(q, [])
 
     Enum.each(followeds, fn followed ->
       update_follower_count(followed)
@@ -367,10 +368,11 @@ defmodule Pleroma.User do
         q =
           from(u in User,
             where: u.id == ^follower.id,
-            update: [push: [following: ^ap_followers]]
+            update: [push: [following: ^ap_followers]],
+            select: u
           )
 
-        {1, [follower]} = Repo.update_all(q, [], returning: true)
+        {1, [follower]} = Repo.update_all(q, [])
 
         {:ok, _} = update_follower_count(followed)
 
@@ -385,10 +387,11 @@ defmodule Pleroma.User do
       q =
         from(u in User,
           where: u.id == ^follower.id,
-          update: [pull: [following: ^ap_followers]]
+          update: [pull: [following: ^ap_followers]],
+          select: u
         )
 
-      {1, [follower]} = Repo.update_all(q, [], returning: true)
+      {1, [follower]} = Repo.update_all(q, [])
 
       {:ok, followed} = update_follower_count(followed)
 
@@ -636,7 +639,7 @@ defmodule Pleroma.User do
     users =
       user
       |> User.get_follow_requests_query()
-      |> join(:inner, [a], u in User, a.actor == u.ap_id)
+      |> join(:inner, [a], u in User, on: a.actor == u.ap_id)
       |> where([a, u], not fragment("? @> ?", u.following, ^[user.follower_address]))
       |> group_by([a, u], u.id)
       |> select([a, u], u)
@@ -658,7 +661,8 @@ defmodule Pleroma.User do
           )
       ]
     )
-    |> Repo.update_all([], returning: true)
+    |> select([u], u)
+    |> Repo.update_all([])
     |> case do
       {1, [user]} -> set_cache(user)
       _ -> {:error, user}
@@ -678,7 +682,8 @@ defmodule Pleroma.User do
           )
       ]
     )
-    |> Repo.update_all([], returning: true)
+    |> select([u], u)
+    |> Repo.update_all([])
     |> case do
       {1, [user]} -> set_cache(user)
       _ -> {:error, user}
@@ -724,7 +729,8 @@ defmodule Pleroma.User do
           )
       ]
     )
-    |> Repo.update_all([], returning: true)
+    |> select([u], u)
+    |> Repo.update_all([])
     |> case do
       {1, [user]} -> set_cache(user)
       _ -> {:error, user}
@@ -817,31 +823,53 @@ defmodule Pleroma.User do
 
     if resolve, do: get_or_fetch(query)
 
-    fts_results = do_search(fts_search_subquery(query), for_user)
-
-    {:ok, trigram_results} =
+    {:ok, results} =
       Repo.transaction(fn ->
         Ecto.Adapters.SQL.query(Repo, "select set_limit(0.25)", [])
-        do_search(trigram_search_subquery(query), for_user)
+        Repo.all(search_query(query, for_user))
       end)
 
-    Enum.uniq_by(fts_results ++ trigram_results, & &1.id)
+    results
   end
 
-  defp do_search(subquery, for_user, options \\ []) do
-    q =
-      from(
-        s in subquery(subquery),
-        order_by: [desc: s.search_rank],
-        limit: ^(options[:limit] || 20)
-      )
+  def search_query(query, for_user) do
+    fts_subquery = fts_search_subquery(query)
+    trigram_subquery = trigram_search_subquery(query)
+    union_query = from(s in trigram_subquery, union: ^fts_subquery)
+    distinct_query = from(s in subquery(union_query), distinct: s.id)
 
-    results =
-      q
-      |> Repo.all()
-      |> Enum.filter(&(&1.search_rank > 0))
+    from(s in subquery(boost_search_rank_query(distinct_query, for_user)),
+      order_by: [desc: s.search_rank],
+      limit: 20
+    )
+  end
 
-    boost_search_results(results, for_user)
+  defp boost_search_rank_query(query, nil), do: query
+
+  defp boost_search_rank_query(query, for_user) do
+    friends_ids = get_friends_ids(for_user)
+    followers_ids = get_followers_ids(for_user)
+
+    from(u in subquery(query),
+      select_merge: %{
+        search_rank:
+          fragment(
+            """
+             CASE WHEN (?) THEN (?) * 1.3 
+             WHEN (?) THEN (?) * 1.2
+             WHEN (?) THEN (?) * 1.1
+             ELSE (?) END
+            """,
+            u.id in ^friends_ids and u.id in ^followers_ids,
+            u.search_rank,
+            u.id in ^friends_ids,
+            u.search_rank,
+            u.id in ^followers_ids,
+            u.search_rank,
+            u.search_rank
+          )
+      }
+    )
   end
 
   defp fts_search_subquery(term, query \\ User) do
@@ -900,33 +928,6 @@ defmodule Pleroma.User do
     )
   end
 
-  defp boost_search_results(results, nil), do: results
-
-  defp boost_search_results(results, for_user) do
-    friends_ids = get_friends_ids(for_user)
-    followers_ids = get_followers_ids(for_user)
-
-    Enum.map(
-      results,
-      fn u ->
-        search_rank_coef =
-          cond do
-            u.id in friends_ids ->
-              1.2
-
-            u.id in followers_ids ->
-              1.1
-
-            true ->
-              1
-          end
-
-        Map.put(u, :search_rank, u.search_rank * search_rank_coef)
-      end
-    )
-    |> Enum.sort_by(&(-&1.search_rank))
-  end
-
   def blocks_import(%User{} = blocker, blocked_identifiers) when is_list(blocked_identifiers) do
     Enum.map(
       blocked_identifiers,
index 3689454182a37680738fd5d8a5c796046c77a085..3e807a5b74922c6de21b22038f4002671c354cad 100644 (file)
@@ -352,4 +352,33 @@ defmodule Pleroma.Web.CommonAPI.Utils do
   end
 
   def get_report_statuses(_, _), do: {:ok, nil}
+
+  # DEPRECATED mostly, context objects are now created at insertion time.
+  def context_to_conversation_id(context) do
+    with %Object{id: id} <- Object.get_cached_by_ap_id(context) do
+      id
+    else
+      _e ->
+        changeset = Object.context_mapping(context)
+
+        case Repo.insert(changeset) do
+          {:ok, %{id: id}} ->
+            id
+
+          # This should be solved by an upsert, but it seems ecto
+          # has problems accessing the constraint inside the jsonb.
+          {:error, _} ->
+            Object.get_cached_by_ap_id(context).id
+        end
+    end
+  end
+
+  def conversation_id_to_context(id) do
+    with %Object{data: %{"id" => context}} <- Repo.get(Object, id) do
+      context
+    else
+      _e ->
+        {:error, "No such conversation"}
+    end
+  end
 end
index 209119dd51a2268cc0e9b9f419856f595a762ec2..1ca8338cc074c0268fe419600d9ddd0151ace80a 100644 (file)
@@ -46,6 +46,14 @@ defmodule Pleroma.Web.MastodonAPI.StatusView do
     end
   end
 
+  defp get_context_id(%{data: %{"context_id" => context_id}}) when not is_nil(context_id),
+    do: context_id
+
+  defp get_context_id(%{data: %{"context" => context}}) when is_binary(context),
+    do: Utils.context_to_conversation_id(context)
+
+  defp get_context_id(_), do: nil
+
   def render("index.json", opts) do
     replied_to_activities = get_replied_to_activities(opts.activities)
 
@@ -186,7 +194,8 @@ defmodule Pleroma.Web.MastodonAPI.StatusView do
       language: nil,
       emojis: build_emojis(activity.data["object"]["emoji"]),
       pleroma: %{
-        local: activity.local
+        local: activity.local,
+        conversation_id: get_context_id(activity)
       }
     }
   end
index a80543adf3a83729ffa14851325d208f253f375c..3461f9983df55569fd9cad1b21e8ba6fdcb923a6 100644 (file)
@@ -16,7 +16,7 @@ defmodule Pleroma.Web.OAuth.Authorization do
   schema "oauth_authorizations" do
     field(:token, :string)
     field(:scopes, {:array, :string}, default: [])
-    field(:valid_until, :naive_datetime)
+    field(:valid_until, :naive_datetime_usec)
     field(:used, :boolean, default: false)
     belongs_to(:user, Pleroma.User, type: Pleroma.FlakeId)
     belongs_to(:app, App)
index 2b074b470f87ee293c806647bab32df7ba772522..a8b06db36d90fb83ddb1b5f0e554218d9c01b24d 100644 (file)
@@ -17,7 +17,7 @@ defmodule Pleroma.Web.OAuth.Token do
     field(:token, :string)
     field(:refresh_token, :string)
     field(:scopes, {:array, :string}, default: [])
-    field(:valid_until, :naive_datetime)
+    field(:valid_until, :naive_datetime_usec)
     belongs_to(:user, Pleroma.User, type: Pleroma.FlakeId)
     belongs_to(:app, App)
 
index d57100491d155638a66eb8a1b652d2107545891a..9978c7f6440dac0d15fa14e478d93a40954dfb5e 100644 (file)
@@ -5,7 +5,6 @@
 defmodule Pleroma.Web.TwitterAPI.TwitterAPI do
   alias Pleroma.Activity
   alias Pleroma.Mailer
-  alias Pleroma.Object
   alias Pleroma.Repo
   alias Pleroma.User
   alias Pleroma.UserEmail
@@ -282,35 +281,6 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPI do
     _activities = Repo.all(q)
   end
 
-  # DEPRECATED mostly, context objects are now created at insertion time.
-  def context_to_conversation_id(context) do
-    with %Object{id: id} <- Object.get_cached_by_ap_id(context) do
-      id
-    else
-      _e ->
-        changeset = Object.context_mapping(context)
-
-        case Repo.insert(changeset) do
-          {:ok, %{id: id}} ->
-            id
-
-          # This should be solved by an upsert, but it seems ecto
-          # has problems accessing the constraint inside the jsonb.
-          {:error, _} ->
-            Object.get_cached_by_ap_id(context).id
-        end
-    end
-  end
-
-  def conversation_id_to_context(id) do
-    with %Object{data: %{"id" => context}} <- Repo.get(Object, id) do
-      context
-    else
-      _e ->
-        {:error, "No such conversation"}
-    end
-  end
-
   def get_external_profile(for_user, uri) do
     with %User{} = user <- User.get_or_fetch(uri) do
       {:ok, UserView.render("show.json", %{user: user, for: for_user})}
index 6ea0b110ba7f74a82ee19906c22d97a409649109..62cce18dc2bd78a7da18aef9816920ef6c20483c 100644 (file)
@@ -16,6 +16,7 @@ defmodule Pleroma.Web.TwitterAPI.Controller do
   alias Pleroma.Web.ActivityPub.ActivityPub
   alias Pleroma.Web.ActivityPub.Visibility
   alias Pleroma.Web.CommonAPI
+  alias Pleroma.Web.CommonAPI.Utils
   alias Pleroma.Web.OAuth.Token
   alias Pleroma.Web.TwitterAPI.ActivityView
   alias Pleroma.Web.TwitterAPI.NotificationView
@@ -278,7 +279,7 @@ defmodule Pleroma.Web.TwitterAPI.Controller do
   end
 
   def fetch_conversation(%{assigns: %{user: user}} = conn, %{"id" => id}) do
-    with context when is_binary(context) <- TwitterAPI.conversation_id_to_context(id),
+    with context when is_binary(context) <- Utils.conversation_id_to_context(id),
          activities <-
            ActivityPub.fetch_activities_for_context(context, %{
              "blocking_user" => user,
index 4926f007e95c0d3ec4979ce78b37c0bd6fe36eca..fe7d499753aa43610eef34e1e0463d9591b6e287 100644 (file)
@@ -15,7 +15,6 @@ defmodule Pleroma.Web.TwitterAPI.ActivityView do
   alias Pleroma.Web.MastodonAPI.StatusView
   alias Pleroma.Web.TwitterAPI.ActivityView
   alias Pleroma.Web.TwitterAPI.Representers.ObjectRepresenter
-  alias Pleroma.Web.TwitterAPI.TwitterAPI
   alias Pleroma.Web.TwitterAPI.UserView
 
   import Ecto.Query
@@ -78,7 +77,7 @@ defmodule Pleroma.Web.TwitterAPI.ActivityView do
   defp get_context_id(%{data: %{"context" => context}}, options) do
     cond do
       id = options[:context_ids][context] -> id
-      true -> TwitterAPI.context_to_conversation_id(context)
+      true -> Utils.context_to_conversation_id(context)
     end
   end
 
index 969ee0684fe64735e06f66675aff97fe9910ce9b..77703c496b290b40687a4950691761645d535d6f 100644 (file)
@@ -9,7 +9,7 @@ defmodule Pleroma.Web.Websub.WebsubClientSubscription do
   schema "websub_client_subscriptions" do
     field(:topic, :string)
     field(:secret, :string)
-    field(:valid_until, :naive_datetime)
+    field(:valid_until, :naive_datetime_usec)
     field(:state, :string)
     field(:subscribers, {:array, :string}, default: [])
     field(:hub, :string)
diff --git a/mix.exs b/mix.exs
index efdf15d3ab8a055d8454b94a8509debe4766bcbc..3f3c8cd3555aeeca9f5c8012a734152d25da7ca7 100644 (file)
--- a/mix.exs
+++ b/mix.exs
@@ -61,7 +61,8 @@ defmodule Pleroma.Mixfile do
       {:phoenix, "~> 1.4.1"},
       {:plug_cowboy, "~> 2.0"},
       {:phoenix_pubsub, "~> 1.1"},
-      {:phoenix_ecto, "~> 3.3"},
+      {:phoenix_ecto, "~> 4.0"},
+      {:ecto_sql, "~>3.0.5"},
       {:postgrex, ">= 0.13.5"},
       {:gettext, "~> 0.15"},
       {:comeonin, "~> 4.1.1"},
index f43a185646cc315c4342f8a55556d43bfc8b79d0..05eaa1d69eb42b93faa9df54260b558de22a32d4 100644 (file)
--- a/mix.lock
+++ b/mix.lock
   "cowlib": {:hex, :cowlib, "2.7.0", "3ef16e77562f9855a2605900cedb15c1462d76fb1be6a32fc3ae91973ee543d2", [:rebar3], [], "hexpm"},
   "credo": {:hex, :credo, "0.9.3", "76fa3e9e497ab282e0cf64b98a624aa11da702854c52c82db1bf24e54ab7c97a", [:mix], [{:bunt, "~> 0.2.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:poison, ">= 0.0.0", [hex: :poison, repo: "hexpm", optional: false]}], "hexpm"},
   "crypt": {:git, "https://github.com/msantos/crypt", "1f2b58927ab57e72910191a7ebaeff984382a1d3", [ref: "1f2b58927ab57e72910191a7ebaeff984382a1d3"]},
-  "db_connection": {:hex, :db_connection, "1.1.3", "89b30ca1ef0a3b469b1c779579590688561d586694a3ce8792985d4d7e575a61", [:mix], [{:connection, "~> 1.0.2", [hex: :connection, repo: "hexpm", optional: false]}, {:poolboy, "~> 1.5", [hex: :poolboy, repo: "hexpm", optional: true]}, {:sbroker, "~> 1.0", [hex: :sbroker, repo: "hexpm", optional: true]}], "hexpm"},
+  "db_connection": {:hex, :db_connection, "2.0.5", "ddb2ba6761a08b2bb9ca0e7d260e8f4dd39067426d835c24491a321b7f92a4da", [:mix], [{:connection, "~> 1.0.2", [hex: :connection, repo: "hexpm", optional: false]}], "hexpm"},
   "decimal": {:hex, :decimal, "1.7.0", "30d6b52c88541f9a66637359ddf85016df9eb266170d53105f02e4a67e00c5aa", [:mix], [], "hexpm"},
   "earmark": {:hex, :earmark, "1.3.0", "17f0c38eaafb4800f746b457313af4b2442a8c2405b49c645768680f900be603", [:mix], [], "hexpm"},
-  "ecto": {:hex, :ecto, "2.2.11", "4bb8f11718b72ba97a2696f65d247a379e739a0ecabf6a13ad1face79844791c", [:mix], [{:db_connection, "~> 1.1", [hex: :db_connection, repo: "hexpm", optional: true]}, {:decimal, "~> 1.2", [hex: :decimal, repo: "hexpm", optional: false]}, {:mariaex, "~> 0.8.0", [hex: :mariaex, repo: "hexpm", optional: true]}, {:poison, "~> 2.2 or ~> 3.0", [hex: :poison, repo: "hexpm", optional: true]}, {:poolboy, "~> 1.5", [hex: :poolboy, repo: "hexpm", optional: false]}, {:postgrex, "~> 0.13.0", [hex: :postgrex, repo: "hexpm", optional: true]}, {:sbroker, "~> 1.0", [hex: :sbroker, repo: "hexpm", optional: true]}], "hexpm"},
+  "ecto": {:hex, :ecto, "3.0.7", "44dda84ac6b17bbbdeb8ac5dfef08b7da253b37a453c34ab1a98de7f7e5fec7f", [:mix], [{:decimal, "~> 1.6", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:poison, "~> 2.2 or ~> 3.0", [hex: :poison, repo: "hexpm", optional: true]}], "hexpm"},
+  "ecto_sql": {:hex, :ecto_sql, "3.0.5", "7e44172b4f7aca4469f38d7f6a3da394dbf43a1bcf0ca975e958cb957becd74e", [:mix], [{:db_connection, "~> 2.0", [hex: :db_connection, repo: "hexpm", optional: false]}, {:ecto, "~> 3.0.6", [hex: :ecto, repo: "hexpm", optional: false]}, {:mariaex, "~> 0.9.1", [hex: :mariaex, repo: "hexpm", optional: true]}, {:postgrex, "~> 0.14.0", [hex: :postgrex, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.3.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm"},
   "eternal": {:hex, :eternal, "1.2.0", "e2a6b6ce3b8c248f7dc31451aefca57e3bdf0e48d73ae5043229380a67614c41", [:mix], [], "hexpm"},
   "ex_aws": {:hex, :ex_aws, "2.1.0", "b92651527d6c09c479f9013caa9c7331f19cba38a650590d82ebf2c6c16a1d8a", [:mix], [{:configparser_ex, "~> 2.0", [hex: :configparser_ex, repo: "hexpm", optional: true]}, {:hackney, "1.6.3 or 1.6.5 or 1.7.1 or 1.8.6 or ~> 1.9", [hex: :hackney, repo: "hexpm", optional: true]}, {:jsx, "~> 2.8", [hex: :jsx, repo: "hexpm", optional: true]}, {:poison, ">= 1.2.0", [hex: :poison, repo: "hexpm", optional: true]}, {:sweet_xml, "~> 0.6", [hex: :sweet_xml, repo: "hexpm", optional: true]}, {:xml_builder, "~> 0.1.0", [hex: :xml_builder, repo: "hexpm", optional: true]}], "hexpm"},
   "ex_aws_s3": {:hex, :ex_aws_s3, "2.0.1", "9e09366e77f25d3d88c5393824e613344631be8db0d1839faca49686e99b6704", [:mix], [{:ex_aws, "~> 2.0", [hex: :ex_aws, repo: "hexpm", optional: false]}, {:sweet_xml, ">= 0.0.0", [hex: :sweet_xml, repo: "hexpm", optional: true]}], "hexpm"},
@@ -46,7 +47,7 @@
   "parse_trans": {:hex, :parse_trans, "3.3.0", "09765507a3c7590a784615cfd421d101aec25098d50b89d7aa1d66646bc571c1", [:rebar3], [], "hexpm"},
   "pbkdf2_elixir": {:hex, :pbkdf2_elixir, "0.12.3", "6706a148809a29c306062862c803406e88f048277f6e85b68faf73291e820b84", [:mix], [], "hexpm"},
   "phoenix": {:hex, :phoenix, "1.4.1", "801f9d632808657f1f7c657c8bbe624caaf2ba91429123ebe3801598aea4c3d9", [:mix], [{:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:phoenix_pubsub, "~> 1.1", [hex: :phoenix_pubsub, repo: "hexpm", optional: false]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 1.0 or ~> 2.0", [hex: :plug_cowboy, repo: "hexpm", optional: true]}], "hexpm"},
-  "phoenix_ecto": {:hex, :phoenix_ecto, "3.3.0", "702f6e164512853d29f9d20763493f2b3bcfcb44f118af2bc37bb95d0801b480", [:mix], [{:ecto, "~> 2.1", [hex: :ecto, repo: "hexpm", optional: false]}, {:phoenix_html, "~> 2.9", [hex: :phoenix_html, repo: "hexpm", optional: true]}, {:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm"},
+  "phoenix_ecto": {:hex, :phoenix_ecto, "4.0.0", "c43117a136e7399ea04ecaac73f8f23ee0ffe3e07acfcb8062fe5f4c9f0f6531", [:mix], [{:ecto, "~> 3.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:phoenix_html, "~> 2.9", [hex: :phoenix_html, repo: "hexpm", optional: true]}, {:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm"},
   "phoenix_html": {:hex, :phoenix_html, "2.13.1", "fa8f034b5328e2dfa0e4131b5569379003f34bc1fafdaa84985b0b9d2f12e68b", [:mix], [{:plug, "~> 1.5", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm"},
   "phoenix_pubsub": {:hex, :phoenix_pubsub, "1.1.1", "6668d787e602981f24f17a5fbb69cc98f8ab085114ebfac6cc36e10a90c8e93c", [:mix], [], "hexpm"},
   "plug": {:hex, :plug, "1.7.2", "d7b7db7fbd755e8283b6c0a50be71ec0a3d67d9213d74422d9372effc8e87fd1", [:mix], [{:mime, "~> 1.0", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_crypto, "~> 1.0", [hex: :plug_crypto, repo: "hexpm", optional: false]}], "hexpm"},
   "plug_crypto": {:hex, :plug_crypto, "1.0.0", "18e49317d3fa343f24620ed22795ec29d4a5e602d52d1513ccea0b07d8ea7d4d", [:mix], [], "hexpm"},
   "poison": {:hex, :poison, "3.1.0", "d9eb636610e096f86f25d9a46f35a9facac35609a7591b3be3326e99a0484665", [:mix], [], "hexpm"},
   "poolboy": {:hex, :poolboy, "1.5.2", "392b007a1693a64540cead79830443abf5762f5d30cf50bc95cb2c1aaafa006b", [:rebar3], [], "hexpm"},
-  "postgrex": {:hex, :postgrex, "0.13.5", "3d931aba29363e1443da167a4b12f06dcd171103c424de15e5f3fc2ba3e6d9c5", [:mix], [{:connection, "~> 1.0", [hex: :connection, repo: "hexpm", optional: false]}, {:db_connection, "~> 1.1", [hex: :db_connection, repo: "hexpm", optional: false]}, {:decimal, "~> 1.0", [hex: :decimal, repo: "hexpm", optional: false]}], "hexpm"},
+  "postgrex": {:hex, :postgrex, "0.14.1", "63247d4a5ad6b9de57a0bac5d807e1c32d41e39c04b8a4156a26c63bcd8a2e49", [:mix], [{:connection, "~> 1.0", [hex: :connection, repo: "hexpm", optional: false]}, {:db_connection, "~> 2.0", [hex: :db_connection, repo: "hexpm", optional: false]}, {:decimal, "~> 1.5", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm"},
   "ranch": {:hex, :ranch, "1.7.1", "6b1fab51b49196860b733a49c07604465a47bdb78aa10c1c16a3d199f7f8c881", [:rebar3], [], "hexpm"},
   "ssl_verify_fun": {:hex, :ssl_verify_fun, "1.1.4", "f0eafff810d2041e93f915ef59899c923f4568f4585904d010387ed74988e77b", [:make, :mix, :rebar3], [], "hexpm"},
   "swoosh": {:hex, :swoosh, "0.20.0", "9a6c13822c9815993c03b6f8fccc370fcffb3c158d9754f67b1fdee6b3a5d928", [:mix], [{:cowboy, "~> 1.0.1 or ~> 1.1 or ~> 2.4", [hex: :cowboy, repo: "hexpm", optional: true]}, {:gen_smtp, "~> 0.12", [hex: :gen_smtp, repo: "hexpm", optional: true]}, {:hackney, "~> 1.9", [hex: :hackney, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}, {:mime, "~> 1.1", [hex: :mime, repo: "hexpm", optional: false]}, {:plug, "~> 1.4", [hex: :plug, repo: "hexpm", optional: true]}], "hexpm"},
   "syslog": {:git, "https://github.com/Vagabond/erlang-syslog.git", "4a6c6f2c996483e86c1320e9553f91d337bcb6aa", [tag: "1.0.5"]},
+  "telemetry": {:hex, :telemetry, "0.3.0", "099a7f3ce31e4780f971b4630a3c22ec66d22208bc090fe33a2a3a6a67754a73", [:rebar3], [], "hexpm"},
   "tesla": {:hex, :tesla, "1.2.1", "864783cc27f71dd8c8969163704752476cec0f3a51eb3b06393b3971dc9733ff", [:mix], [{:exjsx, ">= 3.0.0", [hex: :exjsx, repo: "hexpm", optional: true]}, {:fuse, "~> 2.4", [hex: :fuse, repo: "hexpm", optional: true]}, {:hackney, "~> 1.6", [hex: :hackney, repo: "hexpm", optional: true]}, {:ibrowse, "~> 4.4.0", [hex: :ibrowse, repo: "hexpm", optional: true]}, {:jason, ">= 1.0.0", [hex: :jason, repo: "hexpm", optional: true]}, {:mime, "~> 1.0", [hex: :mime, repo: "hexpm", optional: false]}, {:poison, ">= 1.0.0", [hex: :poison, repo: "hexpm", optional: true]}], "hexpm"},
   "timex": {:hex, :timex, "3.5.0", "b0a23167da02d0fe4f1a4e104d1f929a00d348502b52432c05de875d0b9cffa5", [:mix], [{:combine, "~> 0.10", [hex: :combine, repo: "hexpm", optional: false]}, {:gettext, "~> 0.10", [hex: :gettext, repo: "hexpm", optional: false]}, {:tzdata, "~> 0.1.8 or ~> 0.5", [hex: :tzdata, repo: "hexpm", optional: false]}], "hexpm"},
   "trailing_format_plug": {:hex, :trailing_format_plug, "0.0.7", "64b877f912cf7273bed03379936df39894149e35137ac9509117e59866e10e45", [:mix], [{:plug, "> 0.12.0", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm"},
index f427828409368b4ae4303072edb9b936db85db07..89d3af7aee5ff7ac67c47c44b50f3fc29213c270 100644 (file)
@@ -5,7 +5,7 @@ defmodule Pleroma.Repo.Migrations.CreateWebsubClientSubscription do
     create table(:websub_client_subscriptions) do
       add :topic, :string
       add :secret, :string
-      add :valid_until, :naive_datetime
+      add :valid_until, :naive_datetime_usec
       add :state, :string
       add :subscribers, :map
 
index b4332870e5843271539b69672a1b0b6d1f12089d..ead1d023e06f9bf0de991bb9e58f4d27e5908ccd 100644 (file)
@@ -6,7 +6,7 @@ defmodule Pleroma.Repo.Migrations.CreateOAuthAuthorizations do
       add :app_id, references(:apps)
       add :user_id, references(:users)
       add :token, :string
-      add :valid_until, :naive_datetime
+      add :valid_until, :naive_datetime_usec
       add :used, :boolean, default: false
 
       timestamps()
index 7f8550f336e25a68f15f28d8d1296fc93cbd3d0e..ed56bbf364ed93bbbb8b129e49a468bd2d2224fc 100644 (file)
@@ -7,7 +7,7 @@ defmodule Pleroma.Repo.Migrations.CreateOAuthToken do
       add :user_id, references(:users)
       add :token, :string
       add :refresh_token, :string
-      add :valid_until, :naive_datetime
+      add :valid_until, :naive_datetime_usec
 
       timestamps()
     end
index a273004ee8e7a0420b7a88c2f1974ea9430971ae..8e7129f342c3c9cd24fbce573e0c7226306c30f3 100644 (file)
@@ -8,7 +8,7 @@ defmodule Pleroma.Repo.Migrations.CreateFilters do
       add :hide, :boolean
       add :phrase, :string
       add :context, {:array, :string}
-      add :expires_at, :datetime
+      add :expires_at, :utc_datetime
       add :whole_word, :boolean
 
       timestamps()
index 1942e4e9c8758d4fb27d8196c3064d1f5f994781..815177e054c13a7bfb93b1437edaefbc572af4fc 100644 (file)
@@ -3,7 +3,7 @@ defmodule Pleroma.Repo.Migrations.UsersAddLastRefreshedAt do
 
   def change do
     alter table(:users) do
-      add :last_refreshed_at, :naive_datetime
+      add :last_refreshed_at, :naive_datetime_usec
     end
   end
 end
index b527ad7ec3cf83aeb2abc88e6b690caf95aecbac..3d23b343e305754a9b31850c4f55864a892a0d33 100644 (file)
@@ -4,7 +4,7 @@ defmodule Pleroma.Repo.Migrations.CreateInstances do
   def change do
     create table(:instances) do
       add :host, :string
-      add :unreachable_since, :naive_datetime
+      add :unreachable_since, :naive_datetime_usec
 
       timestamps()
     end
index 27e29b97a1b293ddc36411e0093ce75e90163e26..81561d94bc5cae1c3c7c024d9db286a2e6209b2f 100644 (file)
Binary files a/priv/static/emoji/Firefox.gif and b/priv/static/emoji/Firefox.gif differ
index 175a1d412c79a7eda584930a879ebebec15fadc0..8f50fa02340e7e09e562f86e00b6e4bd6ad1d565 100644 (file)
Binary files a/priv/static/emoji/blank.png and b/priv/static/emoji/blank.png differ
index 8c0f8b7e84816d502a9b354c8e8525bb5ddac834..3d00b89b02acbcf8cd3b4ff388e2f09f06c0aee1 100644 (file)
Binary files a/priv/static/emoji/f_00b.png and b/priv/static/emoji/f_00b.png differ
index 408b8fdd348536bb8022d2bdaee409c3dcd89f24..3e99ce464f99bb73c6bfab8db312ad66ba218b99 100644 (file)
Binary files a/priv/static/emoji/f_00b11b.png and b/priv/static/emoji/f_00b11b.png differ
index 7926f497c2dcfce0657253d1b4f96d3d1f69b90d..8f4929297e401d8fc0b150c0080b989d974e00db 100644 (file)
Binary files a/priv/static/emoji/f_00b33b.png and b/priv/static/emoji/f_00b33b.png differ
index a8e26b3301faf4d45f4414829c56e9304c67a9bc..ba3da57c66d9d86e8436e53012d92b6df6756d49 100644 (file)
Binary files a/priv/static/emoji/f_00h.png and b/priv/static/emoji/f_00h.png differ
index 5b78986f71523c7b24961ff522f5b615db9500ae..31d98b4333b253da7c08b7925928d3750b816125 100644 (file)
Binary files a/priv/static/emoji/f_00t.png and b/priv/static/emoji/f_00t.png differ
index 13359359e0653ba7b0f663b8af11568d93ec8207..7bd2582c5d0a9005e7c4797de8cd26f90464bac3 100644 (file)
Binary files a/priv/static/emoji/f_01b.png and b/priv/static/emoji/f_01b.png differ
index ab95f9b28f6daf5b907d1dca0c9955db6420be1f..9e4ff1bf77074361c97d1ef8fcdc205575d03916 100644 (file)
Binary files a/priv/static/emoji/f_03b.png and b/priv/static/emoji/f_03b.png differ
index b57b5b3b242d150534cedfbc9b37d38ce8c3af40..67c6493fc5e7009a436bb36f38285e9ac6a54759 100644 (file)
Binary files a/priv/static/emoji/f_10b.png and b/priv/static/emoji/f_10b.png differ
index dcdb61ea4c178b01fc878b3e28e19f4b0c7baa5a..b53328ba9f48cc685aea3ffbe02eb3b29b58aa0b 100644 (file)
Binary files a/priv/static/emoji/f_11b.png and b/priv/static/emoji/f_11b.png differ
index 48e487dffcac42de5cd8cbb6c4604d7565761cc0..c4c30e11f5c16d81c05217d2a109d27d89a73e4d 100644 (file)
Binary files a/priv/static/emoji/f_11b00b.png and b/priv/static/emoji/f_11b00b.png differ
index a1f09b06328f0321ced908d99999189f9375c263..47425e06e2713254552d9081069ed7553f6181e6 100644 (file)
Binary files a/priv/static/emoji/f_11b22b.png and b/priv/static/emoji/f_11b22b.png differ
index 59a86c98ed07ff4c30005805b8be555a329bf75d..28342363a20b6dbdeb34a2fc4d30a9def0c3201f 100644 (file)
Binary files a/priv/static/emoji/f_11h.png and b/priv/static/emoji/f_11h.png differ
index 8a31379b14223f17d1584026b48f3cb83195bec9..dca67dc70ac3d8259ab7a62acea3d9298751abb6 100644 (file)
Binary files a/priv/static/emoji/f_11t.png and b/priv/static/emoji/f_11t.png differ
index 99481725e5425d1042955338607b226d08608797..9925adb7cf6dc3af9218a7e2f258840c4df7b423 100644 (file)
Binary files a/priv/static/emoji/f_12b.png and b/priv/static/emoji/f_12b.png differ
index d6f6e21318e6ed8166106191db83595527cfa491..aa56d2cb25ffc61a9816d68e520553d60ef19fb9 100644 (file)
Binary files a/priv/static/emoji/f_21b.png and b/priv/static/emoji/f_21b.png differ
index e90a407d91606df2717db0bd8191bd6ff01001bf..426878986930b1ae01b7721d0a0b26ad7bcf4ee0 100644 (file)
Binary files a/priv/static/emoji/f_22b.png and b/priv/static/emoji/f_22b.png differ
index ca25cf1affe0dc10891cae2ec477c439eecb7a9b..4bdfb3107c69afa25b605a62a11f18e05155fe9b 100644 (file)
Binary files a/priv/static/emoji/f_22b11b.png and b/priv/static/emoji/f_22b11b.png differ
index ec4760ca1dbb198baf4ee6c829694869b33d2b48..adf94f81123fc2d7519fcf4d9ec49a1598a7d4bf 100644 (file)
Binary files a/priv/static/emoji/f_22b33b.png and b/priv/static/emoji/f_22b33b.png differ
index c82c9179b4f96f100a95e07002b1feaa08a906aa..3b27e2de8cd26a53d5e84c4f8e3ce7c469bb7abb 100644 (file)
Binary files a/priv/static/emoji/f_22h.png and b/priv/static/emoji/f_22h.png differ
index 2a858a6f35c15da6034e881a4d50a4159b4f737a..addd9fec78839c418422e4a56a402ee003dcd8c5 100644 (file)
Binary files a/priv/static/emoji/f_22t.png and b/priv/static/emoji/f_22t.png differ
index 551598a2419ab1a189e6a8aeb59094945d541126..beb69ab36961acfe8343554b300e4486e086ce10 100644 (file)
Binary files a/priv/static/emoji/f_23b.png and b/priv/static/emoji/f_23b.png differ
index f2cb32978432b2be46f4980090e005b3b04072ec..41dbb2a5d5b2f1c61adbb8ae3345fb95e18e2d5e 100644 (file)
Binary files a/priv/static/emoji/f_30b.png and b/priv/static/emoji/f_30b.png differ
index 5646a0fcd607fd4583f87d2326848ff498769013..d8261e8a8a779b2fa3c72551d4eb87013419667f 100644 (file)
Binary files a/priv/static/emoji/f_32b.png and b/priv/static/emoji/f_32b.png differ
index 86f2a0a0e0a9ef77e6ebaf2a49a73709ef110b3b..71b8b914abd3a05d57a19366270cf7f200200ff5 100644 (file)
Binary files a/priv/static/emoji/f_33b.png and b/priv/static/emoji/f_33b.png differ
index 9f9a750b085b3a2e9bf168d85eed7b5deb936cea..65b6e24b8fb55f67817d8508ccae91b85b5acfd7 100644 (file)
Binary files a/priv/static/emoji/f_33b00b.png and b/priv/static/emoji/f_33b00b.png differ
index 48520a17e811345af4724ec9e3cb45bbe9f4c98d..d71a8ddd484664537af3fbd9b3f2703f78193d71 100644 (file)
Binary files a/priv/static/emoji/f_33b22b.png and b/priv/static/emoji/f_33b22b.png differ
index 0b8a333d23e3d28fa4c8cb5d32ad6abc73294473..e141c51846c2072fb6722c83ef2c998e3978005d 100644 (file)
Binary files a/priv/static/emoji/f_33h.png and b/priv/static/emoji/f_33h.png differ
index 0f88120751864b7b0630bf76cf0ada2ae28332eb..d5a23073d9ebd7fee72e78191940db5fdf482ff9 100644 (file)
Binary files a/priv/static/emoji/f_33t.png and b/priv/static/emoji/f_33t.png differ
index f83d923bb9c5bef75045af0d799df8ff4e397c37..a96d5d25225abd92a95b35c58b301463752cf335 100644 (file)
Binary files a/priv/static/favicon.png and b/priv/static/favicon.png differ
index 74c4c7af757f58e517ed5a64fe342d8a1ab50280..5658d589c927ca03f51c7ff0fabd62cae125842d 100644 (file)
Binary files a/priv/static/finmoji/1000px/a_trusted_friend.png and b/priv/static/finmoji/1000px/a_trusted_friend.png differ
index 816e75d3376a53ef926475a50ba0c1c28e91a472..094dd32841e7a23bdbbb29bcf8c86aa20f6ac0e5 100644 (file)
Binary files a/priv/static/finmoji/1000px/alandislands.png and b/priv/static/finmoji/1000px/alandislands.png differ
index 175bfaf0aecc888b893f530c434db622fa44beb4..dad3b886429c699426abc1ee15a37df958644cc5 100644 (file)
Binary files a/priv/static/finmoji/1000px/association.png and b/priv/static/finmoji/1000px/association.png differ
index 1352ff64d949fe62c9a637257fce4771d2ba1d00..5875dc2c4c6c39b87716e116639f5277102e13e9 100644 (file)
Binary files a/priv/static/finmoji/1000px/auroraborealis.png and b/priv/static/finmoji/1000px/auroraborealis.png differ
index 928362adc0f60211b0b09b1b3b8dbe28fcbacfa0..9479aaebb8171c9089cac0c6c58132c33924bfb6 100644 (file)
Binary files a/priv/static/finmoji/1000px/baby_in_a_box.png and b/priv/static/finmoji/1000px/baby_in_a_box.png differ
index 0c30501be88eb3ffb40efc5a68d347445fed96ca..5d9fbb320e967f5ba9b013c9744152712e24cbd3 100644 (file)
Binary files a/priv/static/finmoji/1000px/bear.png and b/priv/static/finmoji/1000px/bear.png differ
index c8993683b4a01cd0fa584e7f67fca1fdaba09b9d..707e949ec0608bf24d13817a760a97f21c923517 100644 (file)
Binary files a/priv/static/finmoji/1000px/black_gold.png and b/priv/static/finmoji/1000px/black_gold.png differ
index 8b8eb62f149c19bab30b877c3d07a64edd38baba..785decb8d4018fd3f2bafd413a60fca65e35a980 100644 (file)
Binary files a/priv/static/finmoji/1000px/christmasparty.png and b/priv/static/finmoji/1000px/christmasparty.png differ
index e6de38e1ed6f31785387e50be78a8425d1050f2c..2a9bddf41873af246a390a1a0ee37d22a8b06f80 100644 (file)
Binary files a/priv/static/finmoji/1000px/crosscountryskiing.png and b/priv/static/finmoji/1000px/crosscountryskiing.png differ
index 8cb91d0c16db920523d563b0b637d2510b66482c..a12cc867c2bcc69a7b998e0235893f09c96de152 100644 (file)
Binary files a/priv/static/finmoji/1000px/cupofcoffee.png and b/priv/static/finmoji/1000px/cupofcoffee.png differ
index 0092d32e9384ce41c9f6739fc74bb7d18d12d7fd..af9feee590d7672473445059a381cadc3f969a2a 100644 (file)
Binary files a/priv/static/finmoji/1000px/education.png and b/priv/static/finmoji/1000px/education.png differ
index 214d42d6758b96d16050f23d418d9823e77281b3..d1140250d1d19ccd96990652ae141483458ba824 100644 (file)
Binary files a/priv/static/finmoji/1000px/fashionista_finns.png and b/priv/static/finmoji/1000px/fashionista_finns.png differ
index 5fa87ca56ba22dd84a1b905a4ff14dc08d8654f2..00148202f0d02d3ac3c7dc43b6b4f019dedc8a9c 100644 (file)
Binary files a/priv/static/finmoji/1000px/finnishlove.png and b/priv/static/finmoji/1000px/finnishlove.png differ
index 9af9872f6f80cafd3eae058d57aed9b78d65a94f..e709449d72061bac841a827275f3b16d313fedf2 100644 (file)
Binary files a/priv/static/finmoji/1000px/flag.png and b/priv/static/finmoji/1000px/flag.png differ
index 090d2dfad94f0721fd70df795ef94fa37576e861..b2d64ea371a15123b3bf9b8bb35cfa9a3eefa458 100644 (file)
Binary files a/priv/static/finmoji/1000px/forest.png and b/priv/static/finmoji/1000px/forest.png differ
index 3cffbb44081fd47d567266316d902399744de985..42f4a7fb70565150a9c8869e950e4d817b448f7e 100644 (file)
Binary files a/priv/static/finmoji/1000px/four_seasons_of_bbq.png and b/priv/static/finmoji/1000px/four_seasons_of_bbq.png differ
index 3eb0ba64a982423a60c50ab841fb828e5e8cf94e..7674f2e265ce8f3056dd7ca3c14139d4709dc388 100644 (file)
Binary files a/priv/static/finmoji/1000px/girlpower.png and b/priv/static/finmoji/1000px/girlpower.png differ
index 6ca1533a726e7183614037bf2de6630365c3e820..d9857d699f37ac90257c87c110e2ca55ed8f3da7 100644 (file)
Binary files a/priv/static/finmoji/1000px/handshake.png and b/priv/static/finmoji/1000px/handshake.png differ
index faf31b72d0d9ed104cddcda0e013ba2190816bb4..fbfc34fe4df48a0b47bb2b020f0b2717ba657ff7 100644 (file)
Binary files a/priv/static/finmoji/1000px/happiness.png and b/priv/static/finmoji/1000px/happiness.png differ
index 643fa8afd37f7b29bc1c216c43cb56f6c3790693..d9c2f62479fd76899fa5f2188beace9581538030 100644 (file)
Binary files a/priv/static/finmoji/1000px/headbanger.png and b/priv/static/finmoji/1000px/headbanger.png differ
index 08f8908a2589f25c3476dd7e83cd2973b7a1b844..aedce3dcaf768833fbad9a55a53fc794d605a825 100644 (file)
Binary files a/priv/static/finmoji/1000px/icebreaker.png and b/priv/static/finmoji/1000px/icebreaker.png differ
index 2da5ad83e0afdd7c9f71498256aa263fe7f35ec2..c172e60d57a983ef16615f61fbb59e4c06c88998 100644 (file)
Binary files a/priv/static/finmoji/1000px/iceman.png and b/priv/static/finmoji/1000px/iceman.png differ
index 05c974d98bb2c17ce278f6529f1991884fd7a149..d7b5a7e53185327921baab402434de3f161e98d0 100644 (file)
Binary files a/priv/static/finmoji/1000px/joulutorttu.png and b/priv/static/finmoji/1000px/joulutorttu.png differ
index 053cd4fc458487aa56c973ec29d5c4b9de789ef3..139b219531c57bb6c154e68882b9a2a2b69450b9 100644 (file)
Binary files a/priv/static/finmoji/1000px/kaamos.png and b/priv/static/finmoji/1000px/kaamos.png differ
index 718ca693431eb8725f7d5db129ceddd49dc19222..064c861606015bdb18ecd66d4b6b42d6cecae268 100644 (file)
Binary files a/priv/static/finmoji/1000px/kalsarikannit_f.png and b/priv/static/finmoji/1000px/kalsarikannit_f.png differ
index a081dd5e1239ab8c2d553bfc9e648a6111cf94fe..e08bd27afa358694e4a37e352773ffb204f5d145 100644 (file)
Binary files a/priv/static/finmoji/1000px/kalsarikannit_m.png and b/priv/static/finmoji/1000px/kalsarikannit_m.png differ
index a918305e48f2bd167bd41d1d186390fe2cd10b3c..dbf647df563eace18412dcc34d387c1c94c20030 100644 (file)
Binary files a/priv/static/finmoji/1000px/karjalanpiirakka.png and b/priv/static/finmoji/1000px/karjalanpiirakka.png differ
index fc489fb62457985220d33726c5900ae293bf87fa..305a56f77fe4a78b3e68d20de02c95894f58c9ce 100644 (file)
Binary files a/priv/static/finmoji/1000px/kicksled.png and b/priv/static/finmoji/1000px/kicksled.png differ
index c6ed2a98a59f73f40e4c00572ff2934bf127a614..0a5472c9a557c74a9d2a5c48900289fc9a2c07e3 100644 (file)
Binary files a/priv/static/finmoji/1000px/kokko.png and b/priv/static/finmoji/1000px/kokko.png differ
index 04a0b48f6713d3fabdebb34fd0f261534bacf0cc..a1f0a69dd455ebbda07d4703a9a4d544563ff8f5 100644 (file)
Binary files a/priv/static/finmoji/1000px/lavatanssit.png and b/priv/static/finmoji/1000px/lavatanssit.png differ
index 06a3061faf2e5eba71c9416961cf22072b6f8244..a847df3c583c853ad02c802a83bb59ce34d0289d 100644 (file)
Binary files a/priv/static/finmoji/1000px/losthopes_f.png and b/priv/static/finmoji/1000px/losthopes_f.png differ
index 78caa6b1d8a0cc656e8996bd5d88bb6f1cf40d06..93c83b9955ba143d979cf9dc792588c9f5008a7e 100644 (file)
Binary files a/priv/static/finmoji/1000px/losthopes_m.png and b/priv/static/finmoji/1000px/losthopes_m.png differ
index 4a7c76b41137fb07244efde97cb3f279d3ef71e1..2d9c9d38f18e8d20cdfc1e8a6458887dc19e0ab6 100644 (file)
Binary files a/priv/static/finmoji/1000px/mattinykanen.png and b/priv/static/finmoji/1000px/mattinykanen.png differ
index e591cb18ac4d9cbde8157ebeeed6fa003eaced17..794db1eed55bcffeb62d95abf7d54120031bf7e6 100644 (file)
Binary files a/priv/static/finmoji/1000px/meanwhileinfinland.png and b/priv/static/finmoji/1000px/meanwhileinfinland.png differ
index 963b18573fd702025f6ddc8a7c7e8dd68c804a81..d34b1b98b16ca39494a18986b6d3a9021a029017 100644 (file)
Binary files a/priv/static/finmoji/1000px/moominmamma.png and b/priv/static/finmoji/1000px/moominmamma.png differ
index 81ae83a71684581f69d31d7dc171ca8430ca86a5..21292eaffb683509759ed2e9b3e82b5962f51aeb 100644 (file)
Binary files a/priv/static/finmoji/1000px/nordicfamily.png and b/priv/static/finmoji/1000px/nordicfamily.png differ
index af5dbce7f579463f59148e741164cce049d48bcf..b72d6dbd5e5e4a7cd76960016b0606dd9893fd42 100644 (file)
Binary files a/priv/static/finmoji/1000px/out_of_office.png and b/priv/static/finmoji/1000px/out_of_office.png differ
index 89e4265f2fa45115c1772f291a8c2759a121c546..48a51fa6f0b176b92dffeb56d8597d81a9d4b756 100644 (file)
Binary files a/priv/static/finmoji/1000px/peacemaker.png and b/priv/static/finmoji/1000px/peacemaker.png differ
index 98ac3460608ac9f055d875aebd605465181e73d9..16a68d0531c4a017124928142ec97b2529de9223 100644 (file)
Binary files a/priv/static/finmoji/1000px/perkele.png and b/priv/static/finmoji/1000px/perkele.png differ
index f701a01688404c6d3ee9152a4fec7cb60dca0077..2f35c8e02a78eb37cff3440ec1b43d154ecf011d 100644 (file)
Binary files a/priv/static/finmoji/1000px/pesapallo.png and b/priv/static/finmoji/1000px/pesapallo.png differ
index 1e2eed5f53a8e55909d5a3929e6a1d0561746d53..ce6c65e8b82626007638133f50c236a8867e7178 100644 (file)
Binary files a/priv/static/finmoji/1000px/polarbear.png and b/priv/static/finmoji/1000px/polarbear.png differ
index 61145bccc91bb32c0ee644547b04ec4baa19f290..35ec8caed6294e91a8c60f886912d56e8d1c9b8a 100644 (file)
Binary files a/priv/static/finmoji/1000px/pusa_hispida_saimensis.png and b/priv/static/finmoji/1000px/pusa_hispida_saimensis.png differ
index a3d28fb9cb34d756d2f49944a4307d946d38f3d1..e60f0f0a4592e72d480515e0f9321691388ff3de 100644 (file)
Binary files a/priv/static/finmoji/1000px/reindeer.png and b/priv/static/finmoji/1000px/reindeer.png differ
index f3a089b3b89f6656d13bc52a059b1aad5c5e28b1..e4703dfd2228abae06431f4cc720431b05958031 100644 (file)
Binary files a/priv/static/finmoji/1000px/sami.png and b/priv/static/finmoji/1000px/sami.png differ
index ca83c8bfc278f54ebdb9f7b720d8e6e4bd4842ac..9a4ba8629c9151ea373f597543c32f1727cabb83 100644 (file)
Binary files a/priv/static/finmoji/1000px/sauna_f.png and b/priv/static/finmoji/1000px/sauna_f.png differ
index 0de893cb7ff88e916e164f4a5c3ce7946a8187fe..4bdd33f7b03c3edf5d47e5bc8a0e800ecdb950f6 100644 (file)
Binary files a/priv/static/finmoji/1000px/sauna_m.png and b/priv/static/finmoji/1000px/sauna_m.png differ
index 2b8af674017d0705bbb5bfe3fe13930d80c7219a..c1692806510130d64fe9f362d0bc10cbdfadd3d4 100644 (file)
Binary files a/priv/static/finmoji/1000px/sauna_whisk.png and b/priv/static/finmoji/1000px/sauna_whisk.png differ
index 18320729f7933bda14db4a9cbb39c12ece87529b..238453bb5581308271d46542129dc5cfc321c6b7 100644 (file)
Binary files a/priv/static/finmoji/1000px/sisu.png and b/priv/static/finmoji/1000px/sisu.png differ
index 445b6bcd80342e59f1c21095a0b9aee9f3d74811..4180e3ecd21e7a20141bc286cc46fd5e02d4141e 100644 (file)
Binary files a/priv/static/finmoji/1000px/stuck.png and b/priv/static/finmoji/1000px/stuck.png differ
index 01dfa64e4f49e9f29002d235f7f6bcc6344d3fab..af46347f5f5cb68a89f4720c37209bb6eb14dd6a 100644 (file)
Binary files a/priv/static/finmoji/1000px/suomimainittu.png and b/priv/static/finmoji/1000px/suomimainittu.png differ
index 8a81f4e3d709b389491bd86b7d82de06960a9d97..8fa033c18fc1bf0c4d7ef0c96314ed13deddeda0 100644 (file)
Binary files a/priv/static/finmoji/1000px/superfood.png and b/priv/static/finmoji/1000px/superfood.png differ
index dbdf0ed0cb1cca767ed5a4e0a1ea9f82c8451d88..5363f861de6ddcccc09ec08c32f5f218d7f59fdf 100644 (file)
Binary files a/priv/static/finmoji/1000px/swan.png and b/priv/static/finmoji/1000px/swan.png differ
index f1232e10f00e1e82ba19cdbcf0513c1b97e2b939..7f547dc0e8090397dfec15aa9028323e5b6029e5 100644 (file)
Binary files a/priv/static/finmoji/1000px/the_cap.png and b/priv/static/finmoji/1000px/the_cap.png differ
index d231bf6f92770aa0afdd87abbe421b9ddcd7a4f9..ed5ca7f1fcf11bc39116b56084a462a88eae8a9c 100644 (file)
Binary files a/priv/static/finmoji/1000px/the_conductor.png and b/priv/static/finmoji/1000px/the_conductor.png differ
index f1f5896678b395757f6a8cb2bdb1d24e974bbef4..8c3a5c66d56b7e6d160e1803bb39e03032254d2d 100644 (file)
Binary files a/priv/static/finmoji/1000px/the_king.png and b/priv/static/finmoji/1000px/the_king.png differ
index 2085a56c800c7fd23c4ecc1881d5b715dd78d507..9bfc87b3a54af382e19450eb0d67ae6f020835c7 100644 (file)
Binary files a/priv/static/finmoji/1000px/the_voice.png and b/priv/static/finmoji/1000px/the_voice.png differ
index 707921b2dc4146ac9d938005d13c854a527f2eed..b8dc1ef4755c9a16a267ad8f0ef3ed3177db4611 100644 (file)
Binary files a/priv/static/finmoji/1000px/theoriginalsanta.png and b/priv/static/finmoji/1000px/theoriginalsanta.png differ
index bf83c757332bf8c3eb4526e8fe707a0029076f6e..97da05a64df61742df5e3d5b178e4cdeadadf797 100644 (file)
Binary files a/priv/static/finmoji/1000px/tomoffinland.png and b/priv/static/finmoji/1000px/tomoffinland.png differ
index 6e82251f84ec3415a6017773c834c0e30534d0a4..ff7a81edaff0bf3647951301bf72283627e0054b 100644 (file)
Binary files a/priv/static/finmoji/1000px/torillatavataan.png and b/priv/static/finmoji/1000px/torillatavataan.png differ
index 9a419736744a06b37678cb7921a28343e0855856..1778fc1159343ea7932539499dcc65516a3d8c62 100644 (file)
Binary files a/priv/static/finmoji/1000px/unbreakable.png and b/priv/static/finmoji/1000px/unbreakable.png differ
index 4b98139a07c31c9ea2a137bf451e0bb900c4a607..2aa9afa708820ab268137da1c865edb71c1ea428 100644 (file)
Binary files a/priv/static/finmoji/1000px/waiting.png and b/priv/static/finmoji/1000px/waiting.png differ
index d00e2febed22d030781898e38f617fca0d014c46..8e9cd3fc8c42483d9b145ef1dc68d61a2e72b501 100644 (file)
Binary files a/priv/static/finmoji/1000px/white_nights.png and b/priv/static/finmoji/1000px/white_nights.png differ
index 0bd8ee055b35ce3343e2b787def1bd233cf71925..5ee4e6de1a411f3f53d214d2bf100d2702af6c47 100644 (file)
Binary files a/priv/static/finmoji/1000px/woollysocks.png and b/priv/static/finmoji/1000px/woollysocks.png differ
index e459c5109fba0a3167143d355a958a6e172b83de..16d596bda7b282d40da67429ae44ad7a2984ced7 100644 (file)
Binary files a/priv/static/finmoji/128px/a_trusted_friend-128.png and b/priv/static/finmoji/128px/a_trusted_friend-128.png differ
index 5b9ef6957c58e4d9813b2990e8e060e95f833b36..13cdf6e7651c3b0b3c9b18dad5578a95ed4a5f53 100644 (file)
Binary files a/priv/static/finmoji/128px/alandislands-128.png and b/priv/static/finmoji/128px/alandislands-128.png differ
index 10879dbff7ce667ab2669bd97c2d491a2e49e44b..5b388d7812e2c92ddf100f4712e3aaf01bd0841e 100644 (file)
Binary files a/priv/static/finmoji/128px/association-128.png and b/priv/static/finmoji/128px/association-128.png differ
index 9e52d6011b5b71bf39418cd1f81cb2aa447cacd5..7e2af77b95edf9f89f3ed92f12c7a0529964305f 100644 (file)
Binary files a/priv/static/finmoji/128px/auroraborealis-128.png and b/priv/static/finmoji/128px/auroraborealis-128.png differ
index 64c7f8264842e51a4dc14b20ad73e8c6e9c35a75..9c495e24a41b205d5e4cc70fa3113c7440072004 100644 (file)
Binary files a/priv/static/finmoji/128px/baby_in_a_box-128.png and b/priv/static/finmoji/128px/baby_in_a_box-128.png differ
index 987078491665e24e2d9ad15645de4609401f9dd8..8bb101bf4eb988f40203a0dd3258302ba5eb4245 100644 (file)
Binary files a/priv/static/finmoji/128px/bear-128.png and b/priv/static/finmoji/128px/bear-128.png differ
index f8bf5638f1f869491e08dd6bf93aecc1a7178645..1833edab4f83af1dcb723c1112f648a44400fb9b 100644 (file)
Binary files a/priv/static/finmoji/128px/black_gold-128.png and b/priv/static/finmoji/128px/black_gold-128.png differ
index e18c088b4907e036729c7c53d839f769c7faeac4..98216830ca319fadc289131265616e5c1873f52a 100644 (file)
Binary files a/priv/static/finmoji/128px/christmasparty-128.png and b/priv/static/finmoji/128px/christmasparty-128.png differ
index 3175771702dc0db14812b0734576be834f35a4c4..67553f398d3edaaf773c753d5ccec6fca1e0a14f 100644 (file)
Binary files a/priv/static/finmoji/128px/crosscountryskiing-128.png and b/priv/static/finmoji/128px/crosscountryskiing-128.png differ
index 0851e9a468b7cc1d12d6aba7fb7e6e2d142c4e9f..20064f21883a71e59022017b1f2993d60b0a6f84 100644 (file)
Binary files a/priv/static/finmoji/128px/cupofcoffee-128.png and b/priv/static/finmoji/128px/cupofcoffee-128.png differ
index 7456e90bf307a36c900728637e637884294c15b4..c98083bddd97a6c727ac81c47c1e0ad700ab825a 100644 (file)
Binary files a/priv/static/finmoji/128px/education-128.png and b/priv/static/finmoji/128px/education-128.png differ
index 0b2b0466c50585772da37bfc9f3a91b3a6f4f20e..4248825e0fa0a4993fc0a417897c2ce9e0cc7d9a 100644 (file)
Binary files a/priv/static/finmoji/128px/fashionista_finns-128.png and b/priv/static/finmoji/128px/fashionista_finns-128.png differ
index 3a970bf7bdbb2aa2c94df062d71f337344aca812..5d4f9476c0b0062304eaf4a923ab17645940dc9a 100644 (file)
Binary files a/priv/static/finmoji/128px/finnishlove-128.png and b/priv/static/finmoji/128px/finnishlove-128.png differ
index a5363242d062640edd8e84173265185c97ac81ac..0087cc5895bfaaf99d21f3cfcd2627bf8fd43a80 100644 (file)
Binary files a/priv/static/finmoji/128px/flag-128.png and b/priv/static/finmoji/128px/flag-128.png differ
index a350d7f0c7cdab5ec2774c8eb51223fc8277cd59..142e60b940ae4b8a899c353a9d82f3e36d1939bc 100644 (file)
Binary files a/priv/static/finmoji/128px/forest-128.png and b/priv/static/finmoji/128px/forest-128.png differ
index d01ad662ec2b26e02121177601d988f1fa6b4ebb..bb7fe1f514d78ae27e8a01ba0f3e3504c24f3a6a 100644 (file)
Binary files a/priv/static/finmoji/128px/four_seasons_of_bbq-128.png and b/priv/static/finmoji/128px/four_seasons_of_bbq-128.png differ
index 1e6e9628eee06d9fee7bf1c3a452d4944690c088..bc76a51c5d3b320178c83247f5be5c7546ef0d5d 100644 (file)
Binary files a/priv/static/finmoji/128px/girlpower-128.png and b/priv/static/finmoji/128px/girlpower-128.png differ
index 92976f48b304e3650eecf69ae182631ed1260348..4ebf196ab8fa9bf2d0c72c80c4c5ff9121a81865 100644 (file)
Binary files a/priv/static/finmoji/128px/handshake-128.png and b/priv/static/finmoji/128px/handshake-128.png differ
index 3ae66fa4bdcacb149cd10abed42fdaad7546bc79..e28f99a26172e2d91d957700b6b5f3658dde890c 100644 (file)
Binary files a/priv/static/finmoji/128px/happiness-128.png and b/priv/static/finmoji/128px/happiness-128.png differ
index 094288c51f1ea6d0564265f45da226af255fbef8..0de620efec302f4a7b870f411f83c1e5cbcc688c 100644 (file)
Binary files a/priv/static/finmoji/128px/headbanger-128.png and b/priv/static/finmoji/128px/headbanger-128.png differ
index 0473dc4005fe9d9e5c6180fb5c6d90e5bcb30447..7fb36a4a3cb3fa7b3b5415ca254fa1ce8caabee0 100644 (file)
Binary files a/priv/static/finmoji/128px/icebreaker-128.png and b/priv/static/finmoji/128px/icebreaker-128.png differ
index 217ef0c92dd360082c314b139e657b431a6f87e1..eb814e6aa6b900bafd2e8d23f3a311ebcf4e675f 100644 (file)
Binary files a/priv/static/finmoji/128px/iceman-128.png and b/priv/static/finmoji/128px/iceman-128.png differ
index c394570eb817b2a6213fee447a23e1a54cabe73f..50448e33368823dad9f16572d8e13302eed541d1 100644 (file)
Binary files a/priv/static/finmoji/128px/joulutorttu-128.png and b/priv/static/finmoji/128px/joulutorttu-128.png differ
index 882ddf8ba8099bb243a3b805e19e2a9fd0d3cea3..8b2df03ef1222104570ceac6fa0f54f1cfa87669 100644 (file)
Binary files a/priv/static/finmoji/128px/kaamos-128.png and b/priv/static/finmoji/128px/kaamos-128.png differ
index a3390e66cc8ca619ad0cfae3e47b8b55777c30a4..bcd94141aa325c706e36bdd8e6707c6999d39be6 100644 (file)
Binary files a/priv/static/finmoji/128px/kalsarikannit_f-128.png and b/priv/static/finmoji/128px/kalsarikannit_f-128.png differ
index e48ca375d42c9bf7b3571ff27c7241cb9b25b064..c6938e6773161995ae111ee988efdcad6588758a 100644 (file)
Binary files a/priv/static/finmoji/128px/kalsarikannit_m-128.png and b/priv/static/finmoji/128px/kalsarikannit_m-128.png differ
index b489c9c2824f1a99ee560563afd4781c24723598..a82a902db8127008efa911ed8f8e56416d983193 100644 (file)
Binary files a/priv/static/finmoji/128px/karjalanpiirakka-128.png and b/priv/static/finmoji/128px/karjalanpiirakka-128.png differ
index 99dee1eb809d8d3305c7c3d5d65b23ad06e1f0fe..ff42462dbdaf99dccb84231e6c6a71b1d0f7e53d 100644 (file)
Binary files a/priv/static/finmoji/128px/kicksled-128.png and b/priv/static/finmoji/128px/kicksled-128.png differ
index ef1ea0db5910493fc3b574c1603edb9f3e300758..e0b6e07fab297a435434e0448caa3304b8e01945 100644 (file)
Binary files a/priv/static/finmoji/128px/kokko-128.png and b/priv/static/finmoji/128px/kokko-128.png differ
index e5d921dfe077637d9dbd11eebc93fc7662bf9948..f89dc358c170ae93b648d08a486a836fb8385f8d 100644 (file)
Binary files a/priv/static/finmoji/128px/lavatanssit-128.png and b/priv/static/finmoji/128px/lavatanssit-128.png differ
index 395b75a12c75ae940916a30bd0272d764d16001d..60f0949c08a6b1236021f228eef719fc0a6ed1df 100644 (file)
Binary files a/priv/static/finmoji/128px/losthopes_f-128.png and b/priv/static/finmoji/128px/losthopes_f-128.png differ
index 4fdadb97aa45ad5ebb0193a53fa02f30cd7d7ba9..9ae6f9e2f5a4e31c6d8f7d132ce1a6574d31fd2b 100644 (file)
Binary files a/priv/static/finmoji/128px/losthopes_m-128.png and b/priv/static/finmoji/128px/losthopes_m-128.png differ
index 230554e2e8d1131cceae8fd68b807b8b9848209f..0e81271cac5ed03b14cd59227960c5d219cf97cf 100644 (file)
Binary files a/priv/static/finmoji/128px/mattinykanen-128.png and b/priv/static/finmoji/128px/mattinykanen-128.png differ
index 8cc636bd67277a92a70bd26a09291ab32e37c9c6..5a9710a3b645e6b47c9588579bba6b34d2dd99d0 100644 (file)
Binary files a/priv/static/finmoji/128px/meanwhileinfinland-128.png and b/priv/static/finmoji/128px/meanwhileinfinland-128.png differ
index 76a662a9dfa7f99b4d5e9abeb7f171a3dc4e0eb8..ae37bb94a7541eb8de036a24b3f2245e3b87864f 100644 (file)
Binary files a/priv/static/finmoji/128px/moominmamma-128.png and b/priv/static/finmoji/128px/moominmamma-128.png differ
index 6efd5daa8422b85fbba3564ea3cc18c1b2bd57cd..cff41b2289e1c0ecb2515613bf79f2dd4c8b1e48 100644 (file)
Binary files a/priv/static/finmoji/128px/nordicfamily-128.png and b/priv/static/finmoji/128px/nordicfamily-128.png differ
index 98e359bcb0778c603f90fb15260905f484db0b1f..45cd1c2f505839a6b1e742a5263466658c89cda9 100644 (file)
Binary files a/priv/static/finmoji/128px/out_of_office-128.png and b/priv/static/finmoji/128px/out_of_office-128.png differ
index 2ec94560f06d52b1c0e81c49d02cce59184341a4..c4e9bd4478d14f08970af726d647c164a1756efd 100644 (file)
Binary files a/priv/static/finmoji/128px/peacemaker-128.png and b/priv/static/finmoji/128px/peacemaker-128.png differ
index 61b1d560c2f3a402e6ce90af565769fe32f728c7..e89e5bf32df4f9ba8b8c1902f0234361194b9377 100644 (file)
Binary files a/priv/static/finmoji/128px/perkele-128.png and b/priv/static/finmoji/128px/perkele-128.png differ
index de0897e3c9795ebcc71633b864b2db3e309717c0..5e06bec50c87c67ca306d3ebc58ba549046c345a 100644 (file)
Binary files a/priv/static/finmoji/128px/pesapallo-128.png and b/priv/static/finmoji/128px/pesapallo-128.png differ
index 6a3abeccd5bd4c8a1f5292b272f1dc07c2134e2f..fd3c3ec30c70c011634520bf9457719b97226f2a 100644 (file)
Binary files a/priv/static/finmoji/128px/polarbear-128.png and b/priv/static/finmoji/128px/polarbear-128.png differ
index 277780d75b22126f815f77cca37d9afed4e487cd..60620be5d3e4ee02782d640822facbba82a0b1e5 100644 (file)
Binary files a/priv/static/finmoji/128px/pusa_hispida_saimensis-128.png and b/priv/static/finmoji/128px/pusa_hispida_saimensis-128.png differ
index c8c5ed7955cc0277449e414799c171bae3c003f6..8cdd05f27b73ca16b0c58bbe5a04f5f487773a59 100644 (file)
Binary files a/priv/static/finmoji/128px/reindeer-128.png and b/priv/static/finmoji/128px/reindeer-128.png differ
index fc52cceac1f5aef586f4ff80f4d92e9d070ea446..e9e9f41a7d6f3d1bb620a15f178125298d29f138 100644 (file)
Binary files a/priv/static/finmoji/128px/sami-128.png and b/priv/static/finmoji/128px/sami-128.png differ
index 6c70fde1dcf5977a1efc859ea809a281968895ee..474f126ff0a816162337dbad7258994e871f9750 100644 (file)
Binary files a/priv/static/finmoji/128px/sauna_f-128.png and b/priv/static/finmoji/128px/sauna_f-128.png differ
index f67406bf96a600ddd5d6353015b1d7626edf187c..f7f563a9be1541edd3028b3fd11607c12406bd82 100644 (file)
Binary files a/priv/static/finmoji/128px/sauna_m-128.png and b/priv/static/finmoji/128px/sauna_m-128.png differ
index 7450ff68219f21dbdfc4462327a6a60502e6deee..80ebb55e4cb10bfcd76420c84ead48afd270e38c 100644 (file)
Binary files a/priv/static/finmoji/128px/sauna_whisk-128.png and b/priv/static/finmoji/128px/sauna_whisk-128.png differ
index 9ea6ae834ddf4df3be3a60d03d1dc2529d1a8ff8..7b9330654c8ef0b51f3cb8357e682e1d2c2d171c 100644 (file)
Binary files a/priv/static/finmoji/128px/sisu-128.png and b/priv/static/finmoji/128px/sisu-128.png differ
index c1f468135725f59de738f723610b43969d6007cf..c14bc555df7ec4a4f9905beaa08128c9999ff12a 100644 (file)
Binary files a/priv/static/finmoji/128px/stuck-128.png and b/priv/static/finmoji/128px/stuck-128.png differ
index ac9228d88d3842dc4b013d3af8e015ff6817e8d5..8d35b9be118305983706ec9433faf938e26473a1 100644 (file)
Binary files a/priv/static/finmoji/128px/suomimainittu-128.png and b/priv/static/finmoji/128px/suomimainittu-128.png differ
index bb6eb81b52e40a020958be6a0a867f3fa38e9708..2e9d924ccc1d237129c86af400d2799a406c3e26 100644 (file)
Binary files a/priv/static/finmoji/128px/superfood-128.png and b/priv/static/finmoji/128px/superfood-128.png differ
index b1c2c5ea011a794352aac4690e44c8855767529c..d1711c70b2f0ca06fa625f0efe38f340a42460a7 100644 (file)
Binary files a/priv/static/finmoji/128px/swan-128.png and b/priv/static/finmoji/128px/swan-128.png differ
index 90d36f9b4a57920f4769e64229503ca547cce707..10d83c22e15baf81b1df70e9f749ba5d17c7f9fe 100644 (file)
Binary files a/priv/static/finmoji/128px/the_cap-128.png and b/priv/static/finmoji/128px/the_cap-128.png differ
index e061cf8f43cf4ba212c16a76ed58284676d86e46..0da7c42e8f808cac45d1b143ddabe32d9a1f6c9f 100644 (file)
Binary files a/priv/static/finmoji/128px/the_conductor-128.png and b/priv/static/finmoji/128px/the_conductor-128.png differ
index 8611d26045478a2a8883e4c34ee0c94752711ae9..07dd27ad71ce891aa539ea77b7b705f735570f31 100644 (file)
Binary files a/priv/static/finmoji/128px/the_king-128.png and b/priv/static/finmoji/128px/the_king-128.png differ
index 93fd9e0f4fb81a12bd2dda5268567da5e59dfcfc..bb436f95b194d1b19d6b67945f93c8d494e37cce 100644 (file)
Binary files a/priv/static/finmoji/128px/the_voice-128.png and b/priv/static/finmoji/128px/the_voice-128.png differ
index 1827b2500a3df2fa069972d4a2a223ea677e944c..082d58c28929f15763c9ddb01ea9b45adc5b62d4 100644 (file)
Binary files a/priv/static/finmoji/128px/theoriginalsanta-128.png and b/priv/static/finmoji/128px/theoriginalsanta-128.png differ
index 3f6cfc3198ddf8a60f752fcbce3809cfdb847df9..29c68bcba1f56654bbb2738ce5131fe9fb5626fc 100644 (file)
Binary files a/priv/static/finmoji/128px/tomoffinland-128.png and b/priv/static/finmoji/128px/tomoffinland-128.png differ
index 2d2153f59674e161e01b7ff46fff83bc6ed17e9b..da7b502b4b8d772ab26a08b605de457d4fdaa2a7 100644 (file)
Binary files a/priv/static/finmoji/128px/torillatavataan-128.png and b/priv/static/finmoji/128px/torillatavataan-128.png differ
index a8d7cc8f1940516f60149cd7d501548ca6f36f46..eb825e14f2f88ec3e86083db9c2c5ec830d29b12 100644 (file)
Binary files a/priv/static/finmoji/128px/unbreakable-128.png and b/priv/static/finmoji/128px/unbreakable-128.png differ
index 20fd31dd4c44e63f9403454353cbb46703390a31..10b9167f2e1033d56a57fd471ad7aa1ea8c99e66 100644 (file)
Binary files a/priv/static/finmoji/128px/waiting-128.png and b/priv/static/finmoji/128px/waiting-128.png differ
index 258d305a10a2845f2773b6f93d2de4ab23be1146..8eacd11f0976ecacd27161957993ef1afa8a8687 100644 (file)
Binary files a/priv/static/finmoji/128px/white_nights-128.png and b/priv/static/finmoji/128px/white_nights-128.png differ
index a5d9cd5d588e55f2a27d379be01807b7218a52d5..856af5b2e68e296eb2fb44127dd472e015aadff7 100644 (file)
Binary files a/priv/static/finmoji/128px/woollysocks-128.png and b/priv/static/finmoji/128px/woollysocks-128.png differ
index 3fc699c12d58b141fc18b4caaf82f85dbec6eee0..c6595adadd982f9a2c003a085a5de794c1074dba 100644 (file)
Binary files a/priv/static/images/avi.png and b/priv/static/images/avi.png differ
index 467c075d64667cdb67bac4c20ee06153bb28a774..aa76fdd8def11d5dc920b674165025fbce1136a7 100644 (file)
Binary files a/priv/static/images/banner.png and b/priv/static/images/banner.png differ
index c3220471947919819650e108e8a9366bc1df9fa9..75c07b5bd939aa2afc98683d5de61fb31e4ee12b 100644 (file)
Binary files a/priv/static/images/city.jpg and b/priv/static/images/city.jpg differ
index b7e01264423996c3f97edaa72c5da199b30b96e4..f63c9fef20466b6325ff5665ee311a0f769f2a89 100644 (file)
Binary files a/priv/static/instance/thumbnail.jpeg and b/priv/static/instance/thumbnail.jpeg differ
index 7f2cd6a59dd4ed472a3e18665d6df21bd0ba1604..724bb0c196452583bfabfc8663d350074b1fac5c 100644 (file)
Binary files a/priv/static/packs/clippy_frame-3446d4d28d72aef2f64f7fabae30eb4a.png and b/priv/static/packs/clippy_frame-3446d4d28d72aef2f64f7fabae30eb4a.png differ
index 4d2e38a3df4aa71fd4c11f9c0f4affbee125b6ad..bbb4e53abd7da7a5cc74e0d1d373dd6cbbfaf222 100644 (file)
Binary files a/priv/static/packs/clippy_wave-afb828463da264adbce26a3f17731f6c.gif and b/priv/static/packs/clippy_wave-afb828463da264adbce26a3f17731f6c.gif differ
index fc5c4204359659e32ec8d758855891e297f5093c..5d2d5880c957ee67c48a8a5048cacfd4df34767e 100644 (file)
Binary files a/priv/static/packs/glitch-preview-bb9cc15a0102bfaf65712e5cff7e58df.jpg and b/priv/static/packs/glitch-preview-bb9cc15a0102bfaf65712e5cff7e58df.jpg differ
index 08b76dcd9ddbe135847443914bddf5580c0affc2..b597becb97c9af5fc85c6406a365d51508b7eb04 100644 (file)
Binary files a/priv/static/packs/icon_about-ffafc67a2e97ca436da6c1bf61a8ab68.png and b/priv/static/packs/icon_about-ffafc67a2e97ca436da6c1bf61a8ab68.png differ
index 8b1490875fc2711ad6dc027a28d54cb472e65dcf..521048961c349c85b7be3e004a30e6c057e00420 100644 (file)
Binary files a/priv/static/packs/icon_blocks-0b0e54d45ff0177b02e1357ac09c0d51.png and b/priv/static/packs/icon_blocks-0b0e54d45ff0177b02e1357ac09c0d51.png differ
index 5c993dbee56a4ceff2a1d4da1908e755be1c5e3b..d3cd2a2fddaf627f0967ec68fb3a572b632b9f4c 100644 (file)
Binary files a/priv/static/packs/icon_cached-26ffa26120a2a16a9be78a75cc603793.png and b/priv/static/packs/icon_cached-26ffa26120a2a16a9be78a75cc603793.png differ
index f7f95a0e8d30ca14b25ad3e83416cce39bfae1fe..15a74c4c4cfdedd52d6c87ff9017cc7236282733 100644 (file)
Binary files a/priv/static/packs/icon_done-e07ea253e82d137816cfb8d77a3b1562.png and b/priv/static/packs/icon_done-e07ea253e82d137816cfb8d77a3b1562.png differ
index 13967009a4fe503957689c1f6c2c30cd086ea2a3..c549e78fa0dcee785900e5d2b1c25160ba8922f6 100644 (file)
Binary files a/priv/static/packs/icon_email-ed5d2a37fa765e4c5fec080a82b0a783.png and b/priv/static/packs/icon_email-ed5d2a37fa765e4c5fec080a82b0a783.png differ
index 3f7ac429b86840a8ec14e97197aa51cf7f584b84..447012b4b1a27ce432dd0e2c8fa7eb9ca5f06db6 100644 (file)
Binary files a/priv/static/packs/icon_file_download-0b212ed1bca11e1e02539a20b3821d87.png and b/priv/static/packs/icon_file_download-0b212ed1bca11e1e02539a20b3821d87.png differ
index 4123e2a6909a3df379ecf07ce07757c0172e829f..7e5f220a6d9a2f56f345d4c0f63e15be488013d0 100644 (file)
Binary files a/priv/static/packs/icon_follow_requests-32eaf00987b072b2b12f8015d6a6a250.png and b/priv/static/packs/icon_follow_requests-32eaf00987b072b2b12f8015d6a6a250.png differ
index 8c212b7eef634924d34a59dbcc9baa4aa7e10671..1a4a8a4dc96338fa821dbb1374dc45db302d4dd3 100644 (file)
Binary files a/priv/static/packs/icon_grade-1f9e039d0f024626ab071d18098b65a0.png and b/priv/static/packs/icon_grade-1f9e039d0f024626ab071d18098b65a0.png differ
index 66ce779c0d7e4abd5a2e045c07e859d5760091c3..6bc35c479af332deacdd143c0f6924839ba5313b 100644 (file)
Binary files a/priv/static/packs/icon_home-433b9d93fc1f035ec09330c2512a4879.png and b/priv/static/packs/icon_home-433b9d93fc1f035ec09330c2512a4879.png differ
index d66f3939e104c29fb24ec3b3fd7b2a16973db51a..ce82f08850e4895379cbbcdbea39f342542b72b9 100644 (file)
Binary files a/priv/static/packs/icon_keyboard_shortcuts-4b183486762cfcc9f0de7522520a5485.png and b/priv/static/packs/icon_keyboard_shortcuts-4b183486762cfcc9f0de7522520a5485.png differ
index 17d7a9c59bd1805db6880a5e72790a44bee57118..997bb0fccb288a3df9a5510c67febd336c0496b2 100644 (file)
Binary files a/priv/static/packs/icon_likes-27b8551da2d56d81062818c035ed622e.png and b/priv/static/packs/icon_likes-27b8551da2d56d81062818c035ed622e.png differ
index 3828946e81b86fbec8d19b2f4bbb3832f4414ee8..c50ecd936af3287855a47f570f1e303507f2bc51 100644 (file)
Binary files a/priv/static/packs/icon_lists-ae69bf4fb26c40d2c9b056c55c9153e2.png and b/priv/static/packs/icon_lists-ae69bf4fb26c40d2c9b056c55c9153e2.png differ
index 5f82df395659a43cb2c895f9ca619ab66a25efa4..261a13a73781ff8de7d0e6b1cb17c5bfb82300bb 100644 (file)
Binary files a/priv/static/packs/icon_local-eade3ebeb7ac50f798cd40ed5fe62232.png and b/priv/static/packs/icon_local-eade3ebeb7ac50f798cd40ed5fe62232.png differ
index c854c3bdb5cca3a8b04b0c9f2fc8243dfc89ef36..223deb1859dea6c3da287cb762934fc4a5eec099 100644 (file)
Binary files a/priv/static/packs/icon_lock_open-d377f10d3f005d0d042a1ee1dee8284d.png and b/priv/static/packs/icon_lock_open-d377f10d3f005d0d042a1ee1dee8284d.png differ
index 7ff806f58623f24f2c0d2dad64d10d52309649dd..9a074d2310f13161fb4ac59893fd649094bbab8a 100644 (file)
Binary files a/priv/static/packs/icon_logout-3abd28c4fc25290e6e4088c50d3352f4.png and b/priv/static/packs/icon_logout-3abd28c4fc25290e6e4088c50d3352f4.png differ
index c2225e966eb71831ebb3dff460b17514230cb3c8..6296a49721f94dc649802cf91fe1c74b586cc7d5 100644 (file)
Binary files a/priv/static/packs/icon_mutes-5e7612d5c63fedb3fc59558284304cfc.png and b/priv/static/packs/icon_mutes-5e7612d5c63fedb3fc59558284304cfc.png differ
index 6290a42aeda69ede03b74adde3a29019df2e1748..e6204e9c8b668d9bfecba9ee9e4b67be958ca215 100644 (file)
Binary files a/priv/static/packs/icon_person_add-44d0a8dfa7dce95be5f6e3cfe0cdd133.png and b/priv/static/packs/icon_person_add-44d0a8dfa7dce95be5f6e3cfe0cdd133.png differ
index 2329d8c54d8b1707771166c18ee74990a842f328..e8a94266e4b422554a65f9b6d3ff59f5344308de 100644 (file)
Binary files a/priv/static/packs/icon_pin-79e04b07bcaa1266eee3164e83f574b4.png and b/priv/static/packs/icon_pin-79e04b07bcaa1266eee3164e83f574b4.png differ
index 3c09460dba54281e6d592133903639c371fc3478..ee0b8cc5664d5aa680f3fc0c5bf4fc940bb7a072 100644 (file)
Binary files a/priv/static/packs/icon_public-2d798a39bb2bd6314e47b00669686556.png and b/priv/static/packs/icon_public-2d798a39bb2bd6314e47b00669686556.png differ
index a70093356f351b3161ad76f0c6d0e894acd446bf..544211c8cc207bd07e8bd71ad506a8945723822d 100644 (file)
Binary files a/priv/static/packs/icon_reply-1c00f97d10006dd420bc620b26a79d8a.png and b/priv/static/packs/icon_reply-1c00f97d10006dd420bc620b26a79d8a.png differ
index 07f5c45192a959bae1be87681a2377c85e00be59..4c16ceef8c1e704c4b8d3cc154b774040f70f5d3 100644 (file)
Binary files a/priv/static/packs/icon_settings-e7c53fb8ee137f93827e2db21f507cb1.png and b/priv/static/packs/icon_settings-e7c53fb8ee137f93827e2db21f507cb1.png differ
index 7baaac61cb82648d9acc63fdbdd4a8aaa7249e8b..feb67f3eae551789d4e4b9916ace896d80fe2715 100644 (file)
Binary files a/priv/static/packs/icon_warning-af2b38fe580f274ca4c80479bd12141e.png and b/priv/static/packs/icon_warning-af2b38fe580f274ca4c80479bd12141e.png differ
index 82d981fc66452b7ae7cc0c3b8f5408bbae4ef4ca..19bdd81aa3dca8ae28bce01913b5d7be4280e37d 100644 (file)
Binary files a/priv/static/packs/logo_full-efefe08462ede002abb7fc1e69005cbb.png and b/priv/static/packs/logo_full-efefe08462ede002abb7fc1e69005cbb.png differ
index 6dbcc2e8df3953e009a2365cabf0664561240d13..28ead92d5fec009997e4e5d208b1a52351c625ed 100644 (file)
Binary files a/priv/static/packs/logo_transparent-73bf4bea5ad08ce44d516e472dc452c1.png and b/priv/static/packs/logo_transparent-73bf4bea5ad08ce44d516e472dc452c1.png differ
index 41a5d1c3a8120f60262f6857352292a1049fcc84..a7d6644c8f7170008eecf56e8b63495a182a5622 100644 (file)
Binary files a/priv/static/packs/reticle-6490ecbb61185e86e62dca0845cf2dcf.png and b/priv/static/packs/reticle-6490ecbb61185e86e62dca0845cf2dcf.png differ
index 45b270fbb0a6621e29c75da1702226c69dc0ac3e..ab74624910324e24e735203983a31cb500b0e025 100644 (file)
Binary files a/priv/static/packs/screenshot-752460e373ba6c7519109936bd0656f6.jpg and b/priv/static/packs/screenshot-752460e373ba6c7519109936bd0656f6.jpg differ
index 7843455b60d86ec7d0dd821c9a8928f4eb81c963..ea19ee306e51751d993ae63db2cf38e24443a833 100644 (file)
Binary files a/priv/static/packs/start-d443e819b6248a54c6eb466c75938306.png and b/priv/static/packs/start-d443e819b6248a54c6eb466c75938306.png differ
index d730666880b736f0dc2d16343bac0bd91b221126..c2b803c13273c87888b717b68ab8dde7cd59f1cb 100644 (file)
Binary files a/priv/static/packs/void-4c8270c17facce6d53726a2ebb9745f2.png and b/priv/static/packs/void-4c8270c17facce6d53726a2ebb9745f2.png differ
index ca9f9e1d85d222e7bf80649c55783db928cc79d4..6525035dce6f118d8807af941576ba92155cdc87 100644 (file)
Binary files a/priv/static/packs/wave-drawer-ee1bfcbe5811ea31771b7187c7507ee6.png and b/priv/static/packs/wave-drawer-ee1bfcbe5811ea31771b7187c7507ee6.png differ
index 2290663db49ef6336a1bcdcd39d81811fcf4b5a8..58ba61bca959da0b34a66ca7915920d0f98a6537 100644 (file)
Binary files a/priv/static/packs/wave-drawer-glitched-33467bf8c8d2b995d6c76d8810aba3db.png and b/priv/static/packs/wave-drawer-glitched-33467bf8c8d2b995d6c76d8810aba3db.png differ
index b6a0daf91655f8c6e8b51deddda7558ad3c5f781..230e2abd7368e425ae362c3bb9b906486f4cf29e 100644 (file)
Binary files a/priv/static/static/aurora_borealis.jpg and b/priv/static/static/aurora_borealis.jpg differ
index 60e2311a21063ae949fe2c11e944ff5226574098..9a47504d14eb64009836771fc0b0cea3e7973035 100644 (file)
Binary files a/priv/static/static/bg2.jpg and b/priv/static/static/bg2.jpg differ
index fdb666ff0bfd0b7871899bc9e376e5aa1b2a3ab1..f6536337b031f4050ec07ed98ab0fff1212b963b 100644 (file)
Binary files a/priv/static/static/bgalt.jpg and b/priv/static/static/bgalt.jpg differ
index d251377676855aa1c25428a1175c1372b10940cd..e32525aa53bc1e8314a7d2f90e97c9c35f6addf3 100644 (file)
Binary files a/priv/static/static/img/nsfw.74818f9.png and b/priv/static/static/img/nsfw.74818f9.png differ
index 7744b1acc313c5a146410cc5a56d99629022c637..c3c92914bbf579d3f1f04e93c666d825471e0236 100644 (file)
Binary files a/priv/static/static/logo.png and b/priv/static/static/logo.png differ
index 09834bb5c389c2d6deb390079bb468fdcf207f09..edff6246b3a15630508657e939df82e7826e39fb 100644 (file)
Binary files a/test/fixtures/image.jpg and b/test/fixtures/image.jpg differ
index bdda01b3fd95b6d10f3619be50bed5962985e085..946ebcb5aa54e512395b2067d15b1598acb02c53 100644 (file)
@@ -56,7 +56,7 @@ defmodule Pleroma.UploadTest do
 
       assert List.first(data["url"])["href"] ==
                Pleroma.Web.base_url() <>
-                 "/media/e7a6d0cf595bff76f14c9a98b6c199539559e8b844e02e51e5efcfd1f614a2df.jpg"
+                 "/media/e30397b58d226d6583ab5b8b3c5defb0c682bda5c31ef07a9f57c1c4986e3781.jpg"
     end
 
     test "copies the file to the configured folder without deduping" do
index 4c97b0d62930024f6464569fa9a74f75e366f83b..e04b9f9b53e3a51ba0c5ee8abf1352ca90cb6df0 100644 (file)
@@ -4,6 +4,7 @@
 
 defmodule Pleroma.Web.CommonAPI.UtilsTest do
   alias Pleroma.Builders.UserBuilder
+  alias Pleroma.Object
   alias Pleroma.Web.CommonAPI.Utils
   alias Pleroma.Web.Endpoint
   use Pleroma.DataCase
@@ -136,4 +137,20 @@ defmodule Pleroma.Web.CommonAPI.UtilsTest do
       assert output == expected
     end
   end
+
+  describe "context_to_conversation_id" do
+    test "creates a mapping object" do
+      conversation_id = Utils.context_to_conversation_id("random context")
+      object = Object.get_by_ap_id("random context")
+
+      assert conversation_id == object.id
+    end
+
+    test "returns an existing mapping for an existing object" do
+      {:ok, object} = Object.context_mapping("random context") |> Repo.insert()
+      conversation_id = Utils.context_to_conversation_id("random context")
+
+      assert conversation_id == object.id
+    end
+  end
 end
index ade0ca9f9e8a6c3683e8836ddf650aaf0dd4c382..e1c9b2c8f61a03897673143f77800204d8b346ae 100644 (file)
@@ -9,6 +9,7 @@ defmodule Pleroma.Web.MastodonAPI.StatusViewTest do
   alias Pleroma.User
   alias Pleroma.Web.ActivityPub.ActivityPub
   alias Pleroma.Web.CommonAPI
+  alias Pleroma.Web.CommonAPI.Utils
   alias Pleroma.Web.MastodonAPI.AccountView
   alias Pleroma.Web.MastodonAPI.StatusView
   alias Pleroma.Web.OStatus
@@ -72,6 +73,8 @@ defmodule Pleroma.Web.MastodonAPI.StatusViewTest do
     note = insert(:note_activity)
     user = User.get_cached_by_ap_id(note.data["actor"])
 
+    convo_id = Utils.context_to_conversation_id(note.data["object"]["context"])
+
     status = StatusView.render("status.json", %{activity: note})
 
     created_at =
@@ -122,7 +125,8 @@ defmodule Pleroma.Web.MastodonAPI.StatusViewTest do
         }
       ],
       pleroma: %{
-        local: true
+        local: true,
+        conversation_id: convo_id
       }
     }
 
index c8dd3fd7ae26c7b742cb69d6579637f7b722bbaf..b823bfd68f6e00a4c0486aa20816d09df6776f39 100644 (file)
@@ -445,22 +445,6 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPITest do
     :ok
   end
 
-  describe "context_to_conversation_id" do
-    test "creates a mapping object" do
-      conversation_id = TwitterAPI.context_to_conversation_id("random context")
-      object = Object.get_by_ap_id("random context")
-
-      assert conversation_id == object.id
-    end
-
-    test "returns an existing mapping for an existing object" do
-      {:ok, object} = Object.context_mapping("random context") |> Repo.insert()
-      conversation_id = TwitterAPI.context_to_conversation_id("random context")
-
-      assert conversation_id == object.id
-    end
-  end
-
   describe "fetching a user by uri" do
     test "fetches a user by uri" do
       id = "https://mastodon.social/users/lambadalambda"
index d9df01c6e74c49a092b331f9e6b04c4bd2e6b445..a1776b3e6ccc084cbec8c54404c82200fd2aa2c2 100644 (file)
@@ -12,7 +12,6 @@ defmodule Pleroma.Web.TwitterAPI.ActivityViewTest do
   alias Pleroma.Web.CommonAPI
   alias Pleroma.Web.CommonAPI.Utils
   alias Pleroma.Web.TwitterAPI.ActivityView
-  alias Pleroma.Web.TwitterAPI.TwitterAPI
   alias Pleroma.Web.TwitterAPI.UserView
 
   import Pleroma.Factory
@@ -129,7 +128,7 @@ defmodule Pleroma.Web.TwitterAPI.ActivityViewTest do
 
     result = ActivityView.render("activity.json", activity: activity)
 
-    convo_id = TwitterAPI.context_to_conversation_id(activity.data["object"]["context"])
+    convo_id = Utils.context_to_conversation_id(activity.data["object"]["context"])
 
     expected = %{
       "activity_type" => "post",
@@ -177,12 +176,12 @@ defmodule Pleroma.Web.TwitterAPI.ActivityViewTest do
     other_user = insert(:user, %{nickname: "shp"})
     {:ok, activity} = CommonAPI.post(user, %{"status" => "Hey @shp!"})
 
-    convo_id = TwitterAPI.context_to_conversation_id(activity.data["object"]["context"])
+    convo_id = Utils.context_to_conversation_id(activity.data["object"]["context"])
 
     mocks = [
       {
-        TwitterAPI,
-        [],
+        Utils,
+        [:passthrough],
         [context_to_conversation_id: fn _ -> false end]
       },
       {
@@ -197,7 +196,7 @@ defmodule Pleroma.Web.TwitterAPI.ActivityViewTest do
 
       assert result["statusnet_conversation_id"] == convo_id
       assert result["user"]
-      refute called(TwitterAPI.context_to_conversation_id(:_))
+      refute called(Utils.context_to_conversation_id(:_))
       refute called(User.get_cached_by_ap_id(user.ap_id))
       refute called(User.get_cached_by_ap_id(other_user.ap_id))
     end
@@ -280,7 +279,7 @@ defmodule Pleroma.Web.TwitterAPI.ActivityViewTest do
     {:ok, activity} = CommonAPI.post(user, %{"status" => "Hey @shp!"})
     {:ok, announce, _object} = CommonAPI.repeat(activity.id, other_user)
 
-    convo_id = TwitterAPI.context_to_conversation_id(activity.data["object"]["context"])
+    convo_id = Utils.context_to_conversation_id(activity.data["object"]["context"])
 
     activity = Repo.get(Activity, activity.id)