DEV: Make hex cache work like other caches (#20816)
This commit is contained in:
parent
9d34b73a5e
commit
b2554e1490
|
@ -409,13 +409,13 @@ class ColorScheme < ActiveRecord::Base
|
|||
def self.lookup_hex_for_name(name, scheme_id = nil)
|
||||
enabled_color_scheme = find_by(id: scheme_id) if scheme_id
|
||||
enabled_color_scheme ||= Theme.where(id: SiteSetting.default_theme_id).first&.color_scheme
|
||||
(enabled_color_scheme || base).colors.find { |c| c.name == name }.try(:hex) || "nil"
|
||||
(enabled_color_scheme || base).colors.find { |c| c.name == name }.try(:hex)
|
||||
end
|
||||
|
||||
def self.hex_for_name(name, scheme_id = nil)
|
||||
cache_key = scheme_id ? name + "_#{scheme_id}" : name
|
||||
hex_cache[cache_key] ||= lookup_hex_for_name(name, scheme_id)
|
||||
hex_cache[cache_key] == "nil" ? nil : hex_cache[cache_key]
|
||||
hex_cache.defer_get_set(scheme_id ? name + "_#{scheme_id}" : name) do
|
||||
lookup_hex_for_name(name, scheme_id)
|
||||
end
|
||||
end
|
||||
|
||||
def colors=(arr)
|
||||
|
|
Loading…
Reference in New Issue