From: Andrew Dolgov Date: Fri, 8 Dec 2006 07:32:27 +0000 (+0100) Subject: add function to match all filters X-Git-Tag: 1.2.6~9 X-Git-Url: https://git.wh0rd.org/?a=commitdiff_plain;h=240054f1a23e2b3c5bfd99dc2212e32430b04172;p=tt-rss.git add function to match all filters --- diff --git a/functions.php b/functions.php index c0326421..dbc43235 100644 --- a/functions.php +++ b/functions.php @@ -893,6 +893,51 @@ return false; } + function get_filter_matches($title, $content, $link, $filters) { + + $matches = array(); + + if ($filters["title"]) { + foreach ($filters["title"] as $filter) { + $reg_exp = $filter["reg_exp"]; + if (preg_match("/$reg_exp/i", $title)) { + array_push($matches, array($filter["action"], $filter["action_param"])); + } + } + } + + if ($filters["content"]) { + foreach ($filters["content"] as $filter) { + $reg_exp = $filter["reg_exp"]; + if (preg_match("/$reg_exp/i", $content)) { + array_push($matches, array($filter["action"], $filter["action_param"])); + } + } + } + + if ($filters["both"]) { + foreach ($filters["both"] as $filter) { + $reg_exp = $filter["reg_exp"]; + if (preg_match("/$reg_exp/i", $title) || + preg_match("/$reg_exp/i", $content)) { + array_push($matches, array($filter["action"], $filter["action_param"])); + } + } + } + + if ($filters["link"]) { + $reg_exp = $filter["reg_exp"]; + foreach ($filters["link"] as $filter) { + $reg_exp = $filter["reg_exp"]; + if (preg_match("/$reg_exp/i", $link)) { + array_push($matches, array($filter["action"], $filter["action_param"])); + } + } + } + + return $matches; + } + function printFeedEntry($feed_id, $class, $feed_title, $unread, $icon_file, $link, $rtl_content = false, $last_updated = false, $last_error = false) {