2023-10-27 14:53:59 +02:00
|
|
|
import {Component, OnInit} from '@angular/core';
|
2023-10-23 15:46:00 +02:00
|
|
|
import {properties} from "../environments/environment";
|
|
|
|
import {ActivatedRoute, Router} from "@angular/router";
|
2023-10-24 14:29:36 +02:00
|
|
|
import {MenuItem} from "./openaireLibrary/sharedComponents/menu";
|
2023-10-27 14:53:59 +02:00
|
|
|
import {Header} from "./openaireLibrary/sharedComponents/navigationBar.component";
|
|
|
|
import {BaseComponent} from "./openaireLibrary/sharedComponents/base/base.component";
|
|
|
|
import {StakeholderEntities, stakeholderTypes} from "./openaireLibrary/monitor/entities/stakeholder";
|
|
|
|
import {Option} from "./openaireLibrary/sharedComponents/input/input.component";
|
2023-11-02 13:56:35 +01:00
|
|
|
import {ConfigurationService} from "./openaireLibrary/utils/configuration/configuration.service";
|
|
|
|
import {Portal} from "./openaireLibrary/utils/entities/adminTool/portal";
|
2023-11-02 15:39:57 +01:00
|
|
|
import {Irish} from "./shared/irish";
|
2023-10-23 14:26:21 +02:00
|
|
|
|
|
|
|
@Component({
|
|
|
|
selector: 'app-root',
|
|
|
|
template: `
|
2023-10-23 15:46:00 +02:00
|
|
|
<div *ngIf="loading">
|
|
|
|
<loading [full]="true"></loading>
|
|
|
|
</div>
|
|
|
|
<div *ngIf="!loading">
|
|
|
|
<div>
|
|
|
|
<div id="modal-container"></div>
|
2023-10-24 14:29:36 +02:00
|
|
|
<navbar *ngIf="hasHeader" portal="irish_monitor" [menuItems]="menuItems" [showMenu]="true" [header]="header"></navbar>
|
2023-10-23 15:46:00 +02:00
|
|
|
<div>
|
|
|
|
<main>
|
|
|
|
<router-outlet></router-outlet>
|
|
|
|
</main>
|
|
|
|
<bottom id="bottom" [centered]="true" [properties]="properties" [showMenuItems]="true"></bottom>
|
|
|
|
</div>
|
|
|
|
<div *ngIf="view" class="preview uk-text-small uk-flex uk-flex-middle">
|
|
|
|
<span>You are currently in a <span class="uk-text-bold">"Preview"</span> mode. <span class="uk-visible@m"><a (click)="removeView()">The current view</a> of this dashboard may differ.</span></span>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
2023-10-23 14:26:21 +02:00
|
|
|
`,
|
|
|
|
styles: []
|
|
|
|
})
|
2023-10-27 14:53:59 +02:00
|
|
|
export class AppComponent extends BaseComponent implements OnInit {
|
2023-10-23 14:26:21 +02:00
|
|
|
title = 'irish-monitor';
|
2023-10-23 15:46:00 +02:00
|
|
|
loading: boolean = false;
|
2023-10-27 14:53:59 +02:00
|
|
|
stakeholderEntities = StakeholderEntities;
|
2023-10-23 15:46:00 +02:00
|
|
|
view: boolean = false;
|
2023-10-24 14:29:36 +02:00
|
|
|
hasHeader: boolean = true;
|
2023-10-27 14:53:59 +02:00
|
|
|
header: Header = {
|
2023-10-24 14:29:36 +02:00
|
|
|
route: "/",
|
|
|
|
title: "Noami",
|
|
|
|
logoUrl: "",
|
|
|
|
logoSmallUrl: null,
|
|
|
|
position: 'left',
|
2023-10-27 14:53:59 +02:00
|
|
|
badge: true,
|
2023-10-24 14:29:36 +02:00
|
|
|
};
|
2023-10-27 14:53:59 +02:00
|
|
|
menuItems:MenuItem[] = [];
|
2023-11-02 15:39:57 +01:00
|
|
|
irish: Irish = new Irish();
|
2023-10-27 14:53:59 +02:00
|
|
|
|
2023-10-23 15:46:00 +02:00
|
|
|
constructor(private route: ActivatedRoute,
|
2023-11-02 13:56:35 +01:00
|
|
|
private router: Router, private configurationService: ConfigurationService) {
|
2023-10-27 14:53:59 +02:00
|
|
|
super();
|
2023-11-02 15:39:57 +01:00
|
|
|
configurationService.initStaticPortal(this.irish.portal);
|
2023-11-02 13:56:35 +01:00
|
|
|
//Test track event
|
|
|
|
// let json = {test: "json"}
|
|
|
|
// this._piwikService.doTrackEvent(properties,"test", properties.piwikSiteId,location.href,"Linking", "Link", JSON.stringify(json) )
|
|
|
|
|
2023-10-27 14:53:59 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
ngOnInit() {
|
|
|
|
this.initialize();
|
|
|
|
}
|
|
|
|
|
|
|
|
initialize() {
|
|
|
|
this.menuItems = [
|
|
|
|
new MenuItem("national", this.stakeholderEntities.COUNTRY + ' ' + this.stakeholderEntities.STAKEHOLDER, "", "/", false, [], null, {}, null, null, null, null),
|
|
|
|
new MenuItem("rpo", this.stakeholderEntities.ORGANIZATION + ' ' + this.stakeholderEntities.STAKEHOLDERS, "", "/rpo", false, [], null, {}, null, null, null, null),
|
|
|
|
new MenuItem("rfo", this.stakeholderEntities.FUNDER + ' ' + this.stakeholderEntities.STAKEHOLDERS, "", "/rfo", false, [], null, {}, null, null, null, null),
|
|
|
|
new MenuItem("researcher", "Researcher Monitors", "", "/researcher", false, [], null, {}, null, null, null, null),
|
|
|
|
new MenuItem("repository", "Repository Monitors", "", "/", false, [], null, {}, null, null, null, null),
|
|
|
|
new MenuItem("upload-dois", "Upload DOIs", "", "/upload-dois", false, [], null, {}, null, null, null, null)
|
|
|
|
];
|
2023-10-23 15:46:00 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
public removeView() {
|
|
|
|
this.router.navigate([], {relativeTo: this.route});
|
|
|
|
}
|
2023-10-23 14:26:21 +02:00
|
|
|
}
|