import {NgModule} from '@angular/core'; import {PreloadAllModules, RouterModule, Routes} from '@angular/router'; import {IsCommunity} from './openaireLibrary/connect/communityGuard/isCommunity.guard'; import {ConnectAdminLoginGuard} from './openaireLibrary/connect/communityGuard/connectAdminLoginGuard.guard'; import {AdminErrorPageComponent} from './pages/error/errorPage.component'; import {AdminLoginGuard} from "./openaireLibrary/login/adminLoginGuard.guard"; import {LoginGuard} from "./openaireLibrary/login/loginGuard.guard"; const routes: Routes = [ { path: '', loadChildren: './pages/manage-communities/manage-communities.module#ManageCommunitiesModule', canActivateChild: [LoginGuard] }, { path: 'reload', loadChildren: './reload/libReload.module#LibReloadModule', data: {hasSidebar: false, hasHeader: false} }, { path: 'user-info', loadChildren: './login/libUser.module#LibUserModule', data: {hasSidebar: false} }, { path: 'error', pathMatch: 'full', component: AdminErrorPageComponent, data: {hasSidebar: false} }, { path: 'connect/admin-tools', loadChildren: './pages/admin-tools/admin-tools-routing.module#AdminToolsRoutingModule', canActivateChild: [AdminLoginGuard], data: {portal: 'connect'} }, { path: 'openaire/admin-tools', loadChildren: './pages/admin-tools/admin-tools-routing.module#AdminToolsRoutingModule', canActivateChild: [AdminLoginGuard], data: {portal: 'openaire'} }, { path: 'admin-tools', loadChildren: './pages/admin-tools/portal-admin-tools-routing.module#PortalAdminToolsRoutingModule', canActivateChild: [AdminLoginGuard] }, { path: ':community', redirectTo: '/:community/info/profile', pathMatch: 'full' }, { path: ':community', loadChildren: './pages/community-routing.module#CommunityRoutingModule', canActivateChild: [IsCommunity, ConnectAdminLoginGuard] }, { path: '**', pathMatch: 'full', component: AdminErrorPageComponent } ]; @NgModule({ imports: [RouterModule.forRoot(routes, { preloadingStrategy: PreloadAllModules, onSameUrlNavigation: "reload", relativeLinkResolution: 'corrected' })], exports: [ RouterModule ] }) export class AppRoutingModule {}