Class: DetailedUserBadgeSerializer

Inherits:
BasicUserBadgeSerializer show all
Includes:
UserBadgePostAndTopicAttributesMixin
Defined in:
app/serializers/detailed_user_badge_serializer.rb

Instance Method Summary collapse

Methods inherited from BasicUserBadgeSerializer

#grouping_position, #include_count?

Methods inherited from ApplicationSerializer

expire_cache_fragment!, fragment_cache

Methods inherited from ActiveModel::Serializer

#include!

Instance Method Details

#can_favoriteObject



34
35
36
37
38
# File 'app/serializers/detailed_user_badge_serializer.rb', line 34

def can_favorite
  SiteSetting.max_favorite_badges > 0 &&
    (scope.current_user.present? && object.user_id == scope.current_user.id) &&
    !(1..4).include?(object.badge_id)
end

#include_post_number?Boolean

Returns:

  • (Boolean)


14
15
16
# File 'app/serializers/detailed_user_badge_serializer.rb', line 14

def include_post_number?
  include_post_attributes?
end

#include_topic_id?Boolean

Returns:

  • (Boolean)


22
23
24
# File 'app/serializers/detailed_user_badge_serializer.rb', line 22

def include_topic_id?
  include_topic_attributes?
end

#include_topic_title?Boolean

Returns:

  • (Boolean)


30
31
32
# File 'app/serializers/detailed_user_badge_serializer.rb', line 30

def include_topic_title?
  include_topic_id?
end

#post_numberObject



10
11
12
# File 'app/serializers/detailed_user_badge_serializer.rb', line 10

def post_number
  object.post.post_number
end

#topic_idObject



18
19
20
# File 'app/serializers/detailed_user_badge_serializer.rb', line 18

def topic_id
  object.post.topic_id
end

#topic_titleObject



26
27
28
# File 'app/serializers/detailed_user_badge_serializer.rb', line 26

def topic_title
  object.post.topic.title
end