argos/dmp-frontend/src/app/ui/description/editor/description-form/description-form.component....

55 lines
2.2 KiB
HTML
Raw Normal View History

2023-12-20 08:20:38 +01:00

<div *ngIf="datasetDescription" class="col-12 intro" [innerHTML]="datasetDescription"></div>
<form *ngIf="descriptionTemplate && propertiesFormGroup" novalidate class="col-12 card">
<div class="row">
<div class="dynamic-form-editor p-0 col-md-12">
<div id="form-container">
<ng-container *ngIf="!tocentries else toctemplate">
<div *ngFor="let page of descriptionTemplate?.definition?.pages; let z = index;">
<div *ngFor="let section of getSectionsOfPage(page.id); let i = index;">
<div class="row">
<app-form-section class="col-12" [section]="section" [path]="z+1"
[pathName]="'pages.'+z+'.sections.'+i" [propertiesFormGroup]="propertiesFormGroup" [visibilityRulesService]="visibilityRulesService"
[linkToScroll]="linkToScroll"></app-form-section>
</div>
</div>
</div>
</ng-container>
<!-- TOCENTRIES -->
<ng-template #toctemplate>
<!--FIRST LEVEL ALWAYS PAGE-->
<mat-accordion [multi]="true">
<ng-container *ngFor="let pageEntry of tocentries; let z = index;">
<mat-expansion-panel [expanded]="true" #expansionPanel *ngIf="!hiddenEntriesIds.includes(pageEntry.id)">
<mat-expansion-panel-header>
<mat-panel-title>
<h4 class="panel-title toc-page-header">
{{pageEntry.numbering}}. {{pageEntry.label |uppercase}}
</h4>
</mat-panel-title>
</mat-expansion-panel-header>
<!--
<h4 class="toc-page-header">
</h4> -->
<ng-container *ngFor="let sectionEntry of pageEntry.subEntries; let i = index;">
<div class="row" *ngIf="!hiddenEntriesIds.includes(sectionEntry.id)">
<app-form-section [TOCENTRY_ID_PREFIX]="TOCENTRY_ID_PREFIX" class="col-12" [tocentry]="sectionEntry" [path]="z+1"
[pathName]="'pages.'+z+'.sections.'+i" [datasetProfileId]="datasetProfileId" [visibilityRulesService]="visibilityRulesService"
[linkToScroll]="linkToScroll"
(askedToScroll)="onAskedToScroll(expansionPanel, $event)"
[hiddenEntriesIds]="hiddenEntriesIds"
></app-form-section>
</div>
</ng-container>
</mat-expansion-panel>
</ng-container>
</mat-accordion>
</ng-template>
</div>
</div>
</div>
</form>