import { Component, OnInit } from '@angular/core'; import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; import { BackendService, ScrumTask, ScrumSprint } from '../services/backend.service'; import { TaskFormComponent } from '../task-form/task-form.component'; import { SprintFormComponent } from '../sprint-form/sprint-form.component'; @Component({ selector: 'app-task-list', templateUrl: './task-list.component.html', styleUrls: ['./task-list.component.css'] }) export class TaskListComponent implements OnInit { public tasks: ScrumTask[] = []; public sprints: ScrumSprint[] = []; constructor(private backendService: BackendService, private modalService: NgbModal) { backendService.getTasks().subscribe(response => { if (response.status > 399) { alert('Fehler'); } else { this.tasks.push(...response.body); } }); } ngOnInit(): void { } public deleteTask(task: ScrumTask) { this.backendService.deleteTask(task).subscribe(response => { if (response.status > 399) { alert('Fehler'); } }); const index = this.tasks.indexOf(task); if (index !== -1) { this.tasks.splice(index, 1); } } public openTaskForm(editTask: ScrumTask) { const modalRef = this.modalService.open(TaskFormComponent, { backdrop: 'static', keyboard: true, }); if (editTask === null) { modalRef.result.then(result => { this.tasks.push(result); }); } modalRef.componentInstance.task = editTask; } public openSprintForm(editSprint: ScrumSprint) { const modalRef = this.modalService.open(SprintFormComponent, { backdrop: 'static', keyboard: true, }); if (editSprint === null) { modalRef.result.then(result => { this.sprints.push(result); }); } modalRef.componentInstance.userstory = editSprint; } }