* Email object.
*/
public static function holdEmail(&$email) {
- if (!($email->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
$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
}
}
else {
- if (($email->on_hold != 'null') && $email->on_hold) {
+ if ($email->on_hold) {
$email->hold_date = date('YmdHis');
}
}