A bunch of calendar fixes
This commit is contained in:
parent
4a09d508b8
commit
1df4e7775a
@ -671,8 +671,10 @@ require_once(HESK_PATH . 'inc/show_admin_nav.inc.php');
|
||||
<div id="readonly-due-date">
|
||||
<span id="due-date">
|
||||
<?php
|
||||
$due_date = hesk_date($ticket['due_date'], false);
|
||||
$current_date = hesk_date();
|
||||
$due_date = 'None';
|
||||
if ($ticket['due_date'] != null) {
|
||||
$due_date = hesk_date($ticket['due_date'], false);
|
||||
}
|
||||
echo substr($due_date, 0, 10);
|
||||
?></span><!--<span id="overdue">
|
||||
<?php
|
||||
@ -685,9 +687,10 @@ require_once(HESK_PATH . 'inc/show_admin_nav.inc.php');
|
||||
<button id="due-date-button" class="btn btn-default btn-sm">Change</button>
|
||||
</div>
|
||||
<div id="editable-due-date" style="display: none">
|
||||
<input type="text" class="form-control datepicker" name="due-date" value="<?php echo substr($due_date, 0, 10); ?>"><br>
|
||||
<input type="text" class="form-control datepicker" name="due-date" value="<?php echo $due_date == 'None' ? '' : substr($due_date, 0, 10); ?>"><br>
|
||||
<div class="btn-group">
|
||||
<button id="submit" class="btn btn-primary">Save</button>
|
||||
<button id="clear" class="btn btn-danger">No Due Date</button>
|
||||
<button id="cancel" class="btn btn-default">Cancel</button>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -77,7 +77,7 @@ require_once(HESK_PATH . 'inc/show_admin_nav.inc.php');
|
||||
<div class="checkbox">
|
||||
<input type="checkbox" name="category-toggle" value="<?php echo $category['id']; ?>" checked>
|
||||
</div>
|
||||
<span class="label background-volitaile category-label" style="<?php echo $category['css_style']; ?>">
|
||||
<span class="label background-volatile category-label" style="<?php echo $category['css_style']; ?>">
|
||||
<?php echo $category['name']; ?>
|
||||
</span>
|
||||
</li>
|
||||
|
@ -728,7 +728,7 @@ function execute260Scripts()
|
||||
`name` VARCHAR(255) NOT NULL,
|
||||
`location` VARCHAR(255),
|
||||
`comments` MEDIUMTEXT,
|
||||
`category` INT) ENGINE = MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci");
|
||||
`category` INT NOT NULL) ENGINE = MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci");
|
||||
executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "tickets` ADD COLUMN `due_date` DATETIME");
|
||||
executeQuery("ALTER TABLE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "categories` ADD COLUMN `color` VARCHAR(7)");
|
||||
executeQuery("UPDATE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "settings` SET `Value` = '2.6.0' WHERE `Key` = 'modsForHeskVersion'");
|
||||
|
@ -44,6 +44,7 @@ if ($request_method === 'GET') {
|
||||
}
|
||||
$event['id'] = hesk_POST('id');
|
||||
$event['title'] = hesk_POST('title');
|
||||
$event['location'] = hesk_POST('location');
|
||||
$event['start'] = hesk_POST('startTime');
|
||||
$event['end'] = hesk_POST('endTime');
|
||||
$event['all_day'] = hesk_POST('allDay') === 'true';
|
||||
|
@ -26,7 +26,8 @@ function get_events($start, $end, $hesk_settings) {
|
||||
$events[] = $event;
|
||||
}
|
||||
|
||||
$sql = "SELECT `trackid`, `subject`, `due_date`, `category`, `categories`.`name` AS `category_name`
|
||||
$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`
|
||||
FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "tickets` AS `tickets`
|
||||
INNER JOIN `" . hesk_dbEscape($hesk_settings['db_pfix']) . "categories` AS `categories`
|
||||
ON `categories`.`id` = `tickets`.`category`
|
||||
@ -43,7 +44,7 @@ function get_events($start, $end, $hesk_settings) {
|
||||
$event['url'] = $hesk_settings['hesk_url'] . '/' . $hesk_settings['admin_dir'] . '/admin_ticket.php?track=' . $event['trackingId'];
|
||||
$event['categoryId'] = $row['category'];
|
||||
$event['categoryName'] = $row['category_name'];
|
||||
$event['categoryColor'] = 'green';
|
||||
$event['categoryColor'] = $row['overdue'] ? '#dd0000' : $row['category_color'];
|
||||
$events[] = $event;
|
||||
}
|
||||
|
||||
|
@ -17,7 +17,7 @@ $(document).ready(function() {
|
||||
var newDueDate = $editableDueDateContainer.find('input[type="text"][name="due-date"]').val();
|
||||
$.ajax({
|
||||
method: 'POST',
|
||||
url: getHelpdeskUrl() + '/internal-api/admin/calendar',
|
||||
url: getHelpdeskUrl() + '/internal-api/admin/calendar/',
|
||||
data: {
|
||||
trackingId: $('input[type="hidden"][name="track"]').val(),
|
||||
action: 'update-ticket',
|
||||
|
@ -43,7 +43,7 @@ $(document).ready(function() {
|
||||
if (event.type === 'TICKET') {
|
||||
$.ajax({
|
||||
method: 'POST',
|
||||
url: getHelpdeskUrl() + '/internal-api/admin/calendar',
|
||||
url: getHelpdeskUrl() + '/internal-api/admin/calendar/',
|
||||
data: {
|
||||
trackingId: event.trackingId,
|
||||
action: 'update-ticket',
|
||||
@ -80,7 +80,7 @@ $(document).ready(function() {
|
||||
};
|
||||
$.ajax({
|
||||
method: 'POST',
|
||||
url: getHelpdeskUrl() + '/internal-api/admin/calendar',
|
||||
url: getHelpdeskUrl() + '/internal-api/admin/calendar/',
|
||||
data: data,
|
||||
success: function() {
|
||||
$.jGrowl('Event successfully updated', { theme: 'alert-success', closeTemplate: '' });
|
||||
@ -167,7 +167,7 @@ $(document).ready(function() {
|
||||
|
||||
$.ajax({
|
||||
method: 'POST',
|
||||
url: getHelpdeskUrl() + '/internal-api/admin/calendar',
|
||||
url: getHelpdeskUrl() + '/internal-api/admin/calendar/',
|
||||
data: data,
|
||||
success: function() {
|
||||
removeFromCalendar(data.id);
|
||||
@ -204,12 +204,13 @@ $(document).ready(function() {
|
||||
categoryId: $('#create-form select[name="category"]').val(),
|
||||
action: 'create',
|
||||
type: 'CALENDAR',
|
||||
categoryColor: $('#create-form select[name="category"] :selected').attr('data-color')
|
||||
categoryColor: $('#create-form select[name="category"] :selected').attr('data-color'),
|
||||
categoryName: $('#create-form select[name="category"] :selected').text().trim()
|
||||
};
|
||||
|
||||
$.ajax({
|
||||
method: 'POST',
|
||||
url: getHelpdeskUrl() + '/internal-api/admin/calendar',
|
||||
url: getHelpdeskUrl() + '/internal-api/admin/calendar/',
|
||||
data: data,
|
||||
success: function(id) {
|
||||
addToCalendar(id, data, "Event successfully created");
|
||||
@ -246,12 +247,14 @@ $(document).ready(function() {
|
||||
allDay: allDay,
|
||||
comments: $form.find('textarea[name="comments"]').val(),
|
||||
categoryId: $form.find('select[name="category"]').val(),
|
||||
categoryColor: $form.find('select[name="category"] :selected').attr('data-color'),
|
||||
categoryName: $form.find('select[name="category"] :selected').text().trim(),
|
||||
action: 'update'
|
||||
};
|
||||
|
||||
$.ajax({
|
||||
method: 'POST',
|
||||
url: getHelpdeskUrl() + '/internal-api/admin/calendar',
|
||||
url: getHelpdeskUrl() + '/internal-api/admin/calendar/',
|
||||
data: data,
|
||||
success: function() {
|
||||
removeFromCalendar(data.id);
|
||||
@ -290,11 +293,12 @@ function buildEvent(id, dbObject) {
|
||||
trackingId: dbObject.trackingId,
|
||||
start: moment(dbObject.startTime),
|
||||
url: dbObject.url,
|
||||
color: endOfDay.isBefore() ? '#dd0000' : 'green',
|
||||
color: dbObject.categoryColor === '' || dbObject.categoryColor === null ? '#fff' : dbObject.categoryColor,
|
||||
allDay: true,
|
||||
type: dbObject.type,
|
||||
categoryId: dbObject.categoryId,
|
||||
className: 'category-' + dbObject.categoryId
|
||||
className: 'category-' + dbObject.categoryId,
|
||||
textColor: calculateTextColor(dbObject.categoryColor)
|
||||
};
|
||||
}
|
||||
|
||||
@ -310,12 +314,16 @@ function buildEvent(id, dbObject) {
|
||||
categoryId: dbObject.categoryId,
|
||||
categoryName: dbObject.categoryName,
|
||||
className: 'category-' + dbObject.categoryId,
|
||||
color: dbObject.categoryColor,
|
||||
color: dbObject.categoryColor === '' || dbObject.categoryColor === null ? '#fff' : dbObject.categoryColor,
|
||||
textColor: calculateTextColor(dbObject.categoryColor)
|
||||
};
|
||||
}
|
||||
|
||||
function calculateTextColor(color) {
|
||||
if (color === null || color === '') {
|
||||
return 'black';
|
||||
}
|
||||
|
||||
var red = 0;
|
||||
var green = 0;
|
||||
var blue = 0;
|
||||
@ -394,6 +402,7 @@ function displayEditModal(date) {
|
||||
createTicketLink += encodeURI(' @ ' + date.location);
|
||||
}
|
||||
createTicketLink += encodeURI('&message=' + date.comments);
|
||||
createTicketLink += encodeURI('&category=' + date.categoryId);
|
||||
|
||||
$form.find('#create-ticket-button').prop('href', createTicketLink);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user