]> git.mxchange.org Git - friendica.git/blobdiff - src/Model/Item.php
First batch of notes for the 2020.03 CHANGELOG
[friendica.git] / src / Model / Item.php
index d47d19cb7db67f2d762d226083c1e4df91508287..1205516fa04dd068943c48794c3c903923cf0e91 100644 (file)
@@ -1695,7 +1695,7 @@ class Item
 
                        $fields = ['uri', 'parent-uri', 'id', 'deleted',
                                'allow_cid', 'allow_gid', 'deny_cid', 'deny_gid',
-                               'wall', 'private', 'forum_mode', 'origin'];
+                               'wall', 'private', 'forum_mode', 'origin', 'author-id'];
                        $condition = ['uri' => $item['parent-uri'], 'uid' => $item['uid']];
                        $params = ['order' => ['id' => false]];
                        $parent = self::selectFirst($fields, $condition, $params);
@@ -1750,6 +1750,11 @@ class Item
                                        DBA::update('thread', ['mention' => true], ['iid' => $parent_id]);
                                        Logger::log('tagged thread ' . $parent_id . ' as mention for user ' . $item['uid'], Logger::DEBUG);
                                }
+
+                               // Update the contact relations
+                               if ($item['author-id'] != $parent['author-id']) {
+                                       DBA::update('contact-relation', ['last-interaction' => $item['created']], ['cid' => $parent['author-id'], 'relation-cid' => $item['author-id']], true);
+                               }
                        } else {
                                /*
                                 * Allow one to see reply tweets from status.net even when
@@ -3873,6 +3878,10 @@ class Item
                // first try to fetch the item via the GUID. This will work for all reshares that had been created on this system
                $shared_item = self::selectFirst(['title', 'body', 'attach'], ['guid' => $shared['guid'], 'uid' => [0, $uid]]);
                if (!DBA::isResult($shared_item)) {
+                       if (empty($shared['link'])) {
+                               return $item;
+                       }
+
                        // Otherwhise try to find (and possibly fetch) the item via the link. This should work for Diaspora and ActivityPub posts
                        $id = self::fetchByLink($shared['link'], $uid);
                        if (empty($id)) {