debian-mirror-gitlab/app/controllers/concerns/render_access_tokens.rb
2023-01-12 18:35:48 +00:00

31 lines
784 B
Ruby

# frozen_string_literal: true
module RenderAccessTokens
extend ActiveSupport::Concern
def active_access_tokens
tokens = finder(state: 'active', sort: 'expires_at_asc_id_desc').execute.preload_users
if Feature.enabled?('access_token_pagination')
tokens = tokens.page(page)
add_pagination_headers(tokens)
end
represent(tokens)
end
def add_pagination_headers(relation)
Gitlab::Pagination::OffsetHeaderBuilder.new(
request_context: self,
per_page: relation.limit_value,
page: relation.current_page,
next_page: relation.next_page,
prev_page: relation.prev_page,
total: relation.total_count,
params: params.permit(:page, :per_page)
).execute
end
def page
(params[:page] || 1).to_i
end
end