diff options
author | Darren Embry <dse@webonastick.com> | 2012-04-05 19:10:13 -0400 |
---|---|---|
committer | Darren Embry <dse@webonastick.com> | 2012-04-05 19:10:13 -0400 |
commit | c2feff64bc74812cc5160d3438c9c8c2eed225c0 (patch) | |
tree | 58f7d77c2a3bd480ac979c7474fd524e70cbd5cb /usr/local/www/vpn_ipsec_phase2.php | |
parent | b771e46942713fd71114feb496443e229a12129b (diff) | |
download | pfsense-c2feff64bc74812cc5160d3438c9c8c2eed225c0.zip pfsense-c2feff64bc74812cc5160d3438c9c8c2eed225c0.tar.gz |
restore default dropdown values of 24/64 bits
now that feature #2320 behavor is a bit different regarding change of
existing set value when switching between ipv4 and ipv6
Diffstat (limited to 'usr/local/www/vpn_ipsec_phase2.php')
-rw-r--r-- | usr/local/www/vpn_ipsec_phase2.php | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/usr/local/www/vpn_ipsec_phase2.php b/usr/local/www/vpn_ipsec_phase2.php index ef246c6..a97f7d5 100644 --- a/usr/local/www/vpn_ipsec_phase2.php +++ b/usr/local/www/vpn_ipsec_phase2.php @@ -296,13 +296,29 @@ function change_mode() { } function typesel_change_local(bits) { + var value = document.iform.mode.options[index].value; + if (typeof(bits) === "undefined") { + if (value === "tunnel") { + bits = 24; + } + else if (value === "tunnel6") { + bits = 64; + } + } + var address_is_blank = !/\S/.test(document.iform.localid_address.value); switch (document.iform.localid_type.selectedIndex) { case 0: /* single */ document.iform.localid_address.disabled = 0; + if (address_is_blank) { + document.iform.localid_netbits.value = 0; + } document.iform.localid_netbits.disabled = 1; break; case 1: /* network */ document.iform.localid_address.disabled = 0; + if (address_is_blank) { + document.iform.localid_netbits.value = bits; + } document.iform.localid_netbits.disabled = 0; break; case 3: /* none */ @@ -312,6 +328,9 @@ function typesel_change_local(bits) { default: document.iform.localid_address.value = ""; document.iform.localid_address.disabled = 1; + if (address_is_blank) { + document.iform.localid_netbits.value = 0; + } document.iform.localid_netbits.disabled = 1; break; } @@ -320,18 +339,37 @@ function typesel_change_local(bits) { <?php if (!isset($pconfig['mobile'])): ?> function typesel_change_remote(bits) { + var value = document.iform.mode.options[index].value; + if (typeof(bits) === "undefined") { + if (value === "tunnel") { + bits = 24; + } + else if (value === "tunnel6") { + bits = 64; + } + } + var address_is_blank = !/\S/.test(document.iform.remoteid_address.value); switch (document.iform.remoteid_type.selectedIndex) { case 0: /* single */ document.iform.remoteid_address.disabled = 0; + if (address_is_blank) { + document.iform.remoteid_netbits.value = 0; + } document.iform.remoteid_netbits.disabled = 1; break; case 1: /* network */ document.iform.remoteid_address.disabled = 0; + if (address_is_blank) { + document.iform.remoteid_netbits.value = bits; + } document.iform.remoteid_netbits.disabled = 0; break; default: document.iform.remoteid_address.value = ""; document.iform.remoteid_address.disabled = 1; + if (address_is_blank) { + document.iform.remoteid_netbits.value = 0; + } document.iform.remoteid_netbits.disabled = 1; break; } |