]> git.mxchange.org Git - friendica.git/commitdiff
Fix Mastodon API fav/unfav temporarily by checking if blog in post func
authorHank Grabowski <hankgrabowski@gmail.com>
Fri, 16 Jun 2023 18:48:12 +0000 (14:48 -0400)
committerHypolite Petovan <hypolite@mrpetovan.com>
Wed, 26 Jul 2023 17:12:24 +0000 (19:12 +0200)
src/Module/Api/Mastodon/Statuses/Favourite.php
src/Module/Api/Mastodon/Statuses/Unfavourite.php

index d1a68862ca3dc61ed6907ad59ee3aa2d25c86788..2e5159175638c0219488f10edbb14286296a936a 100644 (file)
@@ -42,13 +42,16 @@ class Favourite extends BaseApi
                        DI::mstdnError()->UnprocessableEntity();
                }
 
-               $item = Post::selectOriginalForUser($uid, ['id'], ['uri-id' => $this->parameters['id'], 'uid' => [$uid, 0]]);
+               $item = Post::selectOriginalForUser($uid, ['id', 'uri-id'], ['uri-id' => $this->parameters['id'], 'uid' => [$uid, 0]]);
                if (!DBA::isResult($item)) {
                        DI::mstdnError()->RecordNotFound();
                }
 
                Item::performActivity($item['id'], 'like', $uid);
 
-               System::jsonExit(DI::mstdnStatus()->createFromUriId($this->parameters['id'], $uid, self::appSupportsQuotes())->toArray());
+               // @TODO Remove once mstdnStatus()->createFromUriId is fixed
+               $isReblog = $item['uri-id'] != $this->parameters['id'];
+
+               System::jsonExit(DI::mstdnStatus()->createFromUriId($this->parameters['id'], $uid, self::appSupportsQuotes(), $isReblog)->toArray());
        }
 }
index a3760b45442568da5fcadeda1d3aa0f1d08e1e26..d95d9e09c0e4a7fef9aba6fe7bcd43d407a59cef 100644 (file)
@@ -42,13 +42,16 @@ class Unfavourite extends BaseApi
                        DI::mstdnError()->UnprocessableEntity();
                }
 
-               $item = Post::selectOriginalForUser($uid, ['id'], ['uri-id' => $this->parameters['id'], 'uid' => [$uid, 0]]);
+               $item = Post::selectOriginalForUser($uid, ['id', 'uri-id'], ['uri-id' => $this->parameters['id'], 'uid' => [$uid, 0]]);
                if (!DBA::isResult($item)) {
                        DI::mstdnError()->RecordNotFound();
                }
 
                Item::performActivity($item['id'], 'unlike', $uid);
 
-               System::jsonExit(DI::mstdnStatus()->createFromUriId($this->parameters['id'], $uid, self::appSupportsQuotes())->toArray());
+               // @TODO Remove once mstdnStatus()->createFromUriId is fixed
+               $isReblog = $item['uri-id'] != $this->parameters['id'];
+
+               System::jsonExit(DI::mstdnStatus()->createFromUriId($this->parameters['id'], $uid, self::appSupportsQuotes(), $isReblog)->toArray());
        }
 }