Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | 6x 6x 6x 6x 6x 6x 6x 6x 6x 3x 3x 3x 3x 3x 6x 3x 3x 3x 3x 3x 3x 3x 3x 3x 3x 6x 2x 6x 3x 3x 3x 3x 3x 3x 3x 3x 6x | import { Component, OnDestroy, OnInit } from '@angular/core';
import { detect } from 'detect-browser';
import { BsModalRef } from 'ngx-bootstrap/modal';
import { Subscription } from 'rxjs';
import { environment } from '../../../../environments/environment';
import { UserService } from '../../../shared/api/user.service';
import { AppConstants } from '../../../shared/constants/app.constants';
import { Permission } from '../../../shared/models/permissions';
import { AuthStorageService } from '../../../shared/services/auth-storage.service';
import { SummaryService } from '../../../shared/services/summary.service';
@Component({
selector: 'cd-about',
template: require('./about.component.html'),
styles: []
})
export class AboutComponent implements OnInit, OnDestroy {
modalVariables: any;
versionNumber: string;
versionHash: string;
versionName: string;
subs: Subscription;
userPermission: Permission;
projectConstants: typeof AppConstants;
hostAddr: string;
copyright: string;
constructor(
public modalRef: BsModalRef,
private summaryService: SummaryService,
private userService: UserService,
private authStorageService: AuthStorageService
) {
this.userPermission = this.authStorageService.getPermissions().user;
}
ngOnInit() {
this.copyright = 'Copyright(c) ' + environment.year + ' Ceph contributors.';
this.projectConstants = AppConstants;
this.hostAddr = window.location.hostname;
this.modalVariables = this.setVariables();
this.subs = this.summaryService.subscribe((summary: any) => {
if (!summary) {
return;
}
const version = summary.version.replace('ceph version ', '').split(' ');
this.hostAddr = summary.mgr_host.replace(/(^\w+:|^)\/\//, '').replace(/\/$/, '');
this.versionNumber = version[0];
this.versionHash = version[1];
this.versionName = version.slice(2, version.length).join(' ');
});
}
ngOnDestroy(): void {
this.subs.unsubscribe();
}
setVariables() {
const project = {} as any;
project.user = localStorage.getItem('dashboard_username');
project.role = 'user';
if (this.userPermission.read) {
this.userService.get(project.user).subscribe((data: any) => {
project.role = data.roles;
});
}
const browser = detect();
project.browserName = browser && browser.name ? browser.name : 'Not detected';
project.browserVersion = browser && browser.version ? browser.version : 'Not detected';
project.browserOS = browser && browser.os ? browser.os : 'Not detected';
return project;
}
}
|