Better error handling for user feeds.

This commit is contained in:
Roger Braun 2017-08-03 17:46:01 +02:00
parent 7b0dd964be
commit 11714fbaa2

View File

@ -8,11 +8,13 @@ defmodule Pleroma.Web.OStatus.OStatusController do
import Ecto.Query
def feed_redirect(conn, %{"nickname" => nickname}) do
user = User.get_cached_by_nickname(nickname)
case get_format(conn) do
"html" -> Fallback.RedirectController.redirector(conn, nil)
_ -> redirect conn, external: OStatus.feed_path(user)
with %User{} = user <- User.get_cached_by_nickname(nickname) do
case get_format(conn) do
"html" -> Fallback.RedirectController.redirector(conn, nil)
_ -> redirect conn, external: OStatus.feed_path(user)
end
else
_e -> send_resp(conn, 404, "No user found")
end
end