]> git.wh0rd.org - tt-rss.git/blobdiff - update_feeds.php
update_rss_feed: properly define
[tt-rss.git] / update_feeds.php
old mode 100644 (file)
new mode 100755 (executable)
index a6956df..6a4aa2a
@@ -1,18 +1,27 @@
 #!/usr/bin/php
 <?php
-       // this script is probably run not from your httpd-user, so cache
-       // directory defined in config.php won't be accessible
-       define('MAGPIE_CACHE_DIR', '/var/tmp/magpie-ttrss-cache-cli');
-
+       define('DEFAULT_ERROR_LEVEL', E_ERROR | E_WARNING | E_PARSE);
        define('DISABLE_SESSIONS', true);
 
+       error_reporting(DEFAULT_ERROR_LEVEL);
+
        require_once "sanity_check.php";
        require_once "config.php";
        require_once "db.php";
        require_once "db-prefs.php";
        require_once "functions.php";
-       require_once "magpierss/rss_fetch.inc";
 
+       $lock_filename = "update_feeds.lock";
+
+       $lock_handle = make_lockfile($lock_filename);
+
+               // Try to lock a file in order to avoid concurrent update.
+       if (!$lock_handle) {
+               die("error: Can't create lockfile ($lock_filename). ".
+                       "Maybe another process is already running.\n");
+       }
+
+       // Create a database connection.
        $link = db_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME); 
 
        if (!$link) {
                return;
        }
 
-       if (DB_TYPE == "pgsql") {
-               pg_query("set client_encoding = 'utf-8'");
-               pg_set_client_encoding("UNICODE");
-       } else {
-               if (defined('MYSQL_CHARSET') && MYSQL_CHARSET) {
-                       db_query($link, "SET NAMES " . MYSQL_CHARSET);
-//                     db_query($link, "SET CHARACTER SET " . MYSQL_CHARSET);
-               }
-       }
-
-       $result = db_query($link, "SELECT id FROM ttrss_users");
-
-       while ($line = db_fetch_assoc($result)) {
-                       $user_id = $line["id"];
-                       initialize_user_prefs($link, $user_id);
-                       update_all_feeds($link, false, $user_id, true);
-       }
+       init_connection($link);
 
-       if (DAEMON_SENDS_DIGESTS) send_headlines_digests($link);
+       // Update all feeds needing a update.
+       update_daemon_common($link);
 
        db_close($link);
 
+       unlink(LOCK_DIRECTORY . "/$lock_filename");
 ?>