diff --git a/views/default3.handlebars b/views/default3.handlebars
index 5dda2d52..94a236ec 100644
--- a/views/default3.handlebars
+++ b/views/default3.handlebars
@@ -8155,7 +8155,7 @@
// Add node name
var nname = EscapeHtml(node.name), nnameEx;
if (nname.length == 0) { nname = '' + "None" + ''; }
- if (((meshrights & 4) != 0) && ((!mesh.flags) || ((mesh.flags & 2) == 0))) { nname = '' + nname + ' '; }
+ if (((meshrights & 4) != 0) && ((!mesh.flags) || ((mesh.flags & 2) == 0 || (mesh.flags & 16)))) { nname = '' + nname + ' '; }
nnameEx = nname;
if (mesh) { nname += ' - ' + EscapeHtml(mesh.name) + ''; }
QH('p10deviceName', nname);
@@ -14603,6 +14603,8 @@
if (currentMesh.flags) {
if (currentMesh.flags & 1) { meshFeatures.push("Auto-Remove"); }
if (currentMesh.flags & 2) { meshFeatures.push((currentMesh.mtype == 4) ? "Port Name Sync" : "Hostname Sync"); }
+ if (currentMesh.flags & 8) { meshFeatures.push("prefer --agentname"); }
+ if (currentMesh.flags & 16) { meshFeatures.push("allow override"); }
if ((serverinfo.devGroupSessionRecording == 1) && (currentMesh.flags & 4)) { meshFeatures.push("Record Sessions"); }
}
if ((typeof currentMesh.expireDevs == 'number') && (currentMesh.expireDevs > 0)) { meshFeatures.push("Remove inactive"); }
@@ -15119,6 +15121,10 @@
}
if ((currentMesh.mtype == 2) || (currentMesh.mtype == 4)) {
x += '
';
+ if (currentMesh.mtype == 2) {
+ x += '
';
+ x += '
';
+ }
x += '
';
}
x += '
';
@@ -15140,6 +15146,16 @@
function p20editmeshfeaturesValidate() {
var flags = 0, ok = true;
if (((currentMesh.mtype == 2) || (currentMesh.mtype == 4)) && (Q('d20flag1').checked)) { flags += 1; }
+ if (currentMesh.mtype == 2) {
+ if (Q('d20flag2').checked) {
+ flags += 2;
+ if (event.currentTarget.id == 'd20flag2') { Q('d20flag8').checked = true; Q('d20flag16').checked = true; }
+ }
+ for (const flag of [8, 16]) {
+ const element = Q('d20flag' + flag);
+ if ((element.checked = element.checked && !(element.disabled = !(flags & 2)))) { flags += flag; }
+ }
+ }
QE('d20expireDevice', (flags & 1) == 0);
var x = ((flags & 1) == 0) && Q('d20expireDevice').checked;
QV('d20expireDeviceDev', x);
@@ -15152,6 +15168,8 @@
if ((currentMesh.mtype == 2) || (currentMesh.mtype == 4)) {
if (Q('d20flag1').checked) { flags += 1; }
if (Q('d20flag2').checked) { flags += 2; }
+ if (Q('d20flag8').checked) { flags += 8; }
+ if (Q('d20flag16').checked) { flags += 16; }
}
if ((serverinfo.devGroupSessionRecording == 1) && (currentMesh.mtype != 4)) { if (Q('d20flag4').checked) { flags += 4; } }
var expireDevs = 0;