Badges are a great way to demonstrate your contributions to the Community and level of expertise. Just start engaging in the conversations to earn new badges. Learn more.
HubDoPete has earned 37 badges!
HubSpot Gold Partner
Dec 7, 2017
Earned by 6,861
You have achieved HubSpot Gold Partner status!
HubSpot Certified Trainer
Mar 5, 2020
Earned by 65
You're a HubSpot Certified Trainer! Join the conversation and use your knowledge to help your peers grow with HubSpot!
Welcome to the Community
Feb 11, 2021
Earned by 784,716
Welcome to the HubSpot Community, we're happy to have you! Let's celebrate with your first community badge!
Thankful
Feb 11, 2021
Earned by 183,460
Kudos to you for sending upvotes to others!
Thankful (5)
Feb 11, 2021
Earned by 26,215
Kudos to you for sending upvotes to others!
Thankful (10)
Feb 11, 2021
Earned by 11,289
Kudos to you for sending upvotes to others!
Thankful (25)
Sep 15, 2021
Earned by 3,569
Kudos to you for sending upvotes to others!
Thankful (50)
Nov 9, 2021
Earned by 1,403
Kudos to you for sending upvotes to others!
Thankful (100)
Jul 27, 2023
Earned by 552
Kudos to you for sending upvotes to others!
Helpful
Feb 11, 2021
Earned by 98,377
Congrats on the upvotes - you definitely know your stuff!
Helpful (5)
Feb 11, 2021
Earned by 21,115
Congrats on the upvotes - you definitely know your stuff!
Helpful (10)
Feb 11, 2021
Earned by 10,391
Congrats on the upvotes - you definitely know your stuff!
Helpful (25)
Jun 15, 2021
Earned by 4,379
Congrats on the upvotes - you definitely know your stuff!
Helpful (50)
Jul 23, 2021
Earned by 2,390
Congrats on the upvotes - you definitely know your stuff!
Helpful (100)
Nov 1, 2021
Earned by 1,250
Congrats on the upvotes - you definitely know your stuff!
Helpful (250)
Aug 9, 2023
Earned by 403
Congrats on the upvotes - you definitely know your stuff!
Conversationalist
Feb 11, 2021
Earned by 121,515
What's a community without great conversations? Thanks for keeping things lively!
Conversationalist (5)
Oct 1, 2021
Earned by 18,468
What's a community without great conversations? Thanks for keeping things lively!
Responder
Feb 11, 2021
Earned by 201,558
Thanks for helping others out with their questions, you make the community a great place to learn!
Responder (5)
Feb 11, 2021
Earned by 22,415
Thanks for helping others out with their questions, you make the community a great place to learn!
Responder (10)
Feb 11, 2021
Earned by 6,866
Thanks for helping others out with their questions, you make the community a great place to learn!
Responder (25)
Jun 17, 2021
Earned by 1,331
Thanks for helping others out with their questions, you make the community a great place to learn!
Responder (50)
Oct 20, 2021
Earned by 500
Thanks for helping others out with their questions, you make the community a great place to learn!
Responder (100)
Feb 17, 2023
Earned by 251
Thanks for helping others out with their questions, you make the community a great place to learn!
Responder (250)
Oct 30, 2024
Earned by 100
Thanks for helping others out with their questions, you make the community a great place to learn!
Problem Solver
Jun 22, 2021
Earned by 6,135
Thanks for solving problems and sharing your expertise! Keep up the great work!
Problem Solver (5)
Sep 15, 2021
Earned by 568
Thanks for solving problems and sharing your expertise! Keep up the great work!
Problem Solver (10)
Oct 14, 2021
Earned by 356
Thanks for solving problems and sharing your expertise! Keep up the great work!
Problem Solver (25)
Aug 30, 2022
Earned by 212
Thanks for solving problems and sharing your expertise! Keep up the great work!
Problem Solver (50)
Sep 22, 2023
Earned by 144
Thanks for solving problems and sharing your expertise! Keep up the great work!
Problem Solver (100)
Mar 14, 2025
Earned by 89
Thanks for solving problems and sharing your expertise! Keep up the great work!
Community Champion
Oct 15, 2021
Earned by 6,882
You have joined the top tier of Community users and become a Community Champion! Congratulations!
Brainstormer
Feb 11, 2021
Earned by 56,074
Thanks for feedback in the Ideas forum. We love hearing from you!
Brainstormer (5)
Feb 11, 2021
Earned by 5,096
Thanks for feedback in the Ideas forum. We love hearing from you!
Brainstormer (10)
Oct 15, 2021
Earned by 1,660
Thanks for feedback in the Ideas forum. We love hearing from you!
Brainstormer (25)
Aug 2, 2023
Earned by 323
Thanks for feedback in the Ideas forum. We love hearing from you!
Brainstormer (50)
Jun 5, 2024
Earned by 78
Thanks for feedback in the Ideas forum. We love hearing from you!
//
//
//
//
//
(function($) {
//START END-USER CONFIGURATION
//------------------------------
//selectors for hover card triggers
var allHoverCardTriggers = '.has--hovercard,.author-name-link,.friend-list .friend a,.username a,.avatar,.user-avatar,.author-img, .authors a, .messageauthorusername a, a.lia-user-name-link, .js-latest-post-by-from a, .user-online-list li a, a.UserAvatar, .customUsersOnline a, #authors a,.dashboard-followers a.user-name, .dashboard-following a.user-name,.author-login-wrapper a, .hb-leaderboard a, .author-img-floated';
// Forward calling page's URL params to endpoint URL as well, helps with testing!
var params = (new URL(location.href)).searchParams;
var userApiUrl = 'https://community.hubspot.com/mjmao93648/plugins/custom/hubspot/hubspot/hovercardendpoint?' + ((params.set('user_id', '') == []._) && params.toString());
if($('.hover-card-container').length<1){
$('body').append('');
}
var cardWrapper = $('.hover-card-container');
var error = false;
var thisUserID = '';
var thisUserLogin = '';
var userLink ='';
var cardTimer;
var leaveTimer;
function mouseenter(Elem) {
var thisEl = Elem;
cardTimer = setTimeout(function(){
var docWidth = $(document).width();
var rightSide = false;
var userLink = thisEl.attr('href');
if($('.ViewProfilePage').length && $('img.lia-user-avatar-profile',thisEl).length){thisUserID = '';}
else if(thisEl.attr('href')=='#' || thisEl.attr('href')=='' || !userLink.match('viewprofilepage')){
return false;}
else{
var thisLen = (userLink).split('/');
thisUserID = (thisLen)[thisLen.length-1];
}
var thisCard = $('.profileCard[data-user='+thisUserID+']',cardWrapper);
var cardId = 'userProfileCard-'+ thisUserID;
var addAttr = thisEl.attr('aria-describedby',cardId);
var thisElTopOffset = Math.round(thisEl.offset().top+(thisEl.height()/2)+30);
var thisElbottomoffset = "auto";
var className = "";
var winHeight = $(window).height();
var elOffset = thisEl.offset();
var scrollTop = $(window).scrollTop();
var elementOffset = thisEl.offset().top;
var distanceTop = (elementOffset - scrollTop);
var distanceBottom = (winHeight + scrollTop) - (elOffset.top + thisEl.outerHeight(true));
var distanceLeft = Math.round(thisEl.offset().left);
var bodyHight = $('body').height();
var topParam = '';
var bottomparam = '';
var position = '';
var className = 'topArrow';
cardId
if(distanceBottom < 300 ){
if(distanceLeft < 59){
thisCard.removeClass('bottomArrow');
var className = 'leftArrow';
var distanceLeft = (distanceLeft)+(39);
var thisElTopOffset = (thisElTopOffset)-(150);
}else{
var thisElTopOffset = (thisElTopOffset)-(301); var className = 'bottomArrow'; thisCard.removeClass('topArrow');
thisCard.removeClass('leftArrow');
var distanceLeft = (distanceLeft)-(45);
}
}
else{
if(distanceLeft < 59){
thisCard.removeClass('topArrow');
var className = 'leftArrow';
var distanceLeft = (distanceLeft)+(39);
var thisElTopOffset = (thisElTopOffset)-(150);
}else{
thisCard.removeClass('leftArrow');
thisCard.removeClass('bottomArrow').addClass('topArrow');
var distanceLeft = (distanceLeft)-(45);
}
}
if(thisCard.length && $('.profileCard[data-user='+thisUserID+'] .preloader',cardWrapper).length<1){
$('.profileCard',cardWrapper).hide();
thisCard.addClass(className);
rightSide?thisCard.addClass('rightArrow'):thisCard.removeClass('rightArrow');
thisCard.delay(0).css({'top':(thisElTopOffset),'left':distanceLeft,'bottom':thisElbottomoffset}).fadeIn();
} else {
var ajaxReturn = '';
//just in case
thisCard.remove();
//hover card wrapper markup
var rightArrowClass = rightSide?'rightArrow':'';
if(thisElTopOffset != "auto"){
topParam = 'px';
}
if(thisElbottomoffset != "auto"){
bottomparam = 'px';
}
var profileCardHtml = '';
$.when(
//get the background
$.ajax({
type: 'GET',
url: userApiUrl+thisUserID,
dataType: 'html',
success: function(data) {
$('.profileCard',cardWrapper).hide();
ajaxReturn = data;
}
})
)
.done(function(){
cardWrapper.append(profileCardHtml);
$('.profileCard[data-user='+thisUserID+']',cardWrapper).eq(0).empty().html(ajaxReturn);
if($('.profileCard[data-user='+thisUserID+'] .preloader',cardWrapper).length){
$('.profileCard[data-user='+thisUserID+'] .preloader',cardWrapper).parents('div.profileCard').remove();
}
})
.fail(function(){
//uh oh - bail out!
$('.profileCard',cardWrapper).hide();
});
}
}, 360);
}
function mouseleave(e) {
clearTimeout(cardTimer);
// glowingblue: When the user leaves the hovercard trigger, wait because the leaving could be
// to interact with the hovercard, if we don't wait it will just disappear...because
// we left the trigger, right...so we'll have another handler that check if the mouse is
// over the hovercard and if so clears this timer, so the card doesn't close here
leaveTimer = setTimeout(function() {
if ($('.profileCard[data-user="'+thisUserID+'"]',cardWrapper).length) {
$('.profileCard[data-user="'+thisUserID+'"]',cardWrapper).fadeOut('fast');
} else {
$(".profileCard").fadeOut('fast');
}
}, 2400);
}
$(document).on("mouseenter focusin", allHoverCardTriggers, function(event) {
if(!($(this).parents().hasClass('custom-header'))&& !($(this).parents().hasClass('green-wrap'))){
(leaveTimer !== []._) && clearTimeout(leaveTimer);
mouseenter($(this));
event.stopPropagation();
}
});
$(document).on("mouseleave focusout", allHoverCardTriggers, function(event) {
(leaveTimer !== []._) && clearTimeout(leaveTimer);
mouseleave(event);
event.stopPropagation();
});
// glowingblue: Add handlers for when the users interacts with the hovercard, no closing!
$('.hover-card-container').on('mouseenter', function(e) {
(leaveTimer !== []._) && clearTimeout(leaveTimer);
});
$('.hover-card-container').on('mouseleave', function(e) {
(leaveTimer !== []._) && clearTimeout(leaveTimer);
if ( $(e.target).is('.profileCard[style*="block"]') ) {
leaveTimer = setTimeout(function() {
$(e.target).fadeOut('fast');
}, 2400);
}
});
// glowingblue: add one global root level click handler to also close any visible hovercards
// if the user taps/clicks outside the hovercard
$(document).on('mousedown', function(e) {
if ( !$(e.target).parents('.hover-card-container').length ) {
(leaveTimer != []._) && clearTimeout(leaveTimer);
$('.hover-card-container .profileCard[style*="block"]').each(function() {
$(this).fadeOut('fast');
});
}
});
})(LITHIUM.jQuery);
(function($) {
document.addEventListener('gdpr.allow', function() {
if (document.querySelector('.lia-cookie-banner-alert-accept a')) {
document.querySelector('.lia-cookie-banner-alert-accept a').click();
}
});
})(LITHIUM.jQuery);
LITHIUM.InformationBox({"updateFeedbackEvent":"LITHIUM:updateAjaxFeedback","componentSelector":"#informationbox","feedbackSelector":".InfoMessage"});
;(function($){
var langMap = {
'en':'hubspot_community_en',
'es':'hubspot_community_es',
'fr':'hubspot_community_fr',
'ja':'hubspot_community_jp',
'pt-br':'hubspot_community_pt',
'de':'hubspot_community_de'
}
var nodeType = "community";
var langScope = langMap['en'];
var isSearchPage = jQuery('body').hasClass('SearchPage');
var isIdeasLandingPage = jQuery('body').hasClass('ideaslandingpage');
if (nodeType === "community" && !isSearchPage && !isIdeasLandingPage) {
var inputFormFilter = '';
var inputFormLocation = '';
$('form.SearchForm').append(inputFormFilter).append(inputFormLocation);
} else if (nodeType === "community" && isIdeasLandingPage) {
var searchUrl = "/t5/forums/searchpage/tab/message?filter=location&location=idea-board:HubSpot_Ideas&collapse_discussion=true";
var query = jQuery('.SearchForm .lia-search-input-message').val();
jQuery(document).on('submit', 'form.SearchForm', function(e) {
e.preventDefault();
var newQ = "&q=" + document.querySelector('.SearchForm .lia-search-input-wrapper input.search-input').value;
window.location = window.location.origin + searchUrl + newQ;
})
}
})(LITHIUM.jQuery)
LITHIUM.InformationBox({"updateFeedbackEvent":"LITHIUM:updateAjaxFeedback","componentSelector":"#informationbox_60f6ec894aab8f","feedbackSelector":".InfoMessage"});
LITHIUM.InformationBox({"updateFeedbackEvent":"LITHIUM:updateAjaxFeedback","componentSelector":"#informationbox_60f6ec894aab8f_0","feedbackSelector":".InfoMessage"});
LITHIUM.InformationBox({"updateFeedbackEvent":"LITHIUM:updateAjaxFeedback","componentSelector":"#informationbox_60f6ec894aab8f_1","feedbackSelector":".InfoMessage"});
LITHIUM.InformationBox({"updateFeedbackEvent":"LITHIUM:updateAjaxFeedback","componentSelector":"#informationbox_60f6ec894aab8f_2","feedbackSelector":".InfoMessage"});
LITHIUM.AjaxFeedback(".lia-inline-ajax-feedback", "LITHIUM:hideAjaxFeedback", ".lia-inline-ajax-feedback-persist");
LITHIUM.Placeholder();
LITHIUM.AutoComplete({"options":{"triggerTextLength":0,"updateInputOnSelect":true,"loadingText":"Searching...","emptyText":"No Matches","successText":"Results:","defaultText":"Enter a search word","disabled":false,"footerContent":[{"scripts":"\n\n;(function($){LITHIUM.Link=function(params){var $doc=$(document);function handler(event){var $link=$(this);var token=$link.data('lia-action-token');if($link.data('lia-ajax')!==true&&token!==undefined){if(event.isPropagationStopped()===false&&event.isImmediatePropagationStopped()===false&&event.isDefaultPrevented()===false){event.stop();var $form=$('