uoa-repository-manager-ui/src/app/pages/landing/landing.component.ts

57 lines
1.5 KiB
TypeScript
Executable File

import { Component, OnInit } from '@angular/core';
import { UsageStatsSummary } from '../../domain/typeScriptClasses';
import { AuthenticationService } from '../../services/authentication.service';
import { StatisticsService } from '../../services/statistics.service';
import { Router } from '@angular/router';
@Component ({
selector: 'app-landing',
templateUrl: './landing.component.html'
})
export class LandingComponent implements OnInit {
statisticsNumbers: UsageStatsSummary;
inBeta: boolean;
constructor(private authService: AuthenticationService,
private statsService: StatisticsService,
private router: Router) { }
ngOnInit() {
this.getStatisticsNumbers();
const baseUrl = window.location.origin;
this.inBeta = ( baseUrl.includes('beta') || baseUrl.includes('athenarc') );
}
login() {
this.authService.loginWithState();
}
getStatisticsNumbers() {
this.statsService.getStatisticsNumbers().subscribe(
res => {
this.statisticsNumbers = res;
// this.statisticsNumbers.lastYearUsagestats = JSON.parse(res['lastYearUsagestats'].toString());
},
error => console.log(error),
() => {
console.log('statisticsNumbers is', JSON.stringify(this.statisticsNumbers));
}
);
}
goToPage(pageUrl: string) {
if (this.authService.getIsUserLoggedIn()) {
this.router.navigate([pageUrl]);
} else {
this.authService.redirectUrl = pageUrl;
this.login();
}
}
}