mirror of
https://github.com/philomena-dev/philomena.git
synced 2024-11-30 23:08:00 +01:00
34 lines
1.1 KiB
Elixir
34 lines
1.1 KiB
Elixir
defmodule PhilomenaWeb.Admin.ReportView do
|
|
use PhilomenaWeb, :view
|
|
|
|
alias Philomena.Images.Image
|
|
alias Philomena.Comments.Comment
|
|
|
|
import PhilomenaWeb.ReportView, only: [link_to_reported_thing: 2, report_row_class: 1, pretty_state: 1]
|
|
import PhilomenaWeb.ProfileView, only: [user_abbrv: 2, current?: 2]
|
|
|
|
def truncate(<<string::binary-size(50), _rest::binary>>), do: string <> "..."
|
|
def truncate(string), do: string
|
|
|
|
def truncated_ip_link(conn, ip) do
|
|
case to_string(ip) do
|
|
<<string::binary-size(25), _rest::binary>> = ip ->
|
|
link(string <> "...", to: Routes.ip_profile_path(conn, :show, ip))
|
|
|
|
ip ->
|
|
link(ip, to: Routes.ip_profile_path(conn, :show, ip))
|
|
end
|
|
end
|
|
|
|
def ordered_tags(tags) do
|
|
Enum.sort_by(tags, & &1.name)
|
|
end
|
|
|
|
def reported_image(conn, %Image{} = image) do
|
|
render PhilomenaWeb.ImageView, "_image_container.html", image: image, size: :thumb_tiny, conn: conn
|
|
end
|
|
def reported_image(conn, %Comment{image: image}) do
|
|
render PhilomenaWeb.ImageView, "_image_container.html", image: image, size: :thumb_tiny, conn: conn
|
|
end
|
|
def reported_image(_conn, _reportable), do: nil
|
|
end
|