From 7ffbecdb608604b3d071b7725112ba3a0efb50ca Mon Sep 17 00:00:00 2001 From: Marco Antonio Nina Date: Wed, 12 Dec 2012 14:45:16 -0400 Subject: [PATCH] BUG 10156 Cron execution stop if an error is found in any event SOLVED - To run cron was stopped in one case in the function PMFGetUserEmailAddress for a nonexistent user id. - was add validation to nonexistent user --- workflow/engine/classes/class.pmFunctions.php | 8 +++++--- workflow/engine/classes/class.spool.php | 4 ++-- workflow/engine/classes/model/AppEvent.php | 1 + 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/workflow/engine/classes/class.pmFunctions.php b/workflow/engine/classes/class.pmFunctions.php index 9e99fa4cf..3965bac53 100755 --- a/workflow/engine/classes/class.pmFunctions.php +++ b/workflow/engine/classes/class.pmFunctions.php @@ -2394,9 +2394,11 @@ function PMFGetUserEmailAddress ($id, $APP_UID = null, $prefix = 'usr') } } else { $oUserRow = UsersPeer::retrieveByPK( $sID ); - $sID = $oUserRow->getUsrEmail(); - if (G::emailAddress( $sID )) { - array_push( $aRecipient, $sID ); + if ($oUserRow != null) { + $sID = $oUserRow->getUsrEmail(); + if (G::emailAddress( $sID )) { + array_push( $aRecipient, $sID ); + } } } diff --git a/workflow/engine/classes/class.spool.php b/workflow/engine/classes/class.spool.php index 1650fd9cd..7970539cd 100755 --- a/workflow/engine/classes/class.spool.php +++ b/workflow/engine/classes/class.spool.php @@ -578,8 +578,8 @@ class spoolRun $sFrom = $row["APP_MSG_FROM"]; $hasEmailFrom = preg_match('/(.+)@(.+)\.(.+)/', $row["APP_MSG_FROM"], $match); - if (! $hasEmailFrom || strpos( $row["APP_MSG_FROM"], $setup['MESS_ACCOUNT'] ) === false) { - $sFrom = '"' . stripslashes( $row["APP_MSG_FROM"] ) . '" <' . $setup['MESS_ACCOUNT'] . ">"; + if (! $hasEmailFrom || strpos( $row["APP_MSG_FROM"], $aConfiguration['MESS_ACCOUNT'] ) === false) { + $sFrom = '"' . stripslashes( $row["APP_MSG_FROM"] ) . '" <' . $aConfiguration['MESS_ACCOUNT'] . ">"; } $this->setData( $row["APP_MSG_UID"], $row["APP_MSG_SUBJECT"], $sFrom, $row["APP_MSG_TO"], $row["APP_MSG_BODY"], date( "Y-m-d H:i:s" ), $row["APP_MSG_CC"], $row["APP_MSG_BCC"], $row["APP_MSG_TEMPLATE"], $row["APP_MSG_ATTACH"] ); diff --git a/workflow/engine/classes/model/AppEvent.php b/workflow/engine/classes/model/AppEvent.php index 420a1169c..1f51d5137 100755 --- a/workflow/engine/classes/model/AppEvent.php +++ b/workflow/engine/classes/model/AppEvent.php @@ -330,6 +330,7 @@ class AppEvent extends BaseAppEvent $log[] = ' - The trigger ' . $aRow['TRI_UID'] . ' throw some errors!'; println( " - The trigger {$aRow['TRI_UID']} throw some errors!" ); print_r( $_SESSION['TRIGGER_DEBUG']['ERRORS'] ); + $_SESSION['TRIGGER_DEBUG']['ERRORS'] = array(); } if ($oAppEvent->getAppEvnAttempts() > 0) { $oAppEvent->setAppEvnAttempts( $oAppEvent->getAppEvnAttempts() - 1 );