]> git.mxchange.org Git - friendica.git/blobdiff - include/enotify.php
EN US translation update THX miqrogroove
[friendica.git] / include / enotify.php
index 39c74fdc64a0ae8c1c27156114ced1ea085db07e..7eb2c80ebc5964d5a89f70b8966c233f55874ba3 100644 (file)
@@ -11,6 +11,7 @@ use Friendica\Core\System;
 use Friendica\Database\DBM;
 use Friendica\Util\DateTimeFormat;
 use Friendica\Util\Emailer;
+use Friendica\Model\Item;
 
 /**
  * @brief Creates a notification entry and possibly sends a mail
@@ -129,7 +130,7 @@ function notification($params)
                $item = null;
 
                if ($params['otype'] === 'item' && $parent_id) {
-                       $item = dba::selectFirst('item', [], ['id' => $parent_id]);
+                       $item = Item::selectFirst($params['uid'], [], ['id' => $parent_id]);
                }
 
                $item_post_type = item_post_type($item);
@@ -152,7 +153,7 @@ function notification($params)
                }
 
                // "your post"
-               if (DBM::is_result($item) && $item['owner-name'] == $item['author-name'] && $item['wall']) {
+               if (DBM::is_result($item) && $item['owner-id'] == $item['author-id'] && $item['wall']) {
                        $dest_str = L10n::t('%1$s commented on [url=%2$s]your %3$s[/url]',
                                '[url='.$params['source_link'].']'.$params['source_name'].'[/url]',
                                $itemlink,
@@ -739,7 +740,7 @@ function check_item_notification($itemid, $uid, $defaulttype = "") {
 
        // Only act if it is a "real" post
        // We need the additional check for the "local_profile" because of mixed situations on connector networks
-       $item = q("SELECT `id`, `mention`, `tag`,`parent`, `title`, `body`, `author-name`, `author-link`, `author-avatar`, `guid`,
+       $item = q("SELECT `id`, `mention`, `tag`,`parent`, `title`, `body`, `author-id`, `guid`,
                        `parent-uri`, `uri`, `contact-id`
                        FROM `item` WHERE `id` = %d AND `verb` IN ('%s', '') AND `type` != 'activity' AND
                                NOT (`author-link` IN ($profile_list))  LIMIT 1",
@@ -747,6 +748,8 @@ function check_item_notification($itemid, $uid, $defaulttype = "") {
        if (!$item)
                return false;
 
+       $author = dba::selectFirst('contact', ['name', 'thumb', 'url'], ['id' => $item[0]['author-id']]);
+
        // Generate the notification array
        $params = [];
        $params["uid"] = $uid;
@@ -758,9 +761,9 @@ function check_item_notification($itemid, $uid, $defaulttype = "") {
        $params["parent"] = $item[0]["parent"];
        $params["link"] = System::baseUrl().'/display/'.urlencode($item[0]["guid"]);
        $params["otype"] = 'item';
-       $params["source_name"] = $item[0]["author-name"];
-       $params["source_link"] = $item[0]["author-link"];
-       $params["source_photo"] = $item[0]["author-avatar"];
+       $params["source_name"] = $author["name"];
+       $params["source_link"] = $author["url"];
+       $params["source_photo"] = $author["thumb"];
 
        if ($item[0]["parent-uri"] === $item[0]["uri"]) {
                // Send a notification for every new post?