discourse/app/serializers/site_text_serializer.rb
Ted Johansson 6fc62586a2
FEATURE: Show available interpolation keys when overriding translations (#22220)
This is the first of a number of PRs aimed at helping admins manage their translation overrides. It simply adds a list of available interpolation keys below the input field when editing an override.

It also includes custom interpolation key.
2023-06-28 19:03:04 +08:00

32 lines
657 B
Ruby

# frozen_string_literal: true
class SiteTextSerializer < ApplicationSerializer
attributes :id, :value, :interpolation_keys, :has_interpolation_keys?, :overridden?, :can_revert?
def id
object[:id]
end
def value
object[:value]
end
def interpolation_keys
object[:interpolation_keys]
end
def has_interpolation_keys?
object[:interpolation_keys].present?
end
def overridden?
if options[:overridden_keys]
options[:overridden_keys].include?(object[:id])
else
TranslationOverride.exists?(locale: object[:locale], translation_key: object[:id])
end
end
alias_method :can_revert?, :overridden?
end