Attach edit button handler with JS listeners

This commit is contained in:
Victor Andersson
2025-11-10 23:20:59 +01:00
parent 9499eb6395
commit 559ed671f3

View File

@@ -213,7 +213,7 @@
{% endif %} {% endif %}
{% if can_change %} {% if can_change %}
<button type="button" <button type="button"
onclick="claimsOpenEdit('{{ claim.id }}'); return false;" data-open-edit="{{ claim.id }}"
class="rounded-full border border-gray-300 px-3 py-1 text-xs font-semibold text-gray-700 transition hover:bg-gray-100"> class="rounded-full border border-gray-300 px-3 py-1 text-xs font-semibold text-gray-700 transition hover:bg-gray-100">
{% trans "Redigera" %} {% trans "Redigera" %}
</button> </button>
@@ -446,17 +446,6 @@
panel.setAttribute("aria-hidden", "true"); panel.setAttribute("aria-hidden", "true");
} }
window.claimsOpenEdit = function (id) {
openPanel(id);
};
window.claimsCloseEdit = function (id) {
const panel = document.querySelector(`[data-edit-panel="${id}"]`);
if (panel) {
closePanelElement(panel);
}
};
document.addEventListener("click", (event) => { document.addEventListener("click", (event) => {
const backdrop = event.target.closest("[data-edit-backdrop]"); const backdrop = event.target.closest("[data-edit-backdrop]");
if (backdrop && event.target === backdrop) { if (backdrop && event.target === backdrop) {
@@ -475,6 +464,24 @@
}); });
document.addEventListener("DOMContentLoaded", () => { document.addEventListener("DOMContentLoaded", () => {
const editButtons = Array.from(document.querySelectorAll("[data-open-edit]"));
editButtons.forEach((button) => {
button.addEventListener("click", (event) => {
event.preventDefault();
openPanel(button.dataset.openEdit);
});
});
document.querySelectorAll("[data-close-edit]").forEach((button) => {
button.addEventListener("click", (event) => {
event.preventDefault();
const panel = button.closest("[data-edit-panel]");
if (panel) {
closePanelElement(panel);
}
});
});
const filterButtons = Array.from(document.querySelectorAll("[data-filter-button]")); const filterButtons = Array.from(document.querySelectorAll("[data-filter-button]"));
const cards = Array.from(document.querySelectorAll("[data-claim-card]")); const cards = Array.from(document.querySelectorAll("[data-claim-card]"));
const emptyState = document.querySelector("[data-claim-empty]"); const emptyState = document.querySelector("[data-claim-empty]");