]> git.mxchange.org Git - friendica.git/commitdiff
Support the "media_attachments" field
authorMichael <heluecht@pirati.ca>
Fri, 30 Jul 2021 22:39:13 +0000 (22:39 +0000)
committerMichael <heluecht@pirati.ca>
Fri, 30 Jul 2021 22:39:13 +0000 (22:39 +0000)
src/Factory/Api/Mastodon/ScheduledStatus.php
src/Object/Api/Mastodon/ScheduledStatus.php

index 14ff479b92fd05fd660c0c47edea8da82dbde8e9..608d615ca10e505b7685b9dc40022ef9d3c52234 100644 (file)
@@ -23,6 +23,7 @@ namespace Friendica\Factory\Api\Mastodon;
 
 use Friendica\BaseFactory;
 use Friendica\Database\Database;
+use Friendica\DI;
 use Friendica\Model\ItemURI;
 use Friendica\Model\Photo;
 use Friendica\Model\Post;
@@ -60,8 +61,11 @@ class ScheduledStatus extends BaseFactory
                }
 
                $media_ids = [];
+               $media_attachments = [];
                foreach ($parameters['attachments'] as $attachment) {
-                       $media_ids[] = Photo::getIdForName($attachment['url']);
+                       $id = Photo::getIdForName($attachment['url']);
+                       $media_ids[] = (string)$id;
+                       $media_attachments[] = DI::mstdnAttachment()->createFromPhoto($id);
                }
 
                if (isset($parameters['item']['thr-parent']) && ($parameters['item']['gravity'] ?? GRAVITY_PARENT != GRAVITY_PARENT)) {
@@ -70,6 +74,6 @@ class ScheduledStatus extends BaseFactory
                        $in_reply_to_id = null;
                }
 
-               return new \Friendica\Object\Api\Mastodon\ScheduledStatus($delayed_post, $parameters, $media_ids, $in_reply_to_id);
+               return new \Friendica\Object\Api\Mastodon\ScheduledStatus($delayed_post, $parameters, $media_ids, $media_attachments, $in_reply_to_id);
        }
 }
index e4f702a23414b6e9c3b3016178dbf8ab4fd7cf66..4df92cc367426a4006e75d600cb29789b8429a94 100644 (file)
@@ -59,7 +59,7 @@ class ScheduledStatus extends BaseDataTransferObject
         * @param array $parameters   Parameters for the workerqueue entry for the delayed post
         * @throws \Friendica\Network\HTTPException\InternalServerErrorException
         */
-       public function __construct(array $delayed_post, array $parameters, array $media_ids = null, int $in_reply_to_id = null)
+       public function __construct(array $delayed_post, array $parameters, array $media_ids = null, array $media_attachments = [], int $in_reply_to_id = null)
        {
                $visibility = ['public', 'private', 'unlisted'];
 
@@ -79,6 +79,6 @@ class ScheduledStatus extends BaseDataTransferObject
                        'application_id' => ''
                ];
 
-               $this->media_attachments = [];
+               $this->media_attachments = $media_attachments;
        }
 }