aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2015-01-06 22:12:48 +0100
committerGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2015-01-06 22:12:48 +0100
commit5cdfd6d493705eed93481ff945e8a84cbcff92f7 (patch)
tree0ec334b1a3f8b5c22e601405738991ebd8ad660c
parenteff804572f449a1072274eb6623709b162db4da9 (diff)
Fix and improve actualize_script
See https://github.com/FreshRSS/FreshRSS/issues/730
-rwxr-xr-xapp/actualize_script.php52
1 files changed, 28 insertions, 24 deletions
diff --git a/app/actualize_script.php b/app/actualize_script.php
index e8bc67c10..cc2a88c51 100755
--- a/app/actualize_script.php
+++ b/app/actualize_script.php
@@ -12,21 +12,36 @@ if (defined('STDOUT')) {
fwrite(STDOUT, 'Starting feed actualization at ' . $begin_date->format('c') . "\n"); //Unbuffered
}
-Minz_Configuration::init();
-$users = listUsers();
-shuffle($users); //Process users in random order
+// Set the header params ($_GET) to call the FRSS application.
+$_GET['c'] = 'feed';
+$_GET['a'] = 'actualize';
+$_GET['ajax'] = 1;
+$_GET['force'] = true;
+$_SERVER['HTTP_HOST'] = '';
+
+
+$app = new FreshRSS();
+$app->init();
-if (Minz_Configuration::defaultUser() !== ''){
- array_unshift($users, Minz_Configuration::defaultUser()); //But always start with admin
+$system_conf = Minz_Configuration::get('system');
+$system_conf->auth_type = 'none'; // avoid necessity to be logged in (not saved!)
+
+// Create the list of users to actualize.
+// Users are processed in a random order but always start with admin
+$users = listUsers();
+shuffle($users);
+if ($system_conf->default_user !== ''){
+ array_unshift($users, $system_conf->default_user);
$users = array_unique($users);
}
-$limits = Minz_Configuration::limits();
-$minLastActivity = time() - $limits['max_inactivity'];
+$limits = $system_conf->limits;
+$minLastActivity = time() - $limits['max_inactivity'];
foreach ($users as $myUser) {
- if (($myUser !== Minz_Configuration::defaultUser()) && (FreshRSS_UserDAO::mtime($myUser) < $minLastActivity)) {
+ if (($myUser !== $system_conf->default_user) &&
+ (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
@@ -39,31 +54,20 @@ foreach ($users as $myUser) {
}
echo $myUser, ' '; //Buffered
- $_GET['c'] = 'feed';
- $_GET['a'] = 'actualize';
- $_GET['ajax'] = 1;
- $_GET['force'] = true;
- $_SERVER['HTTP_HOST'] = '';
-
- $freshRSS = new FreshRSS();
-
- Minz_Configuration::_authType('none');
- Minz_Session::init('FreshRSS');
Minz_Session::_param('currentUser', $myUser);
+ $app->run();
- $freshRSS->init();
- $freshRSS->run();
if (!invalidateHttpCache()) {
- syslog(LOG_NOTICE, 'FreshRSS write access problem in ' . USERS_PATH . '/*/log.txt!');
+ syslog(LOG_NOTICE, 'FreshRSS write access problem in ' . join_path(USERS_PATH, $myUser, 'log.txt'));
if (defined('STDERR')) {
- fwrite(STDERR, 'Write access problem in ' . USERS_PATH . '/*/log.txt!' . "\n");
+ fwrite(STDERR, 'Write access problem in ' . join_path(USERS_PATH, $myUser, 'log.txt') . "\n");
}
}
- Minz_Session::unset_session(true);
- Minz_ModelPdo::clean();
}
+
+
syslog(LOG_INFO, 'FreshRSS actualize done.');
if (defined('STDOUT')) {
fwrite(STDOUT, 'Done.' . "\n");