Multiple Reminders #5
|
@ -212,7 +212,7 @@
|
|||
})
|
||||
},
|
||||
editTask(id) {
|
||||
// Find the slected task and set it to the current object
|
||||
// Find the selected task and set it to the current object
|
||||
for (const t in this.list.tasks) {
|
||||
if (this.list.tasks[t].id === id) {
|
||||
this.taskEditTask = this.list.tasks[t]
|
||||
|
@ -223,6 +223,7 @@
|
|||
if (this.taskEditTask.reminderDates === null) {
|
||||
this.taskEditTask.reminderDates = []
|
||||
}
|
||||
this.taskEditTask.reminderDates = this.removeNullsFromArray(this.taskEditTask.reminderDates)
|
||||
this.taskEditTask.reminderDates.push(null)
|
||||
|
||||
this.isTaskEdit = true
|
||||
|
@ -232,18 +233,25 @@
|
|||
|
||||
// Convert the date in a unix timestamp
|
||||
let duedate = (+ new Date(this.taskEditTask.dueDate)) / 1000
|
||||
let reminderdate = (+ new Date(this.taskEditTask.reminderDate)) / 1000
|
||||
this.taskEditTask.dueDate = duedate
|
||||
this.taskEditTask.reminderDate = reminderdate
|
||||
|
||||
// remove all nulls
|
||||
this.taskEditTask.reminderDates = this.removeNullsFromArray(this.taskEditTask.reminderDates)
|
||||
// Make normal timestamps from js timestamps
|
||||
for (const t in this.taskEditTask.reminderDates) {
|
||||
this.taskEditTask.reminderDates[t] = Math.round(this.taskEditTask.reminderDates[t] / 1000)
|
||||
}
|
||||
|
||||
HTTP.post(`tasks/` + this.taskEditTask.id, this.taskEditTask, {headers: {'Authorization': 'Bearer ' + localStorage.getItem('token')}})
|
||||
.then(response => {
|
||||
response.data.dueDate = new Date(response.data.dueDate * 1000)
|
||||
response.data.reminderDate = new Date(response.data.reminderDate * 1000)
|
||||
response.data.reminderDates = this.makeJSReminderDatesAfterUpdate(response.data.reminderDates)
|
||||
|
||||
// Update the task in the list
|
||||
this.updateTaskByID(this.taskEditTask.id, response.data)
|
||||
// Also update the current taskedit object so the ui changes
|
||||
this.$set(this, 'taskEditTask', response.data)
|
||||
|
||||
// Also update the current taskedit object so the ui changes
|
||||
this.$set(this, 'taskEditTask', response.data)
|
||||
this.handleSuccess({message: 'The task was successfully updated.'})
|
||||
})
|
||||
.catch(e => {
|
||||
|
@ -253,6 +261,7 @@
|
|||
updateTaskByID(id, updatedTask) {
|
||||
for (const t in this.list.tasks) {
|
||||
if (this.list.tasks[t].id === id) {
|
||||
//updatedTask.reminderDates = this.makeJSReminderDatesAfterUpdate(updatedTask.reminderDates)
|
||||
this.$set(this.list.tasks, t, updatedTask)
|
||||
break
|
||||
}
|
||||
|
@ -283,6 +292,26 @@
|
|||
// Reset the last to 0 to have the "add reminder" button
|
||||
this.taskEditTask.reminderDates[this.taskEditTask.reminderDates.length - 1] = null
|
||||
},
|
||||
removeNullsFromArray(array) {
|
||||
for (const index in array) {
|
||||
if (array[index] === null) {
|
||||
array.splice(index, 1)
|
||||
}
|
||||
}
|
||||
return array
|
||||
},
|
||||
makeJSReminderDatesAfterUpdate(dates) {
|
||||
// Make js timestamps from normal timestamps
|
||||
for (const rd in dates) {
|
||||
dates[rd] = +new Date(dates[rd] * 1000)
|
||||
}
|
||||
|
||||
if (dates == null) {
|
||||
dates = []
|
||||
}
|
||||
dates.push(null)
|
||||
return dates
|
||||
},
|
||||
handleError(e) {
|
||||
this.loading = false
|
||||
message.error(e, this)
|
||||
|
|
5
vue.config.js
Normal file
5
vue.config.js
Normal file
|
@ -0,0 +1,5 @@
|
|||
module.exports = {
|
||||
configureWebpack: {
|
||||
devtool: 'source-map'
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user