summaryrefslogtreecommitdiffstats
path: root/ui/src/components/navbar.tsx
diff options
context:
space:
mode:
authorDessalines <tyhou13@gmx.com>2019-04-20 11:17:00 -0700
committerDessalines <tyhou13@gmx.com>2019-04-20 11:17:00 -0700
commit682413613e75618489d262bd033c3101da96abd7 (patch)
treef3bc26c1f2c1f75bdfcf7b6e5b22f24e93c7a757 /ui/src/components/navbar.tsx
parente14e6e53cd969039087df17bc4407d1b7444e05d (diff)
Mostly working, before merge
Diffstat (limited to 'ui/src/components/navbar.tsx')
-rw-r--r--ui/src/components/navbar.tsx16
1 files changed, 12 insertions, 4 deletions
diff --git a/ui/src/components/navbar.tsx b/ui/src/components/navbar.tsx
index be98912e..fed49e6f 100644
--- a/ui/src/components/navbar.tsx
+++ b/ui/src/components/navbar.tsx
@@ -7,12 +7,14 @@ interface NavbarState {
isLoggedIn: boolean;
expanded: boolean;
expandUserDropdown: boolean;
+ unreadCount: number;
}
export class Navbar extends Component<any, NavbarState> {
emptyState: NavbarState = {
- isLoggedIn: UserService.Instance.user !== undefined,
+ isLoggedIn: (UserService.Instance.user !== undefined),
+ unreadCount: 0,
expanded: false,
expandUserDropdown: false
}
@@ -24,8 +26,9 @@ export class Navbar extends Component<any, NavbarState> {
// Subscribe to user changes
UserService.Instance.sub.subscribe(user => {
- let loggedIn: boolean = user !== undefined;
- this.setState({isLoggedIn: loggedIn});
+ this.state.isLoggedIn = user.user !== undefined;
+ this.state.unreadCount = user.unreadCount;
+ this.setState(this.state);
});
}
@@ -65,9 +68,13 @@ export class Navbar extends Component<any, NavbarState> {
<ul class="navbar-nav ml-auto mr-2">
{this.state.isLoggedIn ?
<>
+ {
<li className="nav-item">
- <Link class="nav-link" to="/communities">🖂</Link>
+ <Link class="nav-link" to="/inbox">🖂
+ {this.state.unreadCount> 0 && <span class="badge badge-light">{this.state.unreadCount}</span>}
+ </Link>
</li>
+ }
<li className={`nav-item dropdown ${this.state.expandUserDropdown && 'show'}`}>
<a class="pointer nav-link dropdown-toggle" onClick={linkEvent(this, this.expandUserDropdown)} role="button">
{UserService.Instance.user.username}
@@ -95,6 +102,7 @@ export class Navbar extends Component<any, NavbarState> {
handleLogoutClick(i: Navbar) {
i.state.expandUserDropdown = false;
UserService.Instance.logout();
+ i.context.router.history.push('/');
}
handleOverviewClick(i: Navbar) {