From 2352dd162aacb6222aff7523aef4169223fe37a0 Mon Sep 17 00:00:00 2001 From: Bharat Mediratta Date: Fri, 16 Jan 2009 04:31:41 +0000 Subject: Break task definitions out into the _task helper and create a Task library class as a data structure to hold task definitions. --- core/controllers/admin_maintenance.php | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) (limited to 'core/controllers') diff --git a/core/controllers/admin_maintenance.php b/core/controllers/admin_maintenance.php index 6b344243..18eb644c 100644 --- a/core/controllers/admin_maintenance.php +++ b/core/controllers/admin_maintenance.php @@ -23,19 +23,17 @@ class Admin_Maintenance_Controller extends Admin_Controller { * @todo move task definition out into the modules */ private function _get_task_definitions() { - $dirty_count = graphics::find_dirty_images_query()->count(); - return array( - "graphics::rebuild_dirty_images" => new ArrayObject( - array("name" => t("Rebuild Images"), - "callback" => "graphics::rebuild_dirty_images", - "description" => ( - $dirty_count ? - t2("You have one image which is out of date", - "You have %count out-of-date images", - $dirty_count) - : t("All your images are up to date")), - "severity" => $dirty_count ? log::WARNING : log::SUCCESS), - ArrayObject::ARRAY_AS_PROPS)); + $tasks = array(); + foreach (module::installed() as $module_name => $module_info) { + $class_name = "{$module_name}_task"; + if (method_exists($class_name, "available")) { + foreach (call_user_func(array($class_name, "available")) as $task) { + $tasks[$task->callback] = $task; + } + } + } + + return $tasks; } /** -- cgit v1.2.3