Skip to content

Commit 02fae33

Browse files
authored
Merge pull request #5962 from christianbeeznest/Ifa-22235
Gossary: Fix load glossary from base course if not found in session - refs BT#22235
2 parents a52de43 + ca83c91 commit 02fae33

File tree

1 file changed

+25
-12
lines changed

1 file changed

+25
-12
lines changed

main/inc/lib/glossary.lib.php

Lines changed: 25 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -82,8 +82,6 @@ public static function get_glossary_term_by_glossary_name($name)
8282
$table = Database::get_course_table(TABLE_GLOSSARY);
8383
$session_id = api_get_session_id();
8484
$course_id = api_get_course_int_id();
85-
$sessionCondition = api_get_session_condition($session_id);
86-
8785
$glossaryName = Security::remove_XSS($name);
8886
$glossaryName = api_convert_encoding($glossaryName, 'UTF-8', 'UTF-8');
8987
$glossaryName = trim($glossaryName);
@@ -95,16 +93,31 @@ public static function get_glossary_term_by_glossary_name($name)
9593
}
9694

9795
$sql = "SELECT * FROM $table
98-
WHERE
99-
c_id = $course_id AND
100-
(
101-
name LIKE '".Database::escape_string($glossaryName)."'
102-
OR
103-
name LIKE '".Database::escape_string($parsed)."'
104-
)
105-
$sessionCondition
106-
LIMIT 1
107-
";
96+
WHERE
97+
c_id = $course_id AND
98+
(
99+
name LIKE '".Database::escape_string($glossaryName)."' OR
100+
name LIKE '".Database::escape_string($parsed)."'
101+
) AND
102+
session_id = $session_id
103+
LIMIT 1";
104+
105+
$rs = Database::query($sql);
106+
107+
if (Database::num_rows($rs) > 0) {
108+
return Database::fetch_array($rs, 'ASSOC');
109+
}
110+
111+
$sql = "SELECT * FROM $table
112+
WHERE
113+
c_id = $course_id AND
114+
(
115+
name LIKE '".Database::escape_string($glossaryName)."' OR
116+
name LIKE '".Database::escape_string($parsed)."'
117+
) AND
118+
session_id IS NULL
119+
LIMIT 1";
120+
108121
$rs = Database::query($sql);
109122

110123
if (Database::num_rows($rs) > 0) {

0 commit comments

Comments
 (0)