Benutzer, Ticketzuweißungen

This commit is contained in:
2026-03-23 03:12:08 +01:00
parent e75a2e5e20
commit 08391cdb6c
29 changed files with 592 additions and 111 deletions

View File

@@ -61,10 +61,13 @@ function renderTicketRows(tickets) {
.join('');
}
async function run() {
async function run(canEdit) {
const qs = ticketListQuery();
const urlParams = new URLSearchParams(location.search);
const newCard = document.getElementById('tickets-new-card');
if (newCard) newCard.hidden = !canEdit;
const [tickets, allMachines] = await Promise.all([
apiGet(`/tickets${qs}`),
apiGet('/machines'),
@@ -81,18 +84,20 @@ async function run() {
renderTicketRows(tickets);
document.getElementById('form-new-ticket').onsubmit = async (e) => {
e.preventDefault();
const fd = new FormData(e.target);
await apiPost('/tickets', {
machineId: fd.get('machineId'),
title: fd.get('title'),
description: fd.get('description'),
});
e.target.reset();
fillMachineSelects(allMachines, mid);
location.reload();
};
if (canEdit) {
document.getElementById('form-new-ticket').onsubmit = async (e) => {
e.preventDefault();
const fd = new FormData(e.target);
await apiPost('/tickets', {
machineId: fd.get('machineId'),
title: fd.get('title'),
description: fd.get('description'),
});
e.target.reset();
fillMachineSelects(allMachines, mid);
location.reload();
};
}
document.getElementById('form-filter').onsubmit = (e) => {
e.preventDefault();
@@ -109,10 +114,11 @@ async function run() {
async function init() {
const st = await guard({ activeNav: 'tickets' });
if (!st) return;
const canEdit = st.user?.canEditCrm === true;
loadingEl.hidden = true;
mainEl.hidden = false;
try {
await run();
await run(canEdit);
} catch (e) {
if (isAuthRedirectError(e)) return;
showError(e.message || 'Fehler');