1 import {Injectable} from '@angular/core';
2 import {Observable} from 'rxjs/Observable';
3 import {Observer} from 'rxjs/Observer';
4 import {Router, Resolve, RouterStateSnapshot,
5 ActivatedRouteSnapshot} from '@angular/router';
6 import {ServerStoreService} from '@eg/core/server-store.service';
7 import {NetService} from '@eg/core/net.service';
8 import {OrgService} from '@eg/core/org.service';
9 import {AuthService} from '@eg/core/auth.service';
10 import {PcrudService} from '@eg/core/pcrud.service';
11 import {CatalogService} from '@eg/share/catalog/catalog.service';
12 import {StaffCatalogService} from './catalog.service';
15 export class CatalogResolver implements Resolve<Promise<any[]>> {
18 private router: Router,
19 private store: ServerStoreService,
20 private org: OrgService,
21 private net: NetService,
22 private auth: AuthService,
23 private cat: CatalogService,
24 private staffCat: StaffCatalogService
28 route: ActivatedRouteSnapshot,
29 state: RouterStateSnapshot): Promise<any[]> {
31 console.debug('CatalogResolver:resolve()');
34 this.cat.fetchCcvms(),
40 fetchSettings(): Promise<any> {
44 this.store.getItem('eg.search.search_lib').then(
45 id => this.staffCat.defaultSearchOrg = this.org.get(id)
50 this.store.getItem('eg.search.pref_lib').then(
51 id => this.staffCat.prefOrg = this.org.get(id)
55 return Promise.all(promises);