]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - plugins/EmailSummary/lib/useremailsummaryhandler.php
Merge remote-tracking branch 'gnuio/master' into nightly
[quix0rs-gnu-social.git] / plugins / EmailSummary / lib / useremailsummaryhandler.php
index fe814a3fb5ba0610b5547a980f4ae63381c1b263..143d6c1bd222382e12b1160e4b8111cf97eaba5e 100644 (file)
@@ -26,9 +26,7 @@
  * @link      http://status.net/
  */
 
-if (!defined('STATUSNET')) {
-    exit(1);
-}
+if (!defined('GNUSOCIAL')) { exit(1); }
 
 /**
  * Handler for queue items of type 'usersum', sends an email summaries
@@ -95,9 +93,9 @@ class UserEmailSummaryHandler extends QueueHandler
             return true;
         }
 
-        $profile = $user->getProfile();
-
-        if (empty($profile)) {
+        try {
+            $profile = $user->getProfile();
+        } catch (UserNoProfileException $e) {
             common_log(LOG_WARNING, sprintf('Not sending email summary for user %s; no profile.', $user_id));
             return true;
         }
@@ -117,8 +115,8 @@ class UserEmailSummaryHandler extends QueueHandler
 
         $new_top = null;
 
-        if ($notice instanceof ArrayWrapper) {
-            $new_top = $notice->_items[0]->id;
+        if ($notice->fetch()) {
+            $new_top = $notice->id;
         }
 
         // TRANS: Subject for e-mail.
@@ -145,7 +143,7 @@ class UserEmailSummaryHandler extends QueueHandler
         $out->elementStart('table', array('width' => '550px',
                                           'style' => 'border: none; border-collapse: collapse;', 'cellpadding' => '6'));
 
-        while ($notice->fetch()) {
+        do {
             $profile = Profile::getKV('id', $notice->profile_id);
 
             if (empty($profile)) {
@@ -171,9 +169,9 @@ class UserEmailSummaryHandler extends QueueHandler
             $out->element('a', array('href' => $profile->profileurl),
                           $profile->nickname);
             $out->text(' ');
-            $out->raw($notice->rendered);
+            $out->raw($notice->getRendered());
             $out->elementStart('div', array('style' => 'font-size: 0.8em; padding-top: 4px;'));
-            $noticeurl = $notice->getUrl();
+            $noticeurl = $notice->getLocalUrl();
             // above should always return an URL
             assert(!empty($noticeurl));
             $out->elementStart('a', array('rel' => 'bookmark',
@@ -189,7 +187,7 @@ class UserEmailSummaryHandler extends QueueHandler
             $out->elementEnd('div');
             $out->elementEnd('td');
             $out->elementEnd('tr');
-        }
+        } while ($notice->fetch());
 
         $out->elementEnd('table');