'commented', 'created', 'edited', 'received', 'verb', 'object-type', 'postopts', 'plink',
'wall', 'private', 'starred', 'origin', 'parent-origin', 'title', 'body', 'language',
'content-warning', 'location', 'coord', 'app', 'rendered-hash', 'rendered-html', 'object',
- 'allow_cid', 'allow_gid', 'deny_cid', 'deny_gid',
+ 'allow_cid', 'allow_gid', 'deny_cid', 'deny_gid', 'mention',
'author-id', 'author-link', 'author-name', 'author-avatar', 'author-network',
'owner-id', 'owner-link', 'owner-name', 'owner-avatar', 'owner-network', 'owner-contact-type',
'causer-id', 'causer-link', 'causer-name', 'causer-avatar', 'causer-contact-type', 'causer-network',
'author-id', 'author-link', 'author-name', 'author-avatar', 'author-network',
'owner-id', 'owner-link', 'owner-name', 'owner-avatar', 'causer-id'];
- // Item fields that still are in use
- const USED_FIELDLIST = ['id', 'parent', 'guid', 'uri', 'uri-id', 'parent-uri', 'parent-uri-id',
- 'thr-parent', 'thr-parent-id', 'created', 'edited', 'commented', 'received', 'changed',
- 'gravity', 'network', 'owner-id', 'author-id', 'causer-id', 'vid', 'extid', 'post-type',
- 'global', 'private', 'visible', 'deleted', 'uid', 'contact-id',
- 'wall', 'origin', 'pubmail', 'starred', 'unseen', 'mention', 'forum_mode', 'psid',
- 'event-id'];
-
- // Legacy item fields that aren't stored any more in the item table
- const LEGACY_FIELDLIST = ['uri-hash', 'iaid', 'icid', 'attach',
- 'allow_cid', 'allow_gid', 'deny_cid', 'deny_gid', 'postopts',
- 'resource-id', 'inform', 'file', 'location', 'coord', 'tag', 'plink',
- 'title', 'content-warning', 'body', 'app', 'verb', 'object-type', 'object',
- 'target-type', 'target', 'author-name', 'author-link', 'author-avatar',
- 'owner-name', 'owner-link', 'owner-avatar', 'rendered-hash', 'rendered-html'];
-
// List of all verbs that don't need additional content data.
// Never reorder or remove entries from this list. Just add new ones at the end, if needed.
const ACTIVITIES = [
Post\DeliveryData::delete($item['uri-id']);
- // When the permission set will be used in photo and events as well,
- // this query here needs to be extended.
- // @todo Currently deactivated. We need the permission set in the deletion process.
- // This is a reminder to add the removal somewhere else.
- //if (!empty($item['psid']) && !self::exists(['psid' => $item['psid'], 'deleted' => false])) {
- // DBA::delete('permissionset', ['id' => $item['psid']], ['cascade' => false]);
- //}
-
// If it's the parent of a comment thread, kill all the kids
if ($item['gravity'] == GRAVITY_PARENT) {
self::markForDeletion(['parent' => $item['parent'], 'deleted' => false], $priority);
$item['wall'] = $toplevel_parent['wall'];
} else {
$item['wall'] = false;
+ // Participations are technical messages, so they are set to "seen" automatically
+ $item['unseen'] = false;
}
/*
*/
public static function distribute($itemid, $signed_text = '')
{
- $condition = ["`id` IN (SELECT `parent` FROM `post-view` WHERE `id` = ?)", $itemid];
+ $condition = ["`id` IN (SELECT `parent` FROM `post-user-view` WHERE `id` = ?)", $itemid];
$parent = Post::selectFirst(['owner-id'], $condition);
if (!DBA::isResult($parent)) {
Logger::warning('Item not found', ['condition' => $condition]);