Overview

Packages

  • Kolab
    • FreeBusy

Classes

  • Horde_Kolab_FreeBusy
  • Horde_Kolab_FreeBusy_Cache
  • Horde_Kolab_FreeBusy_Cache_Base
  • Horde_Kolab_FreeBusy_Cache_DB
  • Horde_Kolab_FreeBusy_Cache_DB_acl
  • Horde_Kolab_FreeBusy_Cache_DB_xacl
  • Horde_Kolab_FreeBusy_Cache_File
  • Horde_Kolab_FreeBusy_Cache_File_acl
  • Horde_Kolab_FreeBusy_Cache_File_pvcal
  • Horde_Kolab_FreeBusy_Cache_File_vcal
  • Horde_Kolab_FreeBusy_Cache_File_xacl
  • Horde_Kolab_FreeBusy_Controller_Base
  • Horde_Kolab_FreeBusy_Controller_MatchDict
  • Horde_Kolab_FreeBusy_Controller_NotFound
  • Horde_Kolab_FreeBusy_Controller_RequestConfiguration
  • Horde_Kolab_FreeBusy_Driver_Base
  • Horde_Kolab_FreeBusy_Driver_Freebusy_Base
  • Horde_Kolab_FreeBusy_Driver_Freebusy_Kolab
  • Horde_Kolab_FreeBusy_Exception
  • Horde_Kolab_FreeBusy_Exception_NotFound
  • Horde_Kolab_FreeBusy_Exception_Unauthorized
  • Horde_Kolab_FreeBusy_Export_Freebusy_Backend_Kolab
  • Horde_Kolab_FreeBusy_Export_Freebusy_Base
  • Horde_Kolab_FreeBusy_Export_Freebusy_Decorator_Log
  • Horde_Kolab_FreeBusy_Factory_Base
  • Horde_Kolab_FreeBusy_Freebusy_Controller_Freebusy
  • Horde_Kolab_FreeBusy_Freebusy_Factory_Base
  • Horde_Kolab_FreeBusy_Freebusy_Factory_Kolab
  • Horde_Kolab_FreeBusy_Freebusy_Helper_Owa
  • Horde_Kolab_FreeBusy_Freebusy_Helper_StatusMap_Config
  • Horde_Kolab_FreeBusy_Freebusy_Helper_StatusMap_Default
  • Horde_Kolab_FreeBusy_Freebusy_Owner_Kolab
  • Horde_Kolab_FreeBusy_Freebusy_Params_Folder
  • Horde_Kolab_FreeBusy_Freebusy_UserDb_Kolab
  • Horde_Kolab_FreeBusy_Object_Event
  • Horde_Kolab_FreeBusy_Owner_Kolab
  • Horde_Kolab_FreeBusy_Params_Freebusy_Resource_Kolab
  • Horde_Kolab_FreeBusy_Params_User
  • Horde_Kolab_FreeBusy_Provider_Local
  • Horde_Kolab_FreeBusy_Provider_Remote
  • Horde_Kolab_FreeBusy_Provider_Remote_PassThrough
  • Horde_Kolab_FreeBusy_Provider_Remote_Redirect
  • Horde_Kolab_FreeBusy_Report
  • Horde_Kolab_FreeBusy_Resource_Decorator_Log
  • Horde_Kolab_FreeBusy_Resource_Decorator_Mcache
  • Horde_Kolab_FreeBusy_Resource_Event_Decorator_Log
  • Horde_Kolab_FreeBusy_Resource_Event_Decorator_Mcache
  • Horde_Kolab_FreeBusy_Resource_Event_Kolab
  • Horde_Kolab_FreeBusy_Resource_Event_Owa
  • Horde_Kolab_FreeBusy_Resource_Kolab
  • Horde_Kolab_FreeBusy_Translation
  • Horde_Kolab_FreeBusy_User_Anonymous
  • Horde_Kolab_FreeBusy_User_Decorator_Log
  • Horde_Kolab_FreeBusy_User_Kolab
  • Horde_Kolab_FreeBusy_UserDb_Kolab
  • Horde_Kolab_FreeBusy_UserDb_User_Kolab
  • Horde_Kolab_FreeBusy_View
  • Horde_Kolab_FreeBusy_View_error
  • Horde_Kolab_FreeBusy_View_vfb

