diff --git a/app/assets/javascripts/admin/templates/users-list.hbs b/app/assets/javascripts/admin/templates/users-list.hbs index b533e10d921..2e1fe0c3ab5 100644 --- a/app/assets/javascripts/admin/templates/users-list.hbs +++ b/app/assets/javascripts/admin/templates/users-list.hbs @@ -6,7 +6,6 @@ {{nav-item route='adminUsersList.show' routeParam='staff' label='admin.users.nav.staff'}} {{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/app/jobs/scheduled/enqueue_suspect_users.rb b/app/jobs/scheduled/enqueue_suspect_users.rb index 529dd058c01..9fc5196d828 100644 --- a/app/jobs/scheduled/enqueue_suspect_users.rb +++ b/app/jobs/scheduled/enqueue_suspect_users.rb @@ -7,8 +7,13 @@ module Jobs def execute(_args) return unless SiteSetting.approve_suspect_users - users = AdminUserIndexQuery.new - .suspect_users + users = User + .activated + .human_users + .joins(:user_profile, :user_stat) + .where("users.created_at <= ?", 1.day.ago) + .where("LENGTH(COALESCE(user_profiles.bio_raw, user_profiles.website, '')) > 0") + .where("user_stats.posts_read_count <= 1 AND user_stats.topics_entered <= 1") .joins("LEFT OUTER JOIN reviewables r ON r.target_id = users.id AND r.target_type = 'User'") .where('r.id IS NULL') .limit(10) diff --git a/config/locales/client.en.yml b/config/locales/client.en.yml index 5b632f3bfde..dfee7675147 100644 --- a/config/locales/client.en.yml +++ b/config/locales/client.en.yml @@ -4141,7 +4141,6 @@ en: staff: "Staff" suspended: "Suspended" silenced: "Silenced" - suspect: "Suspect" staged: "Staged" approved: "Approved?" titles: @@ -4158,7 +4157,6 @@ en: moderators: "Moderators" silenced: "Silenced Users" suspended: "Suspended Users" - suspect: "Suspect Users" staged: "Staged Users" not_verified: "Not verified" check_email: diff --git a/config/site_settings.yml b/config/site_settings.yml index 42acc80a844..07d0c5638d1 100644 --- a/config/site_settings.yml +++ b/config/site_settings.yml @@ -862,7 +862,7 @@ posting: default: 0 enum: "TrustLevelSetting" approve_suspect_users: - default: false + default: true approve_unless_staged: default: false notify_about_queued_posts_after: diff --git a/lib/admin_user_index_query.rb b/lib/admin_user_index_query.rb index 74b5d403e99..4d04e61fd29 100644 --- a/lib/admin_user_index_query.rb +++ b/lib/admin_user_index_query.rb @@ -78,16 +78,6 @@ class AdminUserIndexQuery end end - def suspect_users - @query - .activated - .human_users - .joins(:user_profile, :user_stat) - .where("users.created_at <= ?", 1.day.ago) - .where("LENGTH(COALESCE(user_profiles.bio_raw, user_profiles.website, '')) > 0") - .where("user_stats.posts_read_count <= 1 AND user_stats.topics_entered <= 1") - end - def filter_by_query_classification case params[:query] when 'staff' then @query.where("admin or moderator") @@ -96,7 +86,6 @@ class AdminUserIndexQuery when 'silenced' then @query.silenced 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 8060066f881..971468523fc 100644 --- a/spec/components/admin_user_index_query_spec.rb +++ b/spec/components/admin_user_index_query_spec.rb @@ -91,27 +91,6 @@ describe AdminUserIndexQuery do end - describe 'with a suspected user' do - fab!(:bot) { Fabricate(:active_user, id: -10, created_at: 1.day.ago) } - fab!(:regular_user) { Fabricate(:user, created_at: 1.day.ago) } - fab!(:user_with_bio) { Fabricate(:active_user, created_at: 1.day.ago) } - fab!(:user_with_website) { Fabricate(:user, created_at: 1.day.ago) } - - before do - user_with_website.user_profile.website = 'https://example.com' - user_with_website.user_profile.save! - end - - it 'finds the suspected user' do - bot - regular_user - user_with_bio - user_with_website - query = AdminUserIndexQuery.new(query: 'suspect') - expect(query.find_users).to contain_exactly(user_with_bio, user_with_website) - end - end - describe "with a pending user" do fab!(:user) { Fabricate(:user, active: true, approved: false) } diff --git a/test/javascripts/acceptance/admin-users-list-test.js.es6 b/test/javascripts/acceptance/admin-users-list-test.js.es6 index feb470bddaa..1c41fce1695 100644 --- a/test/javascripts/acceptance/admin-users-list-test.js.es6 +++ b/test/javascripts/acceptance/admin-users-list-test.js.es6 @@ -59,7 +59,7 @@ QUnit.test("switching tabs", async assert => { const activeUser = "eviltrout"; const suspectUser = "sam"; const activeTitle = I18n.t("admin.users.titles.active"); - const suspectTitle = I18n.t("admin.users.titles.suspect"); + const suspectTitle = I18n.t("admin.users.titles.new"); await visit("/admin/users/list/active"); @@ -70,7 +70,7 @@ QUnit.test("switching tabs", async assert => { .includes(activeUser) ); - await click('a[href="/admin/users/list/suspect"]'); + await click('a[href="/admin/users/list/new"]'); assert.equal(find(".admin-title h2").text(), suspectTitle); assert.ok( diff --git a/test/javascripts/helpers/create-pretender.js.es6 b/test/javascripts/helpers/create-pretender.js.es6 index 76cca6fa515..934b6a652b2 100644 --- a/test/javascripts/helpers/create-pretender.js.es6 +++ b/test/javascripts/helpers/create-pretender.js.es6 @@ -637,7 +637,7 @@ export function applyDefaultHandlers(pretender) { return response(200, store); }); - pretender.get("/admin/users/list/suspect.json", () => { + pretender.get("/admin/users/list/new.json", () => { return response(200, [ { id: 2,