diff options
Diffstat (limited to 'include/expire.php')
-rw-r--r-- | include/expire.php | 59 |
1 files changed, 28 insertions, 31 deletions
diff --git a/include/expire.php b/include/expire.php index b244e65f5..e5d456896 100644 --- a/include/expire.php +++ b/include/expire.php @@ -1,4 +1,7 @@ -<?php /** @file */ +<?php +/** + * @file include/expire.php + */ require_once('boot.php'); require_once('include/cli_startup.php'); @@ -7,62 +10,60 @@ function expire_run($argv, $argc){ cli_startup(); - // perform final cleanup on previously delete items - $r = q("select id from item where (item_restrict & %d) > 0 and (item_restrict & %d) = 0 + $r = q("select id from item where (item_restrict & %d) > 0 and (item_restrict & %d) = 0 and changed < %s - INTERVAL %s", intval(ITEM_DELETED), intval(ITEM_PENDING_REMOVE), db_utcnow(), db_quoteinterval('10 DAY') ); - if($r) { - foreach($r as $rr) { - drop_item($rr['id'],false,DROPITEM_PHASE2); + if ($r) { + foreach ($r as $rr) { + drop_item($rr['id'], false, DROPITEM_PHASE2); } } // physically remove anything that has been deleted for more than two months - // FIXME - this is a wretchedly inefficient query + /** @FIXME - this is a wretchedly inefficient query */ $r = q("delete from item where ( item_restrict & %d ) > 0 and changed < %s - INTERVAL %s", intval(ITEM_PENDING_REMOVE), db_utcnow(), db_quoteinterval('36 DAY') ); - // make this optional as it could have a performance impact on large sites + /** @FIXME make this optional as it could have a performance impact on large sites */ - if(intval(get_config('system','optimize_items'))) + if (intval(get_config('system', 'optimize_items'))) q("optimize table item"); logger('expire: start', LOGGER_DEBUG); - + $site_expire = get_config('system', 'default_expire_days'); logger('site_expire: ' . $site_expire); $r = q("SELECT channel_id, channel_address, channel_pageflags, channel_expire_days from channel where true"); - if($r) { - foreach($r as $rr) { + if ($r) { + foreach ($r as $rr) { // expire the sys channel separately - if($rr['channel_pageflags'] & PAGE_SYSTEM) + if ($rr['channel_pageflags'] & PAGE_SYSTEM) continue; // service class default (if non-zero) over-rides the site default - $service_class_expire = service_class_fetch($rr['channel_id'],'expire_days'); - if(intval($service_class_expire)) + $service_class_expire = service_class_fetch($rr['channel_id'], 'expire_days'); + if (intval($service_class_expire)) $channel_expire = $service_class_expire; else $channel_expire = $site_expire; - if(intval($channel_expire) && (intval($channel_expire) < intval($rr['channel_expire_days'])) || + if (intval($channel_expire) && (intval($channel_expire) < intval($rr['channel_expire_days'])) || intval($rr['channel_expire_days'] == 0)) { $expire_days = $channel_expire; - } - else { + } else { $expire_days = $rr['channel_expire_days']; } @@ -72,34 +73,30 @@ function expire_run($argv, $argc){ } } - $x = get_sys_channel(); - if($x) { + if ($x) { // this should probably just fetch the channel_expire_days from the sys channel, // but there's no convenient way to set it. - $expire_days = get_config('system','sys_expire_days'); - if($expire_days === false) + $expire_days = get_config('system', 'sys_expire_days'); + if ($expire_days === false) $expire_days = 30; - if(intval($site_expire) && (intval($site_expire) < intval($expire_days))) { + if (intval($site_expire) && (intval($site_expire) < intval($expire_days))) { $expire_days = $site_expire; } logger('Expire: sys interval: ' . $expire_days, LOGGER_DEBUG); - if($expire_days) - item_expire($x['channel_id'],$expire_days); + if ($expire_days) + item_expire($x['channel_id'], $expire_days); logger('Expire: sys: done', LOGGER_DEBUG); - } - - return; } -if (array_search(__file__,get_included_files())===0){ - expire_run($argv,$argc); - killme(); +if (array_search(__file__, get_included_files()) === 0){ + expire_run($argv, $argc); + killme(); } |