aboutsummaryrefslogtreecommitdiff
path: root/app/Models/BooleanSearch.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/Models/BooleanSearch.php')
-rw-r--r--app/Models/BooleanSearch.php12
1 files changed, 9 insertions, 3 deletions
diff --git a/app/Models/BooleanSearch.php b/app/Models/BooleanSearch.php
index 8a750a713..78b7593b2 100644
--- a/app/Models/BooleanSearch.php
+++ b/app/Models/BooleanSearch.php
@@ -19,14 +19,20 @@ class FreshRSS_BooleanSearch {
public function __construct(string $input, int $level = 0, string $operator = 'AND') {
$this->operator = $operator;
$input = trim($input);
- if ($input == '') {
+ if ($input === '') {
return;
}
$this->raw_input = $input;
if ($level === 0) {
$input = preg_replace('/:"(.*?)"/', ':"\1"', $input);
+ if (!is_string($input)) {
+ return;
+ }
$input = preg_replace('/(?<=[\s!-]|^)&quot;(.*?)&quot;/', '"\1"', $input);
+ if (!is_string($input)) {
+ return;
+ }
$input = $this->parseUserQueryNames($input);
$input = $this->parseUserQueryIds($input);
@@ -53,7 +59,7 @@ class FreshRSS_BooleanSearch {
if (!empty($all_matches)) {
/** @var array<string,FreshRSS_UserQuery> */
$queries = [];
- foreach (FreshRSS_Context::$user_conf->queries as $raw_query) {
+ foreach (FreshRSS_Context::userConf()->queries as $raw_query) {
$query = new FreshRSS_UserQuery($raw_query);
$queries[$query->getName()] = $query;
}
@@ -95,7 +101,7 @@ class FreshRSS_BooleanSearch {
/** @var array<string,FreshRSS_UserQuery> */
$queries = [];
- foreach (FreshRSS_Context::$user_conf->queries as $raw_query) {
+ foreach (FreshRSS_Context::userConf()->queries as $raw_query) {
$query = new FreshRSS_UserQuery($raw_query, $feed_dao, $category_dao, $tag_dao);
$queries[] = $query;
}