no message
This commit is contained in:
parent
60b12fe501
commit
2bc57251e0
|
@ -28,7 +28,7 @@
|
|||
<ng-template matStepLabel>{{'DATASET-WIZARD.THIRD-STEP.TITLE' | translate}}</ng-template>
|
||||
<dynamic-form *ngIf="datasetWizardModel && datasetWizardModel.id" [dataModel]="datasetWizardModel"></dynamic-form>
|
||||
<div>
|
||||
<button matStepperPrevious mat-raised-button color="primary">{{'DATASET-WIZARD.ACTIONS.BACK' | translate}}</button>
|
||||
<button style="margin-top:10px;" matStepperPrevious mat-raised-button color="primary">{{'DATASET-WIZARD.ACTIONS.BACK' | translate}}</button>
|
||||
</div>
|
||||
</mat-step>
|
||||
</mat-horizontal-stepper>
|
||||
|
|
|
@ -53,7 +53,7 @@
|
|||
</div> -->
|
||||
|
||||
<div *ngFor="let compositeField of section.compositeFields; let i = index;">
|
||||
<div *ngIf="isVisible(compositeField)">
|
||||
<div *ngIf="isVisible(pathName+'.compositeFields.'+i, compositeField)">
|
||||
<div *ngIf="(compositeField?.multiplicity?.max - 1) > (compositeField?.multiplicityItems?.length)">
|
||||
<a (click)="addMultipleField(i)" style="cursor: pointer">
|
||||
Add one more fieldset +
|
||||
|
|
|
@ -19,7 +19,7 @@ export class DynamicFormSectionComponent implements OnInit {
|
|||
@Input() form: FormGroup;
|
||||
@Input() pathName: string;
|
||||
@Input() path: string;
|
||||
constructor(private visibilityRulesService:VisibilityRulesService) { }
|
||||
constructor(private visibilityRulesService: VisibilityRulesService) { }
|
||||
|
||||
ngOnInit() {
|
||||
console.log(this.section);
|
||||
|
@ -31,11 +31,11 @@ export class DynamicFormSectionComponent implements OnInit {
|
|||
(<FormArray>(this.form.get("compositeFields").get('' + fieldsetIndex).get('multiplicityItems'))).push(compositeField.buildForm());
|
||||
}
|
||||
|
||||
isVisible(fieldSet:CompositeField):boolean{
|
||||
if(!this.visibilityRulesService.isElementVisible(null,fieldSet.id)) return false;
|
||||
for(var i=0; i<fieldSet.fields.length; i++){
|
||||
if (!this.visibilityRulesService.isElementVisible(null,fieldSet.fields[i].id))
|
||||
return false;
|
||||
isVisible(pathname: string, fieldSet: CompositeField): boolean {
|
||||
if (!this.visibilityRulesService.isElementVisible(pathname, fieldSet.id)) return false;
|
||||
for (var i = 0; i < fieldSet.fields.length; i++) {
|
||||
if (!this.visibilityRulesService.isElementVisible(pathname+'.fields.'+i, fieldSet.fields[i].id))
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -5,14 +5,14 @@ import { Component, Input, OnInit } from '@angular/core';
|
|||
import { FormGroup, FormControl, FormArray } from '@angular/forms'
|
||||
@Component({
|
||||
selector: 'progress-bar',
|
||||
templateUrl: './progress-bar.component.html',
|
||||
styles: ['.alwaysVisible .ui-progressbar-label { display:block!important; }'],
|
||||
encapsulation: ViewEncapsulation.None
|
||||
templateUrl: './progress-bar.component.html',
|
||||
styles: ['.alwaysVisible .ui-progressbar-label { display:block!important; }'],
|
||||
encapsulation: ViewEncapsulation.None
|
||||
})
|
||||
export class ProgressBarComponent implements OnInit {
|
||||
@Input() formGroup: FormGroup
|
||||
@Input("progressValueAccuracy") public accuracy: number = 1;
|
||||
determinateProgressValue:number;
|
||||
determinateProgressValue: number;
|
||||
|
||||
constructor(private visibilityRulesService: VisibilityRulesService) { }
|
||||
|
||||
|
@ -25,8 +25,8 @@ export class ProgressBarComponent implements OnInit {
|
|||
this.calculateValueForProgressbar();
|
||||
});
|
||||
}
|
||||
|
||||
calculateValueForProgressbar(){
|
||||
|
||||
calculateValueForProgressbar() {
|
||||
var progressSoFar = this.countFormControlsWithValue(this.formGroup);
|
||||
var total = this.getFormControlDepthLength(this.formGroup);
|
||||
var perc = (progressSoFar / total) * 100;
|
||||
|
@ -52,16 +52,17 @@ export class ProgressBarComponent implements OnInit {
|
|||
getFormControlDepthLength(form: FormGroup): number {
|
||||
let value = 0;
|
||||
Object.keys(form.controls).forEach(key => {
|
||||
let control = form.controls[key]
|
||||
if (control instanceof FormGroup)
|
||||
{ value += this.getFormControlDepthLength(control);}
|
||||
let control = form.controls[key];
|
||||
if (control instanceof FormGroup) { value += this.getFormControlDepthLength(control); }
|
||||
else if (control instanceof FormArray) {
|
||||
let formArray = (<FormArray>control);
|
||||
for (let i = 0; i < formArray.length; i++) {
|
||||
value += this.getFormControlDepthLength(<FormGroup>formArray.get("" + i))
|
||||
if (<FormGroup>formArray.get("" + i).value && this.visibilityRulesService.isElementVisible(null, formArray.get("" + i).value.id))
|
||||
value += this.getFormControlDepthLength(<FormGroup>formArray.get("" + i))
|
||||
}
|
||||
}
|
||||
else if (key === "value" && this.visibilityRulesService.isElementVisible(null, form.controls["id"].value)) value++;
|
||||
else if (key === "value" && this.visibilityRulesService.isElementVisible(null, form.controls["id"].value))
|
||||
value++;
|
||||
});
|
||||
return value;
|
||||
}
|
||||
|
|
|
@ -17,7 +17,8 @@ export class VisibilityRulesService {
|
|||
if (this.checkElementVisibility(visibilityRule)) {
|
||||
return true
|
||||
} else {
|
||||
if (pathKey && this.formGroup.get(pathKey + '.value')) this.formGroup.get(pathKey + '.value').patchValue(null)
|
||||
this.clearValues(pathKey)
|
||||
// if (pathKey && this.formGroup.get(pathKey + '.value')) this.formGroup.get(pathKey + '.value').patchValue(null)
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -40,4 +41,13 @@ export class VisibilityRulesService {
|
|||
private getParentPath(parentId: string): string {
|
||||
return '';
|
||||
}
|
||||
|
||||
private clearValues(pathKey) {
|
||||
if (pathKey && this.formGroup.get(pathKey + '.value')) this.formGroup.get(pathKey + '.value').patchValue(null)
|
||||
if (pathKey && this.formGroup.get(pathKey)["controls"].fields){
|
||||
for (var i = 0; i < this.formGroup.get(pathKey)["controls"].fields.length; i++)
|
||||
this.clearValues(pathKey+'.fields.'+i);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue