ILIAS
release_9 Revision v9.13-25-g2c18ec4c24f
◀ ilDoc Overview
class.ilMailLuceneQueryParser.php
Go to the documentation of this file.
1
<?php
2
19
declare(strict_types=1);
20
21
class
ilMailLuceneQueryParser
extends
ilLuceneQueryParser
22
{
23
protected
array
$fields
= [];
24
25
public
function
parse
(): void
26
{
27
if
($this->
getFields
()) {
28
$queried_fields = [];
29
$token_operator =
' OR '
;
30
if
(
ilSearchSettings::getInstance
()->getDefaultOperator() ===
ilSearchSettings::OPERATOR_AND
) {
31
$token_operator =
' AND '
;
32
}
33
34
foreach
($this->
getFields
() as $field => $status) {
35
if
(!$status) {
36
continue
;
37
}
38
39
$field_query =
''
;
40
$tokens = array_map(trim(...), explode(
' '
, $this->query_string));
41
foreach
($tokens as
$token
) {
42
if
($field_query !==
''
) {
43
$field_query .= $token_operator;
44
}
45
$field_query .=
'('
. $field .
':'
. $token .
')'
;
46
}
47
48
$queried_fields[] =
'('
. $field_query .
')'
;
49
}
50
51
if
($queried_fields !== []) {
52
$this->parsed_query = implode(
' OR '
, $queried_fields);
53
return
;
54
}
55
}
56
57
parent::parse();
58
}
59
60
public
function
setFields
(array $fields): void
61
{
62
$this->fields =
$fields
;
63
}
64
65
public
function
getFields
(): array
66
{
67
return
$this->fields
;
68
}
69
}
ilMailLuceneQueryParser\parse
parse()
Definition:
class.ilMailLuceneQueryParser.php:25
ilMailLuceneQueryParser\$fields
array $fields
Definition:
class.ilMailLuceneQueryParser.php:23
$token
$token
Definition:
xapitoken.php:70
ilMailLuceneQueryParser\setFields
setFields(array $fields)
Definition:
class.ilMailLuceneQueryParser.php:60
ilSearchSettings\OPERATOR_AND
const OPERATOR_AND
Definition:
class.ilSearchSettings.php:20
ilMailLuceneQueryParser\getFields
getFields()
Definition:
class.ilMailLuceneQueryParser.php:65
ilLuceneQueryParser
Lucene query parser.
Definition:
class.ilLuceneQueryParser.php:35
ilMailLuceneQueryParser
Definition:
class.ilMailLuceneQueryParser.php:21
ilSearchSettings\getInstance
static getInstance()
Definition:
class.ilSearchSettings.php:60
Services
Mail
classes
class.ilMailLuceneQueryParser.php
Generated on Wed Sep 10 2025 14:11:36 for ILIAS by
1.8.13 (using
Doxyfile
)