diff --git a/tech/tabs/02-backlog/05_content.html.php b/tech/tabs/02-backlog/05_content.html.php
index ca65f96..bb0c2df 100644
--- a/tech/tabs/02-backlog/05_content.html.php
+++ b/tech/tabs/02-backlog/05_content.html.php
@@ -91,29 +91,24 @@
= htmlspecialchars($item['created']) ?> |
-
-
-
-
+
+
+
+
|
+
+
diff --git a/tech/tabs/02-backlog/07_javascript.js b/tech/tabs/02-backlog/07_javascript.js
index 6a9edb0..a7165c3 100644
--- a/tech/tabs/02-backlog/07_javascript.js
+++ b/tech/tabs/02-backlog/07_javascript.js
@@ -1,15 +1,3 @@
-function editBacklog(id, title, desc, status, type) {
- document.getElementById('editBacklogId').value = id;
- document.getElementById('editBacklogTitle').value = title;
- document.getElementById('editBacklogDesc').value = desc;
- document.getElementById('editBacklogStatus').value = status;
- document.getElementById('editBacklogType').value = type;
-
- const modalEl = document.getElementById('editBacklogModal');
- const modal = new bootstrap.Modal(modalEl);
- modal.show();
-
-}
/**
* Escape HTML special characters in a string.
@@ -23,34 +11,40 @@ function escapeHtml(unsafe) {
.replace(/'/g, ''');
}
-/**
- * Show modal with backlog item details.
- */
-function viewBacklog(id, title, desc, status, type, created) {
- document.getElementById('viewBacklogTitle').textContent = title;
- const descEl = document.getElementById('viewBacklogDesc');
- const escapedDesc = escapeHtml(desc);
- descEl.innerHTML = escapedDesc.replace(/\n/g, '
');
- const statusBadge = document.getElementById('viewBacklogStatusBadge');
+function editBacklog(id) {
+ const item = backlogTickets[id];
+ if (!item) return;
+
+ document.getElementById('editBacklogId').value = item.id;
+ document.getElementById('editBacklogTitle').value = item.title;
+ document.getElementById('editBacklogDesc').value = item.desc;
+ document.getElementById('editBacklogStatus').value = item.status;
+ document.getElementById('editBacklogType').value = item.type;
+
+ new bootstrap.Modal(document.getElementById('editBacklogModal')).show();
+}
+
+function viewBacklog(id) {
+ const item = backlogTickets[id];
+ if (!item) return;
+
+ document.getElementById('viewBacklogTitle').textContent = item.title;
+ document.getElementById('viewBacklogDesc').innerHTML = escapeHtml(item.desc).replace(/\n/g, '
');
+ document.getElementById('viewBacklogCreated').textContent = item.created;
+
const statusMap = { 'in progress': 'warning', 'done': 'success', 'cancelled': 'secondary' };
- statusBadge.textContent = status.charAt(0).toUpperCase() + status.slice(1);
- statusBadge.className = 'badge bg-' + (statusMap[status] || 'light');
- document.getElementById('viewBacklogCreated').textContent = created;
+ const badge = document.getElementById('viewBacklogStatusBadge');
+ badge.className = 'badge bg-' + (statusMap[item.status] || 'light');
+ badge.textContent = item.status.charAt(0).toUpperCase() + item.status.slice(1);
const typeMap = {
'bug': 'bi-bug-fill text-danger',
'improvement': 'bi-tools text-success',
'nice-to-have': 'bi-star text-secondary'
};
- const typeIcon = typeMap[type] || '';
+ const icon = typeMap[item.type] || '';
const typeEl = document.getElementById('viewBacklogType');
- if (typeIcon) {
- typeEl.innerHTML = ` ${type.charAt(0).toUpperCase() + type.slice(1)}`;
- } else {
- typeEl.textContent = '';
- }
+ typeEl.innerHTML = icon ? ` ${item.type}` : '';
- const modalEl = document.getElementById('viewBacklogModal');
- const modal = new bootstrap.Modal(modalEl);
- modal.show();
+ new bootstrap.Modal(document.getElementById('viewBacklogModal')).show();
}