#189 Display public events on the calendar
This commit is contained in:
parent
8e51429dce
commit
e7107996eb
20
calendar.php
20
calendar.php
@ -95,3 +95,23 @@ require_once(HESK_PATH . 'inc/header.inc.php');
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="popover-template" style="display: none">
|
||||||
|
<div>
|
||||||
|
<div class="popover-location">
|
||||||
|
<strong>Location</strong>
|
||||||
|
<span></span>
|
||||||
|
</div>
|
||||||
|
<div class="popover-category">
|
||||||
|
<strong>Category</strong>
|
||||||
|
<span></span>
|
||||||
|
</div>
|
||||||
|
<div class="popover-from">
|
||||||
|
<strong>From</strong>
|
||||||
|
<span></span>
|
||||||
|
</div>
|
||||||
|
<div class="popover-to">
|
||||||
|
<strong>To</strong>
|
||||||
|
<span></span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
28
internal-api/calendar/index.php
Normal file
28
internal-api/calendar/index.php
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
<?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_session_start();
|
||||||
|
hesk_load_internal_api_database_functions();
|
||||||
|
hesk_dbConnect();
|
||||||
|
|
||||||
|
$modsForHesk_settings = mfh_getSettings();
|
||||||
|
|
||||||
|
// Routing
|
||||||
|
$request_method = $_SERVER['REQUEST_METHOD'];
|
||||||
|
if ($request_method === 'GET') {
|
||||||
|
$start = hesk_GET('start');
|
||||||
|
$end = hesk_GET('end');
|
||||||
|
$events = get_events($start, $end, $hesk_settings, false);
|
||||||
|
|
||||||
|
return output($events);
|
||||||
|
}
|
||||||
|
|
||||||
|
return http_response_code(400);
|
@ -1,12 +1,16 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
function get_events($start, $end, $hesk_settings) {
|
function get_events($start, $end, $hesk_settings, $staff = true) {
|
||||||
$sql = "SELECT `events`.*, `categories`.`name` AS `category_name`, `categories`.`color` AS `category_color`
|
$sql = "SELECT `events`.*, `categories`.`name` AS `category_name`, `categories`.`color` AS `category_color`
|
||||||
FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "calendar_event` AS `events`
|
FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "calendar_event` AS `events`
|
||||||
INNER JOIN `" . hesk_dbEscape($hesk_settings['db_pfix']) . "categories` AS `categories`
|
INNER JOIN `" . hesk_dbEscape($hesk_settings['db_pfix']) . "categories` AS `categories`
|
||||||
ON `events`.`category` = `categories`.`id`
|
ON `events`.`category` = `categories`.`id`
|
||||||
WHERE `start` >= FROM_UNIXTIME(" . hesk_dbEscape($start)
|
WHERE `start` >= FROM_UNIXTIME(" . hesk_dbEscape($start)
|
||||||
. " / 1000) AND `end` <= FROM_UNIXTIME(" . hesk_dbEscape($end) . " / 1000)";
|
. " / 1000) AND `end` <= FROM_UNIXTIME(" . hesk_dbEscape($end) . " / 1000) AND `categories`.`usage` <> 1";
|
||||||
|
|
||||||
|
if (!$staff) {
|
||||||
|
$sql .= " AND `categories`.`type` = '0'";
|
||||||
|
}
|
||||||
|
|
||||||
$rs = hesk_dbQuery($sql);
|
$rs = hesk_dbQuery($sql);
|
||||||
|
|
||||||
@ -26,6 +30,7 @@ function get_events($start, $end, $hesk_settings) {
|
|||||||
$events[] = $event;
|
$events[] = $event;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($staff) {
|
||||||
$sql = "SELECT `trackid`, `subject`, `due_date`, `category`, `categories`.`name` AS `category_name`, `categories`.`color` AS `category_color`,
|
$sql = "SELECT `trackid`, `subject`, `due_date`, `category`, `categories`.`name` AS `category_name`, `categories`.`color` AS `category_color`,
|
||||||
CASE WHEN `due_date` < CURDATE() THEN 1 ELSE 0 END AS `overdue`
|
CASE WHEN `due_date` < CURDATE() THEN 1 ELSE 0 END AS `overdue`
|
||||||
FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "tickets` AS `tickets`
|
FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "tickets` AS `tickets`
|
||||||
@ -47,6 +52,7 @@ function get_events($start, $end, $hesk_settings) {
|
|||||||
$event['categoryColor'] = $row['overdue'] ? '#dd0000' : $row['category_color'];
|
$event['categoryColor'] = $row['overdue'] ? '#dd0000' : $row['category_color'];
|
||||||
$events[] = $event;
|
$events[] = $event;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return $events;
|
return $events;
|
||||||
}
|
}
|
||||||
|
@ -147,7 +147,7 @@ function buildEvent(id, dbObject) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
return {
|
var data = {
|
||||||
id: id,
|
id: id,
|
||||||
title: dbObject.title,
|
title: dbObject.title,
|
||||||
allDay: dbObject.allDay,
|
allDay: dbObject.allDay,
|
||||||
@ -164,6 +164,8 @@ function buildEvent(id, dbObject) {
|
|||||||
reminderValue: dbObject.reminderValue == null ? '' : dbObject.reminderValue,
|
reminderValue: dbObject.reminderValue == null ? '' : dbObject.reminderValue,
|
||||||
reminderUnits: dbObject.reminderUnits
|
reminderUnits: dbObject.reminderUnits
|
||||||
};
|
};
|
||||||
|
console.log(data);
|
||||||
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
function calculateTextColor(color) {
|
function calculateTextColor(color) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user