X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fangular%2Fvideos%2Fcomponents%2Flist%2Fvideos-list.component.ts;h=6fc0c1f04b290f2f79ec271bace64ca04c59c082;hb=46246b5f194caafba4e3a72e9365acd8b35785de;hp=e5af87448ac2a50fca4387416816ea48ee137a6f;hpb=dc8bc31be517a53e8fbe7100cfe45cd73f596de0;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/angular/videos/components/list/videos-list.component.ts b/client/angular/videos/components/list/videos-list.component.ts index e5af87448..6fc0c1f04 100644 --- a/client/angular/videos/components/list/videos-list.component.ts +++ b/client/angular/videos/components/list/videos-list.component.ts @@ -1,39 +1,58 @@ -import {Component, OnInit} from 'angular2/core'; -import {ROUTER_DIRECTIVES} from 'angular2/router'; +import { Component, OnInit } from '@angular/core'; +import { ROUTER_DIRECTIVES, RouteParams } from '@angular/router-deprecated'; -import {VideosService} from '../../services/videos.service'; -import {Video} from '../../models/video'; +import { AuthService } from '../../../users/services/auth.service'; +import { User } from '../../../users/models/user'; +import { VideosService } from '../../videos.service'; +import { Video } from '../../video'; +import { VideoMiniatureComponent } from './video-miniature.component'; @Component({ selector: 'my-videos-list', styleUrls: [ 'app/angular/videos/components/list/videos-list.component.css' ], templateUrl: 'app/angular/videos/components/list/videos-list.component.html', - directives: [ ROUTER_DIRECTIVES ] + directives: [ ROUTER_DIRECTIVES, VideoMiniatureComponent ] }) export class VideosListComponent implements OnInit { - videos: Video[]; + user: User = null; + videos: Video[] = []; + + private search: string; constructor( - private _videosService: VideosService - ) { } + private _authService: AuthService, + private _videosService: VideosService, + routeParams: RouteParams + ) { + this.search = routeParams.get('search'); + } ngOnInit() { + if (this._authService.isLoggedIn()) { + this.user = User.load(); + } + this.getVideos(); } getVideos() { - this._videosService.getVideos().subscribe( + let observable = null; + + if (this.search !== null) { + observable = this._videosService.searchVideos(this.search); + } else { + observable = this._videosService.getVideos(); + } + + observable.subscribe( videos => this.videos = videos, error => alert(error) ); } - removeVideo(id: string) { - this._videosService.removeVideo(id).subscribe( - status => this.getVideos(), - error => alert(error) - ) + onRemoved(video: Video): void { + this.videos.splice(this.videos.indexOf(video), 1); } }