[CST-9636] Show warning only when there are no controls and form is not disabled

This commit is contained in:
Enea Jahollari
2023-05-10 16:45:17 +02:00
parent 9da66a5cfd
commit 628732b932
11 changed files with 15 additions and 26 deletions

View File

@@ -16,7 +16,7 @@ import { ComcolModule } from '../../shared/comcol/comcol.module';
import { CollectionAccessControlComponent } from './collection-access-control/collection-access-control.component'; import { CollectionAccessControlComponent } from './collection-access-control/collection-access-control.component';
import { import {
AccessControlArrayFormModule AccessControlArrayFormModule
} from '../../shared/access-control-array-form/access-control-array-form.component'; } from '../../shared/access-control-form-container/access-control-array-form/access-control-array-form.component';
import { UiSwitchModule } from 'ngx-ui-switch'; import { UiSwitchModule } from 'ngx-ui-switch';
import { import {
AccessControlFormContainerModule AccessControlFormContainerModule

View File

@@ -14,7 +14,7 @@ import { CommunityAccessControlComponent } from './community-access-control/comm
import { UiSwitchModule } from 'ngx-ui-switch'; import { UiSwitchModule } from 'ngx-ui-switch';
import { import {
AccessControlArrayFormModule AccessControlArrayFormModule
} from '../../shared/access-control-array-form/access-control-array-form.component'; } from '../../shared/access-control-form-container/access-control-array-form/access-control-array-form.component';
import { import {
AccessControlFormContainerModule AccessControlFormContainerModule
} from '../../shared/access-control-form-container/access-control-form-container.component'; } from '../../shared/access-control-form-container/access-control-form-container.component';

View File

@@ -47,9 +47,6 @@ import { IdentifierDataComponent } from '../../shared/object-list/identifier-dat
import { ItemRegisterDoiComponent } from './item-register-doi/item-register-doi.component'; import { ItemRegisterDoiComponent } from './item-register-doi/item-register-doi.component';
import { DsoSharedModule } from '../../dso-shared/dso-shared.module'; import { DsoSharedModule } from '../../dso-shared/dso-shared.module';
import { ItemAccessControlComponent } from './item-access-control/item-access-control.component'; import { ItemAccessControlComponent } from './item-access-control/item-access-control.component';
import {
AccessControlArrayFormModule
} from '../../shared/access-control-array-form/access-control-array-form.component';
import { UiSwitchModule } from 'ngx-ui-switch'; import { UiSwitchModule } from 'ngx-ui-switch';
import { ResultsBackButtonModule } from '../../shared/results-back-button/results-back-button.module'; import { ResultsBackButtonModule } from '../../shared/results-back-button/results-back-button.module';
import { import {
@@ -72,7 +69,6 @@ import {
NgbModule, NgbModule,
ItemVersionsModule, ItemVersionsModule,
DsoSharedModule, DsoSharedModule,
AccessControlArrayFormModule,
UiSwitchModule, UiSwitchModule,
ResultsBackButtonModule, ResultsBackButtonModule,
AccessControlFormContainerModule, AccessControlFormContainerModule,

View File

@@ -1,4 +1,8 @@
<form [formGroup]="form"> <form [formGroup]="form">
<div *ngIf="accessControl.controls.length === 0 && form.status !== 'DISABLED'" class="alert alert-warning">
{{'access-control-no-access-conditions-warning-message' | translate}}
</div>
<ng-container *ngFor="let control of accessControl.controls; let i = index"> <ng-container *ngFor="let control of accessControl.controls; let i = index">
<div [formGroup]="$any(control)" <div [formGroup]="$any(control)"
class="mt-3" data-testId="access-control-item" class="mt-3" data-testId="access-control-item"

View File

@@ -2,7 +2,7 @@ import { ComponentFixture, TestBed } from '@angular/core/testing';
import { AccessControlArrayFormComponent } from './access-control-array-form.component'; import { AccessControlArrayFormComponent } from './access-control-array-form.component';
import { ReactiveFormsModule } from '@angular/forms'; import { ReactiveFormsModule } from '@angular/forms';
import { SharedBrowseByModule } from '../browse-by/shared-browse-by.module'; import { SharedBrowseByModule } from '../../browse-by/shared-browse-by.module';
import { CommonModule } from '@angular/common'; import { CommonModule } from '@angular/common';
import { TranslateModule } from '@ngx-translate/core'; import { TranslateModule } from '@ngx-translate/core';
import { NgbDatepickerModule } from '@ng-bootstrap/ng-bootstrap'; import { NgbDatepickerModule } from '@ng-bootstrap/ng-bootstrap';

View File

@@ -1,7 +1,7 @@
import { Component, Input, NgModule, OnDestroy, OnInit } from '@angular/core'; import { Component, Input, NgModule, OnDestroy, OnInit } from '@angular/core';
import { CommonModule } from '@angular/common'; import { CommonModule } from '@angular/common';
import { FormArray, FormBuilder, FormControl, ReactiveFormsModule } from '@angular/forms'; import { FormArray, FormBuilder, FormControl, ReactiveFormsModule } from '@angular/forms';
import { SharedBrowseByModule } from '../browse-by/shared-browse-by.module'; import { SharedBrowseByModule } from '../../browse-by/shared-browse-by.module';
import { TranslateModule } from '@ngx-translate/core'; import { TranslateModule } from '@ngx-translate/core';
import { NgbDatepickerModule } from '@ng-bootstrap/ng-bootstrap'; import { NgbDatepickerModule } from '@ng-bootstrap/ng-bootstrap';
import { ControlMaxStartDatePipe } from './control-max-start-date.pipe'; import { ControlMaxStartDatePipe } from './control-max-start-date.pipe';
@@ -9,7 +9,7 @@ import { ControlMaxEndDatePipe } from './control-max-end-date.pipe';
import { distinctUntilChanged, takeUntil } from 'rxjs/operators'; import { distinctUntilChanged, takeUntil } from 'rxjs/operators';
import { Subject } from 'rxjs'; import { Subject } from 'rxjs';
import { AccessesConditionOption } from '../../core/config/models/config-accesses-conditions-options.model'; import { AccessesConditionOption } from '../../../core/config/models/config-accesses-conditions-options.model';
@Component({ @Component({

View File

@@ -1,7 +1,7 @@
import { Pipe, PipeTransform } from '@angular/core'; import { Pipe, PipeTransform } from '@angular/core';
import { AbstractControl } from '@angular/forms'; import { AbstractControl } from '@angular/forms';
import { NgbDateStruct } from '@ng-bootstrap/ng-bootstrap/datepicker/ngb-date-struct'; import { NgbDateStruct } from '@ng-bootstrap/ng-bootstrap/datepicker/ngb-date-struct';
import { AccessesConditionOption } from '../../core/config/models/config-accesses-conditions-options.model'; import { AccessesConditionOption } from '../../../core/config/models/config-accesses-conditions-options.model';
@Pipe({ @Pipe({
// eslint-disable-next-line @angular-eslint/pipe-prefix // eslint-disable-next-line @angular-eslint/pipe-prefix

View File

@@ -1,7 +1,7 @@
import { Pipe, PipeTransform } from '@angular/core'; import { Pipe, PipeTransform } from '@angular/core';
import { AbstractControl } from '@angular/forms'; import { AbstractControl } from '@angular/forms';
import { NgbDateStruct } from '@ng-bootstrap/ng-bootstrap/datepicker/ngb-date-struct'; import { NgbDateStruct } from '@ng-bootstrap/ng-bootstrap/datepicker/ngb-date-struct';
import { AccessesConditionOption } from '../../core/config/models/config-accesses-conditions-options.model'; import { AccessesConditionOption } from '../../../core/config/models/config-accesses-conditions-options.model';
@Pipe({ @Pipe({

View File

@@ -41,12 +41,7 @@
</div> </div>
</div> </div>
<div class="mt-3"> <h5 class="mt-3">{{'access-control-access-conditions' | translate}}</h5>
<h5>{{'access-control-access-conditions' | translate}}</h5>
<div class="alert alert-warning">
{{'access-control-no-access-conditions-warning-message' | translate}}
</div>
</div>
<ds-access-control-array-form <ds-access-control-array-form
#itemAccessCmp #itemAccessCmp
@@ -127,13 +122,7 @@
</div> </div>
</div> </div>
<div class="mt-3"> <h5 class="mt-3">{{'access-control-access-conditions' | translate}}</h5>
<h5>{{'access-control-access-conditions' | translate}}</h5>
<div class="alert alert-warning">
{{'access-control-no-access-conditions-warning-message' | translate}}
</div>
</div>
<ds-access-control-array-form <ds-access-control-array-form
#bitstreamAccessCmp #bitstreamAccessCmp

View File

@@ -5,7 +5,7 @@ import { Item } from '../../core/shared/item.model';
import { import {
AccessControlArrayFormComponent, AccessControlArrayFormComponent,
AccessControlArrayFormModule AccessControlArrayFormModule
} from '../access-control-array-form/access-control-array-form.component'; } from './access-control-array-form/access-control-array-form.component';
import { BulkAccessControlService } from './bulk-access-control.service'; import { BulkAccessControlService } from './bulk-access-control.service';
import { SelectableListService } from '../object-list/selectable-list/selectable-list.service'; import { SelectableListService } from '../object-list/selectable-list/selectable-list.service';
import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; import { NgbModal } from '@ng-bootstrap/ng-bootstrap';
@@ -176,7 +176,7 @@ const initialState = {
AccessControlFormContainerComponent, AccessControlFormContainerComponent,
ItemAccessControlSelectBitstreamsModalComponent ItemAccessControlSelectBitstreamsModalComponent
], ],
exports: [ AccessControlFormContainerComponent ], exports: [ AccessControlFormContainerComponent, AccessControlArrayFormModule ],
}) })
export class AccessControlFormContainerModule {} export class AccessControlFormContainerModule {}