You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datalab.apache.org by dg...@apache.org on 2020/11/11 14:17:48 UTC
[incubator-datalab] 02/03: [DATALAB-2142]: Fixed validation on
manage quota popup
This is an automated email from the ASF dual-hosted git repository.
dgnatyshyn pushed a commit to branch DATALAB-2142
in repository https://gitbox.apache.org/repos/asf/incubator-datalab.git
commit 8bc804c3b011db33ee2e8ee90227faa661e156a9
Author: Dmytro_Gnatyshyn <di...@ukr.net>
AuthorDate: Wed Nov 11 16:16:29 2020 +0200
[DATALAB-2142]: Fixed validation on manage quota popup
---
.../manage-environment-dilog.component.ts | 20 ++++++++++++--------
1 file changed, 12 insertions(+), 8 deletions(-)
diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/management/manage-environment/manage-environment-dilog.component.ts b/services/self-service/src/main/resources/webapp/src/app/administration/management/manage-environment/manage-environment-dilog.component.ts
index 49e6fec..f31ede9 100644
--- a/services/self-service/src/main/resources/webapp/src/app/administration/management/manage-environment/manage-environment-dilog.component.ts
+++ b/services/self-service/src/main/resources/webapp/src/app/administration/management/manage-environment/manage-environment-dilog.component.ts
@@ -60,14 +60,17 @@ export class ManageEnvironmentComponent implements OnInit {
public onFormChange() {
this.manageUsersForm.valueChanges.subscribe(value => {
this.isFormChanged = JSON.stringify(this.initialFormState) === JSON.stringify(this.manageUsersForm.value);
- if ((this.getCurrentTotalValue() && this.getCurrentTotalValue() >= this.getCurrentUsersTotal())) {
- this.manageUsersForm.controls['projects']['controls'].forEach(v => {
- v.controls['budget'].errors &&
- 'max' in v.controls['budget'].errors ? null : v.controls['budget'].setErrors(null);
+ if (this.getCurrentTotalValue()) {
+ if (this.getCurrentTotalValue() >= this.getCurrentUsersTotal()) {
+ this.manageUsersForm.controls['total'].setErrors(null);
+ this.manageUsersForm.controls['projects']['controls'].forEach(v => {
+ v.controls['budget'].errors &&
+ 'max' in v.controls['budget'].errors ? null : v.controls['budget'].setErrors(null);
+ }
+ );
+ } else {
+ this.manageUsersForm.controls['total'].setErrors({ overrun: true });
}
- );
- this.manageUsersForm.controls['total'].errors &&
- this.manageUsersForm.controls['total'].errors ? null : this.manageUsersForm.controls['total'].setErrors(null);
}
});
}
@@ -99,7 +102,7 @@ export class ManageEnvironmentComponent implements OnInit {
public setProjectsControl() {
this.manageUsersForm.setControl('projects',
- this._fb.array((this.data.projectsList || []).map((x: any) => this._fb.group({
+ this._fb.array((this.data.projectsList || []).map((x: any, index: number) => this._fb.group({
project: x.name,
budget: [x.budget.value, [ Validators.max(1000000000), this.userValidityCheck.bind(this)]],
monthlyBudget: x.budget.monthlyBudget,
@@ -129,6 +132,7 @@ export class ManageEnvironmentComponent implements OnInit {
private userValidityCheck(control) {
if (control && control.value) {
+ this.manageUsersForm.value.projects.find(v => v.project === control.parent.value.project).budget = control.value;
return (this.getCurrentTotalValue() && this.getCurrentTotalValue() < this.getCurrentUsersTotal()) ? { overrun: true } : null;
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datalab.apache.org
For additional commands, e-mail: commits-help@datalab.apache.org