diff options
-rw-r--r-- | modules/gallery/controllers/admin_maintenance.php | 9 | ||||
-rw-r--r-- | modules/gallery/models/task.php | 2 |
2 files changed, 9 insertions, 2 deletions
diff --git a/modules/gallery/controllers/admin_maintenance.php b/modules/gallery/controllers/admin_maintenance.php index a65bd770..37cc5222 100644 --- a/modules/gallery/controllers/admin_maintenance.php +++ b/modules/gallery/controllers/admin_maintenance.php @@ -161,7 +161,14 @@ class Admin_Maintenance_Controller extends Admin_Controller { public function remove_finished_tasks() { access::verify_csrf(); - Database::instance()->delete("tasks", array("done" => 1)); + + // Do it the long way so we can call delete and remove the cache. + $finished = ORM::factory("task") + ->where(array("done" => 1)) + ->find_all(); + foreach ($finished as $task) { + task::remove($task->id); + } message::success(t("All finished tasks removed")); url::redirect("admin/maintenance"); } diff --git a/modules/gallery/models/task.php b/modules/gallery/models/task.php index 2e77a7a6..012b88cf 100644 --- a/modules/gallery/models/task.php +++ b/modules/gallery/models/task.php @@ -42,7 +42,7 @@ class Task_Model extends ORM { public function delete() { Cache::instance()->delete($this->_cache_key()); - return parent::save(); + return parent::delete(); } public function owner() { |