diff --git a/packages/node_modules/@node-red/nodes/core/common/25-status.html b/packages/node_modules/@node-red/nodes/core/common/25-status.html
index 47a3192e4..4c1b9c313 100644
--- a/packages/node_modules/@node-red/nodes/core/common/25-status.html
+++ b/packages/node_modules/@node-red/nodes/core/common/25-status.html
@@ -4,6 +4,7 @@
@@ -157,6 +158,8 @@
});
if (this.scope === null) {
$("#node-input-scope-select").val("all");
+ } else if(this.scope === "group"){
+ $("#node-input-scope-select").val("group");
} else {
$("#node-input-scope-select").val("target");
}
@@ -166,6 +169,8 @@
var scope = $("#node-input-scope-select").val();
if (scope === 'all') {
this.scope = null;
+ } else if(scope === 'group') {
+ this.scope = "group";
} else {
this.scope = $("#node-input-status-target-container-div").treeList('selected').map(function(i) { return i.node.id})
}
diff --git a/packages/node_modules/@node-red/nodes/locales/de/messages.json b/packages/node_modules/@node-red/nodes/locales/de/messages.json
index 65f251e98..2ae7ba3b8 100755
--- a/packages/node_modules/@node-red/nodes/locales/de/messages.json
+++ b/packages/node_modules/@node-red/nodes/locales/de/messages.json
@@ -110,6 +110,7 @@
},
"scope": {
"all": "allen Nodes",
+ "group": "in gleicher Gruppe",
"selected": "ausgewählten Nodes"
}
},
diff --git a/packages/node_modules/@node-red/nodes/locales/en-US/messages.json b/packages/node_modules/@node-red/nodes/locales/en-US/messages.json
index 62d5f351f..8318693b0 100644
--- a/packages/node_modules/@node-red/nodes/locales/en-US/messages.json
+++ b/packages/node_modules/@node-red/nodes/locales/en-US/messages.json
@@ -115,6 +115,7 @@
},
"scope": {
"all": "all nodes",
+ "group": "in same group",
"selected": "selected nodes"
}
},
diff --git a/packages/node_modules/@node-red/runtime/lib/flows/Flow.js b/packages/node_modules/@node-red/runtime/lib/flows/Flow.js
index 6350755c5..56c98be0e 100644
--- a/packages/node_modules/@node-red/runtime/lib/flows/Flow.js
+++ b/packages/node_modules/@node-red/runtime/lib/flows/Flow.js
@@ -665,10 +665,16 @@ class Flow {
}
handled = true;
} else {
+ const flow = this;
this.statusNodes.forEach(function(targetStatusNode) {
- if (targetStatusNode.scope && targetStatusNode.scope.indexOf(reportingNode.id) === -1) {
+ if (Array.isArray(targetStatusNode.scope) && targetStatusNode.scope.indexOf(reportingNode.id) === -1) {
return;
}
+
+ if (targetStatusNode.scope === "group" && flow.isNodeInSameGroup(targetStatusNode, reportingNode) === false){
+ return;
+ }
+
var message = {
status: clone(statusMessage)
}