Skip to content

Commit 7078253

Browse files
authored
Enhancement to create "sp_favorite" along with "sys_ui_bookmark" (ServiceNowDevProgram#2549)
* Add script to display user mentions in Service Portal This script retrieves and displays the top 5 records where the logged-in user is mentioned, providing links to those records. * Delete Modern Development/Service Portal Widgets/My Mentioned Items directory * Create script.js * Delete Modern Development/Service Portal Widgets/My Mentioned Items directory * Create script.js * Delete Server-Side Components/Scheduled Jobs/Retire Rating 1 Articles directory * Update favCopy.js * Update favCopy.js * Update favCopy.js * Update favCopy.js * Update README.md
1 parent d84dcae commit 7078253

File tree

2 files changed

+22
-1
lines changed

2 files changed

+22
-1
lines changed

Specialized Areas/Fix scripts/Copy favourite to other users/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
**Enhancement**
2+
1. This code will create the sp favorites of the selected users along with the sys_ui_bookmarks.
3+
2. The entry will be made in "sp_favorite" through new **createPortalFav** function.
4+
15
You can use this script to take an existing favaourite from the sys_ui_bookmark table and create a copy of it for any number of users.
26
Can be useful when onboarding new staff, doing testing, etc.
37

Specialized Areas/Fix scripts/Copy favourite to other users/favCopy.js

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
11
var srcFav = ""; // Add the sys_id of the favourite to copy, from sys_ui_bookmark table
2+
var portalFav = ""; // Add the sys_id of the favourite to copy, from sp_favorite table.
23
var userCriteria = ""; // Add an encoded query of users from sys_user table
3-
44
var fav = new GlideRecord("sys_ui_bookmark");
55
fav.get(srcFav);
66

7+
var portalFavRec = new GlideRecord("sp_favorite");
8+
portalFavRec.get(portalFav); // glide record of favorite record.
9+
710
var users = new GlideRecord("sys_user");
811
users.addEncodedQuery(userCriteria);
912
users.query();
@@ -18,4 +21,18 @@ while(users.next()) {
1821
newFav.setValue("url",fav.url);
1922
newFav.setValue("user",users.sys_id);
2023
newFav.insert();
24+
25+
createPortalFav(users); // function to create portal favorites
26+
}
27+
function createPortalFav(userRec){
28+
var newPortalFav = new GlideRecord("sp_favorite");
29+
newPortalFav.initialize();
30+
newPortalFav.setValue('user',userRec.user);
31+
newPortalFav.setValue('reference_table',portalFavRec.reference_table);
32+
newPortalFav.setValue('reference_document',portalFavRec.reference_document);
33+
newPortalFav.setWorkflow(false); // OOB Sscript include take the logged-in user to check the duplicate records so workflow false restricts the SI to run.
34+
newPortalFav.insert();
2135
}
36+
37+
38+

0 commit comments

Comments
 (0)