mirror of https://github.com/Chocobozzz/PeerTube
53 lines
1.4 KiB
TypeScript
53 lines
1.4 KiB
TypeScript
|
import {Component, ElementRef, Inject, OnInit} from 'angular2/core';
|
||
|
import {Router} from 'angular2/router';
|
||
|
import {NgForm} from 'angular2/common';
|
||
|
|
||
|
import {Video} from '../../models/video';
|
||
|
|
||
|
declare var jQuery:any;
|
||
|
|
||
|
@Component({
|
||
|
selector: 'my-videos-add',
|
||
|
styleUrls: [ 'app/angular/videos/components/add/videos-add.component.css' ],
|
||
|
templateUrl: 'app/angular/videos/components/add/videos-add.component.html'
|
||
|
})
|
||
|
|
||
|
export class VideosAddComponent implements OnInit {
|
||
|
fileToUpload: any;
|
||
|
progressBar: { value: number; max: number; } = { value: 0, max: 0 };
|
||
|
|
||
|
private _form: any;
|
||
|
|
||
|
constructor(private _router: Router, private _elementRef: ElementRef) {}
|
||
|
|
||
|
ngOnInit() {
|
||
|
jQuery(this._elementRef.nativeElement).find('#input_video').fileupload({
|
||
|
singleFileUploads: true,
|
||
|
multipart: true,
|
||
|
url: '/api/v1/videos',
|
||
|
autoupload: false,
|
||
|
|
||
|
add: (e, data) => {
|
||
|
this._form = data;
|
||
|
this.fileToUpload = data['files'][0];
|
||
|
},
|
||
|
|
||
|
progressall: (e, data) => {
|
||
|
this.progressBar.value = data.loaded;
|
||
|
this.progressBar.max= data.total;
|
||
|
},
|
||
|
|
||
|
done: (e, data) => {
|
||
|
console.log('finished');
|
||
|
// Print all the videos once it's finished
|
||
|
this._router.navigate(['VideosList']);
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
|
||
|
uploadFile() {
|
||
|
this._form.formData = jQuery(this._elementRef.nativeElement).find('form').serializeArray();
|
||
|
this._form.submit();
|
||
|
}
|
||
|
}
|