55 lines
1.7 KiB
Elixir
55 lines
1.7 KiB
Elixir
defmodule SukaatoWeb.ErrorHTML do
|
|
@moduledoc """
|
|
This module is invoked by your endpoint in case of errors on HTML requests.
|
|
|
|
See config/config.exs.
|
|
"""
|
|
use SukaatoWeb, :html
|
|
|
|
# If you want to customize your error pages,
|
|
# uncomment the embed_templates/1 call below
|
|
# and add pages to the error directory:
|
|
#
|
|
# * lib/sukaato_web/controllers/error_html/404.html.heex
|
|
# * lib/sukaato_web/controllers/error_html/500.html.heex
|
|
#
|
|
embed_templates "error_html/*"
|
|
|
|
# The default is to render a plain text page based on
|
|
# the template name. For example, "404.html" becomes
|
|
# "Not Found".
|
|
# def render(template, _assigns) do
|
|
# Phoenix.Controller.status_message_from_template(template)
|
|
# end
|
|
|
|
@site_config_file Path.expand("../../../site.toml", __DIR__)
|
|
@site_config elem(Toml.decode_file(@site_config_file), 1)
|
|
|
|
attr :site_name, :string, default: @site_config["site"]["name"]
|
|
attr :site_author, :string, default: @site_config["site"]["author"]
|
|
attr :site_desc, :string, default: @site_config["site"]["desc"]
|
|
|
|
def html_head(assigns) do
|
|
~H"""
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<% # <meta name="keywords" content={@site_keywords}> %>
|
|
<meta name="author" content={@site_author}>
|
|
<meta name="description" content={@site_desc}>
|
|
<link rel="stylesheet" href={~p"/assets/app.css"}>
|
|
<title><%= @site_name %></title>
|
|
</head>
|
|
"""
|
|
end
|
|
|
|
def html_foot(assigns) do
|
|
# @TODO do HEEx loop on @badge_collection
|
|
~H"""
|
|
<footer>
|
|
<% # @TODO add list of badges here or an anchor element with attribute set to a badges route %>
|
|
</footer>
|
|
"""
|
|
end
|
|
end
|