mirror of
https://github.com/discourse/discourse.git
synced 2025-02-14 15:24:57 +00:00
4cb070f28c
FIX: Use configured slug generater method for badges
44 lines
877 B
Ruby
44 lines
877 B
Ruby
class BadgeSerializer < ApplicationSerializer
|
|
attributes :id, :name, :description, :grant_count, :allow_title,
|
|
:multiple_grant, :icon, :image, :listable, :enabled, :badge_grouping_id,
|
|
:system, :long_description, :slug
|
|
|
|
has_one :badge_type
|
|
|
|
def system
|
|
object.system?
|
|
end
|
|
|
|
def include_long_description?
|
|
options[:include_long_description]
|
|
end
|
|
|
|
def long_description
|
|
if object.long_description.present?
|
|
object.long_description
|
|
else
|
|
key = "badges.long_descriptions.#{i18n_name}"
|
|
if I18n.exists?(key)
|
|
I18n.t(key)
|
|
else
|
|
""
|
|
end
|
|
end
|
|
end
|
|
|
|
def slug
|
|
Slug.for(display_name, '')
|
|
end
|
|
|
|
private
|
|
|
|
def i18n_name
|
|
object.name.downcase.gsub(' ', '_')
|
|
end
|
|
|
|
def display_name
|
|
key = "admin_js.badges.badge.#{i18n_name}.name"
|
|
I18n.t(key, default: object.name)
|
|
end
|
|
end
|