Overview

Packages

  • IMP

Classes

  • IMP
  • IMP_Ajax_Addresses
  • IMP_Ajax_Application
  • IMP_Ajax_Application_Compose
  • IMP_Ajax_Application_Handler_Common
  • IMP_Ajax_Application_Handler_ComposeAttach
  • IMP_Ajax_Application_Handler_Draft
  • IMP_Ajax_Application_Handler_Dynamic
  • IMP_Ajax_Application_Handler_ImageUnblock
  • IMP_Ajax_Application_Handler_Mboxtoggle
  • IMP_Ajax_Application_Handler_Passphrase
  • IMP_Ajax_Application_Handler_Remote
  • IMP_Ajax_Application_Handler_RemotePrefs
  • IMP_Ajax_Application_Handler_Search
  • IMP_Ajax_Application_Handler_Smartmobile
  • IMP_Ajax_Application_ListMessages
  • IMP_Ajax_Application_ShowMessage
  • IMP_Ajax_Application_Viewport
  • IMP_Ajax_Application_Viewport_Error
  • IMP_Ajax_Imple_ImportEncryptKey
  • IMP_Ajax_Imple_ItipRequest
  • IMP_Ajax_Imple_PassphraseDialog
  • IMP_Ajax_Imple_VcardImport
  • IMP_Ajax_Queue
  • IMP_Api
  • IMP_Application
  • IMP_Auth
  • IMP_Basic_Base
  • IMP_Basic_Compose
  • IMP_Basic_Contacts
  • IMP_Basic_Error
  • IMP_Basic_Folders
  • IMP_Basic_Listinfo
  • IMP_Basic_Mailbox
  • IMP_Basic_Message
  • IMP_Basic_Pgp
  • IMP_Basic_Saveimage
  • IMP_Basic_Search
  • IMP_Basic_Searchbasic
  • IMP_Basic_Smime
  • IMP_Basic_Thread
  • IMP_Block_Newmail
  • IMP_Block_Summary
  • IMP_Compose
  • IMP_Compose_Attachment
  • IMP_Compose_Attachment_Linked_Metadata
  • IMP_Compose_Attachment_Metadata
  • IMP_Compose_Attachment_Storage
  • IMP_Compose_Attachment_Storage_AutoDetermine
  • IMP_Compose_Attachment_Storage_Temp
  • IMP_Compose_Attachment_Storage_VfsLinked
  • IMP_Compose_Exception
  • IMP_Compose_Exception_Address
  • IMP_Compose_HtmlSignature
  • IMP_Compose_Link
  • IMP_Compose_LinkedAttachment
  • IMP_Compose_Ui
  • IMP_Compose_View
  • IMP_Contacts
  • IMP_Contacts_Avatar_Addressbook
  • IMP_Contacts_Avatar_Gravatar
  • IMP_Contacts_Avatar_Unknown
  • IMP_Contacts_Flag_Host
  • IMP_Contacts_Image
  • IMP_Contents
  • IMP_Contents_InlineOutput
  • IMP_Contents_View
  • IMP_Crypt_Pgp
  • IMP_Crypt_Smime
  • IMP_Dynamic_AddressList
  • IMP_Dynamic_Base
  • IMP_Dynamic_Compose
  • IMP_Dynamic_Compose_Common
  • IMP_Dynamic_Helper_Base
  • IMP_Dynamic_Mailbox
  • IMP_Dynamic_Message
  • IMP_Exception
  • IMP_Factory_AuthImap
  • IMP_Factory_Compose
  • IMP_Factory_ComposeAtc
  • IMP_Factory_Contacts
  • IMP_Factory_Contents
  • IMP_Factory_Flags
  • IMP_Factory_Ftree
  • IMP_Factory_Identity
  • IMP_Factory_Imap
  • IMP_Factory_Mail
  • IMP_Factory_MailAutoconfig
  • IMP_Factory_Mailbox
  • IMP_Factory_MailboxCache
  • IMP_Factory_MailboxList
  • IMP_Factory_Maillog
  • IMP_Factory_MimeViewer
  • IMP_Factory_Pgp
  • IMP_Factory_PrefsSort
  • IMP_Factory_Quota
  • IMP_Factory_Search
  • IMP_Factory_Sentmail
  • IMP_Factory_Smime
  • IMP_Factory_Spam
  • IMP_Filter
  • IMP_Flag_Base
  • IMP_Flag_Imap
  • IMP_Flag_Imap_Answered
  • IMP_Flag_Imap_Deleted
  • IMP_Flag_Imap_Draft
  • IMP_Flag_Imap_Flagged
  • IMP_Flag_Imap_Forwarded
  • IMP_Flag_Imap_Junk
  • IMP_Flag_Imap_NotJunk
  • IMP_Flag_Imap_Seen
  • IMP_Flag_System_Attachment
  • IMP_Flag_System_Encrypted
  • IMP_Flag_System_HighPriority
  • IMP_Flag_System_List
  • IMP_Flag_System_LowPriority
  • IMP_Flag_System_Match_Address
  • IMP_Flag_System_Match_Flag
  • IMP_Flag_System_Match_Header
  • IMP_Flag_System_Personal
  • IMP_Flag_System_Signed
  • IMP_Flag_System_Unseen
  • IMP_Flag_User
  • IMP_Flags
  • IMP_Ftree
  • IMP_Ftree_Account
  • IMP_Ftree_Account_Imap
  • IMP_Ftree_Account_Inboxonly
  • IMP_Ftree_Account_Remote
  • IMP_Ftree_Account_Vfolder
  • IMP_Ftree_Element
  • IMP_Ftree_Eltdiff
  • IMP_Ftree_Iterator
  • IMP_Ftree_Iterator_Ancestors
  • IMP_Ftree_IteratorFilter
  • IMP_Ftree_IteratorFilter_Children
  • IMP_Ftree_IteratorFilter_Containers
  • IMP_Ftree_IteratorFilter_Expanded
  • IMP_Ftree_IteratorFilter_Invisible
  • IMP_Ftree_IteratorFilter_Mailboxes
  • IMP_Ftree_IteratorFilter_Nonimap
  • IMP_Ftree_IteratorFilter_Polled
  • IMP_Ftree_IteratorFilter_Remote
  • IMP_Ftree_IteratorFilter_Special
  • IMP_Ftree_IteratorFilter_Subscribed
  • IMP_Ftree_IteratorFilter_Vfolder
  • IMP_Ftree_Prefs
  • IMP_Ftree_Prefs_Expanded
  • IMP_Ftree_Prefs_Poll
  • IMP_Ftree_Select
  • IMP_Images
  • IMP_Imap
  • IMP_Imap_Acl
  • IMP_Imap_Cache_Wrapper
  • IMP_Imap_Config
  • IMP_Imap_Exception
  • IMP_Imap_Password
  • IMP_Imap_PermanentFlags
  • IMP_Imap_Remote
  • IMP_Indices
  • IMP_Indices_Mailbox
  • IMP_LoginTasks_SystemTask_GarbageCollection
  • IMP_LoginTasks_SystemTask_Upgrade
  • IMP_LoginTasks_SystemTask_UpgradeAuth
  • IMP_LoginTasks_Task_Autocreate
  • IMP_LoginTasks_Task_DeleteAttachmentsMonthly
  • IMP_LoginTasks_Task_DeleteSentmailMonthly
  • IMP_LoginTasks_Task_FilterOnLogin
  • IMP_LoginTasks_Task_PurgeSentmail
  • IMP_LoginTasks_Task_PurgeSpam
  • IMP_LoginTasks_Task_PurgeTrash
  • IMP_LoginTasks_Task_RecoverDraft
  • IMP_LoginTasks_Task_RenameSentmailMonthly
  • IMP_Mailbox
  • IMP_Mailbox_List
  • IMP_Mailbox_List_Pop3
  • IMP_Mailbox_List_Thread
  • IMP_Mailbox_List_Virtual
  • IMP_Mailbox_SessionCache
  • IMP_Mailbox_Ui
  • IMP_Maillog
  • IMP_Maillog_Log_Base
  • IMP_Maillog_Log_Forward
  • IMP_Maillog_Log_Mdn
  • IMP_Maillog_Log_Redirect
  • IMP_Maillog_Log_Reply
  • IMP_Maillog_Log_Replyall
  • IMP_Maillog_Log_Replylist
  • IMP_Maillog_Message
  • IMP_Maillog_Storage_Base
  • IMP_Maillog_Storage_Composite
  • IMP_Maillog_Storage_History
  • IMP_Maillog_Storage_Mdnsent
  • IMP_Maillog_Storage_Null
  • IMP_Mbox_Generate
  • IMP_Mbox_Import
  • IMP_Mbox_Size
  • IMP_Message
  • IMP_Message_Date
  • IMP_Message_Ui
  • IMP_Mime_Headers
  • IMP_Mime_Status
  • IMP_Mime_Status_RenderIssue
  • IMP_Mime_Status_RenderIssue_Display
  • IMP_Mime_Viewer_Alternative
  • IMP_Mime_Viewer_Appledouble
  • IMP_Mime_Viewer_Audio
  • IMP_Mime_Viewer_Enriched
  • IMP_Mime_Viewer_Externalbody
  • IMP_Mime_Viewer_Html
  • IMP_Mime_Viewer_Images
  • IMP_Mime_Viewer_Itip
  • IMP_Mime_Viewer_Mdn
  • IMP_Mime_Viewer_Partial
  • IMP_Mime_Viewer_Pdf
  • IMP_Mime_Viewer_Pgp
  • IMP_Mime_Viewer_Plain
  • IMP_Mime_Viewer_Related
  • IMP_Mime_Viewer_Rfc822
  • IMP_Mime_Viewer_Smil
  • IMP_Mime_Viewer_Smime
  • IMP_Mime_Viewer_Status
  • IMP_Mime_Viewer_Vcard
  • IMP_Mime_Viewer_Video
  • IMP_Mime_Viewer_Zip
  • IMP_Minimal_Base
  • IMP_Minimal_Compose
  • IMP_Minimal_Error
  • IMP_Minimal_Folders
  • IMP_Minimal_Mailbox
  • IMP_Minimal_Message
  • IMP_Minimal_Messagepart
  • IMP_Minimal_Search
  • IMP_Notification_Event_Status
  • IMP_Notification_Handler_Decorator_ImapAlerts
  • IMP_Notification_Handler_Decorator_NewmailNotify
  • IMP_Perms
  • IMP_Prefs_AttribText
  • IMP_Prefs_Identity
  • IMP_Prefs_Sort
  • IMP_Prefs_Sort_FixedDate
  • IMP_Prefs_Sort_None
  • IMP_Prefs_Sort_Sortpref
  • IMP_Prefs_Sort_Sortpref_Locked
  • IMP_Prefs_Special_Acl
  • IMP_Prefs_Special_ComposeTemplates
  • IMP_Prefs_Special_Drafts
  • IMP_Prefs_Special_Encrypt
  • IMP_Prefs_Special_Flag
  • IMP_Prefs_Special_HtmlSignature
  • IMP_Prefs_Special_ImageReplacement
  • IMP_Prefs_Special_InitialPage
  • IMP_Prefs_Special_Mailto
  • IMP_Prefs_Special_NewmailSound
  • IMP_Prefs_Special_PgpPrivateKey
  • IMP_Prefs_Special_PgpPublicKey
  • IMP_Prefs_Special_Remote
  • IMP_Prefs_Special_Searches
  • IMP_Prefs_Special_Sentmail
  • IMP_Prefs_Special_SmimePrivateKey
  • IMP_Prefs_Special_SmimePublicKey
  • IMP_Prefs_Special_Sourceselect
  • IMP_Prefs_Special_Spam
  • IMP_Prefs_Special_SpecialMboxes
  • IMP_Prefs_Special_Trash
  • IMP_Quota
  • IMP_Quota_Hook
  • IMP_Quota_Imap
  • IMP_Quota_Null
  • IMP_Quota_Ui
  • IMP_Remote
  • IMP_Remote_Account
  • IMP_Script_Package_Autocomplete
  • IMP_Script_Package_ComposeBase
  • IMP_Script_Package_DynamicBase
  • IMP_Script_Package_Editor
  • IMP_Script_Package_Imp
  • IMP_Search
  • IMP_Search_Element
  • IMP_Search_Element_Attachment
  • IMP_Search_Element_Autogenerated
  • IMP_Search_Element_Bulk
  • IMP_Search_Element_Contacts
  • IMP_Search_Element_Daterange
  • IMP_Search_Element_Flag
  • IMP_Search_Element_Header
  • IMP_Search_Element_Mailinglist
  • IMP_Search_Element_Or
  • IMP_Search_Element_Personal
  • IMP_Search_Element_Recipient
  • IMP_Search_Element_Size
  • IMP_Search_Element_Text
  • IMP_Search_Element_Within
  • IMP_Search_Filter
  • IMP_Search_Filter_Attachment
  • IMP_Search_Filter_Autogenerated
  • IMP_Search_Filter_Builtin
  • IMP_Search_Filter_Bulk
  • IMP_Search_Filter_Contacts
  • IMP_Search_Filter_Mailinglist
  • IMP_Search_Filter_Personal
  • IMP_Search_IteratorFilter
  • IMP_Search_Query
  • IMP_Search_Ui
  • IMP_Search_Vfolder
  • IMP_Search_Vfolder_Builtin
  • IMP_Search_Vfolder_Vinbox
  • IMP_Search_Vfolder_Vtrash
  • IMP_Sentmail
  • IMP_Sentmail_Mongo
  • IMP_Sentmail_Null
  • IMP_Sentmail_Sql
  • IMP_Smartmobile
  • IMP_Spam
  • IMP_Spam_Email
  • IMP_Spam_Null
  • IMP_Spam_Program
  • IMP_Test
  • IMP_Tree_Flist
  • IMP_Tree_Jquerymobile
  • IMP_Tree_Simplehtml
  • IMP_View_Subinfo

