summaryrefslogtreecommitdiff
path: root/app/views/admin/users/_user.html.haml
blob: 284307d1d548402e61a20ba9ab5f2483b5b10ee8 (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
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
.gl-responsive-table-row{ role: 'row', data: { qa_selector: 'user_row_content' } }
  .table-section.section-40
    .table-mobile-header{ role: 'rowheader' }
      = _('Name')
    .table-mobile-content
      = render 'user_detail', user: user
  .table-section.section-10
    .table-mobile-header{ role: 'rowheader' }
      = _('Projects')
    .table-mobile-content.gl-str-truncated{ data: { testid: "user-project-count-#{user.id}" } }
      = user.authorized_projects.length
  .table-section.section-15
    .table-mobile-header{ role: 'rowheader' }
      = _('Created on')
    .table-mobile-content
      = l(user.created_at.to_date, format: :admin)
  .table-section.section-15
    .table-mobile-header{ role: 'rowheader' }
      = _('Last activity')
    .table-mobile-content
      = user.last_activity_on.nil? ? _('Never') : l(user.last_activity_on, format: :admin)
  - unless user.internal?
    .table-section.section-20.table-button-footer
      .table-action-buttons
        = link_to _('Edit'), edit_admin_user_path(user), id: "edit_#{dom_id(user)}", class: 'btn gl-button btn-default'
        - unless user == current_user
          %button.dropdown-new.btn.gl-button.btn-default{ type: 'button', data: { toggle: 'dropdown' } }
            = sprite_icon('settings')
            = sprite_icon('chevron-down')
          %ul.dropdown-menu.dropdown-menu-right
            %li.dropdown-header
              = _('Settings')
              %li
                - if user.ldap_blocked?
                  %span.small
                    = s_('AdminUsers|Cannot unblock LDAP blocked users')
                - elsif user.blocked?
                  = link_to _('Unblock'), unblock_admin_user_path(user), method: :put
                - else
                  %button.btn.gl-button.btn-default-tertiary{ data: { 'gl-modal-action': 'block',
                    url: block_admin_user_path(user),
                    username: sanitize_name(user.name) } }
                    = s_('AdminUsers|Block')
              - if user.can_be_deactivated?
                %li
                  %button.btn.gl-button.btn-default-tertiary{ data: { 'gl-modal-action': 'deactivate',
                    url: deactivate_admin_user_path(user),
                    username: sanitize_name(user.name) } }
                    = s_('AdminUsers|Deactivate')
              - elsif user.deactivated?
                %li
                  = link_to _('Activate'), activate_admin_user_path(user), method: :put
              - if user.access_locked?
                %li
                  = link_to _('Unlock'), unlock_admin_user_path(user), method: :put, data: { confirm: _('Are you sure?') }
            - if can?(current_user, :destroy_user, user)
              %li.divider
              - if user.can_be_removed?
                %li
                  %button.delete-user-button.btn.gl-button.btn-default-tertiary.text-danger{ data: { 'gl-modal-action': 'delete',
                    delete_user_url: admin_user_path(user),
                    block_user_url: block_admin_user_path(user),
                    username: sanitize_name(user.name) } }
                    = s_('AdminUsers|Delete user')
                %li
                  %button.delete-user-button.btn.gl-button.btn-default-tertiary.text-danger{ data: { 'gl-modal-action': 'delete-with-contributions',
                    delete_user_url: admin_user_path(user, hard_delete: true),
                    block_user_url: block_admin_user_path(user),
                    username: sanitize_name(user.name) } }
                    = s_('AdminUsers|Delete user and contributions')