requireLogin(); $this->requireAdmin(); // Added admin check $model = new \TicketPriority($this->getDB()); $priorities = $model->findAll(); $this->renderView('/ui/views/admin/priorities/index.html', [ 'priorities' => $priorities ]); } public function createPriorityForm() { $this->requireLogin(); $this->requireAdmin(); // Added admin check $this->renderView('/ui/views/admin/priorities/create.html'); } public function createPriority() { $this->requireLogin(); $this->requireAdmin(); // Added admin check $p = new \TicketPriority($this->getDB()); $p->name = $this->f3->get('POST.name'); $p->sort_order = $this->f3->get('POST.sort_order'); $p->save(); // Redirect after save $this->f3->reroute('/admin/priorities'); } public function editPriorityForm($f3, $params) { $this->requireLogin(); $this->requireAdmin(); $priorityId = $params['id']; $model = new \TicketPriority($this->getDB()); $priority = $model->load(['id = ?', $priorityId]); if (!$priority) { $f3->error(404, 'Priority not found'); return; } $this->renderView('/ui/views/admin/priorities/edit.html', [ 'priority' => $priority ]); } public function updatePriority($f3, $params) { $this->requireLogin(); $this->requireAdmin(); $priorityId = $params['id']; $model = new \TicketPriority($this->getDB()); $priority = $model->load(['id = ?', $priorityId]); if (!$priority) { $f3->error(404, 'Priority not found'); return; } $priority->name = $this->f3->get('POST.name'); $priority->sort_order = $this->f3->get('POST.sort_order'); $priority->save(); // Redirect after update $this->f3->reroute('/admin/priorities'); } public function deletePriority($f3, $params) { $this->requireLogin(); $this->requireAdmin(); $priorityId = $params['id']; $model = new \TicketPriority($this->getDB()); $priority = $model->load(['id = ?', $priorityId]); if (!$priority) { // Optionally show an error message or just redirect $this->f3->reroute('/admin/priorities'); return; } $priority->erase(); // Redirect after delete $this->f3->reroute('/admin/priorities'); } }