From a9ebde511100e4f463c4e94c7c7078ad42460987 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9gis=20Hanol?= Date: Thu, 17 May 2018 01:52:49 +0200 Subject: [PATCH] FEATURE: new 'staged' users list for admins --- app/assets/javascripts/admin/templates/users-list.hbs | 1 + config/locales/client.en.yml | 2 ++ lib/admin_user_index_query.rb | 1 + spec/components/admin_user_index_query_spec.rb | 11 +++++++++++ 4 files changed, 15 insertions(+) diff --git a/app/assets/javascripts/admin/templates/users-list.hbs b/app/assets/javascripts/admin/templates/users-list.hbs index 21364f0fd93..c101a1a13bd 100644 --- a/app/assets/javascripts/admin/templates/users-list.hbs +++ b/app/assets/javascripts/admin/templates/users-list.hbs @@ -10,6 +10,7 @@ {{nav-item route='adminUsersList.show' routeParam='suspended' label='admin.users.nav.suspended'}} {{nav-item route='adminUsersList.show' routeParam='silenced' label='admin.users.nav.silenced'}} {{nav-item route='adminUsersList.show' routeParam='suspect' label='admin.users.nav.suspect'}} + {{nav-item route='adminUsersList.show' routeParam='staged' label='admin.users.nav.staged'}} {{nav-item route='groups' label='groups.index.title'}} diff --git a/config/locales/client.en.yml b/config/locales/client.en.yml index 249d491d1b2..44e4b4c18e5 100644 --- a/config/locales/client.en.yml +++ b/config/locales/client.en.yml @@ -3496,6 +3496,7 @@ en: suspended: 'Suspended' silenced: 'Silenced' suspect: 'Suspect' + staged: 'Staged' approved: "Approved?" approved_selected: one: "approve user" @@ -3518,6 +3519,7 @@ en: silenced: 'Silenced Users' suspended: 'Suspended Users' suspect: 'Suspect Users' + staged: 'Staged Users' reject_successful: one: "Successfully rejected 1 user." other: "Successfully rejected %{count} users." diff --git a/lib/admin_user_index_query.rb b/lib/admin_user_index_query.rb index 339066c645b..baf20275da7 100644 --- a/lib/admin_user_index_query.rb +++ b/lib/admin_user_index_query.rb @@ -98,6 +98,7 @@ class AdminUserIndexQuery when 'suspended' then @query.suspended when 'pending' then @query.not_suspended.where(approved: false, active: true) when 'suspect' then suspect_users + when 'staged' then @query.where(staged: true) end end diff --git a/spec/components/admin_user_index_query_spec.rb b/spec/components/admin_user_index_query_spec.rb index 2eee6d48521..e9a5d3abad0 100644 --- a/spec/components/admin_user_index_query_spec.rb +++ b/spec/components/admin_user_index_query_spec.rb @@ -176,6 +176,17 @@ describe AdminUserIndexQuery do end + describe "with a staged user" do + + let!(:user) { Fabricate(:user, staged: true) } + + it "finds the staged user" do + query = ::AdminUserIndexQuery.new(query: 'staged') + expect(query.find_users.count).to eq(1) + end + + end + describe "filtering" do context "exact email bypass" do