public function initializePost(array $post): array
{
- $post['network'] = Protocol::DFRN;
- $post['protocol'] = Conversation::PARCEL_DIRECT;
- $post['direction'] = Conversation::PUSH;
- $post['received'] = DateTimeFormat::utcNow();
- $post['origin'] = true;
- $post['wall'] = $post['wall'] ?? true;
- $post['guid'] = $post['guid'] ?? System::createUUID();
- $post['verb'] = $post['verb'] ?? Activity::POST;
-
- if (empty($post['uri'])) {
- $post['thr-parent'] = $post['uri'] = ItemModel::newURI($post['guid']);
- $post['gravity'] = ItemModel::GRAVITY_PARENT;
+ $post['network'] = Protocol::DFRN;
+ $post['protocol'] = Conversation::PARCEL_DIRECT;
+ $post['direction'] = Conversation::PUSH;
+ $post['received'] = DateTimeFormat::utcNow();
+ $post['origin'] = true;
+ $post['wall'] = $post['wall'] ?? true;
+ $post['guid'] = $post['guid'] ?? System::createUUID();
+ $post['verb'] = $post['verb'] ?? Activity::POST;
+ $post['uri'] = $post['uri'] ?? ItemModel::newURI($post['guid']);
+ $post['thr-parent'] = $post['thr-parent'] ?? $post['uri'];
+
+ if (empty($post['gravity'])) {
+ $post['gravity'] = ($post['uri'] == $post['thr-parent']) ? ItemModel::GRAVITY_PARENT : ItemModel::GRAVITY_COMMENT;
}
$owner = User::getOwnerDataById($post['uid']);
// We can always safely add attached activities. Real quotes are added to the body via "addSharedPost".
if (empty($item['quote-uri-id'])) {
$quote = self::createQuote($item, $uid);
+ } else {
+ $quote = [];
}
$shared = $this->contentItem->getSharedPost($item, ['uri-id']);