Class Horde_iCalendar_vfreebusy

Description

Class representing vFreebusy components.

$Horde: framework/iCalendar/iCalendar/vfreebusy.php,v 1.16.10.18 2009/01/06 15:23:53 jan Exp $

Copyright 2003-2009 The Horde Project (http://www.horde.org/)

See the enclosed file COPYING for license information (LGPL). If you did not receive this file, see http://www.fsf.org/copyleft/lgpl.html.

Located in /iCalendar/iCalendar/vfreebusy.php (line 18)

Horde_iCalendar
   |
   --Horde_iCalendar_vfreebusy
Variable Summary
Method Summary
 void addBusyPeriod (string $type, integer $start, [integer $end = null], [integer $duration = null], [array $extra = array()])
 string exportvCalendar ()
 array getBusyPeriods ()
 string getEmail ()
 integer getEnd ()
 array getExtraParams ()
 array getFreePeriods (integer $startStamp, integer $endStamp)
 string getName ()
 integer getStart ()
 string getType ()
 void merge (Horde_iCalendar_vfreebusy $freebusy, [boolean $simplify = true])
 void parsevCalendar (string $data, [ $type = null], [ $charset = null])
 void simplify ()
 void _simplify ( $busyPeriods, [ $extraParams = array()])
Variables
mixed $_busyPeriods = array() (line 20)
mixed $_extraParams = array() (line 21)

Inherited Variables

Inherited from Horde_iCalendar

Horde_iCalendar::$_attributes
Horde_iCalendar::$_components
Horde_iCalendar::$_container
Horde_iCalendar::$_newline
Horde_iCalendar::$_version
Methods
addBusyPeriod (line 222)

Adds a busy period to the info.

This function may throw away data in case you add a period with a start date that already exists. The longer of the two periods will be chosen (and all information associated with the shorter one will be removed).

void addBusyPeriod (string $type, integer $start, [integer $end = null], [integer $duration = null], [array $extra = array()])
  • string $type: The type of the period. Either 'FREE' or 'BUSY'; only 'BUSY' supported at the moment.
  • integer $start: The start timestamp of the period.
  • integer $end: The end timestamp of the period.
  • integer $duration: The duration of the period. If specified, the $end parameter will be ignored.
  • array $extra: Additional parameters for this busy period.
exportvCalendar (line 69)

Returns the component exported as string.

  • return: The exported vFreeBusy information according to the iCalender format specification.
string exportvCalendar ()

Redefinition of:
Horde_iCalendar::exportvCalendar()
Export as vCalendar format.
getBusyPeriods (line 151)

Returns the busy periods.

  • return: All busy periods.
array getBusyPeriods ()
getEmail (line 125)

Returns the email address for this object.

  • return: The email address of this object's owner.
string getEmail ()
getEnd (line 279)

Returns the timestamp of the end of the time period this free busy information covers.

  • return: A timestamp.
integer getEnd ()
getExtraParams (line 161)

Returns any additional freebusy parameters.

  • return: Additional parameters of the freebusy periods.
array getExtraParams ()
getFreePeriods (line 175)

Returns all the free periods of time in a given period.

  • return: A hash with free time periods, the start times as the keys and the end times as the values.
array getFreePeriods (integer $startStamp, integer $endStamp)
  • integer $startStamp: The start timestamp.
  • integer $endStamp: The end timestamp.
getName (line 94)

Returns a display name for this object.

  • return: A clear text name for displaying this object.
string getName ()
getStart (line 262)

Returns the timestamp of the start of the time period this free busy information covers.

  • return: A timestamp.
integer getStart ()
getType (line 28)

Returns the type of this calendar component.

  • return: The type of this component.
string getType ()

Redefinition of:
Horde_iCalendar::getType()
merge (line 302)

Merges the busy periods of another Horde_iCalendar_vfreebusy object into this one.

This might lead to simplification no matter what you specify for the "simplify" flag since periods with the same start date will lead to the shorter period being removed (see addBusyPeriod).

void merge (Horde_iCalendar_vfreebusy $freebusy, [boolean $simplify = true])
  • Horde_iCalendar_vfreebusy $freebusy: A freebusy object.
  • boolean $simplify: If true, simplify() will called after the merge.
parsevCalendar (line 38)

Parses a string containing vFreebusy data.

void parsevCalendar (string $data, [ $type = null], [ $charset = null])
  • string $data: The data to parse.
  • $type
  • $charset

Redefinition of:
Horde_iCalendar::parsevCalendar()
Parses a string containing vCalendar data.
simplify (line 348)

Removes all overlaps and simplifies the busy periods array as much as possible.

void simplify ()
_simplify (line 365)
void _simplify ( $busyPeriods, [ $extraParams = array()])
  • $busyPeriods
  • $extraParams

Inherited Methods

Inherited From Horde_iCalendar

 Horde_iCalendar::Horde_iCalendar()
 Horde_iCalendar::addComponent()
 Horde_iCalendar::clear()
 Horde_iCalendar::exportvCalendar()
 Horde_iCalendar::findComponent()
 Horde_iCalendar::findComponentByAttribute()
 Horde_iCalendar::getAllAttributes()
 Horde_iCalendar::getAttribute()
 Horde_iCalendar::getAttributeDefault()
 Horde_iCalendar::getAttributeValues()
 Horde_iCalendar::getComponent()
 Horde_iCalendar::getComponentClasses()
 Horde_iCalendar::getComponentCount()
 Horde_iCalendar::getComponents()
 Horde_iCalendar::getType()
 Horde_iCalendar::isOldFormat()
 Horde_iCalendar::newComponent()
 Horde_iCalendar::parsevCalendar()
 Horde_iCalendar::removeAttribute()
 Horde_iCalendar::setAttribute()
 Horde_iCalendar::setParameter()
 Horde_iCalendar::toHash()
 Horde_iCalendar::_exportDate()
 Horde_iCalendar::_exportDateTime()
 Horde_iCalendar::_exportDuration()
 Horde_iCalendar::_exportPeriod()
 Horde_iCalendar::_exportTime()
 Horde_iCalendar::_exportUtcOffset()
 Horde_iCalendar::_exportvData()
 Horde_iCalendar::_parseDate()
 Horde_iCalendar::_parseDateTime()
 Horde_iCalendar::_parseDuration()
 Horde_iCalendar::_parsePeriod()
 Horde_iCalendar::_parseTime()
 Horde_iCalendar::_parseTZID()
 Horde_iCalendar::_parseUtcOffset()
 Horde_iCalendar::_quotedPrintableEncode()

Documentation generated on Sun, 30 Jan 2011 05:23:13 +0000 by phpDocumentor 1.4.3