Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?php
/**
* This file contains package_quiqqer_calendar_ajax_eventSearch
*/
/**
* Returns event list
*
* @param string $freeText - Freetext search, String to search
* @param string $params - JSON query params
*
* @return array
*/
QUI::$Ajax->registerFunction(
'package_quiqqer_eventcalendar_ajax_eventSearch',
function ($freeText) {
$PDO = QUI::getPDO();
$freeText = "%$freeText%";
$eventTableName = \QUI\Calendar\Handler::tableCalendarsEvents();
$statement = $PDO->prepare("
SELECT *
FROM {$eventTableName}
WHERE `title` LIKE :freeText
");
$statement->bindParam(':freeText', $freeText);
$statement->execute();
$eventsDataRaw = $statement->fetchAll(PDO::FETCH_ASSOC);
$events = array();
foreach ($eventsDataRaw as $eventData) {
$Event = \QUI\Calendar\Event::fromDatabaseArray($eventData);
$eventAsArray = $Event->toArray();
$eventAsArray['title'] = $Event->text;
$events[] = $eventAsArray;
}
return array_values($events);
},
array('freeText'),
'Permission::checkAdminUser'
);