aboutsummaryrefslogtreecommitdiff
path: root/app/controllers
diff options
context:
space:
mode:
authorRon Lucke <lucke@elan-ev.de>2023-09-06 14:47:26 +0000
committerRon Lucke <lucke@elan-ev.de>2025-08-18 09:15:12 +0200
commit91d949f6b1d09db1b4b7d91c188d3f0c868790a1 (patch)
treea947b767bcb408828e825c536697a7deeef175f0 /app/controllers
parenta59a2df233873b1fcb6806f1ad996310305b8f21 (diff)
fix quotes issuebiest-2813
Diffstat (limited to 'app/controllers')
-rw-r--r--app/controllers/courseware/local_search.php14
1 files changed, 11 insertions, 3 deletions
diff --git a/app/controllers/courseware/local_search.php b/app/controllers/courseware/local_search.php
index 6441471..f425fa8 100644
--- a/app/controllers/courseware/local_search.php
+++ b/app/controllers/courseware/local_search.php
@@ -18,9 +18,17 @@ class Courseware_LocalSearchController extends AuthenticatedController
$filters = json_decode(Request::get('filters'));
$range_id = $filters->rangeId;
$search = Request::get('search');
- $payload_search = str_replace('\\u00', '\\\\u00', json_encode($search));
- $payload_search = str_replace('\"', '"', $payload_search);
- $payload_search = substr($payload_search, 1, -1);
+ $payload_search = substr(str_replace('\\u00', '\\\\u00', json_encode($search)), 1, -1);
+
+ if (str_starts_with($payload_search, '\\\\u00')) {
+ $payload_search = substr($payload_search, 1, strlen($payload_search));
+ }
+ if (str_starts_with($payload_search, '\"')) {
+ $payload_search = '"' . substr($payload_search, 2, strlen($payload_search));
+ }
+ if (str_ends_with($payload_search, '\"')) {
+ $payload_search = substr($payload_search, 0, -2) . '\\\\"';
+ }
$query = DBManager::get()->quote("%{$search}%");
$payload_query = DBManager::get()->quote("%{$payload_search}%");