Fully convert whups to Horde_Registry_Application
authorMichael M Slusarz <slusarz@curecanti.org>
Thu, 28 Jan 2010 08:57:21 +0000 (01:57 -0700)
committerMichael M Slusarz <slusarz@curecanti.org>
Thu, 28 Jan 2010 08:57:21 +0000 (01:57 -0700)
39 files changed:
whups/README
whups/admin/index.php
whups/data.php
whups/index.php
whups/lib/Api.php
whups/lib/Application.php
whups/lib/Block/myqueries.php
whups/lib/Block/myrequests.php
whups/lib/Block/mytickets.php
whups/lib/Block/query.php
whups/lib/Block/queuecontents.php
whups/lib/Block/queuesummary.php
whups/lib/Block/unassigned.php
whups/lib/base.load.php [deleted file]
whups/lib/base.php [deleted file]
whups/lib/tests/TestBase.php
whups/mybugs.php
whups/mybugs_edit.php
whups/query/index.php
whups/query/rss.php
whups/query/run.php
whups/queue/index.php
whups/queue/rss.php
whups/reports.php
whups/scripts/mail-filter.php
whups/scripts/reminders.php
whups/search.php
whups/search/rss.php
whups/ticket/comment.php
whups/ticket/create.php
whups/ticket/delete.php
whups/ticket/deleteAttachment.php
whups/ticket/index.php
whups/ticket/queue.php
whups/ticket/rss.php
whups/ticket/type.php
whups/ticket/update.php
whups/ticket/watch.php
whups/view.php

index 6b33195..33ccbe5 100644 (file)
@@ -1,7 +1,7 @@
 What is Whups?
 ==============
 
-:Contact:       horde@lists.horde.org
+:Contact: horde@lists.horde.org
 
 .. contents:: Contents
 .. section-numbering::
index 18e607e..3dc9cba 100644 (file)
@@ -8,8 +8,8 @@
  * @author Chuck Hagenbuch <chuck@horde.org>
  */
 
