"rebuild_images", "description" => _("Rebuild out of date thumbnails and resizes")), ArrayObject::ARRAY_AS_PROPS)); $view->content = new View("admin_maintenance.html"); $view->content->available_tasks = $available_tasks; $view->content->running_tasks = ORM::factory("task")->find_all(); print $view; } public function start($task_name) { $task = ORM::factory("task"); $task->name = $task_name; $task->percent_complete = 0; $task->status = ""; $task->context = serialize(array()); $task->save(); $view = new View("admin_maintenance_task.html"); $view->task = $task; print $view; } public function run($task_id) { $task = ORM::factory("task", $task_id); if (!$task->loaded) { throw new Exception("@todo MISSING_TASK"); } switch($task->name) { case "rebuild_images": graphics::rebuild_dirty_images($task); } $task->save(); print json_encode( array("status" => "success", "task" => $task->as_array())); } }