Changes for page Material Collection
Last modified by Judith Steinfeld on 2025/06/03 11:13
Summary
-
Objects (1 modified, 0 added, 0 removed)
Details
- XWiki.JavaScriptExtension[0]
-
- Code
-
... ... @@ -27,7 +27,18 @@ 27 27 28 28 // handle clicks for tags 29 29 document.getElementById("materials-display").addEventListener("click", ev => { 30 - debugger; 30 + if (ev.button) return; // only left click 31 + if (ev.target.nodeName !== "SPAN") return; 32 + if (!ev.target.classList.contains("ltTag")) return; 33 + const tag = ev.target.textContent; 34 + ev.preventDefault(); 35 + const lt = mats.__liveTable; 36 + const st = lt.tagCloud.selectedTags; 37 + if (tag in st) delete st[tag]; 38 + else st[tag] = {}; 39 + lt.tags = Object.keys(st); 40 + lt.clearCache(); 41 + lt.showRows(1, lt.limit); 31 31 }) 32 32 }); 33 33 ... ... @@ -62,8 +62,8 @@ 62 62 row[`tags-${i}`] = ( 63 63 want[0] === true 64 64 ? Array.from(tags) 65 - : want.filter(tag => tags. has(tag) && (tags.remove(tag)|| true))66 - ).sort().map(tag => `<span class="ltTag">${tag}</span>`).join(" ") 76 + : want.filter(tag => tags.delete(tag)) 77 + ).sort().map(tag => `<span class="ltTag">${tag}</span>`).join(", ") 67 67 ); 68 68 } 69 69 });