Update for loop

main
Anthony 2024-03-08 23:40:44 +08:00
parent 62160dea12
commit e4f8eda3f2
1 changed files with 31 additions and 28 deletions

View File

@ -2,27 +2,30 @@ var resp = api.env.control.GetEnvs();
if (resp.result !== 0) return resp; if (resp.result !== 0) return resp;
var envs = []; var envs = [];
var nodes = {}; var nodes = {};
for (var i = 0, envInfo, env; envInfo = resp.infos[i]; i++) { for (var i = 0, envInfo, env; envInfo = resp.infos[i]; i++) {
if (envInfo.envGroups.includes("WP Backup") || envInfo.envGroups.includes("Backup storage nodes")) { env = envInfo.env;
env = envInfo.env if (env.status == 1) { // Check if environment is active
if (env.status == 1) {
for (var j = 0, node; node = envInfo.nodes[j]; j++) { for (var j = 0, node; node = envInfo.nodes[j]; j++) {
nodes[env.envName] = nodes[env.envName] || []; // Filter nodes by 'storage' nodeGroup
nodes[env.envName].groups = nodes[env.envName].groups || {}; if (node.nodeGroup === "storage") {
if (!nodes[env.envName].groups[node.nodeGroup]) nodes[env.envName].push({ var envName = env.envName;
nodes[envName] = nodes[envName] || [];
if (!nodes[envName].some(n => n.value === node.nodeGroup)) {
nodes[envName].push({
value: node.nodeGroup, value: node.nodeGroup,
caption: (node.displayName || node.name) + ' (' + node.nodeGroup + ')' caption: (node.displayName || node.name) + ' (' + node.nodeGroup + ')'
}); });
nodes[env.envName].groups[node.nodeGroup] = true;
} }
if (nodes[env.envName] && nodes[env.envName].length > 0) { }
}
if (nodes[envName] && nodes[envName].length > 0) {
envs.push({ envs.push({
value: env.envName, value: env.envName,
caption: (env.displayName + " (" + env.envName + ")" || env.envName) caption: (env.displayName + " (" + env.envName + ")" || env.envName)
}); });
} }
} }
}
} }
if (envs.length > 0) { if (envs.length > 0) {
@ -35,7 +38,7 @@ var zones = toNative(TimeZone.getAvailableIDs());
var values = {}; var values = {};
for (var i = 0, n = zones.length; i < n; i++) { for (var i = 0, n = zones.length; i < n; i++) {
var offset = TimeZone.getTimeZone(zones[i]).getRawOffset()/3600000; var offset = TimeZone.getTimeZone(zones[i]).getRawOffset() / 3600000;
var m = offset % 1; var m = offset % 1;
if (m != 0) m = Math.abs(m * 60); if (m != 0) m = Math.abs(m * 60);
if (m < 10) m = "0" + m; if (m < 10) m = "0" + m;