2019-05-03 06:17:27 +08:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2014-09-25 02:45:35 +08:00
|
|
|
class SiteTextSerializer < ApplicationSerializer
|
2015-12-01 04:22:58 +08:00
|
|
|
attributes :id, :value, :overridden?, :can_revert?
|
2014-09-25 02:45:35 +08:00
|
|
|
|
2015-08-08 02:05:08 +08:00
|
|
|
def id
|
2015-11-24 05:45:05 +08:00
|
|
|
object[:id]
|
2014-09-25 02:45:35 +08:00
|
|
|
end
|
|
|
|
|
|
|
|
def value
|
2015-11-24 05:45:05 +08:00
|
|
|
object[:value]
|
2014-09-25 02:45:35 +08:00
|
|
|
end
|
|
|
|
|
2015-12-01 04:22:58 +08:00
|
|
|
def overridden?
|
2019-05-11 07:52:27 +08:00
|
|
|
if I18n.exists?(object[:id])
|
|
|
|
I18n.overrides_disabled { I18n.t(object[:id]) != object[:value] }
|
|
|
|
else
|
|
|
|
TranslationOverride.exists?(locale: I18n.locale, translation_key: object[:id])
|
2015-11-24 05:45:05 +08:00
|
|
|
end
|
2014-09-25 02:45:35 +08:00
|
|
|
end
|
2015-12-01 04:22:58 +08:00
|
|
|
|
|
|
|
alias_method :can_revert?, :overridden?
|
2014-09-25 02:45:35 +08:00
|
|
|
end
|