🚀 HubSpot Automation & Digital Analytics Expert @Pinetco | Nr. 1 HubSpot Agentur für Bildungsanbieter in DE | Maßgeschneiderte CRM- und Performance Marketing Lösungen | Jetzt kostenloses Erstgespräch vereinbaren: https://tinyurl.com/2525nrk9
We are collaborating on marketing emails often and it happens now and then that two team members accidentally open the draft simultaneously without noticing and then one of them is not able to save their progress. Is it possible to add a featur Beitrag ansehen
We need this, too, also for web pages, landing pages, and similar content. I often had such situations where all of my changes were lost, requiring m...Beitrag ansehen
Hi, when creating a contact view, I can select columns for 'opted out for.... XYZ' where xyz is the name of a subscription type. However: I want to see in a list view the subscriptions of all contacts. I know I can do bulk-edit, but I just want to v Beitrag ansehen
hey @MvanBeek , I totally agree with you: This should be a standard feature of HubSpot. I also frequently yearn for it, that's why I've created an ...Beitrag ansehen
Hey everyone, I've noticed a gap in our HubSpot contact lists that I believe needs addressing. Currently, there isn't a built-in view to display the current subscription status of contacts for marketing emails. This seems odd, especially consider Beitrag ansehen
Regarding the checkboxes on the left-hand side, in multiple areas (contacts page, companies page, tasks, lists, etc.): The ability to select one, scroll down, hold shift, and select another so that it selects all in between the first box and last bo Beitrag ansehen
I completely agree! Being able to select multiple checkboxes by clicking one, scrolling down, holding shift, and clicking another would be a game-ch...Beitrag ansehen
We recently encountered a scenario where automatic deal cloning was necessary, but since cloning deals still isn't possible in HubSpot , we embarked on a journey of tinkering and innovation, determined to find a way to clone deals directly within H Beitrag ansehen
Hi @Jnix284 , thanks for your feedback, I'm glad you like the workaround. We tested it with Marketing and/or Sales Pro accounts so you don't need a...Beitrag ansehen
Let's say you email me and a ticket is created. I email you back in 5 minutes and resolve the ticket. You write back a day later and I resolve the ticket in 5 minutes again. Currently, the time-to-close metrics on Hubspot would return this as clo Beitrag ansehen
Hi @SJohnson26 , we had the same issue with our clients and found a workaround to get precise data for reopened tickets. Check out the instructions...Beitrag ansehen
Hi there,
It's nice that you can now add links for contacts to cancel and reschedule appointments in the meeting tool, but we're clearly missing more user customization options here.
For example, it should be standard to be able to at le Beitrag ansehen
We have clients with several business units who currently have to share one "create contact" form when adding contacts manually. This is not so great since both units work with own properties so the form is really long and confusing.
I'd like to propose some enhancements to the Slack notifications feature within HubSpot workflows to make them more versatile and user-friendly.
Currently, when setting up Slack notifications in workflows, there are a few limitations that I be Beitrag ansehen
Thank you for sharing this helpful tip @Kyle456789 ! Leveraging markdown for text formatting in the Message box is indeed a great workaround. It wou...Beitrag ansehen
In the daily service routine, it's common for previously closed tickets to be reopened due to additional customer inquiries.
However, creating report data for such scenarios in HubSpot can be challenging. Besides the standard "Time to Close," Beitrag ansehen
Currently, in HubSpot Workflows, it's not possible to create an enrollment trigger for contacts entering the CRM via chatflows .
To leverage automations for such contacts, they need to be defined directly within the chatflow, which is often Beitrag ansehen
One common challenge faced across business units and teams is the limitation of having only one default value for properties in HubSpot.
Essential properties such as names and [object] owners are shared among various teams within an organiza Beitrag ansehen
//
//
//
//
//
(function($) {
//START END-USER CONFIGURATION
//------------------------------
//selectors for hover card triggers
var allHoverCardTriggers = '.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 = '/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 = '12423';}
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).ready(function(){
var originalElementId;
function setCookie(cname,cvalue,exdays) {
var d = new Date();
d.setTime(d.getTime() + (exdays*24*60*60*1000));
var expires = "expires=" + d.toGMTString();
document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
}
function getCookie(cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
for(var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
function errorDisplay(errType) {
var errAuth = '
Melde dich bitte an, um auf diesen Bereich der Community zugreifen zu können.
';
var errAuthLogin = '
To access HubFans and complete challenges, confirm you are logged in by clicking here. Find additional troubleshooting steps here
';
var noBadges = '
To start earning advocacy badges go to the HubFan advocacy program page and start completing advocacy challenges.
';
var noAsks = '
Hooray! No more challenges for you to complete today. Check back in for more challenges tomorrow.