summaryrefslogtreecommitdiff
path: root/lib/gitlab/auth/key_status_checker.rb
blob: af654c0caad4b566237c946f7102285458511b2d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# frozen_string_literal: true

module Gitlab
  module Auth
    class KeyStatusChecker
      include Gitlab::Utils::StrongMemoize

      attr_reader :key

      def initialize(key)
        @key = key
      end

      def show_console_message?
        console_message.present?
      end

      def console_message
        strong_memoize(:console_message) do
          if key.expired?
            _('INFO: Your SSH key has expired. Please generate a new key.')
          elsif key.expires_soon?
            _('INFO: Your SSH key is expiring soon. Please generate a new key.')
          end
        end
      end
    end
  end
end