CRUD Operations are complete
This commit is contained in:
parent
98984ede80
commit
ff5d4a6153
@ -100,9 +100,7 @@ require_once(HESK_PATH . 'inc/show_admin_nav.inc.php');
|
|||||||
title="The location of the event"></i>
|
title="The location of the event"></i>
|
||||||
</label>
|
</label>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
<input type="text" name="location" class="form-control" placeholder="Location"
|
<input type="text" name="location" class="form-control" placeholder="Location">
|
||||||
data-error="<?php echo htmlspecialchars($hesklang['this_field_is_required']); ?>"
|
|
||||||
required>
|
|
||||||
<div class="help-block with-errors"></div>
|
<div class="help-block with-errors"></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -286,9 +284,7 @@ require_once(HESK_PATH . 'inc/show_admin_nav.inc.php');
|
|||||||
title="The location of the event"></i>
|
title="The location of the event"></i>
|
||||||
</label>
|
</label>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
<input type="text" name="location" class="form-control" placeholder="Location"
|
<input type="text" name="location" class="form-control" placeholder="Location">
|
||||||
data-error="<?php echo htmlspecialchars($hesklang['this_field_is_required']); ?>"
|
|
||||||
required>
|
|
||||||
<div class="help-block with-errors"></div>
|
<div class="help-block with-errors"></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -30,7 +30,7 @@ if ($request_method === 'GET') {
|
|||||||
$event['location'] = hesk_POST('location');
|
$event['location'] = hesk_POST('location');
|
||||||
$event['start'] = hesk_POST('startTime');
|
$event['start'] = hesk_POST('startTime');
|
||||||
$event['end'] = hesk_POST('endTime');
|
$event['end'] = hesk_POST('endTime');
|
||||||
$event['all_day'] = hesk_POST('allDay') === "true" ? true : false;
|
$event['all_day'] = hesk_POST('allDay') === 'true';
|
||||||
$event['comments'] = hesk_POST('comments');
|
$event['comments'] = hesk_POST('comments');
|
||||||
$event['create_ticket_date'] = hesk_POST('createTicketDate');
|
$event['create_ticket_date'] = hesk_POST('createTicketDate');
|
||||||
$event['assign_to'] = hesk_POST('assignTo');
|
$event['assign_to'] = hesk_POST('assignTo');
|
||||||
@ -39,7 +39,20 @@ if ($request_method === 'GET') {
|
|||||||
|
|
||||||
return output($id);
|
return output($id);
|
||||||
} elseif ($action === 'update') {
|
} elseif ($action === 'update') {
|
||||||
//TODO
|
if (!isset($_POST['id'])) {
|
||||||
|
mfh_log_error('internal-api/admin/calendar', 'Unable to update an event as it has no ID.', $_SESSION['id']);
|
||||||
|
return http_response_code(400);
|
||||||
|
}
|
||||||
|
$event['id'] = hesk_POST('id');
|
||||||
|
$event['title'] = hesk_POST('title');
|
||||||
|
$event['start'] = hesk_POST('startTime');
|
||||||
|
$event['end'] = hesk_POST('endTime');
|
||||||
|
$event['all_day'] = hesk_POST('allDay') === 'true';
|
||||||
|
$event['comments'] = hesk_POST('comments');
|
||||||
|
$event['create_ticket_date'] = hesk_POST('createTicketDate');
|
||||||
|
$event['assign_to'] = hesk_POST('assignTo');
|
||||||
|
|
||||||
|
update_event($event, $hesk_settings);
|
||||||
|
|
||||||
return http_response_code(200);
|
return http_response_code(200);
|
||||||
} elseif ($action === 'delete') {
|
} elseif ($action === 'delete') {
|
||||||
|
@ -44,6 +44,24 @@ function create_event($event, $hesk_settings) {
|
|||||||
return hesk_dbInsertID();
|
return hesk_dbInsertID();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function update_event($event, $hesk_settings) {
|
||||||
|
$event['start'] = date('Y-m-d H:i:s', strtotime($event['start']));
|
||||||
|
$event['end'] = date('Y-m-d H:i:s', strtotime($event['end']));
|
||||||
|
if ($event['create_ticket_date'] != null) {
|
||||||
|
$event['create_ticket_date'] = date('Y-m-d H:i:s', strtotime($event['create_ticket_date']));
|
||||||
|
}
|
||||||
|
$event['all_day'] = $event['all_day'] ? 1 : 0;
|
||||||
|
$event['assign_to'] = $event['assign_to'] != null ? intval($event['assign_to']) : 'NULL';
|
||||||
|
|
||||||
|
$sql = "UPDATE `" . hesk_dbEscape($hesk_settings['db_pfix']) . "calendar_event` SET `start` = '" . hesk_dbEscape($event['start'])
|
||||||
|
. "', `end` = '" . hesk_dbEscape($event['end']) . "', `all_day` = '" . hesk_dbEscape($event['all_day']) . "', `name` = '"
|
||||||
|
. hesk_dbEscape($event['title']) . "', `location` = '" . hesk_dbEscape($event['location']) . "', `comments` = '"
|
||||||
|
. hesk_dbEscape($event['comments']) . "', `create_ticket_date` = '" . hesk_dbEscape($event['create_ticket_date'])
|
||||||
|
. "', `create_ticket_assign_to` = " . $event['assign_to'] . " WHERE `id` = " . intval($event['id']);
|
||||||
|
|
||||||
|
hesk_dbQuery($sql);
|
||||||
|
}
|
||||||
|
|
||||||
function delete_event($id, $hesk_settings) {
|
function delete_event($id, $hesk_settings) {
|
||||||
$sql = "DELETE FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "calendar_event` WHERE `id` = " . intval($id);
|
$sql = "DELETE FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "calendar_event` WHERE `id` = " . intval($id);
|
||||||
|
|
||||||
|
@ -21,8 +21,8 @@ $(document).ready(function() {
|
|||||||
});
|
});
|
||||||
callback(events);
|
callback(events);
|
||||||
},
|
},
|
||||||
error: function(data) {
|
error: function() {
|
||||||
console.error(data);
|
$.jGrowl('An error occurred when trying to load events', { theme: 'alert-danger', closeTemplate: '' });
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
@ -66,8 +66,8 @@ $(document).ready(function() {
|
|||||||
success: function() {
|
success: function() {
|
||||||
$.jGrowl('Event successfully updated', { theme: 'alert-success', closeTemplate: '' });
|
$.jGrowl('Event successfully updated', { theme: 'alert-success', closeTemplate: '' });
|
||||||
},
|
},
|
||||||
error: function(data) {
|
error: function() {
|
||||||
console.error(data);
|
$.jGrowl('An error occurred when trying to update the event', { theme: 'alert-danger', closeTemplate: '' });
|
||||||
revertFunc();
|
revertFunc();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@ -104,7 +104,7 @@ $(document).ready(function() {
|
|||||||
$('#edit-event-modal').modal('hide');
|
$('#edit-event-modal').modal('hide');
|
||||||
},
|
},
|
||||||
error: function(data) {
|
error: function(data) {
|
||||||
console.error(data);
|
$.jGrowl('An error occurred when trying to delete the event', { theme: 'alert-danger', closeTemplate: '' });
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@ -154,7 +154,7 @@ $(document).ready(function() {
|
|||||||
$('#create-event-modal').modal('hide');
|
$('#create-event-modal').modal('hide');
|
||||||
},
|
},
|
||||||
error: function(data) {
|
error: function(data) {
|
||||||
console.error(data);
|
$.jGrowl('An error occurred when trying to create the event', { theme: 'alert-danger', closeTemplate: '' });
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@ -207,7 +207,7 @@ $(document).ready(function() {
|
|||||||
$('#edit-event-modal').modal('hide');
|
$('#edit-event-modal').modal('hide');
|
||||||
},
|
},
|
||||||
error: function(data) {
|
error: function(data) {
|
||||||
console.error(data);
|
$.jGrowl('An error occurred when trying to update the event', { theme: 'alert-danger', closeTemplate: '' });
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@ -259,10 +259,10 @@ function displayCreateModal(date, viewName) {
|
|||||||
} else {
|
} else {
|
||||||
$form.find('input[name="all-day"]').prop('checked', false).end()
|
$form.find('input[name="all-day"]').prop('checked', false).end()
|
||||||
.find('.clockpicker').show();
|
.find('.clockpicker').show();
|
||||||
var formattedTime = date.format('H:mm:ss');
|
var formattedTime = date.format('HH:mm:ss');
|
||||||
var selectedHour = date.hour();
|
var selectedHour = date.hour();
|
||||||
$modal.find('input[name="start-time"]').val(formattedTime).end()
|
$modal.find('input[name="start-time"]').val(formattedTime).end()
|
||||||
.find('input[name="end-time"]').val(date.hour(selectedHour + 1).format('H:mm:ss'));
|
.find('input[name="end-time"]').val(date.hour(selectedHour + 1).format('HH:mm:ss'));
|
||||||
}
|
}
|
||||||
|
|
||||||
$modal.modal('show');
|
$modal.modal('show');
|
||||||
@ -283,8 +283,8 @@ function displayEditModal(date) {
|
|||||||
} else {
|
} else {
|
||||||
$form.find('input[name="all-day"]').prop('checked', false).end()
|
$form.find('input[name="all-day"]').prop('checked', false).end()
|
||||||
.find('.clockpicker').show().end()
|
.find('.clockpicker').show().end()
|
||||||
.find('input[name="start-time"]').val(date.start.format('H:mm:ss')).end()
|
.find('input[name="start-time"]').val(date.start.format('HH:mm:ss')).end()
|
||||||
.find('input[name="end-time"]').val(date.end.format('H:mm:ss')).end();
|
.find('input[name="end-time"]').val(date.end.format('HH:mm:ss')).end();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (date.createTicketDate != null) {
|
if (date.createTicketDate != null) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user