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