From fb6a441acd3b216e2d9a27957dd27f64ad5f0635 Mon Sep 17 00:00:00 2001 From: Shadowfacts Date: Sun, 10 Nov 2019 14:55:24 -0500 Subject: [PATCH] Fix several Fever API bugs --- lib/frenzy_web/controllers/fever_controller.ex | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/lib/frenzy_web/controllers/fever_controller.ex b/lib/frenzy_web/controllers/fever_controller.ex index e21d607..10f4bff 100644 --- a/lib/frenzy_web/controllers/fever_controller.ex +++ b/lib/frenzy_web/controllers/fever_controller.ex @@ -50,7 +50,7 @@ defmodule FrenzyWeb.FeverController do end defp fever_response(user, params) do - %{api_version: 2, auth: 1} + %{api_version: 3, auth: 1} |> mark(user, params) |> unread_recently_read(user, params) |> feeds(user, params) @@ -211,7 +211,7 @@ defmodule FrenzyWeb.FeverController do {id, _} = id |> String.trim() |> Integer.parse() item = Repo.get(Item, id) - if item.feed_id in feed_ids do + if not is_nil(item) and item.feed_id in feed_ids do item else nil @@ -221,24 +221,22 @@ defmodule FrenzyWeb.FeverController do Map.has_key?(params, "since_id") -> since = Repo.get(Item, params["since_id"]) - {since, _} = Integer.parse(since) Repo.all( from i in Item, where: i.feed_id in ^feed_ids, - where: i.inserted_at > ^since, + where: i.inserted_at > ^since.inserted_at, order_by: [asc: :id], limit: 50 ) Map.has_key?(params, "max_id") -> max = Repo.get(Item, params["max_id"]) - {max, _} = Integer.parse(max) Repo.all( from i in Item, where: i.feed_id in ^feed_ids, - where: i.inserted_at < ^max, + where: i.inserted_at < ^max.inserted_at, order_by: [desc: :id], limit: 50 )