diff --git a/webui/static/library.js b/webui/static/library.js
index 65807dff..845d1fac 100644
--- a/webui/static/library.js
+++ b/webui/static/library.js
@@ -2521,7 +2521,7 @@ function _renderDiscogCard(release, index, completionData) {
data-year="${year || '0'}" data-name="${albumName.toLowerCase().replace(/"/g, '"')}"
data-variants="${_detectReleaseVariants(albumName).join(' ')}" data-initially-checked="${!isOwned}"
style="animation-delay:${index * 0.03}s">
-
+
${img ? `

` : '
🎵
'}
${statusIcon ? `
${statusIcon}` : ''}
@@ -2712,7 +2712,7 @@ function _applyAllFilters() {
} else if (!shouldFilter && card.dataset.filterOff === 'true') {
card.dataset.filterOff = '';
card.classList.remove('discog-card--filtered');
- if (cb) cb.checked = card.dataset.initiallyChecked === 'true';
+ if (cb) cb.checked = 'userChecked' in card.dataset ? card.dataset.userChecked === 'true' : card.dataset.initiallyChecked === 'true';
}
});
_resortGrid();
@@ -2735,6 +2735,8 @@ function _resortGrid() {
if (deselectedSection) deselectedSection.style.display = count > 0 ? '' : 'none';
const countEl = document.getElementById('discog-deselected-count');
if (countEl) countEl.textContent = count;
+ const sortVal = document.querySelector('.discog-sort-select')?.value;
+ if (sortVal) sortDiscogGrid(sortVal);
}
function toggleDeselectedSection() {
@@ -2780,6 +2782,12 @@ function _updateSelectToggleBtn() {
btn.textContent = allChecked ? 'Deselect All' : 'Select All';
}
+function _onDiscogCardChange(cb) {
+ const card = cb.closest('.discog-card');
+ if (card) card.dataset.userChecked = cb.checked;
+ _updateDiscogFooterCount();
+}
+
function _updateDiscogFooterCount() {
let releases = 0, tracks = 0;
document.querySelectorAll('.discog-card-cb:checked').forEach(cb => {