This repository has been archived on 2023-03-18. You can view files and clone it, but cannot push or open issues or pull requests.
osr-discourse-src/lib/pinned_check.rb
2023-01-09 12:10:19 +00:00

15 lines
478 B
Ruby

# frozen_string_literal: true
# Helps us determine whether a topic should be displayed as pinned or not,
# taking into account anonymous users and users who have dismissed it
class PinnedCheck
def self.unpinned?(topic, topic_user = nil)
topic.pinned_at && topic_user && topic_user.cleared_pinned_at &&
topic_user.cleared_pinned_at > topic.pinned_at
end
def self.pinned?(topic, topic_user = nil)
!!topic.pinned_at && !unpinned?(topic, topic_user)
end
end