Commit c171f979 authored by Jorty's avatar Jorty

Move emoji glob setting to config.exs

Also, a bit of formatting, and the glob includes an "/emoji/" prefix to
make it more intuitive to users
parent 0bfbf15b
......@@ -12,6 +12,8 @@ config :pleroma, Pleroma.Repo, types: Pleroma.PostgresTypes
config :pleroma, Pleroma.Upload, uploads: "uploads"
config :pleroma, :emoji, shortcode_glob: "/emoji/by-shortcode/**/*.png"
# Configures the endpoint
config :pleroma, Pleroma.Web.Endpoint,
url: [host: "localhost"],
......
......@@ -173,23 +173,30 @@ defmodule Pleroma.Web.TwitterAPI.UtilController do
end
def emoji(conn, _params) do
emoji_dir = Path.join(:code.priv_dir(:pleroma), "static/emoji")
shortcode_emoji_glob =
Path.join(
emoji_dir,
Application.get_env(:pleroma, :emoji, []) |>
Keyword.get(:glob, "by-shortcode/**/*.png")
)
static_dir = Path.join(:code.priv_dir(:pleroma), "static")
emoji_shortcode_glob =
Application.get_env(:pleroma, :emoji, [])
|> Keyword.get(:shortcode_glob)
shortcode_emoji =
Path.wildcard(shortcode_emoji_glob) |>
Enum.map(fn path ->
shortcode = Path.basename(path, ".png")
serve_path = Path.join("/emoji", Path.relative_to(path, emoji_dir))
{shortcode, serve_path}
end)
case emoji_shortcode_glob do
nil ->
[]
glob ->
Path.join(static_dir, glob)
|> Path.wildcard()
|> Enum.map(fn path ->
shortcode = Path.basename(path, ".png")
serve_path = Path.join("/", Path.relative_to(path, static_dir))
{shortcode, serve_path}
end)
end
emoji = Enum.into(Formatter.get_custom_emoji(), shortcode_emoji) |> Enum.into(%{})
emoji =
Enum.into(Formatter.get_custom_emoji(), shortcode_emoji)
|> Enum.into(%{})
json(conn, emoji)
end
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment