Moves to the loader and work on the user query to add pagination and action type.

This commit is contained in:
gaba
2017-03-07 07:29:32 +01:00
parent 0fe456f574
commit d06a5d37f0
5 changed files with 31 additions and 22 deletions
+12 -6
View File
@@ -76,18 +76,24 @@ const RootQuery = {
// This endpoint is used for loading the user moderation queues (users whose username has been flagged),
// so hide it in the event that we aren't an admin.
usersFlagged(_, args, {user, loaders: {Users, Actions}}) {
users(_, {query: {action_type, limit, cursor, sort}}, {user, loaders: {Users, Actions}}) {
if (user == null || !user.hasRoles('ADMIN')) {
return null;
}
return Actions.getByTypes({action_type: 'FLAG', item_type: 'USERS'})
.then((ids) => {
const query = {limit, cursor, sort};
// Perform the query using the available resolver.
return Users.getByQuery({ids});
});
if (action_type) {
return Actions.getByTypes({action_type, item_type: 'USERS'})
.then((ids) => {
// Perform the query using the available resolver.
return Users.getByQuery({ids, limit, cursor, sort});
});
}
return Users.getByQuery(query);
}
};