Issue 12603: Support quotes in the API
This commit is contained in:
parent
5a01fb0521
commit
ff28044cf6
2 changed files with 15 additions and 2 deletions
|
@ -234,7 +234,13 @@ class Status extends BaseFactory
|
||||||
$reshare = [];
|
$reshare = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
return new \Friendica\Object\Api\Mastodon\Status($item, $account, $counts, $userAttributes, $sensitive, $application, $mentions, $tags, $card, $attachments, $reshare, $poll);
|
if (!empty($item['quote-uri-id'])) {
|
||||||
|
$quote = $this->createFromUriId($item['quote-uri-id'], $uid, false)->toArray();
|
||||||
|
} else {
|
||||||
|
$quote = [];
|
||||||
|
}
|
||||||
|
|
||||||
|
return new \Friendica\Object\Api\Mastodon\Status($item, $account, $counts, $userAttributes, $sensitive, $application, $mentions, $tags, $card, $attachments, $reshare, $quote, $poll);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -75,6 +75,8 @@ class Status extends BaseDataTransferObject
|
||||||
protected $content;
|
protected $content;
|
||||||
/** @var Status|null */
|
/** @var Status|null */
|
||||||
protected $reblog = null;
|
protected $reblog = null;
|
||||||
|
/** @var Status|null */
|
||||||
|
protected $quote = null;
|
||||||
/** @var Application */
|
/** @var Application */
|
||||||
protected $application = null;
|
protected $application = null;
|
||||||
/** @var Account */
|
/** @var Account */
|
||||||
|
@ -98,7 +100,7 @@ class Status extends BaseDataTransferObject
|
||||||
* @param array $item
|
* @param array $item
|
||||||
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
|
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
|
||||||
*/
|
*/
|
||||||
public function __construct(array $item, Account $account, Counts $counts, UserAttributes $userAttributes, bool $sensitive, Application $application, array $mentions, array $tags, Card $card, array $attachments, array $reblog, array $poll = null)
|
public function __construct(array $item, Account $account, Counts $counts, UserAttributes $userAttributes, bool $sensitive, Application $application, array $mentions, array $tags, Card $card, array $attachments, array $reblog, array $quote = null, array $poll = null)
|
||||||
{
|
{
|
||||||
$this->id = (string)$item['uri-id'];
|
$this->id = (string)$item['uri-id'];
|
||||||
$this->created_at = DateTimeFormat::utc($item['created'], DateTimeFormat::JSON);
|
$this->created_at = DateTimeFormat::utc($item['created'], DateTimeFormat::JSON);
|
||||||
|
@ -134,6 +136,7 @@ class Status extends BaseDataTransferObject
|
||||||
$this->pinned = $userAttributes->pinned;
|
$this->pinned = $userAttributes->pinned;
|
||||||
$this->content = BBCode::convertForUriId($item['uri-id'], BBCode::setMentionsToNicknames($item['raw-body'] ?? $item['body']), BBCode::MASTODON_API);
|
$this->content = BBCode::convertForUriId($item['uri-id'], BBCode::setMentionsToNicknames($item['raw-body'] ?? $item['body']), BBCode::MASTODON_API);
|
||||||
$this->reblog = $reblog;
|
$this->reblog = $reblog;
|
||||||
|
$this->quote = $quote;
|
||||||
$this->application = $application->toArray();
|
$this->application = $application->toArray();
|
||||||
$this->account = $account->toArray();
|
$this->account = $account->toArray();
|
||||||
$this->media_attachments = $attachments;
|
$this->media_attachments = $attachments;
|
||||||
|
@ -165,6 +168,10 @@ class Status extends BaseDataTransferObject
|
||||||
$status['reblog'] = null;
|
$status['reblog'] = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (empty($status['quote'])) {
|
||||||
|
$status['quote'] = null;
|
||||||
|
}
|
||||||
|
|
||||||
return $status;
|
return $status;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue