79 lines
4.1 KiB
Text
79 lines
4.1 KiB
Text
- @no_container = true
|
|
- page_title "Users"
|
|
= render "admin/dashboard/head"
|
|
|
|
%div{ class: container_class }
|
|
.prepend-top-default
|
|
= form_tag admin_users_path, method: :get do
|
|
- if params[:filter].present?
|
|
= hidden_field_tag "filter", h(params[:filter])
|
|
.search-holder
|
|
.search-field-holder
|
|
= search_field_tag :search_query, params[:search_query], placeholder: 'Search by name, email or username', class: 'form-control search-text-input js-search-input', spellcheck: false
|
|
= icon("search", class: "search-icon")
|
|
.dropdown
|
|
- toggle_text = if @sort.present? then sort_options_hash[@sort] else sort_title_name end
|
|
= dropdown_toggle(toggle_text, { toggle: 'dropdown' })
|
|
%ul.dropdown-menu.dropdown-menu-align-right
|
|
%li.dropdown-header
|
|
Sort by
|
|
%li
|
|
= link_to admin_users_path(sort: sort_value_name, filter: params[:filter]) do
|
|
= sort_title_name
|
|
= link_to admin_users_path(sort: sort_value_recently_signin, filter: params[:filter]) do
|
|
= sort_title_recently_signin
|
|
= link_to admin_users_path(sort: sort_value_oldest_signin, filter: params[:filter]) do
|
|
= sort_title_oldest_signin
|
|
= link_to admin_users_path(sort: sort_value_recently_created, filter: params[:filter]) do
|
|
= sort_title_recently_created
|
|
= link_to admin_users_path(sort: sort_value_oldest_created, filter: params[:filter]) do
|
|
= sort_title_oldest_created
|
|
= link_to admin_users_path(sort: sort_value_recently_updated, filter: params[:filter]) do
|
|
= sort_title_recently_updated
|
|
= link_to admin_users_path(sort: sort_value_oldest_updated, filter: params[:filter]) do
|
|
= sort_title_oldest_updated
|
|
= link_to 'New user', new_admin_user_path, class: 'btn btn-new btn-search'
|
|
|
|
.top-area.scrolling-tabs-container.inner-page-scroll-tabs
|
|
.fade-left
|
|
= icon('angle-left')
|
|
.fade-right
|
|
= icon('angle-right')
|
|
%ul.nav-links.scrolling-tabs
|
|
= nav_link(html_options: { class: active_when(params[:filter].nil?) }) do
|
|
= link_to admin_users_path do
|
|
Active
|
|
%small.badge= number_with_delimiter(User.active.count)
|
|
= nav_link(html_options: { class: active_when(params[:filter] == 'admins') }) do
|
|
= link_to admin_users_path(filter: "admins") do
|
|
Admins
|
|
%small.badge= number_with_delimiter(User.admins.count)
|
|
= nav_link(html_options: { class: "#{active_when(params[:filter] == 'two_factor_enabled')} filter-two-factor-enabled" }) do
|
|
= link_to admin_users_path(filter: 'two_factor_enabled') do
|
|
2FA Enabled
|
|
%small.badge= number_with_delimiter(User.with_two_factor.count)
|
|
= nav_link(html_options: { class: "#{active_when(params[:filter] == 'two_factor_disabled')} filter-two-factor-disabled" }) do
|
|
= link_to admin_users_path(filter: 'two_factor_disabled') do
|
|
2FA Disabled
|
|
%small.badge= number_with_delimiter(User.without_two_factor.count)
|
|
= nav_link(html_options: { class: active_when(params[:filter] == 'external') }) do
|
|
= link_to admin_users_path(filter: 'external') do
|
|
External
|
|
%small.badge= number_with_delimiter(User.external.count)
|
|
= nav_link(html_options: { class: active_when(params[:filter] == 'blocked') }) do
|
|
= link_to admin_users_path(filter: "blocked") do
|
|
Blocked
|
|
%small.badge= number_with_delimiter(User.blocked.count)
|
|
= nav_link(html_options: { class: active_when(params[:filter] == 'wop') }) do
|
|
= link_to admin_users_path(filter: "wop") do
|
|
Without projects
|
|
%small.badge= number_with_delimiter(User.without_projects.count)
|
|
|
|
%ul.flex-list.content-list
|
|
- if @users.empty?
|
|
%li
|
|
.nothing-here-block No users found.
|
|
- else
|
|
= render partial: 'admin/users/user', collection: @users
|
|
|
|
= paginate @users, theme: "gitlab"
|