aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorElmar Ludwig <elmar.ludwig@uni-osnabrueck.de>2023-10-18 10:12:05 +0000
committerElmar Ludwig <elmar.ludwig@uni-osnabrueck.de>2023-10-18 10:12:05 +0000
commit03201756a37bfde4c08475efa3cbbb88c7bba412 (patch)
treecaa967b803adc03ecf1824c85fc3f3069deb5482 /lib
parentb8125766ac9b958d1df4a2c39f5bbe016850abc1 (diff)
escape semester name and drop GlobalSearchBuzzwords, fixes #3366
Closes #3366 Merge request studip/studip!2290
Diffstat (limited to 'lib')
-rw-r--r--lib/classes/globalsearch/GlobalSearchBuzzwords.php92
-rw-r--r--lib/classes/globalsearch/GlobalSearchCourses.php2
-rw-r--r--lib/classes/globalsearch/GlobalSearchModules.php2
-rw-r--r--lib/classes/globalsearch/GlobalSearchMyCourses.php2
4 files changed, 3 insertions, 95 deletions
diff --git a/lib/classes/globalsearch/GlobalSearchBuzzwords.php b/lib/classes/globalsearch/GlobalSearchBuzzwords.php
deleted file mode 100644
index fb9294a..0000000
--- a/lib/classes/globalsearch/GlobalSearchBuzzwords.php
+++ /dev/null
@@ -1,92 +0,0 @@
-<?php
-/**
- * GlobalSearchModule for buzzwords: words that trigger some manual info,
- * e.g. links to Campus systems etc.
- *
- * @author Thomas Hackl <thomas.hackl@uni-passau.de>
- * @license http://www.gnu.org/licenses/gpl-2.0.html GPL version 2
- * @category Stud.IP
- * @since 4.1
- */
-class GlobalSearchBuzzwords extends SimpleORMap
-{
-
- /**
- * SimpleORMap metadata.
- * @param array $config configuration for SORM.
- */
- protected static function configure($config = [])
- {
- $config['db_table'] = 'globalsearch_buzzwords';
- $config['additional_fields']['rightsname'] = true;
- parent::configure($config);
- }
-
- /**
- * Gets the Stud.IP name for a given permission level.
- * @return false|int|string
- */
- public function getRightsname()
- {
- return array_search($this->rights, $GLOBALS['perm']->permissions);
- }
-
- /**
- * Returns the displayname for this module
- *
- * @return string
- */
- public static function getName()
- {
- return _('Stichwörter');
- }
-
- /**
- * Transforms the search request into an sql statement, that provides the id (same as getId) as type and
- * the object id, that is later passed to the filter.
- *
- * This function is required to make use of the mysql union parallelism
- *
- * @param string $search the input query string
- * @return String SQL Query to discover elements for the search
- */
- public static function getSQL($search, $filter, $limit)
- {
- if (!$search) {
- return null;
- }
-
- $query = DBManager::get()->quote("%{$search}%");
- $rights = $GLOBALS['perm']->permissions[$GLOBALS['perm']->get_perm()];
-
- return "SELECT SQL_CALC_FOUND_ROWS *
- FROM `globalsearch_buzzwords`
- WHERE `buzzwords` LIKE {$query}
- AND {$rights} >= rights";
- }
-
- /**
- * Returns an array of information for the found element. Following information (key: description) is necessary
- *
- * - name: The name of the object
- * - url: The url to send the user to when he clicks the link
- *
- * Additional informations are:
- *
- * - additional: Subtitle for the hit
- * - expand: Url if the user further expands the search
- * - img: Avatar for the
- *
- * @param array $buzz
- * @param string $search
- * @return array
- */
- public static function filter($buzz, $search)
- {
- return [
- 'name' => htmlReady($buzz['name']),
- 'url' => $buzz['url'],
- 'additional' => $buzz['subtitle']
- ];
- }
-}
diff --git a/lib/classes/globalsearch/GlobalSearchCourses.php b/lib/classes/globalsearch/GlobalSearchCourses.php
index ed124da..3725484 100644
--- a/lib/classes/globalsearch/GlobalSearchCourses.php
+++ b/lib/classes/globalsearch/GlobalSearchCourses.php
@@ -216,7 +216,7 @@ class GlobalSearchCourses extends GlobalSearchModule implements GlobalSearchFull
'number' => self::mark($course->veranstaltungsnummer, $search),
'name' => self::mark($course->getFullname(), $search),
'url' => URLHelper::getURL("dispatch.php/course/details/index/{$course->id}", [], true),
- 'date' => $semester->short_name,
+ 'date' => htmlReady($semester->short_name),
'dates' => $turnus_string,
'has_children' => count($course->children) > 0,
'children' => $result_children,
diff --git a/lib/classes/globalsearch/GlobalSearchModules.php b/lib/classes/globalsearch/GlobalSearchModules.php
index 66d5317..b9f8720 100644
--- a/lib/classes/globalsearch/GlobalSearchModules.php
+++ b/lib/classes/globalsearch/GlobalSearchModules.php
@@ -141,7 +141,7 @@ class GlobalSearchModules extends GlobalSearchModule
true
),
'img' => Icon::create('learnmodule', $icon_role)->asImagePath(),
- 'date' => $duration,
+ 'date' => htmlReady($duration),
'expand' => self::getSearchURL($search),
'additional' => $additional,
];
diff --git a/lib/classes/globalsearch/GlobalSearchMyCourses.php b/lib/classes/globalsearch/GlobalSearchMyCourses.php
index acafde5..124fb17 100644
--- a/lib/classes/globalsearch/GlobalSearchMyCourses.php
+++ b/lib/classes/globalsearch/GlobalSearchMyCourses.php
@@ -153,7 +153,7 @@ class GlobalSearchMyCourses extends GlobalSearchModule
'number' => self::mark($course->veranstaltungsnummer, $search),
'name' => self::mark($course->getFullname(), $search),
'url' => URLHelper::getURL('seminar_main.php', ['cid' => $course->id], true),
- 'date' => $semester->short_name,
+ 'date' => htmlReady($semester->short_name),
'dates' => $turnus_string,
'has_children' => count($course->children) > 0,
'children' => $result_children,