oxEmail Class Reference

Inheritance diagram for oxEmail:

Inheritance graph
[legend]
Collaboration diagram for oxEmail:

Collaboration graph
[legend]

List of all members.


Detailed Description

Includes PHP mailer class. Mailing manager. Collects mailing configuration, other parameters, performs mailing functions (newsletters, ordering, registration emails, etc.).

Definition at line 13 of file oxemail.php.


Public Member Functions

 __construct ()
 __call ($sMethod, $aArgs)
 getConfig ()
 setConfig ($oConfig)
 send ()
 setSmtp ($oShop=null)
 sendOrderEmailToUser ($oOrder)
 sendOrderEmailToOwner ($oOrder)
 sendRegisterEmail ($oUser)
 sendForgotPwdEmail ($sEmailAddress)
 sendContactMail ($sEmailAddress=null, $sSubject=null, $sMessage=null)
 sendNewsletterDbOptInMail ($oUser)
 sendNewsletterMail ($oNewsLetter, $oUser)
 sendSuggestMail ($oParams, $oProduct)
 sendSendedNowMail ($oOrder)
 sendBackupMail ($aAttFiles, $sAttPath, $sEmailAddress, $sSubject, $sMessage, &$aStatus, &$aError)
 sendEmail ($sTo, $sSubject, $sBody)
 sendStockReminder ($aBasketContents)
 sendWishlistMail ($oParams)
 sendPriceAlarmNotification ($aParams, $oAlarm)
 setSubject ($sSubject=null)
 getSubject ()
 setBody ($sBody=null, $blClearSid=true)
 getBody ()
 setAltBody ($sAltBody=null, $blClearSid=true)
 getAltBody ()
 setRecipient ($sAddress=null, $sName=null)
 getRecipient ()
 clearAllRecipients ()
 setReplyTo ($sEmail=null, $sName=null)
 getReplyTo ()
 clearReplyTos ()
 setFrom ($sFromAdress=null, $sFromName=null)
 getFrom ()
 getFromName ()
 setCharSet ($sCharSet=null)
 getCharSet ()
 setMailer ($sMailer=null)
 getMailer ()
 setHost ($sHost=null)
 getErrorInfo ()
 setMailWordWrap ($iWordWrap=null)
 setUseInlineImages ($blUseImages=null)
 addAttachment ($sAttPath, $sAttFile= '', $sEncoding= 'base64', $sType= 'application/octet-stream')
 addEmbeddedImage ($sFullPath, $sCid, $sAttFile= '', $sEncoding= 'base64', $sType= 'application/octet-stream')
 getAttachments ()
 clearAttachments ()
 headerLine ($sName, $sValue)

Public Attributes

 $SMTP_PORT = 25

Protected Member Functions

 _isValidSmtpHost ($sSmtpHost)
 _includeImages ($sImageDir=null, $sImageDirNoSSL=null, $sDynImageDir=null, $sAbsImageDir=null, $sAbsDynImageDir=null)
 _getUseInlineImages ()
 _sendMailErrorMsg ()
 _addUserInfoOrderEMail ($oOrder)
 _addUserRegisterEmail ($oUser)
 _addForgotPwdEmail ($oShop)
 _addNewsletterDbOptInMail ($oUser)
 _clearMailer ()
 _setMailParams ($oShop=null)
 _getShop ($iLangId=null)
 _setSmtpAuthInfo ($sUserName=null, $sUserPassword=null)
 _setSmtpDebug ($blDebug=null)
 _setMailerPluginDir ()
 _makeOutputProcessing ()
 _sendMail ()

Protected Attributes

 $_sReminderMailTemplate = "email_owner_reminder_html.tpl"
 $_sOrderUserTemplate = "email_order_cust_html.tpl"
 $_sOrderUserPlainTemplate = "email_order_cust_plain.tpl"
 $_sOrderOwnerTemplate = "email_order_owner_html.tpl"
 $_sOrderOwnerPlainTemplate = "email_order_owner_plain.tpl"
 $_sOrderUserSubjectTemplate = "email_order_cust_subj.tpl"
 $_sOrderOwnerSubjectTemplate = "email_order_owner_subj.tpl"
 $_sOwnerPricealarmTemplate = "email_pricealarm_owner.tpl"
 $_oShop = null
 $_blInlineImgEmail = null
 $_aRecipients = array()
 $_aReplies = array()
 $_aAttachments = array()

Constructor & Destructor Documentation

oxEmail.__construct (  ) 

Class constructor.

