X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FProtocol%2FDFRN.php;h=7cb9db1a136d2d4834bc8ad8ef24ea63011f75cf;hb=ab5a447bc2261522d0f5560f8933dd928a6fc6e3;hp=23a287a9a1b2c3fc8e077c1f8932f87aec8acc39;hpb=ee5207410c71492b2e771479ff1890d8ef4552da;p=friendica.git diff --git a/src/Protocol/DFRN.php b/src/Protocol/DFRN.php index 23a287a9a1..7cb9db1a13 100644 --- a/src/Protocol/DFRN.php +++ b/src/Protocol/DFRN.php @@ -37,8 +37,7 @@ use Friendica\Model\FContact; use Friendica\Model\Item; use Friendica\Model\ItemURI; use Friendica\Model\Mail; -use Friendica\Model\Notify; -use Friendica\Model\Notify\Type; +use Friendica\Model\Notification; use Friendica\Model\PermissionSet; use Friendica\Model\Post; use Friendica\Model\Post\Category; @@ -311,23 +310,26 @@ class DFRN } /** - * Generate an atom entry for a given item id + * Generate an atom entry for a given uri id and user * - * @param int $item_id The item id + * @param int $uri_id The uri id + * @param int $uid The user id * @param boolean $conversation Show the conversation. If false show the single post. * * @return string DFRN feed entry * @throws \Friendica\Network\HTTPException\InternalServerErrorException * @throws \ImagickException */ - public static function itemFeed($item_id, $conversation = false) + public static function itemFeed(int $uri_id, int $uid, bool $conversation = false) { if ($conversation) { - $condition = ['parent' => $item_id]; + $condition = ['parent-uri-id' => $uri_id]; } else { - $condition = ['id' => $item_id]; + $condition = ['uri-id' => $uri_id]; } + $condition['uid'] = $uid; + $items = Post::selectToArray(Item::DELIVER_FIELDLIST, $condition); if (!DBA::isResult($items)) { return ''; @@ -1963,8 +1965,8 @@ class DFRN // send a notification notification( [ - "type" => Type::POKE, - "otype" => Notify\ObjectType::PERSON, + "type" => Notification\Type::POKE, + "otype" => Notification\ObjectType::PERSON, "activity" => $verb, "verb" => $item["verb"], "uid" => $importer["importer_uid"], @@ -2508,14 +2510,14 @@ class DFRN } $condition = ['uri' => $uri, 'uid' => $importer["importer_uid"]]; - $item = Post::selectFirst(['id', 'parent', 'contact-id', 'file', 'deleted', 'gravity'], $condition); + $item = Post::selectFirst(['id', 'parent', 'contact-id', 'uri-id', 'deleted', 'gravity'], $condition); if (!DBA::isResult($item)) { Logger::log("Item with uri " . $uri . " for user " . $importer["importer_uid"] . " wasn't found.", Logger::DEBUG); return; } - if (strstr($item['file'], '[')) { - Logger::log("Item with uri " . $uri . " for user " . $importer["importer_uid"] . " is filed. So it won't be deleted.", Logger::DEBUG); + if (DBA::exists('post-category', ['uri-id' => $item['uri-id'], 'uid' => $importer['importer_uid'], 'type' => Post\Category::FILE])) { + Logger::notice("Item is filed. It won't be deleted.", ['uri' => $uri, 'uri-id' => $item['uri_id'], 'uid' => $importer["importer_uid"]]); return; }