]> git.mxchange.org Git - friendica.git/commitdiff
Merge remote-tracking branch 'upstream/2021.06-rc' into forum-handling
authorMichael <heluecht@pirati.ca>
Sat, 5 Jun 2021 06:14:06 +0000 (06:14 +0000)
committerMichael <heluecht@pirati.ca>
Sat, 5 Jun 2021 06:14:06 +0000 (06:14 +0000)
mod/item.php
src/Model/Item.php

index 56f27a9543ab8d1aa0106a77330910b5a5e50de4..a8870d6865ed54cfacc7b33fc2a8a5d3eaf3495c 100644 (file)
@@ -40,6 +40,7 @@ use Friendica\Core\System;
 use Friendica\Core\Worker;
 use Friendica\Database\DBA;
 use Friendica\DI;
+use Friendica\Model\APContact;
 use Friendica\Model\Attach;
 use Friendica\Model\Contact;
 use Friendica\Model\Conversation;
@@ -438,18 +439,24 @@ function item_post(App $a) {
                // we tagged a forum in a top level post. Now we change the post
                $private = $private_forum;
 
-               $str_group_allow = '';
-               $str_contact_deny = '';
-               $str_group_deny = '';
-               if ($private_forum) {
-                       $str_contact_allow = '<' . $private_id . '>';
-               } else {
-                       $str_contact_allow = '';
+               if ($only_to_forum) {
+                       $postopts = '';
+               }
+
+               if ($private_forum || !APContact::getByURL($forum_contact['url'])) {
+                       $str_group_allow = '';
+                       $str_contact_deny = '';
+                       $str_group_deny = '';
+                       if ($private_forum) {
+                               $str_contact_allow = '<' . $private_id . '>';
+                       } else {
+                               $str_contact_allow = '';
+                       }
+                       $contact_id = $private_id;
+                       $contact_record = $forum_contact;
+                       $_REQUEST['origin'] = false;
+                       $wall = 0;
                }
-               $contact_id = $private_id;
-               $contact_record = $forum_contact;
-               $_REQUEST['origin'] = false;
-               $wall = 0;
        }
 
        /*
index 2b57557ca855bd9c92a96a9dc6339cf11afa1fc4..f6bec1561cb0f0ed0e6e010a74bb1e75f133d73c 100644 (file)
@@ -1061,7 +1061,7 @@ class Item
                }
 
                // Create Diaspora signature
-               if ($item['origin'] && empty($item['diaspora_signed_text'])) {
+               if ($item['origin'] && empty($item['diaspora_signed_text']) && ($item['gravity'] != GRAVITY_PARENT)) {
                        $signed = Diaspora::createCommentSignature($uid, $item);
                        if (!empty($signed)) {
                                $item['diaspora_signed_text'] = json_encode($signed);
@@ -1227,13 +1227,10 @@ class Item
                                Logger::info('The resharer is no forum: quit', ['resharer' => $item['author-id'], 'owner' => $parent['owner-id'], 'author' => $parent['author-id'], 'uid' => $item['uid']]);
                                return;
                        }
-                       self::update(['post-reason' => self::PR_ANNOUNCEMENT, 'causer-id' => $item['author-id']], ['id' => $parent['id']]);
-                       Logger::info('Set announcement post-reason', ['uri-id' => $item['uri-id'], 'thr-parent-id' => $item['thr-parent-id'], 'uid' => $item['uid']]);
-                       return;
                }
 
-               self::update(['owner-id' => $item['author-id'], 'contact-id' => $cid], ['id' => $parent['id']]);
-               Logger::info('Change owner of the parent', ['uri-id' => $item['uri-id'], 'thr-parent-id' => $item['thr-parent-id'], 'uid' => $item['uid'], 'owner-id' => $item['author-id'], 'contact-id' => $cid]);
+               self::update(['post-reason' => self::PR_ANNOUNCEMENT, 'causer-id' => $item['author-id']], ['id' => $parent['id']]);
+               Logger::info('Set announcement post-reason', ['uri-id' => $item['uri-id'], 'thr-parent-id' => $item['thr-parent-id'], 'uid' => $item['uid']]);
        }
 
        /**