Simple log entry wording change in expire.php.

This commit is contained in:
Retro_Guy 2023-08-20 04:58:18 -07:00
parent 17e8a5dd5e
commit f427947ebb
1 changed files with 71 additions and 63 deletions

View File

@ -1,85 +1,93 @@
<?php
include "config.inc.php";
include ("$file_newsportal");
include "config.inc.php";
include ("$file_newsportal");
if(filemtime($spooldir.'/'.$config_name.'-expire-timer')+86400 > time()) {
exit;
}
$lockfile = $lockdir . '/'.$config_name.'-spoolnews.lock';
$pid = file_get_contents($lockfile);
if (posix_getsid($pid) === false || !is_file($lockfile)) {
if (filemtime($spooldir . '/' . $config_name . '-expire-timer') + 86400 > time()) {
exit();
}
$lockfile = $lockdir . '/' . $config_name . '-spoolnews.lock';
$pid = file_get_contents($lockfile);
if (posix_getsid($pid) === false || ! is_file($lockfile)) {
print "Starting expire...\n";
file_put_contents($lockfile, getmypid()); // create lockfile
} else {
} else {
print "expire currently running\n";
exit;
}
exit();
}
$webserver_group=$CONFIG['webserver_user'];
$logfile=$logdir.'/expire.log';
$webserver_group = $CONFIG['webserver_user'];
$logfile = $logdir . '/expire.log';
$grouplist = file($config_dir.'/'.$config_name.'/groups.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
foreach($grouplist as $groupline) {
$groupname=explode(' ', $groupline);
$group=$groupname[0];
if($group[0] == ':') {
continue;
}
$expire_conf = $CONFIG['expire_days'];
$expire_user = get_config_value('expire.conf', $group);
if($expire_user !== false) {
$expire = $expire_user;
} else {
$expire = $expire_conf;
}
if($expire < 1) {
continue;
}
$expireme = time() - ($expire * 86400);
$showme = date('d M, Y', $expireme);
echo "Expire $group articles before $showme\n";
file_put_contents($logfile, "\n".format_log_date()." ".$config_name." ".$group." Expiring: articles before ".$showme, FILE_APPEND);
if($CONFIG['article_database'] == '1') {
echo "Expiring article database...\n";
file_put_contents($logfile, "\n".format_log_date()." ".$config_name." ".$group." Expiring article database...", FILE_APPEND);
$database = $spooldir.'/'.$group.'-articles.db3';
if(is_file($database)) {
$articles_dbh = article_db_open($database);
$articles_query = $articles_dbh->prepare('DELETE FROM articles WHERE newsgroup=:newsgroup AND date<:expireme');
$articles_query->execute([':newsgroup' => $group, ':expireme' => $expireme]);
$articles_dbh = null;
}
}
// Expire tradspool and remove from newsportal
echo "Expiring overview database and writing history...\n";
file_put_contents($logfile, "\n".format_log_date()." ".$config_name." ".$group." Expiring overview database and writing history...", FILE_APPEND);
$grouplist = file($config_dir . '/' . $config_name . '/groups.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
foreach ($grouplist as $groupline) {
$groupname = explode(' ', $groupline);
$group = $groupname[0];
if ($group[0] == ':') {
continue;
}
$expire_conf = $CONFIG['expire_days'];
$expire_user = get_config_value('expire.conf', $group);
$database = $spooldir.'/articles-overview.db3';
if ($expire_user !== false) {
$expire = $expire_user;
} else {
$expire = $expire_conf;
}
if ($expire < 1) {
continue;
}
$expireme = time() - ($expire * 86400);
$showme = date('d M, Y', $expireme);
echo "Expire $group articles before $showme\n";
file_put_contents($logfile, "\n" . format_log_date() . " " . $config_name . " " . $group . " Expiring: articles before " . $showme, FILE_APPEND);
if ($CONFIG['article_database'] == '1') {
echo "Expiring article database...\n";
file_put_contents($logfile, "\n" . format_log_date() . " " . $config_name . " " . $group . " Expiring article database...", FILE_APPEND);
$database = $spooldir . '/' . $group . '-articles.db3';
if (is_file($database)) {
$articles_dbh = article_db_open($database);
$articles_query = $articles_dbh->prepare('DELETE FROM articles WHERE newsgroup=:newsgroup AND date<:expireme');
$articles_query->execute([
':newsgroup' => $group,
':expireme' => $expireme
]);
$articles_dbh = null;
}
}
// Expire tradspool and remove from newsportal
echo "Expiring overview database and writing history...\n";
file_put_contents($logfile, "\n" . format_log_date() . " " . $config_name . " " . $group . " Expiring overview database and writing history...", FILE_APPEND);
$database = $spooldir . '/articles-overview.db3';
$dbh = overview_db_open($database);
$query = $dbh->prepare('SELECT * FROM overview WHERE newsgroup=:newsgroup AND date<:expireme');
$query->execute([':newsgroup' => $group, ':expireme' => $expireme]);
$query->execute([
':newsgroup' => $group,
':expireme' => $expireme
]);
$stmt = $dbh->prepare('DELETE FROM overview WHERE newsgroup=:newsgroup AND date<:expireme');
$grouppath = preg_replace('/\./', '/', $group);
$status = "deleted";
$statusdate = time();
$statusreason = "expired";
$i=0;
while($row = $query->fetch()) {
if(is_file($spooldir.'/articles/'.$grouppath.'/'.$row['number'])) {
unlink($spooldir.'/articles/'.$grouppath.'/'.$row['number']);
$i = 0;
while ($row = $query->fetch()) {
if (is_file($spooldir . '/articles/' . $grouppath . '/' . $row['number'])) {
unlink($spooldir . '/articles/' . $grouppath . '/' . $row['number']);
}
add_to_history($group, $row['number'], $row['msgid'], $status, $statusdate, $statusreason, $statusnotes);
thread_cache_removearticle($group,$row['number']);
$i++;
thread_cache_removearticle($group, $row['number']);
$i ++;
}
$stmt->execute([':newsgroup' => $group, ':expireme' => $expireme]);
$stmt->execute([
':newsgroup' => $group,
':expireme' => $expireme
]);
$dbh = null;
unlink($lockfile);
touch($spooldir.'/'.$config_name.'-expire-timer');
echo "Expired ".$i." articles for ".$group."\n";
file_put_contents($logfile, "\n".format_log_date()." ".$config_name." Expired ".$i." articles for ".$group, FILE_APPEND);
touch($spooldir . '/' . $config_name . '-expire-timer');
echo "Expired " . $i . " articles for " . $group . "\n";
file_put_contents($logfile, "\n" . format_log_date() . " " . $config_name . " " . $group . " Expired " . $i . " articles", FILE_APPEND);
}
?>