Spaces:
Running
Running
t commited on
Commit ·
24388f8
1
Parent(s): 2b07d6b
fix: resolve unresponsive edit button in PDF manager
Browse files- Implemented missing 'openEditModal' function in 'templates/pdf_manager.html'.
- Added event listeners for single-item 'Details' (edit) actions.
- Refactored bulk edit logic to use the shared modal function.
- Prevented 'Enter' key from triggering unwanted form submissions during renaming.
- templates/pdf_manager.html +26 -12
templates/pdf_manager.html
CHANGED
|
@@ -634,18 +634,8 @@
|
|
| 634 |
bulkEditBtn.addEventListener('click', async () => {
|
| 635 |
const selectedItems = getSelectedItems('pdf');
|
| 636 |
if (selectedItems.length === 0) return;
|
| 637 |
-
|
| 638 |
-
|
| 639 |
-
for (const item of selectedItems) {
|
| 640 |
-
const response = await fetch(`/get_pdf_details/${item.value}`);
|
| 641 |
-
if (response.ok) editData.push(await response.json());
|
| 642 |
-
}
|
| 643 |
-
if (editData.length > 0) {
|
| 644 |
-
currentEditIndex = 0;
|
| 645 |
-
initializeTomSelect();
|
| 646 |
-
populateEditModal(currentEditIndex);
|
| 647 |
-
editModal.show();
|
| 648 |
-
}
|
| 649 |
});
|
| 650 |
|
| 651 |
document.getElementById('edit-prev-btn').addEventListener('click', () => {
|
|
@@ -846,6 +836,30 @@
|
|
| 846 |
}
|
| 847 |
});
|
| 848 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 849 |
updateBulkButtons();
|
| 850 |
|
| 851 |
const cards = Array.from(document.querySelectorAll('.col'));
|
|
|
|
| 634 |
bulkEditBtn.addEventListener('click', async () => {
|
| 635 |
const selectedItems = getSelectedItems('pdf');
|
| 636 |
if (selectedItems.length === 0) return;
|
| 637 |
+
const ids = selectedItems.map(item => item.value);
|
| 638 |
+
await openEditModal(ids);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 639 |
});
|
| 640 |
|
| 641 |
document.getElementById('edit-prev-btn').addEventListener('click', () => {
|
|
|
|
| 836 |
}
|
| 837 |
});
|
| 838 |
|
| 839 |
+
async function openEditModal(ids) {
|
| 840 |
+
await fetchSubjectsAndTags();
|
| 841 |
+
editData = [];
|
| 842 |
+
for (const id of ids) {
|
| 843 |
+
const response = await fetch(`/get_pdf_details/${id}`);
|
| 844 |
+
if (response.ok) editData.push(await response.json());
|
| 845 |
+
}
|
| 846 |
+
if (editData.length > 0) {
|
| 847 |
+
currentEditIndex = 0;
|
| 848 |
+
initializeTomSelect();
|
| 849 |
+
populateEditModal(currentEditIndex);
|
| 850 |
+
editModal.show();
|
| 851 |
+
}
|
| 852 |
+
}
|
| 853 |
+
|
| 854 |
+
// Single Edit
|
| 855 |
+
document.querySelectorAll('.edit-single-btn').forEach(btn => {
|
| 856 |
+
btn.addEventListener('click', async (e) => {
|
| 857 |
+
e.preventDefault();
|
| 858 |
+
const id = btn.dataset.id;
|
| 859 |
+
await openEditModal([id]);
|
| 860 |
+
});
|
| 861 |
+
});
|
| 862 |
+
|
| 863 |
updateBulkButtons();
|
| 864 |
|
| 865 |
const cards = Array.from(document.querySelectorAll('.col'));
|