Skip to main content
Learn about Community
Sign In
You're signed out
Sign in to ask questions, follow content, and engage with the Community
Sign In
'; hoverCardInner.innerHTML = loadingHTML.repeat(4); hoverCardContainer.classList.add('profile-hover-card-show'); // Extract information from the image element const titleField = avatar.getAttribute('title'); const userInfoUrl = `https://${mainURL}/api/2.0/search?q=SELECT first_name, last_name, login, view_href, rank, topics, solutions_authored, id, email FROM users WHERE login = '${titleField}'`; const userPostsUrl = `https://${mainURL}/api/2.0/search?q=SELECT count(*) FROM messages WHERE author.login = '${titleField}'`; const userSolutionsUrl = `https://${mainURL}/api/2.0/search?q=SELECT count(*) FROM messages WHERE author.login = '${titleField}' AND is_solution = true`; const userBadgesUrl = `https://${mainURL}/api/2.0/search?q=SELECT user_badges from users where login = '${titleField}'`; // Fetch user information async function createProfileData() { const userInfo = await fetch(userInfoUrl); const userPosts = await fetch(userPostsUrl); const userSolutions = await fetch(userSolutionsUrl); const userBadges = await fetch(userBadgesUrl); const userInfoData = await userInfo.json(); const userPostsData = await userPosts.json(); const userSolutionsData = await userSolutions.json(); const userBadgesData = await userBadges.json(); const userBadgesArray = userBadgesData.data.items[0].user_badges.items; const earnedBadgesArray = userBadgesArray.filter(badge => badge.earned_date); earnedBadgesArray.sort((a, b) => new Date(b.earned_date) - new Date(a.earned_date)); const userRankName = userInfoData.data.items[0].rank.name; const userID = userInfoData.data.items[0].id; // const userKudosUrl = `https://${mainURL}/restapi/vc/users/id/${userID}/metrics/name/net_kudos_events_received?restapi.response_format=json`; const userKudos = await fetch(userKudosUrl); const userKudosData = await userKudos.json(); let fullName = userInfoData.data.items[0].login; if (userInfoData.data.items[0].first_name !== undefined && userInfoData.data.items[0].last_name !== undefined) { let firstName = userInfoData.data.items[0].first_name; let lastName = userInfoData.data.items[0].last_name; fullName = firstName + " " + lastName; } else { fullName = userInfoData.data.items[0].login; } let userRankIcon = ""; if (userInfoData.data.items[0].rank.icon_left !== undefined) { userRankIcon = userInfoData.data.items[0].rank.icon_left; } else { userRankIcon = ""; } let userEmail = ""; // <#if user_has_role> if (userInfoData.data.items[0].email !== undefined) { userEmail = userInfoData.data.items[0].email; } else { userEmail = ""; } // <#else> userEmail = ""; // #if> const userViewHref = userInfoData.data.items[0].view_href; const userPostsCount = userPostsData.data.count; const userSolutionsCount = userSolutionsData.data.count; const userKudosCount = userKudosData.response.value.$; const userBadgesCount = earnedBadgesArray.length; let badgesHTML = ""; if (earnedBadgesArray.length === 0) { badgesHTML = `
This user hasn't earned any badges yet.
`; } else { for (let i = 0; i < earnedBadgesArray.length; i++) { const badgeName = earnedBadgesArray[i].badge.title; const badgeIcon = earnedBadgesArray[i].badge.icon_url; const badgeHTML = `
`; badgesHTML += badgeHTML; if (i >= 4) { break; } }; } const hoverCardHTML = `
${userRankName}
${userEmail}
${badgesHTML}
`; // // Display the hover card return hoverCardHTML; } if (hoverCardInner.innerHTML.includes('loading-box')) { createProfileData().then((hoverCardHTML) => { hoverCardInner.innerHTML = hoverCardHTML; }); } } }); //Hide the hover card on mouseout avatar.addEventListener('mouseout', () => { const hoverCardContainer = avatar.nextElementSibling; hoverCardContainer.classList.remove('profile-hover-card-show'); }); hoverCardInner.addEventListener('mouseout', () => { const hoverCardContainer = avatar.nextElementSibling; hoverCardContainer.classList.remove('profile-hover-card-show'); }); hoverCardInner.addEventListener('mouseover', () => { const hoverCardContainer = avatar.nextElementSibling; hoverCardContainer.classList.add('profile-hover-card-show'); }); }); });
Turn on suggestions Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
Showing results for
Showonly | Search instead for
Did you mean:
- Community
- Canvas
- Canvas LMS
- Canvas Instructional Designers
Options
Subscribe
View Canvas Instructional Designer Guides
Admin Guide
Admin Videos
Instructor Guide
Instructor Videos
Canvas for Elementary
Canvas Teacher Android Guide
Canvas Teacher iOS Guide
SIS Guides
Troubleshooting
View Canvas Instructional Designer Resources
GraphQL
Integration Documents
Resource Documents
Rest API
Browse Other Canvas Resources
Question Forum
Releases
Idea Conversations
ID Discussions
Instructional Designer Blog
Top 5 Resources
- Facilitating Employee Onboarding
- New Year, New Canvas: Three Resolutions for Improving Your Canvas Courses
- I Have a Homepage Template! Now What?
- Instructional Designer: Assessment map document
- OER Intro to Computer Science Canvas Course Cartridge
Browser and Mobile App Compatibility
Desktop Browsers
View full details
- Chrome 122 and 123
- Firefox 123 and 124
- Edge 121 and 122
- Respondus Lockdown Browser
- Safari 16 and 17
Mobile Browsers
View limited support guidelines
- Latest version of Safari (iOS) and Chrome (Android)
Canvas Mobile Apps
- Android 8.0 or later
- iOS 15.0 or later
Accessibility
Artificial Intelligence in Education
Canvas Developers
Community Hub
Competency Based Education (CBE)
Free for Teacher
Higher Ed Canvas Users
K-12 Canvas Users
New Quizzes Hub
Instructional Leadership
Language Resources
All Groups and Hubs
View our top guides and resources:
Find My Canvas URL Help Logging into Canvas Generate a Pairing Code Canvas Browser and Computer Requirements Change Canvas Notification Settings Submit a Peer Review Assignment
To participate in the Instructurer Community, you need to sign up or log in:
Sign In