Merge pull request #986 from MrPetovan/task/twitter-ass-probe-detect-hook
authorMichael Vogel <icarus@dabo.de>
Mon, 8 Jun 2020 06:37:26 +0000 (08:37 +0200)
committerGitHub <noreply@github.com>
Mon, 8 Jun 2020 06:37:26 +0000 (08:37 +0200)
[twitter] Add probe_detect hook function

twitter/twitter.php

index fc49ce5..6e44759 100644 (file)
@@ -83,7 +83,6 @@ use Friendica\Model\Item;
 use Friendica\Model\ItemContent;
 use Friendica\Model\ItemURI;
 use Friendica\Model\Tag;
-use Friendica\Model\Term;
 use Friendica\Model\User;
 use Friendica\Protocol\Activity;
 use Friendica\Util\ConfigFileLoader;
@@ -1621,23 +1620,27 @@ function twitter_createpost(App $a, $uid, $post, array $self, $create_user, $onl
                }
        }
 
-       if (!empty($post->quoted_status) && !$noquote) {
-               $quoted = twitter_createpost($a, $uid, $post->quoted_status, $self, false, false, true, $uriid);
-
-               if (!empty($quoted['body'])) {
-                       $postarray['body'] .= "\n" . share_header(
-                               $quoted['author-name'],
-                               $quoted['author-link'],
-                               $quoted['author-avatar'],
-                               "",
-                               $quoted['created'],
-                               $quoted['plink']
-                       );
-
-                       $postarray['body'] .= $quoted['body'] . '[/share]';
-               } else {
-                       // Quoted post author is blocked/ignored, so we just provide the link to avoid removing quote context.
+       if (!empty($post->quoted_status)) {
+               if ($noquote) {
+                       // To avoid recursive share blocks we just provide the link to avoid removing quote context.
                        $postarray['body'] .= "\n\nhttps://twitter.com/" . $post->quoted_status->user->screen_name . "/status/" . $post->quoted_status->id_str;
+               } else {
+                       $quoted = twitter_createpost($a, $uid, $post->quoted_status, $self, false, false, true, $uriid);
+                       if (!empty($quoted['body'])) {
+                               $postarray['body'] .= "\n" . share_header(
+                                               $quoted['author-name'],
+                                               $quoted['author-link'],
+                                               $quoted['author-avatar'],
+                                               "",
+                                               $quoted['created'],
+                                               $quoted['plink']
+                                       );
+
+                               $postarray['body'] .= $quoted['body'] . '[/share]';
+                       } else {
+                               // Quoted post author is blocked/ignored, so we just provide the link to avoid removing quote context.
+                               $postarray['body'] .= "\n\nhttps://twitter.com/" . $post->quoted_status->user->screen_name . "/status/" . $post->quoted_status->id_str;
+                       }
                }
        }