about summary refs log tree commit diff
path: root/app/views/admin/dashboard/index.html.haml
blob: e25b8084633401ddfa77ddeed80913ac6ecf9b71 (plain) (blame)
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
- content_for :page_title do
  = t('admin.dashboard.title')

- unless @system_checks.empty?
  .flash-message-stack
    - @system_checks.each do |message|
      .flash-message.warning
        = t("admin.system_checks.#{message.key}.message_html", value: message.value ? content_tag(:strong, message.value) : nil)
        - if message.action
          = link_to t("admin.system_checks.#{message.key}.action"), message.action

.dashboard__counters
  %div
    = link_to admin_accounts_url(local: 1, recent: 1) do
      .dashboard__counters__num{ title: number_with_delimiter(@users_count, strip_insignificant_zeros: true) }
        = number_to_human @users_count, strip_insignificant_zeros: true
      .dashboard__counters__label= t 'admin.dashboard.total_users'
  %div
    %div
      .dashboard__counters__num{ title: number_with_delimiter(@registrations_week, strip_insignificant_zeros: true) }
        = number_to_human @registrations_week, strip_insignificant_zeros: true
      .dashboard__counters__label= t 'admin.dashboard.week_users_new'
  %div
    %div
      .dashboard__counters__num{ title: number_with_delimiter(@logins_week, strip_insignificant_zeros: true) }
        = number_to_human @logins_week, strip_insignificant_zeros: true
      .dashboard__counters__label= t 'admin.dashboard.week_users_active'
  %div
    = link_to admin_pending_accounts_path do
      .dashboard__counters__num{ title: number_with_delimiter(@pending_users_count, strip_insignificant_zeros: true) }
        = number_to_human @pending_users_count, strip_insignificant_zeros: true
      .dashboard__counters__label= t 'admin.dashboard.pending_users'
  %div
    = link_to admin_reports_url do
      .dashboard__counters__num{ title: number_with_delimiter(@reports_count, strip_insignificant_zeros: true) }
        = number_to_human @reports_count, strip_insignificant_zeros: true
      .dashboard__counters__label= t 'admin.dashboard.open_reports'
  %div
    = link_to admin_tags_path(pending_review: '1') do
      .dashboard__counters__num{ title: number_with_delimiter(@pending_tags_count, strip_insignificant_zeros: true) }
        = number_to_human @pending_tags_count, strip_insignificant_zeros: true
      .dashboard__counters__label= t 'admin.dashboard.pending_tags'
  %div
    %div
      .dashboard__counters__num{ title: number_with_delimiter(@interactions_week, strip_insignificant_zeros: true) }
        = number_to_human @interactions_week, strip_insignificant_zeros: true
      .dashboard__counters__label= t 'admin.dashboard.week_interactions'
  %div
    = link_to sidekiq_url do
      .dashboard__counters__num{ title: number_with_delimiter(@queue_backlog, strip_insignificant_zeros: true) }
        = number_to_human @queue_backlog, strip_insignificant_zeros: true
      .dashboard__counters__label= t 'admin.dashboard.backlog'

.dashboard__widgets
  .dashboard__widgets__users
    %div
      %h4= t 'admin.dashboard.recent_users'
      %ul
        - @recent_users.each do |user|
          %li= admin_account_link_to(user.account)

  .dashboard__widgets__features
    %div
      %h4= t 'admin.dashboard.features'
      %ul
        %li
          = feature_hint(link_to(t('admin.dashboard.feature_registrations'), edit_admin_settings_path), @registrations_enabled)
        %li
          = feature_hint(link_to(t('admin.dashboard.feature_invites'), edit_admin_settings_path), @invites_enabled)
        %li
          = feature_hint(link_to(t('admin.dashboard.feature_deletions'), edit_admin_settings_path), @deletions_enabled)
        %li
          = feature_hint(link_to(t('admin.dashboard.feature_profile_directory'), edit_admin_settings_path), @profile_directory)
        %li
          = feature_hint(link_to(t('admin.dashboard.feature_timeline_preview'), edit_admin_settings_path), @timeline_preview)
        %li
          = feature_hint(link_to(t('admin.dashboard.keybase'), edit_admin_settings_path), @keybase_integration)
        %li
          = feature_hint(link_to(t('admin.dashboard.trends'), edit_admin_settings_path), @trends_enabled)
        %li
          = feature_hint(link_to(t('admin.dashboard.feature_relay'), admin_relays_path), @relay_enabled)

  .dashboard__widgets__versions
    %div
      %h4= t 'admin.dashboard.software'
      %ul
        %li
          Mastodon
          %span.pull-right= @version
        %li
          Ruby
          %span.pull-right= "#{RUBY_VERSION}p#{RUBY_PATCHLEVEL}"
        %li
          PostgreSQL
          %span.pull-right= @database_version
        %li
          Redis
          %span.pull-right= @redis_version

  .dashboard__widgets__space
    %div
      %h4= t 'admin.dashboard.space'
      %ul
        %li
          PostgreSQL
          %span.pull-right= number_to_human_size @database_size
        %li
          Redis
          %span.pull-right= number_to_human_size @redis_size

  .dashboard__widgets__config
    %div
      %h4= t 'admin.dashboard.config'
      %ul
        %li
          = feature_hint(t('admin.dashboard.search'), @search_enabled)
        %li
          = feature_hint(t('admin.dashboard.single_user_mode'), @single_user_mode)
        %li
          = feature_hint(t('admin.dashboard.authorized_fetch_mode'), @authorized_fetch)
        %li
          = feature_hint(t('admin.dashboard.whitelist_mode'), @whitelist_enabled)
        %li
          = feature_hint('LDAP', @ldap_enabled)
        %li
          = feature_hint('CAS', @cas_enabled)
        %li
          = feature_hint('SAML', @saml_enabled)
        %li
          = feature_hint('PAM', @pam_enabled)
        %li
          = feature_hint(t('admin.dashboard.hidden_service'), @hidden_service)

  .dashboard__widgets__trends
    %div
      %h4= t 'admin.dashboard.trends'
      %ul
        - @trending_hashtags.each do |tag|
          %li
            = link_to content_tag(:span, "##{tag.name}", class: !tag.trendable? && !tag.reviewed? ? 'warning-hint' : (!tag.trendable? ? 'negative-hint' : nil)), admin_tag_path(tag.id)
            %span.pull-right= number_with_delimiter(tag.history[0][:accounts].to_i)