discourse/app/services/problem_check/unreachable_themes.rb
Ted Johansson 3137e60653
DEV: Database backed admin notices (#26192)
This PR introduces a basic AdminNotice model to store these notices. Admin notices are categorized by their source/type (currently only notices from problem check.) They also have a priority.
2024-05-23 09:29:08 +08:00

30 lines
586 B
Ruby

# frozen_string_literal: true
class ProblemCheck::UnreachableThemes < ProblemCheck
self.priority = "low"
def call
return no_problem if unreachable_themes.empty?
problem
end
private
def unreachable_themes
@unreachable_themes ||= RemoteTheme.unreachable_themes
end
def message
"#{I18n.t("dashboard.problem.unreachable_themes")}<ul>#{themes_list}</ul>"
end
def themes_list
unreachable_themes
.map do |name, id|
"<li><a href=\"/admin/customize/themes/#{id}\">#{CGI.escapeHTML(name)}</a></li>"
end
.join("\n")
end
end