Documentation

Horde_ActiveSync_Message_Mail extends Horde_ActiveSync_Message_Base
in package

Horde_ActiveSync_Message_Mail::

Tags
license

http://www.horde.org/licenses/gpl GPLv2

copyright

2011-2020 Horde LLC (http://www.horde.org)

author

Michael J Rubinsky mrubinsk@horde.org

Table of Contents

CLASS_MEETING_NOTICE  = 'IPM.Notification.Meeting'
CLASS_MEETING_REQUEST  = 'IPM.Schedule.Meeting.Request'
CLASS_NOTE  = 'IPM.Note'
FLAG_READ_SEEN  = 1
FLAG_READ_UNSEEN  = 0
IMPORTANCE_HIGH  = 2
IMPORTANCE_LOW  = 0
IMPORTANCE_NORM  = 1
INTERNET_CPID_UTF8  = 65001
KEY_ATTRIBUTE  = 1
KEY_PROPERTY  = 4
KEY_TYPE  = 3
KEY_VALUES  = 2
POOMMAIL2_ACCOUNTID  = 'POOMMAIL2:AccountId'
POOMMAIL2_BCC  = 'POOMMAIL2:Bcc'
POOMMAIL2_CALENDARTYPE  = 'POOMMAIL2:CalendarType'
POOMMAIL2_CONVERSATIONID  = 'POOMMAIL2:ConversationId'
POOMMAIL2_CONVERSATIONINDEX  = 'POOMMAIL2:ConversationIndex'
POOMMAIL2_FIRSTDAYOFWEEK  = 'POOMMAIL2:FirstDayOfWeek'
POOMMAIL2_ISDRAFT  = 'POOMMAIL2:IsDraft'
POOMMAIL2_ISLEAPMONTH  = 'POOMMAIL2:IsLeapMonth'
POOMMAIL2_LASTVERBEXECUTED  = 'POOMMAIL2:LastVerbExecuted'
POOMMAIL2_LASTVERBEXECUTIONTIME  = 'POOMMAIL2:LastVerbExecutionTime'
POOMMAIL2_MEETINGMESSAGETYPE  = 'POOMMAIL2:MeetingMessageType'
POOMMAIL2_RECEIVEDASBCC  = 'POOMMAIL2:ReceivedAsBcc'
POOMMAIL2_SEND  = 'POOMMAIL2:Send'
POOMMAIL2_SENDER  = 'POOMMAIL2:Sender'
POOMMAIL2_UMATTDURATION  = 'POOMMAIL2:UmAttDuration'
POOMMAIL2_UMATTORDER  = 'POOMMAIL2:UmAttOrder'
POOMMAIL2_UMCALLERID  = 'POOMMAIL2:UmCallerId'
POOMMAIL2_UMUSERNOTES  = 'POOMMAIL2:UmUserNotes'
POOMMAIL_ALLDAYEVENT  = 'POOMMAIL:AllDayEvent'
POOMMAIL_ATTACHMENT  = 'POOMMAIL:Attachment'
POOMMAIL_ATTACHMENTS  = 'POOMMAIL:Attachments'
POOMMAIL_BODY  = 'POOMMAIL:Body'
POOMMAIL_BODYSIZE  = 'POOMMAIL:BodySize'
POOMMAIL_BODYTRUNCATED  = 'POOMMAIL:BodyTruncated'
POOMMAIL_BUSYSTATUS  = 'POOMMAIL:BusyStatus'
POOMMAIL_CATEGORIES  = 'POOMMAIL:Categories'
POOMMAIL_CATEGORY  = 'POOMMAIL:Category'
POOMMAIL_CC  = 'POOMMAIL:Cc'
POOMMAIL_COMPLETETIME  = 'POOMMAIL:CompleteTime'
POOMMAIL_CONTENTCLASS  = 'POOMMAIL:ContentClass'
POOMMAIL_DATERECEIVED  = 'POOMMAIL:DateReceived'
POOMMAIL_DAYOFMONTH  = 'POOMMAIL:DayOfMonth'
POOMMAIL_DAYOFWEEK  = 'POOMMAIL:DayOfWeek'
POOMMAIL_DISALLOWNEWTIMEPROPOSAL  = 'POOMMAIL:DisallowNewTimeProposal'
POOMMAIL_DISPLAYTO  = 'POOMMAIL:DisplayTo'
POOMMAIL_DTSTAMP  = 'POOMMAIL:DtStamp'
POOMMAIL_ENDTIME  = 'POOMMAIL:EndTime'
POOMMAIL_FLAG  = 'POOMMAIL:Flag'
POOMMAIL_FROM  = 'POOMMAIL:From'
POOMMAIL_GLOBALOBJID  = 'POOMMAIL:GlobalObjId'
POOMMAIL_IMPORTANCE  = 'POOMMAIL:Importance'
POOMMAIL_INSTANCETYPE  = 'POOMMAIL:InstanceType'
POOMMAIL_INTERNETCPID  = 'POOMMAIL:InternetCPID'
POOMMAIL_INTERVAL  = 'POOMMAIL:Interval'
POOMMAIL_LOCATION  = 'POOMMAIL:Location'
POOMMAIL_MEETINGREQUEST  = 'POOMMAIL:MeetingRequest'
POOMMAIL_MESSAGECLASS  = 'POOMMAIL:MessageClass'
POOMMAIL_MIMEDATA  = 'POOMMAIL:MIMEData'
POOMMAIL_MIMESIZE  = 'POOMMAIL:MIMESize'
POOMMAIL_MIMETRUNCATED  = 'POOMMAIL:MIMETruncated'
POOMMAIL_MONTHOFYEAR  = 'POOMMAIL:MonthOfYear'
POOMMAIL_OCCURRENCES  = 'POOMMAIL:Occurrences'
POOMMAIL_ORGANIZER  = 'POOMMAIL:Organizer'
POOMMAIL_READ  = 'POOMMAIL:Read'
POOMMAIL_RECURRENCE  = 'POOMMAIL:Recurrence'
POOMMAIL_RECURRENCEID  = 'POOMMAIL:RecurrenceId'
POOMMAIL_RECURRENCES  = 'POOMMAIL:Recurrences'
POOMMAIL_REMINDER  = 'POOMMAIL:Reminder'
POOMMAIL_REPLY_TO  = 'POOMMAIL:Reply-To'
POOMMAIL_RESPONSEREQUESTED  = 'POOMMAIL:ResponseRequested'
POOMMAIL_SENSITIVITY  = 'POOMMAIL:Sensitivity'
POOMMAIL_STARTTIME  = 'POOMMAIL:StartTime'
POOMMAIL_SUBJECT  = 'POOMMAIL:Subject'
POOMMAIL_THREADTOPIC  = 'POOMMAIL:ThreadTopic'
POOMMAIL_TIMEZONE  = 'POOMMAIL:TimeZone'
POOMMAIL_TO  = 'POOMMAIL:To'
POOMMAIL_TYPE  = 'POOMMAIL:Type'
POOMMAIL_UNTIL  = 'POOMMAIL:Until'
POOMMAIL_WEEKOFMONTH  = 'POOMMAIL:WeekOfMonth'
PROPERTY_NO_CONTAINER  = 7
TYPE_DATE  = 1
TYPE_DATE_DASHES  = 3
TYPE_DATE_LOCAL  = 6
TYPE_HEX  = 2
TYPE_MAPI_GOID  = 5
TYPE_MAPI_STREAM  = 4
VERB_FORWARD  = 3
VERB_NONE  = 0
VERB_REPLY_ALL  = 2
VERB_REPLY_SENDER  = 1
$airsyncbaseattachments  : Horde_ActiveSync_Message_AirSyncBaseAttachments
$airsyncbasebody  : Horde_ActiveSync_Message_AirSyncBaseBody
$airsyncbasenativebodytype  : int
$answered  : bool
$attachments  : Horde_ActiveSync_Message_Attachments
$bcc  : string
$body  : stream|string
$bodysize  : int
$bodytruncated  : int
$cc  : string
$commandType  : string
Request type. One of: Horde_ActiveSync::SYNC_ADD, SYNC_MODIFY, SYNC_REMOVE, or SYNC_FETCH. Used internally for enforcing various protocol rules depending on request.
$contentclass  : int
$datereceived  : Horde_Date
$displayto  : string
$flag  : Horde_ActiveSync_Message_Flag
$flags  : mixed
Message flags
$forwarded  : bool
$from  : string
$importance  : int
$integer  : cpid
$isdraft  : bool
$meetingrequest  : Horde_ActiveSync_Message_MeetingRequest
$messageclass  : int
$messageid  : string
$mimedata  : string
$mimesize  : int
$mimetruncated  : int
$read  : int
$reply_to  : string
$send  : bool
$subject  : string
$threadtopic  : string
$to  : string
$_device  : Horde_ActiveSync_Device
The device object
$_exists  : array<string|int, mixed>
Existence cache, used for working with ghosted properties.
$_logger  : Horde_Log_Logger
Logger
$_mapping  : array<string|int, mixed>
Property mappings
$_properties  : array<string|int, mixed>
Property values.
$_streamFilters  : array<string|int, mixed>
Cache of current stream filters.
$_supported  : array<string|int, mixed>
An array describing the non-ghosted elements this message supports.
$_version  : float
The version of EAS we are to support.
__call()  : mixed
Magic caller method.
__construct()  : Horde_ActiveSync_Message_Base
Const'r
__destruct()  : mixed
__get()  : mixed
Accessor
__isset()  : mixed
Magic method.
__set()  : mixed
Setter
addAttachment()  : mixed
Add an AirSyncBaseAttachment object to this message.
decodeStream()  : mixed
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.
draftToMime()  : array<string|int, mixed>
Get a Horde_Mime object representint the data contained in this object.
encodeStream()  : mixed
Encodes this object (and any sub-objects) as wbxml to the output stream.
getClass()  : string
Return the class type for this object.
getProtocolVersion()  : float
Return the EAS version this object supports.
getSupported()  : array<string|int, mixed>
Get the list of non-ghosted properties for this message.
isEmpty()  : bool
Returns whether or not this message actually contains any data to send.
isGhosted()  : bool
Determines if the property specified has been ghosted by the client.
propertyExists()  : bool
Check the existence of a property in this message.
setSupported()  : mixed
Set the list of non-ghosted fields for this message.
_checkEncoding()  : 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.
_checkSendEmpty()  : bool
Checks to see if we should send an empty value.
_formatDate()  : 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.
_getAttribute()  : mixed
Helper method to allow default values for unset properties.
_parseDate()  : Horde_Date|bool
Get a Horde_Date from a timestamp, ensuring it's in the correct format.
_preEncodeValidation()  : bool
Give concrete classes the chance to enforce rules before encoding messages to send to the client.
_validateDecodedValues()  : bool
Give concrete classes the chance to enforce rules.
_hex2bin()  : string
Function which converts a hex entryid to a binary entryid.

Constants

CLASS_MEETING_NOTICE

public mixed CLASS_MEETING_NOTICE = 'IPM.Notification.Meeting'

CLASS_MEETING_REQUEST

public mixed CLASS_MEETING_REQUEST = 'IPM.Schedule.Meeting.Request'

CLASS_NOTE

public mixed CLASS_NOTE = 'IPM.Note'

FLAG_READ_SEEN

public mixed FLAG_READ_SEEN = 1

FLAG_READ_UNSEEN

public mixed FLAG_READ_UNSEEN = 0

IMPORTANCE_HIGH

public mixed IMPORTANCE_HIGH = 2

IMPORTANCE_LOW

public mixed IMPORTANCE_LOW = 0

IMPORTANCE_NORM

public mixed IMPORTANCE_NORM = 1

INTERNET_CPID_UTF8

public mixed INTERNET_CPID_UTF8 = 65001

KEY_ATTRIBUTE

public mixed KEY_ATTRIBUTE = 1

KEY_PROPERTY

public mixed KEY_PROPERTY = 4

KEY_TYPE

public mixed KEY_TYPE = 3

KEY_VALUES

public mixed KEY_VALUES = 2

POOMMAIL2_ACCOUNTID

public mixed POOMMAIL2_ACCOUNTID = 'POOMMAIL2:AccountId'

POOMMAIL2_BCC

public mixed POOMMAIL2_BCC = 'POOMMAIL2:Bcc'

POOMMAIL2_CALENDARTYPE

public mixed POOMMAIL2_CALENDARTYPE = 'POOMMAIL2:CalendarType'

POOMMAIL2_CONVERSATIONID

public mixed POOMMAIL2_CONVERSATIONID = 'POOMMAIL2:ConversationId'

POOMMAIL2_CONVERSATIONINDEX

public mixed POOMMAIL2_CONVERSATIONINDEX = 'POOMMAIL2:ConversationIndex'

POOMMAIL2_FIRSTDAYOFWEEK

public mixed POOMMAIL2_FIRSTDAYOFWEEK = 'POOMMAIL2:FirstDayOfWeek'

POOMMAIL2_ISDRAFT

public mixed POOMMAIL2_ISDRAFT = 'POOMMAIL2:IsDraft'

POOMMAIL2_ISLEAPMONTH

public mixed POOMMAIL2_ISLEAPMONTH = 'POOMMAIL2:IsLeapMonth'

POOMMAIL2_LASTVERBEXECUTED

public mixed POOMMAIL2_LASTVERBEXECUTED = 'POOMMAIL2:LastVerbExecuted'

POOMMAIL2_LASTVERBEXECUTIONTIME

public mixed POOMMAIL2_LASTVERBEXECUTIONTIME = 'POOMMAIL2:LastVerbExecutionTime'

POOMMAIL2_MEETINGMESSAGETYPE

public mixed POOMMAIL2_MEETINGMESSAGETYPE = 'POOMMAIL2:MeetingMessageType'

POOMMAIL2_RECEIVEDASBCC

public mixed POOMMAIL2_RECEIVEDASBCC = 'POOMMAIL2:ReceivedAsBcc'

POOMMAIL2_SEND

public mixed POOMMAIL2_SEND = 'POOMMAIL2:Send'

POOMMAIL2_SENDER

public mixed POOMMAIL2_SENDER = 'POOMMAIL2:Sender'

POOMMAIL2_UMATTDURATION

public mixed POOMMAIL2_UMATTDURATION = 'POOMMAIL2:UmAttDuration'

POOMMAIL2_UMATTORDER

public mixed POOMMAIL2_UMATTORDER = 'POOMMAIL2:UmAttOrder'

POOMMAIL2_UMCALLERID

public mixed POOMMAIL2_UMCALLERID = 'POOMMAIL2:UmCallerId'

POOMMAIL2_UMUSERNOTES

public mixed POOMMAIL2_UMUSERNOTES = 'POOMMAIL2:UmUserNotes'

POOMMAIL_ALLDAYEVENT

public mixed POOMMAIL_ALLDAYEVENT = 'POOMMAIL:AllDayEvent'

POOMMAIL_ATTACHMENT

public mixed POOMMAIL_ATTACHMENT = 'POOMMAIL:Attachment'

POOMMAIL_ATTACHMENTS

public mixed POOMMAIL_ATTACHMENTS = 'POOMMAIL:Attachments'

POOMMAIL_BODY

public mixed POOMMAIL_BODY = 'POOMMAIL:Body'

POOMMAIL_BODYSIZE

public mixed POOMMAIL_BODYSIZE = 'POOMMAIL:BodySize'

POOMMAIL_BODYTRUNCATED

public mixed POOMMAIL_BODYTRUNCATED = 'POOMMAIL:BodyTruncated'

POOMMAIL_BUSYSTATUS

public mixed POOMMAIL_BUSYSTATUS = 'POOMMAIL:BusyStatus'

POOMMAIL_CATEGORIES

public mixed POOMMAIL_CATEGORIES = 'POOMMAIL:Categories'

POOMMAIL_CATEGORY

public mixed POOMMAIL_CATEGORY = 'POOMMAIL:Category'

POOMMAIL_CC

public mixed POOMMAIL_CC = 'POOMMAIL:Cc'

POOMMAIL_COMPLETETIME

public mixed POOMMAIL_COMPLETETIME = 'POOMMAIL:CompleteTime'

POOMMAIL_CONTENTCLASS

public mixed POOMMAIL_CONTENTCLASS = 'POOMMAIL:ContentClass'

POOMMAIL_DATERECEIVED

public mixed POOMMAIL_DATERECEIVED = 'POOMMAIL:DateReceived'

POOMMAIL_DAYOFMONTH

public mixed POOMMAIL_DAYOFMONTH = 'POOMMAIL:DayOfMonth'

POOMMAIL_DAYOFWEEK

public mixed POOMMAIL_DAYOFWEEK = 'POOMMAIL:DayOfWeek'

POOMMAIL_DISALLOWNEWTIMEPROPOSAL

public mixed POOMMAIL_DISALLOWNEWTIMEPROPOSAL = 'POOMMAIL:DisallowNewTimeProposal'

POOMMAIL_DISPLAYTO

public mixed POOMMAIL_DISPLAYTO = 'POOMMAIL:DisplayTo'

POOMMAIL_DTSTAMP

public mixed POOMMAIL_DTSTAMP = 'POOMMAIL:DtStamp'

POOMMAIL_ENDTIME

public mixed POOMMAIL_ENDTIME = 'POOMMAIL:EndTime'

POOMMAIL_FLAG

public mixed POOMMAIL_FLAG = 'POOMMAIL:Flag'

POOMMAIL_FROM

public mixed POOMMAIL_FROM = 'POOMMAIL:From'

POOMMAIL_GLOBALOBJID

public mixed POOMMAIL_GLOBALOBJID = 'POOMMAIL:GlobalObjId'

POOMMAIL_IMPORTANCE

public mixed POOMMAIL_IMPORTANCE = 'POOMMAIL:Importance'

POOMMAIL_INSTANCETYPE

public mixed POOMMAIL_INSTANCETYPE = 'POOMMAIL:InstanceType'

POOMMAIL_INTERNETCPID

public mixed POOMMAIL_INTERNETCPID = 'POOMMAIL:InternetCPID'

POOMMAIL_INTERVAL

public mixed POOMMAIL_INTERVAL = 'POOMMAIL:Interval'

POOMMAIL_LOCATION

public mixed POOMMAIL_LOCATION = 'POOMMAIL:Location'

POOMMAIL_MEETINGREQUEST

public mixed POOMMAIL_MEETINGREQUEST = 'POOMMAIL:MeetingRequest'

POOMMAIL_MESSAGECLASS

public mixed POOMMAIL_MESSAGECLASS = 'POOMMAIL:MessageClass'

POOMMAIL_MIMEDATA

public mixed POOMMAIL_MIMEDATA = 'POOMMAIL:MIMEData'

POOMMAIL_MIMESIZE

public mixed POOMMAIL_MIMESIZE = 'POOMMAIL:MIMESize'

POOMMAIL_MIMETRUNCATED

public mixed POOMMAIL_MIMETRUNCATED = 'POOMMAIL:MIMETruncated'

POOMMAIL_MONTHOFYEAR

public mixed POOMMAIL_MONTHOFYEAR = 'POOMMAIL:MonthOfYear'

POOMMAIL_OCCURRENCES

public mixed POOMMAIL_OCCURRENCES = 'POOMMAIL:Occurrences'

POOMMAIL_ORGANIZER

public mixed POOMMAIL_ORGANIZER = 'POOMMAIL:Organizer'

POOMMAIL_READ

public mixed POOMMAIL_READ = 'POOMMAIL:Read'

POOMMAIL_RECURRENCE

public mixed POOMMAIL_RECURRENCE = 'POOMMAIL:Recurrence'

POOMMAIL_RECURRENCEID

public mixed POOMMAIL_RECURRENCEID = 'POOMMAIL:RecurrenceId'

POOMMAIL_RECURRENCES

public mixed POOMMAIL_RECURRENCES = 'POOMMAIL:Recurrences'

POOMMAIL_REMINDER

public mixed POOMMAIL_REMINDER = 'POOMMAIL:Reminder'

POOMMAIL_REPLY_TO

public mixed POOMMAIL_REPLY_TO = 'POOMMAIL:Reply-To'

POOMMAIL_RESPONSEREQUESTED

public mixed POOMMAIL_RESPONSEREQUESTED = 'POOMMAIL:ResponseRequested'

POOMMAIL_SENSITIVITY

public mixed POOMMAIL_SENSITIVITY = 'POOMMAIL:Sensitivity'

POOMMAIL_STARTTIME

public mixed POOMMAIL_STARTTIME = 'POOMMAIL:StartTime'

POOMMAIL_SUBJECT

public mixed POOMMAIL_SUBJECT = 'POOMMAIL:Subject'

POOMMAIL_THREADTOPIC

public mixed POOMMAIL_THREADTOPIC = 'POOMMAIL:ThreadTopic'

POOMMAIL_TIMEZONE

public mixed POOMMAIL_TIMEZONE = 'POOMMAIL:TimeZone'

POOMMAIL_TO

public mixed POOMMAIL_TO = 'POOMMAIL:To'

POOMMAIL_TYPE

public mixed POOMMAIL_TYPE = 'POOMMAIL:Type'

POOMMAIL_UNTIL

public mixed POOMMAIL_UNTIL = 'POOMMAIL:Until'

POOMMAIL_WEEKOFMONTH

public mixed POOMMAIL_WEEKOFMONTH = 'POOMMAIL:WeekOfMonth'

PROPERTY_NO_CONTAINER

public mixed PROPERTY_NO_CONTAINER = 7

TYPE_DATE

public mixed TYPE_DATE = 1

TYPE_DATE_DASHES

public mixed TYPE_DATE_DASHES = 3

TYPE_DATE_LOCAL

public mixed TYPE_DATE_LOCAL = 6

TYPE_HEX

public mixed TYPE_HEX = 2

TYPE_MAPI_GOID

public mixed TYPE_MAPI_GOID = 5

TYPE_MAPI_STREAM

public mixed TYPE_MAPI_STREAM = 4

VERB_FORWARD

public mixed VERB_FORWARD = 3

VERB_NONE

public mixed VERB_NONE = 0

VERB_REPLY_ALL

public mixed VERB_REPLY_ALL = 2

VERB_REPLY_SENDER

public mixed VERB_REPLY_SENDER = 1

Properties

$airsyncbaseattachments

public Horde_ActiveSync_Message_AirSyncBaseAttachments $airsyncbaseattachments

(EAS > 2.5 only).

$airsyncbasenativebodytype

public int $airsyncbasenativebodytype

(EAS > 2.5 only).

$answered

public bool $answered

@since 2.4.0

$attachments

public Horde_ActiveSync_Message_Attachments $attachments

(EAS 2.5 only).

$bcc

public string $bcc

The bcc recipients (EAS 16.0 only).

$body

public stream|string $body

(EAS 2.5 only)

$bodysize

public int $bodysize

(EAS 2.5 only)

$bodytruncated

public int $bodytruncated

(EAS 2.5 only)

$commandType

Request type. One of: Horde_ActiveSync::SYNC_ADD, SYNC_MODIFY, SYNC_REMOVE, or SYNC_FETCH. Used internally for enforcing various protocol rules depending on request.

public string $commandType

@since 2.31.0

$contentclass

public int $contentclass

(EAS > 2.5 only).

$datereceived

public Horde_Date $datereceived

$displayto

public string $displayto

$flags

Message flags

public mixed $flags = \false

Horde_ActiveSync::FLAG_* constant

$forwarded

public bool $forwarded

@since 2.4.0

$from

public string $from

$importance

public int $importance

$integer

public cpid $integer

The codepage id.

$isdraft

public bool $isdraft

(EAS 16.0 only).

$messageclass

public int $messageclass

$messageid

public string $messageid

@since 2.4.0

$mimedata

public string $mimedata

$mimesize

public int $mimesize

$mimetruncated

public int $mimetruncated

$reply_to

public string $reply_to

$send

public bool $send

(EAS 16.0 only).

// Internal properties. Not streamed to device.

$subject

public string $subject

$threadtopic

public string $threadtopic

$_exists

Existence cache, used for working with ghosted properties.

protected array<string|int, mixed> $_exists = array()

$_logger

Logger

protected Horde_Log_Logger $_logger

$_mapping

Property mappings

protected array<string|int, mixed> $_mapping = array( self::POOMMAIL_TO => array(self::KEY_ATTRIBUTE => 'to'), self::POOMMAIL_CC => array(self::KEY_ATTRIBUTE => 'cc'), self::POOMMAIL_FROM => array(self::KEY_ATTRIBUTE => 'from'), self::POOMMAIL_SUBJECT => array(self::KEY_ATTRIBUTE => 'subject'), self::POOMMAIL_REPLY_TO => array(self::KEY_ATTRIBUTE => 'reply_to'), self::POOMMAIL_DATERECEIVED => array(self::KEY_ATTRIBUTE => 'datereceived', self::KEY_TYPE => self::TYPE_DATE_DASHES), self::POOMMAIL_DISPLAYTO => array(self::KEY_ATTRIBUTE => 'displayto'), self::POOMMAIL_THREADTOPIC => array(self::KEY_ATTRIBUTE => 'threadtopic'), self::POOMMAIL_IMPORTANCE => array(self::KEY_ATTRIBUTE => 'importance'), self::POOMMAIL_READ => array(self::KEY_ATTRIBUTE => 'read'), self::POOMMAIL_MIMETRUNCATED => array(self::KEY_ATTRIBUTE => 'mimetruncated'), // Not used. self::POOMMAIL_MIMEDATA => array(self::KEY_ATTRIBUTE => 'mimedata', self::KEY_TYPE => 'KEY_TYPE_MAPI_STREAM'), self::POOMMAIL_MIMESIZE => array(self::KEY_ATTRIBUTE => 'mimesize'), self::POOMMAIL_MESSAGECLASS => array(self::KEY_ATTRIBUTE => 'messageclass'), self::POOMMAIL_MEETINGREQUEST => array(self::KEY_ATTRIBUTE => 'meetingrequest', self::KEY_TYPE => 'Horde_ActiveSync_Message_MeetingRequest'), self::POOMMAIL_INTERNETCPID => array(self::KEY_ATTRIBUTE => 'cpid'), )

$_properties

Property values.

protected array<string|int, mixed> $_properties = array('to' => \false, 'cc' => \false, 'from' => \false, 'subject' => \false, 'threadtopic' => \false, 'datereceived' => \false, 'displayto' => \false, 'importance' => \false, 'mimetruncated' => \false, 'mimedata' => \false, 'mimesize' => \false, 'messageclass' => \false, 'meetingrequest' => \false, 'reply_to' => \false, 'read' => \false, 'cpid' => \false)

$_streamFilters

Cache of current stream filters.

protected array<string|int, mixed> $_streamFilters = array()

$_supported

An array describing the non-ghosted elements this message supports.

protected array<string|int, mixed> $_supported = array()

$_version

The version of EAS we are to support.

protected float $_version = \Horde_ActiveSync::VERSION_TWOFIVE

Methods

__call()

Magic caller method.

public __call(mixed $method, array<string|int, mixed> $arg) : mixed
Parameters
$method : mixed

The method to call.

$arg : array<string|int, mixed>

Method arguments.

Return values
mixed

__construct()

Const'r

public __construct([array<string|int, mixed> $options = array() ]) : Horde_ActiveSync_Message_Base
Parameters
$options : array<string|int, mixed> = array()

Configuration options for the message:

  • logger: (Horde_Log_Logger) A logger instance DEFAULT: none (No logging).
  • protocolversion: (float) The version of EAS to support. DEFAULT: Horde_ActiveSync::VERSION_TWOFIVE (2.5)
  • device: (Horde_ActiveSync_Device) The device object. @since 2.9.2
Tags
see
Horde_ActiveSync_Message_Base::__construct()
Return values
Horde_ActiveSync_Message_Base

__destruct()

public __destruct() : mixed
Return values
mixed

__get()

Accessor

public & __get(string $property) : mixed
Parameters
$property : string

Property to get.

Tags
todo:

Return boolean false if not set. Not BC to change it.

Return values
mixed

The value of the requested property.

__isset()

Magic method.

public __isset(string $property) : mixed
Parameters
$property : string

The property name to check.

Return values
mixed

__set()

Setter

public __set(string $property, mixed $value) : mixed
Parameters
$property : string

The property to set.

$value : mixed

The value to set it to.

Tags
throws
InvalidArgumentException
Return values
mixed

decodeStream()

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.

public decodeStream(Horde_ActiveSync_Wbxml_Decoder &$decoder) : mixed
Parameters
$decoder : Horde_ActiveSync_Wbxml_Decoder
Tags
throws
Horde_ActiveSync_Exception
Return values
mixed

draftToMime()

Get a Horde_Mime object representint the data contained in this object.

public draftToMime() : array<string|int, mixed>

[MS_ASEMAIL 3.1.53]

Return values
array<string|int, mixed>

An array containing:

  • part: Horde_Mime_Part containing the body data NO ATTACHMENTS.
  • headers: Horde_Mime_Headers containing the envelope headers.

getClass()

Return the class type for this object.

public getClass() : string
Return values
string

getProtocolVersion()

Return the EAS version this object supports.

public getProtocolVersion() : float
Return values
float

A Horde_ActiveSync::VERSION_* constant.

getSupported()

Get the list of non-ghosted properties for this message.

public getSupported() : array<string|int, mixed>
Return values
array<string|int, mixed>

The array of non-ghosted properties

isEmpty()

Returns whether or not this message actually contains any data to send.

public isEmpty() : bool
Tags
since
2.34.0
Return values
bool

True if message is empty, otherwise false.

isGhosted()

Determines if the property specified has been ghosted by the client.

public isGhosted(string $property) : bool

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.

Parameters
$property : string

The property to check

Return values
bool

propertyExists()

Check the existence of a property in this message.

public propertyExists(string $property) : bool
Parameters
$property : string

The property name

Return values
bool

setSupported()

Set the list of non-ghosted fields for this message.

public setSupported(array<string|int, mixed> $fields) : mixed
Parameters
$fields : array<string|int, mixed>

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.

Return values
mixed

_checkEncoding()

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.

protected _checkEncoding(mixed $data, string $tag) : mixed
Parameters
$data : mixed

The data to check. A string or stream resource.

$tag : string

The tag we are outputing.

Return values
mixed

The encoded data. A string or stream resource with a filter attached.

_checkSendEmpty()

Checks to see if we should send an empty value.

protected _checkSendEmpty(string $tag) : bool
Parameters
$tag : string

The tag name

Return values
bool

_formatDate()

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.

protected _formatDate(Horde_Date $dt, int $type) : string

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.

Parameters
$dt : Horde_Date

The Horde_Date object to format (should normally be in local tz).

$type : int

The type to format as: One of TYPE_DATE or TYPE_DATE_DASHES, TYPE_DATE_LOCAL

Tags
throws
InvalidArgumentException
Return values
string

The formatted date

_getAttribute()

Helper method to allow default values for unset properties.

protected _getAttribute(string $name[, stting $default = null ]) : mixed
Parameters
$name : string

The property name

$default : stting = null

The default value to return if $property is empty

Return values
mixed

_parseDate()

Get a Horde_Date from a timestamp, ensuring it's in the correct format.

protected _parseDate(string $ts) : Horde_Date|bool

Used when decoding an incoming date value from the client.

Parameters
$ts : string

The timestamp

Return values
Horde_Date|bool

The Horde_Date or false if unable to decode.

_preEncodeValidation()

Give concrete classes the chance to enforce rules before encoding messages to send to the client.

protected _preEncodeValidation() : bool
Tags
since
2.31.0
Return values
bool

True if values were valid (or could be made valid). False if values are unable to be validated.

_validateDecodedValues()

Give concrete classes the chance to enforce rules.

protected _validateDecodedValues() : bool
Tags
since
2.31.0
Return values
bool

True on success, otherwise false.

_hex2bin()

Function which converts a hex entryid to a binary entryid.

private static _hex2bin(string $data) : string
Parameters
$data : string

The hexadecimal string

Return values
string

The binary data

Search results