X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=client%2Fsrc%2Fapp%2Fshared%2Fvideo%2Fvideo.service.ts;h=9962021545a6def2fa95527ed73f23222f3845b5;hb=e612209767ebe1deb0af7688c96b7f979bb52b44;hp=9adf46495c427c89cf3f897ef935ceb0aa3f7e65;hpb=ba430d7516bc5b1324b60571ba7594460969b7fb;p=oweals%2Fpeertube.git diff --git a/client/src/app/shared/video/video.service.ts b/client/src/app/shared/video/video.service.ts index 9adf46495..996202154 100644 --- a/client/src/app/shared/video/video.service.ts +++ b/client/src/app/shared/video/video.service.ts @@ -15,7 +15,7 @@ import { } from '../../../../../shared/models/videos' import { FeedFormat } from '../../../../../shared/models/feeds/feed-format.enum' import { environment } from '../../../environments/environment' -import { ComponentPagination } from '../rest/component-pagination.model' +import { ComponentPaginationLight } from '../rest/component-pagination.model' import { RestExtractor } from '../rest/rest-extractor.service' import { RestService } from '../rest/rest.service' import { UserService } from '../users/user.service' @@ -34,7 +34,7 @@ import { I18n } from '@ngx-translate/i18n-polyfill' export interface VideosProvider { getVideos (parameters: { - videoPagination: ComponentPagination, + videoPagination: ComponentPaginationLight, sort: VideoSortField, filter?: VideoFilter, categoryOneOf?: number, @@ -121,14 +121,15 @@ export class VideoService implements VideosProvider { .pipe(catchError(err => this.restExtractor.handleError(err))) } - getMyVideos (videoPagination: ComponentPagination, sort: VideoSortField): Observable> { + getMyVideos (videoPagination: ComponentPaginationLight, sort: VideoSortField, search?: string): Observable> { const pagination = this.restService.componentPaginationToRestPagination(videoPagination) let params = new HttpParams() params = this.restService.addRestGetParams(params, pagination, sort) + params = this.restService.addObjectParams(params, { search }) return this.authHttp - .get>(UserService.BASE_USERS_URL + '/me/videos', { params }) + .get>(UserService.BASE_USERS_URL + 'me/videos', { params }) .pipe( switchMap(res => this.extractVideos(res)), catchError(err => this.restExtractor.handleError(err)) @@ -137,7 +138,7 @@ export class VideoService implements VideosProvider { getAccountVideos ( account: Account, - videoPagination: ComponentPagination, + videoPagination: ComponentPaginationLight, sort: VideoSortField ): Observable> { const pagination = this.restService.componentPaginationToRestPagination(videoPagination) @@ -155,7 +156,7 @@ export class VideoService implements VideosProvider { getVideoChannelVideos ( videoChannel: VideoChannel, - videoPagination: ComponentPagination, + videoPagination: ComponentPaginationLight, sort: VideoSortField ): Observable> { const pagination = this.restService.componentPaginationToRestPagination(videoPagination) @@ -172,15 +173,18 @@ export class VideoService implements VideosProvider { } getUserSubscriptionVideos (parameters: { - videoPagination: ComponentPagination, - sort: VideoSortField + videoPagination: ComponentPaginationLight, + sort: VideoSortField, + skipCount?: boolean }): Observable> { - const { videoPagination, sort } = parameters + const { videoPagination, sort, skipCount } = parameters const pagination = this.restService.componentPaginationToRestPagination(videoPagination) let params = new HttpParams() params = this.restService.addRestGetParams(params, pagination, sort) + if (skipCount) params = params.set('skipCount', skipCount + '') + return this.authHttp .get>(UserSubscriptionService.BASE_USER_SUBSCRIPTIONS_URL + '/videos', { params }) .pipe( @@ -190,26 +194,23 @@ export class VideoService implements VideosProvider { } getVideos (parameters: { - videoPagination: ComponentPagination, + videoPagination: ComponentPaginationLight, sort: VideoSortField, filter?: VideoFilter, categoryOneOf?: number, - languageOneOf?: string[] + languageOneOf?: string[], + skipCount?: boolean }): Observable> { - const { videoPagination, sort, filter, categoryOneOf, languageOneOf } = parameters + const { videoPagination, sort, filter, categoryOneOf, languageOneOf, skipCount } = parameters const pagination = this.restService.componentPaginationToRestPagination(videoPagination) let params = new HttpParams() params = this.restService.addRestGetParams(params, pagination, sort) - if (filter) { - params = params.set('filter', filter) - } - - if (categoryOneOf) { - params = params.set('categoryOneOf', categoryOneOf + '') - } + if (filter) params = params.set('filter', filter) + if (categoryOneOf) params = params.set('categoryOneOf', categoryOneOf + '') + if (skipCount) params = params.set('skipCount', skipCount + '') if (languageOneOf) { for (const l of languageOneOf) {