mirror of
https://github.com/Tzahi12345/YoutubeDL-Material.git
synced 2026-03-07 20:10:03 +03:00
Improved UX in share dialog and video info dialog
This commit is contained in:
@@ -2463,6 +2463,8 @@ components:
|
||||
type: string
|
||||
uid:
|
||||
type: string
|
||||
user_uid:
|
||||
type: string
|
||||
sharingEnabled:
|
||||
type: boolean
|
||||
category:
|
||||
|
||||
@@ -26,6 +26,7 @@ export type DatabaseFile = {
|
||||
path: string;
|
||||
upload_date: string;
|
||||
uid: string;
|
||||
user_uid?: string;
|
||||
sharingEnabled?: boolean;
|
||||
category?: Category;
|
||||
view_count?: number;
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<mat-dialog-content>
|
||||
<div>
|
||||
<div>
|
||||
<mat-checkbox [checked]="sharing_enabled" (change)="sharingChanged($event)"><ng-container i18n="Enable sharing checkbox">Enable sharing</ng-container></mat-checkbox>
|
||||
<mat-checkbox [checked]="sharing_enabled" (change)="sharingChanged($event)" [disabled]="uuid && (!postsService.isLoggedIn || postsService.user?.uid !== uuid)"><ng-container i18n="Enable sharing checkbox">Enable sharing</ng-container></mat-checkbox>
|
||||
</div>
|
||||
<div>
|
||||
<mat-checkbox style="margin-right: 15px;" (change)="useTimestampChanged()" [(ngModel)]="timestamp_enabled"><ng-container i18n="Use timestamp">Use timestamp</ng-container></mat-checkbox>
|
||||
|
||||
@@ -21,7 +21,7 @@ export class ShareMediaDialogComponent implements OnInit {
|
||||
timestamp_enabled = false;
|
||||
|
||||
constructor(@Inject(MAT_DIALOG_DATA) public data: any, public router: Router, private snackBar: MatSnackBar,
|
||||
private postsService: PostsService) { }
|
||||
public postsService: PostsService) { }
|
||||
|
||||
ngOnInit(): void {
|
||||
if (this.data) {
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
<h4 mat-dialog-title>
|
||||
{{file.title}}
|
||||
<div class="favorite-button">
|
||||
<button mat-icon-button (click)="editing = !editing"><mat-icon>edit</mat-icon></button>
|
||||
<button [disabled]="!initialized || retrieving_file" (click)="toggleFavorite()" mat-icon-button ><mat-icon>{{file.favorite ? 'favorite_filled' : 'favorite_outline'}}</mat-icon></button>
|
||||
<button [disabled]="!initialized || retrieving_file || !write_access" mat-icon-button (click)="editing = !editing"><mat-icon>edit</mat-icon></button>
|
||||
<button [disabled]="!initialized || retrieving_file || !write_access" (click)="toggleFavorite()" mat-icon-button ><mat-icon>{{file.favorite ? 'favorite_filled' : 'favorite_outline'}}</mat-icon></button>
|
||||
</div>
|
||||
</h4>
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@ export class VideoInfoDialogComponent implements OnInit {
|
||||
editing = false;
|
||||
initialized = false;
|
||||
retrieving_file = false;
|
||||
write_access = false;
|
||||
|
||||
constructor(@Inject(MAT_DIALOG_DATA) public data: any, public postsService: PostsService, private datePipe: DatePipe) { }
|
||||
|
||||
@@ -29,6 +30,7 @@ export class VideoInfoDialogComponent implements OnInit {
|
||||
this.initializeFile(this.data.file);
|
||||
}
|
||||
this.postsService.reloadCategories();
|
||||
this.write_access = !this.file.user_uid || (this.file.user_uid && this.postsService.user?.uid === this.file.user_uid);
|
||||
}
|
||||
|
||||
initializeFile(file: DatabaseFile): void {
|
||||
|
||||
@@ -353,7 +353,7 @@ export class PlayerComponent implements OnInit, AfterViewInit, OnDestroy {
|
||||
uid: this.playlist_id ? this.playlist_id : this.uid,
|
||||
sharing_enabled: this.playlist_id ? this.db_playlist.sharingEnabled : this.db_file.sharingEnabled,
|
||||
is_playlist: !!this.playlist_id,
|
||||
uuid: this.postsService.isLoggedIn ? this.postsService.user.uid : null,
|
||||
uuid: this.postsService.isLoggedIn ? this.postsService.user.uid : this.uuid,
|
||||
current_timestamp: this.api.time.current
|
||||
},
|
||||
width: '60vw'
|
||||
|
||||
Reference in New Issue
Block a user