if ($param == 'delete') {
logger('Delete expired items', LOGGER_DEBUG);
// physically remove anything that has been deleted for more than two months
- $r = dba::p("SELECT `id`, `iaid`, `icid` FROM `item` WHERE `deleted` AND `changed` < UTC_TIMESTAMP() - INTERVAL 60 DAY");
- while ($row = dba::fetch($r)) {
+ $condition = ["`deleted` AND `changed` < UTC_TIMESTAMP() - INTERVAL 60 DAY"];
+ $rows = dba::select('item', ['id', 'iaid', 'icid'], $condition);
+ while ($row = dba::fetch($rows)) {
dba::delete('item', ['id' => $row['id']]);
if (!empty($row['iaid']) && !dba::exists('item', ['iaid' => $row['iaid']])) {
- dba::delete('item-content', ['id' => $row['icid']]);
+ dba::delete('item-activity', ['id' => $row['iaid']]);
}
if (!empty($row['icid']) && !dba::exists('item', ['icid' => $row['icid']])) {
dba::delete('item-content', ['id' => $row['icid']]);
}
}
- dba::close($r);
+ dba::close($rows);
logger('Delete expired items - done', LOGGER_DEBUG);