aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ufund-ui/src/app/app.component.html4
-rw-r--r--ufund-ui/src/app/app.component.ts19
-rw-r--r--ufund-ui/src/app/components/login/login.component.html1
-rw-r--r--ufund-ui/src/styles.css2
4 files changed, 15 insertions, 11 deletions
diff --git a/ufund-ui/src/app/app.component.html b/ufund-ui/src/app/app.component.html
index b41a225..89075e1 100644
--- a/ufund-ui/src/app/app.component.html
+++ b/ufund-ui/src/app/app.component.html
@@ -17,8 +17,8 @@
<a routerLink="/cupboard">Cupboard</a>
<a routerLink="/basket">Basket</a>
<!-- <span>{{currentUser$ | async}}</span>-->
- <button *ngIf="currentUser$.value != 'Logged out.'" onclick="location.href='/';"> Log Out</button>
- <button *ngIf="currentUser$.value == 'Logged out.'" routerLink="/login"> Log In</button>
+ <button *ngIf="currentUser | async" (click)="logout()"> Log Out</button>
+ <button *ngIf="!(currentUser | async)" (click)="login()"> Log In</button>
</div>
</div>
diff --git a/ufund-ui/src/app/app.component.ts b/ufund-ui/src/app/app.component.ts
index 7d9afcd..8068659 100644
--- a/ufund-ui/src/app/app.component.ts
+++ b/ufund-ui/src/app/app.component.ts
@@ -3,6 +3,8 @@ import {BehaviorSubject, Observable} from 'rxjs';
import { DOCUMENT } from '@angular/common';
import {AuthService} from './services/auth.service';
import {ToastType} from './services/toasts.service';
+import {User} from './models/User';
+import {ActivatedRoute, Router} from '@angular/router';
interface ToastProps {
type: ToastType, message: string, action?: {label: string, onAction: () => void}
@@ -16,12 +18,14 @@ interface ToastProps {
})
export class AppComponent implements OnInit {
// title = 'ufund-ui';
- currentUser$: BehaviorSubject<string> = new BehaviorSubject<string>("Logged out.");
+ currentUser?: BehaviorSubject<User | null>;
toast = new BehaviorSubject<ToastProps>({type: ToastType.INFO, message: "testToast"})
constructor(
private authService: AuthService,
+ private router: Router,
+ private route: ActivatedRoute,
@Inject(DOCUMENT) private document: Document
) {}
@@ -30,14 +34,15 @@ export class AppComponent implements OnInit {
}
ngOnInit() {
- this.authService.getCurrentUserSubject().subscribe(r => {
- this.currentUser$?.next(r
- ? "Logged in as " + r.username
- : "Logged out."
- )
- })
+ this.currentUser = this.authService.getCurrentUserSubject()
}
+ login() {
+ this.router.navigate(['/login'], {queryParams: {redir: this.router.url}});
+ }
+ logout() {
+ location.reload()
+ }
}
diff --git a/ufund-ui/src/app/components/login/login.component.html b/ufund-ui/src/app/components/login/login.component.html
index 743b1b3..e1c3e2a 100644
--- a/ufund-ui/src/app/components/login/login.component.html
+++ b/ufund-ui/src/app/components/login/login.component.html
@@ -1,5 +1,4 @@
<div id="box">
- <span *ngIf="next" style="color: red">You must be logged in to view this page</span>
<h1>Login</h1>
<input placeholder="Username" type="text" #username>
<input placeholder="Password" type="password" #password>
diff --git a/ufund-ui/src/styles.css b/ufund-ui/src/styles.css
index b3ecbd0..b152e61 100644
--- a/ufund-ui/src/styles.css
+++ b/ufund-ui/src/styles.css
@@ -32,7 +32,7 @@ input {
}
}
-button, .button {
+button, input[type=button], input[type=reset], input[type=submit], .button {
font-size: 14pt;
padding: 6px 16px;
border-radius: 9999px;