Definition at line 113 of file oxemail.php.


Member Function Documentation

oxEmail.__call ( sMethod,
aArgs 
)

Only used for convenience in UNIT tests by doing so we avoid writing extended classes for testing protected or private methods

Parameters:
string $sMethod Methods name
array $aArgs Argument array
Exceptions:
oxSystemComponentException Throws an exception if the called method does not exist or is not accessable in current class
Returns:
string

Definition at line 138 of file oxemail.php.

oxEmail.getConfig (  ) 

oxConfig instance getter

Returns:
oxconfig

Definition at line 157 of file oxemail.php.

oxEmail.setConfig ( oConfig  ) 

oxConfig instance setter

Parameters:
oxConfig $oConfig config object
Returns:
null

Definition at line 173 of file oxemail.php.

oxEmail.send (  ) 

Otputs email fields throught email output processor, includes images, and initiate email sending If fails to send mail via smtp, tryes to send via mail(). On failing to send, sends mail to shop administrator about failing mail sending

Returns:
bool

Definition at line 185 of file oxemail.php.

oxEmail.setSmtp ( oShop = null  ) 

Sets SMTP mailer parameters, such as user name, password, location.

Parameters:
oxShop $oShop Object, that keeps base shop info
Returns:
null

Definition at line 227 of file oxemail.php.

oxEmail._isValidSmtpHost ( sSmtpHost  )  [protected]

Checks if smtp host is valid (tries to connect to it)

Parameters:
string $sSmtpHost currently used smtp server host name
Returns:
bool

Definition at line 256 of file oxemail.php.

oxEmail.sendOrderEmailToUser ( oOrder  ) 

Sets mailer additional settings and sends ordering mail to user. Returns true on success.

Parameters:
oxOrder $oOrder Order object
Returns:
bool

Definition at line 277 of file oxemail.php.

oxEmail.sendOrderEmailToOwner ( oOrder  ) 

Sets mailer additional settings and sends ordering mail to shop owner. Returns true on success.

Parameters:
oxOrder $oOrder Order object
Returns:
bool

Definition at line 350 of file oxemail.php.

oxEmail.sendRegisterEmail ( oUser  ) 

Sets mailer additional settings and sends registration mail to user. Returns true on success.

Parameters:
oxUser $oUser User object
Returns:
bool

Definition at line 445 of file oxemail.php.

oxEmail.sendForgotPwdEmail ( sEmailAddress  ) 

Sets mailer additional settings and sends "forgot password" mail to user. Returns true on success.

Parameters:
string $sEmailAddress user email address
Returns:
bool

Definition at line 491 of file oxemail.php.

oxEmail.sendContactMail ( sEmailAddress = null,
sSubject = null,
sMessage = null 
)

Sets mailer additional settings and sends contact info mail to user. Returns true on success.

Parameters:
string $sEmailAddress Email address
string $sSubject Email subject
string $sMessage Email message text
Returns:
bool

Definition at line 555 of file oxemail.php.

oxEmail.sendNewsletterDbOptInMail ( oUser  ) 

Sets mailer additional settings and sends "NewsletterDBOptInMail" mail to user. Returns true on success.

Parameters:
oxUser $oUser User object
Returns:
bool

Definition at line 582 of file oxemail.php.

oxEmail.sendNewsletterMail ( oNewsLetter,
oUser 
)

Sets mailer additional settings and sends "newsletter" mail to user. Returns true on success.

Parameters:
oxNewsletter $oNewsLetter Newsletter object
oxUser $oUser User object
Returns:
bool

Definition at line 629 of file oxemail.php.

oxEmail.sendSuggestMail ( oParams,
oProduct 
)

Sets mailer additional settings and sends "SuggestMail" mail to user. Returns true on success.

Parameters:
object $oParams Mailing parameters object
object $oProduct Product object
Returns:
bool

Definition at line 665 of file oxemail.php.

oxEmail.sendSendedNowMail ( oOrder  ) 

Sets mailer additional settings and sends "SendedNowMail" mail to user. Returns true on success.

Parameters:
oxOrder $oOrder Order object
Returns:
bool

Definition at line 722 of file oxemail.php.

oxEmail.sendBackupMail ( aAttFiles,
sAttPath,
sEmailAddress,
sSubject,
sMessage,
&$  aStatus,
&$  aError 
)

Sets mailer additional settings and sends backuped data to user. Returns true on success.

