Hide Menu Items by Location
(function () {
// List of location IDs where the menu items should be hidden
const hiddenMenuLocationIds = [
'CY3NuKb45jDC4NkqpHV3',
'Sr99nTAsuyDCbfQCL1JQ',
'1yOGYfoijdDCBjR2YTJ5',
'L7bCRcMLEmDCtNi77ZQQ',
];
// CSS selectors for menu items and elements to hide per location
const menuSelectorsToHide = [
'#sb_ai-employee-promo',
'a[href*="ai-agents"]',
'#sb_ai-agents',
'.sidebar-v2-menu-item[href*="/ai-agents"]',
'[id="sb_AI Agents"]',
'#sb_location-mobile-app',
'#chat-connect',
'#fb-connect',
'#launchpad-chatwidget-connect',
'#whatsapp-connect',
'#launchpad-stripe-connect',
'#invite-user',
'#sb_reporting',
'#tb_reputations-requests',
'#tb_quiz-builder',
'#tb_online-listings',
'#sb_memberships',
'#sb_app-marketplace',
'#reputation-yext-overview-card',
'#sb_objects',
'#sb_agency-dashboard',
'#sb_whatsapp',
'#sb_ai_agent_settings',
'#sb_Opportunities-Pipelines',
'#sb_undefined',
'#sb_conversations_providers',
'#sb_brand-boards',
'#tb_manual-actions',
'#pendo-base',
'#pendo-g-5XkyCm3qauAbDY5lupfi7SwX1wA',
'#sb_business-settings-v2',
'#sb_labs',
'#sb_url-redirects',
'#sb_manage-scoring',
'#sb_reputation-management'
];
function hideMenuItemsForLocation() {
const locationId = app?.__vue__?.currentLocationId;
// ADD DEBUG LOGGING
console.log('=== MENU HIDING DEBUG ===');
console.log('Current location ID:', locationId);
console.log('Hidden location IDs:', hiddenMenuLocationIds);
console.log('Should hide?', hiddenMenuLocationIds.includes(locationId));
// Check if locationId exists
if (!locationId) {
console.log('No location ID found - not hiding anything');
return;
}
// Only hide if this location is in the hidden list
if (hiddenMenuLocationIds.includes(locationId)) {
console.log('HIDING elements for location:', locationId);
menuSelectorsToHide.forEach((selector) => {
const elements = document.querySelectorAll(selector);
console.log(`Hiding ${elements.length} elements for selector: ${selector}`);
elements.forEach((el) => {
el.style.display = 'none';
});
});
} else {
console.log('NOT hiding - location not in hidden list:', locationId);
// IMPORTANT: Unhide elements if they were previously hidden
menuSelectorsToHide.forEach((selector) => {
const elements = document.querySelectorAll(selector);
elements.forEach((el) => {
// Only unhide if we previously hid it
if (el.style.display === 'none') {
console.log('Unhiding element:', selector);
el.style.display = '';
}
});
});
}
}
function mutationCallback(mutationsList, observer) {
for (const mutation of mutationsList) {
if (mutation.type === 'childList') {
hideMenuItemsForLocation();
}
}
}
const observer = new MutationObserver(mutationCallback);
const config = { childList: true, subtree: true };
observer.observe(document.body, config);
hideMenuItemsForLocation(); // Initial run
})();Last updated
Was this helpful?

