Post\ThreadUser::update($item['uri-id'], $item['uid'], ['hidden' => true]);
}
+ DI::notify()->deleteForItem($item['uri-id']);
+ DI::notification()->deleteForItem($item['uri-id']);
+
Logger::info('Item has been marked for deletion.', ['id' => $item_id]);
return true;
use Friendica\Navigation\Notifications\Entity;
use Friendica\Navigation\Notifications\Factory;
use Friendica\Network\HTTPException\NotFoundException;
+use Friendica\Protocol\Activity;
use Friendica\Util\DateTimeFormat;
use Psr\Log\LoggerInterface;
return $this->db->delete(self::$table_name, $condition);
}
+
+ public function deleteForItem(int $itemUriId): bool
+ {
+ $conditionTarget = [
+ 'vid' => Verb::getID(Activity::POST),
+ 'target-uri-id' => $itemUriId,
+ ];
+
+ $conditionParent = [
+ 'vid' => Verb::getID(Activity::POST),
+ 'parent-uri-id' => $itemUriId,
+ ];
+
+ $this->logger->notice('deleteForItem', ['conditionTarget' => $conditionTarget, 'conditionParent' => $conditionParent]);
+
+ return
+ $this->db->delete(self::$table_name, $conditionTarget)
+ && $this->db->delete(self::$table_name, $conditionParent);
+ }
}
return $this->storeAndSend($params, $sitelink, $tsitelink, $hsitelink, $title, $subject, $preamble, $epreamble, $item['body'], $itemlink, true);
}
+
+ public function deleteForItem(int $itemUriId): void
+ {
+ $this->db->delete('notify', ['otype' => 'item', 'uri-id' => $itemUriId]);
+ $this->db->delete('notify', ['otype' => 'item', 'parent-uri-id' => $itemUriId]);
+ }
}