index.html.haml 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. - content_for :page_title do
  2. = t('admin.accounts.title')
  3. - content_for :header_tags do
  4. = javascript_pack_tag 'admin', async: true, crossorigin: 'anonymous'
  5. .filters
  6. .filter-subset
  7. %strong= t('admin.accounts.location.title')
  8. %ul
  9. %li= filter_link_to t('generic.all'), origin: nil
  10. %li= filter_link_to t('admin.accounts.location.local'), origin: 'local'
  11. %li= filter_link_to t('admin.accounts.location.remote'), origin: 'remote'
  12. .filter-subset
  13. %strong= t('admin.accounts.moderation.title')
  14. %ul
  15. %li= filter_link_to t('generic.all'), status: nil
  16. %li= filter_link_to t('admin.accounts.moderation.active'), status: 'active'
  17. %li= filter_link_to t('admin.accounts.moderation.suspended'), status: 'suspended'
  18. %li= filter_link_to safe_join([t('admin.accounts.moderation.pending'), "(#{number_with_delimiter(User.pending.count)})"], ' '), status: 'pending'
  19. .filter-subset
  20. %strong= t('admin.accounts.role')
  21. %ul
  22. %li= filter_link_to t('admin.accounts.moderation.all'), permissions: nil
  23. %li= filter_link_to t('admin.accounts.roles.staff'), permissions: 'staff'
  24. .filter-subset
  25. %strong= t 'generic.order_by'
  26. %ul
  27. %li= filter_link_to t('relationships.most_recent'), order: nil
  28. %li= filter_link_to t('relationships.last_active'), order: 'active'
  29. = form_tag admin_accounts_url, method: 'GET', class: 'simple_form' do
  30. .fields-group
  31. - (AccountFilter::KEYS - %i(origin status permissions)).each do |key|
  32. - if params[key].present?
  33. = hidden_field_tag key, params[key]
  34. - %i(username by_domain display_name email ip).each do |key|
  35. - unless key == :by_domain && params[:origin] != 'remote'
  36. .input.string.optional
  37. = text_field_tag key, params[key], class: 'string optional', placeholder: I18n.t("admin.accounts.#{key}")
  38. .actions
  39. %button.button= t('admin.accounts.search')
  40. = link_to t('admin.accounts.reset'), admin_accounts_path, class: 'button negative'
  41. = form_for(@form, url: batch_admin_accounts_path) do |f|
  42. = hidden_field_tag :page, params[:page] || 1
  43. - AccountFilter::KEYS.each do |key|
  44. = hidden_field_tag key, params[key] if params[key].present?
  45. .batch-table
  46. .batch-table__toolbar
  47. %label.batch-table__toolbar__select.batch-checkbox-all
  48. = check_box_tag :batch_checkbox_all, nil, false
  49. .batch-table__toolbar__actions
  50. - if @accounts.any? { |account| account.user_pending? }
  51. = f.button safe_join([fa_icon('check'), t('admin.accounts.approve')]), name: :approve, class: 'table-action-link', type: :submit, data: { confirm: t('admin.reports.are_you_sure') }
  52. = f.button safe_join([fa_icon('times'), t('admin.accounts.reject')]), name: :reject, class: 'table-action-link', type: :submit, data: { confirm: t('admin.reports.are_you_sure') }
  53. = f.button safe_join([fa_icon('lock'), t('admin.accounts.perform_full_suspension')]), name: :suspend, class: 'table-action-link', type: :submit, data: { confirm: t('admin.reports.are_you_sure') }
  54. .batch-table__body
  55. - if @accounts.empty?
  56. = nothing_here 'nothing-here--under-tabs'
  57. - else
  58. = render partial: 'account', collection: @accounts, locals: { f: f }
  59. = paginate @accounts