129694: backported view tracker resolver

This commit is contained in:
lotte
2025-04-04 13:31:49 +02:00
parent ff5f23017a
commit 01becae7d0
7 changed files with 31 additions and 22 deletions

View File

@@ -40,6 +40,8 @@ import {
import { ServerCheckGuard } from './core/server-check/server-check.guard';
import { MenuResolver } from './menu.resolver';
import { ThemedPageErrorComponent } from './page-error/themed-page-error.component';
import { HomePageResolver } from './home-page/home-page.resolver';
import { ViewTrackerResolverService } from './statistics/angulartics/dspace/view-tracker-resolver.service';
@NgModule({
imports: [
@@ -63,7 +65,15 @@ import { ThemedPageErrorComponent } from './page-error/themed-page-error.compone
path: 'home',
loadChildren: () => import('./home-page/home-page.module')
.then((m) => m.HomePageModule),
data: { showBreadcrumbs: false },
data: {
showBreadcrumbs: false,
dsoPath: 'site'
},
resolve: {
site: HomePageResolver,
tracking: ViewTrackerResolverService,
},
canActivate: [EndUserAgreementCurrentUserGuard]
},
{
@@ -251,6 +261,7 @@ import { ThemedPageErrorComponent } from './page-error/themed-page-error.compone
})
],
exports: [RouterModule],
providers: [HomePageResolver, ViewTrackerResolverService],
})
export class AppRoutingModule {

View File

@@ -22,6 +22,7 @@ import { LinkMenuItemModel } from '../shared/menu/menu-item/models/link.model';
import { ThemedCollectionPageComponent } from './themed-collection-page.component';
import { MenuItemType } from '../shared/menu/menu-item-type.model';
import { DSOEditMenuResolver } from '../shared/dso-page/dso-edit-menu.resolver';
import { ViewTrackerResolverService } from '../statistics/angulartics/dspace/view-tracker-resolver.service';
@NgModule({
imports: [
@@ -66,6 +67,9 @@ import { DSOEditMenuResolver } from '../shared/dso-page/dso-edit-menu.resolver';
path: '',
component: ThemedCollectionPageComponent,
pathMatch: 'full',
resolve: {
tracking: ViewTrackerResolverService,
},
}
],
data: {
@@ -94,6 +98,7 @@ import { DSOEditMenuResolver } from '../shared/dso-page/dso-edit-menu.resolver';
LinkService,
CreateCollectionPageGuard,
CollectionPageAdministratorGuard,
ViewTrackerResolverService,
]
})
export class CollectionPageRoutingModule {

View File

@@ -15,6 +15,7 @@ import { LinkMenuItemModel } from '../shared/menu/menu-item/models/link.model';
import { ThemedCommunityPageComponent } from './themed-community-page.component';
import { MenuItemType } from '../shared/menu/menu-item-type.model';
import { DSOEditMenuResolver } from '../shared/dso-page/dso-edit-menu.resolver';
import { ViewTrackerResolverService } from '../statistics/angulartics/dspace/view-tracker-resolver.service';
@NgModule({
imports: [
@@ -49,6 +50,9 @@ import { DSOEditMenuResolver } from '../shared/dso-page/dso-edit-menu.resolver';
path: '',
component: ThemedCommunityPageComponent,
pathMatch: 'full',
resolve: {
tracking: ViewTrackerResolverService,
},
}
],
data: {
@@ -76,6 +80,7 @@ import { DSOEditMenuResolver } from '../shared/dso-page/dso-edit-menu.resolver';
LinkService,
CreateCommunityPageGuard,
CommunityPageAdministratorGuard,
ViewTrackerResolverService,
]
})
export class CommunityPageRoutingModule {

View File

@@ -28,15 +28,9 @@ import { MenuItemType } from '../shared/menu/menu-item-type.model';
} as LinkMenuItemModel,
}],
},
},
resolve: {
site: HomePageResolver
}
}
])
],
providers: [
HomePageResolver
]
})
export class HomePageRoutingModule {

View File

@@ -19,6 +19,7 @@ import { REQUEST_COPY_MODULE_PATH } from '../app-routing-paths';
import { OrcidPageComponent } from './orcid-page/orcid-page.component';
import { OrcidPageGuard } from './orcid-page/orcid-page.guard';
import { DSOEditMenuResolver } from '../shared/dso-page/dso-edit-menu.resolver';
import { ViewTrackerResolverService } from '../statistics/angulartics/dspace/view-tracker-resolver.service';
@NgModule({
imports: [
@@ -36,10 +37,16 @@ import { DSOEditMenuResolver } from '../shared/dso-page/dso-edit-menu.resolver';
path: '',
component: ThemedItemPageComponent,
pathMatch: 'full',
resolve: {
tracking: ViewTrackerResolverService,
}
},
{
path: 'full',
component: ThemedFullItemPageComponent,
resolve: {
tracking: ViewTrackerResolverService,
}
},
{
path: ITEM_EDIT_PATH,
@@ -98,7 +105,8 @@ import { DSOEditMenuResolver } from '../shared/dso-page/dso-edit-menu.resolver';
LinkService,
ItemPageAdministratorGuard,
VersionResolver,
OrcidPageGuard
OrcidPageGuard,
ViewTrackerResolverService,
]
})

View File

@@ -1,11 +0,0 @@
import { inject } from '@angular/core';
import { ActivatedRouteSnapshot, ResolveFn, RouterStateSnapshot, } from '@angular/router';
import { ViewTrackerResolverService } from './view-tracker-resolver.service';
export const viewTrackerResolver: ResolveFn<boolean> = (
route: ActivatedRouteSnapshot,
state: RouterStateSnapshot,
viewTrackerResolverService: ViewTrackerResolverService = inject(ViewTrackerResolverService),
): boolean => {
return viewTrackerResolverService.resolve(route, state);
};

View File

@@ -2,7 +2,6 @@ import { ModuleWithProviders, NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { CoreModule } from '../core/core.module';
import { SharedModule } from '../shared/shared.module';
import { ViewTrackerComponent } from './angulartics/dspace/view-tracker.component';
import { StatisticsEndpoint } from './statistics-endpoint.model';
/**
@@ -19,10 +18,8 @@ export const models = [
SharedModule,
],
declarations: [
ViewTrackerComponent,
],
exports: [
ViewTrackerComponent,
]
})
/**