Interfaces

  • IMP_Compose_Attachment_Linked
  • IMP_Contacts_Avatar_Backend
  • IMP_Contacts_Flag_Backend
  • IMP_Spam_Base
  • Overview
  • Package
  • Class
  • Tree

Class IMP_Mailbox_List

This class contains code related to generating and handling a mailbox message list.

IMP_Mailbox_List implements ArrayAccess, Countable, Iterator, Serializable

Direct known subclasses

IMP_Mailbox_List_Pop3, IMP_Mailbox_List_Virtual
Package: IMP
Category: Horde
Copyright: 2002-2014 Horde LLC
License: GPL
Author: Michael Slusarz slusarz@horde.org
Located at Mailbox/List.php
Methods summary
public
# __construct( string $mbox )

Constructor.

Constructor.

Parameters

$mbox
The mailbox to work with.
public array
# getMailboxArray( array $msgnum, array $options = array() )

Build the array of message information.

Build the array of message information.

Parameters

$msgnum
An array of index numbers.
$options
<p>Additional options: - headers: (boolean) Return info on the non-envelope headers 'Importance', 'List-Post', and 'X-Priority'. DEFAULT: false (only envelope headers returned) - preview: (mixed) Include preview information? If empty, add no preview information. If 1, uses value from prefs. If 2, forces addition of preview info. DEFAULT: No preview information. - type: (boolean) Return info on the MIME Content-Type of the base message part ('Content-Type' header). DEFAULT: false</p>

