Files
YoutubeDL-Material/src/app/components/task-settings/task-settings.component.ts
Tzahi12345 46756a575c Added task settings
Added support for task errors

Added support for lt, gt etc. db comparisons

Added task to delete old files
2023-01-01 21:27:07 -05:00

47 lines
1.2 KiB
TypeScript

import { Component, Inject } from '@angular/core';
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
import { Task } from 'api-types';
import { PostsService } from 'app/posts.services';
@Component({
selector: 'app-task-settings',
templateUrl: './task-settings.component.html',
styleUrls: ['./task-settings.component.scss']
})
export class TaskSettingsComponent {
task_key: string;
new_options = {};
task: Task = null;
constructor(private postsService: PostsService, @Inject(MAT_DIALOG_DATA) public data: {task: Task}) {
this.task_key = this.data.task.key;
this.task = this.data.task;
if (!this.task.options) {
this.task.options = {};
}
}
ngOnInit(): void {
this.getSettings();
}
getSettings(): void {
this.postsService.getTask(this.task_key).subscribe(res => {
this.task = res['task'];
this.new_options = JSON.parse(JSON.stringify(this.task['options'])) || {};
});
}
saveSettings(): void {
this.postsService.updateTaskOptions(this.task_key, this.new_options).subscribe(() => {
this.getSettings();
}, () => {
this.getSettings();
});
}
optionsChanged(): boolean {
return JSON.stringify(this.new_options) !== JSON.stringify(this.task.options);
}
}