From 58eacb85ce5a935caaa4e1b33802da6ee6f74da9 Mon Sep 17 00:00:00 2001 From: Ulf Gebhardt Date: Fri, 25 Mar 2022 13:35:33 +0100 Subject: [PATCH 1/6] do not show unactivated emails in masscreation list --- admin/src/pages/Creation.vue | 2 ++ admin/src/pages/UserSearch.vue | 12 ++++++------ backend/src/graphql/resolver/AdminResolver.ts | 12 ++++++------ 3 files changed, 14 insertions(+), 12 deletions(-) diff --git a/admin/src/pages/Creation.vue b/admin/src/pages/Creation.vue index 8a229d7be..e5b93350f 100644 --- a/admin/src/pages/Creation.vue +++ b/admin/src/pages/Creation.vue @@ -102,6 +102,8 @@ export default { searchText: this.criteria, currentPage: this.currentPage, pageSize: this.perPage, + notActivated: false, + isDeleted: false, }, fetchPolicy: 'network-only', }) diff --git a/admin/src/pages/UserSearch.vue b/admin/src/pages/UserSearch.vue index 35d29ad7f..528e8d6cb 100644 --- a/admin/src/pages/UserSearch.vue +++ b/admin/src/pages/UserSearch.vue @@ -3,11 +3,11 @@
- {{ filterCheckedEmails ? $t('all_emails') : $t('unregistered_emails') }} + {{ filterCheckedEmails ? $t('unregistered_emails') : $t('all_emails')}} - {{ filterDeletedUser ? $t('all_emails') : $t('deleted_user') }} + {{ filterDeletedUser ? $t('deleted_user') : $t('all_emails') }}
@@ -60,8 +60,8 @@ export default { searchResult: [], massCreation: [], criteria: '', - filterCheckedEmails: false, - filterDeletedUser: false, + filterCheckedEmails: null, + filterDeletedUser: null, rows: 0, currentPage: 1, perPage: 25, @@ -70,11 +70,11 @@ export default { }, methods: { unconfirmedRegisterMails() { - this.filterCheckedEmails = !this.filterCheckedEmails + this.filterCheckedEmails = this.filterCheckedEmails ? null : true this.getUsers() }, deletedUserSearch() { - this.filterDeletedUser = !this.filterDeletedUser + this.filterDeletedUser = this.filterDeletedUser ? null : true this.getUsers() }, getUsers() { diff --git a/backend/src/graphql/resolver/AdminResolver.ts b/backend/src/graphql/resolver/AdminResolver.ts index d98b38b7f..e0a35b864 100644 --- a/backend/src/graphql/resolver/AdminResolver.ts +++ b/backend/src/graphql/resolver/AdminResolver.ts @@ -50,19 +50,19 @@ export class AdminResolver { searchText, currentPage = 1, pageSize = 25, - notActivated = false, - isDeleted = false, + notActivated = null, + isDeleted = null, }: SearchUsersArgs, ): Promise { const userRepository = getCustomRepository(UserRepository) const filterCriteria: ObjectLiteral[] = [] - if (notActivated) { - filterCriteria.push({ emailChecked: false }) + if (notActivated !== null) { + filterCriteria.push({ emailChecked: notActivated }) } - if (isDeleted) { - filterCriteria.push({ deletedAt: Not(IsNull()) }) + if (isDeleted !== null) { + filterCriteria.push({ deletedAt: isDeleted ? Not(IsNull()) : IsNull() }) } const userFields = ['id', 'firstName', 'lastName', 'email', 'emailChecked', 'deletedAt'] From 33638598a04c7d205d78de91c57ec928cf68727c Mon Sep 17 00:00:00 2001 From: Ulf Gebhardt Date: Fri, 25 Mar 2022 13:43:53 +0100 Subject: [PATCH 2/6] notActivated & isDeleted are both nullable Admin User Search is a nightmare codewise --- backend/src/graphql/arg/SearchUsersArgs.ts | 4 ++-- backend/src/graphql/resolver/AdminResolver.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/backend/src/graphql/arg/SearchUsersArgs.ts b/backend/src/graphql/arg/SearchUsersArgs.ts index 52da77852..2a94d8998 100644 --- a/backend/src/graphql/arg/SearchUsersArgs.ts +++ b/backend/src/graphql/arg/SearchUsersArgs.ts @@ -12,8 +12,8 @@ export default class SearchUsersArgs { pageSize?: number @Field(() => Boolean, { nullable: true }) - notActivated?: boolean + notActivated?: boolean | null @Field(() => Boolean, { nullable: true }) - isDeleted?: boolean + isDeleted?: boolean | null } diff --git a/backend/src/graphql/resolver/AdminResolver.ts b/backend/src/graphql/resolver/AdminResolver.ts index e0a35b864..1905bde34 100644 --- a/backend/src/graphql/resolver/AdminResolver.ts +++ b/backend/src/graphql/resolver/AdminResolver.ts @@ -58,7 +58,7 @@ export class AdminResolver { const filterCriteria: ObjectLiteral[] = [] if (notActivated !== null) { - filterCriteria.push({ emailChecked: notActivated }) + filterCriteria.push({ emailChecked: !notActivated }) } if (isDeleted !== null) { From 04e3db15fd61f88bb84ece88f93eabcce890b77f Mon Sep 17 00:00:00 2001 From: ogerly Date: Fri, 25 Mar 2022 13:51:57 +0100 Subject: [PATCH 3/6] lint fixed --- admin/src/pages/UserSearch.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin/src/pages/UserSearch.vue b/admin/src/pages/UserSearch.vue index 528e8d6cb..b2737bae6 100644 --- a/admin/src/pages/UserSearch.vue +++ b/admin/src/pages/UserSearch.vue @@ -3,7 +3,7 @@
- {{ filterCheckedEmails ? $t('unregistered_emails') : $t('all_emails')}} + {{ filterCheckedEmails ? $t('unregistered_emails') : $t('all_emails') }} From 9a0004d1a31d329ef406a58e4ab5527708a2fcad Mon Sep 17 00:00:00 2001 From: Ulf Gebhardt Date: Sat, 26 Mar 2022 01:17:05 +0100 Subject: [PATCH 4/6] fix Creation.spec.js --- admin/src/pages/Creation.spec.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/admin/src/pages/Creation.spec.js b/admin/src/pages/Creation.spec.js index f9a4ed506..204c35817 100644 --- a/admin/src/pages/Creation.spec.js +++ b/admin/src/pages/Creation.spec.js @@ -71,6 +71,8 @@ describe('Creation', () => { searchText: '', currentPage: 1, pageSize: 25, + isDeleted: false, + notActivated: false, }, }), ) @@ -269,6 +271,8 @@ describe('Creation', () => { searchText: 'XX', currentPage: 1, pageSize: 25, + isDeleted: false, + notActivated: false, }, }), ) @@ -284,6 +288,8 @@ describe('Creation', () => { searchText: '', currentPage: 1, pageSize: 25, + isDeleted: false, + notActivated: false, }, }), ) @@ -299,6 +305,8 @@ describe('Creation', () => { searchText: '', currentPage: 2, pageSize: 25, + isDeleted: false, + notActivated: false, }, }), ) From f9a56a3e37dfd254b3eb3ae4778c5280213c3c2a Mon Sep 17 00:00:00 2001 From: Ulf Gebhardt Date: Sat, 26 Mar 2022 01:18:28 +0100 Subject: [PATCH 5/6] fix UserSearch.spec.js --- admin/src/pages/UserSearch.spec.js | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/admin/src/pages/UserSearch.spec.js b/admin/src/pages/UserSearch.spec.js index bd18965ac..e334d785e 100644 --- a/admin/src/pages/UserSearch.spec.js +++ b/admin/src/pages/UserSearch.spec.js @@ -82,8 +82,8 @@ describe('UserSearch', () => { searchText: '', currentPage: 1, pageSize: 25, - notActivated: false, - isDeleted: false, + notActivated: null, + isDeleted: null, }, }), ) @@ -101,8 +101,8 @@ describe('UserSearch', () => { searchText: '', currentPage: 1, pageSize: 25, - notActivated: true, - isDeleted: false, + notActivated: null, + isDeleted: null, }, }), ) @@ -121,8 +121,8 @@ describe('UserSearch', () => { searchText: '', currentPage: 1, pageSize: 25, - notActivated: false, - isDeleted: true, + notActivated: null, + isDeleted: null, }, }), ) @@ -141,8 +141,8 @@ describe('UserSearch', () => { searchText: '', currentPage: 2, pageSize: 25, - notActivated: false, - isDeleted: false, + notActivated: null, + isDeleted: null, }, }), ) @@ -161,8 +161,8 @@ describe('UserSearch', () => { searchText: 'search string', currentPage: 1, pageSize: 25, - notActivated: false, - isDeleted: false, + notActivated: null, + isDeleted: null, }, }), ) @@ -178,8 +178,8 @@ describe('UserSearch', () => { searchText: '', currentPage: 1, pageSize: 25, - notActivated: false, - isDeleted: false, + notActivated: null, + isDeleted: null, }, }), ) From 1cdb5266691602982f343a12a446a806a03e4370 Mon Sep 17 00:00:00 2001 From: Ulf Gebhardt Date: Tue, 29 Mar 2022 12:50:13 +0200 Subject: [PATCH 6/6] fixed test to properly check the filters on Admin UserSearch --- admin/src/pages/UserSearch.spec.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/admin/src/pages/UserSearch.spec.js b/admin/src/pages/UserSearch.spec.js index e334d785e..0b98d4d11 100644 --- a/admin/src/pages/UserSearch.spec.js +++ b/admin/src/pages/UserSearch.spec.js @@ -101,7 +101,7 @@ describe('UserSearch', () => { searchText: '', currentPage: 1, pageSize: 25, - notActivated: null, + notActivated: true, isDeleted: null, }, }), @@ -122,7 +122,7 @@ describe('UserSearch', () => { currentPage: 1, pageSize: 25, notActivated: null, - isDeleted: null, + isDeleted: true, }, }), )