Allow delete-inactive for gcfeeds
Garbage collecting should also allow to clean up leftover database entries.
This commit is contained in:
parent
f0a707cfc6
commit
f141565104
@ -20,20 +20,33 @@
|
|||||||
|
|
||||||
define('INSTALLDIR', realpath(dirname(__FILE__) . '/../../..'));
|
define('INSTALLDIR', realpath(dirname(__FILE__) . '/../../..'));
|
||||||
|
|
||||||
|
$longoptions = array('delete-inactive');
|
||||||
|
$shortoptions = 'd';
|
||||||
|
|
||||||
$helptext = <<<END_OF_HELP
|
$helptext = <<<END_OF_HELP
|
||||||
gcfeeds.php [options]
|
gcfeeds.php [options]
|
||||||
Clean up feeds that no longer have subscribers.
|
Clean up feeds that no longer have subscribers.
|
||||||
|
|
||||||
|
-d --delete-inactive Delete inactive feeds from feedsub table.
|
||||||
|
|
||||||
END_OF_HELP;
|
END_OF_HELP;
|
||||||
|
|
||||||
require_once INSTALLDIR.'/scripts/commandline.inc';
|
require_once INSTALLDIR.'/scripts/commandline.inc';
|
||||||
|
|
||||||
|
$delete_inactive = have_option('d', 'delete-inactive');
|
||||||
|
$delcount = 0;
|
||||||
|
|
||||||
$feedsub = new FeedSub();
|
$feedsub = new FeedSub();
|
||||||
$feedsub->find();
|
$feedsub->find();
|
||||||
while ($feedsub->fetch()) {
|
while ($feedsub->fetch()) {
|
||||||
try {
|
try {
|
||||||
echo $feedsub->getUri() . " ({$feedsub->sub_state})";
|
echo $feedsub->getUri() . " ({$feedsub->sub_state})";
|
||||||
if ($feedsub->garbageCollect()) {
|
if ($feedsub->garbageCollect()) {
|
||||||
|
if ($delete_inactive) {
|
||||||
|
$delcount++;
|
||||||
|
$feedsub->delete();
|
||||||
|
echo " DELETED";
|
||||||
|
}
|
||||||
echo " INACTIVE\n";
|
echo " INACTIVE\n";
|
||||||
} else {
|
} else {
|
||||||
echo " ACTIVE\n";
|
echo " ACTIVE\n";
|
||||||
@ -51,3 +64,5 @@ while ($feedsub->fetch()) {
|
|||||||
echo " ERROR: {$e->getMessage()}\n";
|
echo " ERROR: {$e->getMessage()}\n";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($delete_inactive) echo "\nDeleted $delcount inactive feeds.\n";
|
||||||
|
Loading…
Reference in New Issue
Block a user