2018-12-23 20:04:54 +00:00
|
|
|
# Pleroma: A lightweight social networking server
|
2023-01-01 11:11:47 +00:00
|
|
|
# Copyright © 2017-2023 Pleroma Authors <https://pleroma.social/>
|
2018-12-23 20:04:54 +00:00
|
|
|
# SPDX-License-Identifier: AGPL-3.0-only
|
|
|
|
|
2017-03-17 16:09:58 +00:00
|
|
|
defmodule Pleroma.Web.ErrorView do
|
|
|
|
use Pleroma.Web, :view
|
2019-02-19 21:31:27 +00:00
|
|
|
require Logger
|
2017-03-17 16:09:58 +00:00
|
|
|
|
|
|
|
def render("404.json", _assigns) do
|
|
|
|
%{errors: %{detail: "Page not found"}}
|
|
|
|
end
|
|
|
|
|
2019-02-19 21:31:27 +00:00
|
|
|
def render("500.json", assigns) do
|
|
|
|
Logger.error("Internal server error: #{inspect(assigns[:reason])}")
|
|
|
|
|
2019-06-06 20:59:51 +00:00
|
|
|
if Pleroma.Config.get(:env) != :prod do
|
2019-02-20 17:36:19 +00:00
|
|
|
%{errors: %{detail: "Internal server error", reason: inspect(assigns[:reason])}}
|
|
|
|
else
|
|
|
|
%{errors: %{detail: "Internal server error"}}
|
|
|
|
end
|
2017-03-17 16:09:58 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
# In case no render clause matches or no
|
|
|
|
# template is found, let's render it as 500
|
|
|
|
def template_not_found(_template, assigns) do
|
2018-03-30 13:01:53 +00:00
|
|
|
render("500.json", assigns)
|
2017-03-17 16:09:58 +00:00
|
|
|
end
|
|
|
|
end
|