no message

This commit is contained in:
annabakouli 2017-12-06 14:42:28 +02:00
parent 902116e039
commit e83c54f37f
6 changed files with 18 additions and 11 deletions

View File

@ -1,3 +1,4 @@
import { VisibilityRulesService } from '../../../visibility-rules/visibility-rules.service';
import { BaseTableOfContent } from '../base-table-of-content.component';
import { CompositeField } from '../../../models/CompositeField';
import { Field } from '../../../models/Field';
@ -16,7 +17,7 @@ export class TableOfContentsFieldComponent extends BaseTableOfContent{
@Input() index:number;
@Input() public path:string;
constructor(public router: Router, public route: ActivatedRoute) {
constructor(public router: Router, public route: ActivatedRoute,private visibilityRulesService: VisibilityRulesService) {
super(router, route)
}
}

View File

@ -1,7 +1,10 @@
<!-- All contents in the first page -->
<ul>
<li *ngFor="let field of model.fields let i = index">
<table-of-contents-field [model]="field" [index]="i" [path]="path"> </table-of-contents-field>
</li>
<div *ngFor="let field of model.fields let i = index">
<li *ngIf="visibilityRulesService.isElementVisible(null,field.id)">
<table-of-contents-field [model]="field" [index]="i" [path]="path">
</table-of-contents-field>
</li>
</div>
</ul>

View File

@ -1,3 +1,4 @@
import { VisibilityRulesService } from '../../../visibility-rules/visibility-rules.service';
import { BaseTableOfContent } from '../base-table-of-content.component';
import { CompositeField } from '../../../models/CompositeField';
import { FieldGroup } from '../../../models/FieldGroup';
@ -19,7 +20,7 @@ export class TableOfContentsFieldSetComponent extends BaseTableOfContent {
@Input() index: number;
@Input() public path: string;
constructor(public router: Router, public route: ActivatedRoute) {
constructor(public router: Router, public route: ActivatedRoute,private visibilityRulesService: VisibilityRulesService) {
super(router, route)
}
}

View File

@ -1,3 +1,4 @@
import { VisibilityRulesService } from '../../../visibility-rules/visibility-rules.service';
import { BaseTableOfContent } from '../base-table-of-content.component';
import { FieldGroup } from '../../../models/FieldGroup';
import { Section } from '../../../models/Section';
@ -21,7 +22,7 @@ export class TableOfContentsGroupComponent extends BaseTableOfContent {
setPage:EventEmitter<number> = new EventEmitter<number>();
*/
constructor(public router: Router, public route: ActivatedRoute) {
constructor(public router: Router, public route: ActivatedRoute,private visibilityRulesService: VisibilityRulesService) {
super(router, route)
}

View File

@ -1,3 +1,4 @@
import { VisibilityRulesService } from '../../../visibility-rules/visibility-rules.service';
import { BaseTableOfContent } from '../base-table-of-content.component';
import { Section } from '../../../models/Section';
import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';
@ -17,7 +18,7 @@ export class TableOfContentsSectionComponent extends BaseTableOfContent implemen
@Input() index: number;
@Input() public path: string;
constructor(public router: Router,public route:ActivatedRoute){
constructor(public router: Router,public route:ActivatedRoute,private visibilityRulesService: VisibilityRulesService){
super(router,route)
}
ngOnInit() {

View File

@ -9,9 +9,9 @@ export class VisibilityRulesService {
public formGroup: FormGroup;
public visibilityRuleContext: VisibilityRulesContext;
public fieldsPathMemory: any = {};
public isElementVisible(pathKey: string, id: string) {
if (!this.fieldsPathMemory[id]) this.fieldsPathMemory[id] = pathKey;
if (!this.fieldsPathMemory[id] && pathKey) this.fieldsPathMemory[id] = pathKey;
let visibilityRule = this.visibilityRuleContext.getRulesFromKey(id);
if (!visibilityRule) return true;
return this.checkElementVisibility(visibilityRule);
@ -21,8 +21,8 @@ export class VisibilityRulesService {
let sourceVisibilityRules = visibilityRule.sourceVisibilityRules;
for (let i = 0; i < sourceVisibilityRules.length; i++) {
let sourceVisibilityRule = sourceVisibilityRules[i];
if (!this.formGroup.get( this.fieldsPathMemory[sourceVisibilityRule.sourceControlId] + '.value'))return false; //TODO
if(sourceVisibilityRule.sourceControlValue != ''+this.formGroup.get( this.fieldsPathMemory[sourceVisibilityRule.sourceControlId] + '.value').value) return false;
if (!this.formGroup.get(this.fieldsPathMemory[sourceVisibilityRule.sourceControlId] + '.value')) return false; //TODO
if (sourceVisibilityRule.sourceControlValue != '' + this.formGroup.get(this.fieldsPathMemory[sourceVisibilityRule.sourceControlId] + '.value').value) return false;
}
return true;
}