From 2f2215b04171acf1a5ee77c3317ad57f502f1ae2 Mon Sep 17 00:00:00 2001 From: Tom Date: Tue, 18 Mar 2025 16:42:44 +0000 Subject: [PATCH] Fixed waiting for responses in code for certain actions. --- .../groups/group-item-edit/group-item-edit.component.ts | 1 + .../redemption-item-edit.component.ts | 9 +++++++-- .../filter-item-edit/filter-item-edit.component.ts | 2 +- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/app/groups/group-item-edit/group-item-edit.component.ts b/src/app/groups/group-item-edit/group-item-edit.component.ts index 3456dd5..0a34791 100644 --- a/src/app/groups/group-item-edit/group-item-edit.component.ts +++ b/src/app/groups/group-item-edit/group-item-edit.component.ts @@ -52,6 +52,7 @@ export class GroupItemEditComponent implements OnInit { if (this.formGroup.invalid || this.waitForResponse) return; + this.waitForResponse = true; this._client.first((d: any) => d.op == 4 && d.d.request.type == 'create_group' && d.d.data.name == this.nameForm.value) .subscribe({ next: (d) => this._dialogRef.close(d.d.data), diff --git a/src/app/redemptions/redemption-item-edit/redemption-item-edit.component.ts b/src/app/redemptions/redemption-item-edit/redemption-item-edit.component.ts index 3a4404e..c2992a3 100644 --- a/src/app/redemptions/redemption-item-edit/redemption-item-edit.component.ts +++ b/src/app/redemptions/redemption-item-edit/redemption-item-edit.component.ts @@ -81,8 +81,11 @@ export class RedemptionItemEditComponent implements OnInit { delete() { - const id = this.redemption.id; + if (this.waitForResponse) + return; + this.waitForResponse = true + const id = this.redemption.id; this.client.first((d: any) => d.op == 4 && d.d.request.type == 'delete_redemption' && d.d.request.data.id == id) ?.subscribe({ next: (d) => { @@ -100,13 +103,15 @@ export class RedemptionItemEditComponent implements OnInit { } save() { - if (this.formGroups.invalid) + if (this.formGroups.invalid || this.waitForResponse) return; + this.waitForResponse = true; this.responseError = undefined; const order = this.orderFormControl.value; if (order == null) { this.responseError = 'Order must be an integer.'; + this.waitForResponse = false; return; } diff --git a/src/app/tts-filters/filter-item-edit/filter-item-edit.component.ts b/src/app/tts-filters/filter-item-edit/filter-item-edit.component.ts index 69bab96..cb10cb2 100644 --- a/src/app/tts-filters/filter-item-edit/filter-item-edit.component.ts +++ b/src/app/tts-filters/filter-item-edit/filter-item-edit.component.ts @@ -71,7 +71,7 @@ export class FilterItemEditComponent { } onSaveClick(): void { - if (this.forms.invalid) + if (this.forms.invalid || this.waitForResponse) return; this.waitForResponse = true;