Bugfixing Home
[friendica.git/.git] / include / conversation.php
index 97784c6..85938ca 100644 (file)
@@ -802,11 +802,13 @@ function conversation_fetch_comments($thread_items) {
        $created = '';
 
        while ($row = Item::fetch($thread_items)) {
-               if (($row['verb'] == ACTIVITY2_ANNOUNCE) && !empty($row['contact-uid']) && ($row['created'] > $created)) {
+               if (($row['verb'] == ACTIVITY2_ANNOUNCE) && !empty($row['contact-uid']) && ($row['created'] > $created) && ($row['thr-parent'] == $row['parent-uri'])) {
                        $actor = ['link' => $row['author-link'], 'avatar' => $row['author-avatar'], 'name' => $row['author-name']];
                        $created = $row['created'];
                }
-               if ($row['gravity'] == GRAVITY_PARENT) {
+
+               if ((($row['gravity'] == GRAVITY_PARENT) && !$row['origin'] && !in_array($row['network'], [Protocol::DIASPORA])) &&
+                       (empty($row['contact-uid']) || !in_array($row['network'], Protocol::NATIVE_SUPPORT))) {
                        $parentlines[] = $lineno;
                }
 
@@ -818,11 +820,9 @@ function conversation_fetch_comments($thread_items) {
 
        if (!empty($actor)) {
                foreach ($parentlines as $line) {
-                       if (!in_array($comments[$line]['network'], [Protocol::DIASPORA]) && !$comments[$line]['origin']) {
-                               $comments[$line]['owner-link'] = $actor['link'];
-                               $comments[$line]['owner-avatar'] = $actor['avatar'];
-                               $comments[$line]['owner-name'] = $actor['name'];
-                       }
+                       $comments[$line]['owner-link'] = $actor['link'];
+                       $comments[$line]['owner-avatar'] = $actor['avatar'];
+                       $comments[$line]['owner-name'] = $actor['name'];
                }
        }
        return $comments;