Parameters:
array $aAttFiles Array of file names to attach
string $sAttPath Path to files to attach
string $sEmailAddress Email address
string $sSubject Email subject
string $sMessage Email body message
array &$aStatus Pointer to mailing status array
array &$aError Pointer to error status array
Returns:
bool

Definition at line 803 of file oxemail.php.

oxEmail.sendEmail ( sTo,
sSubject,
sBody 
)

Basic wrapper for email message sending with default parameters from the oxbaseshop. Returns true on success.

Parameters:
mixed $sTo Recipient or an array of the recipients
string $sSubject Mail subject
string $sBody Mmail body
Returns:
bool

Definition at line 864 of file oxemail.php.

oxEmail.sendStockReminder ( aBasketContents  ) 

Sends reminder email to shop owner.

Parameters:
array $aBasketContents array of objects to pass to template
Returns:
bool

Definition at line 895 of file oxemail.php.

oxEmail.sendWishlistMail ( oParams  ) 

Sets mailer additional settings and sends "WishlistMail" mail to user. Returns true on success.

Parameters:
object $oParams Mailing parameters object
Returns:
bool

Definition at line 953 of file oxemail.php.

oxEmail.sendPriceAlarmNotification ( aParams,
oAlarm 
)

Sends a notification to the shop owner that pricealarm was subscribed. Returns true on success.

Parameters:
array $aParams Parameters array
oxpricealarm $oAlarm oxPriceAlarm object
Returns:
bool

Definition at line 992 of file oxemail.php.

oxEmail._includeImages ( sImageDir = null,
sImageDirNoSSL = null,
sDynImageDir = null,
sAbsImageDir = null,
sAbsDynImageDir = null 
) [protected]

Checks for external images and embeds them to email message if possible

Parameters:
string $sImageDir Images directory url
string $sImageDirNoSSL Images directory url (no SSL)
string $sDynImageDir Path to Dyn images
string $sAbsImageDir Absolute path to images
string $sAbsDynImageDir Absolute path to Dyn images
Returns:
null

Definition at line 1039 of file oxemail.php.

oxEmail.setSubject ( sSubject = null  ) 

Sets mail subject

Parameters:
string $sSubject mail subject
Returns:
null

Definition at line 1107 of file oxemail.php.

oxEmail.getSubject (  ) 

Gets mail subject

Returns:
string

Definition at line 1119 of file oxemail.php.

oxEmail.setBody ( sBody = null,
blClearSid = true 
)

Set mail body. If second parameter (default value is true) is set to true, performs searche for "sid", replaces sid by sid=x and adds shop id to string

Parameters:
string $sBody mail body
bool $blClearSid clear sid in mail body
Returns:
null

Definition at line 1133 of file oxemail.php.

oxEmail.getBody (  ) 

Gets mail body

Returns:
string

Definition at line 1147 of file oxemail.php.

oxEmail.setAltBody ( sAltBody = null,
blClearSid = true 
)

Sets text-only body of the message. If second parameter is set to true, performs searche for "sid", replaces sid by sid=x and adds shop id to string

Parameters:
string $sAltBody mail subject
bool $blClearSid clear sid in mail body (default value is true)
Returns:
null

Definition at line 1161 of file oxemail.php.

oxEmail.getAltBody (  ) 

Gets mail text-only body

Returns:
string

Definition at line 1177 of file oxemail.php.

oxEmail.setRecipient ( sAddress = null,
sName = null 
)

Sets mail recipient to recipients array

Parameters:
string $sAddress recipient email address
string $sName recipient name
Returns:
null

Definition at line 1190 of file oxemail.php.

oxEmail.getRecipient (  ) 

Gets recipients array. Returns array of recipients f.e. array( array('mail1.com', 'user1Name'), array('mail2.com', 'user2Name') )

Returns:
array

Definition at line 1205 of file oxemail.php.

oxEmail.clearAllRecipients (  ) 

Clears all recipients assigned in the TO, CC and BCC array. Returns void.

Returns:
void

Definition at line 1216 of file oxemail.php.

oxEmail.setReplyTo ( sEmail = null,
sName = null 
)

Sets user address and name to "reply to" array. On error (wrong email) default shop email is added as a reply address. Returns array of recipients f.e. array( array('mail1.com', 'user1Name'), array('mail2.com', 'user2Name') )

Parameters:
string $sEmail email address
string $sName user name
Returns:
null

Definition at line 1233 of file oxemail.php.

oxEmail.getReplyTo (  ) 

Gets array of users for which reply is used.

Returns:
array

Definition at line 1248 of file oxemail.php.

oxEmail.clearReplyTos (  ) 

