UNPKG

osmos

Version:

OSMOS - Symbiosys

55 lines (48 loc) 1.45 kB
import {bindable, inject} from 'aurelia-framework'; import { IdentityManager } from 'osmos/osmos-js/identityManager'; import { Redirect, Router } from 'aurelia-router'; @inject(IdentityManager, Router) export class OsUserbadgeCustomElement { @bindable firstName; @bindable lastName; @bindable link; constructor(identityManager, router){ this.router = router; this._identityManager = identityManager; this.initials = ''; this.link = false; } attached() { if(this.lastName && this.firstName) { this.initials = this.firstName[0] + this.lastName[0]; } document.addEventListener('click', (e) => { if(this.activeBadge) { this.activeBadge = false; return; } let badge = document.querySelector('os-userbadge'); let el = e.srcElement || e.target; if(el != badge) { let userbadge = document.querySelector('os-userbadge .os-userbadge'); if(userbadge.classList.contains('visible')) { userbadge.classList.remove('visible'); } } }); } showUserbadgeNav() { let badge = document.querySelector('os-userbadge .os-userbadge'); if(badge.classList.contains('visible')) { badge.classList.remove('visible'); } else { this.activeBadge = true; badge.classList.add('visible'); } } logout() { this._identityManager.logout(); this.userInfo = null; this.router.navigate('login'); } }