Overview

Packages

  • IMP
  • None

Classes

  • IMP
  • IMP_Ajax_Application
  • IMP_Ajax_Imple_ContactAutoCompleter
  • IMP_Ajax_Imple_PassphraseDialog
  • IMP_Ajax_Queue
  • IMP_Api
  • IMP_Auth
  • IMP_Block_Newmail
  • IMP_Block_Summary
  • IMP_Compose
  • IMP_Compose_Exception
  • IMP_Compose_Stationery
  • IMP_Contents
  • IMP_Crypt_Pgp
  • IMP_Crypt_Smime
  • IMP_Dimp
  • IMP_Exception
  • IMP_Factory_AuthImap
  • IMP_Factory_Compose
  • IMP_Factory_Contents
  • IMP_Factory_Flags
  • IMP_Factory_Identity
  • IMP_Factory_Imap
  • IMP_Factory_Imaptree
  • IMP_Factory_Mail
  • IMP_Factory_Mailbox
  • IMP_Factory_MailboxList
  • IMP_Factory_MimeViewer
  • IMP_Factory_Pgp
  • IMP_Factory_Quota
  • IMP_Factory_Search
  • IMP_Factory_Sentmail
  • IMP_Factory_Smime
  • 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_Imap
  • IMP_Imap_Acl
  • IMP_Imap_Exception
  • IMP_Imap_PermanentFlags
  • IMP_Imap_Thread
  • IMP_Imap_Tree
  • IMP_Indices
  • IMP_Indices_Form
  • 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_Track
  • IMP_Maillog
  • IMP_Menu_Dimp
  • IMP_Message
  • IMP_Mime_Status
  • 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_Notification_Event_Status
  • IMP_Notification_Handler_Decorator_ImapAlerts
  • IMP_Notification_Handler_Decorator_NewmailNotify
  • IMP_Notification_Listener_AjaxStatus
  • Imp_Prefs_Identity
  • IMP_Prefs_Ui
  • IMP_Quota
  • IMP_Quota_Base
  • IMP_Quota_Command
  • IMP_Quota_Hook
  • IMP_Quota_Imap
  • IMP_Quota_Maildir
  • IMP_Quota_Mdaemon
  • IMP_Quota_Mercury32
  • IMP_Quota_Null
  • IMP_Quota_Sql
  • IMP_Search
  • IMP_Search_Element
  • IMP_Search_Element_Attachment
  • IMP_Search_Element_Autogenerated
  • IMP_Search_Element_Bulk
  • IMP_Search_Element_Contacts
  • IMP_Search_Element_Date
  • 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_Query
  • IMP_Search_Vfolder
  • IMP_Search_Vfolder_Builtin
  • IMP_Search_Vfolder_Vinbox
  • IMP_Search_Vfolder_Vtrash
  • IMP_Sentmail
  • IMP_Sentmail_Base
  • IMP_Sentmail_Null
  • IMP_Sentmail_Sql
  • IMP_Spam
  • IMP_Test
  • IMP_Tree_Flist
  • IMP_Tree_Jquerymobile
  • IMP_Tree_Simplehtml
  • IMP_Ui_Compose
  • IMP_Ui_Editor
  • IMP_Ui_Folder
  • IMP_Ui_Headers
  • IMP_Ui_Imageview
  • IMP_Ui_Mailbox
  • IMP_Ui_Message
  • IMP_Ui_Mimp
  • IMP_Ui_Search
  • IMP_Views_Compose
  • IMP_Views_ListMessages
  • IMP_Views_ShowMessage
  • Overview
  • Package
  • Class
  • Tree

Class IMP_Contents

The IMP_Contents:: class contains all functions related to handling the content and output of mail messages in IMP.

