From f2c1add9dca22790bb8c0d4f80ff37bcc86d095d Mon Sep 17 00:00:00 2001 From: Raghav Sharma <53517312+raghavs046@users.noreply.github.com> Date: Sun, 19 Oct 2025 20:50:13 +0530 Subject: [PATCH 1/6] Create script.js --- .../script.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/script.js diff --git a/Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/script.js b/Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/script.js new file mode 100644 index 0000000000..987b998396 --- /dev/null +++ b/Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/script.js @@ -0,0 +1,16 @@ +(function executeRule(current, previous /*null when async*/ ) { + /* + table: sp_widget + when: Before + operation: insert & update + condition : Body HTML Template Changes. + This BR will check if standard internationalisation is not followed, this is required for multi lingual portals and is flagged in health scan. + */ + var reg = />([a-zA-Z].*)<\//; // regex to check if strings are directly added in HTML Template + var regex = new RegExp(reg); + if (regex.test(current.getValue('template'))) { + gs.addInfoMessage("Please use standard inernationalisation methods for strings like ${string} or define the string in server using gs.getMessage('string)" + ""); + current.setAbortAction(true); + } + +})(current, previous); From 1bdd6e686e43879b5f5f03f1560682b0b27a3ed3 Mon Sep 17 00:00:00 2001 From: Raghav Sharma <53517312+raghavs046@users.noreply.github.com> Date: Sun, 19 Oct 2025 20:54:21 +0530 Subject: [PATCH 2/6] Create README.md --- .../README.md | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/README.md diff --git a/Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/README.md b/Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/README.md new file mode 100644 index 0000000000..508a94e6af --- /dev/null +++ b/Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/README.md @@ -0,0 +1,10 @@ +**Use Case** +Adding string in HTML template without ${} or gs.getMessage('string') in server script attracts HealthScan findings. +These string do not get translated in multi lingual portals. +This will help in ensuring internationalization. +Same BR can be used in "sp_template" table. + +**How to use** +1. Add this code as before insert/update BR on sp_widget table. +2. The condition will be "Body HTML Changes." +3. If Internationalisation is not followed, error message will be shown and action will be aborted. From a4711e5fa2db72328befd5e5a31180cc5913ad37 Mon Sep 17 00:00:00 2001 From: Raghav Sharma <53517312+raghavs046@users.noreply.github.com> Date: Sun, 19 Oct 2025 20:55:16 +0530 Subject: [PATCH 3/6] Update script.js --- .../script.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/script.js b/Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/script.js index 987b998396..439d634c27 100644 --- a/Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/script.js +++ b/Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/script.js @@ -9,7 +9,7 @@ var reg = />([a-zA-Z].*)<\//; // regex to check if strings are directly added in HTML Template var regex = new RegExp(reg); if (regex.test(current.getValue('template'))) { - gs.addInfoMessage("Please use standard inernationalisation methods for strings like ${string} or define the string in server using gs.getMessage('string)" + ""); + gs.addInfoMessage("Please use standard inernationalisation methods for strings like ${string} or define the string in server using gs.getMessage('string')"); current.setAbortAction(true); } From d28b2d4c0c5b4717529fb1776b46a72c39bafc35 Mon Sep 17 00:00:00 2001 From: Raghav Sharma <53517312+raghavs046@users.noreply.github.com> Date: Sun, 19 Oct 2025 21:00:23 +0530 Subject: [PATCH 4/6] Create script.js --- .../script.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 Specialized Areas/Regular Expressions/Avoid Direct String in Widget HTML Templates -HealthScan Finding/script.js diff --git a/Specialized Areas/Regular Expressions/Avoid Direct String in Widget HTML Templates -HealthScan Finding/script.js b/Specialized Areas/Regular Expressions/Avoid Direct String in Widget HTML Templates -HealthScan Finding/script.js new file mode 100644 index 0000000000..439d634c27 --- /dev/null +++ b/Specialized Areas/Regular Expressions/Avoid Direct String in Widget HTML Templates -HealthScan Finding/script.js @@ -0,0 +1,16 @@ +(function executeRule(current, previous /*null when async*/ ) { + /* + table: sp_widget + when: Before + operation: insert & update + condition : Body HTML Template Changes. + This BR will check if standard internationalisation is not followed, this is required for multi lingual portals and is flagged in health scan. + */ + var reg = />([a-zA-Z].*)<\//; // regex to check if strings are directly added in HTML Template + var regex = new RegExp(reg); + if (regex.test(current.getValue('template'))) { + gs.addInfoMessage("Please use standard inernationalisation methods for strings like ${string} or define the string in server using gs.getMessage('string')"); + current.setAbortAction(true); + } + +})(current, previous); From 37c15ca7249463f6c21ecf13c860eef35d9773d0 Mon Sep 17 00:00:00 2001 From: Raghav Sharma <53517312+raghavs046@users.noreply.github.com> Date: Sun, 19 Oct 2025 21:02:54 +0530 Subject: [PATCH 5/6] Create README.md --- .../README.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 Specialized Areas/Regular Expressions/Avoid Direct String in Widget HTML Templates -HealthScan Finding/README.md diff --git a/Specialized Areas/Regular Expressions/Avoid Direct String in Widget HTML Templates -HealthScan Finding/README.md b/Specialized Areas/Regular Expressions/Avoid Direct String in Widget HTML Templates -HealthScan Finding/README.md new file mode 100644 index 0000000000..c8766a1900 --- /dev/null +++ b/Specialized Areas/Regular Expressions/Avoid Direct String in Widget HTML Templates -HealthScan Finding/README.md @@ -0,0 +1,13 @@ +**Use Case** +1. Adding string in HTML template without ${} or gs.getMessage('string') in server script attracts HealthScan findings. +2. These string do not get translated in multi lingual portals. +3. This will help in ensuring internationalization. Same BR can be used in "sp_ng_template" table. + +**How to use** +1. Add this code as before insert/update BR on sp_widget table. +2. The condition will be "Body HTML Changes." +3. If Internationalisation is not followed, error message will be shown and action will be aborted. + +**Regex** +/>([a-zA-Z].*)<\// +This Regex check any direct string between > and Date: Sun, 19 Oct 2025 21:03:06 +0530 Subject: [PATCH 6/6] Delete Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding directory --- .../README.md | 10 ---------- .../script.js | 16 ---------------- 2 files changed, 26 deletions(-) delete mode 100644 Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/README.md delete mode 100644 Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/script.js diff --git a/Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/README.md b/Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/README.md deleted file mode 100644 index 508a94e6af..0000000000 --- a/Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/README.md +++ /dev/null @@ -1,10 +0,0 @@ -**Use Case** -Adding string in HTML template without ${} or gs.getMessage('string') in server script attracts HealthScan findings. -These string do not get translated in multi lingual portals. -This will help in ensuring internationalization. -Same BR can be used in "sp_template" table. - -**How to use** -1. Add this code as before insert/update BR on sp_widget table. -2. The condition will be "Body HTML Changes." -3. If Internationalisation is not followed, error message will be shown and action will be aborted. diff --git a/Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/script.js b/Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/script.js deleted file mode 100644 index 439d634c27..0000000000 --- a/Specialized Areas/Fix scripts/Avoid Direct String in Widget HTML Templates -HealthScan Finding/script.js +++ /dev/null @@ -1,16 +0,0 @@ -(function executeRule(current, previous /*null when async*/ ) { - /* - table: sp_widget - when: Before - operation: insert & update - condition : Body HTML Template Changes. - This BR will check if standard internationalisation is not followed, this is required for multi lingual portals and is flagged in health scan. - */ - var reg = />([a-zA-Z].*)<\//; // regex to check if strings are directly added in HTML Template - var regex = new RegExp(reg); - if (regex.test(current.getValue('template'))) { - gs.addInfoMessage("Please use standard inernationalisation methods for strings like ${string} or define the string in server using gs.getMessage('string')"); - current.setAbortAction(true); - } - -})(current, previous);