Envio de correos Intermediate Event no envia mail con una combinacion especifica

HOR-1575
Envio de correos Intermediate Event no envia mail con una combinacion especifica

HOR-1575
Envio de correos Intermediate Event no envia mail con una combinacion especifica

HOR-1575
Envio de correos Intermediate Event no envia mail con una combinacion especifica

HOR-1575
Envio de correos Intermediate Event no envia mail con una combinacion especifica
This commit is contained in:
dheeyi william
2016-08-12 16:49:21 -04:00
parent 0fc4abd2fe
commit 14d5f67c5b
9 changed files with 168 additions and 30 deletions

View File

@@ -949,6 +949,12 @@ class wsBase
} }
$aSetup = (!empty($arrayConfigAux))? $arrayConfigAux : System::getEmailConfiguration(); $aSetup = (!empty($arrayConfigAux))? $arrayConfigAux : System::getEmailConfiguration();
if (!isset($aSetup['MESS_ENABLED'])) {
$aSetup['MESS_ENABLED'] = 1;
$aSetup['SMTPSecure'] = $aSetup['SMTPSECURE'];
unset($aSetup['SMTPSECURE']);
}
} else { } else {
/*----------------------------------********---------------------------------*/ /*----------------------------------********---------------------------------*/
$aSetup = System::getEmailConfiguration(); $aSetup = System::getEmailConfiguration();

View File

@@ -68,6 +68,12 @@ class workspaceTools
$stop = microtime(true); $stop = microtime(true);
CLI::logging("<*> Database Upgrade Process took " . ($stop - $start) . " seconds.\n"); CLI::logging("<*> Database Upgrade Process took " . ($stop - $start) . " seconds.\n");
$start = microtime(true);
CLI::logging("> Check Intermediate Email Event...\n");
$this->checkIntermediateEmailEvent();
$stop = microtime(true);
CLI::logging("<*> Database Upgrade Process took " . ($stop - $start) . " seconds.\n");
$start = microtime(true); $start = microtime(true);
CLI::logging("> Verify enterprise old...\n"); CLI::logging("> Verify enterprise old...\n");
$this->verifyFilesOldEnterprise($workSpace); $this->verifyFilesOldEnterprise($workSpace);
@@ -145,6 +151,22 @@ class workspaceTools
CLI::logging("<*> Database Upgrade Structure Process took $final seconds.\n"); CLI::logging("<*> Database Upgrade Structure Process took $final seconds.\n");
} }
public function checkIntermediateEmailEvent()
{
$oEmailEvent = new \ProcessMaker\BusinessModel\EmailEvent();
$oEmailServer = new \ProcessMaker\BusinessModel\EmailServer();
$oCriteria = $oEmailEvent->getEmailEventCriteriaEmailServer();
$rsCriteria = \EmailServerPeer::doSelectRS($oCriteria);
$rsCriteria->setFetchmode(\ResultSet::FETCHMODE_ASSOC);
while ($rsCriteria->next()) {
$row = $rsCriteria->getRow();
$newUidData = $oEmailServer->getUidEmailServer($row['EMAIL_EVENT_FROM']);
if (is_array($newUidData)) {
$oEmailEvent->update($row['EMAIL_EVENT_UID'], $newUidData);
}
}
}
/** /**
* Scan the db.php file for database information and return it as an array * Scan the db.php file for database information and return it as an array
* *

View File

@@ -79,6 +79,8 @@ class EmailEventMapBuilder
$tMap->addColumn('PRF_UID', 'PrfUid', 'string', CreoleTypes::VARCHAR, false, 32); $tMap->addColumn('PRF_UID', 'PrfUid', 'string', CreoleTypes::VARCHAR, false, 32);
$tMap->addColumn('EMAIL_SERVER_UID', 'EmailServerUid', 'string', CreoleTypes::VARCHAR, false, 32);
} // doBuild() } // doBuild()
} // EmailEventMapBuilder } // EmailEventMapBuilder

View File

@@ -69,6 +69,12 @@ abstract class BaseEmailEvent extends BaseObject implements Persistent
*/ */
protected $prf_uid = ''; protected $prf_uid = '';
/**
* The value for the email_server_uid field.
* @var string
*/
protected $email_server_uid = '';
/** /**
* Flag to prevent endless save loop, if this object is referenced * Flag to prevent endless save loop, if this object is referenced
* by another object which falls in this transaction. * by another object which falls in this transaction.
@@ -160,6 +166,17 @@ abstract class BaseEmailEvent extends BaseObject implements Persistent
return $this->prf_uid; return $this->prf_uid;
} }
/**
* Get the [email_server_uid] column value.
*
* @return string
*/
public function getEmailServerUid()
{
return $this->email_server_uid;
}
/** /**
* Set the value of [email_event_uid] column. * Set the value of [email_event_uid] column.
* *
@@ -314,6 +331,28 @@ abstract class BaseEmailEvent extends BaseObject implements Persistent
} // setPrfUid() } // setPrfUid()
/**
* Set the value of [email_server_uid] column.
*
* @param string $v new value
* @return void
*/
public function setEmailServerUid($v)
{
// Since the native PHP type for this column is string,
// we will cast the input to a string (if it is not).
if ($v !== null && !is_string($v)) {
$v = (string) $v;
}
if ($this->email_server_uid !== $v || $v === '') {
$this->email_server_uid = $v;
$this->modifiedColumns[] = EmailEventPeer::EMAIL_SERVER_UID;
}
} // setEmailServerUid()
/** /**
* Hydrates (populates) the object variables with values from the database resultset. * Hydrates (populates) the object variables with values from the database resultset.
* *
@@ -345,12 +384,14 @@ abstract class BaseEmailEvent extends BaseObject implements Persistent
$this->prf_uid = $rs->getString($startcol + 6); $this->prf_uid = $rs->getString($startcol + 6);
$this->email_server_uid = $rs->getString($startcol + 7);
$this->resetModified(); $this->resetModified();
$this->setNew(false); $this->setNew(false);
// FIXME - using NUM_COLUMNS may be clearer. // FIXME - using NUM_COLUMNS may be clearer.
return $startcol + 7; // 7 = EmailEventPeer::NUM_COLUMNS - EmailEventPeer::NUM_LAZY_LOAD_COLUMNS). return $startcol + 8; // 8 = EmailEventPeer::NUM_COLUMNS - EmailEventPeer::NUM_LAZY_LOAD_COLUMNS).
} catch (Exception $e) { } catch (Exception $e) {
throw new PropelException("Error populating EmailEvent object", $e); throw new PropelException("Error populating EmailEvent object", $e);
@@ -575,6 +616,9 @@ abstract class BaseEmailEvent extends BaseObject implements Persistent
case 6: case 6:
return $this->getPrfUid(); return $this->getPrfUid();
break; break;
case 7:
return $this->getEmailServerUid();
break;
default: default:
return null; return null;
break; break;
@@ -602,6 +646,7 @@ abstract class BaseEmailEvent extends BaseObject implements Persistent
$keys[4] => $this->getEmailEventTo(), $keys[4] => $this->getEmailEventTo(),
$keys[5] => $this->getEmailEventSubject(), $keys[5] => $this->getEmailEventSubject(),
$keys[6] => $this->getPrfUid(), $keys[6] => $this->getPrfUid(),
$keys[7] => $this->getEmailServerUid(),
); );
return $result; return $result;
} }
@@ -654,6 +699,9 @@ abstract class BaseEmailEvent extends BaseObject implements Persistent
case 6: case 6:
$this->setPrfUid($value); $this->setPrfUid($value);
break; break;
case 7:
$this->setEmailServerUid($value);
break;
} // switch() } // switch()
} }
@@ -705,6 +753,10 @@ abstract class BaseEmailEvent extends BaseObject implements Persistent
$this->setPrfUid($arr[$keys[6]]); $this->setPrfUid($arr[$keys[6]]);
} }
if (array_key_exists($keys[7], $arr)) {
$this->setEmailServerUid($arr[$keys[7]]);
}
} }
/** /**
@@ -744,6 +796,10 @@ abstract class BaseEmailEvent extends BaseObject implements Persistent
$criteria->add(EmailEventPeer::PRF_UID, $this->prf_uid); $criteria->add(EmailEventPeer::PRF_UID, $this->prf_uid);
} }
if ($this->isColumnModified(EmailEventPeer::EMAIL_SERVER_UID)) {
$criteria->add(EmailEventPeer::EMAIL_SERVER_UID, $this->email_server_uid);
}
return $criteria; return $criteria;
} }
@@ -810,6 +866,8 @@ abstract class BaseEmailEvent extends BaseObject implements Persistent
$copyObj->setPrfUid($this->prf_uid); $copyObj->setPrfUid($this->prf_uid);
$copyObj->setEmailServerUid($this->email_server_uid);
$copyObj->setNew(true); $copyObj->setNew(true);

View File

@@ -25,7 +25,7 @@ abstract class BaseEmailEventPeer
const CLASS_DEFAULT = 'classes.model.EmailEvent'; const CLASS_DEFAULT = 'classes.model.EmailEvent';
/** The total number of columns. */ /** The total number of columns. */
const NUM_COLUMNS = 7; const NUM_COLUMNS = 8;
/** The number of lazy-loaded columns. */ /** The number of lazy-loaded columns. */
const NUM_LAZY_LOAD_COLUMNS = 0; const NUM_LAZY_LOAD_COLUMNS = 0;
@@ -52,6 +52,9 @@ abstract class BaseEmailEventPeer
/** the column name for the PRF_UID field */ /** the column name for the PRF_UID field */
const PRF_UID = 'EMAIL_EVENT.PRF_UID'; const PRF_UID = 'EMAIL_EVENT.PRF_UID';
/** the column name for the EMAIL_SERVER_UID field */
const EMAIL_SERVER_UID = 'EMAIL_EVENT.EMAIL_SERVER_UID';
/** The PHP to DB Name Mapping */ /** The PHP to DB Name Mapping */
private static $phpNameMap = null; private static $phpNameMap = null;
@@ -63,10 +66,10 @@ abstract class BaseEmailEventPeer
* e.g. self::$fieldNames[self::TYPE_PHPNAME][0] = 'Id' * e.g. self::$fieldNames[self::TYPE_PHPNAME][0] = 'Id'
*/ */
private static $fieldNames = array ( private static $fieldNames = array (
BasePeer::TYPE_PHPNAME => array ('EmailEventUid', 'PrjUid', 'EvnUid', 'EmailEventFrom', 'EmailEventTo', 'EmailEventSubject', 'PrfUid', ), BasePeer::TYPE_PHPNAME => array ('EmailEventUid', 'PrjUid', 'EvnUid', 'EmailEventFrom', 'EmailEventTo', 'EmailEventSubject', 'PrfUid', 'EmailServerUid', ),
BasePeer::TYPE_COLNAME => array (EmailEventPeer::EMAIL_EVENT_UID, EmailEventPeer::PRJ_UID, EmailEventPeer::EVN_UID, EmailEventPeer::EMAIL_EVENT_FROM, EmailEventPeer::EMAIL_EVENT_TO, EmailEventPeer::EMAIL_EVENT_SUBJECT, EmailEventPeer::PRF_UID, ), BasePeer::TYPE_COLNAME => array (EmailEventPeer::EMAIL_EVENT_UID, EmailEventPeer::PRJ_UID, EmailEventPeer::EVN_UID, EmailEventPeer::EMAIL_EVENT_FROM, EmailEventPeer::EMAIL_EVENT_TO, EmailEventPeer::EMAIL_EVENT_SUBJECT, EmailEventPeer::PRF_UID, EmailEventPeer::EMAIL_SERVER_UID, ),
BasePeer::TYPE_FIELDNAME => array ('EMAIL_EVENT_UID', 'PRJ_UID', 'EVN_UID', 'EMAIL_EVENT_FROM', 'EMAIL_EVENT_TO', 'EMAIL_EVENT_SUBJECT', 'PRF_UID', ), BasePeer::TYPE_FIELDNAME => array ('EMAIL_EVENT_UID', 'PRJ_UID', 'EVN_UID', 'EMAIL_EVENT_FROM', 'EMAIL_EVENT_TO', 'EMAIL_EVENT_SUBJECT', 'PRF_UID', 'EMAIL_SERVER_UID', ),
BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, ) BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, )
); );
/** /**
@@ -76,10 +79,10 @@ abstract class BaseEmailEventPeer
* e.g. self::$fieldNames[BasePeer::TYPE_PHPNAME]['Id'] = 0 * e.g. self::$fieldNames[BasePeer::TYPE_PHPNAME]['Id'] = 0
*/ */
private static $fieldKeys = array ( private static $fieldKeys = array (
BasePeer::TYPE_PHPNAME => array ('EmailEventUid' => 0, 'PrjUid' => 1, 'EvnUid' => 2, 'EmailEventFrom' => 3, 'EmailEventTo' => 4, 'EmailEventSubject' => 5, 'PrfUid' => 6, ), BasePeer::TYPE_PHPNAME => array ('EmailEventUid' => 0, 'PrjUid' => 1, 'EvnUid' => 2, 'EmailEventFrom' => 3, 'EmailEventTo' => 4, 'EmailEventSubject' => 5, 'PrfUid' => 6, 'EmailServerUid' => 7, ),
BasePeer::TYPE_COLNAME => array (EmailEventPeer::EMAIL_EVENT_UID => 0, EmailEventPeer::PRJ_UID => 1, EmailEventPeer::EVN_UID => 2, EmailEventPeer::EMAIL_EVENT_FROM => 3, EmailEventPeer::EMAIL_EVENT_TO => 4, EmailEventPeer::EMAIL_EVENT_SUBJECT => 5, EmailEventPeer::PRF_UID => 6, ), BasePeer::TYPE_COLNAME => array (EmailEventPeer::EMAIL_EVENT_UID => 0, EmailEventPeer::PRJ_UID => 1, EmailEventPeer::EVN_UID => 2, EmailEventPeer::EMAIL_EVENT_FROM => 3, EmailEventPeer::EMAIL_EVENT_TO => 4, EmailEventPeer::EMAIL_EVENT_SUBJECT => 5, EmailEventPeer::PRF_UID => 6, EmailEventPeer::EMAIL_SERVER_UID => 7, ),
BasePeer::TYPE_FIELDNAME => array ('EMAIL_EVENT_UID' => 0, 'PRJ_UID' => 1, 'EVN_UID' => 2, 'EMAIL_EVENT_FROM' => 3, 'EMAIL_EVENT_TO' => 4, 'EMAIL_EVENT_SUBJECT' => 5, 'PRF_UID' => 6, ), BasePeer::TYPE_FIELDNAME => array ('EMAIL_EVENT_UID' => 0, 'PRJ_UID' => 1, 'EVN_UID' => 2, 'EMAIL_EVENT_FROM' => 3, 'EMAIL_EVENT_TO' => 4, 'EMAIL_EVENT_SUBJECT' => 5, 'PRF_UID' => 6, 'EMAIL_SERVER_UID' => 7, ),
BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, ) BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, )
); );
/** /**
@@ -194,6 +197,8 @@ abstract class BaseEmailEventPeer
$criteria->addSelectColumn(EmailEventPeer::PRF_UID); $criteria->addSelectColumn(EmailEventPeer::PRF_UID);
$criteria->addSelectColumn(EmailEventPeer::EMAIL_SERVER_UID);
} }
const COUNT = 'COUNT(EMAIL_EVENT.EMAIL_EVENT_UID)'; const COUNT = 'COUNT(EMAIL_EVENT.EMAIL_EVENT_UID)';

View File

@@ -5310,6 +5310,7 @@
<column name="EMAIL_EVENT_TO" type="LONGVARCHAR" required="true" /> <column name="EMAIL_EVENT_TO" type="LONGVARCHAR" required="true" />
<column name="EMAIL_EVENT_SUBJECT" type="VARCHAR" size="150" required="false" default=""/> <column name="EMAIL_EVENT_SUBJECT" type="VARCHAR" size="150" required="false" default=""/>
<column name="PRF_UID" type="VARCHAR" size="32" required="false" default="" /> <column name="PRF_UID" type="VARCHAR" size="32" required="false" default="" />
<column name="EMAIL_SERVER_UID" type="VARCHAR" size="32" required="false" default="" />
</table> </table>
<table name="NOTIFICATION_DEVICE"> <table name="NOTIFICATION_DEVICE">

View File

@@ -2942,6 +2942,7 @@ CREATE TABLE `EMAIL_EVENT`
`EMAIL_EVENT_TO` MEDIUMTEXT NOT NULL, `EMAIL_EVENT_TO` MEDIUMTEXT NOT NULL,
`EMAIL_EVENT_SUBJECT` VARCHAR(150) default '', `EMAIL_EVENT_SUBJECT` VARCHAR(150) default '',
`PRF_UID` VARCHAR(32) default '', `PRF_UID` VARCHAR(32) default '',
`EMAIL_SERVER_UID` VARCHAR(32) NOT NULL,
PRIMARY KEY (`EMAIL_EVENT_UID`) PRIMARY KEY (`EMAIL_EVENT_UID`)
)ENGINE=InnoDB DEFAULT CHARSET='utf8'; )ENGINE=InnoDB DEFAULT CHARSET='utf8';
#----------------------------------------------------------------------------- #-----------------------------------------------------------------------------

View File

@@ -65,11 +65,7 @@ class EmailEvent
$accountsArray = array(); $accountsArray = array();
while ($aRow = $result->getRow()) { while ($aRow = $result->getRow()) {
if ($aRow['MESS_UID'] != null) { if ($aRow['MESS_UID'] != null) {
if($aRow['MESS_FROM_MAIL'] == "") { $aRow['EMAIL'] = $aRow['MESS_ACCOUNT'];
$aRow['EMAIL'] = $aRow['MESS_ACCOUNT'];
} else {
$aRow['EMAIL'] = $aRow['MESS_FROM_MAIL'];
}
if($aRow['EMAIL'] != "") { if($aRow['EMAIL'] != "") {
$accountsArray[] = array_change_key_case($aRow, CASE_LOWER); $accountsArray[] = array_change_key_case($aRow, CASE_LOWER);
} }
@@ -355,6 +351,32 @@ class EmailEvent
$criteria->addSelectColumn(\EmailEventPeer::EMAIL_EVENT_TO); $criteria->addSelectColumn(\EmailEventPeer::EMAIL_EVENT_TO);
$criteria->addSelectColumn(\EmailEventPeer::EMAIL_EVENT_SUBJECT); $criteria->addSelectColumn(\EmailEventPeer::EMAIL_EVENT_SUBJECT);
$criteria->addSelectColumn(\EmailEventPeer::PRF_UID); $criteria->addSelectColumn(\EmailEventPeer::PRF_UID);
$criteria->addSelectColumn(\EmailEventPeer::EMAIL_SERVER_UID);
return $criteria;
} catch (\Exception $e) {
throw $e;
}
}
/**
* @return \Criteria
* @throws \Exception
*/
public function getEmailEventCriteriaEmailServer()
{
try {
$criteria = new \Criteria("workflow");
$criteria->addSelectColumn(\EmailEventPeer::EMAIL_EVENT_UID);
$criteria->addSelectColumn(\EmailEventPeer::PRJ_UID);
$criteria->addSelectColumn(\EmailEventPeer::EVN_UID);
$criteria->addSelectColumn(\EmailEventPeer::EMAIL_EVENT_FROM);
$criteria->addSelectColumn(\EmailEventPeer::EMAIL_EVENT_TO);
$criteria->addSelectColumn(\EmailEventPeer::EMAIL_EVENT_SUBJECT);
$criteria->addSelectColumn(\EmailEventPeer::PRF_UID);
$criteria->addSelectColumn(\EmailEventPeer::EMAIL_SERVER_UID);
$criteria->add(\EmailEventPeer::EMAIL_SERVER_UID, '',\Criteria::EQUAL);
return $criteria; return $criteria;
} catch (\Exception $e) { } catch (\Exception $e) {
@@ -411,19 +433,21 @@ class EmailEvent
throw new \Exception(\G::LoadTranslation("ID_EMAIL_EVENT_DEFINITION_DOES_NOT_EXIST")); throw new \Exception(\G::LoadTranslation("ID_EMAIL_EVENT_DEFINITION_DOES_NOT_EXIST"));
} }
$arrayData = $this->existsEvent($prj_uid, $eventUid); $arrayData = $this->existsEvent($prj_uid, $eventUid);
if(sizeof($arrayData)) { if (sizeof($arrayData)) {
$oEmailServer = new EmailServer();
$configEmailData = $oEmailServer->getEmailServer($arrayData[7]);
$emailGroupTo = array(); $emailGroupTo = array();
$emailTo = ""; $emailTo = "";
$prfUid = $arrayData[6]; $prfUid = $arrayData[6];
$filesManager = new \ProcessMaker\BusinessModel\FilesManager(); $filesManager = new \ProcessMaker\BusinessModel\FilesManager();
$contentFile = $filesManager->getProcessFileManager($prj_uid, $prfUid); $contentFile = $filesManager->getProcessFileManager($prj_uid, $prfUid);
if(strpos($arrayData[4],",")) { if (strpos($arrayData[4], ",")) {
$emailsArray = explode(",",$arrayData[4]); $emailsArray = explode(",", $arrayData[4]);
foreach($emailsArray as $email) { foreach ($emailsArray as $email) {
if(substr($email,0,1) == "@") { if (substr($email, 0, 1) == "@") {
$email = substr($email, 2,strlen($email)); $email = substr($email, 2, strlen($email));
if(isset($arrayApplicationData['APP_DATA'])) { if (isset($arrayApplicationData['APP_DATA'])) {
if(is_array($arrayApplicationData['APP_DATA']) && isset( $arrayApplicationData['APP_DATA'][$email])) { if (is_array($arrayApplicationData['APP_DATA']) && isset($arrayApplicationData['APP_DATA'][$email])) {
$emailGroupTo[] = $arrayApplicationData['APP_DATA'][$email]; $emailGroupTo[] = $arrayApplicationData['APP_DATA'][$email];
} }
} }
@@ -431,13 +455,13 @@ class EmailEvent
$emailGroupTo[] = $email; $emailGroupTo[] = $email;
} }
} }
$emailTo = implode(",",array_unique(array_filter($emailGroupTo))); $emailTo = implode(",", array_unique(array_filter($emailGroupTo)));
} else { } else {
$email = $arrayData[4]; $email = $arrayData[4];
if(substr($email,0,1) == "@") { if (substr($email, 0, 1) == "@") {
$email = substr($email, 2,strlen($email)); $email = substr($email, 2, strlen($email));
if(isset($arrayApplicationData['APP_DATA'])) { if (isset($arrayApplicationData['APP_DATA'])) {
if(is_array($arrayApplicationData['APP_DATA']) && isset( $arrayApplicationData['APP_DATA'][$email])) { if (is_array($arrayApplicationData['APP_DATA']) && isset($arrayApplicationData['APP_DATA'][$email])) {
$emailTo = $arrayApplicationData['APP_DATA'][$email]; $emailTo = $arrayApplicationData['APP_DATA'][$email];
} }
} }
@@ -445,10 +469,11 @@ class EmailEvent
$emailTo = $email; $emailTo = $email;
} }
} }
if(!empty($emailTo) && $arrayData[3] != '') { if (!empty($emailTo) && $arrayData[3] != '') {
$subject = $arrayData[5]; $subject = $arrayData[5];
$subject = \G::replaceDataField($arrayData[5], $arrayApplicationData['APP_DATA']); $subject = \G::replaceDataField($arrayData[5], $arrayApplicationData['APP_DATA']);
\PMFSendMessage($appUID, $arrayData[3], $emailTo, '', '', $subject, $contentFile['prf_filename'], array()); \PMFSendMessage($appUID, $configEmailData['MESS_ACCOUNT'], $emailTo, '', '', $subject,
$contentFile['prf_filename'], array(), array(), true, 0, $configEmailData);
} else { } else {
\Bootstrap::registerMonolog('EmailEventMailError', 200, \G::LoadTranslation('ID_EMAIL_EVENT_CONFIGURATION_EMAIL', array($eventUid, $prj_uid)), ['eventUid' => $eventUid, 'prj_uid' => $prj_uid], SYS_SYS, 'emailEvent.log'); \Bootstrap::registerMonolog('EmailEventMailError', 200, \G::LoadTranslation('ID_EMAIL_EVENT_CONFIGURATION_EMAIL', array($eventUid, $prj_uid)), ['eventUid' => $eventUid, 'prj_uid' => $prj_uid], SYS_SYS, 'emailEvent.log');
} }

View File

@@ -1217,5 +1217,23 @@ class EmailServer
throw $e; throw $e;
} }
} }
/**
* @param $fromAccount
* @return array
*/
public function getUidEmailServer($fromAccount){
$criteria = new \Criteria("workflow");
$criteria->addSelectColumn(\EmailServerPeer::MESS_UID);
$criteria->add(
$criteria->getNewCriterion(\EmailServerPeer::MESS_ACCOUNT, $fromAccount, \Criteria::EQUAL)->addOr(
$criteria->getNewCriterion(\EmailServerPeer::MESS_FROM_MAIL, $fromAccount, \Criteria::EQUAL))
);
$criteria->addAsColumn('EMAIL_SERVER_UID', 'MESS_UID');
$rsCriteria = \EmailServerPeer::doSelectRS($criteria);
$rsCriteria->setFetchmode(\ResultSet::FETCHMODE_ASSOC);
$rsCriteria->next();
return $rsCriteria->getRow();
}
} }