Interfaces

  • Horde_Kolab_FreeBusy_Driver_Freebusy_Interface
  • Horde_Kolab_FreeBusy_Driver_Interface
  • Horde_Kolab_FreeBusy_Export_Freebusy
  • Horde_Kolab_FreeBusy_Export_Freebusy_Backend
  • Horde_Kolab_FreeBusy_Factory
  • Horde_Kolab_FreeBusy_Freebusy_Helper_StatusMap
  • Horde_Kolab_FreeBusy_Freebusy_Owner
  • Horde_Kolab_FreeBusy_Owner
  • Horde_Kolab_FreeBusy_Params_Owner
  • Horde_Kolab_FreeBusy_Params_Resource
  • Horde_Kolab_FreeBusy_Provider
  • Horde_Kolab_FreeBusy_Resource
  • Horde_Kolab_FreeBusy_Resource_Event
  • Horde_Kolab_FreeBusy_User
  • Horde_Kolab_FreeBusy_UserDb
  • Horde_Kolab_FreeBusy_UserDb_User
  • Overview
  • Package
  • Class
  • Tree
  1: <?php
  2: /**
  3:  * This provider deals with data from the local server.
  4:  *
  5:  * PHP version 5
  6:  *
  7:  * @category Kolab
  8:  * @package  Kolab_FreeBusy
  9:  * @author   Gunnar Wrobel <wrobel@pardus.de>
 10:  * @license  http://www.horde.org/licenses/lgpl21 LGPL 2.1
 11:  * @link     http://pear.horde.org/index.php?package=Kolab_FreeBusy
 12:  */
 13: 
 14: /**
 15:  * This provider deals with data from the local server.
 16:  *
 17:  * Copyright 2011-2012 Horde LLC (http://www.horde.org/)
 18:  *
 19:  * See the enclosed file COPYING for license information (LGPL). If
 20:  * you did not receive this file, see
 21:  * http://www.horde.org/licenses/lgpl21.
 22:  *
 23:  * @category Kolab
 24:  * @package  Kolab_FreeBusy
 25:  * @author   Gunnar Wrobel <wrobel@pardus.de>
 26:  * @license  http://www.horde.org/licenses/lgpl21 LGPL 2.1
 27:  * @link     http://pear.horde.org/index.php?package=Kolab_FreeBusy
 28:  */
 29: class Horde_Kolab_FreeBusy_Provider_Local
 30: implements Horde_Kolab_FreeBusy_Provider
 31: {
 32:     /**
 33:      * The owner of the data.
 34:      *
 35:      * @var Horde_Kolab_FreeBusy_Owner
 36:      */
 37:     private $_owner;
 38: 
 39:     /**
 40:      * The user accessing the data.
 41:      *
 42:      * @var Horde_Kolab_FreeBusy_User
 43:      */
 44:     private $_user;
 45: 
 46:     /**
 47:      * Constructor
 48:      *
 49:      * @param Horde_Kolab_FreeBusy_Owner $owner  The owner of the data.
 50:      * @param Horde_Kolab_FreeBusy_User  $user   The user accessing the data.
 51:      */
 52:     public function __construct(
 53:         Horde_Kolab_FreeBusy_Owner $owner, Horde_Kolab_FreeBusy_User $user
 54:     )
 55:     {
 56:         $this->_owner  = $owner;
 57:         $this->_user   = $user;
 58:     }
 59: 
 60:     /**
 61:      * Trigger a resource.
 62:      *
 63:      * @param Horde_Controller_Response  $response The response handler.
 64:      * @param array                      $params   Additional parameters.
 65:      *
 66:      * @return NULL
 67:      */
 68:     public function trigger(
 69:         Horde_Controller_Response $response,
 70:         $params = array()
 71:     )
 72:     {
 73:         $this->logger->debug(sprintf("Starting generation of free/busy data for user %s",
 74:                                      $this->params->callee));
 75: 
 76:         $params = array('extended' => $this->params->type == 'xfb');
 77: 
 78:         // @todo: Reconsider this. We have been decoupled from the
 79:         // global context here but reinjecting this value seems
 80:         // extremely weird. Are there any other options?
 81:         $this->app->callee = $this->params->callee;
 82:         $this->data = $this->app->driver->fetch($this->params);
 83: 
 84:         $this->logger->debug('Delivering complete free/busy data.');
 85: 
 86:         /* Display the result to the user */
 87:         $this->render();
 88: 
 89:         $this->logger->debug('Free/busy generation complete.');
 90:     }
 91: 
 92:     /**
 93:      * Fetch data for an owner.
 94:      *
 95:      * @param Horde_Controller_Response  $response The response handler.
 96:      * @param array                      $params   Additional parameters.
 97:      *
 98:      * @return NULL
 99:      */
100:     public function fetch(
101:         Horde_Controller_Response $response,
102:         $params = array()
103:     )
104:     {
105:     }
106: 
107:     /**
108:      * Delete data of an owner.
109:      *
110:      * @param Horde_Controller_Response  $response The response handler.
111:      * @param array                      $params   Additional parameters.
112:      *
113:      * @return NULL
114:      */
115:     public function delete(
116:         Horde_Controller_Response $response,
117:         $params = array()
118:     )
119:     {
120:     }
121: 
122:     /**
123:      * Regenerate all data accessible to the current user.
124:      *
125:      * @param Horde_Controller_Response  $response The response handler.
126:      * @param array                      $params   Additional parameters.
127:      *
128:      * @return NULL
129:      */
130:     public function regenerate(
131:         Horde_Controller_Response $response,
132:         $params = array()
133:     )
134:     {
135:     }
136: }
API documentation generated by ApiGen