Re-did everything, Now is modulaar and better bro.

This commit is contained in:
2025-05-16 20:02:49 -04:00
parent 5b50964d06
commit f8ada1d6d1
16 changed files with 1234 additions and 187 deletions

View File

@ -446,9 +446,14 @@ function toggleHamburgerEditMode() {
const isEditing = editButton.classList.contains('editing');
if (!isEditing) {
// Switch to edit mode
editButton.textContent = 'Save Changes';
editButton.classList.add('editing');
editables.forEach(field => field.disabled = false);
editables.forEach(field => {
field.disabled = false;
// Store original values for potential cancel
field.dataset.originalValue = field.value;
});
// Create and append cancel button only if it doesn't exist
if (!cancelButton) {
@ -460,34 +465,46 @@ function toggleHamburgerEditMode() {
editButton.parentNode.appendChild(newCancelButton);
}
} else {
// Save changes
saveHamburgerChanges();
}
}
function saveHamburgerChanges() {
saveTicket();
resetHamburgerEditMode();
try {
saveTicket();
resetHamburgerEditMode();
} catch (error) {
console.error('Error saving changes:', error);
}
}
function cancelHamburgerEdit() {
resetHamburgerEditMode();
// Reload the selects to revert changes
const selects = document.querySelectorAll('.hamburger-content select');
selects.forEach(select => {
select.value = select.dataset.originalValue;
// Revert all fields to their original values
const editables = document.querySelectorAll('.hamburger-content .editable');
editables.forEach(field => {
if (field.dataset.originalValue) {
field.value = field.dataset.originalValue;
}
});
resetHamburgerEditMode();
}
function resetHamburgerEditMode() {
const editButton = document.getElementById('hamburgerEditButton');
const cancelButton = document.getElementById('hamburgerCancelButton');
const editables = document.querySelectorAll('.hamburger-content .editable');
// Reset button text and remove editing class
editButton.textContent = 'Edit Ticket';
editButton.onclick = toggleHamburgerEditMode; // Restore original onclick
editButton.classList.remove('active');
editButton.classList.remove('editing');
// Disable all editable fields
editables.forEach(field => field.disabled = true);
// Remove cancel button if it exists
if (cancelButton) cancelButton.remove();
}
@ -495,7 +512,8 @@ function createHamburgerMenu() {
const hamburgerMenu = document.createElement('div');
hamburgerMenu.className = 'hamburger-menu';
const isTicketPage = window.location.pathname.includes('ticket.php');
const isTicketPage = window.location.pathname.includes('ticket.php') ||
window.location.pathname.includes('/ticket/');
if (isTicketPage && window.ticketData) {
// Use the ticket data from the global variable