Properly cleanup temporary saved attachment files
This commit is contained in:
parent
8062cdb94a
commit
c8b6f57d66
2 changed files with 20 additions and 2 deletions
|
@ -1747,7 +1747,7 @@ class calendar extends rcube_plugin
|
||||||
$eventid = 'cal:'.$event['id'];
|
$eventid = 'cal:'.$event['id'];
|
||||||
if (!empty($_SESSION['event_session']) && ($eventid = $_SESSION['event_session']['id'])) {
|
if (!empty($_SESSION['event_session']) && ($eventid = $_SESSION['event_session']['id'])) {
|
||||||
$this->rc->plugins->exec_hook('attachments_cleanup', array('group' => $eventid));
|
$this->rc->plugins->exec_hook('attachments_cleanup', array('group' => $eventid));
|
||||||
unset($_SESSION['event_session']);
|
$this->rc->session->remove('event_session');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -162,13 +162,16 @@ class tasklist extends rcube_plugin
|
||||||
if ($success = $this->driver->create_task($rec)) {
|
if ($success = $this->driver->create_task($rec)) {
|
||||||
$refresh = $this->driver->get_task($rec);
|
$refresh = $this->driver->get_task($rec);
|
||||||
if ($temp_id) $refresh['tempid'] = $temp_id;
|
if ($temp_id) $refresh['tempid'] = $temp_id;
|
||||||
|
$this->cleanup_task($rec);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'edit':
|
case 'edit':
|
||||||
$rec = $this->prepare_task($rec);
|
$rec = $this->prepare_task($rec);
|
||||||
if ($success = $this->driver->edit_task($rec))
|
if ($success = $this->driver->edit_task($rec)) {
|
||||||
$refresh = $this->driver->get_task($rec);
|
$refresh = $this->driver->get_task($rec);
|
||||||
|
$this->cleanup_task($rec);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'delete':
|
case 'delete':
|
||||||
|
@ -319,6 +322,21 @@ class tasklist extends rcube_plugin
|
||||||
return $rec;
|
return $rec;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Releases some resources after successful save
|
||||||
|
*/
|
||||||
|
private function cleanup_task(&$rec)
|
||||||
|
{
|
||||||
|
// remove temp. attachment files
|
||||||
|
$taskid = $rec['id'];
|
||||||
|
if (!empty($_SESSION['tasklist_session']) && ($taskid = $_SESSION['tasklist_session']['id'])) {
|
||||||
|
$this->rc->plugins->exec_hook('attachments_cleanup', array('group' => $taskid));
|
||||||
|
$this->rc->session->remove('tasklist_session');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Add table
Reference in a new issue