From: Michael M Slusarz Date: Wed, 6 Oct 2010 20:59:47 +0000 (-0600) Subject: tweaks X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=4a429dc92a41ef04960575f7032669fe7b3e997f;p=horde.git tweaks --- diff --git a/framework/Core/lib/Horde/Core/LoginTasks/Backend/Horde.php b/framework/Core/lib/Horde/Core/LoginTasks/Backend/Horde.php index 4ef750288..bb180b922 100644 --- a/framework/Core/lib/Horde/Core/LoginTasks/Backend/Horde.php +++ b/framework/Core/lib/Horde/Core/LoginTasks/Backend/Horde.php @@ -75,23 +75,23 @@ class Horde_Core_LoginTasks_Backend_Horde extends Horde_LoginTasks_Backend */ public function getTasks() { + $app_list = array($this->_app); + $tasks = array(); + switch ($this->_app) { case 'horde': - $app_list = isset($_SESSION['horde_logintasks']['horde']) - ? array() - : array('horde'); + if (isset($_SESSION['horde_logintasks']['horde'])) { + return $tasks; + } break; default: - $app_list = array($this->_app); if (!isset($_SESSION['horde_logintasks']['horde'])) { array_unshift($app_list, 'horde'); } break; } - $tasks = array(); - foreach ($app_list as $app) { foreach (array_merge($GLOBALS['registry']->getAppDrivers($app, 'LoginTasks_SystemTask'), $GLOBALS['registry']->getAppDrivers($app, 'LoginTasks_Task')) as $val) { $tasks[$val] = $app; @@ -111,11 +111,10 @@ class Horde_Core_LoginTasks_Backend_Horde extends Horde_LoginTasks_Backend public function getLastRun() { $lasttask_pref = @unserialize($GLOBALS['prefs']->getValue('last_logintasks')); - if (!is_array($lasttask_pref)) { - $lasttask_pref = array(); - } - return $lasttask_pref; + return is_array($lasttask_pref) + ? $lasttask_pref + : array(); } /** @@ -142,7 +141,7 @@ class Horde_Core_LoginTasks_Backend_Horde extends Horde_LoginTasks_Backend $lasttasks['horde'] = time(); $_SESSION['horde_logintasks']['horde'] = true; } - $GLOBALS['prefs']->setValue('last_logintasks', serialize($lasttasks)); + $this->setLastRun($lasttasks); } /** @@ -165,4 +164,5 @@ class Horde_Core_LoginTasks_Backend_Horde extends Horde_LoginTasks_Backend { return Horde::getServiceLink('logintasks', $this->_app); } + } diff --git a/framework/LoginTasks/lib/Horde/LoginTasks/SystemTask.php b/framework/LoginTasks/lib/Horde/LoginTasks/SystemTask.php index a103b218a..44458e3cc 100644 --- a/framework/LoginTasks/lib/Horde/LoginTasks/SystemTask.php +++ b/framework/LoginTasks/lib/Horde/LoginTasks/SystemTask.php @@ -31,8 +31,6 @@ abstract class Horde_LoginTasks_SystemTask /** * Do login task (if it has been confirmed). - * - * @return boolean Whether the login task was successful. */ abstract public function execute(); diff --git a/framework/LoginTasks/lib/Horde/LoginTasks/Task.php b/framework/LoginTasks/lib/Horde/LoginTasks/Task.php index 4c7c8b873..41ec15746 100644 --- a/framework/LoginTasks/lib/Horde/LoginTasks/Task.php +++ b/framework/LoginTasks/lib/Horde/LoginTasks/Task.php @@ -22,13 +22,6 @@ abstract class Horde_LoginTasks_Task public $active = true; /** - * The interval at which to run the task. - * - * @var integer - */ - public $interval = Horde_LoginTasks::MONTHLY; - - /** * The style of the page output. * * [1] Horde_LoginTasks::DISPLAY_CONFIRM_NO @@ -63,6 +56,13 @@ abstract class Horde_LoginTasks_Task public $display = Horde_LoginTasks::DISPLAY_CONFIRM_YES; /** + * The interval at which to run the task. + * + * @var integer + */ + public $interval = Horde_LoginTasks::MONTHLY; + + /** * The priority of the task. * * @var integer @@ -71,8 +71,6 @@ abstract class Horde_LoginTasks_Task /** * Do login task (if it has been confirmed). - * - * @return boolean Whether the login task was successful. */ abstract public function execute(); @@ -90,7 +88,7 @@ abstract class Horde_LoginTasks_Task /** * Does the task require to be displayed? * - * @return boolean True in case the task should be displayed. + * @return boolean True if the task should be displayed. */ public function needsDisplay() { @@ -101,21 +99,24 @@ abstract class Horde_LoginTasks_Task * Indicates if the display of the current task should be joined with the * given previous task. * - * @param Horde_Login_Task $previous The previous task to display. + * @param Horde_Login_Task $previous The previous task to display. * - * @return boolean True in case both tasks should be displayed together. + * @return boolean True if both tasks should be displayed together. */ public function joinDisplayWith(Horde_LoginTasks_Task $previous) { - if ($this->display == $previous->display) { - return true; - } - if ($this->_isConfirmTask($this) && $this->_isConfirmTask($previous)) { - return true; - } - return false; + return (($this->display == $previous->display) || + ($this->_isConfirmTask($this) && + $this->_isConfirmTask($previous))); } + /** + * Is this a confirmation task? + * + * @param Horde_Login_Task $task The task to analyze. + * + * @return boolean True if this is a confirmation task. + */ private function _isConfirmTask($task) { return in_array( diff --git a/framework/LoginTasks/test/Horde/LoginTasks/LoginTasksTest.php b/framework/LoginTasks/test/Horde/LoginTasks/LoginTasksTest.php index 2679c3450..8027a7c6e 100644 --- a/framework/LoginTasks/test/Horde/LoginTasks/LoginTasksTest.php +++ b/framework/LoginTasks/test/Horde/LoginTasks/LoginTasksTest.php @@ -302,7 +302,7 @@ class Horde_LoginTasks_LoginTasksTest extends PHPUnit_Framework_TestCase 'Horde_LoginTasks_Stub_Notice', ) ); - $tasks->runTasks(false, null); + $tasks->runTasks(false); $this->assertEquals( array( 'Horde_LoginTasks_Stub_High', @@ -324,7 +324,7 @@ class Horde_LoginTasks_LoginTasksTest extends PHPUnit_Framework_TestCase ); $this->assertContains( 'URL', - (string) $tasks->runTasks(false, null) + (string) $tasks->runTasks(false) ); } @@ -338,7 +338,7 @@ class Horde_LoginTasks_LoginTasksTest extends PHPUnit_Framework_TestCase 'Horde_LoginTasks_Stub_Notice', ) ); - $tasks->runTasks(false, null); + $tasks->runTasks(false); $tasklist = $tasks->displayTasks(); $this->assertEquals( 'Horde_LoginTasks_Stub_Notice', @@ -357,7 +357,7 @@ class Horde_LoginTasks_LoginTasksTest extends PHPUnit_Framework_TestCase 'Horde_LoginTasks_Stub_NoticeTwo', ) ); - $tasks->runTasks(false, null); + $tasks->runTasks(false); $tasklist = $tasks->displayTasks(); $classes = array(); foreach ($tasklist as $task) { @@ -384,10 +384,10 @@ class Horde_LoginTasks_LoginTasksTest extends PHPUnit_Framework_TestCase 'Horde_LoginTasks_Stub_NoticeTwo', ) ); - $tasks->runTasks(false, null); + $tasks->runTasks(false); Horde_LoginTasks_Stub_Task::$executed = array(); $tasks->displayTasks(); - $tasks->runTasks(true, null); + $tasks->runTasks(true); $this->assertEquals( array( 'Horde_LoginTasks_Stub_Notice',