Implement getter method for a single event
This commit is contained in:
parent
021f8b51e8
commit
7e4287e1c5
4 changed files with 50 additions and 20 deletions
|
@ -180,6 +180,16 @@ abstract class calendar_driver
|
|||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return data of a single event
|
||||
*
|
||||
* @param array Hash array with event properties:
|
||||
* id: Event identifier
|
||||
* calendar: Calendar identifier
|
||||
* @return array Event object as hash array
|
||||
*/
|
||||
abstract function get_event($event);
|
||||
|
||||
/**
|
||||
* Get events from source.
|
||||
*
|
||||
|
|
|
@ -173,7 +173,7 @@ class database_driver extends calendar_driver
|
|||
* Add a single event to the database
|
||||
*
|
||||
* @param array Hash array with event properties
|
||||
* @see Driver:new_event()
|
||||
* @see calendar_driver::new_event()
|
||||
*/
|
||||
public function new_event($event)
|
||||
{
|
||||
|
@ -233,7 +233,7 @@ class database_driver extends calendar_driver
|
|||
* Update an event entry with the given data
|
||||
*
|
||||
* @param array Hash array with event properties
|
||||
* @see Driver:edit_event()
|
||||
* @see calendar_driver::edit_event()
|
||||
*/
|
||||
public function edit_event($event)
|
||||
{
|
||||
|
@ -502,7 +502,7 @@ class database_driver extends calendar_driver
|
|||
* Move a single event
|
||||
*
|
||||
* @param array Hash array with event properties
|
||||
* @see Driver:move_event()
|
||||
* @see calendar_driver::move_event()
|
||||
*/
|
||||
public function move_event($event)
|
||||
{
|
||||
|
@ -514,7 +514,7 @@ class database_driver extends calendar_driver
|
|||
* Resize a single event
|
||||
*
|
||||
* @param array Hash array with event properties
|
||||
* @see Driver:resize_event()
|
||||
* @see calendar_driver::resize_event()
|
||||
*/
|
||||
public function resize_event($event)
|
||||
{
|
||||
|
@ -528,7 +528,7 @@ class database_driver extends calendar_driver
|
|||
* @param array Hash array with event properties
|
||||
* @param boolean Remove record irreversible (@TODO)
|
||||
*
|
||||
* @see Driver:remove_event()
|
||||
* @see calendar_driver::remove_event()
|
||||
*/
|
||||
public function remove_event($event, $force = true)
|
||||
{
|
||||
|
@ -601,13 +601,15 @@ class database_driver extends calendar_driver
|
|||
|
||||
/**
|
||||
* Return data of a specific event
|
||||
* @param string Event ID
|
||||
* @param mixed Hash array with event properties or event ID
|
||||
* @return array Hash array with event properties
|
||||
*/
|
||||
public function get_event($id)
|
||||
public function get_event($event)
|
||||
{
|
||||
static $cache = array();
|
||||
|
||||
$id = is_array($event) ? $event['id'] : $event;
|
||||
|
||||
if ($cache[$id])
|
||||
return $cache[$id];
|
||||
|
||||
|
@ -630,7 +632,7 @@ class database_driver extends calendar_driver
|
|||
/**
|
||||
* Get event data
|
||||
*
|
||||
* @see Driver:load_events()
|
||||
* @see calendar_driver::load_events()
|
||||
*/
|
||||
public function load_events($start, $end, $query = null, $calendars = null)
|
||||
{
|
||||
|
@ -726,7 +728,7 @@ class database_driver extends calendar_driver
|
|||
/**
|
||||
* Get a list of pending alarms to be displayed to the user
|
||||
*
|
||||
* @see Driver:pending_alarms()
|
||||
* @see calendar_driver::pending_alarms()
|
||||
*/
|
||||
public function pending_alarms($time, $calendars = null)
|
||||
{
|
||||
|
@ -759,7 +761,7 @@ class database_driver extends calendar_driver
|
|||
/**
|
||||
* Feedback after showing/sending an alarm notification
|
||||
*
|
||||
* @see Driver:dismiss_alarm()
|
||||
* @see calendar_driver::dismiss_alarm()
|
||||
*/
|
||||
public function dismiss_alarm($event_id, $snooze = 0)
|
||||
{
|
||||
|
|
|
@ -242,7 +242,7 @@ class kolab_calendar
|
|||
/**
|
||||
* Create a new event record
|
||||
*
|
||||
* @see Driver:new_event()
|
||||
* @see calendar_driver::new_event()
|
||||
*
|
||||
* @return mixed The created record ID on success, False on error
|
||||
*/
|
||||
|
@ -263,6 +263,9 @@ class kolab_calendar
|
|||
true, false);
|
||||
$saved = false;
|
||||
}
|
||||
else {
|
||||
$this->events[$event['uid']] = $event;
|
||||
}
|
||||
|
||||
return $saved;
|
||||
}
|
||||
|
@ -270,7 +273,7 @@ class kolab_calendar
|
|||
/**
|
||||
* Update a specific event record
|
||||
*
|
||||
* @see Driver:new_event()
|
||||
* @see calendar_driver::new_event()
|
||||
* @return boolean True on success, False on error
|
||||
*/
|
||||
|
||||
|
@ -289,6 +292,7 @@ class kolab_calendar
|
|||
}
|
||||
else {
|
||||
$updated = true;
|
||||
$this->events[$event['id']] = $this->_to_rcube_event($object);
|
||||
}
|
||||
|
||||
return $updated;
|
||||
|
@ -297,7 +301,7 @@ class kolab_calendar
|
|||
/**
|
||||
* Delete an event record
|
||||
*
|
||||
* @see Driver:remove_event()
|
||||
* @see calendar_driver::remove_event()
|
||||
* @return boolean True on success, False on error
|
||||
*/
|
||||
public function delete_event($event, $force = true)
|
||||
|
@ -332,7 +336,7 @@ class kolab_calendar
|
|||
/**
|
||||
* Restore deleted event record
|
||||
*
|
||||
* @see Driver:undelete_event()
|
||||
* @see calendar_driver::undelete_event()
|
||||
* @return boolean True on success, False on error
|
||||
*/
|
||||
public function restore_event($event)
|
||||
|
|
|
@ -274,10 +274,24 @@ class kolab_driver extends calendar_driver
|
|||
}
|
||||
|
||||
|
||||
/**
|
||||
* Move a single event
|
||||
*
|
||||
* @see calendar_driver::get_event()
|
||||
* @return array Hash array with event properties, false if not found
|
||||
*/
|
||||
public function get_event($event)
|
||||
{
|
||||
if ($storage = $this->calendars[$event['calendar']])
|
||||
return $storage->get_event($event['id']);
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add a single event to the database
|
||||
*
|
||||
* @see Driver:new_event()
|
||||
* @see calendar_driver::new_event()
|
||||
*/
|
||||
public function new_event($event)
|
||||
{
|
||||
|
@ -307,7 +321,7 @@ class kolab_driver extends calendar_driver
|
|||
/**
|
||||
* Update an event entry with the given data
|
||||
*
|
||||
* @see Driver:new_event()
|
||||
* @see calendar_driver::new_event()
|
||||
* @return boolean True on success, False on error
|
||||
*/
|
||||
public function edit_event($event)
|
||||
|
@ -318,7 +332,7 @@ class kolab_driver extends calendar_driver
|
|||
/**
|
||||
* Move a single event
|
||||
*
|
||||
* @see Driver:move_event()
|
||||
* @see calendar_driver::move_event()
|
||||
* @return boolean True on success, False on error
|
||||
*/
|
||||
public function move_event($event)
|
||||
|
@ -332,7 +346,7 @@ class kolab_driver extends calendar_driver
|
|||
/**
|
||||
* Resize a single event
|
||||
*
|
||||
* @see Driver:resize_event()
|
||||
* @see calendar_driver::resize_event()
|
||||
* @return boolean True on success, False on error
|
||||
*/
|
||||
public function resize_event($event)
|
||||
|
@ -578,7 +592,7 @@ class kolab_driver extends calendar_driver
|
|||
/**
|
||||
* Get a list of pending alarms to be displayed to the user
|
||||
*
|
||||
* @see Driver:pending_alarms()
|
||||
* @see calendar_driver::pending_alarms()
|
||||
*/
|
||||
public function pending_alarms($time, $calendars = null)
|
||||
{
|
||||
|
@ -649,7 +663,7 @@ class kolab_driver extends calendar_driver
|
|||
/**
|
||||
* Feedback after showing/sending an alarm notification
|
||||
*
|
||||
* @see Driver:dismiss_alarm()
|
||||
* @see calendar_driver::dismiss_alarm()
|
||||
*/
|
||||
public function dismiss_alarm($event_id, $snooze = 0)
|
||||
{
|
||||
|
|
Loading…
Add table
Reference in a new issue