Merge pull request 'Correct og:description tag in static-fe' (#373) from sfr/akkoma...
[akkoma] / lib / pleroma / web / o_auth / token / query.ex
index 8edfcf5d70ed0302d53bdf3c176042504e9f8b8f..662e7856d366a27aa9361a07316b6b11874baffb 100644 (file)
@@ -23,15 +23,9 @@ defmodule Pleroma.Web.OAuth.Token.Query do
     from(q in query, where: q.token == ^token)
   end
 
-  @spec get_unexpired_by_app(query, String.t()) :: query
-  def get_unexpired_by_app(query \\ Token, app_id) do
-    time = NaiveDateTime.utc_now()
-    from(q in query, where: q.app_id == ^app_id and q.valid_until > ^time, limit: 1)
-  end
-
   @spec get_by_app(query, String.t()) :: query
   def get_by_app(query \\ Token, app_id) do
-    from(q in query, where: q.app_id == ^app_id, limit: 1)
+    from(q in query, where: q.app_id == ^app_id)
   end
 
   @spec get_by_id(query, String.t()) :: query
@@ -44,6 +38,19 @@ defmodule Pleroma.Web.OAuth.Token.Query do
     from(q in query, where: q.user_id == ^user_id)
   end
 
+  def get_unexpired(query) do
+    now = NaiveDateTime.utc_now()
+    from(q in query, where: q.valid_until > ^now)
+  end
+
+  def limit(query, limit) do
+    from(q in query, limit: ^limit)
+  end
+
+  def sort_by_inserted_at(query) do
+    from(q in query, order_by: [desc: :updated_at])
+  end
+
   @spec preload(query, any) :: query
   def preload(query \\ Token, assoc_preload \\ [])