- {{ titlePage }}
+
-
No results.
{{ video.name }}
+
+ Unlisted
+ Private
{{ video.publishedAt | myFromNow }} - {{ video.views | myNumberFormatter }} views
diff --git a/client/src/app/shared/video/video-miniature.component.ts b/client/src/app/shared/video/video-miniature.component.ts
index 7e8692b0b..2f951a1f1 100644
--- a/client/src/app/shared/video/video-miniature.component.ts
+++ b/client/src/app/shared/video/video-miniature.component.ts
@@ -2,6 +2,7 @@ import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core
import { User } from '../users'
import { Video } from './video.model'
import { ServerService } from '@app/core'
+import { VideoPrivacy } from '../../../../../shared'
export type OwnerDisplayType = 'account' | 'videoChannel' | 'auto'
@@ -49,4 +50,12 @@ export class VideoMiniatureComponent implements OnInit {
displayOwnerVideoChannel () {
return this.ownerDisplayTypeChosen === 'videoChannel'
}
+
+ isUnlistedVideo () {
+ return this.video.privacy.id === VideoPrivacy.UNLISTED
+ }
+
+ isPrivateVideo () {
+ return this.video.privacy.id === VideoPrivacy.PRIVATE
+ }
}
diff --git a/client/src/app/videos/+video-edit/shared/video-edit.component.scss b/client/src/app/videos/+video-edit/shared/video-edit.component.scss
index b039d7ad4..25db8e8ed 100644
--- a/client/src/app/videos/+video-edit/shared/video-edit.component.scss
+++ b/client/src/app/videos/+video-edit/shared/video-edit.component.scss
@@ -5,6 +5,11 @@
@include peertube-select-container(auto);
}
+my-peertube-checkbox {
+ display: block;
+ margin-bottom: 1rem;
+}
+
.video-edit {
height: 100%;
min-height: 300px;
diff --git a/client/src/app/videos/video-list/video-local.component.ts b/client/src/app/videos/video-list/video-local.component.ts
index c91c639ca..9d000cf2e 100644
--- a/client/src/app/videos/video-list/video-local.component.ts
+++ b/client/src/app/videos/video-list/video-local.component.ts
@@ -10,6 +10,7 @@ import { VideoService } from '../../shared/video/video.service'
import { VideoFilter } from '../../../../../shared/models/videos/video-query.type'
import { I18n } from '@ngx-translate/i18n-polyfill'
import { ScreenService } from '@app/shared/misc/screen.service'
+import { UserRight } from '../../../../../shared/models/users'
@Component({
selector: 'my-videos-local',
@@ -40,6 +41,11 @@ export class VideoLocalComponent extends AbstractVideoList implements OnInit, On
ngOnInit () {
super.ngOnInit()
+ if (this.authService.isLoggedIn()) {
+ const user = this.authService.getUser()
+ this.displayModerationBlock = user.hasRight(UserRight.SEE_ALL_VIDEOS)
+ }
+
this.generateSyndicationList()
}
@@ -56,4 +62,10 @@ export class VideoLocalComponent extends AbstractVideoList implements OnInit, On
generateSyndicationList () {
this.syndicationItems = this.videoService.getVideoFeedUrls(this.sort, this.filter, this.categoryOneOf)
}
+
+ toggleModerationDisplay () {
+ this.filter = this.filter === 'local' ? 'all-local' as 'all-local' : 'local' as 'local'
+
+ this.reloadVideos()
+ }
}
diff --git a/client/src/sass/include/_mixins.scss b/client/src/sass/include/_mixins.scss
index 2efd6a1d3..b25d7ae0f 100644
--- a/client/src/sass/include/_mixins.scss
+++ b/client/src/sass/include/_mixins.scss
@@ -29,7 +29,7 @@
display: block;
/* Fallback for non-webkit */
display: -webkit-box;
- max-height: $font-size*$line-height*$lines-to-show;
+ max-height: $font-size*$line-height*$lines-to-show + 0.2;
/* Fallback for non-webkit */
font-size: $font-size;
line-height: $line-height;