35 var
$object_types =
array(
'cat',
'dbk',
'crs',
'fold',
'frm',
'grp',
'lm',
'sahs',
'glo',
'mep',
'htlm',
'exc',
'file',
'qpl',
'tst',
'svy',
'spl',
36 'chat',
'webr',
'mcst',
'sess',
'pg',
'st',
'wiki',
'book');
49 $this->query_parser = $qp_obj;
52 include_once
'Services/Search/classes/class.ilSearchResult.php';
84 if(is_array($a_filter))
86 $this->object_types = $a_filter;
97 $this->id_filter = $a_id_filter;
116 if(is_array($this->object_types))
118 if(in_array(
$a_type,$this->object_types))
123 $this->object_types[] =
$a_type;
136 return $this->object_types ? $this->object_types :
array();
148 if($this->query_parser->getCombination() ==
'or')
152 if(count($this->
fields) > 1)
154 foreach($this->
fields as $field)
156 $tmp_fields[] =
array($field,
'text');
158 $complete_str = $ilDB->concat($tmp_fields);
168 $complete_str = $this->
fields[0];
172 foreach($this->query_parser->getQuotedWords() as $word)
175 $locate .= $ilDB->locate($ilDB->quote($word,
'text'),$complete_str);
176 $locate .= (
' found'.$counter++);
178 #$locate .= (", LOCATE('".$word."',".$complete_str.") "); 179 #$locate .= ("as found".$counter++." "); 187 if($this->query_parser->getCombination() ==
'or')
192 foreach($this->query_parser->getQuotedWords() as $word)
194 $res_found =
"found".$counter++;
195 $found[] =
$row->$res_found;
197 return $found ? $found :
array();
202 echo "Should be overwritten.";
getFields()
Get fields to search.
__construct($qp_obj)
Constructor public.
__createLocateString()
build locate string in case of AND search
setIdFilter($a_id_filter)
Set id filter Filters search by given object id.
setFilter($a_filter)
set object type to search in
setFields($a_fields)
Set fields to search.
getFilter()
get object type to search in
getIdFilter()
Get Id filter.
Create styles array
The data for the language used.
appendToFilter($a_type)
Append object type to filter.