import {Injectable} from '@angular/core'; import {Http, Response} from '@angular/http'; import {Headers, RequestOptions} from '@angular/http'; import {Observable} from 'rxjs/Rx'; import {ZenodoCommunityInfo} from './zenodoCommunityInfo'; import {EnvProperties} from '../../utils/properties/env-properties'; @Injectable() export class ZenodoCommunitiesService { constructor(private http:Http) { } getZenodoCommunities(properties:EnvProperties, url: string) { return this.http.get((properties.useCache)? (properties.cacheUrl+encodeURIComponent(url)) : url) .map(res => res.json()).map(res => [this.parseZenodoCommunities(res.hits.hits),res.hits.total]); } getZenodoCommunityById(properties:EnvProperties, url: string, openaireId:string) { return this.http.get((properties.useCache)? (properties.cacheUrl+encodeURIComponent(url)) : url) .map(res => res.json()).map(res => { var community = this.parseZenodoCommunity(res); community["openaireId"]=openaireId; return community; }); } parseZenodoCommunities(data: any): ZenodoCommunityInfo[] { let zenodoCommunities: ZenodoCommunityInfo[] = []; for (let i=0; i res.json()).map(res => res.hits.total); } }