discourse/app/models/trust_level_setting.rb
David Taylor 1ccb6583b1
FIX: Do not cache translated trust level names in site settings (#11863)
There's no real need to cache these, and the caching can introduce
problems when different sites/users are using different locales.
2021-01-27 14:31:19 +00:00

26 lines
479 B
Ruby

# frozen_string_literal: true
class TrustLevelSetting < EnumSiteSetting
def self.valid_value?(val)
val.to_i.to_s == val.to_s &&
valid_values.any? { |v| v == val.to_i }
end
def self.values
levels = TrustLevel.all
valid_values.map { |x|
{
name: x.is_a?(Integer) ? "#{x}: #{levels[x.to_i].name}" : x,
value: x
}
}
end
def self.valid_values
TrustLevel.valid_range.to_a
end
private_class_method :valid_values
end