X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=plugins%2FEmailSummary%2Fuseremailsummaryhandler.php;h=2c8c0d9039e1afd6c1d68fb3579c704848e049ed;hb=2640232c68223f98f08ad7c5fc06ec4b8e99f5e5;hp=5e10af40eb1f48d42bad570fc545980d5b825300;hpb=f9f437f5dadc5affd1216d0cce0f7c2487902c0e;p=quix0rs-gnu-social.git diff --git a/plugins/EmailSummary/useremailsummaryhandler.php b/plugins/EmailSummary/useremailsummaryhandler.php index 5e10af40eb..2c8c0d9039 100644 --- a/plugins/EmailSummary/useremailsummaryhandler.php +++ b/plugins/EmailSummary/useremailsummaryhandler.php @@ -1,7 +1,7 @@ send_summary) { common_log(LOG_INFO, sprintf('Not sending email summary for user %s by request.', $user_id)); return true; } $since_id = null; - + if (!empty($ess)) { $since_id = $ess->last_summary_id; } - + $user = User::staticGet('id', $user_id); if (empty($user)) { common_log(LOG_INFO, sprintf('Not sending email summary for user %s; no such user.', $user_id)); return true; } - + if (empty($user->email)) { common_log(LOG_INFO, sprintf('Not sending email summary for user %s; no email address.', $user_id)); return true; } - + $profile = $user->getProfile(); - + if (empty($profile)) { common_log(LOG_WARNING, sprintf('Not sending email summary for user %s; no profile.', $user_id)); return true; } - + $notice = $user->ownFriendsTimeline(0, self::MAX_NOTICES, $since_id); if (empty($notice) || $notice->N == 0) { @@ -117,18 +113,20 @@ class UserEmailSummaryHandler extends QueueHandler // figuring out a better way. -ESP $new_top = null; - + if ($notice instanceof ArrayWrapper) { $new_top = $notice->_items[0]->id; } - + $out = new XMLStringer(); $out->elementStart('div', array('width' => '100%', 'style' => 'background-color: #ffffff; border: 4px solid #4c609a; padding: 10px;')); $out->elementStart('div', array('style' => 'color: #ffffff; background-color: #4c609a; font-weight: bold; margin-bottom: 10px; padding: 4px;')); - $out->raw(sprintf(_m('Recent updates from %1s for %2s:'), + // TRANS: Text in e-mail summary. + // TRANS: %1$s is the StatusNet sitename, %2$s is the recipient's profile name. + $out->raw(sprintf(_m('Recent updates from %1$s for %2s:'), common_config('site', 'name'), $profile->getBestName())); $out->elementEnd('div'); @@ -137,13 +135,12 @@ class UserEmailSummaryHandler extends QueueHandler 'style' => 'border: none; border-collapse: collapse;', 'cellpadding' => '6')); while ($notice->fetch()) { - $profile = Profile::staticGet('id', $notice->profile_id); - + if (empty($profile)) { continue; } - + $avatar = $profile->getAvatar(AVATAR_STREAM_SIZE); $out->elementStart('tr'); @@ -191,7 +188,7 @@ class UserEmailSummaryHandler extends QueueHandler $out->elementEnd('td'); $out->elementEnd('tr'); } - + $out->elementEnd('table'); $out->raw(sprintf(_m('

change your email settings for %2s

'), @@ -199,35 +196,32 @@ class UserEmailSummaryHandler extends QueueHandler common_config('site', 'name'))); $out->elementEnd('div'); - + $body = $out->getString(); - + // FIXME: do something for people who don't like HTML email - + mail_to_user($user, _m('Updates from your network'), $body, array('Content-Type' => 'text/html; charset=UTF-8')); if (empty($ess)) { - $ess = new Email_summary_status(); - + $ess->user_id = $user_id; $ess->created = common_sql_now(); $ess->last_summary_id = $new_top; $ess->modified = common_sql_now(); $ess->insert(); - } else { - $orig = clone($ess); - + $ess->last_summary_id = $new_top; $ess->modified = common_sql_now(); $ess->update($orig); } - + return true; } }