X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=CRM%2FCore%2FBAO%2FEmail.php;h=7be3aab41f47e93d6c274fd277ef8b3d1e3aa0a3;hb=7aab005804775d32b5e30f7f68664755cd5eed99;hp=83119c8b7277b8fb69669d01ff1a45e0d170e6c9;hpb=5841ae051b219bbab7c6185e11e7d673a9f20e91;p=civicrm-core.git diff --git a/CRM/Core/BAO/Email.php b/CRM/Core/BAO/Email.php index 83119c8b72..7be3aab41f 100644 --- a/CRM/Core/BAO/Email.php +++ b/CRM/Core/BAO/Email.php @@ -1,7 +1,7 @@ on_hold === 'null' || $email->on_hold === NULL)) { - $email->on_hold = intval($email->on_hold); + if ($email->id && $email->on_hold === NULL) { + // email is being updated but no change to on_hold. + return; } + if ($email->on_hold === 'null' || $email->on_hold === NULL) { + // legacy handling, deprecated. + $email->on_hold = 0; + } + $email->on_hold = (int) $email->on_hold; + //check for update mode if ($email->id) { $params = array(1 => array($email->id, 'Integer')); - if ($email->on_hold && $email->on_hold != 'null') { + if ($email->on_hold) { $sql = " SELECT id FROM civicrm_email @@ -255,7 +262,8 @@ AND hold_date IS NULL $email->reset_date = 'null'; } } - elseif ($email->on_hold == 'null') { + elseif ($email->on_hold === 0) { + // we do this lookup to see if reset_date should be changed. $sql = " SELECT id FROM civicrm_email @@ -272,7 +280,7 @@ AND reset_date IS NULL } } else { - if (($email->on_hold != 'null') && $email->on_hold) { + if ($email->on_hold) { $email->hold_date = date('YmdHis'); } }