mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 10:04:11 +00:00
77349: Add themeable components - pt. 1
This commit is contained in:
@@ -0,0 +1,28 @@
|
|||||||
|
import { Component, OnInit } from '@angular/core';
|
||||||
|
|
||||||
|
import { ThemedComponent } from '../../shared/theme-support/themed.component';
|
||||||
|
import { BrowseBySwitcherComponent } from './browse-by-switcher.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-browse-by-switcher',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: '../../shared/theme-support/themed.component.html'
|
||||||
|
})
|
||||||
|
/**
|
||||||
|
* Component for determining what Browse-By component to use depending on the metadata (browse ID) provided
|
||||||
|
*/
|
||||||
|
export class ThemedBrowseBySwitcherComponent extends ThemedComponent<BrowseBySwitcherComponent> {
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'BrowseBySwitcherComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../../themes/${themeName}/app/+browse-by/+browse-by-switcher/browse-by-switcher.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import(`./browse-by-switcher.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@@ -1,9 +1,9 @@
|
|||||||
import { RouterModule } from '@angular/router';
|
import { RouterModule } from '@angular/router';
|
||||||
import { NgModule } from '@angular/core';
|
import { NgModule } from '@angular/core';
|
||||||
import { BrowseByGuard } from './browse-by-guard';
|
import { BrowseByGuard } from './browse-by-guard';
|
||||||
import { BrowseBySwitcherComponent } from './+browse-by-switcher/browse-by-switcher.component';
|
|
||||||
import { BrowseByDSOBreadcrumbResolver } from './browse-by-dso-breadcrumb.resolver';
|
import { BrowseByDSOBreadcrumbResolver } from './browse-by-dso-breadcrumb.resolver';
|
||||||
import { BrowseByI18nBreadcrumbResolver } from './browse-by-i18n-breadcrumb.resolver';
|
import { BrowseByI18nBreadcrumbResolver } from './browse-by-i18n-breadcrumb.resolver';
|
||||||
|
import { ThemedBrowseBySwitcherComponent } from './+browse-by-switcher/themed-browse-by-switcher.component';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -14,7 +14,7 @@ import { BrowseByI18nBreadcrumbResolver } from './browse-by-i18n-breadcrumb.reso
|
|||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
path: ':id',
|
path: ':id',
|
||||||
component: BrowseBySwitcherComponent,
|
component: ThemedBrowseBySwitcherComponent,
|
||||||
canActivate: [BrowseByGuard],
|
canActivate: [BrowseByGuard],
|
||||||
resolve: { breadcrumb: BrowseByI18nBreadcrumbResolver },
|
resolve: { breadcrumb: BrowseByI18nBreadcrumbResolver },
|
||||||
data: { title: 'browse.title', breadcrumbKey: 'browse.metadata' }
|
data: { title: 'browse.title', breadcrumbKey: 'browse.metadata' }
|
||||||
|
@@ -5,6 +5,7 @@ import { SharedModule } from '../shared/shared.module';
|
|||||||
import { BrowseByMetadataPageComponent } from './+browse-by-metadata-page/browse-by-metadata-page.component';
|
import { BrowseByMetadataPageComponent } from './+browse-by-metadata-page/browse-by-metadata-page.component';
|
||||||
import { BrowseByDatePageComponent } from './+browse-by-date-page/browse-by-date-page.component';
|
import { BrowseByDatePageComponent } from './+browse-by-date-page/browse-by-date-page.component';
|
||||||
import { BrowseBySwitcherComponent } from './+browse-by-switcher/browse-by-switcher.component';
|
import { BrowseBySwitcherComponent } from './+browse-by-switcher/browse-by-switcher.component';
|
||||||
|
import { ThemedBrowseBySwitcherComponent } from './+browse-by-switcher/themed-browse-by-switcher.component';
|
||||||
|
|
||||||
const ENTRY_COMPONENTS = [
|
const ENTRY_COMPONENTS = [
|
||||||
// put only entry components that use custom decorator
|
// put only entry components that use custom decorator
|
||||||
@@ -20,6 +21,7 @@ const ENTRY_COMPONENTS = [
|
|||||||
],
|
],
|
||||||
declarations: [
|
declarations: [
|
||||||
BrowseBySwitcherComponent,
|
BrowseBySwitcherComponent,
|
||||||
|
ThemedBrowseBySwitcherComponent,
|
||||||
...ENTRY_COMPONENTS
|
...ENTRY_COMPONENTS
|
||||||
],
|
],
|
||||||
exports: [
|
exports: [
|
||||||
|
@@ -1,7 +1,6 @@
|
|||||||
import { NgModule } from '@angular/core';
|
import { NgModule } from '@angular/core';
|
||||||
import { RouterModule } from '@angular/router';
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
import { CollectionPageComponent } from './collection-page.component';
|
|
||||||
import { CollectionPageResolver } from './collection-page.resolver';
|
import { CollectionPageResolver } from './collection-page.resolver';
|
||||||
import { CreateCollectionPageComponent } from './create-collection-page/create-collection-page.component';
|
import { CreateCollectionPageComponent } from './create-collection-page/create-collection-page.component';
|
||||||
import { AuthenticatedGuard } from '../core/auth/authenticated.guard';
|
import { AuthenticatedGuard } from '../core/auth/authenticated.guard';
|
||||||
@@ -21,6 +20,7 @@ import {
|
|||||||
import { CollectionPageAdministratorGuard } from './collection-page-administrator.guard';
|
import { CollectionPageAdministratorGuard } from './collection-page-administrator.guard';
|
||||||
import { MenuItemType } from '../shared/menu/initial-menus-state';
|
import { MenuItemType } from '../shared/menu/initial-menus-state';
|
||||||
import { LinkMenuItemModel } from '../shared/menu/menu-item/models/link.model';
|
import { LinkMenuItemModel } from '../shared/menu/menu-item/models/link.model';
|
||||||
|
import { ThemedCollectionPageComponent } from './themed-collection-page.component';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -62,7 +62,7 @@ import { LinkMenuItemModel } from '../shared/menu/menu-item/models/link.model';
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '',
|
path: '',
|
||||||
component: CollectionPageComponent,
|
component: ThemedCollectionPageComponent,
|
||||||
pathMatch: 'full',
|
pathMatch: 'full',
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
@@ -13,6 +13,7 @@ import { CollectionItemMapperComponent } from './collection-item-mapper/collecti
|
|||||||
import { SearchService } from '../core/shared/search/search.service';
|
import { SearchService } from '../core/shared/search/search.service';
|
||||||
import { StatisticsModule } from '../statistics/statistics.module';
|
import { StatisticsModule } from '../statistics/statistics.module';
|
||||||
import { CollectionFormModule } from './collection-form/collection-form.module';
|
import { CollectionFormModule } from './collection-form/collection-form.module';
|
||||||
|
import { ThemedCollectionPageComponent } from './themed-collection-page.component';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -25,6 +26,7 @@ import { CollectionFormModule } from './collection-form/collection-form.module';
|
|||||||
],
|
],
|
||||||
declarations: [
|
declarations: [
|
||||||
CollectionPageComponent,
|
CollectionPageComponent,
|
||||||
|
ThemedCollectionPageComponent,
|
||||||
CreateCollectionPageComponent,
|
CreateCollectionPageComponent,
|
||||||
DeleteCollectionPageComponent,
|
DeleteCollectionPageComponent,
|
||||||
EditItemTemplatePageComponent,
|
EditItemTemplatePageComponent,
|
||||||
|
27
src/app/+collection-page/themed-collection-page.component.ts
Normal file
27
src/app/+collection-page/themed-collection-page.component.ts
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ThemedComponent } from '../shared/theme-support/themed.component';
|
||||||
|
import { CollectionPageComponent } from './collection-page.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-community-page',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: '../shared/theme-support/themed.component.html',
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class ThemedCollectionPageComponent extends ThemedComponent<CollectionPageComponent> {
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'CollectionPageComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../themes/${themeName}/app/+collection-page/collection-page.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import(`./collection-page.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@@ -1,7 +1,6 @@
|
|||||||
import { NgModule } from '@angular/core';
|
import { NgModule } from '@angular/core';
|
||||||
import { RouterModule } from '@angular/router';
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
import { CommunityPageComponent } from './community-page.component';
|
|
||||||
import { CommunityPageResolver } from './community-page.resolver';
|
import { CommunityPageResolver } from './community-page.resolver';
|
||||||
import { CreateCommunityPageComponent } from './create-community-page/create-community-page.component';
|
import { CreateCommunityPageComponent } from './create-community-page/create-community-page.component';
|
||||||
import { AuthenticatedGuard } from '../core/auth/authenticated.guard';
|
import { AuthenticatedGuard } from '../core/auth/authenticated.guard';
|
||||||
@@ -14,6 +13,7 @@ import { COMMUNITY_EDIT_PATH, COMMUNITY_CREATE_PATH } from './community-page-rou
|
|||||||
import { CommunityPageAdministratorGuard } from './community-page-administrator.guard';
|
import { CommunityPageAdministratorGuard } from './community-page-administrator.guard';
|
||||||
import { MenuItemType } from '../shared/menu/initial-menus-state';
|
import { MenuItemType } from '../shared/menu/initial-menus-state';
|
||||||
import { LinkMenuItemModel } from '../shared/menu/menu-item/models/link.model';
|
import { LinkMenuItemModel } from '../shared/menu/menu-item/models/link.model';
|
||||||
|
import { ThemedCommunityPageComponent } from './themed-community-page.component';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -45,7 +45,7 @@ import { LinkMenuItemModel } from '../shared/menu/menu-item/models/link.model';
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '',
|
path: '',
|
||||||
component: CommunityPageComponent,
|
component: ThemedCommunityPageComponent,
|
||||||
pathMatch: 'full',
|
pathMatch: 'full',
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
@@ -11,6 +11,14 @@ import { CreateCommunityPageComponent } from './create-community-page/create-com
|
|||||||
import { DeleteCommunityPageComponent } from './delete-community-page/delete-community-page.component';
|
import { DeleteCommunityPageComponent } from './delete-community-page/delete-community-page.component';
|
||||||
import { StatisticsModule } from '../statistics/statistics.module';
|
import { StatisticsModule } from '../statistics/statistics.module';
|
||||||
import { CommunityFormModule } from './community-form/community-form.module';
|
import { CommunityFormModule } from './community-form/community-form.module';
|
||||||
|
import { ThemedCommunityPageComponent } from './themed-community-page.component';
|
||||||
|
|
||||||
|
const DECLARATIONS = [CommunityPageComponent,
|
||||||
|
ThemedCommunityPageComponent,
|
||||||
|
CommunityPageSubCollectionListComponent,
|
||||||
|
CommunityPageSubCommunityListComponent,
|
||||||
|
CreateCommunityPageComponent,
|
||||||
|
DeleteCommunityPageComponent];
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -21,11 +29,10 @@ import { CommunityFormModule } from './community-form/community-form.module';
|
|||||||
CommunityFormModule
|
CommunityFormModule
|
||||||
],
|
],
|
||||||
declarations: [
|
declarations: [
|
||||||
CommunityPageComponent,
|
...DECLARATIONS
|
||||||
CommunityPageSubCollectionListComponent,
|
],
|
||||||
CommunityPageSubCommunityListComponent,
|
exports: [
|
||||||
CreateCommunityPageComponent,
|
...DECLARATIONS
|
||||||
DeleteCommunityPageComponent
|
|
||||||
]
|
]
|
||||||
})
|
})
|
||||||
|
|
||||||
|
27
src/app/+community-page/themed-community-page.component.ts
Normal file
27
src/app/+community-page/themed-community-page.component.ts
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ThemedComponent } from '../shared/theme-support/themed.component';
|
||||||
|
import { CommunityPageComponent } from './community-page.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-community-page',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: '../shared/theme-support/themed.component.html',
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class ThemedCommunityPageComponent extends ThemedComponent<CommunityPageComponent> {
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'CommunityPageComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../themes/${themeName}/app/+community-page/community-page.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import(`./community-page.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@@ -1,8 +1,8 @@
|
|||||||
import { LookupGuard } from './lookup-guard';
|
import { LookupGuard } from './lookup-guard';
|
||||||
import { NgModule } from '@angular/core';
|
import { NgModule } from '@angular/core';
|
||||||
import { RouterModule, UrlSegment } from '@angular/router';
|
import { RouterModule, UrlSegment } from '@angular/router';
|
||||||
import { ObjectNotFoundComponent } from './objectnotfound/objectnotfound.component';
|
|
||||||
import { isNotEmpty } from '../shared/empty.util';
|
import { isNotEmpty } from '../shared/empty.util';
|
||||||
|
import { ThemedObjectNotFoundComponent } from './objectnotfound/themed-objectnotfound.component';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -10,7 +10,7 @@ import { isNotEmpty } from '../shared/empty.util';
|
|||||||
{
|
{
|
||||||
matcher: urlMatcher,
|
matcher: urlMatcher,
|
||||||
canActivate: [LookupGuard],
|
canActivate: [LookupGuard],
|
||||||
component: ObjectNotFoundComponent }
|
component: ThemedObjectNotFoundComponent }
|
||||||
])
|
])
|
||||||
],
|
],
|
||||||
providers: [
|
providers: [
|
||||||
|
@@ -4,6 +4,7 @@ import { SharedModule } from '../shared/shared.module';
|
|||||||
import { LookupRoutingModule } from './lookup-by-id-routing.module';
|
import { LookupRoutingModule } from './lookup-by-id-routing.module';
|
||||||
import { ObjectNotFoundComponent } from './objectnotfound/objectnotfound.component';
|
import { ObjectNotFoundComponent } from './objectnotfound/objectnotfound.component';
|
||||||
import { DsoRedirectDataService } from '../core/data/dso-redirect-data.service';
|
import { DsoRedirectDataService } from '../core/data/dso-redirect-data.service';
|
||||||
|
import { ThemedObjectNotFoundComponent } from './objectnotfound/themed-objectnotfound.component';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -12,7 +13,8 @@ import { DsoRedirectDataService } from '../core/data/dso-redirect-data.service';
|
|||||||
SharedModule,
|
SharedModule,
|
||||||
],
|
],
|
||||||
declarations: [
|
declarations: [
|
||||||
ObjectNotFoundComponent
|
ObjectNotFoundComponent,
|
||||||
|
ThemedObjectNotFoundComponent
|
||||||
],
|
],
|
||||||
providers: [
|
providers: [
|
||||||
DsoRedirectDataService
|
DsoRedirectDataService
|
||||||
|
@@ -0,0 +1,27 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ThemedComponent } from '../../shared/theme-support/themed.component';
|
||||||
|
import { ObjectNotFoundComponent } from './objectnotfound.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-objnotfound',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: '../../shared/theme-support/themed.component.html',
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class ThemedObjectNotFoundComponent extends ThemedComponent<ObjectNotFoundComponent> {
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'ObjectNotFoundComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../../themes/${themeName}/app/+lookup-by-id/objectnotfound/objectnotfound.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import(`./objectnotfound.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@@ -2,11 +2,11 @@ import { NgModule } from '@angular/core';
|
|||||||
import { RouterModule } from '@angular/router';
|
import { RouterModule } from '@angular/router';
|
||||||
|
|
||||||
import { ConfigurationSearchPageGuard } from './configuration-search-page.guard';
|
import { ConfigurationSearchPageGuard } from './configuration-search-page.guard';
|
||||||
import { ConfigurationSearchPageComponent } from './configuration-search-page.component';
|
|
||||||
import { SearchPageComponent } from './search-page.component';
|
|
||||||
import { I18nBreadcrumbResolver } from '../core/breadcrumbs/i18n-breadcrumb.resolver';
|
import { I18nBreadcrumbResolver } from '../core/breadcrumbs/i18n-breadcrumb.resolver';
|
||||||
import { I18nBreadcrumbsService } from '../core/breadcrumbs/i18n-breadcrumbs.service';
|
import { I18nBreadcrumbsService } from '../core/breadcrumbs/i18n-breadcrumbs.service';
|
||||||
import { SearchPageModule } from './search-page.module';
|
import { SearchPageModule } from './search-page.module';
|
||||||
|
import { ThemedSearchPageComponent } from './themed-search-page.component';
|
||||||
|
import { ThemedConfigurationSearchPageComponent } from './themed-configuration-search-page.component';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -15,8 +15,8 @@ import { SearchPageModule } from './search-page.module';
|
|||||||
path: '',
|
path: '',
|
||||||
resolve: { breadcrumb: I18nBreadcrumbResolver }, data: { title: 'search.title', breadcrumbKey: 'search' },
|
resolve: { breadcrumb: I18nBreadcrumbResolver }, data: { title: 'search.title', breadcrumbKey: 'search' },
|
||||||
children: [
|
children: [
|
||||||
{ path: '', component: SearchPageComponent },
|
{ path: '', component: ThemedSearchPageComponent },
|
||||||
{ path: ':configuration', component: ConfigurationSearchPageComponent, canActivate: [ConfigurationSearchPageGuard] }
|
{ path: ':configuration', component: ThemedConfigurationSearchPageComponent, canActivate: [ConfigurationSearchPageGuard] }
|
||||||
]
|
]
|
||||||
}]
|
}]
|
||||||
)
|
)
|
||||||
|
@@ -13,11 +13,13 @@ import { SearchFilterService } from '../core/shared/search/search-filter.service
|
|||||||
import { SearchConfigurationService } from '../core/shared/search/search-configuration.service';
|
import { SearchConfigurationService } from '../core/shared/search/search-configuration.service';
|
||||||
import { JournalEntitiesModule } from '../entity-groups/journal-entities/journal-entities.module';
|
import { JournalEntitiesModule } from '../entity-groups/journal-entities/journal-entities.module';
|
||||||
import { ResearchEntitiesModule } from '../entity-groups/research-entities/research-entities.module';
|
import { ResearchEntitiesModule } from '../entity-groups/research-entities/research-entities.module';
|
||||||
|
import { ThemedSearchPageComponent } from './themed-search-page.component';
|
||||||
|
|
||||||
const components = [
|
const components = [
|
||||||
SearchPageComponent,
|
SearchPageComponent,
|
||||||
SearchComponent,
|
SearchComponent,
|
||||||
SearchTrackerComponent
|
SearchTrackerComponent,
|
||||||
|
ThemedSearchPageComponent
|
||||||
];
|
];
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
|
@@ -0,0 +1,73 @@
|
|||||||
|
import { Component, Input } from '@angular/core';
|
||||||
|
import { ThemedComponent } from '../shared/theme-support/themed.component';
|
||||||
|
import { ConfigurationSearchPageComponent } from './configuration-search-page.component';
|
||||||
|
import { Observable } from 'rxjs';
|
||||||
|
import { Context } from '../core/shared/context.model';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-configuration-search-page',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: '../shared/theme-support/themed.component.html',
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class ThemedConfigurationSearchPageComponent extends ThemedComponent<ConfigurationSearchPageComponent> {
|
||||||
|
/**
|
||||||
|
* The configuration to use for the search options
|
||||||
|
* If empty, the configuration will be determined by the route parameter called 'configuration'
|
||||||
|
*/
|
||||||
|
@Input() configuration: string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The actual query for the fixed filter.
|
||||||
|
* If empty, the query will be determined by the route parameter called 'filter'
|
||||||
|
*/
|
||||||
|
@Input() fixedFilterQuery: string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* True when the search component should show results on the current page
|
||||||
|
*/
|
||||||
|
@Input() inPlaceSearch = true;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Whether or not the search bar should be visible
|
||||||
|
*/
|
||||||
|
@Input()
|
||||||
|
searchEnabled = true;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The width of the sidebar (bootstrap columns)
|
||||||
|
*/
|
||||||
|
@Input()
|
||||||
|
sideBarWidth = 3;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The currently applied configuration (determines title of search)
|
||||||
|
*/
|
||||||
|
@Input()
|
||||||
|
configuration$: Observable<string>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The current context
|
||||||
|
*/
|
||||||
|
@Input()
|
||||||
|
context: Context;
|
||||||
|
|
||||||
|
protected inAndOutputNames: (keyof ConfigurationSearchPageComponent & keyof this)[] =
|
||||||
|
['configuration', 'fixedFilterQuery', 'inPlaceSearch', 'searchEnabled', 'sideBarWidth', 'configuration$', 'context'];
|
||||||
|
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'ConfigurationSearchPageComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../themes/${themeName}/app/+search-page/configuration-search-page.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import(`./configuration-search-page.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
27
src/app/+search-page/themed-search-page.component.ts
Normal file
27
src/app/+search-page/themed-search-page.component.ts
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ThemedComponent } from '../shared/theme-support/themed.component';
|
||||||
|
import { SearchPageComponent } from './search-page.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-search-page',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: '../shared/theme-support/themed.component.html',
|
||||||
|
})
|
||||||
|
/**
|
||||||
|
* This component represents the whole search page
|
||||||
|
* It renders search results depending on the current search options
|
||||||
|
*/
|
||||||
|
export class ThemedSearchPageComponent extends ThemedComponent<SearchPageComponent> {
|
||||||
|
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'SearchPageComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../themes/${themeName}/app/+search-page/search-page.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import(`./search-page.component`);
|
||||||
|
}
|
||||||
|
}
|
@@ -2,7 +2,6 @@ import { NgModule } from '@angular/core';
|
|||||||
import { RouterModule } from '@angular/router';
|
import { RouterModule } from '@angular/router';
|
||||||
import { AuthBlockingGuard } from './core/auth/auth-blocking.guard';
|
import { AuthBlockingGuard } from './core/auth/auth-blocking.guard';
|
||||||
|
|
||||||
import { PageNotFoundComponent } from './pagenotfound/pagenotfound.component';
|
|
||||||
import { AuthenticatedGuard } from './core/auth/authenticated.guard';
|
import { AuthenticatedGuard } from './core/auth/authenticated.guard';
|
||||||
import { SiteAdministratorGuard } from './core/data/feature-authorization/feature-authorization-guard/site-administrator.guard';
|
import { SiteAdministratorGuard } from './core/data/feature-authorization/feature-authorization-guard/site-administrator.guard';
|
||||||
import {
|
import {
|
||||||
@@ -23,6 +22,8 @@ import { ReloadGuard } from './core/reload/reload.guard';
|
|||||||
import { EndUserAgreementCurrentUserGuard } from './core/end-user-agreement/end-user-agreement-current-user.guard';
|
import { EndUserAgreementCurrentUserGuard } from './core/end-user-agreement/end-user-agreement-current-user.guard';
|
||||||
import { SiteRegisterGuard } from './core/data/feature-authorization/feature-authorization-guard/site-register.guard';
|
import { SiteRegisterGuard } from './core/data/feature-authorization/feature-authorization-guard/site-register.guard';
|
||||||
import { ForbiddenComponent } from './forbidden/forbidden.component';
|
import { ForbiddenComponent } from './forbidden/forbidden.component';
|
||||||
|
import { ThemedPageNotFoundComponent } from './pagenotfound/themed-pagenotfound.component';
|
||||||
|
import { ThemedForbiddenComponent } from './forbidden/themed-forbidden.component';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -30,7 +31,7 @@ import { ForbiddenComponent } from './forbidden/forbidden.component';
|
|||||||
path: '', canActivate: [AuthBlockingGuard],
|
path: '', canActivate: [AuthBlockingGuard],
|
||||||
children: [
|
children: [
|
||||||
{ path: '', redirectTo: '/home', pathMatch: 'full' },
|
{ path: '', redirectTo: '/home', pathMatch: 'full' },
|
||||||
{ path: 'reload/:rnd', component: PageNotFoundComponent, pathMatch: 'full', canActivate: [ReloadGuard] },
|
{ path: 'reload/:rnd', component: ThemedPageNotFoundComponent, pathMatch: 'full', canActivate: [ReloadGuard] },
|
||||||
{
|
{
|
||||||
path: 'home',
|
path: 'home',
|
||||||
loadChildren: () => import('./+home-page/home-page.module')
|
loadChildren: () => import('./+home-page/home-page.module')
|
||||||
@@ -173,14 +174,14 @@ import { ForbiddenComponent } from './forbidden/forbidden.component';
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: FORBIDDEN_PATH,
|
path: FORBIDDEN_PATH,
|
||||||
component: ForbiddenComponent
|
component: ThemedForbiddenComponent
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'statistics',
|
path: 'statistics',
|
||||||
loadChildren: () => import('./statistics-page/statistics-page-routing.module')
|
loadChildren: () => import('./statistics-page/statistics-page-routing.module')
|
||||||
.then((m) => m.StatisticsPageRoutingModule),
|
.then((m) => m.StatisticsPageRoutingModule),
|
||||||
},
|
},
|
||||||
{ path: '**', pathMatch: 'full', component: PageNotFoundComponent },
|
{ path: '**', pathMatch: 'full', component: ThemedPageNotFoundComponent },
|
||||||
]}
|
]}
|
||||||
],{
|
],{
|
||||||
onSameUrlNavigation: 'reload',
|
onSameUrlNavigation: 'reload',
|
||||||
|
@@ -46,6 +46,8 @@ import { XsrfInterceptor } from './core/xsrf/xsrf.interceptor';
|
|||||||
import { RootComponent } from './root/root.component';
|
import { RootComponent } from './root/root.component';
|
||||||
import { ThemedRootComponent } from './root/themed-root.component';
|
import { ThemedRootComponent } from './root/themed-root.component';
|
||||||
import { ThemedEntryComponentModule } from '../themes/themed-entry-component.module';
|
import { ThemedEntryComponentModule } from '../themes/themed-entry-component.module';
|
||||||
|
import { ThemedPageNotFoundComponent } from './pagenotfound/themed-pagenotfound.component';
|
||||||
|
import { ThemedForbiddenComponent } from './forbidden/themed-forbidden.component';
|
||||||
|
|
||||||
export function getBase() {
|
export function getBase() {
|
||||||
return environment.ui.nameSpace;
|
return environment.ui.nameSpace;
|
||||||
@@ -133,11 +135,13 @@ const DECLARATIONS = [
|
|||||||
ExpandableAdminSidebarSectionComponent,
|
ExpandableAdminSidebarSectionComponent,
|
||||||
FooterComponent,
|
FooterComponent,
|
||||||
PageNotFoundComponent,
|
PageNotFoundComponent,
|
||||||
|
ThemedPageNotFoundComponent,
|
||||||
NotificationComponent,
|
NotificationComponent,
|
||||||
NotificationsBoardComponent,
|
NotificationsBoardComponent,
|
||||||
SearchNavbarComponent,
|
SearchNavbarComponent,
|
||||||
BreadcrumbsComponent,
|
BreadcrumbsComponent,
|
||||||
ForbiddenComponent,
|
ForbiddenComponent,
|
||||||
|
ThemedForbiddenComponent,
|
||||||
];
|
];
|
||||||
|
|
||||||
const EXPORTS = [
|
const EXPORTS = [
|
||||||
|
@@ -4,7 +4,14 @@ import { SharedModule } from '../shared/shared.module';
|
|||||||
import { CommunityListPageComponent } from './community-list-page.component';
|
import { CommunityListPageComponent } from './community-list-page.component';
|
||||||
import { CommunityListPageRoutingModule } from './community-list-page.routing.module';
|
import { CommunityListPageRoutingModule } from './community-list-page.routing.module';
|
||||||
import { CommunityListComponent } from './community-list/community-list.component';
|
import { CommunityListComponent } from './community-list/community-list.component';
|
||||||
|
import { ThemedCommunityListPageComponent } from './themed-community-list-page.component';
|
||||||
|
|
||||||
|
|
||||||
|
const DECLARATIONS = [
|
||||||
|
CommunityListPageComponent,
|
||||||
|
CommunityListComponent,
|
||||||
|
ThemedCommunityListPageComponent
|
||||||
|
];
|
||||||
/**
|
/**
|
||||||
* The page which houses a title and the community list, as described in community-list.component
|
* The page which houses a title and the community list, as described in community-list.component
|
||||||
*/
|
*/
|
||||||
@@ -15,9 +22,11 @@ import { CommunityListComponent } from './community-list/community-list.componen
|
|||||||
CommunityListPageRoutingModule
|
CommunityListPageRoutingModule
|
||||||
],
|
],
|
||||||
declarations: [
|
declarations: [
|
||||||
CommunityListPageComponent,
|
...DECLARATIONS
|
||||||
CommunityListComponent
|
],
|
||||||
]
|
exports: [
|
||||||
|
...DECLARATIONS,
|
||||||
|
],
|
||||||
})
|
})
|
||||||
export class CommunityListPageModule {
|
export class CommunityListPageModule {
|
||||||
|
|
||||||
|
@@ -2,8 +2,8 @@ import { NgModule } from '@angular/core';
|
|||||||
import { RouterModule } from '@angular/router';
|
import { RouterModule } from '@angular/router';
|
||||||
import { CdkTreeModule } from '@angular/cdk/tree';
|
import { CdkTreeModule } from '@angular/cdk/tree';
|
||||||
|
|
||||||
import { CommunityListPageComponent } from './community-list-page.component';
|
|
||||||
import { CommunityListService } from './community-list-service';
|
import { CommunityListService } from './community-list-service';
|
||||||
|
import { ThemedCommunityListPageComponent } from './themed-community-list-page.component';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* RouterModule to help navigate to the page with the community list tree
|
* RouterModule to help navigate to the page with the community list tree
|
||||||
@@ -13,7 +13,7 @@ import { CommunityListService } from './community-list-service';
|
|||||||
RouterModule.forChild([
|
RouterModule.forChild([
|
||||||
{
|
{
|
||||||
path: '',
|
path: '',
|
||||||
component: CommunityListPageComponent,
|
component: ThemedCommunityListPageComponent,
|
||||||
pathMatch: 'full',
|
pathMatch: 'full',
|
||||||
data: { title: 'communityList.tabTitle' }
|
data: { title: 'communityList.tabTitle' }
|
||||||
}
|
}
|
||||||
|
@@ -0,0 +1,27 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ThemedComponent } from '../shared/theme-support/themed.component';
|
||||||
|
import { CommunityListPageComponent } from './community-list-page.component';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Page with title and the community list tree, as described in community-list.component;
|
||||||
|
* navigated to with community-list.page.routing.module
|
||||||
|
*/
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-community-list-page',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: '../shared/theme-support/themed.component.html',
|
||||||
|
})
|
||||||
|
export class ThemedCommunityListPageComponent extends ThemedComponent<CommunityListPageComponent> {
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'CommunityListPageComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../themes/${themeName}/app/community-list-page/community-list-page.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import(`./community-list-page.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
27
src/app/forbidden/themed-forbidden.component.ts
Normal file
27
src/app/forbidden/themed-forbidden.component.ts
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ThemedComponent } from '../shared/theme-support/themed.component';
|
||||||
|
import { ForbiddenComponent } from './forbidden.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-forbidden',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: '../shared/theme-support/themed.component.html',
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class ThemedForbiddenComponent extends ThemedComponent<ForbiddenComponent> {
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'ForbiddenComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../themes/${themeName}/app/forbidden/forbidden.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import(`./forbidden.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@@ -0,0 +1,28 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ThemedComponent } from '../../shared/theme-support/themed.component';
|
||||||
|
import { EndUserAgreementComponent } from './end-user-agreement.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-end-user-agreement',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: '../../shared/theme-support/themed.component.html',
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class ThemedEndUserAgreementComponent extends ThemedComponent<EndUserAgreementComponent> {
|
||||||
|
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'EndUserAgreementComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../../themes/${themeName}/app/info/end-user-agreement/end-user-agreement.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import(`./end-user-agreement.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@@ -1,16 +1,16 @@
|
|||||||
import { NgModule } from '@angular/core';
|
import { NgModule } from '@angular/core';
|
||||||
import { RouterModule } from '@angular/router';
|
import { RouterModule } from '@angular/router';
|
||||||
import { EndUserAgreementComponent } from './end-user-agreement/end-user-agreement.component';
|
|
||||||
import { I18nBreadcrumbResolver } from '../core/breadcrumbs/i18n-breadcrumb.resolver';
|
import { I18nBreadcrumbResolver } from '../core/breadcrumbs/i18n-breadcrumb.resolver';
|
||||||
import { PrivacyComponent } from './privacy/privacy.component';
|
|
||||||
import { PRIVACY_PATH, END_USER_AGREEMENT_PATH } from './info-routing-paths';
|
import { PRIVACY_PATH, END_USER_AGREEMENT_PATH } from './info-routing-paths';
|
||||||
|
import { ThemedEndUserAgreementComponent } from './end-user-agreement/themed-end-user-agreement.component';
|
||||||
|
import { ThemedPrivacyComponent } from './privacy/themed-privacy.component';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
RouterModule.forChild([
|
RouterModule.forChild([
|
||||||
{
|
{
|
||||||
path: END_USER_AGREEMENT_PATH,
|
path: END_USER_AGREEMENT_PATH,
|
||||||
component: EndUserAgreementComponent,
|
component: ThemedEndUserAgreementComponent,
|
||||||
resolve: { breadcrumb: I18nBreadcrumbResolver },
|
resolve: { breadcrumb: I18nBreadcrumbResolver },
|
||||||
data: { title: 'info.end-user-agreement.title', breadcrumbKey: 'info.end-user-agreement' }
|
data: { title: 'info.end-user-agreement.title', breadcrumbKey: 'info.end-user-agreement' }
|
||||||
}
|
}
|
||||||
@@ -18,7 +18,7 @@ import { PRIVACY_PATH, END_USER_AGREEMENT_PATH } from './info-routing-paths';
|
|||||||
RouterModule.forChild([
|
RouterModule.forChild([
|
||||||
{
|
{
|
||||||
path: PRIVACY_PATH,
|
path: PRIVACY_PATH,
|
||||||
component: PrivacyComponent,
|
component: ThemedPrivacyComponent,
|
||||||
resolve: { breadcrumb: I18nBreadcrumbResolver },
|
resolve: { breadcrumb: I18nBreadcrumbResolver },
|
||||||
data: { title: 'info.privacy.title', breadcrumbKey: 'info.privacy' }
|
data: { title: 'info.privacy.title', breadcrumbKey: 'info.privacy' }
|
||||||
}
|
}
|
||||||
|
@@ -6,6 +6,17 @@ import { InfoRoutingModule } from './info-routing.module';
|
|||||||
import { EndUserAgreementContentComponent } from './end-user-agreement/end-user-agreement-content/end-user-agreement-content.component';
|
import { EndUserAgreementContentComponent } from './end-user-agreement/end-user-agreement-content/end-user-agreement-content.component';
|
||||||
import { PrivacyComponent } from './privacy/privacy.component';
|
import { PrivacyComponent } from './privacy/privacy.component';
|
||||||
import { PrivacyContentComponent } from './privacy/privacy-content/privacy-content.component';
|
import { PrivacyContentComponent } from './privacy/privacy-content/privacy-content.component';
|
||||||
|
import { ThemedEndUserAgreementComponent } from './end-user-agreement/themed-end-user-agreement.component';
|
||||||
|
import { ThemedPrivacyComponent } from './privacy/themed-privacy.component';
|
||||||
|
|
||||||
|
const DECLARATIONS = [
|
||||||
|
EndUserAgreementComponent,
|
||||||
|
ThemedEndUserAgreementComponent,
|
||||||
|
EndUserAgreementContentComponent,
|
||||||
|
PrivacyComponent,
|
||||||
|
PrivacyContentComponent,
|
||||||
|
ThemedPrivacyComponent
|
||||||
|
];
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -14,10 +25,10 @@ import { PrivacyContentComponent } from './privacy/privacy-content/privacy-conte
|
|||||||
InfoRoutingModule
|
InfoRoutingModule
|
||||||
],
|
],
|
||||||
declarations: [
|
declarations: [
|
||||||
EndUserAgreementComponent,
|
...DECLARATIONS
|
||||||
EndUserAgreementContentComponent,
|
],
|
||||||
PrivacyComponent,
|
exports: [
|
||||||
PrivacyContentComponent
|
...DECLARATIONS
|
||||||
]
|
]
|
||||||
})
|
})
|
||||||
export class InfoModule {
|
export class InfoModule {
|
||||||
|
27
src/app/info/privacy/themed-privacy.component.ts
Normal file
27
src/app/info/privacy/themed-privacy.component.ts
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ThemedComponent } from '../../shared/theme-support/themed.component';
|
||||||
|
import { PrivacyComponent } from './privacy.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-privacy',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: '../../shared/theme-support/themed.component.html',
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class ThemedPrivacyComponent extends ThemedComponent<PrivacyComponent> {
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'PrivacyComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../../themes/${themeName}/app/info/privacy/privacy.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import(`./privacy.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
27
src/app/pagenotfound/themed-pagenotfound.component.ts
Normal file
27
src/app/pagenotfound/themed-pagenotfound.component.ts
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ThemedComponent } from '../shared/theme-support/themed.component';
|
||||||
|
import { PageNotFoundComponent } from './pagenotfound.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-search-page',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: '../shared/theme-support/themed.component.html',
|
||||||
|
})
|
||||||
|
/**
|
||||||
|
* This component represents the whole search page
|
||||||
|
* It renders search results depending on the current search options
|
||||||
|
*/
|
||||||
|
export class ThemedPageNotFoundComponent extends ThemedComponent<PageNotFoundComponent> {
|
||||||
|
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'PageNotFoundComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../themes/${themeName}/app/pagenotfound/pagenotfound.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import(`./pagenotfound.component`);
|
||||||
|
}
|
||||||
|
}
|
@@ -232,6 +232,7 @@ import { ConfigurationSearchPageComponent } from '../+search-page/configuration-
|
|||||||
import { LinkMenuItemComponent } from './menu/menu-item/link-menu-item.component';
|
import { LinkMenuItemComponent } from './menu/menu-item/link-menu-item.component';
|
||||||
import { OnClickMenuItemComponent } from './menu/menu-item/onclick-menu-item.component';
|
import { OnClickMenuItemComponent } from './menu/menu-item/onclick-menu-item.component';
|
||||||
import { TextMenuItemComponent } from './menu/menu-item/text-menu-item.component';
|
import { TextMenuItemComponent } from './menu/menu-item/text-menu-item.component';
|
||||||
|
import { ThemedConfigurationSearchPageComponent } from '../+search-page/themed-configuration-search-page.component';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Declaration needed to make sure all decorator functions are called in time
|
* Declaration needed to make sure all decorator functions are called in time
|
||||||
@@ -516,7 +517,8 @@ const ENTRY_COMPONENTS = [
|
|||||||
];
|
];
|
||||||
|
|
||||||
const SHARED_SEARCH_PAGE_COMPONENTS = [
|
const SHARED_SEARCH_PAGE_COMPONENTS = [
|
||||||
ConfigurationSearchPageComponent
|
ConfigurationSearchPageComponent,
|
||||||
|
ThemedConfigurationSearchPageComponent
|
||||||
];
|
];
|
||||||
|
|
||||||
const SHARED_ITEM_PAGE_COMPONENTS = [
|
const SHARED_ITEM_PAGE_COMPONENTS = [
|
||||||
|
@@ -0,0 +1,27 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ThemedComponent } from '../../shared/theme-support/themed.component';
|
||||||
|
import { CollectionStatisticsPageComponent } from './collection-statistics-page.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-collection-statistics-page',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: '../../shared/theme-support/themed.component.html',
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class ThemedCollectionStatisticsPageComponent extends ThemedComponent<CollectionStatisticsPageComponent> {
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'CollectionStatisticsPageComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../../themes/${themeName}/app/statistics-page/collection-statistics-page/collection-statistics-page.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import(`./collection-statistics-page.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@@ -0,0 +1,27 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ThemedComponent } from '../../shared/theme-support/themed.component';
|
||||||
|
import { CommunityStatisticsPageComponent } from './community-statistics-page.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-collection-statistics-page',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: '../../shared/theme-support/themed.component.html',
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class ThemedCommunityStatisticsPageComponent extends ThemedComponent<CommunityStatisticsPageComponent> {
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'CommunityStatisticsPageComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../../themes/${themeName}/app/statistics-page/community-statistics-page/community-statistics-page.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import(`./community-statistics-page.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@@ -0,0 +1,27 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ThemedComponent } from '../../shared/theme-support/themed.component';
|
||||||
|
import { ItemStatisticsPageComponent } from './item-statistics-page.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-item-statistics-page',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: '../../shared/theme-support/themed.component.html',
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class ThemedItemStatisticsPageComponent extends ThemedComponent<ItemStatisticsPageComponent> {
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'ItemStatisticsPageComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../../themes/${themeName}/app/statistics-page/item-statistics-page/item-statistics-page.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import(`./item-statistics-page.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@@ -0,0 +1,27 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ThemedComponent } from '../../shared/theme-support/themed.component';
|
||||||
|
import { SiteStatisticsPageComponent } from './site-statistics-page.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-themed-site-statistics-page',
|
||||||
|
styleUrls: [],
|
||||||
|
templateUrl: '../../shared/theme-support/themed.component.html',
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class ThemedSiteStatisticsPageComponent extends ThemedComponent<SiteStatisticsPageComponent> {
|
||||||
|
protected getComponentName(): string {
|
||||||
|
return 'SiteStatisticsPageComponent';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importThemedComponent(themeName: string): Promise<any> {
|
||||||
|
return import(`../../../themes/${themeName}/app/statistics-page/site-statistics-page/site-statistics-page.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected importUnthemedComponent(): Promise<any> {
|
||||||
|
return import(`./site-statistics-page.component`);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@@ -3,13 +3,13 @@ import { RouterModule } from '@angular/router';
|
|||||||
import { I18nBreadcrumbResolver } from '../core/breadcrumbs/i18n-breadcrumb.resolver';
|
import { I18nBreadcrumbResolver } from '../core/breadcrumbs/i18n-breadcrumb.resolver';
|
||||||
import { I18nBreadcrumbsService } from '../core/breadcrumbs/i18n-breadcrumbs.service';
|
import { I18nBreadcrumbsService } from '../core/breadcrumbs/i18n-breadcrumbs.service';
|
||||||
import { StatisticsPageModule } from './statistics-page.module';
|
import { StatisticsPageModule } from './statistics-page.module';
|
||||||
import { SiteStatisticsPageComponent } from './site-statistics-page/site-statistics-page.component';
|
|
||||||
import { ItemPageResolver } from '../+item-page/item-page.resolver';
|
import { ItemPageResolver } from '../+item-page/item-page.resolver';
|
||||||
import { ItemStatisticsPageComponent } from './item-statistics-page/item-statistics-page.component';
|
|
||||||
import { CollectionPageResolver } from '../+collection-page/collection-page.resolver';
|
import { CollectionPageResolver } from '../+collection-page/collection-page.resolver';
|
||||||
import { CollectionStatisticsPageComponent } from './collection-statistics-page/collection-statistics-page.component';
|
|
||||||
import { CommunityPageResolver } from '../+community-page/community-page.resolver';
|
import { CommunityPageResolver } from '../+community-page/community-page.resolver';
|
||||||
import { CommunityStatisticsPageComponent } from './community-statistics-page/community-statistics-page.component';
|
import { ThemedCollectionStatisticsPageComponent } from './collection-statistics-page/themed-collection-statistics-page.component';
|
||||||
|
import { ThemedCommunityStatisticsPageComponent } from './community-statistics-page/themed-community-statistics-page.component';
|
||||||
|
import { ThemedItemStatisticsPageComponent } from './item-statistics-page/themed-item-statistics-page.component';
|
||||||
|
import { ThemedSiteStatisticsPageComponent } from './site-statistics-page/themed-site-statistics-page.component';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -27,7 +27,7 @@ import { CommunityStatisticsPageComponent } from './community-statistics-page/co
|
|||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
path: '',
|
path: '',
|
||||||
component: SiteStatisticsPageComponent,
|
component: ThemedSiteStatisticsPageComponent,
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -41,7 +41,7 @@ import { CommunityStatisticsPageComponent } from './community-statistics-page/co
|
|||||||
title: 'statistics.title',
|
title: 'statistics.title',
|
||||||
breadcrumbKey: 'statistics'
|
breadcrumbKey: 'statistics'
|
||||||
},
|
},
|
||||||
component: ItemStatisticsPageComponent,
|
component: ThemedItemStatisticsPageComponent,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: `collections/:id`,
|
path: `collections/:id`,
|
||||||
@@ -53,7 +53,7 @@ import { CommunityStatisticsPageComponent } from './community-statistics-page/co
|
|||||||
title: 'statistics.title',
|
title: 'statistics.title',
|
||||||
breadcrumbKey: 'statistics'
|
breadcrumbKey: 'statistics'
|
||||||
},
|
},
|
||||||
component: CollectionStatisticsPageComponent,
|
component: ThemedCollectionStatisticsPageComponent,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: `communities/:id`,
|
path: `communities/:id`,
|
||||||
@@ -65,7 +65,7 @@ import { CommunityStatisticsPageComponent } from './community-statistics-page/co
|
|||||||
title: 'statistics.title',
|
title: 'statistics.title',
|
||||||
breadcrumbKey: 'statistics'
|
breadcrumbKey: 'statistics'
|
||||||
},
|
},
|
||||||
component: CommunityStatisticsPageComponent,
|
component: ThemedCommunityStatisticsPageComponent,
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
@@ -75,6 +75,7 @@ import { CommunityStatisticsPageComponent } from './community-statistics-page/co
|
|||||||
I18nBreadcrumbsService,
|
I18nBreadcrumbsService,
|
||||||
CollectionPageResolver,
|
CollectionPageResolver,
|
||||||
CommunityPageResolver,
|
CommunityPageResolver,
|
||||||
|
ItemPageResolver
|
||||||
]
|
]
|
||||||
})
|
})
|
||||||
export class StatisticsPageRoutingModule {
|
export class StatisticsPageRoutingModule {
|
||||||
|
@@ -10,13 +10,21 @@ import { StatisticsTableComponent } from './statistics-table/statistics-table.co
|
|||||||
import { ItemStatisticsPageComponent } from './item-statistics-page/item-statistics-page.component';
|
import { ItemStatisticsPageComponent } from './item-statistics-page/item-statistics-page.component';
|
||||||
import { CollectionStatisticsPageComponent } from './collection-statistics-page/collection-statistics-page.component';
|
import { CollectionStatisticsPageComponent } from './collection-statistics-page/collection-statistics-page.component';
|
||||||
import { CommunityStatisticsPageComponent } from './community-statistics-page/community-statistics-page.component';
|
import { CommunityStatisticsPageComponent } from './community-statistics-page/community-statistics-page.component';
|
||||||
|
import { ThemedCollectionStatisticsPageComponent } from './collection-statistics-page/themed-collection-statistics-page.component';
|
||||||
|
import { ThemedCommunityStatisticsPageComponent } from './community-statistics-page/themed-community-statistics-page.component';
|
||||||
|
import { ThemedItemStatisticsPageComponent } from './item-statistics-page/themed-item-statistics-page.component';
|
||||||
|
import { ThemedSiteStatisticsPageComponent } from './site-statistics-page/themed-site-statistics-page.component';
|
||||||
|
|
||||||
const components = [
|
const components = [
|
||||||
StatisticsTableComponent,
|
StatisticsTableComponent,
|
||||||
SiteStatisticsPageComponent,
|
SiteStatisticsPageComponent,
|
||||||
ItemStatisticsPageComponent,
|
ItemStatisticsPageComponent,
|
||||||
CollectionStatisticsPageComponent,
|
CollectionStatisticsPageComponent,
|
||||||
CommunityStatisticsPageComponent
|
CommunityStatisticsPageComponent,
|
||||||
|
ThemedCollectionStatisticsPageComponent,
|
||||||
|
ThemedCommunityStatisticsPageComponent,
|
||||||
|
ThemedItemStatisticsPageComponent,
|
||||||
|
ThemedSiteStatisticsPageComponent
|
||||||
];
|
];
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
|
@@ -251,10 +251,10 @@ export const environment: GlobalConfig = {
|
|||||||
// name: 'custom',
|
// name: 'custom',
|
||||||
// uuid: '0958c910-2037-42a9-81c7-dca80e3892b4'
|
// uuid: '0958c910-2037-42a9-81c7-dca80e3892b4'
|
||||||
// },
|
// },
|
||||||
// {
|
{
|
||||||
// // A theme with only a name will match every route
|
// A theme with only a name will match every route
|
||||||
// name: 'custom'
|
name: 'custom'
|
||||||
// },
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
// This theme will use the default bootstrap styling for DSpace components
|
// This theme will use the default bootstrap styling for DSpace components
|
||||||
|
@@ -0,0 +1,15 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { BrowseBySwitcherComponent as BaseComponent } from '../../../../../app/+browse-by/+browse-by-switcher/browse-by-switcher.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-browse-by-switcher',
|
||||||
|
// styleUrls: ['./browse-by-switcher.component.scss'],
|
||||||
|
// templateUrl: './browse-by-switcher.component.html'
|
||||||
|
templateUrl: '../../../../../app/+browse-by/+browse-by-switcher/browse-by-switcher.component.html'
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class BrowseBySwitcherComponent extends BaseComponent {}
|
||||||
|
|
@@ -0,0 +1,17 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { CollectionPageComponent as BaseComponent} from '../../../../app/+collection-page/collection-page.component';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This component representing the `Forbidden` DSpace page.
|
||||||
|
*/
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-collection-page',
|
||||||
|
// templateUrl: './collection-page.component.html',
|
||||||
|
templateUrl: '../../../../app/+collection-page/collection-page.component.html',
|
||||||
|
// styleUrls: ['./collection-page.component.scss']
|
||||||
|
styleUrls: ['../../../../app/+collection-page/collection-page.component.scss']
|
||||||
|
})
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class CollectionPageComponent extends BaseComponent {}
|
@@ -0,0 +1,17 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { CommunityPageComponent as BaseComponent} from '../../../../app/+community-page/community-page.component';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This component representing the `Forbidden` DSpace page.
|
||||||
|
*/
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-community-page',
|
||||||
|
// templateUrl: './community-page.component.html',
|
||||||
|
templateUrl: '../../../../app/+community-page/community-page.component.html',
|
||||||
|
// styleUrls: ['./community-page.component.scss']
|
||||||
|
styleUrls: ['../../../../app/+community-page/community-page.component.scss']
|
||||||
|
})
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class CommunityPageComponent extends BaseComponent {}
|
@@ -0,0 +1,16 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ObjectNotFoundComponent as BaseComponent } from '../../../../../app/+lookup-by-id/objectnotfound/objectnotfound.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-objnotfound',
|
||||||
|
// styleUrls: ['./objectnotfound.component.scss'],
|
||||||
|
styleUrls: ['../../../../../app/+lookup-by-id/objectnotfound/objectnotfound.component.scss'],
|
||||||
|
// templateUrl: './objectnotfound.component.html',
|
||||||
|
templateUrl: '../../../../../app/+lookup-by-id/objectnotfound/objectnotfound.component.html'
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class ObjectNotFoundComponent extends BaseComponent {}
|
||||||
|
|
@@ -0,0 +1,15 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { SearchPageComponent as BaseComponent } from '../../../../app/+search-page/search-page.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-configuration-search-page',
|
||||||
|
// styleUrls: ['./configuration-search-page.component.html'],
|
||||||
|
// templateUrl: './configuration-search-page.component.html'
|
||||||
|
templateUrl: '../../../../app/+search-page/search.component.html'
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class ConfigurationSearchPageComponent extends BaseComponent {}
|
||||||
|
|
15
src/themes/custom/app/+search-page/search-page.component.ts
Normal file
15
src/themes/custom/app/+search-page/search-page.component.ts
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { SearchPageComponent as BaseComponent } from '../../../../app/+search-page/search-page.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-search-page',
|
||||||
|
// styleUrls: ['./search-page.component.scss'],
|
||||||
|
// templateUrl: './search-page.component.html'
|
||||||
|
templateUrl: '../../../../app/+search-page/search-page.component.html'
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class SearchPageComponent extends BaseComponent {}
|
||||||
|
|
@@ -0,0 +1,15 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { CommunityListPageComponent as BaseComponent } from '../../../../app/community-list-page/community-list-page.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-community-list-page',
|
||||||
|
// styleUrls: ['./community-list-page.component.scss'],
|
||||||
|
// templateUrl: './community-list-page.component.html'
|
||||||
|
templateUrl: '../../../../app/community-list-page/community-list-page.component.html'
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class CommunityListPageComponent extends BaseComponent {}
|
||||||
|
|
17
src/themes/custom/app/forbidden/forbidden.component.ts
Normal file
17
src/themes/custom/app/forbidden/forbidden.component.ts
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ForbiddenComponent as BaseComponent } from '../../../../app/forbidden/forbidden.component';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This component representing the `Forbidden` DSpace page.
|
||||||
|
*/
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-forbidden',
|
||||||
|
// templateUrl: './forbidden.component.html',
|
||||||
|
templateUrl: '../../../../app/forbidden/forbidden.component.html',
|
||||||
|
// styleUrls: ['./forbidden.component.scss']
|
||||||
|
styleUrls: ['../../../../app/forbidden/forbidden.component.scss']
|
||||||
|
})
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class ForbiddenComponent extends BaseComponent {}
|
@@ -0,0 +1,16 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { EndUserAgreementComponent as BaseComponent } from '../../../../../app/info/end-user-agreement/end-user-agreement.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-home-news',
|
||||||
|
// styleUrls: ['./end-user-agreement.component.scss'],
|
||||||
|
styleUrls: ['../../../../../app/info/end-user-agreement/end-user-agreement.component.scss'],
|
||||||
|
// templateUrl: './end-user-agreement.component.html'
|
||||||
|
templateUrl: '../../../../../app/info/end-user-agreement/end-user-agreement.component.html'
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class EndUserAgreementComponent extends BaseComponent {}
|
||||||
|
|
15
src/themes/custom/app/info/privacy/privacy.component.ts
Normal file
15
src/themes/custom/app/info/privacy/privacy.component.ts
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { PrivacyComponent as BaseComponent } from '../../../../../app/info/privacy/privacy.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-privacy',
|
||||||
|
// styleUrls: ['./privacy.component.scss'],
|
||||||
|
styleUrls: ['../../../../../app/info/privacy/privacy.component.scss'],
|
||||||
|
// templateUrl: './privacy.component.html'
|
||||||
|
templateUrl: '../../../../../app/info/privacy/privacy.component.html'
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class PrivacyComponent extends BaseComponent {}
|
16
src/themes/custom/app/pagenotfound/pagenotfound.component.ts
Normal file
16
src/themes/custom/app/pagenotfound/pagenotfound.component.ts
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { PageNotFoundComponent as BaseComponent } from '../../../../app/pagenotfound/pagenotfound.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-pagenotfound',
|
||||||
|
// styleUrls: ['./pagenotfound.component.scss'],
|
||||||
|
styleUrls: ['../../../../app/pagenotfound/pagenotfound.component.scss'],
|
||||||
|
// templateUrl: './pagenotfound.component.html'
|
||||||
|
templateUrl: '../../../../app/pagenotfound/pagenotfound.component.html'
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class PageNotFoundComponent extends BaseComponent {}
|
||||||
|
|
@@ -0,0 +1,16 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { CollectionStatisticsPageComponent as BaseComponent } from '../../../../../app/statistics-page/collection-statistics-page/collection-statistics-page.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-collection-statistics-page',
|
||||||
|
// styleUrls: ['./collection-statistics-page.component.scss'],
|
||||||
|
styleUrls: ['../../../../../app/statistics-page/collection-statistics-page/collection-statistics-page.component.scss'],
|
||||||
|
// templateUrl: './collection-statistics-page.component.html',
|
||||||
|
templateUrl: '../../../../../app/statistics-page/statistics-page/statistics-page.component.html'
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class CollectionStatisticsPageComponent extends BaseComponent {}
|
||||||
|
|
@@ -0,0 +1,16 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { CommunityStatisticsPageComponent as BaseComponent } from '../../../../../app/statistics-page/community-statistics-page/community-statistics-page.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-collection-statistics-page',
|
||||||
|
// styleUrls: ['./community-statistics-page.component.scss'],
|
||||||
|
styleUrls: ['../../../../../app/statistics-page/community-statistics-page/community-statistics-page.component.scss'],
|
||||||
|
// templateUrl: './community-statistics-page.component.html',
|
||||||
|
templateUrl: '../../../../../app/statistics-page/statistics-page/statistics-page.component.html'
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class CommunityStatisticsPageComponent extends BaseComponent {}
|
||||||
|
|
@@ -0,0 +1,16 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { ItemStatisticsPageComponent as BaseComponent } from '../../../../../app/statistics-page/item-statistics-page/item-statistics-page.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-item-statistics-page',
|
||||||
|
// styleUrls: ['./item-statistics-page.component.scss'],
|
||||||
|
styleUrls: ['../../../../../app/statistics-page/item-statistics-page/item-statistics-page.component.scss'],
|
||||||
|
// templateUrl: './item-statistics-page.component.html',
|
||||||
|
templateUrl: '../../../../../app/statistics-page/statistics-page/statistics-page.component.html'
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class ItemStatisticsPageComponent extends BaseComponent {}
|
||||||
|
|
@@ -0,0 +1,16 @@
|
|||||||
|
import { Component } from '@angular/core';
|
||||||
|
import { SiteStatisticsPageComponent as BaseComponent } from '../../../../../app/statistics-page/site-statistics-page/site-statistics-page.component';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'ds-site-statistics-page',
|
||||||
|
// styleUrls: ['./site-statistics-page.component.scss'],
|
||||||
|
styleUrls: ['../../../../../app/statistics-page/site-statistics-page/site-statistics-page.component.scss'],
|
||||||
|
// templateUrl: './site-statistics-page.component.html',
|
||||||
|
templateUrl: '../../../../../app/statistics-page/statistics-page/statistics-page.component.html'
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Component to render the news section on the home page
|
||||||
|
*/
|
||||||
|
export class SiteStatisticsPageComponent extends BaseComponent {}
|
||||||
|
|
@@ -37,12 +37,47 @@ import { AppModule } from '../../app/app.module';
|
|||||||
import { PublicationComponent } from './app/+item-page/simple/item-types/publication/publication.component';
|
import { PublicationComponent } from './app/+item-page/simple/item-types/publication/publication.component';
|
||||||
import { ItemPageModule } from '../../app/+item-page/item-page.module';
|
import { ItemPageModule } from '../../app/+item-page/item-page.module';
|
||||||
import { RouterModule } from '@angular/router';
|
import { RouterModule } from '@angular/router';
|
||||||
|
import { BrowseBySwitcherComponent } from './app/+browse-by/+browse-by-switcher/browse-by-switcher.component';
|
||||||
|
import { CommunityListPageComponent } from './app/community-list-page/community-list-page.component';
|
||||||
|
import { CommunityListPageModule } from '../../app/community-list-page/community-list-page.module';
|
||||||
|
import { SearchPageComponent } from './app/+search-page/search-page.component';
|
||||||
|
import { InfoModule } from '../../app/info/info.module';
|
||||||
|
import { EndUserAgreementComponent } from './app/info/end-user-agreement/end-user-agreement.component';
|
||||||
|
import { PageNotFoundComponent } from './app/pagenotfound/pagenotfound.component';
|
||||||
|
import { ObjectNotFoundComponent } from './app/+lookup-by-id/objectnotfound/objectnotfound.component';
|
||||||
|
import { ForbiddenComponent } from './app/forbidden/forbidden.component';
|
||||||
|
import { PrivacyComponent } from './app/info/privacy/privacy.component';
|
||||||
|
import { CollectionStatisticsPageComponent } from './app/statistics-page/collection-statistics-page/collection-statistics-page.component';
|
||||||
|
import { CommunityStatisticsPageComponent } from './app/statistics-page/community-statistics-page/community-statistics-page.component';
|
||||||
|
import { StatisticsPageModule } from '../../app/statistics-page/statistics-page.module';
|
||||||
|
import { ItemStatisticsPageComponent } from './app/statistics-page/item-statistics-page/item-statistics-page.component';
|
||||||
|
import { SiteStatisticsPageComponent } from './app/statistics-page/site-statistics-page/site-statistics-page.component';
|
||||||
|
import { CommunityPageComponent } from './app/+community-page/community-page.component';
|
||||||
|
import { CollectionPageComponent } from './app/+collection-page/collection-page.component';
|
||||||
|
import { CommunityPageModule } from '../../app/+community-page/community-page.module';
|
||||||
|
import { CollectionPageModule } from '../../app/+collection-page/collection-page.module';
|
||||||
|
import { ConfigurationSearchPageComponent } from './app/+search-page/configuration-search-page.component';
|
||||||
|
|
||||||
const DECLARATIONS = [
|
const DECLARATIONS = [
|
||||||
HomePageComponent,
|
HomePageComponent,
|
||||||
HomeNewsComponent,
|
HomeNewsComponent,
|
||||||
RootComponent,
|
RootComponent,
|
||||||
PublicationComponent
|
PublicationComponent,
|
||||||
|
BrowseBySwitcherComponent,
|
||||||
|
CommunityListPageComponent,
|
||||||
|
SearchPageComponent,
|
||||||
|
ConfigurationSearchPageComponent,
|
||||||
|
EndUserAgreementComponent,
|
||||||
|
PageNotFoundComponent,
|
||||||
|
ObjectNotFoundComponent,
|
||||||
|
ForbiddenComponent,
|
||||||
|
PrivacyComponent,
|
||||||
|
CollectionStatisticsPageComponent,
|
||||||
|
CommunityStatisticsPageComponent,
|
||||||
|
ItemStatisticsPageComponent,
|
||||||
|
SiteStatisticsPageComponent,
|
||||||
|
CommunityPageComponent,
|
||||||
|
CollectionPageComponent
|
||||||
];
|
];
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
@@ -55,8 +90,11 @@ const DECLARATIONS = [
|
|||||||
BitstreamFormatsModule,
|
BitstreamFormatsModule,
|
||||||
BrowseByModule,
|
BrowseByModule,
|
||||||
CollectionFormModule,
|
CollectionFormModule,
|
||||||
|
CollectionPageModule,
|
||||||
CommonModule,
|
CommonModule,
|
||||||
CommunityFormModule,
|
CommunityFormModule,
|
||||||
|
CommunityListPageModule,
|
||||||
|
CommunityPageModule,
|
||||||
CoreModule,
|
CoreModule,
|
||||||
DragDropModule,
|
DragDropModule,
|
||||||
ItemPageModule,
|
ItemPageModule,
|
||||||
@@ -65,6 +103,7 @@ const DECLARATIONS = [
|
|||||||
HomePageModule,
|
HomePageModule,
|
||||||
HttpClientModule,
|
HttpClientModule,
|
||||||
IdlePreloadModule,
|
IdlePreloadModule,
|
||||||
|
InfoModule,
|
||||||
JournalEntitiesModule,
|
JournalEntitiesModule,
|
||||||
MenuModule,
|
MenuModule,
|
||||||
MyDspaceSearchModule,
|
MyDspaceSearchModule,
|
||||||
@@ -78,6 +117,7 @@ const DECLARATIONS = [
|
|||||||
SearchPageModule,
|
SearchPageModule,
|
||||||
SharedModule,
|
SharedModule,
|
||||||
StatisticsModule,
|
StatisticsModule,
|
||||||
|
StatisticsPageModule,
|
||||||
StoreModule,
|
StoreModule,
|
||||||
StoreRouterConnectingModule,
|
StoreRouterConnectingModule,
|
||||||
TranslateModule,
|
TranslateModule,
|
||||||
|
Reference in New Issue
Block a user