]> git.wh0rd.org - tt-rss.git/blobdiff - include/rssfuncs.php
modify sorting by date_entered: set date_entered per-batch; use updated as a secondar...
[tt-rss.git] / include / rssfuncs.php
index 92bfaa02384e8d86242c87f1745c1e248dfdb320..73fe757c3dfac0d930d265de7a41ffe6b5c28c4f 100644 (file)
 
                $simplepie_cache_dir = CACHE_DIR . "/simplepie";
 
+               $date_feed_processed = date('Y-m-d H:i');
+
                if (!is_dir($simplepie_cache_dir)) {
                        mkdir($simplepie_cache_dir);
                }
 
                                $entry_timestamp = strtotime($item->get_date());
 
-                               if ($entry_timestamp == -1 || !$entry_timestamp) {
+                               if ($entry_timestamp == -1 || !$entry_timestamp || $entry_timestamp > time()) {
                                        $entry_timestamp = time();
                                        $no_orig_date = 'true';
                                } else {
                                                        '',
                                                        $no_orig_date,
                                                        NOW(),
-                                                       NOW(),
+                                                       '$date_feed_processed',
                                                        '$entry_comments',
                                                        '$num_comments',
                                                        '$entry_plugin_data',
 
                foreach ($filters as $filter) {
                        $match_any_rule = $filter["match_any_rule"];
+                       $inverse = $filter["inverse"];
                        $filter_match = false;
 
                        foreach ($filter["rules"] as $rule) {
                                $match = false;
                                $reg_exp = $rule["reg_exp"];
+                               $rule_inverse = $rule["inverse"];
 
                                if (!$reg_exp)
                                        continue;
                                        break;
                                }
 
+                               if ($rule_inverse) $match = !$match;
+
                                if ($match_any_rule) {
                                        if ($match) {
                                                $filter_match = true;
                                }
                        }
 
+                       if ($inverse) $filter_match = !$filter_match;
+
                        if ($filter_match) {
                                foreach ($filter["actions"] AS $action) {
                                        array_push($matches, $action);