update navigation + profile
This commit is contained in:
@@ -1,69 +1,74 @@
|
||||
import {NgModule} from '@angular/core';
|
||||
import {Routes, RouterModule} from '@angular/router';
|
||||
import { NgModule } from '@angular/core';
|
||||
import { Routes, RouterModule } from '@angular/router';
|
||||
|
||||
import {AuthGuard, AuthUpdateGuard, AuthenticatedGuard, AnonymousGuard} from './auth/auth.guard';
|
||||
import {ImprintComponent, PrivacyPolicyComponent, TermsOfServiceComponent} from './pages/general/general.component';
|
||||
import {FormLoginComponent} from './pages/form-login/form-login.component';
|
||||
import {FormLogin2FAComponent} from './pages/form-login-2fa/form-login-2fa.component';
|
||||
import {PasswordComponent} from './pages/password/password.component';
|
||||
import {PasswordResetComponent} from './pages/password-reset/password-reset.component';
|
||||
import {AccountComponent} from './pages/account/account.component';
|
||||
import {RegisterComponent} from './pages/register/register.component';
|
||||
import {TokensComponent} from './pages/tokens/tokens.component';
|
||||
import {ServicesComponent} from './pages/services/services.component';
|
||||
import {InfoComponent} from './pages/account/info/info.component';
|
||||
import {ProfileComponent} from './pages/account/profile/profile.component';
|
||||
import {VoucherComponent} from './pages/account/voucher/voucher.component';
|
||||
import {SecurityComponent} from './pages/account/security/security.component';
|
||||
import {UnavailableComponent} from './pages/unavailable/unavailable.component';
|
||||
import {NotfoundComponent} from './pages/notfound/notfound.component';
|
||||
import {UserComponent} from './pages/user/user.component'
|
||||
import {JitsiComponent} from './pages/jitsi/jitsi.component'
|
||||
import {ParteyTimeslotsComponent} from './pages/partey/timeslots/timeslots.compontent'
|
||||
import {AliasesComponent} from './pages/account/aliases/aliases.component';
|
||||
import {DomainsComponent} from './pages/account/domains/domains.component';
|
||||
import {InvitesComponent} from './pages/invites/invites.component';
|
||||
import {UrlShortenerComponent, UrlShortenerPasswordComponent} from './pages/urlshortener/urlshortener.component';
|
||||
import {MinetestAccountsComponent} from './pages/minetest/accounts/accounts.component';
|
||||
import { AuthGuard, AuthUpdateGuard, AuthenticatedGuard, AnonymousGuard } from './auth/auth.guard';
|
||||
import { MainComponent } from './ui/main/main.component';
|
||||
import { FormLoginComponent } from './pages/form-login/form-login.component';
|
||||
import { FormLogin2FAComponent } from './pages/form-login-2fa/form-login-2fa.component';
|
||||
import { PasswordComponent } from './pages/password/password.component';
|
||||
import { PasswordResetComponent } from './pages/password-reset/password-reset.component';
|
||||
import { AccountComponent } from './pages/account/account.component';
|
||||
import { RegisterComponent } from './pages/register/register.component';
|
||||
import { TokensComponent } from './pages/tokens/tokens.component';
|
||||
import { ServicesComponent } from './pages/services/services.component';
|
||||
import { InfoComponent } from './pages/account/info/info.component';
|
||||
import { ProfileComponent } from './pages/account/profile/profile.component';
|
||||
import { VoucherComponent } from './pages/account/voucher/voucher.component';
|
||||
import { SecurityComponent } from './pages/account/security/security.component';
|
||||
import { UnavailableComponent } from './pages/unavailable/unavailable.component';
|
||||
import { NotfoundComponent } from './pages/notfound/notfound.component';
|
||||
import { UserComponent } from './pages/user/user.component'
|
||||
import { JitsiComponent } from './pages/jitsi/jitsi.component'
|
||||
import { ParteyComponent } from './pages/partey/partey.component'
|
||||
import { ParteyTimeslotsComponent } from './pages/partey/timeslots/timeslots.compontent'
|
||||
import { AliasesComponent } from './pages/account/aliases/aliases.component';
|
||||
import { DomainsComponent } from './pages/account/domains/domains.component';
|
||||
import { InvitesComponent } from './pages/invites/invites.component';
|
||||
import { UrlShortenerComponent, UrlShortenerPasswordComponent } from './pages/urlshortener/urlshortener.component';
|
||||
import { MinetestAccountsComponent } from './pages/minetest/accounts/accounts.component';
|
||||
import { DividertestComponent } from './pages/dividertest/dividertest.component'
|
||||
|
||||
const routes: Routes = [
|
||||
{path: '', redirectTo: "/services", pathMatch: 'full'},
|
||||
{path: 'imprint', component: ImprintComponent, canActivate: [AuthUpdateGuard]},
|
||||
{path: 'privacy-policy', component: PrivacyPolicyComponent, canActivate: [AuthUpdateGuard]},
|
||||
{path: 'terms-of-service', component: TermsOfServiceComponent, canActivate: [AuthUpdateGuard]},
|
||||
{path: 'login', component: FormLoginComponent, canActivate: [AnonymousGuard]},
|
||||
{path: 'login/2fa', component: FormLogin2FAComponent, canActivate: [AnonymousGuard]},
|
||||
{path: 'service-login', component: FormLoginComponent, canActivate: [AnonymousGuard]},
|
||||
{path: 'service-login/2fa', component: FormLogin2FAComponent, canActivate: [AnonymousGuard]},
|
||||
{path: 'password', component: PasswordComponent, canActivate: [AnonymousGuard]},
|
||||
{path: 'password-reset', component: PasswordResetComponent, canActivate: [AnonymousGuard]},
|
||||
{path: 'services', component: ServicesComponent, canActivate: [AuthenticatedGuard]},
|
||||
{ path: 'profile/:username', component: UserComponent, canActivate: [ AuthUpdateGuard ] },
|
||||
{
|
||||
path: 'account', component: AccountComponent, canActivate: [AuthenticatedGuard], children: [
|
||||
|
||||
{path: 'info', component: InfoComponent, canActivate: [AuthenticatedGuard]},
|
||||
{path: 'profile', component: ProfileComponent, canActivate: [AuthenticatedGuard]},
|
||||
{path: 'security', component: SecurityComponent, canActivate: [AuthenticatedGuard]},
|
||||
{path: 'voucher', component: VoucherComponent, canActivate: [AuthenticatedGuard]},
|
||||
{path: 'aliases', component: AliasesComponent, canActivate: [AuthenticatedGuard]},
|
||||
{path: 'domains', component: DomainsComponent, canActivate: [AuthenticatedGuard]}
|
||||
]
|
||||
path: '', component: MainComponent, children: [
|
||||
{ path: '', redirectTo: "/services", pathMatch: 'full' },
|
||||
{ path: 'login', component: FormLoginComponent, canActivate: [ AnonymousGuard ] },
|
||||
{ path: 'login/2fa', component: FormLogin2FAComponent, canActivate: [ AnonymousGuard ] },
|
||||
{ path: 'service-login', component: FormLoginComponent, canActivate: [ AnonymousGuard ] },
|
||||
{ path: 'service-login/2fa', component: FormLogin2FAComponent, canActivate: [ AnonymousGuard ] },
|
||||
{ path: 'password', component: PasswordComponent, canActivate: [ AnonymousGuard ] },
|
||||
{ path: 'password-reset', component: PasswordResetComponent, canActivate: [ AnonymousGuard ] },
|
||||
{ path: 'services', component: ServicesComponent, canActivate: [ AuthenticatedGuard ] },
|
||||
{
|
||||
path: 'account', component: AccountComponent, canActivate: [ AuthenticatedGuard ], children: [
|
||||
{ path: '', redirectTo: "/account/info", pathMatch: 'full' },
|
||||
{ path: 'info', component: InfoComponent, canActivate: [ AuthenticatedGuard ] },
|
||||
{ path: 'profile', component: ProfileComponent, canActivate: [ AuthenticatedGuard ] },
|
||||
{ path: 'security', component: SecurityComponent, canActivate: [ AuthenticatedGuard ] },
|
||||
{ path: 'voucher', component: VoucherComponent, canActivate: [ AuthenticatedGuard ] },
|
||||
{ path: 'aliases', component: AliasesComponent, canActivate: [ AuthenticatedGuard ] },
|
||||
{ path: 'domains', component: DomainsComponent, canActivate: [ AuthenticatedGuard ] }
|
||||
]
|
||||
},
|
||||
{ path: 'register', component: RegisterComponent, canActivate: [ AnonymousGuard ] },
|
||||
{ path: 'tokens', component: TokensComponent, canActivate: [ AuthGuard ] },
|
||||
{ path: 'jitsi', component: JitsiComponent, canActivate: [ AuthenticatedGuard ] },
|
||||
{ path: 'partey', component: ParteyComponent, canActivate: [ AuthenticatedGuard ] },
|
||||
{ path: 'partey/timeslots', component: ParteyTimeslotsComponent, canActivate: [ AuthenticatedGuard ] },
|
||||
{ path: 'minetest/accounts', component: MinetestAccountsComponent, canActivate: [ AuthenticatedGuard ] },
|
||||
{ path: 'dividertest', component: DividertestComponent },
|
||||
{ path: 'urlshortener', component: UrlShortenerComponent, canActivate: [ AuthenticatedGuard ] },
|
||||
{ path: 'urlshortener/:code', component: UrlShortenerPasswordComponent, canActivate: [ AuthUpdateGuard ] },
|
||||
{ path: 'invites/:quota', component: InvitesComponent, canActivate: [ AuthenticatedGuard ] },
|
||||
{ path: 'unavailable', component: UnavailableComponent },
|
||||
{ path: 'p/:username', component: UserComponent, canActivate: [ AuthUpdateGuard ] },
|
||||
{ path: '**', component: NotfoundComponent, pathMatch: 'full', canActivate: [ AuthUpdateGuard ] }, ]
|
||||
},
|
||||
{path: 'register', component: RegisterComponent, canActivate: [AnonymousGuard]},
|
||||
{path: 'tokens', component: TokensComponent, canActivate: [AuthGuard]},
|
||||
{path: 'jitsi', component: JitsiComponent, canActivate: [AuthenticatedGuard]},
|
||||
{path: 'partey/timeslots', component: ParteyTimeslotsComponent, canActivate: [AuthenticatedGuard]},
|
||||
{path: 'minetest/accounts', component: MinetestAccountsComponent, canActivate: [AuthenticatedGuard]},
|
||||
{path: 'urlshortener', component: UrlShortenerComponent, canActivate: [AuthenticatedGuard]},
|
||||
{path: 'urlshortener/:code', component: UrlShortenerPasswordComponent, canActivate: [AuthUpdateGuard]},
|
||||
{path: 'invites/:quota', component: InvitesComponent, canActivate: [AuthenticatedGuard]},
|
||||
{path: 'unavailable', component: UnavailableComponent},
|
||||
{path: 'p/:username', component: UserComponent, canActivate: [AuthUpdateGuard]},
|
||||
{path: '**', component: NotfoundComponent, pathMatch: 'full', canActivate: [AuthUpdateGuard]},
|
||||
];
|
||||
|
||||
@NgModule({
|
||||
imports: [RouterModule.forRoot(routes, {onSameUrlNavigation: 'reload', relativeLinkResolution: 'legacy'})],
|
||||
exports: [RouterModule]
|
||||
imports: [ RouterModule.forRoot(routes, { onSameUrlNavigation: 'reload', relativeLinkResolution: 'legacy' }) ],
|
||||
exports: [ RouterModule ]
|
||||
})
|
||||
export class AppRoutingModule {}
|
||||
export class AppRoutingModule { }
|
||||
|
||||
Reference in New Issue
Block a user