diff options
| author | Jules Laplace <julescarbon@gmail.com> | 2018-06-05 17:01:04 +0200 |
|---|---|---|
| committer | Jules Laplace <julescarbon@gmail.com> | 2018-06-05 17:01:04 +0200 |
| commit | c80b4686ec46504cf7050c4698d16646f18dc70d (patch) | |
| tree | 58ea11abc45987f02ed7a5844d938328be915bbd /app/client | |
| parent | c6148423fa2ebec86fa8c4c4cfc189b77a3949ec (diff) | |
deleting tasks
Diffstat (limited to 'app/client')
| -rw-r--r-- | app/client/dashboard/tasklist.component.js | 11 | ||||
| -rw-r--r-- | app/client/queue/queue.reducer.js | 11 |
2 files changed, 22 insertions, 0 deletions
diff --git a/app/client/dashboard/tasklist.component.js b/app/client/dashboard/tasklist.component.js index b14202f..a365454 100644 --- a/app/client/dashboard/tasklist.component.js +++ b/app/client/dashboard/tasklist.component.js @@ -3,6 +3,8 @@ import { bindActionCreators } from 'redux' import { connect } from 'react-redux' import * as util from '../util' +import actions from '../actions' + class TaskList extends Component { constructor(props){ super() @@ -24,6 +26,9 @@ class TaskList extends Component { <div class='activity'>{task.activity} {task.module} {dataset_type}</div> <div class='dataset'>{dataset_name}</div> <div className={"age " + util.carbon_date(task.updated_at)}>{util.get_age(task.updated_at)}</div> + <div class='options'> + <span class='destroy' onClick={() => this.handleDestroy(task)}>x</span> + </div> </div> ) }) @@ -33,6 +38,12 @@ class TaskList extends Component { </div> ) } + handleDestroy(task) { + const yes = confirm('Are you sure you want to delete this task?') + if (yes) { + actions.task.destroy(task) + } + } } const mapStateToProps = state => ({ diff --git a/app/client/queue/queue.reducer.js b/app/client/queue/queue.reducer.js index 9a791ce..b9ed194 100644 --- a/app/client/queue/queue.reducer.js +++ b/app/client/queue/queue.reducer.js @@ -48,6 +48,17 @@ const queueReducer = (state = queueInitialState, action) => { [action.data.id]: action.data, }, } + case types.task.destroy: + const { + [action.data.id]: deletedTask, + ...taskLookup, + } = state.tasks + return { + ...state, + queue: state.queue.filter(id => id !== deletedTask.id), + completed: state.completed.filter(id => id !== deletedTask.id), + tasks: taskLookup, + } case types.task.task_finish: return { ...state, |
