X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fapp%2F%2Badmin%2Fjobs%2Fshared%2Fjob.service.ts;h=6441eaac1f380e65652c0f35030452e3f4c22d1c;hb=db400f447a9f7aae1c56fa25396e93069744483f;hp=49f1ab6f56f19114b6eac9acf4cbf4937d58f8bf;hpb=5cd80545422bba855cc9a730a2e13cc9d982c34b;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/app/+admin/jobs/shared/job.service.ts b/client/src/app/+admin/jobs/shared/job.service.ts index 49f1ab6f5..6441eaac1 100644 --- a/client/src/app/+admin/jobs/shared/job.service.ts +++ b/client/src/app/+admin/jobs/shared/job.service.ts @@ -1,17 +1,17 @@ +import { catchError, map } from 'rxjs/operators' import { HttpClient, HttpParams } from '@angular/common/http' import { Injectable } from '@angular/core' import { SortMeta } from 'primeng/primeng' -import 'rxjs/add/operator/catch' -import 'rxjs/add/operator/map' -import { Observable } from 'rxjs/Observable' +import { Observable } from 'rxjs' import { ResultList } from '../../../../../../shared' -import { Job } from '../../../../../../shared/models/job.model' - +import { JobState } from '../../../../../../shared/models' +import { Job } from '../../../../../../shared/models/server/job.model' +import { environment } from '../../../../environments/environment' import { RestExtractor, RestPagination, RestService } from '../../../shared' @Injectable() export class JobService { - private static BASE_JOB_URL = API_URL + '/api/v1/jobs' + private static BASE_JOB_URL = environment.apiUrl + '/api/v1/jobs' constructor ( private authHttp: HttpClient, @@ -19,12 +19,21 @@ export class JobService { private restExtractor: RestExtractor ) {} - getJobs (pagination: RestPagination, sort: SortMeta): Observable> { + getJobs (state: JobState, pagination: RestPagination, sort: SortMeta): Observable> { let params = new HttpParams() params = this.restService.addRestGetParams(params, pagination, sort) - return this.authHttp.get>(JobService.BASE_JOB_URL, { params }) - .map(res => this.restExtractor.convertResultListDateToHuman(res)) - .catch(err => this.restExtractor.handleError(err)) + return this.authHttp.get>(JobService.BASE_JOB_URL + '/' + state, { params }) + .pipe( + map(res => this.restExtractor.convertResultListDateToHuman(res, [ 'createdAt', 'updatedAt' ])), + map(res => this.restExtractor.applyToResultListData(res, this.prettyPrintData)), + catchError(err => this.restExtractor.handleError(err)) + ) + } + + private prettyPrintData (obj: Job) { + const data = JSON.stringify(obj.data, null, 2) + + return Object.assign(obj, { data }) } }