defmodule ExWeb.Errors do alias Plug.Conn require EEx use ExWeb.Template, render: :ex_render def render(conn, status, message \\ nil, description \\ nil) def render(%Conn{request_path: request_path} = conn, 404, message, description) do assigns = %{ status: 404, message: message || "Not Found", description: description || "The requested URL #{request_path} was not found on this server" } conn |> Conn.send_resp(200, ex_render("index.html", assigns)) end def render(%Conn{} = conn, status, message, description) do assigns = %{ status: status, message: message || "An Unkown Error Occured", description: description } conn |> Conn.send_resp(status, ex_render("index.html", assigns)) end end