diff options
Diffstat (limited to 'lib/gitlab/favicon.rb')
-rw-r--r-- | lib/gitlab/favicon.rb | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/lib/gitlab/favicon.rb b/lib/gitlab/favicon.rb index 27150f8d1ea..17e737ac913 100644 --- a/lib/gitlab/favicon.rb +++ b/lib/gitlab/favicon.rb @@ -2,21 +2,33 @@ module Gitlab class Favicon class << self def default - return appearance_favicon.default.url if appearance_favicon + return appearance_favicon.default.url if appearance_favicon.exists? return 'favicon-yellow.ico' if Gitlab::Utils.to_boolean(ENV['CANARY']) return 'favicon-blue.ico' if Rails.env.development? 'favicon.ico' end + def status(status_name) + if appearance_favicon.exists? + appearance_favicon.public_send("status_#{status_name}").url + else + dir = 'ci_favicons' + dir = File.join(dir, 'dev') if Rails.env.development? + dir = File.join(dir, 'canary') if Gitlab::Utils.to_boolean(ENV['CANARY']) + + File.join(dir, "favicon_status_#{status_name}.ico") + end + end + private def appearance - @appearance ||= Appearance.current + Appearance.current || Appearance.new end def appearance_favicon - appearance&.favicon + appearance.favicon end end end |