Clears all recipients assigned in the ReplyTo array. Returns void.

Returns:
null

Definition at line 1258 of file oxemail.php.

oxEmail.setFrom ( sFromAdress = null,
sFromName = null 
)

Sets mail from address and name.

Parameters:
string $sFromAdress email address
string $sFromName user name
Returns:
null

Definition at line 1272 of file oxemail.php.

oxEmail.getFrom (  ) 

Gets mail "from address" field.

Returns:
string

Definition at line 1286 of file oxemail.php.

oxEmail.getFromName (  ) 

Gets mail "from name" field.

Returns:
string

Definition at line 1296 of file oxemail.php.

oxEmail.setCharSet ( sCharSet = null  ) 

Sets mail charset. If $sCharSet is not defined, sets charset from translation file.

Parameters:
string $sCharSet email charset
Returns:
null

Definition at line 1309 of file oxemail.php.

oxEmail.getCharSet (  ) 

Gets mail charset.

Returns:
string

Definition at line 1323 of file oxemail.php.

oxEmail.setMailer ( sMailer = null  ) 

Sets mail mailer. Set to send mail via smtp, mail() or sendmail.

Parameters:
string $sMailer email mailer
Returns:
null

Definition at line 1335 of file oxemail.php.

oxEmail.getMailer (  ) 

Gets mail mailer.

Returns:
string

Definition at line 1345 of file oxemail.php.

oxEmail.setHost ( sHost = null  ) 

Sets stmp host.

Parameters:
string $sHost smtp host
Returns:
null

Definition at line 1357 of file oxemail.php.

oxEmail.getErrorInfo (  ) 

Gets mailing error info.

Returns:
string

Definition at line 1367 of file oxemail.php.

oxEmail.setMailWordWrap ( iWordWrap = null  ) 

Sets word wrapping on the body of the message to a given number of characters

Parameters:
int $iWordWrap word wrap
Returns:
string

Definition at line 1380 of file oxemail.php.

oxEmail.setUseInlineImages ( blUseImages = null  ) 

Sets use inline images. If setted to true, images will be embeded into mail.

Parameters:
bool $blUseImages embed or not images into mail
Returns:
null

Definition at line 1392 of file oxemail.php.

oxEmail.addAttachment ( sAttPath,
sAttFile = '',
sEncoding = 'base64',
sType = 'application/octet-stream' 
)

Adds an attachment to mail from a path on the filesystem

Parameters:
string $sAttPath path to the attachment
string $sAttFile attachment name
string $sEncoding attachment encoding
string $sType attachment type
Returns:
bool

Definition at line 1407 of file oxemail.php.

oxEmail.addEmbeddedImage ( sFullPath,
sCid,
sAttFile = '',
sEncoding = 'base64',
sType = 'application/octet-stream' 
)

Adds an embedded attachment (check phpmail documentation for more details)

Parameters:
string $sFullPath Path to the attachment.
string $sCid Content ID of the attachment. Use this to identify the Id for accessing the image in an HTML form.
string $sAttFile Overrides the attachment name.
string $sEncoding File encoding (see $Encoding).
string $sType File extension (MIME) type.
Returns:
bool

Definition at line 1426 of file oxemail.php.

oxEmail.getAttachments (  ) 

Gets mail attachment.

Returns:
array

Definition at line 1437 of file oxemail.php.

oxEmail.clearAttachments (  ) 

Clears all attachments from mail.

Returns:
null

Definition at line 1447 of file oxemail.php.

oxEmail.headerLine ( sName,
sValue 
)

Inherited phpMailer function adding a header to email message. We override it to skip X-Mailer header.

Parameters:
string $sName header name
string $sValue header value
Returns:
null

Definition at line 1462 of file oxemail.php.

oxEmail._getUseInlineImages (  )  [protected]

Gets use inline images.

Returns:
bool

Definition at line 1475 of file oxemail.php.

oxEmail._sendMailErrorMsg (  )  [protected]

Try to send error message when original mailing by smtp and via mail() fails

Returns:
bool

Definition at line 1485 of file oxemail.php.

oxEmail._addUserInfoOrderEMail ( oOrder  )  [protected]

Does nothing, returns same object as passed to method. This method is called from oxemail.sendOrderEMailToUser() to do additional operation with order object before sending email

Parameters:
oxOrder $oOrder Ordering object
Returns:
oxOrder

Definition at line 1519 of file oxemail.php.

oxEmail._addUserRegisterEmail ( oUser  )  [protected]

