discourse/app/services/problem_check/out_of_date_themes.rb
Ted Johansson cf5174da69
FIX: Fix broken out of date themes admin notice (#27916)
The OutOfDateThemes problem check is using an old method of setting the message, by overriding #message. It should instead use #translation_keys. (By chance I noticed the same thing applies to UnreachableThemes.
2024-07-15 16:12:44 +08:00

34 lines
619 B
Ruby

# frozen_string_literal: true
class ProblemCheck::OutOfDateThemes < ProblemCheck
self.priority = "low"
def call
return no_problem if out_of_date_themes.empty?
problem
end
private
def translation_data
{ themes_list: }
end
def out_of_date_themes
@out_of_date_themes ||= RemoteTheme.out_of_date_themes
end
def themes_list
<<~HTML.squish
<ul>#{
out_of_date_themes
.map do |name, id|
"<li><a href=\"#{Discourse.base_path}/admin/customize/themes/#{id}\">#{CGI.escapeHTML(name)}</a></li>"
end
.join("\n")
}</ul>
HTML
end
end