$_device : \Horde_ActiveSync_Device
The device object
__construct(array $options = array()) : \Horde_ActiveSync_Message_Base
Configuration options for the message:
Set the list of non-ghosted fields for this message.
The array of fields, keyed by the fully qualified property name i.e., POOMCONTACTS:Anniversary. To signify an empty SUPPORTED container $fields should contain a single element equal to Horde_ActiveSync::ALL_GHOSTED.
isGhosted(string $property) : boolean
Override parent class' method. In EAS 16.0, top level appointment properties are ALWAYS ghosted if they are not explicitly sent.
A property is ghosted if it is NOT listed in the SUPPORTED list sent by the client AND is NOT present in the request data.
The property to check
Recursively decodes the WBXML from input stream. This means that if this message contains complex types (like Appointment.Recuurence for example) the sub-objects are auto-instantiated and decoded as well. Places the decoded objects in the local properties array.
Encodes this object (and any sub-objects) as wbxml to the output stream.
Output is ordered according to $_mapping
The wbxml stream encoder
setDatetime(array $datetime = array())
Set the appointment time/duration.
An array containing:
Set the appointment uid. Note that this is the client's UID value, and not the value that the server normally uses for the UID. ActiveSync messages do not normally include any server uid value as part of the message directly. This causes issues with meeting requests since most clients will use the CLIENT_ENTRY_ID for this value, and will send the invitation email out using this value as the UID so we sort-of HAVE to use this value as the server's UID.
The server's uid for this appointment
setRecurrence(\Horde_Date_Recurrence $recurrence, integer $fdow = null)
Set recurrence information for this appointment
The recurrence data.
The first day of the week. (A Horde_ActiveSync_Message_Recurrence:: constant). @since 2.4.0
Add a recurrence exception
_checkEncoding(mixed $data, string $tag) : mixed
Checks if the data needs to be encoded like e.g., when outputing binary data in-line during ITEMOPERATIONS requests. Concrete classes should override this if needed.
The data to check. A string or stream resource.
The tag we are outputing.
The encoded data. A string or stream resource with a filter attached.
_formatDate(\Horde_Date $dt, integer $type) : string
Oh yeah. This is beautiful. Exchange outputs date fields differently in calendar items and emails. We could just always send one or the other, but unfortunately nokia's 'Mail for exchange' depends on this quirk.
So we have to send a different date type depending on where it's used. Used when encoding a date value to send to the client.
The Horde_Date object to format (should normally be in local tz).
The type to format as: One of TYPE_DATE or TYPE_DATE_DASHES, TYPE_DATE_LOCAL
The formatted date