aboutsummaryrefslogtreecommitdiffhomepage
path: root/client/src/app/+videos/+video-edit/video-add.component.html
blob: b056c6e7ad6feed6598d071a5cb1b619a7702fb1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<ng-template #AlertButtons>
  <a i18n routerLink="/about/instance" *ngIf="!isContactFormEnabled" class="about-link">Read instance rules for help</a>
  <a i18n routerLink="/about/contact" *ngIf="isContactFormEnabled" class="contact-link">Contact us</a>
</ng-template>

<ng-container *ngIf="user.isUploadDisabled()">
  <div class="upload-message upload-disabled alert alert-warning">
    <div>{{ uploadMessages.noQuota }}</div>
    <ng-template [ngTemplateOutlet]="AlertButtons"></ng-template>
  </div>

  <div class="upload-image">
    <img src="/client/assets/images/mascot/defeated.svg" alt="defeated mascot">
  </div>
</ng-container>

<ng-container *ngIf="!user.isUploadDisabled()">
  <div *ngIf="user.isAutoBlocked()" class="upload-message auto-blocked alert alert-warning">
    <div>{{ uploadMessages.autoBlock }}</div>
    <ng-template [ngTemplateOutlet]="AlertButtons" *ngIf="!user.hasNoQuotaLeft() && !user.hasNoQuotaLeftDaily()"></ng-template>
  </div>

  <div *ngIf="user.hasNoQuotaLeft()" class="upload-message quota-daily-left alert alert-warning">
    <div>{{ uploadMessages.quotaLeftDaily }}</div>
    <ng-template [ngTemplateOutlet]="AlertButtons" *ngIf="!user.hasNoQuotaLeft()"></ng-template>
  </div>

  <div *ngIf="user.hasNoQuotaLeft()" class="upload-message quota-left alert alert-warning">
    <div>{{ uploadMessages.quotaLeft }}</div>
    <ng-template [ngTemplateOutlet]="AlertButtons"></ng-template>
  </div>

  <div *ngIf="isRootUser()" class="upload-message root-user alert alert-warning" i18n>
    We recommend you to not use the <strong>root</strong> user to publish your videos, since it's the super-admin account of your instance.
    <br />
    Instead, <a routerLink="/admin/users">create a dedicated account</a> to upload your videos.
  </div>
</ng-container>

<div *ngIf="!user.isUploadDisabled()" class="margin-content">
  <my-user-quota *ngIf="!isInSecondStep() || secondStepType === 'go-live'" [user]="user" [userInformationLoaded]="userInformationLoaded"></my-user-quota>

  <div class="title-page title-page-single" *ngIf="isInSecondStep()">
    <ng-container *ngIf="secondStepType === 'import-url' || secondStepType === 'import-torrent'" i18n>Import {{ videoName }}</ng-container>
    <ng-container *ngIf="secondStepType === 'upload'" i18n>Upload {{ videoName }}</ng-container>
  </div>

  <div ngbNav #nav="ngbNav" class="nav-tabs video-add-nav" [activeId]="activeNav" (activeIdChange)="onNavChange($event)" [ngClass]="{ 'hide-nav': !!secondStepType }">
    <ng-container ngbNavItem="upload">
      <a ngbNavLink>
        <span i18n>Upload a file</span>
      </a>

      <ng-template ngbNavContent>
        <my-video-upload #videoUpload (firstStepDone)="onFirstStepDone('upload', $event)" (firstStepError)="onError()"></my-video-upload>
      </ng-template>
    </ng-container>

    <ng-container ngbNavItem="import-url" *ngIf="isVideoImportHttpEnabled()">
      <a ngbNavLink>
        <span i18n>Import with URL</span>
      </a>

      <ng-template ngbNavContent>
        <my-video-import-url #videoImportUrl (firstStepDone)="onFirstStepDone('import-url', $event)" (firstStepError)="onError()"></my-video-import-url>
      </ng-template>
    </ng-container>

    <ng-container ngbNavItem="import-torrent" *ngIf="isVideoImportTorrentEnabled()">
      <a ngbNavLink>
        <span i18n>Import with torrent</span>
      </a>

      <ng-template ngbNavContent>
        <my-video-import-torrent #videoImportTorrent (firstStepDone)="onFirstStepDone('import-torrent', $event)" (firstStepError)="onError()"></my-video-import-torrent>
      </ng-template>
    </ng-container>

    <ng-container ngbNavItem="go-live" *ngIf="isVideoLiveEnabled()">
      <a ngbNavLink>
        <span i18n>Go live</span>
      </a>

      <ng-template ngbNavContent>
        <my-video-go-live #videoGoLive (firstStepDone)="onFirstStepDone('go-live', $event)" (firstStepError)="onError()"></my-video-go-live>
      </ng-template>
    </ng-container>
  </div>

  <div [ngbNavOutlet]="nav"></div>
</div>