diff --git a/src/Model/Item.php b/src/Model/Item.php index dfea29681..609535974 100644 --- a/src/Model/Item.php +++ b/src/Model/Item.php @@ -1828,8 +1828,6 @@ class Item $notify_type = Delivery::POST; } - $like_no_comment = DI::config()->get('system', 'like_no_comment'); - DBA::transaction(); if (!in_array($item['verb'], self::ACTIVITIES)) { @@ -1842,6 +1840,7 @@ class Item } $body = $item['body']; + $verb = $item['verb']; // We just remove everything that is content foreach (array_merge(self::CONTENT_FIELDLIST, self::MIXED_CONTENT_FIELDLIST) as $field) { @@ -1940,8 +1939,15 @@ class Item $item['parent'] = $parent_id; // update the commented timestamp on the parent - // Only update "commented" if it is really a comment - if (($item['gravity'] != GRAVITY_ACTIVITY) || !$like_no_comment) { + if (DI::config()->get('system', 'like_no_comment')) { + // Update when it is a comment + $update_commented = in_array($item['gravity'], [GRAVITY_PARENT, GRAVITY_COMMENT]); + } else { + // Update when it isn't a follow or tag verb + $update_commented = !in_array($verb, [Activity::FOLLOW, Activity::TAG]); + } + + if ($update_commented) { DBA::update('item', ['commented' => DateTimeFormat::utcNow(), 'changed' => DateTimeFormat::utcNow()], ['id' => $parent_id]); } else { DBA::update('item', ['changed' => DateTimeFormat::utcNow()], ['id' => $parent_id]);