connect/src/app/landingPages/publication/publication.component.ts

41 lines
1.1 KiB
TypeScript

import {Component} from '@angular/core';
import {ActivatedRoute} from '@angular/router';
import {PiwikHelper} from '../../utils/piwikHelper';
import {ConnectHelper} from '../../openaireLibrary/connect/connectHelper';
import {Subscriber} from "rxjs";
@Component({
selector: 'openaire-publication',
template: `
<result-landing type="publication" [piwikSiteId]="piwikSiteId" [communityId]="communityId"></result-landing>
`,
})
export class OpenairePublicationComponent {
piwikSiteId = null;
communityId = null;
private sub;
constructor(private route: ActivatedRoute) {
this.sub = this.route.data
.subscribe((data: { envSpecific: any }) => {
this.route.queryParams.subscribe(params => {
this.communityId = ConnectHelper.getCommunityFromDomain(data.envSpecific.domain);
if (!this.communityId) {
this.communityId = params['communityId'];
}
this.piwikSiteId = PiwikHelper.getSiteId(this.communityId, data.envSpecific.environment);
});
});
}
ngOnInit() {
}
ngOnDestroy() {
if (this.sub instanceof Subscriber) {
this.sub.unsubscribe();
}
}
}