X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fapp%2Fvideos%2F%2Bvideo-watch%2Fmodal%2Fvideo-report.component.ts;h=911f3b4479e888b0757e324bcf17b7376fa9af51;hb=f8b2c1b4f509c037b9650cca2c5befd21f056df3;hp=d9768fdac830e3e5947bd5f310aa41a0480c3a84;hpb=e309822b93d9b69f30cbe830ef3d09dfdb2c13b2;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/app/videos/+video-watch/modal/video-report.component.ts b/client/src/app/videos/+video-watch/modal/video-report.component.ts index d9768fdac..911f3b447 100644 --- a/client/src/app/videos/+video-watch/modal/video-report.component.ts +++ b/client/src/app/videos/+video-watch/modal/video-report.component.ts @@ -1,11 +1,12 @@ import { Component, Input, OnInit, ViewChild } from '@angular/core' -import { NotificationsService } from 'angular2-notifications' -import { ModalDirective } from 'ngx-bootstrap/modal' +import { Notifier } from '@app/core' import { FormReactive, VideoAbuseService } from '../../../shared/index' import { VideoDetails } from '../../../shared/video/video-details.model' import { I18n } from '@ngx-translate/i18n-polyfill' import { FormValidatorService } from '@app/shared/forms/form-validators/form-validator.service' import { VideoAbuseValidatorsService } from '@app/shared/forms/form-validators/video-abuse-validators.service' +import { NgbModal } from '@ng-bootstrap/ng-bootstrap' +import { NgbModalRef } from '@ng-bootstrap/ng-bootstrap/modal/modal-ref' @Component({ selector: 'my-video-report', @@ -15,20 +16,35 @@ import { VideoAbuseValidatorsService } from '@app/shared/forms/form-validators/v export class VideoReportComponent extends FormReactive implements OnInit { @Input() video: VideoDetails = null - @ViewChild('modal') modal: ModalDirective + @ViewChild('modal') modal: NgbModal error: string = null + private openedModal: NgbModalRef + constructor ( protected formValidatorService: FormValidatorService, + private modalService: NgbModal, private videoAbuseValidatorsService: VideoAbuseValidatorsService, private videoAbuseService: VideoAbuseService, - private notificationsService: NotificationsService, + private notifier: Notifier, private i18n: I18n ) { super() } + get currentHost () { + return window.location.host + } + + get originHost () { + if (this.isRemoteVideo()) { + return this.video.account.host + } + + return '' + } + ngOnInit () { this.buildForm({ reason: this.videoAbuseValidatorsService.VIDEO_ABUSE_REASON @@ -36,11 +52,12 @@ export class VideoReportComponent extends FormReactive implements OnInit { } show () { - this.modal.show() + this.openedModal = this.modalService.open(this.modal, { keyboard: false }) } hide () { - this.modal.hide() + this.openedModal.close() + this.openedModal = null } report () { @@ -49,11 +66,15 @@ export class VideoReportComponent extends FormReactive implements OnInit { this.videoAbuseService.reportVideo(this.video.id, reason) .subscribe( () => { - this.notificationsService.success(this.i18n('Success'), this.i18n('Video reported.')) + this.notifier.success(this.i18n('Video reported.')) this.hide() }, - err => this.notificationsService.error(this.i18n('Error'), err.message) + err => this.notifier.error(err.message) ) } + + isRemoteVideo () { + return !this.video.isLocal + } }