From: stronk7 Date: Sat, 11 Dec 2004 00:54:37 +0000 (+0000) Subject: Now search function look into aliases too. X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=69baafdea7415e1ab3c33d2c28d8046014631b9a;p=moodle.git Now search function look into aliases too. Bug 2242 (http://moodle.org/bugs/bug.php?op=show&bugid=2242) Merged from MOODLE_14_STABLE --- diff --git a/mod/glossary/sql.php b/mod/glossary/sql.php index 8ad7ea961b..d576088e83 100644 --- a/mod/glossary/sql.php +++ b/mod/glossary/sql.php @@ -167,10 +167,31 @@ switch ( $mode ) { case 'search': + //First, look in aliases (bug 2242) + $idaliases = ''; + $listaliases = array(); + $recaliases = get_records_sql ("SELECT al.id, al.entryid + FROM {$CFG->prefix}glossary_alias al, + {$CFG->prefix}glossary_entries ge + WHERE (ge.glossaryid = '$glossary->id' OR + ge.sourceglossaryid = '$glossary->id') AND + (ge.approved != 0 $userid) AND + ge.id = al.entryid AND + al.alias $LIKE '%$hook%'"); + if ($recaliases) { + foreach ($recaliases as $recalias) { + $listaliases[] = $recalias->entryid; + } + $idaliases = implode (',',$listaliases); + } $printpivot = 0; $where = "AND ( ge.concept $LIKE '%$hook%'"; + //Include aliases in resultset (if any) + if (!empty($idaliases)) { + $where .= " OR ge.id IN ($idaliases)"; + } if ( $fullsearch ) { - $where .= "OR ge.definition $LIKE '%$hook%')"; + $where .= " OR ge.definition $LIKE '%$hook%')"; } else { $where .= ")"; }