DBA::delete('item-delivery-data', ['iid' => $item['id']]);
- //if (!empty($item['iaid']) && !self::exists(['iaid' => $item['iaid'], 'deleted' => false])) {
- // DBA::delete('item-activity', ['id' => $item['iaid']], ['cascade' => false]);
- //}
+ // We don't delete the item-activity here, since we need some of the data for ActivityPub
+
if (!empty($item['icid']) && !self::exists(['icid' => $item['icid'], 'deleted' => false])) {
DBA::delete('item-content', ['id' => $item['icid']], ['cascade' => false]);
}
if ($notify) {
// We have to avoid duplicates. So we create the GUID in form of a hash of the plink or uri.
// We add the hash of our own host because our host is the original creator of the post.
- $prefix_host = get_app()->get_hostname();
+ $prefix_host = get_app()->getHostName();
} else {
$prefix_host = '';
} elseif (!empty($item['uri'])) {
$guid = self::guidFromUri($item['uri'], $prefix_host);
} else {
- $guid = System::createGUID(32, hash('crc32', $prefix_host));
+ $guid = System::createUUID(hash('crc32', $prefix_host));
}
return $guid;
*/
$dsprsig = null;
- if (x($item, 'dsprsig')) {
+ if (isset($item['dsprsig'])) {
$encoded_signature = $item['dsprsig'];
$dsprsig = json_decode(base64_decode($item['dsprsig']));
unset($item['dsprsig']);
}
- if (!empty($item['diaspora_signed_text'])) {
+ $diaspora_signed_text = '';
+ if (isset($item['diaspora_signed_text'])) {
$diaspora_signed_text = $item['diaspora_signed_text'];
unset($item['diaspora_signed_text']);
- } else {
- $diaspora_signed_text = '';
}
// Converting the plink
$deny_gid = '';
if ($item['parent-uri'] === $item['uri']) {
+ $diaspora_signed_text = '';
$parent_id = 0;
$parent_deleted = 0;
$allow_cid = $item['allow_cid'];
$item['wall'] = $parent['wall'];
$notify_type = 'comment-new';
+ if (!$parent['origin']) {
+ $diaspora_signed_text = '';
+ }
+
/*
* If the parent is private, force privacy for the entire conversation
* This differs from the above settings as it subtly allows comments from
$parent_id = 0;
$item['parent-uri'] = $item['uri'];
$item['gravity'] = GRAVITY_PARENT;
+ $diaspora_signed_text = '';
} else {
logger('item parent '.$item['parent-uri'].' for '.$item['uid'].' was not found - ignoring item');
return 0;
public static function newURI($uid, $guid = "")
{
if ($guid == "") {
- $guid = System::createGUID(32);
+ $guid = System::createUUID();
}
- return self::getApp()->get_baseurl() . '/object/' . $guid;
+ return self::getApp()->getBaseURL() . '/objects/' . $guid;
}
/**
}
// Prevent to forward already forwarded posts
- if ($datarray["app"] == $a->get_hostname()) {
+ if ($datarray["app"] == $a->getHostName()) {
logger('Already forwarded (second test)', LOGGER_DEBUG);
return false;
}
}
if ($contact['network'] != Protocol::FEED) {
- $datarray["guid"] = System::createGUID(32);
+ $datarray["guid"] = System::createUUID();
unset($datarray["plink"]);
$datarray["uri"] = self::newURI($contact['uid'], $datarray["guid"]);
$datarray["parent-uri"] = $datarray["uri"];
return true;
}
- $objtype = $item['resource-id'] ? ACTIVITY_OBJ_IMAGE : ACTIVITY_OBJ_NOTE ;
+ $objtype = $item['resource-id'] ? ACTIVITY_OBJ_IMAGE : ACTIVITY_OBJ_NOTE;
$new_item = [
- 'guid' => System::createGUID(32),
+ 'guid' => System::createUUID(),
'uri' => self::newURI($item['uid']),
'uid' => $item['uid'],
'contact-id' => $item_contact_id,
'parent' => $item['id'],
'parent-uri' => $item['uri'],
'thr-parent' => $item['uri'],
- 'owner-id' => $item['owner-id'],
+ 'owner-id' => $author_id,
'author-id' => $author_id,
'body' => $activity,
'verb' => $activity,