diff --git a/assets/js/ticket.js b/assets/js/ticket.js index 8640a5d..a4f7dce 100644 --- a/assets/js/ticket.js +++ b/assets/js/ticket.js @@ -5,6 +5,25 @@ function escapeHtml(text) { return div.innerHTML; } +/** + * Toggle visibility groups field based on visibility selection + */ +function toggleVisibilityGroupsEdit() { + const visibility = document.getElementById('visibilitySelect')?.value; + const groupsField = document.getElementById('visibilityGroupsField'); + if (groupsField) { + groupsField.style.display = visibility === 'internal' ? 'block' : 'none'; + } +} + +/** + * Get selected visibility groups + */ +function getSelectedVisibilityGroups() { + const checkboxes = document.querySelectorAll('.visibility-group-checkbox:checked'); + return Array.from(checkboxes).map(cb => cb.value); +} + function saveTicket() { const editables = document.querySelectorAll('.editable'); const data = {}; @@ -34,9 +53,18 @@ function saveTicket() { } }); + // Get visibility settings + const visibilitySelect = document.getElementById('visibilitySelect'); + if (visibilitySelect) { + data.visibility = visibilitySelect.value; + if (data.visibility === 'internal') { + data.visibility_groups = getSelectedVisibilityGroups(); + } + } + // Use the correct API path const apiUrl = '/api/update_ticket.php'; - + fetch(apiUrl, { method: 'POST', headers: { diff --git a/controllers/TicketController.php b/controllers/TicketController.php index 0b67e60..5a9fab1 100644 --- a/controllers/TicketController.php +++ b/controllers/TicketController.php @@ -80,10 +80,13 @@ class TicketController { // Get allowed status transitions for this ticket $allowedTransitions = $this->workflowModel->getAllowedTransitions($ticket['status']); + // Make $conn available to view for visibility groups + $conn = $this->conn; + // Load the view include dirname(__DIR__) . '/views/TicketView.php'; } - + public function create() { // Get current user $currentUser = $GLOBALS['currentUser'] ?? null; diff --git a/views/CreateTicketView.php b/views/CreateTicketView.php index a1aca43..1d3024c 100644 --- a/views/CreateTicketView.php +++ b/views/CreateTicketView.php @@ -8,9 +8,9 @@ Create New Ticket - - - + + + - - + + - - - + + +