Fix handling of recurring tasks when marked as completed

This commit is contained in:
Thomas Bruederli 2014-07-08 18:44:20 +02:00
parent 634cb85fb5
commit 4f9968d9ac

View file

@ -534,7 +534,7 @@ class tasklist extends rcube_plugin
private function handle_recurrence(&$rec, $old) private function handle_recurrence(&$rec, $old)
{ {
$clone = null; $clone = null;
if ($this->driver->is_complete($rec) && $old && $this->driver->is_complete($old) && is_array($rec['recurrence'])) { if ($this->driver->is_complete($rec) && $old && !$this->driver->is_complete($old) && is_array($rec['recurrence'])) {
$engine = libcalendaring::get_recurrence(); $engine = libcalendaring::get_recurrence();
$rrule = $rec['recurrence']; $rrule = $rec['recurrence'];
$updates = array(); $updates = array();
@ -579,7 +579,7 @@ class tasklist extends rcube_plugin
// update the task but unset completed flag // update the task but unset completed flag
$rec = array_merge($rec, $updates); $rec = array_merge($rec, $updates);
$rec['complete'] = $old['complete']; $rec['complete'] = $old['complete'];
$rec['satus'] = $old['satus']; $rec['status'] = $old['status'];
} }
} }