Copyright 2002-2012 Horde LLC (http://www.horde.org/)

See the enclosed file COPYING for license information (GPL). If you did not receive this file, see http://www.horde.org/licenses/gpl.

Package: IMP
Category: Horde
License: GPL
Author: Michael Slusarz slusarz@horde.org
Located at Contents.php
Methods summary
public
# __construct( mixed $in )

Constructor.

Constructor.

Parameters

$in
An IMP_Indices or Horde_Mime_Part object.

Throws

IMP_Exception
public integer
# getUid( )

Returns the IMAP UID for the current message.

Returns the IMAP UID for the current message.

Returns

integer
The message UID.
public IMP_Mailbox
# getMailbox( )

Returns the IMAP mailbox for the current message.

Returns the IMAP mailbox for the current message.

Returns

IMP_Mailbox
The message mailbox.
public mixed
# getBody( array $options = array() )

Returns the entire body of the message.

Returns the entire body of the message.

Parameters

$options
<p>Additional options: - stream: (boolean) If true, return a stream. DEFAULT: No</p>

Returns

mixed

The text of the part, or a stream resource if 'stream' is true.

public mixed
# getBodyPart( integer $id, array $options = array() )

Gets the raw text for one section of the message.

Gets the raw text for one section of the message.

Parameters

$id
The ID of the MIME part.
$options
<p>Additional options: - decode: (boolean) Attempt to decode the bodypart on the remote server. If successful, sets self::$lastBodyPartDecode to the content-type of the decoded data. DEFAULT: No - length: (integer) If set, only download this many bytes of the bodypart from the server. DEFAULT: All data is retrieved. - mimeheaders: (boolean) Include the MIME headers also? DEFAULT: No - stream: (boolean) If true, return a stream. DEFAULT: No</p>

Returns

mixed

The text of the part or a stream resource if 'stream' is true.

public mixed
# fullMessageText( array $options = array() )

Returns the full message text.

Returns the full message text.

Parameters

$options
<p>Additional options: - stream: (boolean) If true, return a stream for bodytext. DEFAULT: No</p>

Returns

mixed

The full message text or a stream resource if 'stream' is true.

public mixed
# getHeader( integer $type = IMP_Contents::HEADER_OB )

Returns base header information.

Returns base header information.

Parameters

$type
Return type (HEADER_* constant).

Returns

mixed

Either a Horde_Mime_Headers object (HEADER_OB), header text (HEADER_TEXT), or a stream resource (HEADER_STREAM).

public mixed
# getHeaderAndMarkAsSeen( integer $type = IMP_Contents::HEADER_OB )

Returns base header information and marks the message as seen.

Returns base header information and marks the message as seen.

Parameters

$type
See getHeader().

Returns

mixed
See getHeader().
public Horde_Mime_Part
# getMIMEMessage( )

Returns the Horde_Mime_Part object.

Returns the Horde_Mime_Part object.

Returns

Horde_Mime_Part
A Horde_Mime_Part object.
public Horde_Mime_Part
# getMIMEPart( integer $id, array $options = array() )

Fetch a part of a MIME message.

Fetch a part of a MIME message.

Parameters

$id
The MIME index of the part requested.
$options
<p>Additional options: - length: (integer) If set, only download this many bytes of the bodypart from the server. DEFAULT: All data is retrieved. - nocontents: (boolean) If true, don't add the contents to the part DEFAULT: Contents are added to the part</p>

Returns

Horde_Mime_Part
The raw MIME part asked for (reference).
public array
# renderMIMEPart( string $mime_id, integer $mode, array $options = array() )

Render a MIME Part.

Render a MIME Part.

Parameters

$mime_id
The MIME ID to render.
$mode
One of the RENDER_ constants.
$options
<p>Additional options: - autodetect: (boolean) Attempt to auto-detect MIME type? - mime_part: (Horde_Mime_Part) The MIME part to render. - type: (string) Use this MIME type instead of the MIME type identified in the MIME part.</p>

Returns

array

See Horde_Mime_Viewer_Base::render(). The following fields may also be present in addition to the fields defined in Horde_Mime_Viewer_Base: - attach: (boolean) Force display of this part as an attachment. - js: (array) A list of javascript commands to run after the content is displayed on screen. - name: (string) Contains the MIME name information. - wrap: (string) If present, indicates that this part, and all child parts, will be wrapped in a DIV with the given class name.

public string
# findBody( string $subtype = null )

Finds the main "body" text part (if any) in a message. "Body" data is the first text part in the base MIME part.

Finds the main "body" text part (if any) in a message. "Body" data is the first text part in the base MIME part.

Parameters

$subtype
Specifically search for this subtype.

Returns

string
The MIME ID of the main body part.
public array
# generatePreview( )

Generate the preview text.

Generate the preview text.

Returns

array

Array with the following keys: - cut: (boolean) Was the preview text cut? - text: (string) The preview text.

public array
# getSummary( string $id, integer $mask = 0 )

Get summary info for a MIME ID.

Get summary info for a MIME ID.

Parameters

$id
The MIME ID.
$mask
A bitmask indicating what information to return: <pre>Always output: <span class="php-quote">'type'</span> = MIME type IMP_Contents::SUMMARY_BYTES Output: parts = <span class="php-quote">'bytes'</span> IMP_Contents::SUMMARY_SIZE Output: parts = <span class="php-quote">'size'</span> IMP_Contents::SUMMARY_ICON IMP_Contents::SUMMARY_ICON_RAW Output: parts = <span class="php-quote">'icon'</span> IMP_Contents::SUMMARY_DESCRIP_LINK IMP_Contents::SUMMARY_DESCRIP_NOLINK IMP_Contents::SUMMARY_DESCRIP_NOLINK_NOHTMLSPECCHARS Output: parts = <span class="php-quote">'description'</span> IMP_Contents::SUMMARY_DOWNLOAD IMP_Contents::SUMMARY_DOWNLOAD_NOJS Output: parts = <span class="php-quote">'download'</span> IMP_Contents::SUMMARY_DOWNLOAD_ZIP Output: parts = <span class="php-quote">'download_zip'</span> IMP_Contents::SUMMARY_IMAGE_SAVE Output: parts = <span class="php-quote">'img_save'</span> IMP_Contents::SUMMARY_PRINT IMP_Contents::SUMMARY_PRINT_STUB Output: parts = <span class="php-quote">'print'</span> IMP_Contents::SUMMARY_STRIP_LINK IMP_Contents::SUMMARY_STRIP_STUB Output: parts = <span class="php-quote">'strip'</span></pre>

Returns

array
An array with the requested information.
public string
# urlView( Horde_Mime_Part $mime_part = null, integer $actionID = 'view_attach', array $options = array() )

Return the URL to the view.php page.

Return the URL to the view.php page.

Parameters

$mime_part
The MIME part to view.
$actionID
The actionID to perform.
$options
<p>Additional options: - dload: (boolean) Should we generate a download link? - params: (array) A list of any additional parameters that need to be passed to view.php (key => name).</p>

Returns

string
The URL to view.php.
public string
# linkView( Horde_Mime_Part $mime_part, integer $actionID, string $text, array $options = array() )

Generate a link to the view.php page.

Generate a link to the view.php page.

Parameters

$mime_part
The MIME part to view.
$actionID
The actionID value.
$text
The ESCAPED (!) link text.
$options
<p>Additional parameters: - class: (string) The CSS class to use. - dload: (boolean) Should we generate a download link? - jstext: (string) The JS text to use. - params: (array) A list of any additional parameters that need to be passed to view.php.</p>

Returns

string
A HTML href link to view.php.
public string
# linkViewJS( Horde_Mime_Part $mime_part, string $actionID, string $text, array $options = array() )

Generate a javascript link to the view.php page.

Generate a javascript link to the view.php page.

Parameters

$mime_part
The MIME part to view.
$actionID
The actionID to perform.
$text
The ESCAPED (!) link text.
$options
<p>Additional options: - css: (string) The CSS class to use. - jstext: (string) The javascript link text. - onload: (string) A JS function to run when popup window is fully loaded. - params: (array) A list of any additional parameters that need to be passed to view.php. (key = name) - widget: (boolean) If true use Horde::widget() to generate, Horde::link() otherwise.</p>

Returns

string
A HTML href link to view.php.
public boolean
# isAttachment( string $mime_type )

Determines if a MIME type is an attachment. For IMP's purposes, an attachment is any MIME part that can be downloaded by itself (i.e. all the data needed to view the part is contained within the download data).

Determines if a MIME type is an attachment. For IMP's purposes, an attachment is any MIME part that can be downloaded by itself (i.e. all the data needed to view the part is contained within the download data).

Parameters

$mime_type
$mime_part The MIME type.

Returns

boolean
True if an attachment.
public integer
# canDisplay( mixed $part, integer $mask, string $type = null )

Can this MIME part be displayed in the given mode?

Can this MIME part be displayed in the given mode?

Parameters

$part
$id The MIME part or a MIME ID string.
$mask
One of the RENDER_ constants.
$type
<p>The type to use (overrides the MIME ID if $id is a MIME part).</p>

Returns

integer
The RENDER_ constant of the allowable display.
public array
# getContentTypeMap( )

Returns the Content-Type map for the entire message, regenerating embedded parts if needed.

Returns the Content-Type map for the entire message, regenerating embedded parts if needed.

Returns

array
See Horde_Mime_Part::contentTypeMap().
public Horde_Tree_Base
# getTree( string $renderer = 'Horde_Core_Tree_Html' )

Returns the MIME part tree of the message.

Returns the MIME part tree of the message.

Parameters

$renderer
<p>Either the tree renderer driver or a full class name to use.</p>

Returns

Horde_Tree_Base
A tree instance representing the MIME parts.

Throws

Horde_Tree_Exception
public array
# downloadAllList( )

Get download all list.

Get download all list.

Returns

array
An array of downloadable parts.
public Horde_Mime_Part
# buildMessageContents( array $ignore = array() )

Injects body contents into the base Horde_Mime_part object.

Injects body contents into the base Horde_Mime_part object.

Parameters

$ignore
A list of MIME IDs to ignore.

Returns

Horde_Mime_Part
The part with body contents set.
public boolean
# isEmbedded( string $mime_id )

Determines if a given MIME part ID is a part of embedded data.

Determines if a given MIME part ID is a part of embedded data.

Parameters

$mime_id
The MIME ID.

Returns

boolean
True if the MIME ID is part of embedded data.
public mixed
# findMimeType( string $id, string $type )

Find a MIME type in parent parts.

Find a MIME type in parent parts.

Parameters

$id
The MIME ID to begin the search at.
$type
The MIME type to search for.

Returns

mixed
Either the requested MIME part, or null if not found.
public string
# getPartName( Horde_Mime_Part $part, boolean $use_descrip = false )

Return the descriptive part label, making sure it is not empty.

Return the descriptive part label, making sure it is not empty.

Parameters

$part
The MIME Part object.
$use_descrip
Use description? If false, uses name.

Returns

string
The part label (non-empty).
public array
# getInlineOutput( array $options = array() )

Generate inline message display.

Generate inline message display.

Parameters

$options
<p>Options: - display_mask: (integer) The mask of display view type to render inline (DEFAULT: RENDER_INLINE_AUTO). - mask: (integer) The mask needed for a getSummary() call. - no_inline_all: (boolean) If true, only display first inline part. Subsequent inline parts will be treated as attachments. - part_info_display: (array) The list of summary fields to display. - show_parts: (string) The value of the 'parts_display' pref.</p>

Returns

array

An array with the following keys: - atc_parts: (array) The list of attachment MIME IDs. - display_ids: (array) The list of display MIME IDs. - js_onload: (array) A list of javascript code to run onload. - msgtext: (string) The rendered HTML code.

Constants summary
integer SUMMARY_BYTES
# 1
integer SUMMARY_SIZE
# 2
integer SUMMARY_ICON
# 4
integer SUMMARY_ICON_RAW
# 16384
integer SUMMARY_DESCRIP_LINK
# 8
integer SUMMARY_DESCRIP_NOLINK
# 16
integer SUMMARY_DESCRIP_NOLINK_NOHTMLSPECCHARS
# 32
integer SUMMARY_DOWNLOAD
# 64
integer SUMMARY_DOWNLOAD_NOJS
# 128
integer SUMMARY_DOWNLOAD_ZIP
# 256
integer SUMMARY_IMAGE_SAVE
# 512
integer SUMMARY_PRINT
# 1024
integer SUMMARY_PRINT_STUB
# 2048
integer SUMMARY_STRIP_LINK
# 4096
integer SUMMARY_STRIP_STUB
# 8192
integer RENDER_FULL
# 1
integer RENDER_INLINE
# 2
integer RENDER_INLINE_DISP_NO
# 4
integer RENDER_INFO
# 8
integer RENDER_INLINE_AUTO
# 16
integer RENDER_RAW
# 32
integer RENDER_RAW_FALLBACK
# 64
integer HEADER_OB
# 1
integer HEADER_TEXT
# 2
integer HEADER_STREAM
# 3
Properties summary
public string $lastBodyPartDecode

Flag to indicate whether the last call to getBodypart() returned decoded data.

Flag to indicate whether the last call to getBodypart() returned decoded data.

# null
API documentation generated by ApiGen