An iCalendar Component
Located in /components.php (line 54)
| Class | Description |
|---|---|
| PhpiCalLib_Event | An eventc iCalendar component |
| PhpiCalLib_iCalendar | The top level class of PhpiCalLib, representing the contents of an iCalendar file |
Info about which properties are permitted for this component
Empty array means all properties are permitted. Each entry is keyed by id. The values indicate the min and max number of instances. For example, the spec says this for VALARM. http://tools.ietf.org/html/draft-ietf-calsify-rfc2445bis-08#section-3.6.6
audioprop = *(
; 'action' and 'trigger' are both REQUIRED,
; but MUST NOT occur more than once
action / trigger /
; 'duration' and 'repeat' are both OPTIONAL,
; and MUST NOT occur more than once each,
; but if one occurs, so MUST the other
duration / repeat /
; the following is OPTIONAL,
; but MUST NOT occur more than once
attach /
; the following is OPTIONAL,
; and MAY occur more than once
x-prop / iana-prop
)This would be implemented as:
Note that this mechanism isn't sufficient to ensure the component only has valid properties, for example two properties may be mutually exclusive. Where that is the case the user should override (@link AddPropertyPermitted()}, RemovePropertyPermitted or SetPropertyPermitted to make sure that any remaining rules have been followed.
Convert a component name to it's defined type
Constructor
Add the property to the component
Determine if the given property is permitted for addition
Create a component object from it's name and it's properties, returning the new object
Create a new Component object
A component would override this class, providing a new version of this function in order to choose the right kind of class to create.
Obtain the name of the component
Get all the properties of the given type/name
Get a single property of the given type/name
Access the component type
Note this will return PHPICALLIB_COMPONENT_IANACOMP or PHPICALLIB_COMPONENT_XCOMP for components that it doesn't recognize
Delete all the properties of the given type
Determine if we are allowed to remove the given property
Set the new name for the property
Set the content lines for the component, replacing any existing properties
Sets a property, replacing any existing values of the same type
Determine if the given property can be changed
Set the type of the component
Dump the parameter to an array of unfolded content lines
Documentation generated on Tue, 01 Apr 2008 00:20:00 +0100 by phpDocumentor 1.4.0