Does nothing, returns same object as passed to method. This method is called from oxemail.SendRegisterEMail() to do additional operation with user object before sending email

Parameters:
oxUser $oUser User object
Returns:
oxUser

Definition at line 1533 of file oxemail.php.

oxEmail._addForgotPwdEmail ( oShop  )  [protected]

Does nothing, returns same object as passed to method. This method is called from oxemail.SendForgotPWDEMail() to do additional operation with shop object before sending email

Parameters:
oxShop $oShop Shop object
Returns:
oxShop

Definition at line 1547 of file oxemail.php.

oxEmail._addNewsletterDbOptInMail ( oUser  )  [protected]

Does nothing, returns same object as passed to method. This method is called from oxemail.SendNewsletterDBOptInMail() to do additional operation with user object before sending email

Parameters:
oxUser $oUser User object
Returns:
oxUser

Definition at line 1561 of file oxemail.php.

oxEmail._clearMailer (  )  [protected]

Clears some mailer settings (AllRecipients, ReplyTos)

Returns:
null

Definition at line 1571 of file oxemail.php.

oxEmail._setMailParams ( oShop = null  )  [protected]

Set mail From, FromName, SMTP values

Parameters:
oxShop $oShop Shop object
Returns:
void

Definition at line 1589 of file oxemail.php.

oxEmail._getShop ( iLangId = null  )  [protected]

Get active shop and set global params for it If is set language parameter, load shop in given language

Parameters:
int $iLangId language id
Returns:
oxShop

Definition at line 1609 of file oxemail.php.

oxEmail._setSmtpAuthInfo ( sUserName = null,
sUserPassword = null 
) [protected]

Sets smtp authentification parameters.

Parameters:
string $sUserName smtp user
oxShop $sUserPassword smtp password
Returns:
null

Definition at line 1647 of file oxemail.php.

oxEmail._setSmtpDebug ( blDebug = null  )  [protected]

Sets SMTP class debugging on or off

Parameters:
bool $blDebug show debug info or not
Returns:
null

Definition at line 1661 of file oxemail.php.

oxEmail._setMailerPluginDir (  )  [protected]

Sets path to PHPMailer plugins

Returns:
null

Definition at line 1671 of file oxemail.php.

oxEmail._makeOutputProcessing (  )  [protected]

Process email body and alt body throught oxoutput. Calls oxoutput.processEmail() on class instance.

Returns:
null

Definition at line 1682 of file oxemail.php.

oxEmail._sendMail (  )  [protected]

Sends email via phpmailer.

Returns:
bool

Definition at line 1695 of file oxemail.php.


Member Data Documentation

oxEmail.$SMTP_PORT = 25

Definition at line 15 of file oxemail.php.

oxEmail.$_sReminderMailTemplate = "email_owner_reminder_html.tpl" [protected]

Definition at line 22 of file oxemail.php.

oxEmail.$_sOrderUserTemplate = "email_order_cust_html.tpl" [protected]

Definition at line 29 of file oxemail.php.

oxEmail.$_sOrderUserPlainTemplate = "email_order_cust_plain.tpl" [protected]

Definition at line 36 of file oxemail.php.

oxEmail.$_sOrderOwnerTemplate = "email_order_owner_html.tpl" [protected]

Definition at line 43 of file oxemail.php.

oxEmail.$_sOrderOwnerPlainTemplate = "email_order_owner_plain.tpl" [protected]

Definition at line 50 of file oxemail.php.

oxEmail.$_sOrderUserSubjectTemplate = "email_order_cust_subj.tpl" [protected]

Definition at line 59 of file oxemail.php.

oxEmail.$_sOrderOwnerSubjectTemplate = "email_order_owner_subj.tpl" [protected]

Definition at line 66 of file oxemail.php.

oxEmail.$_sOwnerPricealarmTemplate = "email_pricealarm_owner.tpl" [protected]

Definition at line 73 of file oxemail.php.

oxEmail.$_oShop = null [protected]

Definition at line 80 of file oxemail.php.

oxEmail.$_blInlineImgEmail = null [protected]

Definition at line 87 of file oxemail.php.

oxEmail.$_aRecipients = array() [protected]

Definition at line 94 of file oxemail.php.

oxEmail.$_aReplies = array() [protected]

Definition at line 101 of file oxemail.php.

oxEmail.$_aAttachments = array() [protected]

Definition at line 108 of file oxemail.php.


The documentation for this class was generated from the following file:

Generated on Tue Apr 21 15:49:22 2009 for OXID eShop CE by  doxygen 1.5.5