From 2fa4c24575bddef4a6ef9b53c53671c4a1497a9e Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Fri, 15 Nov 2024 16:27:03 -0500 Subject: [PATCH] Add `used` scope to access token --- app/lib/access_token_extension.rb | 1 + app/models/user.rb | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/app/lib/access_token_extension.rb b/app/lib/access_token_extension.rb index 6e06f988a5..8b28506fd4 100644 --- a/app/lib/access_token_extension.rb +++ b/app/lib/access_token_extension.rb @@ -13,6 +13,7 @@ module AccessTokenExtension scope :expired, -> { where.not(expires_in: nil).where('created_at + MAKE_INTERVAL(secs => expires_in) < NOW()') } scope :not_revoked, -> { where(revoked_at: nil) } scope :revoked, -> { where.not(revoked_at: nil).where(revoked_at: ...Time.now.utc) } + scope :used, -> { where.not(last_used_at: nil) } end def revoke(clock = Time) diff --git a/app/models/user.rb b/app/models/user.rb index be9ebac699..07f67c35ab 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -283,7 +283,7 @@ class User < ApplicationRecord def applications_last_used Doorkeeper::AccessToken .where(resource_owner_id: id) - .where.not(last_used_at: nil) + .used .group(:application_id) .maximum(:last_used_at) .to_h