Files
monotab/lib/layouts/post_layout.ex
2025-07-26 13:27:35 -04:00

24 lines
634 B
Elixir

defmodule MonoTab.PostLayout do
use Tableau.Layout, layout: MonoTab.RootLayout
use Phoenix.Component
def template(assigns) do
~H"""
{{:safe, render(@inner_content)}}
<%= if @page[:date] do %>
<time datetime={@page[:date]}>{format_date(@page[:date])}</time>
<% end %>
"""
end
defp format_date(date_string) when is_binary(date_string) do
case Date.from_iso8601(date_string) do
{:ok, date} -> Calendar.strftime(date, "%B %d, %Y")
{:error, _} -> date_string
end
end
defp format_date(%Date{} = date), do: Calendar.strftime(date, "%B %d, %Y")
defp format_date(_), do: ""
end