diff --git a/public/js/pages/tickets.js b/public/js/pages/tickets.js
index 7c99693..aee8cea 100644
--- a/public/js/pages/tickets.js
+++ b/public/js/pages/tickets.js
@@ -18,16 +18,14 @@ const TicketsPage = {
const ct = document.getElementById('page-content');
const isStaff = Auth.isAdmin();
ct.innerHTML = `
-
-
+ ${isStaff ? `
` : ''}
-
@@ -35,14 +33,16 @@ const TicketsPage = {
`;
- document.querySelectorAll('#ticket-tabs button').forEach(btn => {
- btn.onclick = () => {
- document.querySelectorAll('#ticket-tabs button').forEach(b => b.classList.remove('active'));
- btn.classList.add('active');
- this.tab = btn.dataset.tab;
- this.loadTab(this.tab);
- };
- });
+ if (document.getElementById('ticket-tabs')) {
+ document.querySelectorAll('#ticket-tabs button').forEach(btn => {
+ btn.onclick = () => {
+ document.querySelectorAll('#ticket-tabs button').forEach(b => b.classList.remove('active'));
+ btn.classList.add('active');
+ this.tab = btn.dataset.tab;
+ this.loadTab(this.tab);
+ };
+ });
+ }
},
async loadTab(tab) {
@@ -52,20 +52,11 @@ const TicketsPage = {
const params = new URLSearchParams();
if (this.filters.type) params.set('type', this.filters.type);
if (this.filters.status) params.set('status', this.filters.status);
- if (this.filters.priority) params.set('priority', this.filters.priority);
- if (this.filters.search) params.set('search', this.filters.search);
-
if (tab === 'pending') params.set('claimed', '0');
else if (tab === 'claimed') params.set('claimed', '1');
- else if (tab === 'mine') params.set('status', '');
-
+ if (this.filters.search) params.set('search', this.filters.search);
const qs = params.toString();
const tickets = await API.get('/tickets' + (qs ? '?' + qs : ''));
-
- if (tab === 'mine') {
- this.renderList(list, tickets);
- return;
- }
this.renderList(list, tickets);
} catch (e) { list.innerHTML = `
${e.message}
`; }
},
@@ -92,9 +83,8 @@ const TicketsPage = {
applyFilters() {
this.filters = {
- type: document.getElementById('ft-type').value,
+ type: document.getElementById('ft-type')?.value,
status: document.getElementById('ft-status').value,
- priority: document.getElementById('ft-priority').value,
search: document.getElementById('ft-search').value,
};
this.loadTab(this.tab);