ILIAS
release_5-3 Revision v5.3.23-19-g915713cf615
◀ ilDoc Overview
class.ilLMContentSearch.php
Go to the documentation of this file.
1
<?php
2
/*
3
+-----------------------------------------------------------------------------+
4
| ILIAS open source |
5
+-----------------------------------------------------------------------------+
6
| Copyright (c) 1998-2001 ILIAS open source, University of Cologne |
7
| |
8
| This program is free software; you can redistribute it and/or |
9
| modify it under the terms of the GNU General Public License |
10
| as published by the Free Software Foundation; either version 2 |
11
| of the License, or (at your option) any later version. |
12
| |
13
| This program is distributed in the hope that it will be useful, |
14
| but WITHOUT ANY WARRANTY; without even the implied warranty of |
15
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
16
| GNU General Public License for more details. |
17
| |
18
| You should have received a copy of the GNU General Public License |
19
| along with this program; if not, write to the Free Software |
20
| Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
21
+-----------------------------------------------------------------------------+
22
*/
23
35
include_once
'Services/Search/classes/class.ilAbstractSearch.php'
;
36
37
class
ilLMContentSearch
extends
ilAbstractSearch
38
{
39
public
function
performSearch
()
40
{
41
$this->
setFields
(
array
(
'content'
));
42
43
$in
= $this->
__createInStatement
();
44
$where = $this->__createWhereCondition();
45
$locate = $this->
__createLocateString
();
46
47
$query
=
"SELECT page_id,parent_id,parent_type "
.
48
$locate .
49
"FROM page_object, lm_data "
.
50
$where .
51
"AND obj_id = page_id "
.
52
$in
;
53
54
55
$res
= $this->db->query(
$query
);
56
while
(
$row
=
$res
->fetchRow(
ilDBConstants::FETCHMODE_OBJECT
)) {
57
// workaround to get term ids for definition ids (which is not the same!!!)
58
if
(
$row
->parent_type ==
"gdf"
) {
59
// it is not a page id anymore now, it is a term id
60
include_once(
"./Modules/Glossary/classes/class.ilGlossaryDefinition.php"
);
61
$row
->page_id =
ilGlossaryDefinition::_lookupTermId
(
$row
->page_id);
62
}
63
64
$this->search_result->addEntry(
$row
->parent_id,
$row
->parent_type, $this->__prepareFound(
$row
),
$row
->page_id);
65
}
66
67
return
$this->search_result
;
68
}
69
70
71
72
// Protected can be overwritten in Like or Fulltext classes
73
public
function
__createInStatement
()
74
{
75
global
$ilDB
;
76
77
if
(!$this->
getFilter
() and !$this->
getIdFilter
()) {
78
return
''
;
79
}
80
81
$in
=
''
;
82
if
($this->
getFilter
()) {
83
$type
=
"('"
;
84
$type
.= implode(
"','"
, $this->
getFilter
());
85
$type
.=
"')"
;
86
87
$in
=
" AND parent_type IN "
.
$type
.
' '
;
88
}
89
if
($this->
getIdFilter
()) {
90
$in
.=
' AND '
;
91
$in
.= $ilDB->in(
'parent_id'
, $this->
getIdFilter
(),
false
,
'integer'
);
92
}
93
return
$in
;
94
}
95
96
public
function
__createAndCondition
()
97
{
98
echo
"Overwrite me!"
;
99
}
100
}
ilAbstractSearch
Definition:
class.ilAbstractSearch.php:16
$type
$type
Definition:
proxy_ylocal.php:10
ilAbstractSearch\__createLocateString
__createLocateString()
build locate string in case of AND search
Definition:
class.ilAbstractSearch.php:141
ilAbstractSearch\setFields
setFields($a_fields)
Set fields to search.
Definition:
class.ilAbstractSearch.php:62
ilAbstractSearch\getFilter
getFilter()
get object type to search in
Definition:
class.ilAbstractSearch.php:131
ilGlossaryDefinition\_lookupTermId
static _lookupTermId($a_def_id)
Looks up term id for a definition id.
Definition:
class.ilGlossaryDefinition.php:627
$res
foreach($_POST as $key=> $value) $res
Definition:
save_question_post_data.php:15
ilLMContentSearch\__createAndCondition
__createAndCondition()
Definition:
class.ilLMContentSearch.php:96
ilLMContentSearch\__createInStatement
__createInStatement()
Definition:
class.ilLMContentSearch.php:73
ilAbstractSearch\getIdFilter
getIdFilter()
Get Id filter.
Definition:
class.ilAbstractSearch.php:103
$query
$query
Definition:
proxy_ylocal.php:13
array
Create styles array
The data for the language used.
Definition:
40duplicateStyle.php:19
ilLMContentSearch
Definition:
class.ilLMContentSearch.php:37
$in
if(php_sapi_name() !='cli') $in
Definition:
Utf8Test.php:37
ilLMContentSearch\performSearch
performSearch()
Definition:
class.ilLMContentSearch.php:39
$ilDB
global $ilDB
Definition:
storeScorm2004.php:16
ilDBConstants\FETCHMODE_OBJECT
const FETCHMODE_OBJECT
Definition:
class.ilDBConstants.php:13
$row
$row
Definition:
10autofilter-selection-1.php:74
ilAbstractSearch\$search_result
$search_result
Definition:
class.ilAbstractSearch.php:30
Services
Search
classes
class.ilLMContentSearch.php
Generated on Sat Jan 18 2025 19:01:37 for ILIAS by
1.8.13 (using
Doxyfile
)