From fb01bbb290d37f491d603bdf015d994a39e153c7 Mon Sep 17 00:00:00 2001 From: miraikumiko Date: Mon, 21 Apr 2025 10:26:21 +0200 Subject: Init --- lib/nulla_web/controllers/error_html.ex | 24 +++ lib/nulla_web/controllers/error_json.ex | 21 ++ lib/nulla_web/controllers/page_controller.ex | 9 + lib/nulla_web/controllers/page_html.ex | 10 + lib/nulla_web/controllers/page_html/home.html.heex | 222 +++++++++++++++++++++ 5 files changed, 286 insertions(+) create mode 100644 lib/nulla_web/controllers/error_html.ex create mode 100644 lib/nulla_web/controllers/error_json.ex create mode 100644 lib/nulla_web/controllers/page_controller.ex create mode 100644 lib/nulla_web/controllers/page_html.ex create mode 100644 lib/nulla_web/controllers/page_html/home.html.heex (limited to 'lib/nulla_web/controllers') diff --git a/lib/nulla_web/controllers/error_html.ex b/lib/nulla_web/controllers/error_html.ex new file mode 100644 index 0000000..1b0e1c8 --- /dev/null +++ b/lib/nulla_web/controllers/error_html.ex @@ -0,0 +1,24 @@ +defmodule NullaWeb.ErrorHTML do + @moduledoc """ + This module is invoked by your endpoint in case of errors on HTML requests. + + See config/config.exs. + """ + use NullaWeb, :html + + # If you want to customize your error pages, + # uncomment the embed_templates/1 call below + # and add pages to the error directory: + # + # * lib/nulla_web/controllers/error_html/404.html.heex + # * lib/nulla_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 +end diff --git a/lib/nulla_web/controllers/error_json.ex b/lib/nulla_web/controllers/error_json.ex new file mode 100644 index 0000000..be9d1c3 --- /dev/null +++ b/lib/nulla_web/controllers/error_json.ex @@ -0,0 +1,21 @@ +defmodule NullaWeb.ErrorJSON do + @moduledoc """ + This module is invoked by your endpoint in case of errors on JSON requests. + + See config/config.exs. + """ + + # If you want to customize a particular status code, + # you may add your own clauses, such as: + # + # def render("500.json", _assigns) do + # %{errors: %{detail: "Internal Server Error"}} + # end + + # By default, Phoenix returns the status message from + # the template name. For example, "404.json" becomes + # "Not Found". + def render(template, _assigns) do + %{errors: %{detail: Phoenix.Controller.status_message_from_template(template)}} + end +end diff --git a/lib/nulla_web/controllers/page_controller.ex b/lib/nulla_web/controllers/page_controller.ex new file mode 100644 index 0000000..3daa035 --- /dev/null +++ b/lib/nulla_web/controllers/page_controller.ex @@ -0,0 +1,9 @@ +defmodule NullaWeb.PageController do + use NullaWeb, :controller + + def home(conn, _params) do + # The home page is often custom made, + # so skip the default app layout. + render(conn, :home, layout: false) + end +end diff --git a/lib/nulla_web/controllers/page_html.ex b/lib/nulla_web/controllers/page_html.ex new file mode 100644 index 0000000..fbb6c6e --- /dev/null +++ b/lib/nulla_web/controllers/page_html.ex @@ -0,0 +1,10 @@ +defmodule NullaWeb.PageHTML do + @moduledoc """ + This module contains pages rendered by PageController. + + See the `page_html` directory for all templates available. + """ + use NullaWeb, :html + + embed_templates "page_html/*" +end diff --git a/lib/nulla_web/controllers/page_html/home.html.heex b/lib/nulla_web/controllers/page_html/home.html.heex new file mode 100644 index 0000000..d72b03c --- /dev/null +++ b/lib/nulla_web/controllers/page_html/home.html.heex @@ -0,0 +1,222 @@ +<.flash_group flash={@flash} /> + +
+
+ +

+ Phoenix Framework + + v{Application.spec(:phoenix, :vsn)} + +

+

+ Peace of mind from prototype to production. +

+

+ Build rich, interactive web applications quickly, with less code and fewer moving parts. Join our growing community of developers using Phoenix to craft APIs, HTML5 apps and more, for fun or at scale. +

+ +
+
-- cgit v1.2.3