Add ability to retrieve events. Also change dates to epoch format
This commit is contained in:
parent
816a4413e1
commit
b9a1b7fe6b
@ -722,13 +722,13 @@ function execute260Scripts()
|
||||
`date_uploaded` TIMESTAMP NOT NULL) ENGINE = MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci");
|
||||
executeQuery("CREATE TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "calendar_event` (
|
||||
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||
`start` TIMESTAMP,
|
||||
`end` TIMESTAMP,
|
||||
`start` INT,
|
||||
`end` INT,
|
||||
`all_day` ENUM('0','1') NOT NULL,
|
||||
`name` VARCHAR(255) NOT NULL,
|
||||
`location` VARCHAR(255),
|
||||
`comments` MEDIUMTEXT,
|
||||
`create_ticket_date` TIMESTAMP NOT NULL,
|
||||
`create_ticket_date` INT,
|
||||
`create_ticket_assign_to` INT) ENGINE = MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci");
|
||||
executeQuery("UPDATE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` SET `Value` = '2.6.0' WHERE `Key` = 'modsForHeskVersion'");
|
||||
}
|
27
internal-api/admin/calendar/index.php
Normal file
27
internal-api/admin/calendar/index.php
Normal file
@ -0,0 +1,27 @@
|
||||
<?php
|
||||
define('IN_SCRIPT', 1);
|
||||
define('HESK_PATH', '../../../');
|
||||
define('INTERNAL_API_PATH', '../../');
|
||||
require_once(HESK_PATH . 'hesk_settings.inc.php');
|
||||
require_once(HESK_PATH . 'inc/common.inc.php');
|
||||
require_once(HESK_PATH . 'inc/attachments.inc.php');
|
||||
require_once(HESK_PATH . 'inc/posting_functions.inc.php');
|
||||
require_once(INTERNAL_API_PATH . 'core/output.php');
|
||||
require_once(INTERNAL_API_PATH . 'dao/calendar_dao.php');
|
||||
|
||||
hesk_load_internal_api_database_functions();
|
||||
hesk_dbConnect();
|
||||
|
||||
$modsForHesk_settings = mfh_getSettings();
|
||||
|
||||
// Routing
|
||||
$request_method = $_SERVER['REQUEST_METHOD'];
|
||||
if ($request_method === 'GET') {
|
||||
$start = $_GET['start'];
|
||||
$end = $_GET['end'];
|
||||
$events = get_events($start, $end, $hesk_settings);
|
||||
|
||||
return output($events);
|
||||
}
|
||||
|
||||
return http_response_code(400);
|
25
internal-api/dao/calendar_dao.php
Normal file
25
internal-api/dao/calendar_dao.php
Normal file
@ -0,0 +1,25 @@
|
||||
<?php
|
||||
|
||||
function get_events($start, $end, $hesk_settings) {
|
||||
|
||||
$sql = "SELECT * FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "calendar_event` WHERE `start` >= " . intval($start)
|
||||
. " AND `end` <= " . intval($end);
|
||||
|
||||
$rs = hesk_dbQuery($sql);
|
||||
|
||||
$events = [];
|
||||
while ($row = hesk_dbFetchAssoc($rs)) {
|
||||
$event['id'] = intval($row['id']);
|
||||
$event['start'] = intval($row['start']);
|
||||
$event['end'] = intval($row['end']);
|
||||
$event['all_day'] = $row['all_day'] ? true : false;
|
||||
$event['name'] = $row['name'];
|
||||
$event['location'] = $row['location'];
|
||||
$event['comments'] = $row['comments'];
|
||||
$event['create_ticket_date'] = $row['create_ticket_date'] != null ? intval($row['create_ticket_date']) : null;
|
||||
$event['create_ticket_assign_to'] = $row['create_ticket_assign_to'] != null ? intval($row['create_ticket_assign_to']) : null;
|
||||
$events[] = $event;
|
||||
}
|
||||
|
||||
return $events;
|
||||
}
|
@ -6,6 +6,21 @@ $(document).ready(function() {
|
||||
right: 'month,agendaWeek,agendaDay'
|
||||
},
|
||||
editable: true,
|
||||
eventLimit: true
|
||||
eventLimit: true,
|
||||
events: function(start, end, timezone, callback) {
|
||||
console.log('in events');
|
||||
$.ajax({
|
||||
url: getHelpdeskUrl() + '/internal-api/admin/calendar/?start=' + start + '&end=' + end,
|
||||
method: 'GET',
|
||||
dataType: 'json',
|
||||
success: function(data) {
|
||||
console.info(data);
|
||||
//callback w/events here!
|
||||
},
|
||||
error: function(data) {
|
||||
console.error(data);
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
Loading…
x
Reference in New Issue
Block a user