Retrospring/app/controllers/concerns/paginates_answers.rb

13 lines
493 B
Ruby
Raw Normal View History

2023-02-16 15:35:03 -08:00
# frozen_string_literal: true
module PaginatesAnswers
def paginate_answers
@answers = yield(last_id: params[:last_id])
2023-02-16 15:35:03 -08:00
answer_ids = @answers.map(&:id)
answer_ids += @pinned_answers.pluck(:id) if @pinned_answers.present?
@answers_last_id = answer_ids.min
@more_data_available = !yield(last_id: @answers_last_id, size: 1).count.zero?
2023-03-19 08:00:15 -07:00
@subscribed_answer_ids = Subscription.where(user: current_user, answer_id: answer_ids).pluck(:answer_id) if user_signed_in?
2023-02-16 15:35:03 -08:00
end
end