Align layout for create/edit video-playlists (my-account) on create/edit user (admin)

pull/2594/head
Rigel Kent 2020-03-28 23:54:23 +01:00
parent 03a3ad9194
commit 628c155338
No known key found for this signature in database
GPG Key ID: 5E53E96A494E452F
3 changed files with 96 additions and 56 deletions

View File

@ -1,6 +1,11 @@
@import '_variables';
@import '_mixins';
label {
font-weight: $font-regular;
font-size: 100%;
}
.video-channel-title {
@include settings-big-title;
}
@ -37,11 +42,6 @@ input {
}
}
label {
font-weight: $font-regular;
font-size: 100%;
}
textarea {
@include peertube-textarea(500px, 150px);

View File

@ -1,71 +1,102 @@
<div i18n class="form-sub-title" *ngIf="isCreation() === true">Create playlist</div>
<nav aria-label="breadcrumb">
<ol class="breadcrumb">
<li class="breadcrumb-item">
<a routerLink="/my-account/video-playlists" i18n>My Playlists</a>
</li>
<ng-container *ngIf="isCreation()">
<li class="breadcrumb-item active" i18n>Create</li>
</ng-container>
<ng-container *ngIf="!isCreation()">
<li class="breadcrumb-item active" i18n>Edit</li>
<li class="breadcrumb-item active" aria-current="page">
<a *ngIf="videoPlaylistToUpdate" [routerLink]="[ '/my-account/video-playlists/update', videoPlaylistToUpdate?.uuid ]">{{ videoPlaylistToUpdate?.displayName }}</a>
</li>
</ng-container>
</ol>
</nav>
<div *ngIf="error" class="alert alert-danger">{{ error }}</div>
<form role="form" (ngSubmit)="formValidated()" [formGroup]="form">
<div class="row">
<div class="col-md-12 col-xl-6">
<div class="form-group">
<label i18n for="displayName">Display name</label>
<input
type="text" id="displayName"
formControlName="displayName" [ngClass]="{ 'input-error': formErrors['displayName'] }"
>
<div *ngIf="formErrors['displayName']" class="form-error">
{{ formErrors['displayName'] }}
</div>
</div>
<div class="form-group">
<label i18n for="description">Description</label>
<textarea
id="description" formControlName="description"
[ngClass]="{ 'input-error': formErrors['description'] }"
></textarea>
<div *ngIf="formErrors.description" class="form-error">
{{ formErrors.description }}
</div>
</div>
<div class="form-row"> <!-- playlist grid -->
<div class="form-group col-12 col-lg-4 col-xl-3">
<div *ngIf="isCreation()" class="video-playlist-title" i18n>NEW PLAYLIST</div>
<div *ngIf="!isCreation() && videoPlaylistToUpdate" class="video-playlist-title" i18n>PLAYLIST</div>
</div>
<div class="col-md-12 col-xl-6">
<div class="form-group">
<label i18n for="privacy">Privacy</label>
<div class="peertube-select-container">
<select id="privacy" formControlName="privacy">
<option *ngFor="let privacy of videoPlaylistPrivacies" [value]="privacy.id">{{ privacy.label }}</option>
</select>
<div class="form-group form-group-right col-12 col-lg-8 col-xl-9">
<div class="col-md-12 col-xl-6">
<div class="form-group">
<label i18n for="displayName">Display name</label>
<input
type="text" id="displayName"
formControlName="displayName" [ngClass]="{ 'input-error': formErrors['displayName'] }"
>
<div *ngIf="formErrors['displayName']" class="form-error">
{{ formErrors['displayName'] }}
</div>
</div>
<div *ngIf="formErrors.privacy" class="form-error">
{{ formErrors.privacy }}
<div class="form-group">
<label i18n for="description">Description</label>
<textarea
id="description" formControlName="description"
[ngClass]="{ 'input-error': formErrors['description'] }"
></textarea>
<div *ngIf="formErrors.description" class="form-error">
{{ formErrors.description }}
</div>
</div>
</div>
<div class="form-group">
<label i18n>Channel</label>
<div class="peertube-select-container">
<select formControlName="videoChannelId">
<option></option>
<option *ngFor="let channel of userVideoChannels" [value]="channel.id">{{ channel.label }}</option>
</select>
<div class="col-md-12 col-xl-6">
<div class="form-group">
<label i18n for="privacy">Privacy</label>
<div class="peertube-select-container">
<select id="privacy" formControlName="privacy">
<option *ngFor="let privacy of videoPlaylistPrivacies" [value]="privacy.id">{{ privacy.label }}</option>
</select>
</div>
<div *ngIf="formErrors.privacy" class="form-error">
{{ formErrors.privacy }}
</div>
</div>
<div *ngIf="formErrors['videoChannelId']" class="form-error">
{{ formErrors['videoChannelId'] }}
<div class="form-group">
<label i18n>Channel</label>
<div class="peertube-select-container">
<select formControlName="videoChannelId">
<option></option>
<option *ngFor="let channel of userVideoChannels" [value]="channel.id">{{ channel.label }}</option>
</select>
</div>
<div *ngIf="formErrors['videoChannelId']" class="form-error">
{{ formErrors['videoChannelId'] }}
</div>
</div>
<div class="form-group">
<label i18n>Playlist thumbnail</label>
<my-preview-upload
i18n-inputLabel inputLabel="Edit" inputName="thumbnailfile" formControlName="thumbnailfile"
previewWidth="223px" previewHeight="122px"
></my-preview-upload>
</div>
</div>
<div class="form-group">
<label i18n>Playlist thumbnail</label>
<my-preview-upload
i18n-inputLabel inputLabel="Edit" inputName="thumbnailfile" formControlName="thumbnailfile"
previewWidth="223px" previewHeight="122px"
></my-preview-upload>
<div class="form-row"> <!-- submit placement block -->
<div class="col-md-7 col-xl-5"></div>
<div class="col-md-5 col-xl-5 d-inline-flex">
<input type="submit" value="{{ getFormButtonTitle() }}" [disabled]="!form.valid">
</div>
</div>
</div>
</div>
<input type="submit" value="{{ getFormButtonTitle() }}" [disabled]="!form.valid">
</form>

View File

@ -1,8 +1,13 @@
@import '_variables';
@import '_mixins';
.form-sub-title {
margin-bottom: 20px;
label {
font-weight: $font-regular;
font-size: 100%;
}
.video-playlist-title {
@include settings-big-title;
}
input[type=text] {
@ -25,3 +30,7 @@ input[type=submit] {
@include peertube-button;
@include orange-button;
}
.breadcrumb {
@include breadcrumb;
}