2018-03-30 21:30:30 +02:00
|
|
|
import {Component, OnInit} from '@angular/core';
|
|
|
|
import {AuthenticationService} from '../model/network/authentication.service';
|
|
|
|
import {UserRoles} from '../../../common/entities/UserDTO';
|
|
|
|
import {NotificationService} from '../model/notification.service';
|
|
|
|
import {NotificationType} from '../../../common/entities/NotificationDTO';
|
|
|
|
import {NavigationService} from '../model/navigation.service';
|
|
|
|
import {I18n} from '@ngx-translate/i18n-polyfill';
|
2018-03-30 02:30:23 +02:00
|
|
|
|
2016-04-26 15:10:05 +02:00
|
|
|
@Component({
|
2018-05-04 01:17:08 +02:00
|
|
|
selector: 'app-admin',
|
2017-06-10 22:32:56 +02:00
|
|
|
templateUrl: './admin.component.html',
|
|
|
|
styleUrls: ['./admin.component.css']
|
2016-04-26 15:10:05 +02:00
|
|
|
})
|
2016-05-01 21:30:43 +02:00
|
|
|
export class AdminComponent implements OnInit {
|
|
|
|
|
2017-07-15 17:29:40 +02:00
|
|
|
simplifiedMode = true;
|
2018-03-30 02:30:23 +02:00
|
|
|
text = {
|
2018-03-30 21:30:30 +02:00
|
|
|
Advanced: 'Advanced',
|
|
|
|
Simplified: 'Simplified'
|
2018-03-30 02:30:23 +02:00
|
|
|
};
|
2017-07-15 17:29:40 +02:00
|
|
|
|
2017-07-09 14:23:50 +02:00
|
|
|
constructor(private _authService: AuthenticationService,
|
2017-07-15 12:47:11 +02:00
|
|
|
private _navigation: NavigationService,
|
2018-03-30 02:30:23 +02:00
|
|
|
public notificationService: NotificationService,
|
|
|
|
public i18n: I18n) {
|
2018-03-30 21:30:30 +02:00
|
|
|
this.text.Advanced = i18n('Advanced');
|
|
|
|
this.text.Simplified = i18n('Simplified');
|
2017-06-10 22:32:56 +02:00
|
|
|
}
|
2016-04-26 15:10:05 +02:00
|
|
|
|
2017-06-10 22:32:56 +02:00
|
|
|
ngOnInit() {
|
2017-07-08 12:43:42 +02:00
|
|
|
if (!this._authService.isAuthenticated()
|
|
|
|
|| this._authService.user.value.role < UserRoles.Admin) {
|
2017-07-15 12:47:11 +02:00
|
|
|
this._navigation.toLogin();
|
2017-06-10 22:32:56 +02:00
|
|
|
return;
|
2016-04-26 15:10:05 +02:00
|
|
|
}
|
2017-06-10 22:32:56 +02:00
|
|
|
}
|
2016-04-26 15:10:05 +02:00
|
|
|
|
2017-07-14 09:28:52 +02:00
|
|
|
public getCss(type: NotificationType) {
|
|
|
|
switch (type) {
|
|
|
|
case NotificationType.error:
|
2018-03-30 21:30:30 +02:00
|
|
|
return 'danger';
|
2017-07-14 09:28:52 +02:00
|
|
|
case NotificationType.warning:
|
2018-03-30 21:30:30 +02:00
|
|
|
return 'warning';
|
2017-07-14 09:28:52 +02:00
|
|
|
case NotificationType.info:
|
2018-03-30 21:30:30 +02:00
|
|
|
return 'info';
|
2017-07-14 09:28:52 +02:00
|
|
|
}
|
2018-03-30 21:30:30 +02:00
|
|
|
return 'info';
|
2017-07-14 09:28:52 +02:00
|
|
|
}
|
|
|
|
|
2016-04-26 15:10:05 +02:00
|
|
|
}
|
|
|
|
|
2016-05-03 14:29:24 +02:00
|
|
|
|
|
|
|
|