2019-05-02 18:17:27 -04:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2014-09-24 14:45:35 -04:00
|
|
|
class SiteTextSerializer < ApplicationSerializer
|
2023-06-28 07:03:04 -04:00
|
|
|
attributes :id, :value, :interpolation_keys, :has_interpolation_keys?, :overridden?, :can_revert?
|
2014-09-24 14:45:35 -04:00
|
|
|
|
2015-08-07 14:05:08 -04:00
|
|
|
def id
|
2015-11-23 16:45:05 -05:00
|
|
|
object[:id]
|
2014-09-24 14:45:35 -04:00
|
|
|
end
|
|
|
|
|
|
|
|
def value
|
2015-11-23 16:45:05 -05:00
|
|
|
object[:value]
|
2014-09-24 14:45:35 -04:00
|
|
|
end
|
|
|
|
|
2023-06-28 07:03:04 -04:00
|
|
|
def interpolation_keys
|
|
|
|
object[:interpolation_keys]
|
|
|
|
end
|
|
|
|
|
|
|
|
def has_interpolation_keys?
|
|
|
|
object[:interpolation_keys].present?
|
|
|
|
end
|
|
|
|
|
2015-11-30 15:22:58 -05:00
|
|
|
def overridden?
|
2019-07-01 21:53:16 -04:00
|
|
|
if options[:overridden_keys]
|
|
|
|
options[:overridden_keys].include?(object[:id])
|
2019-05-10 19:52:27 -04:00
|
|
|
else
|
2021-01-20 15:43:00 -05:00
|
|
|
TranslationOverride.exists?(locale: object[:locale], translation_key: object[:id])
|
2015-11-23 16:45:05 -05:00
|
|
|
end
|
2014-09-24 14:45:35 -04:00
|
|
|
end
|
2015-11-30 15:22:58 -05:00
|
|
|
|
|
|
|
alias_method :can_revert?, :overridden?
|
2014-09-24 14:45:35 -04:00
|
|
|
end
|