diff --git a/emhttp/plugins/dynamix.apcupsd/UPSdetails.page b/emhttp/plugins/dynamix.apcupsd/UPSdetails.page
index a4e658f9b..4f46deefd 100644
--- a/emhttp/plugins/dynamix.apcupsd/UPSdetails.page
+++ b/emhttp/plugins/dynamix.apcupsd/UPSdetails.page
@@ -32,7 +32,20 @@ function getUPSstatus() {
$(getUPSstatus);
-
_(Docker directory)_:
:
-
+
+
+
_(Modify with caution: unable to validate path until Array is Started)_
@@ -283,7 +293,10 @@ _(Docker custom network type)_:
:
_(Please read the Help carefully)_. _(Misconfiguration can cause problems)_.
+
+
+ _(Please read the Help carefully)_. _(Misconfiguration can cause problems)_.
+
:docker_custom_network_type_help:
@@ -291,7 +304,10 @@ _(Host access to custom networks)_:
:
_(Make sure you understand what you are doing before enabling)_.
+
+
+ _(Make sure you understand what you are doing before enabling)_.
+
:docker_custom_network_access_help:
@@ -333,32 +349,82 @@ _(IPv4 custom network on interface)_ =$network?> (_(optional)_):
case ($mask < 24): $prefix = $net[0].'.'.$net[1]; $box = 2; break;
case ($mask < 32): $prefix = $net[0].'.'.$net[1].'.'.$net[2]; $box = 3 ;break;
}
-?>
-:
>
-
- **_(Subnet)_:** =$route?>
- **_(Gateway)_:** =$gateway[$network]?>
- =$autoDisabled?>>
- **_(DHCP pool)_:**=$prefix?>.
-
-
- for ($b=$box; $b<=3; $b++) {
+
+ // Build network select options arrays
+ $network_selects = [];
+ for ($b = $box; $b <= 3; $b++) {
switch ($b) {
- case 1: $step = floor($size/65536)%256; break;
- case 2: $step = floor($size/256)%256; break;
- case 3: $step = $size%256; break;
+ case 1: $step = floor($size/65536) % 256; break;
+ case 2: $step = floor($size/256) % 256; break;
+ case 3: $step = $size % 256; break;
+ }
+ if ($step === 0) $step = 256;
+
+ $network_selects[$b] = [
+ 'id' => "{$docker_dhcp}_{$b}",
+ 'options' => []
+ ];
+
+ for ($n = $net[$b]; $n <= $max[$b]; $n++) {
+ $network_selects[$b]['options'][] = mk_option($net_user[$b], $n, $n, $n % $step == 0 ? '' : 'class="hide"');
}
- if ($step===0) $step = 256;
- echo "
";
}
- echo "/ ";
- echo "
($size "._('hosts').")";
- echo "
";
+
+ // Build mask select options
+ $mask_options = [];
+ for ($m = $mask + 1; $m <= 30; $m++) {
+ $mask_options[] = mk_option($mask_user, $m, $m);
+ }
?>
+:
+
+
+
+
+ =_('Subnet')?>: =$route?>
+
+
+ =_('Gateway')?>: =$gateway[$network]?>
+
+
+
+
+
+
+ =$prefix?>.
+
+
+
+
+ foreach ($network_selects as $select): ?>
+
+ endforeach; ?>
+
+ /
+
+
+
+ (=$size?> =_('hosts')?>)
+
+
+
+
+
+
@@ -384,17 +450,46 @@ $hide_eth = hide_eth($network);
_(IPv4 custom network on interface)_ =$network?> (_(optional)_):
-: