Project

General

Profile

1
import {Component} from '@angular/core';
2
import {ActivatedRoute, Router} from "@angular/router";
3
import {StakeholderService} from "../../../openaireLibrary/monitor/services/stakeholder.service";
4
import {Subscriber} from "rxjs";
5
import {ConfigurationService} from "../../../openaireLibrary/utils/configuration/configuration.service";
6

    
7
@Component({
8
  selector: 'monitor-dataset',
9
  template: `
10
    <div id="page_content">
11
      <result-landing *ngIf="initialized" type="dataset" [communityId]="communityId" [piwikSiteId]="piwikSiteId"></result-landing>
12
    </div>
13
  `,
14
})
15
export class MonitorDatasetComponent {
16
  initialized: boolean = false;
17
  communityId;
18
  piwikSiteId;
19
  constructor(private route: ActivatedRoute,
20
              private router: Router,
21
              private stakeholderService: StakeholderService,  private configurationService: ConfigurationService) {
22
  }
23
  subscriptions = [];
24
  ngOnDestroy() {
25
    this.subscriptions.forEach(subscription => {
26
      if (subscription instanceof Subscriber) {
27
        subscription.unsubscribe();
28
      }
29
    });
30
  }
31
  ngOnInit() {
32
    this.subscriptions.push(this.route.params.subscribe(params => {
33
      if (params['stakeholder']) {
34
        this.subscriptions.push(this.stakeholderService.getStakeholderAsObservable().subscribe(stakeholder => {
35
          if (stakeholder) {
36
            this.initialized = true;
37
            this.communityId = stakeholder.alias;
38
            this.subscriptions.push(this.configurationService.communityInformationState.subscribe(portal => {
39
              if (portal) {
40
                this.piwikSiteId = portal.piwik;
41
              }
42
            }));
43
          }
44
        }));
45
      }
46
    }));
47
  }
48
}
49

    
(2-2/3)