summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2012-08-31 12:54:37 +0400
committerAndrew Dolgov <[email protected]>2012-08-31 12:54:37 +0400
commit37f78940d8492a657c2ab8a7b1a3a3079abb3b70 (patch)
tree386c316903e4620a994cd8d0bf6f8f814e909ef4
parentec630524407882c27a7a8dceee8dc3eaafa0ebb4 (diff)
block type 5 filters (date)
-rw-r--r--classes/pref/filters.php34
-rwxr-xr-xupdate.php51
2 files changed, 47 insertions, 38 deletions
diff --git a/classes/pref/filters.php b/classes/pref/filters.php
index 664c26f6d..04077e52f 100644
--- a/classes/pref/filters.php
+++ b/classes/pref/filters.php
@@ -109,13 +109,32 @@ class Pref_Filters extends Handler_Protected {
$result = db_query($this->link, "SELECT *,
(SELECT action_id FROM ttrss_filters2_actions
WHERE filter_id = ttrss_filters2.id ORDER BY id LIMIT 1) AS action_id,
+ (SELECT description FROM ttrss_filter_actions
+ WHERE id = (SELECT action_id FROM ttrss_filters2_actions
+ WHERE filter_id = ttrss_filters2.id ORDER BY id LIMIT 1)) AS action_name,
(SELECT reg_exp FROM ttrss_filters2_rules
WHERE filter_id = ttrss_filters2.id ORDER BY id LIMIT 1) AS reg_exp
FROM ttrss_filters2 WHERE
owner_uid = ".$_SESSION["uid"]." ORDER BY action_id,reg_exp");
+ $action_id = -1;
+ $folder = array();
+ $folder['items'] = array();
+
while ($line = db_fetch_assoc($result)) {
+ if ($action_id != $line["action_id"]) {
+ if (count($folder['items']) > 0) {
+ $folder['id'] = $line["action_id"];
+ $folder['name'] = $line["action_name"];
+
+ array_push($root['items'], $folder);
+ }
+ $folder = array();
+ $folder['items'] = array();
+ $action_id = $line["action_id"];
+ }
+
$name = $this->getFilterName($line["id"]);
$filter = array();
@@ -126,7 +145,7 @@ class Pref_Filters extends Handler_Protected {
$filter['checkbox'] = false;
$filter['enabled'] = sql_bool_to_bool($line["enabled"]);
- array_push($root['items'], $filter);
+ array_push($folder['items'], $filter);
}
$fl = array();
@@ -466,17 +485,6 @@ class Pref_Filters extends Handler_Protected {
$sort = "reg_exp";
}
- $result = db_query($this->link, "SELECT id,description
- FROM ttrss_filter_types ORDER BY description");
-
- $filter_types = array();
-
- while ($line = db_fetch_assoc($result)) {
- //array_push($filter_types, $line["description"]);
- $filter_types[$line["id"]] = $line["description"];
- }
-
-
$filter_search = db_escape_string($_REQUEST["search"]);
if (array_key_exists("search", $_REQUEST)) {
@@ -684,7 +692,7 @@ class Pref_Filters extends Handler_Protected {
print "<form name='filter_new_rule_form' id='filter_new_rule_form'>";
$result = db_query($this->link, "SELECT id,description
- FROM ttrss_filter_types ORDER BY description");
+ FROM ttrss_filter_types WHERE id != 5 ORDER BY description");
$filter_types = array();
diff --git a/update.php b/update.php
index e8ef8bc99..0bc1090e8 100755
--- a/update.php
+++ b/update.php
@@ -254,36 +254,37 @@
while ($line = db_fetch_assoc($result)) {
$owner_uid = $line["owner_uid"];
- $filter = array();
-
- if (sql_bool_to_bool($line["cat_filter"])) {
- $feed_id = "CAT:" . (int)$line["cat_id"];
- } else {
- $feed_id = (int)$line["feed_id"];
- }
-
- $filter["enabled"] = $line["enabled"] ? "on" : "off";
- $filter["rule"] = array(
- json_encode(array(
- "reg_exp" => $line["reg_exp"],
- "feed_id" => $feed_id,
- "filter_type" => $line["filter_type"])));
+ // date filters are removed
+ if ($line["filter_type"] != 5) {
+ $filter = array();
+
+ if (sql_bool_to_bool($line["cat_filter"])) {
+ $feed_id = "CAT:" . (int)$line["cat_id"];
+ } else {
+ $feed_id = (int)$line["feed_id"];
+ }
- $filter["action"] = array(
- json_encode(array(
- "action_id" => $line["action_id"],
- "action_param_label" => $line["action_param"],
- "action_param" => $line["action_param"])));
+ $filter["enabled"] = $line["enabled"] ? "on" : "off";
+ $filter["rule"] = array(
+ json_encode(array(
+ "reg_exp" => $line["reg_exp"],
+ "feed_id" => $feed_id,
+ "filter_type" => $line["filter_type"])));
- // Oh god it's full of hacks
+ $filter["action"] = array(
+ json_encode(array(
+ "action_id" => $line["action_id"],
+ "action_param_label" => $line["action_param"],
+ "action_param" => $line["action_param"])));
-## print_r($filter);
+ // Oh god it's full of hacks
- $_REQUEST = $filter;
- $_SESSION["uid"] = $owner_uid;
+ $_REQUEST = $filter;
+ $_SESSION["uid"] = $owner_uid;
- $filters = new Pref_Filters($link, $_REQUEST);
- $filters->add();
+ $filters = new Pref_Filters($link, $_REQUEST);
+ $filters->add();
+ }
}
}