analytics/lib/plausible_web/views/email_view.ex
hq1 74675f0cbc
Move dogfooding to full build (#3576)
* Move dogfooding to `extra/`

* Remove unused view functions
2023-12-04 10:30:20 +01:00

35 lines
776 B
Elixir

defmodule PlausibleWeb.EmailView do
use Plausible
use PlausibleWeb, :view
def plausible_url do
PlausibleWeb.Endpoint.url()
end
def greet_recipient(%{user: %{name: name}}) when is_binary(name) do
"Hey #{String.split(name) |> List.first()},"
end
def greet_recipient(_), do: "Hey,"
def date_format(date) do
Timex.format!(date, "{D} {Mshort} {YYYY}")
end
def sentry_link(trace_id, dsn \\ Sentry.Config.dsn()) do
search_query = URI.encode_query(%{query: trace_id})
path = "/organizations/sentry/issues/"
if is_binary(dsn) do
dsn
|> URI.parse()
|> Map.replace(:userinfo, nil)
|> Map.replace(:path, path)
|> Map.replace(:query, search_query)
|> URI.to_string()
else
""
end
end
end