19declare(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);
170 if ($this->query_parser->getCombination() ==
'or') {
175 foreach ($this->query_parser->getQuotedWords() as $word) {
177 $found[] = (
int) $row->$res_found;
__prepareFound(object $row)
ilQueryParser $query_parser
setIdFilter(array $a_id_filter)
setFields(array $a_fields)
appendToFilter(string $a_type)
ilSearchResult $search_result
getValidObjectTypes(ilObjectDefinition $object_definition)
__construct(ilQueryParser $qp_obj)
setFilter(array $a_filter)
parses the objects.xml it handles the xml-description of all ilias objects
isSideBlock(string $obj_name)
Check, whether object type is a side block.
isSystemObject(string $obj_name)
checks if object type is a system object
isAllowedInRepository(string $obj_name)
checks if object type can be used in repository context
getGroupOfObj(string $obj_name)
Get Group of object type.
isAdministrationObject(string $obj_name)
Check if administration object.
isRBACObject(string $obj_name)
get RBAC status by type returns true if object type is a RBAC object type
getAllObjects()
get all object types
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...