Returns

array

An array with the following keys: - overview: (array) The overview information. Contains the following: - envelope: (Horde_Imap_Client_Data_Envelope) Envelope information returned from the IMAP server. - flags: (array) The list of IMAP flags returned from the server. - headers: (array) Horde_Mime_Headers objects containing header data if either $options['headers'] or $options['type'] are true. - idx: (integer) Array index of this message. - mailbox: (string) The mailbox containing the message. - preview: (string) If requested in $options['preview'], the preview text. - previewcut: (boolean) Has the preview text been cut? - size: (integer) The size of the message in bytes. - uid: (string) The unique ID of the message. - uids: (IMP_Indices) An indices object.

public array
# buildMailboxPage( integer $page = 0, integer $start = 0 )

Using the preferences and the current mailbox, determines the messages to view on the current page (if using a paged view).

Using the preferences and the current mailbox, determines the messages to view on the current page (if using a paged view).

Parameters

$page
The page number currently being displayed.
$start
The starting message number.

Returns

array

An array with the following fields: - anymsg: (boolean) Are there any messages at all in mailbox? E.g. If 'msgcount' is 0, there may still be hidden deleted messages. - begin: (integer) The beginning message sequence number of the page. - end: (integer) The ending message sequence number of the page. - msgcount: (integer) The number of viewable messages in the current mailbox. - page: (integer) The current page number. - pagecount: (integer) The number of pages in this mailbox.

