| @@ -20,7 +20,7 @@ const routes: Routes = [ | |||||
| {path: 'users', loadChildren: usersModule, canActivate: [AuthGuard]}, | {path: 'users', loadChildren: usersModule, canActivate: [AuthGuard]}, | ||||
| {path: 'account', loadChildren: accountModule}, | {path: 'account', loadChildren: accountModule}, | ||||
| { | { | ||||
| path: 'customers', | |||||
| path: 'customer', | |||||
| component: TwoColumnComponent, | component: TwoColumnComponent, | ||||
| canActivate: [AuthGuard], | canActivate: [AuthGuard], | ||||
| children: [ | children: [ | ||||
| @@ -29,12 +29,12 @@ const routes: Routes = [ | |||||
| ] | ] | ||||
| }, | }, | ||||
| { | { | ||||
| path: 'suppliers', | |||||
| path: 'supplier', | |||||
| component: TwoColumnComponent, | component: TwoColumnComponent, | ||||
| canActivate: [AuthGuard], | canActivate: [AuthGuard], | ||||
| children: [ | children: [ | ||||
| {path: '', component: PartnersComponent, data: {dataType: 'supplier'}}, | {path: '', component: PartnersComponent, data: {dataType: 'supplier'}}, | ||||
| {path: 'detail', component: PartnersDetailComponent, data: {dataType: 'supplier-detail'}}, | |||||
| {path: ':id', component: PartnersDetailComponent, data: {dataType: 'supplier-detail'}}, | |||||
| ] | ] | ||||
| }, | }, | ||||
| { | { | ||||
| @@ -43,7 +43,7 @@ const routes: Routes = [ | |||||
| canActivate: [AuthGuard], | canActivate: [AuthGuard], | ||||
| children: [ | children: [ | ||||
| {path: '', component: PartnersComponent, data: {dataType: 'service'}}, | {path: '', component: PartnersComponent, data: {dataType: 'service'}}, | ||||
| {path: 'detail', component: PartnersDetailComponent, data: {dataType: 'service-detail'}}, | |||||
| {path: ':id', component: PartnersDetailComponent, data: {dataType: 'service-detail'}}, | |||||
| ] | ] | ||||
| }, | }, | ||||
| { | { | ||||
| @@ -7,6 +7,7 @@ | |||||
| </a> | </a> | ||||
| </div> | </div> | ||||
| <div class="navbar-nav align-items-center"> | <div class="navbar-nav align-items-center"> | ||||
| <button (click)="copyTokenToClipboard()">Copy Token</button> | |||||
| <div class="pe-2 me-4 position-relative" data-bs-toggle="dropdown">Benachrichtigungen | <div class="pe-2 me-4 position-relative" data-bs-toggle="dropdown">Benachrichtigungen | ||||
| <span class="position-absolute top-0 start-100 translate-middle badge rounded-pill bg-danger"> | <span class="position-absolute top-0 start-100 translate-middle badge rounded-pill bg-danger"> | ||||
| 99+ | 99+ | ||||
| @@ -2,8 +2,7 @@ | |||||
| import {AccountService} from './_services'; | import {AccountService} from './_services'; | ||||
| import {User} from './_models'; | import {User} from './_models'; | ||||
| import {Subscription} from "rxjs"; | |||||
| import {PostJsonld, PostService} from "@app/core/api/v1"; | |||||
| import {PostService} from "@app/core/api/v1"; | |||||
| import {TranslateService} from "@ngx-translate/core"; | import {TranslateService} from "@ngx-translate/core"; | ||||
| @Component({ | @Component({ | ||||
| @@ -14,7 +13,6 @@ import {TranslateService} from "@ngx-translate/core"; | |||||
| export class AppComponent implements OnInit { | export class AppComponent implements OnInit { | ||||
| user?: User | null; | user?: User | null; | ||||
| constructor(private postService: PostService, private accountService: AccountService, translate: TranslateService) { | constructor(private postService: PostService, private accountService: AccountService, translate: TranslateService) { | ||||
| translate.setDefaultLang('de'); | translate.setDefaultLang('de'); | ||||
| translate.use('de'); | translate.use('de'); | ||||
| @@ -28,4 +26,13 @@ export class AppComponent implements OnInit { | |||||
| logout() { | logout() { | ||||
| this.accountService.logout(); | this.accountService.logout(); | ||||
| } | } | ||||
| copyTokenToClipboard() { | |||||
| const el = document.createElement('textarea'); | |||||
| el.value = this.user?.token !== undefined ? this.user.token : ""; | |||||
| document.body.appendChild(el); | |||||
| el.select(); | |||||
| document.execCommand('copy'); | |||||
| document.body.removeChild(el); | |||||
| } | |||||
| } | } | ||||
| @@ -2,7 +2,6 @@ | |||||
| <div class="pt-4"> | <div class="pt-4"> | ||||
| <div class="container"> | <div class="container"> | ||||
| <h1>Hi {{ user?.firstName }}!</h1> | <h1>Hi {{ user?.firstName }}!</h1> | ||||
| <button (click)="copyTokenToClipboard()">Copy Token</button> | |||||
| <p><a routerLink="/users">Manage Users</a></p> | <p><a routerLink="/users">Manage Users</a></p> | ||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| @@ -10,14 +9,14 @@ | |||||
| <div class="container"> | <div class="container"> | ||||
| <div class="row pt-4 pb-4 d-flex"> | <div class="row pt-4 pb-4 d-flex"> | ||||
| <div class="col d-flex"> | <div class="col d-flex"> | ||||
| <a class="card" routerLink="/customers" routerLinkActive="active"> | |||||
| <a class="card" routerLink="/customer" routerLinkActive="active"> | |||||
| <div class="card-body position-relative bi bi-emoji-heart-eyes"> | <div class="card-body position-relative bi bi-emoji-heart-eyes"> | ||||
| <h3 class="position-absolute m-0">Kunden</h3> | <h3 class="position-absolute m-0">Kunden</h3> | ||||
| </div> | </div> | ||||
| </a> | </a> | ||||
| </div> | </div> | ||||
| <div class="col d-flex"> | <div class="col d-flex"> | ||||
| <a class="card" routerLink="/suppliers" routerLinkActive="active"> | |||||
| <a class="card" routerLink="/supplier" routerLinkActive="active"> | |||||
| <div class="card-body position-relative bi bi-emoji-kiss"> | <div class="card-body position-relative bi bi-emoji-kiss"> | ||||
| <h3 class="position-absolute m-0">Dienstleister</h3> | <h3 class="position-absolute m-0">Dienstleister</h3> | ||||
| </div> | </div> | ||||
| @@ -1,16 +1,15 @@ | |||||
| import {Component, OnInit} from '@angular/core'; | import {Component, OnInit} from '@angular/core'; | ||||
| import { User } from '@app/_models'; | |||||
| import { AccountService } from '@app/_services'; | |||||
| import {MatCardModule} from "@angular/material/card"; | |||||
| import {User} from '@app/_models'; | |||||
| import {AccountService} from '@app/_services'; | |||||
| import {Subscription} from "rxjs"; | import {Subscription} from "rxjs"; | ||||
| import {PostJsonld, PostService, UserJsonld, UserService} from "@app/core/api/v1"; | import {PostJsonld, PostService, UserJsonld, UserService} from "@app/core/api/v1"; | ||||
| @Component({ | @Component({ | ||||
| templateUrl: 'home.component.html', | |||||
| styleUrl: 'home.component.scss' | |||||
| templateUrl: 'home.component.html', | |||||
| styleUrl: 'home.component.scss' | |||||
| }) | }) | ||||
| export class HomeComponent implements OnInit{ | |||||
| export class HomeComponent implements OnInit { | |||||
| user: User | null; | user: User | null; | ||||
| protected postSub: Subscription; | protected postSub: Subscription; | ||||
| protected posts: Array<PostJsonld>; | protected posts: Array<PostJsonld>; | ||||
| @@ -45,14 +44,4 @@ export class HomeComponent implements OnInit{ | |||||
| } | } | ||||
| ); | ); | ||||
| } | } | ||||
| copyTokenToClipboard() | |||||
| { | |||||
| const el = document.createElement('textarea'); | |||||
| el.value = this.user?.token !== undefined ? this.user.token : ""; | |||||
| document.body.appendChild(el); | |||||
| el.select(); | |||||
| document.execCommand('copy'); | |||||
| document.body.removeChild(el); | |||||
| } | |||||
| } | } | ||||
| @@ -2,14 +2,14 @@ | |||||
| <div class="col-2 pt-2" style="background: rgba(255,0,0,.7);"> | <div class="col-2 pt-2" style="background: rgba(255,0,0,.7);"> | ||||
| <ul class="nav flex-column"> | <ul class="nav flex-column"> | ||||
| <li class="nav-item mb-3"> | <li class="nav-item mb-3"> | ||||
| <a class="card" routerLink="/customers" routerLinkActive="active"> | |||||
| <a class="card" routerLink="/customer" routerLinkActive="active"> | |||||
| <div class="card-body position-relative bi bi-emoji-heart-eyes"> | <div class="card-body position-relative bi bi-emoji-heart-eyes"> | ||||
| <h3 class="position-absolute m-0">Kunden</h3> | <h3 class="position-absolute m-0">Kunden</h3> | ||||
| </div> | </div> | ||||
| </a> | </a> | ||||
| </li> | </li> | ||||
| <li class="nav-item mb-3"> | <li class="nav-item mb-3"> | ||||
| <a class="card" routerLink="/suppliers" routerLinkActive="active"> | |||||
| <a class="card" routerLink="/supplier" routerLinkActive="active"> | |||||
| <div class="card-body position-relative bi bi-emoji-kiss"> | <div class="card-body position-relative bi bi-emoji-kiss"> | ||||
| <h3 class="position-absolute m-0">Dienstleister</h3> | <h3 class="position-absolute m-0">Dienstleister</h3> | ||||
| </div> | </div> | ||||
| @@ -129,7 +129,8 @@ export class PartnersComponent implements OnInit, AfterViewInit { | |||||
| navigateToPartnerDetails(element: any) { | navigateToPartnerDetails(element: any) { | ||||
| const partner: PartnerJsonld = element as PartnerJsonld; | const partner: PartnerJsonld = element as PartnerJsonld; | ||||
| console.log(partner.type); | |||||
| console.log(ApiConverter.extractId(partner.id)); | console.log(ApiConverter.extractId(partner.id)); | ||||
| this.router.navigate(['/customers', ApiConverter.extractId(partner.id)]); | |||||
| this.router.navigate(['/' + partner.type, ApiConverter.extractId(partner.id)]); | |||||
| } | } | ||||
| } | } | ||||