aboutsummaryrefslogtreecommitdiff
path: root/app/actualize_script.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/actualize_script.php')
-rwxr-xr-xapp/actualize_script.php26
1 files changed, 24 insertions, 2 deletions
diff --git a/app/actualize_script.php b/app/actualize_script.php
index 4c306b8da..6ce4178cd 100755
--- a/app/actualize_script.php
+++ b/app/actualize_script.php
@@ -7,14 +7,32 @@ ob_implicit_flush(false);
ob_start();
echo 'Results: ', "\n"; //Buffered
+if (defined('STDOUT')) {
+ $begin_date = date_create('now');
+ fwrite(STDOUT, 'Starting feed actualization at ' . $begin_date->format('c') . "\n"); //Unbuffered
+}
+
Minz_Configuration::init();
$users = listUsers();
shuffle($users); //Process users in random order
-array_unshift($users, Minz_Configuration::defaultUser()); //But always start with admin
-$users = array_unique($users);
+
+if (Minz_Configuration::defaultUser() !== ''){
+ array_unshift($users, Minz_Configuration::defaultUser()); //But always start with admin
+ $users = array_unique($users);
+}
+
+$limits = Minz_Configuration::limits();
+$minLastActivity = time() - $limits['max_inactivity'];
foreach ($users as $myUser) {
+ if (($myUser !== Minz_Configuration::defaultUser()) && (FreshRSS_UserDAO::mtime($myUser) < $minLastActivity)) {
+ syslog(LOG_INFO, 'FreshRSS skip inactive user ' . $myUser);
+ if (defined('STDOUT')) {
+ fwrite(STDOUT, 'FreshRSS skip inactive user ' . $myUser . "\n"); //Unbuffered
+ }
+ continue;
+ }
syslog(LOG_INFO, 'FreshRSS actualize ' . $myUser);
if (defined('STDOUT')) {
fwrite(STDOUT, 'Actualize ' . $myUser . "...\n"); //Unbuffered
@@ -49,6 +67,10 @@ foreach ($users as $myUser) {
syslog(LOG_INFO, 'FreshRSS actualize done.');
if (defined('STDOUT')) {
fwrite(STDOUT, 'Done.' . "\n");
+ $end_date = date_create('now');
+ $duration = date_diff($end_date, $begin_date);
+ fwrite(STDOUT, 'Ending feed actualization at ' . $end_date->format('c') . "\n"); //Unbuffered
+ fwrite(STDOUT, 'Feed actualizations took ' . $duration->format('%a day(s), %h hour(s), %i minute(s) and %s seconds') . ' for ' . count($users) . " users\n"); //Unbuffered
}
echo 'End.', "\n";
ob_end_flush();