1 <div class="margin-content">
3 <div i18n class="title-page title-page-single">
7 <div class="initial-user-quota">
8 <span i18n class="initial-user-quota-label">Initial video quota:</span>
10 <span *ngIf="initialUserVideoQuota !== -1">
11 {{ initialUserVideoQuota | bytes: 0 }}
13 <my-help helpType="custom" [customHtml]="quotaHelpIndication"></my-help>
16 <ng-container i18n *ngIf="initialUserVideoQuota === -1">
21 <div *ngIf="error" class="alert alert-danger">{{ error }}</div>
23 <form role="form" (ngSubmit)="signup()" [formGroup]="form">
24 <div class="form-group">
25 <label for="username" i18n>Username</label>
27 <div class="input-group">
29 type="text" id="username" i18n-placeholder placeholder="Example: neil_amstrong"
30 formControlName="username" [ngClass]="{ 'input-error': formErrors['username'] }"
32 <div class="input-group-append">
33 <span class="input-group-text">@{{ instanceHost }}</span>
37 <div *ngIf="formErrors.username" class="form-error">
38 {{ formErrors.username }}
42 <div class="form-group">
43 <label for="email" i18n>Email</label>
45 type="text" id="email" i18n-placeholder placeholder="Email"
46 formControlName="email" [ngClass]="{ 'input-error': formErrors['email'] }"
48 <div *ngIf="formErrors.email" class="form-error">
49 {{ formErrors.email }}
53 <div class="form-group">
54 <label for="password" i18n>Password</label>
56 type="password" id="password" i18n-placeholder placeholder="Password"
57 formControlName="password" [ngClass]="{ 'input-error': formErrors['password'] }"
59 <div *ngIf="formErrors.password" class="form-error">
60 {{ formErrors.password }}
64 <div class="form-group form-group-terms">
66 inputName="terms" formControlName="terms"
67 i18n-labelHtml labelHtml="I have read and agree to the <a href='/about/instance#terms-section' target='_blank'rel='noopener noreferrer'>Terms</a> of this instance"
68 ></my-peertube-checkbox>
70 <div *ngIf="formErrors.terms" class="form-error">
71 {{ formErrors.terms }}
75 <input type="submit" i18n-value value="Signup" [disabled]="!form.valid">