19 declare(strict_types=1);
59 $this->db = $DIC->database();
60 $this->query_parser = $qp_obj;
77 $valid_types[] = $type;
83 if (in_array($object_definition->
getGroupOfObj($type), $valid_types)) {
84 $grouped_types[] = $type;
88 return array_unique(array_merge($valid_types, $grouped_types));
93 $this->fields = $a_fields;
106 $this->object_types = $a_filter;
111 $this->id_filter = $a_id_filter;
124 if (!in_array($a_type, $this->object_types)) {
125 $this->object_types[] = $a_type;
143 if (count($this->fields) > 1) {
145 foreach ($this->fields as $field) {
146 $tmp_fields[] = array($field,
'text');
148 $complete_str = $this->db->concat($tmp_fields);
150 $complete_str = $this->fields[0];
155 foreach ($this->query_parser->getQuotedWords() as $word) {
156 $word = str_replace(
'\%',
'%', $word);
157 $word = str_replace(
'\_',
'_', $word);
160 $locate .= $this->db->locate($this->db->quote($word,
'text'), $complete_str);
161 $locate .= (
' found' . $counter++);
170 if ($this->query_parser->getCombination() ==
'or') {
175 foreach ($this->query_parser->getQuotedWords() as $word) {
176 $res_found =
"found" . $counter++;
177 $found[] = (
int) $row->$res_found;
ilQueryParser $query_parser
isSystemObject(string $obj_name)
checks if object type is a system object
isAdministrationObject(string $obj_name)
Check if administration object.
__prepareFound(object $row)
getValidObjectTypes(ilObjectDefinition $object_definition)
getGroupOfObj(string $obj_name)
Get Group of object type.
isRBACObject(string $obj_name)
get RBAC status by type returns true if object type is a RBAC object type
setFields(array $a_fields)
__construct(ilQueryParser $qp_obj)
isAllowedInRepository(string $obj_name)
checks if object type can be used in repository context
isSideBlock(string $obj_name)
Check, whether object type is a side block.
appendToFilter(string $a_type)
getAllObjects()
get all object types
setFilter(array $a_filter)
ilSearchResult $search_result
setIdFilter(array $a_id_filter)