-@define('WHUPS_BASE', dirname(dirname(__FILE__)));
-require_once WHUPS_BASE . '/lib/base.php';
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups');
 
 if (!Horde_Auth::isAdmin('whups:admin')) {
     Horde_Auth::authenticateFailure('whups', $e);
index c638e2d..32cd121 100644 (file)
@@ -8,9 +8,9 @@
  * @author Chuck Hagenbuch <chuck@horde.org>
  */
 
-define('WHUPS_BASE', dirname(__FILE__));
-require_once WHUPS_BASE . '/lib/base.php';
-require_once 'Horde/Template.php';
+require_once dirname(__FILE__) . '/lib/Application.php';
+Horde_Registry::appInit('whups');
+
 require WHUPS_BASE . '/config/templates.php';
 
 if (!Horde_Auth::getAuth()) {
index f37abf4..d41869f 100644 (file)
@@ -7,5 +7,7 @@
  * did not receive this file, see http://www.horde.org/licenses/bsdl.php.
  */
 
-require_once dirname(__FILE__) . '/lib/base.php';
+require_once dirname(__FILE__) . '/lib/Application.php';
+Horde_Registry::appInit('whups');
+
 require basename($prefs->getValue('whups_default_view') . '.php');
index a01d17a..d7755f7 100644 (file)
@@ -18,7 +18,6 @@ class Whups_Api extends Horde_Registry_Api
      */
     public function browse($path = '')
     {
-        require_once dirname(__FILE__) . '/base.php';
         global $whups_driver, $registry;
 
         if (substr($path, 0, 5) == 'whups') {
@@ -79,7 +78,6 @@ class Whups_Api extends Horde_Registry_Api
      */
     public function addQueue($name)
     {
-        require_once dirname(__FILE__) . '/base.php';
         if (Horde_Auth::isAdmin('whups:admin')) {
             return $GLOBALS['whups_driver']->addQueue($name, '');
         } else {
@@ -94,7 +92,6 @@ class Whups_Api extends Horde_Registry_Api
      */
     public function getAssignedTicketIds()
     {
-        require_once dirname(__FILE__) . '/base.php';
         global $whups_driver;
 
         $info = array('owner' => 'user:' . Horde_Auth::getAuth(), 'nores' => true);
@@ -116,7 +113,6 @@ class Whups_Api extends Horde_Registry_Api
      */
     public function getRequestedTicketIds()
     {
-        require_once dirname(__FILE__) . '/base.php';
         global $whups_driver;
 
         $info = array('requester' => Horde_Auth::getAuth(), 'nores' => true);
@@ -142,7 +138,6 @@ class Whups_Api extends Horde_Registry_Api
      */
     public function addTicket($ticket_info)
     {
-        require_once dirname(__FILE__) . '/base.php';
         require_once dirname(__FILE__) . '/Forms/CreateTicket.php';
         require_once dirname(__FILE__) . '/Ticket.php';
         global $whups_driver;
@@ -213,7 +208,6 @@ class Whups_Api extends Horde_Registry_Api
      */
     public function updateTicket($ticket_id, $ticket_info)
     {
-        require_once dirname(__FILE__) . '/base.php';
         require_once dirname(__FILE__) . '/Ticket.php';
         require_once dirname(__FILE__) . '/Forms/EditTicket.php';
         global $whups_driver;
@@ -299,9 +293,6 @@ class Whups_Api extends Horde_Registry_Api
      */
     public function addComment($ticket_id, $comment, $group = null)
     {
-        require_once dirname(__FILE__) . '/base.php';
-        require_once WHUPS_BASE . '/lib/Ticket.php';
-
         $ticket_id = (int)$ticket_id;
         if (empty($ticket_id)) {
             return PEAR::raiseError('Invalid ticket id');
@@ -344,9 +335,6 @@ class Whups_Api extends Horde_Registry_Api
      */
     public function addAttachment($ticket_id, $name, $data)
     {
-        require_once dirname(__FILE__) . '/base.php';
-        require_once WHUPS_BASE . '/lib/Ticket.php';
-
         $ticket_id = (int)$ticket_id;
         if (empty($ticket_id)) {
             return PEAR::raiseError(_("Invalid Ticket Id"));
@@ -383,7 +371,6 @@ class Whups_Api extends Horde_Registry_Api
      */
     public function setTicketAttributes($info)
     {
-        require_once dirname(__FILE__) . '/base.php';
         global $whups_driver;
 
         if (!isset($info['ticket_id']) || !isset($info['attributes'])) {
@@ -434,7 +421,6 @@ class Whups_Api extends Horde_Registry_Api
     {
         switch ($type) {
         case 'taskHash':
-            require_once dirname(__FILE__) . '/base.php';
             global $whups_driver;
             $info = array('owner' => 'user:' . Horde_Auth::getAuth(),
                           'nores' => true);
@@ -480,7 +466,6 @@ class Whups_Api extends Horde_Registry_Api
      */
     public function listQueues()
     {
-        require_once dirname(__FILE__) . '/base.php';
         return Whups::permissionsFilter($GLOBALS['whups_driver']->getQueuesInternal(), 'queue', Horde_Perms::SHOW);
     }
 
@@ -493,7 +478,6 @@ class Whups_Api extends Horde_Registry_Api
      */
     public function getQueueDetails($queue)
     {
-        require_once dirname(__FILE__) . '/base.php';
         if (is_array($queue)) {
             $queues = Whups::permissionsFilter($queue, 'queue_id');
             $details = array();
@@ -520,8 +504,6 @@ class Whups_Api extends Horde_Registry_Api
      */
     public function listVersions($queue)
     {
-        require_once dirname(__FILE__) . '/base.php';
-
         $queues = Whups::permissionsFilter(array($queue), 'queue_id');
         if (!$queues) {
             return array();
@@ -566,7 +548,6 @@ class Whups_Api extends Horde_Registry_Api
      */
     public function addVersion($queue, $name, $description, $active = true)
     {
-        require_once dirname(__FILE__) . '/base.php';
         return $GLOBALS['whups_driver']->addVersion($queue, $name, $description, $active);
     }
 
@@ -579,7 +560,6 @@ class Whups_Api extends Horde_Registry_Api
      */
     public function getVersionDetails($version_id)
     {
-        require_once dirname(__FILE__) . '/base.php';
         return $GLOBALS['whups_driver']->getVersionInternal($version_id);
     }
 
@@ -593,7 +573,6 @@ class Whups_Api extends Horde_Registry_Api
      */
     public function getTicketDetails($queue_id, $state = null)
     {
-        require_once dirname(__FILE__) . '/base.php';
         global $whups_driver;
 
         $info['queue_id'] = $queue_id;
@@ -647,7 +626,6 @@ class Whups_Api extends Horde_Registry_Api
      */
     public function listCostObjects($criteria)
     {
-        require_once dirname(__FILE__) . '/base.php';
         global $whups_driver;
 
         $info = array();
@@ -717,8 +695,6 @@ class Whups_Api extends Horde_Registry_Api
      */
     public function listTimeObjects($categories, $start, $end)
     {
-        require_once dirname(__FILE__) . '/base.php';
-        require_once WHUPS_BASE . '/lib/Ticket.php';
         global $whups_driver;
 
         $start = new Horde_Date($start);
index b46bea2..277056c 100644 (file)
@@ -2,11 +2,68 @@
 /**
  * Whups application API.
  *
+ * This file defines Horde's core API interface. Other core Horde libraries
+ * can interact with Whups through this API.
+ *
+ * Copyright 2010 The Horde Project (http://www.horde.org/)
+ *
+ * See the enclosed file COPYING for license information (GPL). If you
+ * did not receive this file, see http://www.fsf.org/copyleft/gpl.html.
+ *
  * @package Whups
  */
+
+/* Determine the base directories. */
+if (!defined('WHUPS_BASE')) {
+    define('WHUPS_BASE', dirname(__FILE__) . '/..');
+}
+
+if (!defined('HORDE_BASE')) {
+    /* If Horde does not live directly under the app directory, the HORDE_BASE
+     * constant should be defined in config/horde.local.php. */
+    if (file_exists(WHUPS_BASE . '/config/horde.local.php')) {
+        include WHUPS_BASE . '/config/horde.local.php';
+    } else {
+        define('HORDE_BASE', WHUPS_BASE . '/..');
+    }
+}
+
+/* Load the Horde Framework core (needed to autoload
+ * Horde_Registry_Application::). */
+require_once HORDE_BASE . '/lib/core.php';
+
 class Whups_Application extends Horde_Registry_Application
 {
-    public $version = 'H3 (2.0-cvs)';
+    /**
+     * The application's version.
+     *
+     * @var string
+     */
+    public $version = 'H3 (2.0-git)';
+
+    /**
+     * Perms cache
+     *
+     * @var array
+     */
+    static protected $_permsCache = array();
+
+    /**
+     * Whups initialization.
+     *
+     * Global variables defined:
+     *   $whups_driver - The global Whups driver object.
+     */
+    protected function _init()
+    {
+        // TODO: Remove once they can be autoloaded
+        require_once 'Horde/Group.php';
+        require_once 'Horde/Form.php';
+        require_once 'Horde/Form/Renderer.php';
+
+        $GLOBALS['whups_driver'] = Whups_Driver::factory();
+        $GLOBALS['whups_driver']->initialise();
+    }
 
     /**
      * Returns a list of available permissions.
@@ -15,14 +72,10 @@ class Whups_Application extends Horde_Registry_Application
      */
     public function perms()
     {
-        static $perms = array();
-        if (!empty($perms)) {
-            return $perms;
+        if (!empty(self::$_permsCache)) {
+            return self::$_permsCache;
         }
 
-        require_once dirname(__FILE__) . '/base.php';
-        global $whups_driver;
-
         /* Available Whups permissions. */
         $perms['tree']['whups']['admin'] = false;
         $perms['title']['whups:admin'] = _("Administration");
@@ -34,7 +87,7 @@ class Whups_Application extends Horde_Registry_Application
         $perms['title']['whups:queues'] = _("Queues");
 
         /* Loop through queues and add their titles. */
-        $queues = $whups_driver->getQueues();
+        $queues = $GLOBALS['whups_driver']->getQueues();
         foreach ($queues as $id => $name) {
             $perms['tree']['whups']['queues'][$id] = false;
             $perms['title']['whups:queues:' . $id] = $name;
@@ -59,13 +112,15 @@ class Whups_Application extends Horde_Registry_Application
         $perms['title']['whups:replies'] = _("Form Replies");
 
         /* Loop through type and replies and add their titles. */
-        foreach ($whups_driver->getAllTypes() as $type_id => $type_name) {
-            foreach ($whups_driver->getReplies($type_id) as $reply_id => $reply) {
+        foreach ($GLOBALS['whups_driver']->getAllTypes() as $type_id => $type_name) {
+            foreach ($GLOBALS['whups_driver']->getReplies($type_id) as $reply_id => $reply) {
                 $perms['tree']['whups']['replies'][$reply_id] = false;
                 $perms['title']['whups:replies:' . $reply_id] = $type_name . ': ' . $reply['reply_name'];
             }
         }
 
+        self::$_permsCache = $perms;
+
         return $perms;
     }
 
index 0a1388c..12f3e3b 100644 (file)
@@ -29,9 +29,7 @@ class Horde_Block_Whups_myqueries extends Horde_Block {
      */
     function _content()
     {
-        require_once dirname(__FILE__) . '/../base.php';
         require_once WHUPS_BASE . '/lib/Query.php';
-        require_once WHUPS_BASE . '/lib/View.php';
 
         $qManager = new Whups_QueryManager();
         $queries = $qManager->listQueries(Horde_Auth::getAuth(), true);
index 749ace6..390bea2 100644 (file)
@@ -29,7 +29,6 @@ class Horde_Block_Whups_myrequests extends Horde_Block {
      */
     function _content()
     {
-        require_once dirname(__FILE__) . '/../base.php';
         global $whups_driver, $prefs;
 
         $queue_ids = array_keys(Whups::permissionsFilter($whups_driver->getQueues(), 'queue', Horde_Perms::READ));
index f313a07..398bf09 100644 (file)
@@ -29,7 +29,6 @@ class Horde_Block_Whups_mytickets extends Horde_Block {
      */
     function _content()
     {
-        require_once dirname(__FILE__) . '/../base.php';
         global $whups_driver, $prefs;
 
         $queue_ids = array_keys(Whups::permissionsFilter($whups_driver->getQueues(), 'queue', Horde_Perms::READ));
index 6663672..9175be0 100644 (file)
@@ -14,7 +14,6 @@ class Horde_Block_Whups_query extends Horde_Block {
 
     function _params()
     {
-        require_once dirname(__FILE__) . '/../base.php';
         require_once WHUPS_BASE . '/lib/Query.php';
 
         $qManager = new Whups_QueryManager();
@@ -93,7 +92,6 @@ class Horde_Block_Whups_query extends Horde_Block {
             return false;
         }
 
-        require_once dirname(__FILE__) . '/../base.php';
         require_once WHUPS_BASE . '/lib/Query.php';
 
         $qManager = new Whups_QueryManager();
index 5539ba4..8e318dc 100644 (file)
@@ -14,7 +14,6 @@ class Horde_Block_Whups_queuecontents extends Horde_Block {
     function _params()
     {
         global $whups_driver;
-        require_once dirname(__FILE__) . '/../base.php';
 
         $qParams = array();
         $qDefault = null;
@@ -95,7 +94,6 @@ class Horde_Block_Whups_queuecontents extends Horde_Block {
     function _getQueue()
     {
         global $whups_driver;
-        require_once dirname(__FILE__) . '/../base.php';
 
         if (empty($this->_params['queue'])) {
             return false;
index d9caadb..11b05a9 100644 (file)
@@ -29,7 +29,6 @@ class Horde_Block_Whups_queuesummary extends Horde_Block {
      */
     function _content()
     {
-        require_once dirname(__FILE__) . '/../base.php';
         global $whups_driver;
 
         $queues = Whups::permissionsFilter($whups_driver->getQueues(), 'queue', Horde_Perms::READ);
index 473a34a..cbf55b9 100644 (file)
@@ -29,7 +29,6 @@ class Horde_Block_Whups_unassigned extends Horde_Block {
      */
     function _content()
     {
-        require_once dirname(__FILE__) . '/../base.php';
         global $whups_driver, $prefs;
 
         $queue_ids = array_keys(Whups::permissionsFilter($whups_driver->getQueues(), 'queue', Horde_Perms::READ));
diff --git a/whups/lib/base.load.php b/whups/lib/base.load.php
deleted file mode 100644 (file)
index 27ae193..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-/**
- * Script to determine the correct *_BASE values.
- *
- * Copyright 2009-2010 The Horde Project (http://www.horde.org/)
- *
- * See the enclosed file COPYING for license information (GPL). If you
- * did not receive this file, see http://www.fsf.org/copyleft/gpl.html.
- *
- * @package Ansel
- */
-
-if (!defined('WHUPS_BASE')) {
-    define('WHUPS_BASE', dirname(__FILE__) . '/..');
-}
-
-if (!defined('HORDE_BASE')) {
-    /* If horde does not live directly under the app directory, the HORDE_BASE
-     * constant should be defined in config/horde.local.php. */
-    if (file_exists(WHUPS_BASE . '/config/horde.local.php')) {
-        include WHUPS_BASE . '/config/horde.local.php';
-    } else {
-        define('HORDE_BASE', WHUPS_BASE . '/..');
-    }
-}
diff --git a/whups/lib/base.php b/whups/lib/base.php
deleted file mode 100644 (file)
index 269be1c..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-<?php
-/**
- * Whups base inclusion file.
- *
- * This file brings in all of the dependencies that every Whups script will
- * need, and sets up objects that all scripts use.
- *
- * Copyright 2001-2002 Robert E. Coyle <robertecoyle@hotmail.com>
- * Copyright 2001-2010 The Horde Project (http://www.horde.org/)
- *
- * See the enclosed file LICENSE for license information (BSD). If you
- * did not receive this file, see http://www.horde.org/licenses/bsdl.php.
- *
- * @package Whups
- */
-
-// Determine BASE directories.
-require_once dirname(__FILE__) . '/base.load.php';
-
-// Load the Horde Framework core, and set up inclusion paths.
-require_once HORDE_BASE . '/lib/core.php';
-
-// Registry.
-$registry = Horde_Registry::singleton();
-
-// Determine whups authentication type.
-$authentication = Horde_Util::nonInputVar('whups_authentication');
-
-try {
-    $registry->pushApp('whups', array('check_perms' => ($authentication != 'none'), 'logintasks' => true));
-} catch (Horde_Exception $e) {
-    Horde_Auth::authenticateFailure('whups', $e);
-}
-
-$conf = &$GLOBALS['conf'];
-define('WHUPS_TEMPLATES', $registry->get('templates'));
-
-// Notification system.
-$notification = &Horde_Notification::singleton();
-$notification->attach('status');
-
-// Find the base file path of Whups.
-if (!defined('WHUPS_BASE')) {
-    define('WHUPS_BASE', dirname(__FILE__) . '/..');
-}
-
-// Whups base libraries.
-require_once WHUPS_BASE . '/lib/Whups.php';
-require_once WHUPS_BASE . '/lib/Driver.php';
-
-// Horde libraries.
-require_once 'Horde/Group.php';
-
-// Form libraries.
-require_once 'Horde/Form.php';
-require_once 'Horde/Form/Renderer.php';
-
-// Start output compression.
-Horde::compressOutput();
-
-// Whups backend.
-$GLOBALS['whups_driver'] = Whups_Driver::factory();
-$GLOBALS['whups_driver']->initialise();
index 3131787..4c54ec2 100644 (file)
@@ -12,22 +12,8 @@ class Whups_TestBase Extends PHPUnit_Framework_TestCase {
 
     function setUp()
     {
-        // TODO: Do we need to actually fake auth for any tests?
-        @define('AUTH_HANDLER', true);
-        @define('HORDE_BASE', dirname(__FILE__) . '/../../..');
-        @define('WHUPS_BASE', dirname(__FILE__) . '/../..');
-        require_once HORDE_BASE . '/lib/core.php';
-
-        // Need to ensure $browser is in the global scope.
-        $GLOBALS['browser'] = $browser;
-
-        // Set up the CLI enviroment.
-        Horde_Cli::init();
-
-        // Need to load registry. For some reason including base.php doesn't
-        // work properly yet. ($registry is not set when prefs.php loads)?
-        $GLOBALS['registry'] = Horde_Registry::singleton();
-        define('WHUPS_TEMPLATES', $GLOBALS['registry']->get('templates', 'whups'));
+        require_once dirname(__FILE__) . '/../Application.php';
+        Horde_Registry::appInit('whups', array('authentication' => 'none', 'cli' => true);
     }
 
     /**
index 189d2ce..a188ef9 100644 (file)
@@ -8,7 +8,9 @@
  * @author Chuck Hagenbuch <chuck@horde.org>
  */
 
-require_once dirname(__FILE__) . '/lib/base.php';
+require_once dirname(__FILE__) . '/lib/Application.php';
+Horde_Registry::appInit('whups');
+
 require_once 'Horde/Block/Layout/View.php';
 
 // @TODO: remove this when there are blocks useful to guests
index 5dd33fe..9b182c3 100644 (file)
  * @author Mike Cochrane <mike@graftonhall.co.nz>
  */
 
-@define('WHUPS_BASE', dirname(__FILE__));
-require_once WHUPS_BASE . '/lib/base.php';
-require_once 'Horde/Block/Collection.php';
-require_once 'Horde/Block/Layout/Manager.php';
+require_once dirname(__FILE__) . '/lib/Application.php';
+Horde_Registry::appInit('whups');
 
 // Instantiate the blocks objects.
-$blocks = &Horde_Block_Collection::singleton('mybugs', array('whups'));
-$layout = &Horde_Block_Layout_Manager::singleton('mybugs', $blocks, @unserialize($prefs->getValue('mybugs_layout')));
+$blocks = Horde_Block_Collection::singleton('mybugs', array('whups'));
+$layout = Horde_Block_Layout_Manager::singleton('mybugs', $blocks, @unserialize($prefs->getValue('mybugs_layout')));
 
 // Handle requested actions.
 $layout->handle(Horde_Util::getFormData('action'),
index 6179e53..28b82a3 100644 (file)
@@ -9,7 +9,9 @@
  * @author Chuck Hagenbuch <chuck@horde.org>
  */
 
-require_once dirname(__FILE__) . '/../lib/base.php';
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups');
+
 require_once WHUPS_BASE . '/lib/Query.php';
 require_once WHUPS_BASE . '/lib/Forms/Query.php';
 require_once WHUPS_BASE . '/lib/Renderer/Query.php';
index dc1100b..49bd952 100644 (file)
  * @author Michael J. Rubinsky <mrubinsk@horde.org>
  * @author Jan Schneider <jan@horde.org>
  */
-@define('WHUPS_BASE', dirname(__FILE__) . '/..');
-require_once WHUPS_BASE . '/lib/base.php';
+
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups');
+
 require_once WHUPS_BASE . '/lib/Query.php';
-require_once 'Horde/Template.php';
 
 $qManager = new Whups_QueryManager();
 $vars = new Horde_Variables();
index 28d892a..0faf2ee 100644 (file)
@@ -9,7 +9,9 @@
  * @author Chuck Hagenbuch <chuck@horde.org>
  */
 
-require_once dirname(__FILE__) . '/../lib/base.php';
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups');
+
 require_once WHUPS_BASE . '/lib/Query.php';
 require_once WHUPS_BASE . '/lib/Forms/QueryParameterForm.php';
 require WHUPS_BASE . '/lib/Renderer/Query.php';
index 2794fce..ccffc79 100644 (file)
@@ -10,9 +10,8 @@
  * @author Michael J. Rubinsk <mrubinsk@horde.org>
  */
 
-@define('WHUPS_BASE', dirname(__FILE__) . '/..');
-require_once WHUPS_BASE . '/lib/base.php';
-require_once WHUPS_BASE . '/lib/View.php';
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups');
 
 // See if we were passed a slug or id. Slug is tried first.
 $slug = Horde_Util::getFormData('slug');
index d870c6a..6c61456 100644 (file)
@@ -9,9 +9,9 @@
  *
  * @author Michael J. Rubinsky <mrubinsk@horde.org>
  */
-@define('WHUPS_BASE', dirname(__FILE__) . '/..');
-require_once WHUPS_BASE . '/lib/base.php';
-require_once 'Horde/Template.php';
+
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups');
 
 // See if we were passed a slug or id. Slug is tried first.
 $slug = Horde_Util::getFormData('slug');
@@ -31,7 +31,6 @@ if ($slug) {
 // open tickets.
 $state_category = Horde_Util::getFormData('state');
 if ($state_category) {
-    require_once 'Horde/String.php';
     $state_display = Horde_String::ucFirst($state_category);
     // When specifying an explicit state, limit the feed to 10.
     $limit = 10;
index a67daed..58df4e3 100644 (file)
@@ -8,9 +8,8 @@
  * @author Chuck Hagenbuch <chuck@horde.org>
  */
 
-@define('WHUPS_BASE', dirname(__FILE__));
-require_once WHUPS_BASE . '/lib/base.php';
-require_once WHUPS_BASE . '/lib/Reports.php';
+require_once dirname(__FILE__) . '/lib/Application.php';
+Horde_Registry::appInit('whups');
 
 /* Supported graph types. Unused at the moment. */
 $graphs = array('open|queue_name' => array('chart', _("Open Tickets by Queue")),
index b45e759..dc1ed83 100755 (executable)
@@ -56,17 +56,9 @@ function _dump($hash)
     return $dump;
 }
 
-$whups_authentication = 'none';
-require_once dirname(__FILE__) . '/../lib/base.php';
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups', array('authentication' => 'none', 'cli' => true));
 
-// Make sure no one runs this from the web.
-if (!Horde_Cli::runningFromCLI()) {
-    exit("Must be run from the command line\n");
-}
-
-// Load the CLI environment - make sure there's no time limit, init some
-// variables, etc.
-Horde_Cli::init();
 $cli = Horde_Cli::singleton();
 
 // Set server name.
index d400caa..26b6033 100755 (executable)
@@ -9,24 +9,11 @@
  * @author Chuck Hagenbuch <chuck@horde.org>
  */
 
-// Do CLI checks and environment setup first.
-require_once dirname(__FILE__) . '/../../lib/core.php';
-
-// Make sure no one runs this from the web.
-if (!Horde_Cli::runningFromCLI()) {
-    exit("Must be run from the command line\n");
-}
-
-// Load the CLI environment - make sure there's no time limit, init
-// some variables, etc.
-Horde_Cli::init();
-
-// Include needed libraries.
-$whups_authentication = 'none';
-require_once dirname(__FILE__) . '/../lib/base.php';
-require_once WHUPS_BASE . '/lib/Scheduler/whups.php';
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups', array('authentication' => 'none'));
 
 // Get an instance of the Whups scheduler.
+require_once WHUPS_BASE . '/lib/Scheduler/whups.php';
 $reminder = Horde_Scheduler::unserialize('Horde_Scheduler_whups');
 
 // Check for and send reminders.
index 22d913e..15dcb11 100644 (file)
@@ -40,10 +40,11 @@ function _getSearchUrl($vars)
     return substr($qUrl, 1);
 }
 
-require_once dirname(__FILE__) . '/lib/base.php';
+require_once dirname(__FILE__) . '/lib/Application.php';
+Horde_Registry::appInit('whups');
+
 require_once WHUPS_BASE . '/lib/Query.php';
 require_once WHUPS_BASE . '/lib/Forms/Search.php';
-require_once WHUPS_BASE . '/lib/View.php';
 
 $renderer = new Horde_Form_Renderer();
 $beendone = false;
index 2ec915b..ca43272 100644 (file)
@@ -8,9 +8,10 @@
  * @author Duck <duck@obala.net>
  */
 
-require_once dirname(__FILE__) . '/../lib/base.php';
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups');
+
 require_once WHUPS_BASE . '/lib/Forms/Search.php';
-require_once 'Horde/Template.php';
 
 $vars = Horde_Variables::getDefaultVariables();
 $limit = (int)$vars->get('limit');
index 714df8a..24f4be5 100644 (file)
@@ -7,10 +7,9 @@
  * did not receive this file, see http://www.horde.org/licenses/bsdl.php.
  */
 
-@define('WHUPS_BASE', dirname(__FILE__) . '/..');
-require_once WHUPS_BASE . '/lib/base.php';
-require_once WHUPS_BASE . '/lib/Ticket.php';
-require_once WHUPS_BASE . '/lib/Ticket.php';
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups');
+
 require_once WHUPS_BASE . '/lib/Forms/AddComment.php';
 
 $ticket = Whups::getCurrentTicket();
index 1e9a28e..e87b21e 100644 (file)
@@ -7,11 +7,11 @@
  * did not receive this file, see http://www.horde.org/licenses/bsdl.php.
  */
 
-@define('WHUPS_BASE', dirname(__FILE__) . '/..');
-require_once WHUPS_BASE . '/lib/base.php';
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups');
+
 require_once WHUPS_BASE . '/lib/Forms/CreateTicket.php';
 require_once WHUPS_BASE . '/lib/Forms/VarRenderer.php';
-require_once WHUPS_BASE . '/lib/Ticket.php';
 
 $empty = '';
 $beendone = 0;
index 5c9cdca..d0c65cf 100644 (file)
@@ -9,9 +9,8 @@
  * did not receive this file, see http://www.horde.org/licenses/bsdl.php.
  */
 
-@define('WHUPS_BASE', dirname(__FILE__) . '/..');
-require_once WHUPS_BASE . '/lib/base.php';
-require_once WHUPS_BASE . '/lib/Ticket.php';
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups');
 
 class DeleteTicketForm extends Horde_Form {
 
index 0ace061..d9b0edb 100644 (file)
@@ -9,9 +9,8 @@
  * did not receive this file, see http://www.horde.org/licenses/bsdl.php.
  */
 
-@define('WHUPS_BASE', dirname(__FILE__) . '/..');
-require_once WHUPS_BASE . '/lib/base.php';
-require_once WHUPS_BASE . '/lib/Ticket.php';
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups');
 
 $ticket = Whups::getCurrentTicket();
 if (!Whups::hasPermission($ticket->get('queue'), 'queue', Horde_Perms::DELETE)) {
index 54bf785..950a987 100644 (file)
@@ -9,8 +9,9 @@
  * @author Chuck Hagenbuch <chuck@horde.org>
  */
 
-require_once dirname(__FILE__) . '/../lib/base.php';
-require_once WHUPS_BASE . '/lib/Ticket.php';
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups');
+
 require_once WHUPS_BASE . '/lib/Renderer/Comment.php';
 
 $ticket = Whups::getCurrentTicket();
index b84b317..eaf4555 100644 (file)
@@ -9,9 +9,8 @@
  * did not receive this file, see http://www.horde.org/licenses/bsdl.php.
  */
 
-@define('WHUPS_BASE', dirname(__FILE__) . '/..');
-require_once WHUPS_BASE . '/lib/base.php';
-require_once WHUPS_BASE . '/lib/Ticket.php';
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups');
 
 /**
  * Queue editing forms.
index 99d8b1f..af5afa6 100644 (file)
@@ -7,9 +7,8 @@
  * did not receive this file, see http://www.horde.org/licenses/bsdl.php.
  */
 
-@define('WHUPS_BASE', dirname(__FILE__) . '/..');
-require_once WHUPS_BASE . '/lib/base.php';
-require_once 'Horde/Template.php';
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups');
 
 $ticket = Horde_Util::getFormData('id');
 $ticket = preg_replace('|\D|', '', $ticket);
index ab85174..51d845b 100644 (file)
@@ -9,9 +9,8 @@
  * did not receive this file, see http://www.horde.org/licenses/bsdl.php.
  */
 
-@define('WHUPS_BASE', dirname(__FILE__) . '/..');
-require_once WHUPS_BASE . '/lib/base.php';
-require_once WHUPS_BASE . '/lib/Ticket.php';
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups');
 
 class SetTypeStep1Form extends Horde_Form {
 
index 7d4d04c..23d6e7a 100644 (file)
@@ -7,9 +7,9 @@
  * did not receive this file, see http://www.horde.org/licenses/bsdl.php.
  */
 
-@define('WHUPS_BASE', dirname(__FILE__) . '/..');
-require_once WHUPS_BASE . '/lib/base.php';
-require_once WHUPS_BASE . '/lib/Ticket.php';
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups');
+
 require_once WHUPS_BASE . '/lib/Forms/EditTicket.php';
 
 $ticket = Whups::getCurrentTicket();
index 574be8f..124f382 100644 (file)
@@ -7,9 +7,8 @@
  * did not receive this file, see http://www.horde.org/licenses/bsdl.php.
  */
 
-@define('WHUPS_BASE', dirname(__FILE__) . '/..');
-require_once WHUPS_BASE . '/lib/base.php';
-require_once WHUPS_BASE . '/lib/Ticket.php';
+require_once dirname(__FILE__) . '/../lib/Application.php';
+Horde_Registry::appInit('whups');
 
 class AddListenerForm extends Horde_Form {
 
index f35921a..1698b28 100644 (file)
@@ -8,8 +8,8 @@
  * @author Jan Schneider <jan@horde.org>
  */
 
-define('WHUPS_BASE', dirname(__FILE__));
-require_once WHUPS_BASE . '/lib/base.php';
+require_once dirname(__FILE__) . '/lib/Application.php';
+Horde_Registry::appInit('whups');
 
 $actionID = Horde_Util::getFormData('actionID');
 $id = Horde_Util::getFormData('ticket');