
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎01-17-2022 10:50 AM
SN Comm - looking for some help if possible-
For around a month now I have been working within the new EC Portal and configuring it. I went through the taxonomy setup, etc..
I attempted to add in a link through the Body HTML template for header 'Employee Center Header'.
I did not like what the change did, so I took out my change only. Since then (Friday that just passed), I am getting errors that I cannot explain or figure out how to fix. I am thinking I might need a support case with SN, but wanted to try the Community first. Here is what I have for the HTML with the header:
<!-- Nav bar menu items starts-->
<nav class="navbar-inverse" aria-label="Primary" role="navigation">
<!-- Piece above searchbar -->
<div class="clearfix">
<div class="navbar-header nav-container">
<!-- Logo -->
<a class="navbar-brand" ng-if="::!portal.logo" href="?id={{::portal.homepage_dv}}" aria-label="{{::portal.title}}"><span>{{::portal.title}}</span></a>
<a class="navbar-brand navbar-brand-logo"
ng-if="::portal.logo" href="?id={{::portal.homepage_dv}}"
aria-label="{{::portal.title}}${ - Home Page}"
data-toggle="tooltip"
data-placement="bottom"
data-title="{{::portal.title}}${ - Home}">
<img ng-src="{{::portal.logo}}" alt="{{::portal.title}}${ - Home Page}"/>
</a>
<!-- Search Bar Desktop -->
<div ng-class="mobileDevice ? 'header-search-mobile' : 'header-search'" ng-if="showSearchBar && !mobileDevice">
<sp-widget widget="data.typeahead"></sp-widget>
</div>
<!-- Mobile Navigation View -->
<div class="mobile-top-navigation" ng-if="showMobileMenuOnDesktop || mobileDevice">
<!-- Toggle Button (Hamburger Menu for Mobile View) -->
<button type="button"
class="sub-navbar-overflow-entry-button"
ng-class="isMobileViewOnDesktopExpanded ? 'close-icon-visible' : ''"
aria-label="{{isMobileViewOnDesktopExpanded ? '${Hide menu primary navigation}' : '${Show menu primary navigation}'}}"
data-toggle="tooltip"
data-placement="auto bottom"
data-original-title="{{isMobileViewOnDesktopExpanded ? '${Hide Menu}' : '${Show Menu}'}}"
ng-click="toggleMobileMenuVisibility($event)">
<div ng-if="!isMobileViewOnDesktopExpanded">
<span class="label label-as-badge label-primary">{{data.todoCount + data.requestCount + cartItemCount}}</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</div>
<i class="fa fa-close" ng-if="isMobileViewOnDesktopExpanded"></i>
</button>
<div class="mobile-view-on-desktop"
ng-class="mobileDevice && showSearchBar ? 'search-visible' : ''"
ng-if="isMobileViewOnDesktopExpanded"
ng-click="handleMobileViewClick($event)"
role="presentation">
<div class="height-adjust">
<ul class="mobile-view-navbar">
<!-- Mega Menu & Login functionality (Mobile View) -->
<li class="mobile-mega-menu-entry">
<sp-widget widget="data.escNavigation"></sp-widget>
<ul ng-if="::(!user.logged_in && page.id != portal.login_page_dv && !data.hasLogin)" class="nav navbar-nav">
<li><a href ng-click="openLogin()">${Login}</a></li>
</ul>
</li>
<li>
<ul class="main-header-items header-nav-item" ng-if="!showMobileMegaMenu" role="menu">
<li class="main-header-item" ng-if="data.showTodos" role="menuitem">
<a href="?id=hrm_todos_page" id="todos_mobile" aria-label="${My Tasks}, {{data.todoCountTranslation}}">
<span ng-bind-html="'${My Tasks}'" aria-hidden="true"></span>
<span ng-show="data.todoCount" class="label label-as-badge label-primary">{{data.todoCount}}</span>
</a>
</li>
<li class="main-header-item" ng-if="data.showRequests" role="menuitem">
<a href="?id=my_requests" id="requests_mobile" aria-label="${My Requests}">
<span ng-bind-html="'${My Requests}'" aria-hidden="true"></span>
<span ng-show="data.requestCount" class="label label-as-badge label-primary">{{data.requestCount}}</span>
</a>
</li>
<li class="main-header-item" ng-if="data.showMoreItems" ng-repeat="item in data.moreItems" role="menuitem">
<a ng-if="item.label !== item.shortLabel"
href="{{item.href}}"
data-toggle="tooltip"
data-placement="bottom"
data-original-title="${{{item.label}}}"
aria-label="${{{item.label}}}">
<span ng-bind-html="'${' + item.shortLabel + '}'" aria-hidden="true"></span>
</a>
<a ng-if="item.label === item.shortLabel"
href="{{item.href}}"
aria-label="${{{item.label}}}">
<span ng-bind-html="'${' + item.shortLabel + '}'" aria-hidden="true"></span>
</a>
</li>
<!-- Cart, tours, and Wishlist (Mobile View) -->
<li role="menuitem">
<sp-widget widget="data.top.menu" id="menu_item"></sp-widget>
</li>
</ul>
</li>
<li class="separator" ng-if="!showMobileMegaMenu"></li>
<!-- User Profile -->
<li class="m-t-sm m-b-sm m-l-sm header-nav-item user-name" ng-if="!showMobileMegaMenu">
<a href="{{data.link}}" ng-class="getClass(data.link)" aria-label="{{user.name}} ${profile}">
<span class="navbar-avatar"><sn-avatar class="avatar-small-medium" show-presence="false" primary="user.sys_id" /></span>
<span>{{user.name}}</span>
</a>
</li>
</ul>
<!-- Avatar (User profile Dropdown) with only Impersonate & Logout options -->
<div class="impersonate-and-logout header-nav-item" ng-if="!showMobileMegaMenu">
<sp-widget widget="data.avatarDropDown"></sp-widget>
</div>
</div>
</div>
</div>
<div ng-class="mobileDevice ? 'header-search-mobile' : 'header-search'" ng-if="showSearchBar && mobileDevice">
<sp-widget widget="data.typeahead"></sp-widget>
</div>
<!-- Header Navbar -->
<div ng-if="!(showMobileMenuOnDesktop || mobileDevice)" class="navbar-right">
<div class="height-adjust">
<ul class="nav navbar-nav" role="menubar" aria-orientation="horizontal">
<li class="hidden-xs sp-loading-indicator la-sm" ng-class="{'invisible': !loadingIndicator}">
<div></div>
<div></div>
<div></div>
</li>
<li class="gt-menu-item" role="presentation" ng-if="data.showTodos">
<a href="?id=hrm_todos_page" ng-class="getClass('?id=hrm_todos_page')" id="todos_link" aria-label="${My Tasks}, {{c.todoCountTranslation}}" role="menuitem">
<span ng-bind-html="'${My Tasks}'"></span>
<span ng-show="data.todoCount" class="label label-as-badge label-primary">{{data.todoCount}}</span>
</a>
</li>
<li class="gt-menu-item" role="presentation" ng-if="data.showRequests">
<a href="?id=my_requests" id="cases_popup" aria-label="${My Requests}" role="menuitem"> <!-- TODO: Link for requests -->
<span ng-bind-html="'${My Requests}'" aria-hidden="true"></span>
<span ng-show="data.requestCount" class="label label-as-badge label-primary">{{data.requestCount}}</span>
</a>
</li>
<li class="gt-menu-item" id="more-items" role="presentation" ng-if="data.showMoreItems">
<a ng-if="(data.moreItems.length === 1) && (data.moreItems[0].label !== data.moreItems[0].shortLabel)"
href="{{data.moreItems[0].href}}"
data-toggle="tooltip"
data-placement="bottom"
data-original-title="${{{data.moreItems[0].label}}}"
aria-label="${{{data.moreItems[0].label}}}"
role="menuitem">
<span ng-bind-html="'${' + data.moreItemsTitle + '}'" aria-hidden="true"></span>
</a>
<a ng-if="(data.moreItems.length === 1) && (data.moreItems[0].label === data.moreItems[0].shortLabel)"
href="{{data.moreItems[0].href}}"
aria-label="${{{data.moreItems[0].label}}}"
role="menuitem">
<span ng-bind-html="'${' + data.moreItemsTitle + '}'" aria-hidden="true"></span>
</a>
<a href
ng-if="data.moreItems.length > 1"
id="more-items-button"
data-toggle="dropdown"
data-target="more-items-dropdown"
data-placement="bottom"
aria-label="${{{data.moreItemsTitle}}}"
role="menuitem">
<span ng-bind-html="'${' + data.moreItemsTitle + '}'" aria-hidden="true"></span>
<i class="fa collapse-margin m-l-xs fa-caret-down"></i>
</a>
<ul id="more-items-dropdown" ng-if="data.moreItems.length > 1" class="dropdown-menu"
role="menu" aria-label="${{{data.moreItemsTitle}}}">
<li role="presentation"
ng-repeat="item in data.moreItems"
class="ng-scope dropdown-menu-line header-menu-item">
<a ng-if="item.label !== item.shortLabel"
href="{{item.href}}"
data-toggle="tooltip"
data-placement="bottom"
data-original-title="${ {{item.label}} }"
aria-label="{{item.label}}"
role="menuitem">
<span ng-bind-html="'${' + item.shortLabel + '}'" aria-hidden="true"></span>
</a>
<a ng-if="item.label === item.shortLabel"
href="{{item.href}}"
aria-label="{{item.label}}"
role="menuitem">
<span ng-bind-html="'${' + item.shortLabel + '}'" aria-hidden="true"></span>
</a>
</li>
</ul>
</li>
<!-- Avatar and its drop down (Desktop) -->
<li class="avatar-drop-down gt-menu-item" role="menuitem">
<sp-widget widget="data.avatarDropDown" id="avatar_drop_down" ></sp-widget>
</li>
<!-- Cart, tours, and Wishlist -->
<li class="gt-menu-item">
<sp-widget widget="data.top.menu" id="menu_item"></sp-widget>
</li>
</ul>
</div>
</div>
</div>
</div>
<!-- Sub Navbar on Desktop -->
<div class="navbar-collapse sub-navbar clearfix collapse collapsed hidden-xs"
ng-class="{ 'in': expanded, 'collapsed': !expanded, 'sub-navbar--mobile-view': showMobileMenuOnDesktop }"
aria-expanded="false">
<div>
<sp-widget widget="data.escNavigation"></sp-widget>
<ul ng-if="::(!user.logged_in && page.id != portal.login_page_dv && !data.hasLogin)" class="nav navbar-nav">
<li><a href ng-click="openLogin()">${Login}</a>
</li>
</ul>
</div>
</div>
<!-- Analytics -->
<div ng-if="data.analyticsSupportEnabled">
<widget id="cda-site-analytics" options="{'enable_logging': false}"></widget>
</div>
</nav>
And I am getting the following errors:
When I go to the script include mentioned in the error, I remove the restricted caller. When that happens, I get a slightly different error:
As I said, I have been working with this header and widget for a month and never received these until I tried to make a change, even though I reverted it back to original.
Anyone able to see possibly what is happening here?
Or, should I take this to SN HI Case?
Thanks,
-Rob
Solved! Go to Solution.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎01-17-2022 10:56 AM
Hi there,
Didn't face this behavior on literally the same artifact, did face it with a Script Include though and suddenly facing several Cross scope access privilege errors on Employee Center. Only after updating the Script Include this occurred, while the Script Include was still out-of-the-box: no issues. Similar like you are describing.
Needed to fix the Cross scope access privilege records once and since no issues.
Kind regards,
Mark
Kind regards,
Mark Roethof
Independent ServiceNow Consultant
10x ServiceNow MVP
---
~444 Articles, Blogs, Videos, Podcasts, Share projects - Experiences from the field

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎01-17-2022 10:56 AM
Hi there,
Didn't face this behavior on literally the same artifact, did face it with a Script Include though and suddenly facing several Cross scope access privilege errors on Employee Center. Only after updating the Script Include this occurred, while the Script Include was still out-of-the-box: no issues. Similar like you are describing.
Needed to fix the Cross scope access privilege records once and since no issues.
Kind regards,
Mark
Kind regards,
Mark Roethof
Independent ServiceNow Consultant
10x ServiceNow MVP
---
~444 Articles, Blogs, Videos, Podcasts, Share projects - Experiences from the field

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎01-17-2022 11:08 AM
Hey Mark,
So, If I am in the right area - I have these for the employee center:
When I venture into all four, they all have a message at the top that looks like this:
Clicking on that link within the message takes me to the list view for those requests:
Jump into one, I can change the status from Requested to Allowed.
Is that what I should be doing here?

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎01-17-2022 11:28 AM
Okay - wow... I had to run through a couple of tables to remove the caller restriction. When I removed one from one table, another popped up in the errors.
It was a couple - and now my header menu is back.
Thank you, Mark!