Twitter: Fix display of reshared posts

This commit is contained in:
Michael 2020-11-21 18:55:32 +00:00
parent 019bcb4be4
commit bc2058e21a
2 changed files with 17 additions and 11 deletions

View File

@ -1106,11 +1106,13 @@ function statusnet_createpost(App $a, $uid, $post, $self, $create_user, $only_ex
if (!empty($content->in_reply_to_status_id)) { if (!empty($content->in_reply_to_status_id)) {
$thr_parent = $hostname . "::" . $content->in_reply_to_status_id; $thr_parent = $hostname . "::" . $content->in_reply_to_status_id;
if ( $item = Item::selectFirst(['uri'], ['uri' => $thr_parent, 'uid' => $uid]);
Item::exists(['uri' => $thr_parent, 'uid' => $uid]) if (!DBA::isResult($item)) {
|| Item::exists(['extid' => $thr_parent, 'uid' => $uid]) $item = Item::selectFirst(['uri'], ['extid' => $thr_parent, 'uid' => $uid]);
) { }
$postarray['thr-parent'] = $thr_parent;
if (DBA::isResult($item)) {
$postarray['thr-parent'] = $item['uri'];
$postarray['object-type'] = Activity\ObjectType::COMMENT; $postarray['object-type'] = Activity\ObjectType::COMMENT;
} else { } else {
$postarray['object-type'] = Activity\ObjectType::NOTE; $postarray['object-type'] = Activity\ObjectType::NOTE;

View File

@ -1584,11 +1584,13 @@ function twitter_createpost(App $a, $uid, $post, array $self, $create_user, $onl
if ($post->in_reply_to_status_id_str != "") { if ($post->in_reply_to_status_id_str != "") {
$thr_parent = "twitter::" . $post->in_reply_to_status_id_str; $thr_parent = "twitter::" . $post->in_reply_to_status_id_str;
if ( $item = Item::selectFirst(['uri'], ['uri' => $thr_parent, 'uid' => $uid]);
Item::exists(['uri' => $thr_parent, 'uid' => $uid]) if (!DBA::isResult($item)) {
|| Item::exists(['extid' => $thr_parent, 'uid' => $uid]) $item = Item::selectFirst(['uri'], ['extid' => $thr_parent, 'uid' => $uid]);
) { }
$postarray['thr-parent'] = $thr_parent;
if (DBA::isResult($item)) {
$postarray['thr-parent'] = $item['uri'];
$postarray['object-type'] = Activity\ObjectType::COMMENT; $postarray['object-type'] = Activity\ObjectType::COMMENT;
} else { } else {
$postarray['object-type'] = Activity\ObjectType::NOTE; $postarray['object-type'] = Activity\ObjectType::NOTE;
@ -1702,6 +1704,8 @@ function twitter_createpost(App $a, $uid, $post, array $self, $create_user, $onl
$postarray['verb'] = Activity::ANNOUNCE; $postarray['verb'] = Activity::ANNOUNCE;
$postarray['gravity'] = GRAVITY_ACTIVITY; $postarray['gravity'] = GRAVITY_ACTIVITY;
$postarray['object-type'] = Activity\ObjectType::NOTE; $postarray['object-type'] = Activity\ObjectType::NOTE;
$postarray['thr-parent'] = $retweet['uri'];
} else { } else {
$retweet['source'] = $postarray['source']; $retweet['source'] = $postarray['source'];
$retweet['private'] = $postarray['private']; $retweet['private'] = $postarray['private'];
@ -1919,7 +1923,7 @@ function twitter_fetchhometimeline(App $a, $uid)
$notify = false; $notify = false;
if (($postarray['uri'] == $postarray['thr-parent']) && ($postarray['author-link'] == $postarray['owner-link'])) { if (empty($postarray['thr-parent'])) {
$contact = DBA::selectFirst('contact', [], ['id' => $postarray['contact-id'], 'self' => false]); $contact = DBA::selectFirst('contact', [], ['id' => $postarray['contact-id'], 'self' => false]);
if (DBA::isResult($contact)) { if (DBA::isResult($contact)) {
$notify = Item::isRemoteSelf($contact, $postarray); $notify = Item::isRemoteSelf($contact, $postarray);