From 348a59820aa3f7c072cb53c36ee71188458bb491 Mon Sep 17 00:00:00 2001
From: _Bastler <_Bastler@bstly.de>
Date: Fri, 7 May 2021 14:41:12 +0200
Subject: [PATCH] redeemed filter
---
src/app/pages/invites/invites.component.html | 50 ++++++++++++++++++++
src/app/pages/invites/invites.component.scss | 6 +--
src/app/pages/invites/invites.component.ts | 26 +++++++---
src/app/services/invites.service.ts | 8 ++--
4 files changed, 77 insertions(+), 13 deletions(-)
diff --git a/src/app/pages/invites/invites.component.html b/src/app/pages/invites/invites.component.html
index 447c993..38d8090 100644
--- a/src/app/pages/invites/invites.component.html
+++ b/src/app/pages/invites/invites.component.html
@@ -4,6 +4,27 @@
+
+ {{'invites.redeemed.filter' | i18n}}
+
+ {{'invites.redeemed.filter.none' | i18n}}
+
+ how_to_reg{{'invites.redeemed.filter.true' | i18n}}
+
+
+ person_remove{{'invites.redeemed.filter.false' | i18n}}
+
+
+
+ how_to_reg{{'invites.redeemed.filter.true' | i18n}}
+
+
+ person_remove{{'invites.redeemed.filter.false' | i18n}}
+
+ {{'invites.redeemed.filter.none' | i18n}}
+
+
+
@@ -71,12 +92,41 @@
+
+ {{'invites.redeemed.filter' | i18n}}
+
+ {{'invites.redeemed.filter.none' | i18n}}
+
+ how_to_reg{{'invites.redeemed.filter.true' | i18n}}
+
+
+ person_remove{{'invites.redeemed.filter.false' | i18n}}
+
+
+
+ how_to_reg{{'invites.redeemed.filter.true' | i18n}}
+
+
+ person_remove{{'invites.redeemed.filter.false' | i18n}}
+
+ {{'invites.redeemed.filter.none' | i18n}}
+
+
+
{{'invite.note' | i18n}} |
{{ invite.note}} {{ 'invite.noNote' | i18n}} |
+
+
+ {{'invite.redeemed' | i18n}} |
+
+ how_to_reg
+ |
+
+
diff --git a/src/app/pages/invites/invites.component.scss b/src/app/pages/invites/invites.component.scss
index 9ee20ad..b51e004 100644
--- a/src/app/pages/invites/invites.component.scss
+++ b/src/app/pages/invites/invites.component.scss
@@ -1,3 +1,3 @@
-mat-form-field {
- display: block;
-}
+.mat-form-field+.mat-form-field {
+ margin-left: 8px;
+}
\ No newline at end of file
diff --git a/src/app/pages/invites/invites.component.ts b/src/app/pages/invites/invites.component.ts
index b75fa7f..0e7074c 100644
--- a/src/app/pages/invites/invites.component.ts
+++ b/src/app/pages/invites/invites.component.ts
@@ -26,10 +26,12 @@ export class InvitesComponent implements OnInit {
datetimeformat: string;
pageSizeOptions: number[] = [5, 10, 25, 50];
searchFormControl = new FormControl();
+ redeemedFormControl = new FormControl();
searchOthersFormControl = new FormControl();
+ redeemedOthersFormControl = new FormControl();
inviteColumns = ["starts", "expires", "link", "note", "message", "redeemed"];
- otherColumns = ["note"];
+ otherColumns = ["note", "redeemed"];
constructor(
private authService: AuthService,
@@ -43,13 +45,25 @@ export class InvitesComponent implements OnInit {
async ngOnInit() {
this.datetimeformat = this.i18n.get('format.datetime', []);
this.quota = this.route.snapshot.paramMap.get('quota');
+
this.searchFormControl.valueChanges.pipe(debounceTime(500)).subscribe(value => {
- this.inviteService.getPages(this.quota, 0, this.invites.size, value).subscribe((data: any) => {
+ this.inviteService.getPages(this.quota, 0, this.invites.size, value, this.redeemedFormControl.value).subscribe((data: any) => {
this.invites = data;
}, (error) => {})
})
+ this.redeemedFormControl.valueChanges.subscribe(value => {
+ this.inviteService.getPages(this.quota, 0, this.invites.size, this.searchFormControl.value ? this.searchFormControl.value : "", value).subscribe((data: any) => {
+ this.invites = data;
+ }, (error) => {})
+ })
+
this.searchOthersFormControl.valueChanges.pipe(debounceTime(500)).subscribe(value => {
- this.inviteService.getOthersPages(this.quota, 0, this.others.size, value).subscribe((data: any) => {
+ this.inviteService.getOthersPages(this.quota, 0, this.others.size, value, this.redeemedOthersFormControl.value).subscribe((data: any) => {
+ this.others = data;
+ }, (error) => {})
+ })
+ this.redeemedOthersFormControl.valueChanges.subscribe(value => {
+ this.inviteService.getOthersPages(this.quota, 0, this.others.size, this.searchOthersFormControl.value ? this.searchOthersFormControl.value : "", value).subscribe((data: any) => {
this.others = data;
}, (error) => {})
})
@@ -73,7 +87,7 @@ export class InvitesComponent implements OnInit {
this.invites = data;
})
} else {
- this.inviteService.getPages(this.quota, this.invites.number || 0, this.invites.size || 10, this.searchFormControl.value ? this.searchFormControl.value : "").subscribe((data: any) => {
+ this.inviteService.getPages(this.quota, this.invites.number || 0, this.invites.size || 10, this.searchFormControl.value ? this.searchFormControl.value : "", this.redeemedFormControl.value).subscribe((data: any) => {
this.invites = data;
}, (error) => {})
}
@@ -84,7 +98,7 @@ export class InvitesComponent implements OnInit {
}
updatePages(event: PageEvent) {
- this.inviteService.getPages(this.quota, event.pageIndex, event.pageSize, this.searchFormControl.value ? this.searchFormControl.value : "").subscribe((data: any) => {
+ this.inviteService.getPages(this.quota, event.pageIndex, event.pageSize, this.searchFormControl.value ? this.searchFormControl.value : "", this.redeemedFormControl.value).subscribe((data: any) => {
this.invites = data;
}, (error) => {})
}
@@ -109,7 +123,7 @@ export class InvitesComponent implements OnInit {
}
updateOthers(event: PageEvent) {
- this.inviteService.getOthersPages(this.quota, event.pageIndex, event.pageSize, this.searchOthersFormControl.value ? this.searchOthersFormControl.value : "").subscribe((data: any) => {
+ this.inviteService.getOthersPages(this.quota, event.pageIndex, event.pageSize, this.searchOthersFormControl.value ? this.searchOthersFormControl.value : "", this.redeemedOthersFormControl.value).subscribe((data: any) => {
this.others = data;
}, (error) => {})
}
diff --git a/src/app/services/invites.service.ts b/src/app/services/invites.service.ts
index fd6499c..8eaecad 100644
--- a/src/app/services/invites.service.ts
+++ b/src/app/services/invites.service.ts
@@ -15,16 +15,16 @@ export class InviteService {
return this.http.get(environment.apiUrl + "/invites" + (quota ? "?quota=" + quota : ""));
}
- getPages(quota: string, page: number, size: number, search: string) {
- return this.http.get(environment.apiUrl + "/invites" + (quota ? "?quota=" + quota + "&" : "?") + "page=" + page + "&size=" + size + "&search=" + search);
+ getPages(quota: string, page: number, size: number, search: string, redeemed: string) {
+ return this.http.get(environment.apiUrl + "/invites" + (quota ? "?quota=" + quota + "&" : "?") + "page=" + page + "&size=" + size + "&search=" + search + (redeemed ? "&redeemed=" + redeemed : ""));
}
getOthers(quota: string) {
return this.http.get(environment.apiUrl + "/invites/" + quota + "/others");
}
- getOthersPages(quota: string, page: number, size: number, search: string) {
- return this.http.get(environment.apiUrl + "/invites/" + quota + "/others?page=" + page + "&size=" + size + "&search=" + search);
+ getOthersPages(quota: string, page: number, size: number, search: string, redeemed: string) {
+ return this.http.get(environment.apiUrl + "/invites/" + quota + "/others?page=" + page + "&size=" + size + "&search=" + search + (redeemed ? "&redeemed=" + redeemed : ""));
}
create(quota: string, invite: any) {