Added args modifier dialog to custom args input in the subscribe dialog

This commit is contained in:
Isaac Grynsztein
2020-06-21 23:40:39 -04:00
parent 319bb0160b
commit 20f162d794
10 changed files with 31 additions and 9 deletions

View File

@@ -43,9 +43,10 @@
<mat-checkbox [disabled]="audioOnlyMode" [(ngModel)]="streamingOnlyMode"><ng-container i18n="Streaming-only mode">Streaming-only mode</ng-container></mat-checkbox>
</div>
</div>
<div class="col-12 mb-2">
<div class="col-12 mb-3">
<mat-form-field color="accent">
<input [(ngModel)]="customArgs" matInput placeholder="Custom args" i18n-placeholder="Subscription custom args placeholder">
<button class="args-edit-button" (click)="openArgsModifierDialog()" mat-icon-button><mat-icon>edit</mat-icon></button>
<mat-hint>
<ng-container i18n="Custom args hint">These are added after the standard args.</ng-container>
</mat-hint>

View File

@@ -6,3 +6,8 @@
.mat-spinner {
margin-left: 5%;
}
.args-edit-button {
position: absolute;
margin-left: 10px;
}

View File

@@ -1,7 +1,8 @@
import { Component, OnInit } from '@angular/core';
import { MatDialogRef } from '@angular/material/dialog';
import { MatDialogRef, MatDialog } from '@angular/material/dialog';
import { MatSnackBar } from '@angular/material/snack-bar';
import { PostsService } from 'app/posts.services';
import { ArgModifierDialogComponent } from '../arg-modifier-dialog/arg-modifier-dialog.component';
@Component({
selector: 'app-subscribe-dialog',
@@ -25,8 +26,8 @@ export class SubscribeDialogComponent implements OnInit {
// audio only mode
audioOnlyMode = false;
customFileOutput = null;
customArgs = null;
customFileOutput = '';
customArgs = '';
time_units = [
'day',
@@ -37,6 +38,7 @@ export class SubscribeDialogComponent implements OnInit {
constructor(private postsService: PostsService,
private snackBar: MatSnackBar,
private dialog: MatDialog,
public dialogRef: MatDialogRef<SubscribeDialogComponent>) { }
ngOnInit() {
@@ -70,6 +72,20 @@ export class SubscribeDialogComponent implements OnInit {
}
}
// modify custom args
openArgsModifierDialog() {
const dialogRef = this.dialog.open(ArgModifierDialogComponent, {
data: {
initial_args: this.customArgs
}
});
dialogRef.afterClosed().subscribe(new_args => {
if (new_args !== null && new_args !== undefined) {
this.customArgs = new_args;
}
});
}
public openSnackBar(message: string, action = '') {
this.snackBar.open(message, action, {
duration: 2000,