Initial edit task modal work

This commit is contained in:
kiswa 2017-05-23 21:53:08 +00:00
parent 89c12750c9
commit bdf7393ca4
4 changed files with 22 additions and 10 deletions

View File

@ -29,9 +29,10 @@
</div> </div>
<div class="tasks"> <div class="tasks">
<tb-task class="task-container" *ngFor="let task of columnData.ownTask" <tb-task class="task-container" *ngFor="let task of columnData.tasks"
[task]="task" [boards]="boards" [task]="task" [boards]="boards"
[add-task]="getShowModalFunction(task.id)" [add-task]="getShowModalFunction()"
[edit-task]="getShowModalFunction(task.id)"
[remove-task]="getRemoveTaskFunction(task.id)"></tb-task> [remove-task]="getRemoveTaskFunction(task.id)"></tb-task>
</div> </div>
@ -48,7 +49,8 @@
</div> </div>
</tb-modal> </tb-modal>
<tb-modal *ngIf="activeBoard" modal-title="Add Task" <tb-modal *ngIf="activeBoard"
modal-title="{{ modalProps.id === 0 ? 'Add' : 'Edit' }} Task"
modal-id="{{ MODAL_ID + columnData.id }}"> modal-id="{{ MODAL_ID + columnData.id }}">
<label> <label>
Title Title

View File

@ -187,8 +187,8 @@ export class ColumnDisplay implements OnInit {
}; };
} }
private getShowModalFunction(): Function { private getShowModalFunction(taskId: number = 0): Function {
return () => { this.showModal(); }; return () => { this.showModal(taskId); };
} }
private quickAddClicked() { private quickAddClicked() {
@ -203,10 +203,17 @@ export class ColumnDisplay implements OnInit {
this.quickAdd = new Task(); this.quickAdd = new Task();
} }
private showModal() { private showModal(taskId: number = 0) {
this.modalProps = new Task(); if (taskId === 0) {
this.modalProps.column_id = this.columnData.id; this.modalProps = new Task();
this.modalProps.column_id = this.columnData.id;
this.modal.open(this.MODAL_ID + this.columnData.id);
return;
}
this.modalProps = this.columnData.tasks
.filter(task => task.id === taskId)[0];
this.modal.open(this.MODAL_ID + this.columnData.id); this.modal.open(this.MODAL_ID + this.columnData.id);
} }

View File

@ -37,6 +37,7 @@ export class TaskDisplay implements OnInit {
@Input('task') taskData: Task; @Input('task') taskData: Task;
@Input('add-task') addTask: Function; @Input('add-task') addTask: Function;
@Input('edit-task') editTask: Function;
@Input('remove-task') removeTask: Function; @Input('remove-task') removeTask: Function;
@Input('boards') @Input('boards')
@ -93,7 +94,7 @@ export class TaskDisplay implements OnInit {
private generateContextMenuItems() { private generateContextMenuItems() {
this.contextMenuItems = [ this.contextMenuItems = [
new ContextMenuItem('View Task'), new ContextMenuItem('View Task'),
new ContextMenuItem('Edit Task'), new ContextMenuItem('Edit Task', this.editTask),
new ContextMenuItem('Remove Task', this.removeTask), new ContextMenuItem('Remove Task', this.removeTask),
new ContextMenuItem('', null, true), new ContextMenuItem('', null, true),
this.selectMenuItem, this.selectMenuItem,

View File

@ -25,7 +25,9 @@ export class ContextMenu {
let parentElement = el.nativeElement.parentElement; let parentElement = el.nativeElement.parentElement;
parentElement.oncontextmenu = this.eventHandler; parentElement.oncontextmenu = (event: MouseEvent) => {
this.eventHandler(event);
};
} }
getText(item: ContextMenuItem): SafeHtml { getText(item: ContextMenuItem): SafeHtml {