From 7e9545f811d6accd85bb34eb9fdae73ba7c65294 Mon Sep 17 00:00:00 2001 From: Tim Dingle Date: Thu, 31 Oct 2024 22:54:52 -0500 Subject: [PATCH 1/3] Create content --- .../Trigger Event when a member is added to a list/content | 1 + 1 file changed, 1 insertion(+) create mode 100644 Business Rules/Trigger Event when a member is added to a list/content diff --git a/Business Rules/Trigger Event when a member is added to a list/content b/Business Rules/Trigger Event when a member is added to a list/content new file mode 100644 index 0000000000..8b13789179 --- /dev/null +++ b/Business Rules/Trigger Event when a member is added to a list/content @@ -0,0 +1 @@ + From ed82d81b56b6b25a5b689c3c33ccb01766f430e7 Mon Sep 17 00:00:00 2001 From: Tim Dingle Date: Thu, 31 Oct 2024 22:55:32 -0500 Subject: [PATCH 2/3] Add files via upload --- .../Readme.md | 8 +++++ ...er an event when user is added to field.js | 36 +++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 Business Rules/Trigger Event when a member is added to a list/Readme.md create mode 100644 Business Rules/Trigger Event when a member is added to a list/Trigger an event when user is added to field.js diff --git a/Business Rules/Trigger Event when a member is added to a list/Readme.md b/Business Rules/Trigger Event when a member is added to a list/Readme.md new file mode 100644 index 0000000000..8931bfae1d --- /dev/null +++ b/Business Rules/Trigger Event when a member is added to a list/Readme.md @@ -0,0 +1,8 @@ +Scenario: You are wanting to send a notification to someone whenever they are added to a list of people. + +Application: Create an event in the event registry. Then, create a business rule. Set the name and table, advanced = true. + +When to run: +When = after, update = true, conditions = watch list (replace with applicable field name) | changes + +Advanced tab: insert the snippet \ No newline at end of file diff --git a/Business Rules/Trigger Event when a member is added to a list/Trigger an event when user is added to field.js b/Business Rules/Trigger Event when a member is added to a list/Trigger an event when user is added to field.js new file mode 100644 index 0000000000..a1ae25c021 --- /dev/null +++ b/Business Rules/Trigger Event when a member is added to a list/Trigger an event when user is added to field.js @@ -0,0 +1,36 @@ +(function executeRule(current, previous /*null when async*/) { + + // Ensure the 'watch_list' (replace with applicable field name) field has been modified + if (current.watch_list != previous.watch_list) { + + // Split the current and previous watch lists into arrays + var newWatchers = current.watch_list.split(','); + var oldWatchers = previous.watch_list ? previous.watch_list.split(',') : []; + + // Identify the newly added users to the watch list + var addedUsers = newWatchers.filter(function (user) { + return oldWatchers.indexOf(user) === -1; + }); + + // Loop through the added users to trigger the event for each + addedUsers.forEach(function(userID) { + var email; + var firstName; + + // Try to get the user record by user ID (sys_id) + var userGr = new GlideRecord('sys_user'); + if (userGr.get(userID)) { + firstName = userGr.first_name; + email = userGr.email; + } else { + + // If no user record is found, assume the userID is an email address + email = userID; + firstName = "Team"; + } + + // Trigger the event (replace "new_member") with the current case and user information + gs.eventQueue('new_member', current, email, firstName); + }); + } +})(current, previous); From 068047985c076b87a55f3fa87934b9175b17555f Mon Sep 17 00:00:00 2001 From: Tim Dingle Date: Thu, 31 Oct 2024 22:56:11 -0500 Subject: [PATCH 3/3] Delete Business Rules/Trigger Event when a member is added to a list/content --- .../Trigger Event when a member is added to a list/content | 1 - 1 file changed, 1 deletion(-) delete mode 100644 Business Rules/Trigger Event when a member is added to a list/content diff --git a/Business Rules/Trigger Event when a member is added to a list/content b/Business Rules/Trigger Event when a member is added to a list/content deleted file mode 100644 index 8b13789179..0000000000 --- a/Business Rules/Trigger Event when a member is added to a list/content +++ /dev/null @@ -1 +0,0 @@ -