public boolean
# isBuilt( )

Returns true if the mailbox data has been built.

Returns true if the mailbox data has been built.

Returns

boolean
True if the mailbox has been built.
public mixed
# unseenMessages( integer $results, array $opts = array() )

Get the list of unseen messages in the mailbox (IMAP UNSEEN flag, with UNDELETED if we're hiding deleted messages).

Get the list of unseen messages in the mailbox (IMAP UNSEEN flag, with UNDELETED if we're hiding deleted messages).

Parameters

$results
<p>A Horde_Imap_Client::SEARCH_RESULTS_* constant that indicates the desired return type.</p>
$opts
<p>Additional options: - sort: (array) List of sort criteria to use. - uids: (boolean) Return UIDs instead of sequence numbers (for $results queries that return message lists). DEFAULT: false</p>

Returns

mixed
Whatever is requested in $results.
public integer
# mailboxStart( integer $total )

Determines the sequence number of the first message to display, based on the user's preferences.

Determines the sequence number of the first message to display, based on the user's preferences.

Parameters

$total
The total number of messages in the mailbox.

Returns

integer
The sequence number in the sorted mailbox.
public
# rebuild( boolean $reset = false )

Rebuilds/resets the mailbox list.

Rebuilds/resets the mailbox list.

Parameters

$reset
If true, resets the list instead of rebuilding.
public mixed
# getArrayIndex( integer $uid, string $mbox = null )

Returns the array index of the given message UID.

Returns the array index of the given message UID.

Parameters

$uid
The message UID.
$mbox
<p>The message mailbox (defaults to the current mailbox).</p>

Returns

mixed

The array index of the location of the message UID in the current mailbox. Returns null if not found.

public IMP_Indices
# getIndicesOb( )

Generate an IMP_Indices object out of the contents of this mailbox.

Generate an IMP_Indices object out of the contents of this mailbox.

Returns

IMP_Indices
An indices object.
public boolean
# removeMsgs( mixed $indices )

Removes messages from the mailbox.

Removes messages from the mailbox.

Parameters

$indices
<p>An IMP_Indices object or true to remove all messages in the mailbox.</p>

Returns

boolean
True if the message was removed from the mailbox.
public IMP_Indices
# getFullThread( integer $uid, string $mbox = null )

Returns the list of UIDs for an entire thread given one message in that thread.

Returns the list of UIDs for an entire thread given one message in that thread.

Parameters

$uid
The message UID.
$mbox
<p>The message mailbox (defaults to the current mailbox).</p>

Returns

IMP_Indices
An indices object.
public IMP_Mailbox_List_Thread
# getThreadOb( integer $offset )

Returns a thread object for a message.

Returns a thread object for a message.

Parameters

$offset
Sequence number of message.

Returns

IMP_Mailbox_List_Thread
The thread object.
public integer
# getBuid( string $mbox, integer $uid )

Create a browser-UID from a mail UID.

Create a browser-UID from a mail UID.

Parameters

$mbox
The mailbox.
$uid
UID.

Returns

integer
Browser-UID.
public array
# resolveBuid( integer $buid )

Resolve a mail UID from a browser-UID.

Resolve a mail UID from a browser-UID.

Parameters

$buid
Browser-UID.

Returns

array

Two-element array: - m: (IMP_Mailbox) Mailbox of message. - u: (string) UID of message.

public integer
# getIndex( )

Returns the current message array index. If the array index has run off the end of the message array, will return the first index.

Returns the current message array index. If the array index has run off the end of the message array, will return the first index.

Returns

integer
The message array index.
public boolean
# isValidIndex( )

Checks to see if the current index is valid.

Checks to see if the current index is valid.

Returns

boolean
True if index is valid, false if not.
public
# setIndex( mixed $data )

Updates the message array index.

Updates the message array index.

Parameters

$data
<p>If an integer, the number of messages to increase the array index by. If an indices object, sets array index to the index value.</p>
public
# offsetExists( integer $offset )

Parameters

$offset
Sequence number of message.

Implementation of

ArrayAccess::offsetExists()
public array
# offsetGet( integer $offset )

Parameters

$offset
Sequence number of message.

Returns

array

Two-element array: - m: (IMP_Mailbox) Mailbox of message. - u: (string) UID of message.

Implementation of

ArrayAccess::offsetGet()
public
# offsetSet( mixed $offset, mixed $value )

Throws

BadMethodCallException

Implementation of

ArrayAccess::offsetSet()
public
# offsetUnset( mixed $offset )

Throws

BadMethodCallException

Implementation of

ArrayAccess::offsetUnset()
public integer
# count( )

Returns the current message count of the mailbox.

Returns the current message count of the mailbox.

Returns

integer
The mailbox message count.

Implementation of

Countable::count()
public array
# current( )

Returns

array

Two-element array: - m: (IMP_Mailbox) Mailbox of message. - u: (string) UID of message.

Implementation of

Iterator::current()
public integer
# key( )

Returns

integer
Sequence number of message.

Implementation of

Iterator::key()
public
# next( )

Implementation of

Iterator::next()
public
# rewind( )

Implementation of

Iterator::rewind()
public
# valid( )

Implementation of

Iterator::valid()
public string
# serialize( )

Serialization.

Serialization.

Returns

string
Serialized data.

Implementation of

Serializable::serialize()
public
# unserialize( string $data )

Unserialization.

Unserialization.

Parameters

$data
Serialized data.

Throws

Exception

Implementation of

Serializable::unserialize()
Constants summary
integer SERIALIZE_LIMIT
# 500
Properties summary
public boolean $changed

Has the internal message list changed?

Has the internal message list changed?

# false
API documentation generated by ApiGen