mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 18:14:17 +00:00
[DURACOM-191] Remove access-control.module
This commit is contained in:
@@ -1,4 +1,9 @@
|
|||||||
|
import { AbstractControl } from '@angular/forms';
|
||||||
import { Route } from '@angular/router';
|
import { Route } from '@angular/router';
|
||||||
|
import {
|
||||||
|
DYNAMIC_ERROR_MESSAGES_MATCHER,
|
||||||
|
DynamicErrorMessagesMatcher,
|
||||||
|
} from '@ng-dynamic-forms/core';
|
||||||
|
|
||||||
import { I18nBreadcrumbResolver } from '../core/breadcrumbs/i18n-breadcrumb.resolver';
|
import { I18nBreadcrumbResolver } from '../core/breadcrumbs/i18n-breadcrumb.resolver';
|
||||||
import { GroupAdministratorGuard } from '../core/data/feature-authorization/feature-authorization-guard/group-administrator.guard';
|
import { GroupAdministratorGuard } from '../core/data/feature-authorization/feature-authorization-guard/group-administrator.guard';
|
||||||
@@ -15,6 +20,20 @@ import { GroupFormComponent } from './group-registry/group-form/group-form.compo
|
|||||||
import { GroupPageGuard } from './group-registry/group-page.guard';
|
import { GroupPageGuard } from './group-registry/group-page.guard';
|
||||||
import { GroupsRegistryComponent } from './group-registry/groups-registry.component';
|
import { GroupsRegistryComponent } from './group-registry/groups-registry.component';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Condition for displaying error messages on email form field
|
||||||
|
*/
|
||||||
|
export const ValidateEmailErrorStateMatcher: DynamicErrorMessagesMatcher =
|
||||||
|
(control: AbstractControl, model: any, hasFocus: boolean) => {
|
||||||
|
return (control.touched && !hasFocus) || (control.errors?.emailTaken && hasFocus);
|
||||||
|
};
|
||||||
|
|
||||||
|
const providers = [
|
||||||
|
{
|
||||||
|
provide: DYNAMIC_ERROR_MESSAGES_MATCHER,
|
||||||
|
useValue: ValidateEmailErrorStateMatcher,
|
||||||
|
},
|
||||||
|
];
|
||||||
export const ROUTES: Route[] = [
|
export const ROUTES: Route[] = [
|
||||||
{
|
{
|
||||||
path: EPERSON_PATH,
|
path: EPERSON_PATH,
|
||||||
@@ -22,6 +41,7 @@ export const ROUTES: Route[] = [
|
|||||||
resolve: {
|
resolve: {
|
||||||
breadcrumb: I18nBreadcrumbResolver,
|
breadcrumb: I18nBreadcrumbResolver,
|
||||||
},
|
},
|
||||||
|
providers,
|
||||||
data: { title: 'admin.access-control.epeople.title', breadcrumbKey: 'admin.access-control.epeople' },
|
data: { title: 'admin.access-control.epeople.title', breadcrumbKey: 'admin.access-control.epeople' },
|
||||||
canActivate: [SiteAdministratorGuard],
|
canActivate: [SiteAdministratorGuard],
|
||||||
},
|
},
|
||||||
@@ -31,6 +51,7 @@ export const ROUTES: Route[] = [
|
|||||||
resolve: {
|
resolve: {
|
||||||
breadcrumb: I18nBreadcrumbResolver,
|
breadcrumb: I18nBreadcrumbResolver,
|
||||||
},
|
},
|
||||||
|
providers,
|
||||||
data: { title: 'admin.access-control.epeople.add.title', breadcrumbKey: 'admin.access-control.epeople.add' },
|
data: { title: 'admin.access-control.epeople.add.title', breadcrumbKey: 'admin.access-control.epeople.add' },
|
||||||
canActivate: [SiteAdministratorGuard],
|
canActivate: [SiteAdministratorGuard],
|
||||||
},
|
},
|
||||||
@@ -41,6 +62,7 @@ export const ROUTES: Route[] = [
|
|||||||
breadcrumb: I18nBreadcrumbResolver,
|
breadcrumb: I18nBreadcrumbResolver,
|
||||||
ePerson: EPersonResolver,
|
ePerson: EPersonResolver,
|
||||||
},
|
},
|
||||||
|
providers,
|
||||||
data: { title: 'admin.access-control.epeople.edit.title', breadcrumbKey: 'admin.access-control.epeople.edit' },
|
data: { title: 'admin.access-control.epeople.edit.title', breadcrumbKey: 'admin.access-control.epeople.edit' },
|
||||||
canActivate: [SiteAdministratorGuard],
|
canActivate: [SiteAdministratorGuard],
|
||||||
},
|
},
|
||||||
@@ -50,6 +72,7 @@ export const ROUTES: Route[] = [
|
|||||||
resolve: {
|
resolve: {
|
||||||
breadcrumb: I18nBreadcrumbResolver,
|
breadcrumb: I18nBreadcrumbResolver,
|
||||||
},
|
},
|
||||||
|
providers,
|
||||||
data: { title: 'admin.access-control.groups.title', breadcrumbKey: 'admin.access-control.groups' },
|
data: { title: 'admin.access-control.groups.title', breadcrumbKey: 'admin.access-control.groups' },
|
||||||
canActivate: [GroupAdministratorGuard],
|
canActivate: [GroupAdministratorGuard],
|
||||||
},
|
},
|
||||||
@@ -59,7 +82,11 @@ export const ROUTES: Route[] = [
|
|||||||
resolve: {
|
resolve: {
|
||||||
breadcrumb: I18nBreadcrumbResolver,
|
breadcrumb: I18nBreadcrumbResolver,
|
||||||
},
|
},
|
||||||
data: { title: 'admin.access-control.groups.title.addGroup', breadcrumbKey: 'admin.access-control.groups.addGroup' },
|
providers,
|
||||||
|
data: {
|
||||||
|
title: 'admin.access-control.groups.title.addGroup',
|
||||||
|
breadcrumbKey: 'admin.access-control.groups.addGroup',
|
||||||
|
},
|
||||||
canActivate: [GroupAdministratorGuard],
|
canActivate: [GroupAdministratorGuard],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -68,6 +95,7 @@ export const ROUTES: Route[] = [
|
|||||||
resolve: {
|
resolve: {
|
||||||
breadcrumb: I18nBreadcrumbResolver,
|
breadcrumb: I18nBreadcrumbResolver,
|
||||||
},
|
},
|
||||||
|
providers,
|
||||||
data: {
|
data: {
|
||||||
title: 'admin.access-control.groups.title.singleGroup',
|
title: 'admin.access-control.groups.title.singleGroup',
|
||||||
breadcrumbKey: 'admin.access-control.groups.singleGroup',
|
breadcrumbKey: 'admin.access-control.groups.singleGroup',
|
||||||
|
@@ -1,63 +0,0 @@
|
|||||||
import { CommonModule } from '@angular/common';
|
|
||||||
import { NgModule } from '@angular/core';
|
|
||||||
import { AbstractControl } from '@angular/forms';
|
|
||||||
import { RouterModule } from '@angular/router';
|
|
||||||
import { NgbAccordionModule } from '@ng-bootstrap/ng-bootstrap';
|
|
||||||
import {
|
|
||||||
DYNAMIC_ERROR_MESSAGES_MATCHER,
|
|
||||||
DynamicErrorMessagesMatcher,
|
|
||||||
} from '@ng-dynamic-forms/core';
|
|
||||||
|
|
||||||
import { FormModule } from '../shared/form/form.module';
|
|
||||||
import { SearchModule } from '../shared/search/search.module';
|
|
||||||
import { BulkAccessBrowseComponent } from './bulk-access/browse/bulk-access-browse.component';
|
|
||||||
import { BulkAccessComponent } from './bulk-access/bulk-access.component';
|
|
||||||
import { BulkAccessSettingsComponent } from './bulk-access/settings/bulk-access-settings.component';
|
|
||||||
import { EPeopleRegistryComponent } from './epeople-registry/epeople-registry.component';
|
|
||||||
import { EPersonFormComponent } from './epeople-registry/eperson-form/eperson-form.component';
|
|
||||||
import { GroupFormComponent } from './group-registry/group-form/group-form.component';
|
|
||||||
import { MembersListComponent } from './group-registry/group-form/members-list/members-list.component';
|
|
||||||
import { SubgroupsListComponent } from './group-registry/group-form/subgroup-list/subgroups-list.component';
|
|
||||||
import { GroupsRegistryComponent } from './group-registry/groups-registry.component';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Condition for displaying error messages on email form field
|
|
||||||
*/
|
|
||||||
export const ValidateEmailErrorStateMatcher: DynamicErrorMessagesMatcher =
|
|
||||||
(control: AbstractControl, model: any, hasFocus: boolean) => {
|
|
||||||
return (control.touched && !hasFocus) || (control.errors?.emailTaken && hasFocus);
|
|
||||||
};
|
|
||||||
|
|
||||||
@NgModule({
|
|
||||||
imports: [
|
|
||||||
CommonModule,
|
|
||||||
RouterModule,
|
|
||||||
FormModule,
|
|
||||||
NgbAccordionModule,
|
|
||||||
SearchModule,
|
|
||||||
EPeopleRegistryComponent,
|
|
||||||
EPersonFormComponent,
|
|
||||||
GroupsRegistryComponent,
|
|
||||||
GroupFormComponent,
|
|
||||||
SubgroupsListComponent,
|
|
||||||
MembersListComponent,
|
|
||||||
BulkAccessComponent,
|
|
||||||
BulkAccessBrowseComponent,
|
|
||||||
BulkAccessSettingsComponent,
|
|
||||||
],
|
|
||||||
exports: [
|
|
||||||
MembersListComponent,
|
|
||||||
],
|
|
||||||
providers: [
|
|
||||||
{
|
|
||||||
provide: DYNAMIC_ERROR_MESSAGES_MATCHER,
|
|
||||||
useValue: ValidateEmailErrorStateMatcher,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
})
|
|
||||||
/**
|
|
||||||
* This module handles all components related to the access control pages
|
|
||||||
*/
|
|
||||||
export class AccessControlModule {
|
|
||||||
|
|
||||||
}
|
|
Reference in New Issue
Block a user