Replace "id = parent" checks with "gravity" checks
This commit is contained in:
parent
133de9b524
commit
973abb6196
13 changed files with 56 additions and 56 deletions
|
@ -1059,7 +1059,7 @@ class DFRN
|
|||
|
||||
if ($item['object-type'] != "") {
|
||||
XML::addElement($doc, $entry, "activity:object-type", $item['object-type']);
|
||||
} elseif ($item['id'] == $item['parent']) {
|
||||
} elseif ($item['gravity'] == GRAVITY_PARENT) {
|
||||
XML::addElement($doc, $entry, "activity:object-type", Activity\ObjectType::NOTE);
|
||||
} else {
|
||||
XML::addElement($doc, $entry, "activity:object-type", Activity\ObjectType::COMMENT);
|
||||
|
@ -2110,7 +2110,7 @@ class DFRN
|
|||
$author = DBA::selectFirst('contact', ['name', 'thumb', 'url'], ['id' => $item['author-id']]);
|
||||
|
||||
$parent = Item::selectFirst(['id'], ['uri' => $item['parent-uri'], 'uid' => $importer["importer_uid"]]);
|
||||
$item["parent"] = $parent['id'];
|
||||
$item['parent'] = $parent['id'];
|
||||
|
||||
// send a notification
|
||||
notification(
|
||||
|
@ -2129,7 +2129,7 @@ class DFRN
|
|||
"verb" => $item["verb"],
|
||||
"otype" => "person",
|
||||
"activity" => $verb,
|
||||
"parent" => $item["parent"]]
|
||||
"parent" => $item['parent']]
|
||||
);
|
||||
}
|
||||
}
|
||||
|
@ -2634,7 +2634,7 @@ class DFRN
|
|||
}
|
||||
|
||||
$condition = ['uri' => $uri, 'uid' => $importer["importer_uid"]];
|
||||
$item = Item::selectFirst(['id', 'parent', 'contact-id', 'file', 'deleted'], $condition);
|
||||
$item = Item::selectFirst(['id', 'parent', 'contact-id', 'file', 'deleted', 'gravity'], $condition);
|
||||
if (!DBA::isResult($item)) {
|
||||
Logger::log("Item with uri " . $uri . " for user " . $importer["importer_uid"] . " wasn't found.", Logger::DEBUG);
|
||||
return;
|
||||
|
@ -2646,13 +2646,13 @@ class DFRN
|
|||
}
|
||||
|
||||
// When it is a starting post it has to belong to the person that wants to delete it
|
||||
if (($item['id'] == $item['parent']) && ($item['contact-id'] != $importer["id"])) {
|
||||
if (($item['gravity'] == GRAVITY_PARENT) && ($item['contact-id'] != $importer["id"])) {
|
||||
Logger::log("Item with uri " . $uri . " don't belong to contact " . $importer["id"] . " - ignoring deletion.", Logger::DEBUG);
|
||||
return;
|
||||
}
|
||||
|
||||
// Comments can be deleted by the thread owner or comment owner
|
||||
if (($item['id'] != $item['parent']) && ($item['contact-id'] != $importer["id"])) {
|
||||
if (($item['gravity'] != GRAVITY_PARENT) && ($item['contact-id'] != $importer["id"])) {
|
||||
$condition = ['id' => $item['parent'], 'contact-id' => $importer["id"]];
|
||||
if (!Item::exists($condition)) {
|
||||
Logger::log("Item with uri " . $uri . " wasn't found or mustn't be deleted by contact " . $importer["id"] . " - ignoring deletion.", Logger::DEBUG);
|
||||
|
|
|
@ -1517,7 +1517,7 @@ class Diaspora
|
|||
private static function parentItem($uid, $guid, $author, array $contact)
|
||||
{
|
||||
$fields = ['id', 'parent', 'body', 'wall', 'uri', 'guid', 'private', 'origin',
|
||||
'author-name', 'author-link', 'author-avatar',
|
||||
'author-name', 'author-link', 'author-avatar', 'gravity',
|
||||
'owner-name', 'owner-link', 'owner-avatar'];
|
||||
$condition = ['uid' => $uid, 'guid' => $guid];
|
||||
$item = Item::selectFirst($fields, $condition);
|
||||
|
@ -2164,8 +2164,8 @@ class Diaspora
|
|||
$datarray["changed"] = $datarray["created"] = $datarray["edited"] = DateTimeFormat::utcNow();
|
||||
|
||||
// like on comments have the comment as parent. So we need to fetch the toplevel parent
|
||||
if ($parent_item["id"] != $parent_item["parent"]) {
|
||||
$toplevel = Item::selectFirst(['origin'], ['id' => $parent_item["parent"]]);
|
||||
if ($parent_item['gravity'] != GRAVITY_PARENT) {
|
||||
$toplevel = Item::selectFirst(['origin'], ['id' => $parent_item['parent']]);
|
||||
$origin = $toplevel["origin"];
|
||||
} else {
|
||||
$origin = $parent_item["origin"];
|
||||
|
@ -2891,7 +2891,7 @@ class Diaspora
|
|||
}
|
||||
|
||||
// Fetch the parent item
|
||||
$parent = Item::selectFirst(['author-link'], ['id' => $item["parent"]]);
|
||||
$parent = Item::selectFirst(['author-link'], ['id' => $item['parent']]);
|
||||
|
||||
// Only delete it if the parent author really fits
|
||||
if (!Strings::compareLink($parent["author-link"], $contact["url"]) && !Strings::compareLink($item["author-link"], $contact["url"])) {
|
||||
|
@ -2901,7 +2901,7 @@ class Diaspora
|
|||
|
||||
Item::markForDeletion(['id' => $item['id']]);
|
||||
|
||||
Logger::log("Deleted target ".$target_guid." (".$item["id"].") from user ".$item["uid"]." parent: ".$item["parent"], Logger::DEBUG);
|
||||
Logger::log("Deleted target ".$target_guid." (".$item["id"].") from user ".$item["uid"]." parent: ".$item['parent'], Logger::DEBUG);
|
||||
}
|
||||
|
||||
return true;
|
||||
|
@ -3870,9 +3870,9 @@ class Diaspora
|
|||
return $result;
|
||||
}
|
||||
|
||||
$toplevel_item = Item::selectFirst(['guid', 'author-id', 'author-link'], ['id' => $item["parent"], 'parent' => $item["parent"]]);
|
||||
$toplevel_item = Item::selectFirst(['guid', 'author-id', 'author-link'], ['id' => $item['parent'], 'parent' => $item['parent']]);
|
||||
if (!DBA::isResult($toplevel_item)) {
|
||||
Logger::error('Missing parent conversation item', ['parent' => $item["parent"]]);
|
||||
Logger::error('Missing parent conversation item', ['parent' => $item['parent']]);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -4066,7 +4066,7 @@ class Diaspora
|
|||
|
||||
$msg_type = "retraction";
|
||||
|
||||
if ($item['id'] == $item['parent']) {
|
||||
if ($item['gravity'] == GRAVITY_PARENT) {
|
||||
$target_type = "Post";
|
||||
} elseif (in_array($item["verb"], [Activity::LIKE, Activity::DISLIKE])) {
|
||||
$target_type = "Like";
|
||||
|
|
|
@ -1675,7 +1675,7 @@ class OStatus
|
|||
*/
|
||||
private static function reshareEntry(DOMDocument $doc, array $item, array $owner, $repeated_guid, $toplevel)
|
||||
{
|
||||
if (($item["id"] != $item["parent"]) && (Strings::normaliseLink($item["author-link"]) != Strings::normaliseLink($owner["url"]))) {
|
||||
if (($item['gravity'] != GRAVITY_PARENT) && (Strings::normaliseLink($item["author-link"]) != Strings::normaliseLink($owner["url"]))) {
|
||||
Logger::log("OStatus entry is from author ".$owner["url"]." - not from ".$item["author-link"].". Quitting.", Logger::DEBUG);
|
||||
}
|
||||
|
||||
|
@ -1740,7 +1740,7 @@ class OStatus
|
|||
*/
|
||||
private static function likeEntry(DOMDocument $doc, array $item, array $owner, $toplevel)
|
||||
{
|
||||
if (($item["id"] != $item["parent"]) && (Strings::normaliseLink($item["author-link"]) != Strings::normaliseLink($owner["url"]))) {
|
||||
if (($item['gravity'] != GRAVITY_PARENT) && (Strings::normaliseLink($item["author-link"]) != Strings::normaliseLink($owner["url"]))) {
|
||||
Logger::log("OStatus entry is from author ".$owner["url"]." - not from ".$item["author-link"].". Quitting.", Logger::DEBUG);
|
||||
}
|
||||
|
||||
|
@ -1824,7 +1824,7 @@ class OStatus
|
|||
*/
|
||||
private static function followEntry(DOMDocument $doc, array $item, array $owner, $toplevel)
|
||||
{
|
||||
$item["id"] = $item["parent"] = 0;
|
||||
$item["id"] = $item['parent'] = 0;
|
||||
$item["created"] = $item["edited"] = date("c");
|
||||
$item["private"] = Item::PRIVATE;
|
||||
|
||||
|
@ -1889,7 +1889,7 @@ class OStatus
|
|||
*/
|
||||
private static function noteEntry(DOMDocument $doc, array $item, array $owner, $toplevel, $feed_mode)
|
||||
{
|
||||
if (($item["id"] != $item["parent"]) && (Strings::normaliseLink($item["author-link"]) != Strings::normaliseLink($owner["url"]))) {
|
||||
if (($item['gravity'] != GRAVITY_PARENT) && (Strings::normaliseLink($item["author-link"]) != Strings::normaliseLink($owner["url"]))) {
|
||||
Logger::log("OStatus entry is from author ".$owner["url"]." - not from ".$item["author-link"].". Quitting.", Logger::DEBUG);
|
||||
}
|
||||
|
||||
|
@ -2021,7 +2021,7 @@ class OStatus
|
|||
$mentioned = [];
|
||||
|
||||
if (($item['parent'] != $item['id']) || ($item['parent-uri'] !== $item['uri']) || (($item['thr-parent'] !== '') && ($item['thr-parent'] !== $item['uri']))) {
|
||||
$parent = Item::selectFirst(['guid', 'author-link', 'owner-link'], ['id' => $item["parent"]]);
|
||||
$parent = Item::selectFirst(['guid', 'author-link', 'owner-link'], ['id' => $item['parent']]);
|
||||
$parent_item = (($item['thr-parent']) ? $item['thr-parent'] : $item['parent-uri']);
|
||||
|
||||
$thrparent = Item::selectFirst(['guid', 'author-link', 'owner-link', 'plink'], ['uid' => $owner["uid"], 'uri' => $parent_item]);
|
||||
|
@ -2047,7 +2047,7 @@ class OStatus
|
|||
XML::addElement($doc, $entry, "link", "", $attributes);
|
||||
}
|
||||
|
||||
if (!$feed_mode && (intval($item["parent"]) > 0)) {
|
||||
if (!$feed_mode && (intval($item['parent']) > 0)) {
|
||||
$conversation_href = $conversation_uri = str_replace('/objects/', '/context/', $item['parent-uri']);
|
||||
|
||||
if (isset($parent_item)) {
|
||||
|
@ -2066,7 +2066,7 @@ class OStatus
|
|||
|
||||
$attributes = [
|
||||
"href" => $conversation_href,
|
||||
"local_id" => $item["parent"],
|
||||
"local_id" => $item['parent'],
|
||||
"ref" => $conversation_uri];
|
||||
|
||||
XML::addElement($doc, $entry, "ostatus:conversation", $conversation_uri, $attributes);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue