/** * @param Account $account * @return string */ public function getExpiryNotification(Account $account) { $now = new DateTime($this->currentDate); $diff = $account->expiresOn()->diff($now); $message = '<strong>You have %d days left on your Esendex account %s. </strong>'; $message .= '<a href="%s" target="_blank">Buy messages</a> to extend your account.'; return $this->helper()->__($message, $diff->days, $account->reference(), static::TRIAL_EXPIRING_URL); }
private function parseAccount($account) { $result = new Account(); $result->id($account["id"]); $result->reference($account->reference); $result->label($account->label); $result->address($account->address); $result->alias($account->alias); $result->type($account->type); $result->messagesRemaining(intval($account->messagesremaining, 10)); $result->expiresOn($this->parseDateTime($account->expireson)); $result->defaultDialCode($account->defaultdialcode); return $result; }
public function testGetExpiryNotificationReturnsCorrectMessageWhenNearingExpiry() { $this->accountNotifications->setCurrentDate('21 December 2014'); $account = new Account(); $account->expiresOn(new DateTime('30 December 2014')); $account->reference('EX123'); $notification = $this->accountNotifications->getExpiryNotification($account); $expected = '<strong>You have 9 days left on your Esendex account EX123. </strong>'; $expected .= '<a href="https://www.esendex.com/redirect?i=ecommerce&ls=magento&sc=trialexpirybanner&sd=v1" target="_blank">Buy messages</a> to extend your account.'; $this->assertEquals($expected, $notification); }