CRUD Operations are complete

merge-requests/1/head
Mike Koch 8 years ago
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>
</label>
<div class="col-sm-9">
<input type="text" name="location" class="form-control" placeholder="Location"
data-error="<?php echo htmlspecialchars($hesklang['this_field_is_required']); ?>"
required>
<input type="text" name="location" class="form-control" placeholder="Location">
<div class="help-block with-errors"></div>
</div>
</div>
@ -286,9 +284,7 @@ require_once(HESK_PATH . 'inc/show_admin_nav.inc.php');
title="The location of the event"></i>
</label>
<div class="col-sm-9">
<input type="text" name="location" class="form-control" placeholder="Location"
data-error="<?php echo htmlspecialchars($hesklang['this_field_is_required']); ?>"
required>
<input type="text" name="location" class="form-control" placeholder="Location">
<div class="help-block with-errors"></div>
</div>
</div>

@ -30,7 +30,7 @@ if ($request_method === 'GET') {
$event['location'] = hesk_POST('location');
$event['start'] = hesk_POST('startTime');
$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['create_ticket_date'] = hesk_POST('createTicketDate');
$event['assign_to'] = hesk_POST('assignTo');
@ -39,7 +39,20 @@ if ($request_method === 'GET') {
return output($id);
} 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);
} elseif ($action === 'delete') {

@ -44,6 +44,24 @@ function create_event($event, $hesk_settings) {
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) {
$sql = "DELETE FROM `" . hesk_dbEscape($hesk_settings['db_pfix']) . "calendar_event` WHERE `id` = " . intval($id);

@ -21,8 +21,8 @@ $(document).ready(function() {
});
callback(events);
},
error: function(data) {
console.error(data);
error: function() {
$.jGrowl('An error occurred when trying to load events', { theme: 'alert-danger', closeTemplate: '' });
}
});
},
@ -66,8 +66,8 @@ $(document).ready(function() {
success: function() {
$.jGrowl('Event successfully updated', { theme: 'alert-success', closeTemplate: '' });
},
error: function(data) {
console.error(data);
error: function() {
$.jGrowl('An error occurred when trying to update the event', { theme: 'alert-danger', closeTemplate: '' });
revertFunc();
}
});
@ -104,7 +104,7 @@ $(document).ready(function() {
$('#edit-event-modal').modal('hide');
},
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');
},
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');
},
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 {
$form.find('input[name="all-day"]').prop('checked', false).end()
.find('.clockpicker').show();
var formattedTime = date.format('H:mm:ss');
var formattedTime = date.format('HH:mm:ss');
var selectedHour = date.hour();
$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');
@ -283,8 +283,8 @@ function displayEditModal(date) {
} else {
$form.find('input[name="all-day"]').prop('checked', false).end()
.find('.clockpicker').show().end()
.find('input[name="start-time"]').val(date.start.format('H:mm:ss')).end()
.find('input[name="end-time"]').val(date.end.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('HH:mm:ss')).end();
}
if (date.createTicketDate != null) {

Loading…
Cancel
Save