From 8dc61e7ddc48f53f6b3193a65d6efe22247809b6 Mon Sep 17 00:00:00 2001 From: Carlos Pacha Date: Mon, 8 Aug 2011 18:51:04 -0400 Subject: [PATCH] BUG 3910 Attachments to email messages this issue was completed and it is working fine --- workflow/engine/classes/class.pmFunctions.php | 6 +++--- workflow/engine/classes/class.spool.php | 12 +++++++----- workflow/engine/classes/class.wsBase.php | 6 ++---- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/workflow/engine/classes/class.pmFunctions.php b/workflow/engine/classes/class.pmFunctions.php index 12ed4fdf2..5066adec0 100644 --- a/workflow/engine/classes/class.pmFunctions.php +++ b/workflow/engine/classes/class.pmFunctions.php @@ -768,10 +768,11 @@ function getEmailConfiguration () { * */ //@param array | $aFields=array() | An associative array optional | Optional parameter. An associative array where the keys are the variable name and the values are the variable's value. -function PMFSendMessage($caseId, $sFrom, $sTo, $sCc, $sBcc, $sSubject, $sTemplate, $aFields = array()) { +function PMFSendMessage($caseId, $sFrom, $sTo, $sCc, $sBcc, $sSubject, $sTemplate, $aFields = array(), $sAttachment) { + G::LoadClass('wsBase'); $ws = new wsBase (); - $result = $ws->sendMessage($caseId, $sFrom, $sTo, $sCc, $sBcc, $sSubject, $sTemplate, $aFields); + $result = $ws->sendMessage($caseId, $sFrom, $sTo, $sCc, $sBcc, $sSubject, $sTemplate, $aFields, $sAttachment); if ( $result->status_code == 0) { return 1; @@ -779,7 +780,6 @@ function PMFSendMessage($caseId, $sFrom, $sTo, $sCc, $sBcc, $sSubject, $sTemplat return 0; } } - /** * @method * diff --git a/workflow/engine/classes/class.spool.php b/workflow/engine/classes/class.spool.php index eee4399e8..eba2d0ae7 100755 --- a/workflow/engine/classes/class.spool.php +++ b/workflow/engine/classes/class.spool.php @@ -137,7 +137,7 @@ class spoolRun { $this->status = strtolower($aData['app_msg_status']); } - $this->setData($sUID, $aData['app_msg_subject'], $aData['app_msg_from'], $aData['app_msg_to'], $aData['app_msg_body'], $aData['app_msg_date'], $aData['app_msg_cc'], $aData['app_msg_bcc'], $aData['app_msg_template']); + $this->setData($sUID, $aData['app_msg_subject'], $aData['app_msg_from'], $aData['app_msg_to'], $aData['app_msg_body'], $aData['app_msg_date'], $aData['app_msg_cc'], $aData['app_msg_bcc'], $aData['app_msg_template'], $aData['app_msg_attach']); } /** @@ -154,7 +154,7 @@ class spoolRun { * @param string $sAppMsgUid, $sSubject, $sFrom, $sTo, $sBody, $sDate, $sCC, $sBCC, $sTemplate * @return none */ - public function setData($sAppMsgUid, $sSubject, $sFrom, $sTo, $sBody, $sDate = '', $sCC = '', $sBCC = '', $sTemplate = '') { + public function setData($sAppMsgUid, $sSubject, $sFrom, $sTo, $sBody, $sDate = '', $sCC = '', $sBCC = '', $sTemplate = '', $sAttachment = '') { $this->spool_id = $sAppMsgUid; $this->fileData['subject'] = $sSubject; $this->fileData['from'] = $sFrom; @@ -164,7 +164,7 @@ class spoolRun { $this->fileData['cc'] = $sCC; $this->fileData['bcc'] = $sBCC; $this->fileData['template'] = $sTemplate; - $this->fileData['attachments'] = array (); + $this->fileData['attachments'] = ($sAttachment)? $sAttachment:array(); if( $this->config['MESS_ENGINE'] == 'OPENMAIL' ) { if( $this->config['MESS_SERVER'] != '' ) { @@ -332,7 +332,8 @@ class spoolRun { $oPHPMailer->FromName = utf8_decode($this->fileData['from_name']); $oPHPMailer->Subject = utf8_decode($this->fileData['subject']); $oPHPMailer->Body = utf8_decode($this->fileData['body']); - + if($this->fileData['attachments']) + $oPHPMailer->AddAttachment($this->fileData['attachments']); foreach( $this->fileData['envelope_to'] as $sEmail ) { if( strpos($sEmail, '<') !== false ) { preg_match($this->longMailEreg, $sEmail, $matches); @@ -375,7 +376,8 @@ class spoolRun { $oPHPMailer->FromName = utf8_decode($this->fileData['from_name']); $oPHPMailer->Subject = utf8_decode($this->fileData['subject']); $oPHPMailer->Body = utf8_decode($this->fileData['body']); - + if($this->fileData['attachments']) + $oPHPMailer->AddAttachment($this->fileData['attachments']); foreach( $this->fileData['envelope_to'] as $sEmail ) { $evalMail = strpos($sEmail, '<'); diff --git a/workflow/engine/classes/class.wsBase.php b/workflow/engine/classes/class.wsBase.php index f00ca016e..176bb3b7e 100644 --- a/workflow/engine/classes/class.wsBase.php +++ b/workflow/engine/classes/class.wsBase.php @@ -596,7 +596,7 @@ class wsBase * @param $appFields = null * @return $result will return an object */ - public function sendMessage($caseId, $sFrom, $sTo, $sCc, $sBcc, $sSubject, $sTemplate, $appFields = null ) { + public function sendMessage($caseId, $sFrom, $sTo, $sCc, $sBcc, $sSubject, $sTemplate, $appFields = null, $sAttachment ) { try { $aSetup = getEmailConfiguration(); @@ -671,11 +671,10 @@ class wsBase 'app_msg_body' => $sBody, 'app_msg_cc' => $sCc, 'app_msg_bcc' => $sBcc, - 'app_msg_attach' => '', + 'app_msg_attach' => $sAttachment, 'app_msg_template' => '', 'app_msg_status' => 'pending' ); - $oSpool->create( $messageArray ); $oSpool->sendMail(); @@ -691,7 +690,6 @@ class wsBase } } - /* * get case information * @param string $caseId