]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
making more sense in mail_notify_fav
authorMikael Nordfeldth <mmn@hethane.se>
Sun, 13 Jul 2014 10:56:43 +0000 (12:56 +0200)
committerMikael Nordfeldth <mmn@hethane.se>
Sun, 13 Jul 2014 10:56:43 +0000 (12:56 +0200)
We should probably get rid of this function, at least storing everything in
lib/mail.php - but until then, at least let's make it more understandable.

classes/Notice.php
lib/mail.php
plugins/Favorite/actions/apifavoritecreate.php
plugins/Favorite/actions/atompubfavoritefeed.php
plugins/Favorite/lib/favcommand.php

index 55af2d1b6ed90d8eb9477d11dd2bbceadbcdb2a1..01827245c3117689b4d8806e744bbbe29ccd9cb4 100644 (file)
@@ -1676,6 +1676,8 @@ class Notice extends Managed_DataObject
 
         $recipientIds = $this->getReplies();
         if (Event::handle('StartNotifyMentioned', array($this, &$recipientIds))) {
+            require_once INSTALLDIR.'/lib/mail.php';
+
             foreach ($recipientIds as $recipientId) {
                 $user = User::getKV('id', $recipientId);
                 if ($user instanceof User) {
index 7b6c1d50fee17f4fbdd19aae395e56b517b4d44f..182c95ea48dac93d4d2f566ba18cf75c3035f1be 100644 (file)
@@ -666,31 +666,30 @@ function mail_notify_message($message, $from=null, $to=null)
  * want to receive notification of faves. Maybe this happens higher
  * up the stack...?
  *
- * @param User   $other  The user whose notice was faved
- * @param User   $user   The user who faved the notice
- * @param Notice $notice The notice that was faved
+ * @param User    $rcpt   The user whose notice was faved
+ * @param Profile $sender The user who faved the notice
+ * @param Notice  $notice The notice that was faved
  *
  * @return void
  */
-function mail_notify_fave($other, $user, $notice)
+function mail_notify_fave(User $rcpt, Profile $sender, Notice $notice)
 {
-    if (!$user->hasRight(Right::EMAILONFAVE)) {
+    if (!$sender->hasRight(Right::EMAILONFAVE)) {
         return;
     }
 
-    $profile = $user->getProfile();
-    if ($other->hasBlocked($profile)) {
+    if ($rcpt->hasBlocked($sender)) {
         // If the author has blocked us, don't spam them with a notification.
         return;
     }
 
     $bestname = $profile->getBestName();
 
-    common_switch_locale($other->language);
+    common_switch_locale($rcpt->language);
 
     // TRANS: Subject for favorite notification e-mail.
     // TRANS: %1$s is the adding user's long name, %2$s is the adding user's nickname.
-    $subject = sprintf(_('%1$s (@%2$s) added your notice as a favorite'), $bestname, $user->nickname);
+    $subject = sprintf(_('%1$s (@%2$s) added your notice as a favorite'), $bestname, $sender->getNickname());
 
     // TRANS: Body for favorite notification e-mail.
     // TRANS: %1$s is the adding user's long name, $2$s is the date the notice was created,
@@ -711,15 +710,15 @@ function mail_notify_fave($other, $user, $notice)
                                      array('notice' => $notice->id)),
                     $notice->content,
                     common_local_url('showfavorites',
-                                     array('nickname' => $user->nickname)),
+                                     array('nickname' => $sender->getNickname())),
                     common_config('site', 'name'),
-                    $user->nickname) .
+                    $sender->getNickname()) .
             mail_footer_block();
 
-    $headers = _mail_prepare_headers('fave', $other->nickname, $user->nickname);
+    $headers = _mail_prepare_headers('fave', $rcpt->getNickname(), $sender->getNickname());
 
     common_switch_locale();
-    mail_to_user($other, $subject, $body, $headers);
+    mail_to_user($rcpt, $subject, $body, $headers);
 }
 
 /**
index 00c1e21bbf7b169f81459edc8de264935017c7c9..4172692441413493b02b57602fed7a18cb910e57 100644 (file)
@@ -164,7 +164,9 @@ class ApiFavoriteCreateAction extends ApiAuthAction
         $other = User::getKV('id', $notice->profile_id);
         if ($other && $other->id != $user->id) {
             if ($other->email && $other->emailnotifyfav) {
-                mail_notify_fave($other, $user, $notice);
+                require_once INSTALLDIR.'/lib/mail.php';
+
+                mail_notify_fave($other, $user->getProfile(), $notice);
             }
             // XXX: notify by IM
             // XXX: notify by SMS
index cbbe91ae554a54e83cdbe013562deebd0e7d23cf..4ff76e183d1622b20a47625d76d1013c35411284 100644 (file)
@@ -363,7 +363,9 @@ class AtompubfavoritefeedAction extends ApiAuthAction
         $other = User::getKV('id', $notice->profile_id);
         if ($other && $other->id != $user->id) {
             if ($other->email && $other->emailnotifyfav) {
-                mail_notify_fave($other, $user, $notice);
+                require_once INSTALLDIR.'/lib/mail.php';
+
+                mail_notify_fave($other, $user->getProfile(), $notice);
             }
             // XXX: notify by IM
             // XXX: notify by SMS
index 41fd0b0b883e2533b5652399ab9c5d584e62bb37..65ccdaae4b1b8b16169df4d587dbbaf2912e3c1f 100644 (file)
@@ -40,7 +40,9 @@ class FavCommand extends Command
  
         if ($other && $other->id != $this->user->id) { 
             if ($other->email && $other->emailnotifyfav) { 
-                mail_notify_fave($other, $this->user, $notice); 
+                require_once INSTALLDIR.'/lib/mail.php';
+
+                mail_notify_fave($other, $this->user->getProfile(), $notice);
             } 
         }