upd: add `Not Approved` state sorter to Users tab
This commit is contained in:
parent
32fc540df4
commit
cab0ec5de1
|
@ -34,7 +34,7 @@ export const paramDef = {
|
||||||
limit: { type: 'integer', minimum: 1, maximum: 100, default: 10 },
|
limit: { type: 'integer', minimum: 1, maximum: 100, default: 10 },
|
||||||
offset: { type: 'integer', default: 0 },
|
offset: { type: 'integer', default: 0 },
|
||||||
sort: { type: 'string', enum: ['+follower', '-follower', '+createdAt', '-createdAt', '+updatedAt', '-updatedAt', '+lastActiveDate', '-lastActiveDate'] },
|
sort: { type: 'string', enum: ['+follower', '-follower', '+createdAt', '-createdAt', '+updatedAt', '-updatedAt', '+lastActiveDate', '-lastActiveDate'] },
|
||||||
state: { type: 'string', enum: ['all', 'alive', 'available', 'admin', 'moderator', 'adminOrModerator', 'suspended'], default: 'all' },
|
state: { type: 'string', enum: ['all', 'alive', 'available', 'admin', 'moderator', 'adminOrModerator', 'suspended', 'approved'], default: 'all' },
|
||||||
origin: { type: 'string', enum: ['combined', 'local', 'remote'], default: 'combined' },
|
origin: { type: 'string', enum: ['combined', 'local', 'remote'], default: 'combined' },
|
||||||
username: { type: 'string', nullable: true, default: null },
|
username: { type: 'string', nullable: true, default: null },
|
||||||
hostname: {
|
hostname: {
|
||||||
|
@ -63,6 +63,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
|
||||||
case 'available': query.where('user.isSuspended = FALSE'); break;
|
case 'available': query.where('user.isSuspended = FALSE'); break;
|
||||||
case 'alive': query.where('user.updatedAt > :date', { date: new Date(Date.now() - 1000 * 60 * 60 * 24 * 5) }); break;
|
case 'alive': query.where('user.updatedAt > :date', { date: new Date(Date.now() - 1000 * 60 * 60 * 24 * 5) }); break;
|
||||||
case 'suspended': query.where('user.isSuspended = TRUE'); break;
|
case 'suspended': query.where('user.isSuspended = TRUE'); break;
|
||||||
|
case 'approved': query.where('user.approved = FALSE'); break;
|
||||||
case 'admin': {
|
case 'admin': {
|
||||||
const adminIds = await this.roleService.getAdministratorIds();
|
const adminIds = await this.roleService.getAdministratorIds();
|
||||||
if (adminIds.length === 0) return [];
|
if (adminIds.length === 0) return [];
|
||||||
|
|
|
@ -21,6 +21,7 @@ SPDX-License-Identifier: AGPL-3.0-only
|
||||||
<template #label>{{ i18n.ts.state }}</template>
|
<template #label>{{ i18n.ts.state }}</template>
|
||||||
<option value="all">{{ i18n.ts.all }}</option>
|
<option value="all">{{ i18n.ts.all }}</option>
|
||||||
<option value="available">{{ i18n.ts.normal }}</option>
|
<option value="available">{{ i18n.ts.normal }}</option>
|
||||||
|
<option value="approved">{{ i18n.ts.notApproved }}</option>
|
||||||
<option value="admin">{{ i18n.ts.administrator }}</option>
|
<option value="admin">{{ i18n.ts.administrator }}</option>
|
||||||
<option value="moderator">{{ i18n.ts.moderator }}</option>
|
<option value="moderator">{{ i18n.ts.moderator }}</option>
|
||||||
<option value="suspended">{{ i18n.ts.suspend }}</option>
|
<option value="suspended">{{ i18n.ts.suspend }}</option>
|
||||||
|
|
Loading…
Reference in New Issue