summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
Diffstat (limited to 'modules')
-rw-r--r--modules/gallery/controllers/admin_maintenance.php9
-rw-r--r--modules/gallery/models/task.php2
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() {