No course cards found. Visit your Canvas dashboard to load courses.
'; return; } Object.keys(allCards).forEach(courseId => { const course = allCards[courseId]; if (course && typeof course === 'object') { const courseButton = createCourseButton(courseId, course); cardGrid.appendChild(courseButton); } }); // showCardEditMenu leaves an inline display:none; clear it to show cards. cardGrid.style.display = ""; const editMenu = document.getElementById("card-edit-menu"); if (editMenu) { editMenu.style.display = "none"; } }); } const CARD_EYE_SVG = ''; function createCourseButton(courseId, courseData) { const button = document.createElement("button"); button.className = "course-card-button"; const displayName = courseData.name || courseData.fullName || courseData.default || courseData.code || `Course ${courseId}`; button.textContent = displayName; button.dataset.courseId = courseId; if (courseData.img || courseData.hidden || courseData.hide || courseData.hide_todo) { button.classList.add("customized"); } button.addEventListener("click", () => { document.querySelectorAll(".course-card-button").forEach(btn => btn.classList.remove("active")); button.classList.add("active"); showCardEditMenu(courseId, courseData); }); const tile = document.createElement("div"); tile.className = "course-card-tile"; tile.classList.toggle("card-hidden", courseData.hidden === true); tile.appendChild(button); makeElement("button", tile, { className: "course-card-hide-toggle", title: "Hide/show on dashboard", innerHTML: CARD_EYE_SVG }).addEventListener("click", () => { const hidden = courseData.hidden !== true; courseData.hidden = courseData.hide = hidden; updateCards(courseId, { hidden, hide: hidden }); tile.classList.toggle("card-hidden", hidden); }); return tile; } function showCardEditMenu(courseId, courseData) { const editMenu = document.getElementById("card-edit-menu"); const cardGrid = document.getElementById("card-grid"); if (cardGrid) cardGrid.style.display = "none"; editMenu.style.display = "block"; const displayName = courseData.name || courseData.fullName || courseData.default || courseData.code || `Course ${courseId}`; editMenu.innerHTML = `