/** * Renders email address stage based on last email activity * @param String $emailAddress * @param RedBeanModel $model * @return string $content */ public static function renderEmailAddressState($emailAddress, RedBeanModel $model) { assert('is_string($emailAddress) || $emailAddress == null'); if ($emailAddress == null) { return; } $records = ExternalApiEmailMessageActivity::resolveAndGetByEmailAddress($emailAddress, 'sendgrid'); if (!empty($records)) { $record = $records[0]; if ($record->type == EmailMessageActivity::TYPE_BOUNCE || $record->type == EmailMessageActivity::TYPE_HARD_BOUNCE || $record->type == EmailMessageActivity::TYPE_SOFT_BOUNCE) { $tooltipTitle = $record->reason; $tooltip = '<span id="last-email-activity-status-tooltip" class="tooltip" title="' . $tooltipTitle . '">?</span>'; $content = '<i>●</i><span>' . Zurmo::t('MarketingModule', 'Bounced') . '</span>' . $tooltip; $content = ZurmoHtml::tag('div', array('class' => 'email-recipient-stage-status stage-false'), $content); $content = ZurmoHtml::tag('div', array('class' => 'clearfix'), $content); $content = ZurmoHtml::tag('div', array('class' => 'continuum', 'id' => 'bouncedcontact'), $content); } if ($record->type == EmailMessageActivity::TYPE_SPAM) { $tooltipTitle = $record->reason; $tooltip = '<span id="last-email-activity-status-tooltip" class="tooltip" title="' . $tooltipTitle . '">?</span>'; $content = '<i>●</i><span>' . Zurmo::t('MarketingModule', 'Spam') . '</span>' . $tooltip; $content = ZurmoHtml::tag('div', array('class' => 'email-recipient-stage-status queued'), $content); $content = ZurmoHtml::tag('div', array('class' => 'clearfix'), $content); $content = ZurmoHtml::tag('div', array('class' => 'continuum', 'id' => 'spammedcontact'), $content); } $qtip = new ZurmoTip(); $qtip->addQTip("#last-email-activity-status-tooltip"); $content = ZurmoHtml::tag('div', array('class' => 'last-email-activity-status'), $content); return $content; } return null; }