diff --git a/public/js/views/ticketDetail.js b/public/js/views/ticketDetail.js
index c72a5d4..3da08c0 100644
--- a/public/js/views/ticketDetail.js
+++ b/public/js/views/ticketDetail.js
@@ -16,13 +16,16 @@ const TicketDetailView = {
(document.getElementById('note-time-units-bottom') ? document.getElementById('note-time-units-bottom').value.trim() : '');
const ticket_state_id = document.getElementById('note-ticket-state') ? document.getElementById('note-ticket-state').value : '';
- if ((body !== '
' && body !== '') || subject !== '' || time_unit !== '' || this.noteAttachments.length > 0 || ticket_state_id !== '') {
+ const note_create_time = document.getElementById('note-create-time') ? document.getElementById('note-create-time').value : '';
+
+ if ((body !== '
' && body !== '') || subject !== '' || time_unit !== '' || this.noteAttachments.length > 0 || ticket_state_id !== '' || note_create_time !== '') {
App.saveDraft(this.ticketId, {
type: 'note',
body,
subject,
time_unit,
ticket_state_id,
+ note_create_time,
attachments: [...this.noteAttachments]
});
} else {
@@ -4002,6 +4005,9 @@ const TicketDetailView = {
if (document.getElementById('note-ticket-state') && noteDraft.ticket_state_id) {
document.getElementById('note-ticket-state').value = noteDraft.ticket_state_id;
}
+ if (document.getElementById('note-create-time') && noteDraft.note_create_time) {
+ document.getElementById('note-create-time').value = noteDraft.note_create_time;
+ }
this.noteAttachments = noteDraft.attachments || [];
this.updateNoteAttachmentList();
}
@@ -4092,6 +4098,21 @@ const TicketDetailView = {
}
if (noteCreateTimeInput) {
noteCreateTimeInput.addEventListener('change', checkChanges);
+
+ const setDefaultNoteTime = () => {
+ if (!noteCreateTimeInput.value && ticket && ticket.create_time) {
+ const createDate = new Date(ticket.create_time);
+ if (!isNaN(createDate.getTime())) {
+ const plus5Min = new Date(createDate.getTime() + 5 * 60 * 1000);
+ const localISO = new Date(plus5Min.getTime() - plus5Min.getTimezoneOffset() * 60000).toISOString().slice(0, 16);
+ noteCreateTimeInput.value = localISO;
+ checkChanges();
+ }
+ }
+ };
+
+ noteCreateTimeInput.addEventListener('focus', setDefaultNoteTime);
+ noteCreateTimeInput.addEventListener('click', setDefaultNoteTime);
}
if (this.noteQuill) {
this.noteQuill.on('text-change', checkChanges);