From c38db4f7650131e702c39059d61f6f6610e59d0d Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Wed, 10 Apr 2019 14:00:33 -0400 Subject: [PATCH] feat: #7515 This reverts commit 81f8cfe3da3b1d1521ad08a118bf1edb4abd7fef. --- public/language/en-GB/admin/manage/users.json | 5 +++ public/src/admin/manage/users.js | 6 ++++ src/controllers/admin/users.js | 6 +++- src/views/admin/manage/users.tpl | 33 ++++++++++++------- 4 files changed, 38 insertions(+), 12 deletions(-) diff --git a/public/language/en-GB/admin/manage/users.json b/public/language/en-GB/admin/manage/users.json index 05fc3f043f..01088037f2 100644 --- a/public/language/en-GB/admin/manage/users.json +++ b/public/language/en-GB/admin/manage/users.json @@ -28,6 +28,11 @@ "pills.banned": "Banned", "pills.search": "User Search", + "50-per-page": "50 per page", + "100-per-page": "100 per page", + "250-per-page": "250 per page", + "500-per-page": "500 per page", + "search.uid": "By User ID", "search.uid-placeholder": "Enter a user ID to search", "search.username": "By User Name", diff --git a/public/src/admin/manage/users.js b/public/src/admin/manage/users.js index 73e33b391b..ef85db041d 100644 --- a/public/src/admin/manage/users.js +++ b/public/src/admin/manage/users.js @@ -12,6 +12,12 @@ define('admin/manage/users', ['translator', 'benchpress'], function (translator, } navPills.removeClass('active').find('a[href="' + pathname + '"]').parent().addClass('active'); + $('#results-per-page').val(ajaxify.data.resultsPerPage).on('change', function () { + var query = utils.params(); + query.resultsPerPage = $('#results-per-page').val(); + ajaxify.go(window.location.pathname + '?' + $.param(query)); + }); + function getSelectedUids() { var uids = []; diff --git a/src/controllers/admin/users.js b/src/controllers/admin/users.js index 743834e1d7..cb4f2b7420 100644 --- a/src/controllers/admin/users.js +++ b/src/controllers/admin/users.js @@ -120,7 +120,10 @@ usersController.registrationQueue = function (req, res, next) { function getUsers(set, section, min, max, req, res, next) { var page = parseInt(req.query.page, 10) || 1; - var resultsPerPage = 50; + var resultsPerPage = parseInt(req.query.resultsPerPage, 10) || 50; + if (![50, 100, 250, 500].includes(resultsPerPage)) { + resultsPerPage = 50; + } var start = Math.max(0, page - 1) * resultsPerPage; var stop = start + resultsPerPage - 1; var byScore = min !== undefined && max !== undefined; @@ -161,6 +164,7 @@ function getUsers(set, section, min, max, req, res, next) { users: results.users, page: page, pageCount: Math.max(1, Math.ceil(results.count / resultsPerPage)), + resultsPerPage: resultsPerPage, }; data[section] = true; render(req, res, data); diff --git a/src/views/admin/manage/users.tpl b/src/views/admin/manage/users.tpl index 4b65102352..ef250aa980 100644 --- a/src/views/admin/manage/users.tpl +++ b/src/views/admin/manage/users.tpl @@ -33,17 +33,28 @@ +
- [[admin/manage/users:inactive.3-months]] - [[admin/manage/users:inactive.6-months]] - [[admin/manage/users:inactive.12-months]] + [[admin/manage/users:inactive.3-months]] + [[admin/manage/users:inactive.6-months]] + [[admin/manage/users:inactive.12-months]]