2018-12-23 13:04:54 -07:00
|
|
|
# Pleroma: A lightweight social networking server
|
2021-01-12 23:49:20 -07:00
|
|
|
# Copyright © 2017-2021 Pleroma Authors <https://pleroma.social/>
|
2018-12-23 13:04:54 -07:00
|
|
|
# SPDX-License-Identifier: AGPL-3.0-only
|
|
|
|
|
2017-03-17 10:09:58 -06:00
|
|
|
defmodule Pleroma.Web.ErrorView do
|
|
|
|
use Pleroma.Web, :view
|
2019-02-19 14:31:27 -07:00
|
|
|
require Logger
|
2017-03-17 10:09:58 -06:00
|
|
|
|
|
|
|
def render("404.json", _assigns) do
|
|
|
|
%{errors: %{detail: "Page not found"}}
|
|
|
|
end
|
|
|
|
|
2019-02-19 14:31:27 -07:00
|
|
|
def render("500.json", assigns) do
|
|
|
|
Logger.error("Internal server error: #{inspect(assigns[:reason])}")
|
|
|
|
|
2019-06-06 14:59:51 -06:00
|
|
|
if Pleroma.Config.get(:env) != :prod do
|
2019-02-20 10:36:19 -07:00
|
|
|
%{errors: %{detail: "Internal server error", reason: inspect(assigns[:reason])}}
|
|
|
|
else
|
|
|
|
%{errors: %{detail: "Internal server error"}}
|
|
|
|
end
|
2017-03-17 10:09:58 -06: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 07:01:53 -06:00
|
|
|
render("500.json", assigns)
|
2017-03-17 10:09:58 -06:00
|
|
|
end
|
|
|
|
end
|