From 12009fb4b6250dde295649c21efbdf5db6b55280 Mon Sep 17 00:00:00 2001 From: Matthew Wire Date: Tue, 2 Jan 2018 16:05:42 +0700 Subject: [PATCH] Convert Mailing to use core Task class --- CRM/Mailing/Task.php | 45 +++++++++++++------------------------------- 1 file changed, 13 insertions(+), 32 deletions(-) diff --git a/CRM/Mailing/Task.php b/CRM/Mailing/Task.php index cd511c3d9b..0ea28bac63 100644 --- a/CRM/Mailing/Task.php +++ b/CRM/Mailing/Task.php @@ -36,20 +36,9 @@ * used by the search forms. * */ -class CRM_Mailing_Task { - /** - * The task array. - * - * @var array - */ - static $_tasks = NULL; +class CRM_Mailing_Task extends CRM_Core_Task { - /** - * The optional task array. - * - * @var array - */ - static $_optionalTasks = NULL; + static $objectType = 'mailing'; /** * These tasks are the core set of tasks that the user can perform @@ -58,46 +47,37 @@ class CRM_Mailing_Task { * @return array * the set of tasks for a group of contacts. */ - public static function &tasks() { + public static function tasks() { if (!(self::$_tasks)) { self::$_tasks = array( - 1 => array( + self::TASK_PRINT => array( 'title' => ts('Print Mailing Recipients'), 'class' => 'CRM_Mailing_Form_Task_Print', 'result' => FALSE, ), ); - CRM_Utils_Hook::searchTasks('mailing', self::$_tasks); - asort(self::$_tasks); + parent::tasks(); } return self::$_tasks; } - /** - * These tasks are the core set of task titles - * on mailing recipients. - * - * @return array - * the set of task titles. - */ - public static function &taskTitles() { - return array(); - } - /** * Show tasks selectively based on the permission level * of the user. * * @param int $permission + * @param array $params * * @return array * set of tasks that are valid for the user */ - public static function &permissionedTaskTitles($permission) { - $task = array(); - return $task; + public static function permissionedTaskTitles($permission, $params = array()) { + $tasks = array(); + + $tasks = parent::corePermissionedTaskTitles($tasks, $permission, $params); + return $tasks; } /** @@ -113,8 +93,9 @@ class CRM_Mailing_Task { self::tasks(); if (!$value || !CRM_Utils_Array::value($value, self::$_tasks)) { // make the print task by default - $value = 1; + $value = self::TASK_PRINT; } + return array( self::$_tasks[$value]['class'], self::$_tasks[$value]['result'], -- 2.25.1