Lösch-Dialog in Bericht-Übersicht: eigener Modal statt fehlender Handler
All checks were successful
Deploy bericht / deploy (push) Has been skipped
All checks were successful
Deploy bericht / deploy (push) Has been skipped
In der Übersicht (ohne Editor) wurde data-dolconfirm nicht abgefangen, weil editor.js dort nicht geladen wird. Inline-Script mit gleichem bericht-dolmodal-Stil ergänzt — kein browser-confirm(). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
9271ec279f
commit
85005e3335
1 changed files with 36 additions and 0 deletions
|
|
@ -268,6 +268,42 @@ if (!$bericht) {
|
|||
|
||||
print '</div>';
|
||||
|
||||
// Bestätigungsdialog für Lösch-Buttons (eigener Modal statt browser-confirm)
|
||||
print '<script>
|
||||
document.addEventListener("click", function(e) {
|
||||
var el = e.target.closest("[data-dolconfirm]");
|
||||
if (!el) return;
|
||||
if (el.dataset._dolconfirmed === "1") return;
|
||||
e.preventDefault();
|
||||
e.stopPropagation();
|
||||
|
||||
var msg = el.getAttribute("data-dolconfirm");
|
||||
var overlay = document.createElement("div");
|
||||
overlay.className = "bericht-dolmodal-overlay";
|
||||
overlay.innerHTML = \'<div class="bericht-dolmodal">\'
|
||||
+ \'<div class="bericht-dolmodal-title">Bestätigen</div>\'
|
||||
+ \'<div class="bericht-dolmodal-body"></div>\'
|
||||
+ \'<div class="bericht-dolmodal-foot">\'
|
||||
+ \'<button class="button" data-action="cancel">Abbrechen</button>\'
|
||||
+ \'<button class="butActionDelete" data-action="ok">Löschen</button>\'
|
||||
+ \'</div></div>\';
|
||||
overlay.querySelector(".bericht-dolmodal-body").textContent = msg;
|
||||
document.body.appendChild(overlay);
|
||||
|
||||
overlay.addEventListener("click", function(ev) {
|
||||
var action = ev.target.getAttribute("data-action");
|
||||
if (!action && ev.target === overlay) action = "cancel";
|
||||
if (!action) return;
|
||||
overlay.remove();
|
||||
if (action === "ok") {
|
||||
el.dataset._dolconfirmed = "1";
|
||||
if (el.tagName === "A") window.location.href = el.getAttribute("href");
|
||||
else el.click();
|
||||
}
|
||||
});
|
||||
}, true);
|
||||
</script>';
|
||||
|
||||
} else {
|
||||
/*
|
||||
* MODUS B: Editor — bestehender Bericht wird bearbeitet
|
||||
|
|
|
|||
Loading…
Reference in a new issue