in which the specified checkbox lives so that the checkbox, its label and help text are hidden
- function hideCheckbox(id, hide) {
- if(hide)
- $('#' + id).parent().parent().parent('div').addClass('hidden');
- else
- $('#' + id).parent().parent().parent('div').removeClass('hidden');
- }
+ // Hides the
in which the specified IP address element lives so that the input, its label and help text are hidden
+ function hideIpAddress(id, hide) {
+ if(hide)
+ $('#' + id).parent().parent().parent('div').addClass('hidden');
+ else
+ $('#' + id).parent().parent().parent('div').removeClass('hidden');
+ }
- function show_dhcp6adv() {
- var ovr = $('#adv_dhcp6_config_file_override').prop('checked');
- var adv = $('#dhcp6adv').prop('checked');
+ // Hides the
in which the specified checkbox lives so that the checkbox, its label and help text are hidden
+ function hideCheckbox(id, hide) {
+ if(hide)
+ $('#' + id).parent().parent().parent('div').addClass('hidden');
+ else
+ $('#' + id).parent().parent().parent('div').removeClass('hidden');
+ }
- hideCheckbox('dhcp6usev4iface', ovr);
- hideCheckbox('dhcp6prefixonly', ovr);
- hideInput('dhcp6-ia-pd-len', ovr);
- hideCheckbox('dhcp6-ia-pd-send-hint', ovr);
- hideInput('adv_dhcp6_config_file_override_path', !ovr);
+ function show_dhcp6adv() {
+ var ovr = $('#adv_dhcp6_config_file_override').prop('checked');
+ var adv = $('#dhcp6adv').prop('checked');
- hideClass('dhcp6advanced', !adv || ovr);
- }
+ hideCheckbox('dhcp6usev4iface', ovr);
+ hideCheckbox('dhcp6prefixonly', ovr);
+ hideInput('dhcp6-ia-pd-len', ovr);
+ hideCheckbox('dhcp6-ia-pd-send-hint', ovr);
+ hideInput('adv_dhcp6_config_file_override_path', !ovr);
- // On page load . .
- updateType($('#type').val());
- updateTypeSix($('#type6').val());
- show_reset_settings($('#pppoe-reset-type').val());
- $("#add").prop('type' ,'button');
- $("#cnx").prop('type' ,'button');
- $("#addgw").prop('type' ,'button');
- $("#add6").prop('type' ,'button');
- $("#cnx6").prop('type' ,'button');
- $("#addgw6").prop('type' ,'button');
- hideClass('dhcp6advanced', true);
- show_dhcp6adv();
+ hideClass('dhcp6advanced', !adv || ovr);
+ }
- // On click . .
+ function setDHCPoptions() {
+ var adv = $('#dhcpadv').prop('checked');
+ var ovr = $('#dhcpovr').prop('checked');
+
+ if(ovr) {
+ hideInput('dhcphostname', true);
+ hideIpAddress('alias-address', true);
+ hideInput('dhcprejectfrom', true);
+ hideInput('adv_dhcp_config_file_override_path', false);
+ hideClass('dhcpadvanced', true);
+ } else {
+ hideInput('dhcphostname', false);
+ hideIpAddress('alias-address', false);
+ hideInput('dhcprejectfrom', false);
+ hideInput('adv_dhcp_config_file_override_path', true);
+ hideClass('dhcpadvanced', !adv);
+ }
+ }
+
+ // On page load . .
+ updateType($('#type').val());
+ updateTypeSix($('#type6').val());
+ show_reset_settings($('#pppoe-reset-type').val());
+ $("#add").prop('type' ,'button');
+ $("#cnx").prop('type' ,'button');
+ $("#addgw").prop('type' ,'button');
+ $("#add6").prop('type' ,'button');
+ $("#cnx6").prop('type' ,'button');
+ $("#addgw6").prop('type' ,'button');
+ hideClass('dhcp6advanced', true);
+ hideClass('dhcpadvanced', true);
+ show_dhcp6adv();
+ setDHCPoptions()
+
+ // On click . .
$('#type').on('change', function() {
- updateType( this.value );
- });
+ updateType( this.value );
+ });
$('#type6').on('change', function() {
- updateTypeSix( this.value );
- });
+ updateTypeSix( this.value );
+ });
$('#pppoe-reset-type').on('change', function() {
- show_reset_settings( this.value );
- });
+ show_reset_settings( this.value );
+ });
- $("#add").click(function() {
- hide_add_gatewaysave();
- });
+ $("#add").click(function() {
+ hide_add_gatewaysave();
+ });
- $("#cnx").click(function() {
- $("#newgateway").modal('hide');
- });
+ $("#cnx").click(function() {
+ $("#newgateway").modal('hide');
+ });
- $("#add6").click(function() {
- hide_add_gatewaysave_v6();
- });
+ $("#add6").click(function() {
+ hide_add_gatewaysave_v6();
+ });
- $("#cnx6").click(function() {
- $("#newgateway6").modal('hide');
- });
+ $("#cnx6").click(function() {
+ $("#newgateway6").modal('hide');
+ });
- $('#country').on('change', function() {
- providers_list();
- });
+ $('#country').on('change', function() {
+ providers_list();
+ });
- $('#provider_list').on('change', function() {
- providerplan_list();
- });
+ $('#provider_list').on('change', function() {
+ providerplan_list();
+ });
- $('#providerplan').on('change', function() {
- prefill_provider();
- });
+ $('#providerplan').on('change', function() {
+ prefill_provider();
+ });
- $('#dhcp6adv').click(function () {
- show_dhcp6adv();
- });
+ $('#dhcpadv, #dhcpovr').click(function () {
+ setDHCPoptions();
+ });
- $('#adv_dhcp6_config_file_override').click(function () {
- show_dhcp6adv();
- });
+ $('#dhcp6adv').click(function () {
+ show_dhcp6adv();
+ });
- // DHCP preset actions
- // Set presets from value of radio buttons
- function setPresets(val) {
- // timeout, retry, select-timeout, reboot, backoff-cutoff, initial-interval
- if (val == "DHCP") setPresetsnow("60", "300", "0", "10", "120", "10");
- if (val == "pfSense") setPresetsnow("60", "15", "0", "", "", "1");
- if (val == "SavedCfg") setPresetsnow("=htmlspecialchars($pconfig['adv_dhcp_pt_timeout']);?>", "=htmlspecialchars($pconfig['adv_dhcp_pt_retry']);?>", "=htmlspecialchars($pconfig['adv_dhcp_pt_select_timeout']);?>", "=htmlspecialchars($pconfig['adv_dhcp_pt_reboot']);?>", "=htmlspecialchars($pconfig['adv_dhcp_pt_backoff_cutoff']);?>", "=htmlspecialchars($pconfig['adv_dhcp_pt_initial_interval']);?>");
- if (val == "Clear") setPresetsnow("", "", "", "", "", "");
- }
+ $('#adv_dhcp6_config_file_override').click(function () {
+ show_dhcp6adv();
+ });
- function setPresetsnow(timeout, retry, selecttimeout, reboot, backoffcutoff, initialinterval) {
- $('#adv_dhcp_pt_timeout').val(timeout);
- $('#adv_dhcp_pt_retry').val(retry);
- $('#adv_dhcp_pt_select_timeout').val(selecttimeout);
- $('#adv_dhcp_pt_reboot').val(reboot);
- $('#adv_dhcp_pt_backoff_cutoff').val(backoffcutoff);
- $('#adv_dhcp_pt_initial_interval').val(initialinterval);
- }
+ // DHCP preset actions
+ // Set presets from value of radio buttons
+ function setPresets(val) {
+ // timeout, retry, select-timeout, reboot, backoff-cutoff, initial-interval
+ if (val == "DHCP") setPresetsnow("60", "300", "0", "10", "120", "10");
+ if (val == "pfSense") setPresetsnow("60", "15", "0", "", "", "1");
+ if (val == "SavedCfg") setPresetsnow("=htmlspecialchars($pconfig['adv_dhcp_pt_timeout']);?>", "=htmlspecialchars($pconfig['adv_dhcp_pt_retry']);?>", "=htmlspecialchars($pconfig['adv_dhcp_pt_select_timeout']);?>", "=htmlspecialchars($pconfig['adv_dhcp_pt_reboot']);?>", "=htmlspecialchars($pconfig['adv_dhcp_pt_backoff_cutoff']);?>", "=htmlspecialchars($pconfig['adv_dhcp_pt_initial_interval']);?>");
+ if (val == "Clear") setPresetsnow("", "", "", "", "", "");
+ }
- // Set preset buttons on page load
- var sv = "=htmlspecialchars($pconfig['adv_dhcp_pt_values']);?>";
- if(sv == "")
- $("input[name=adv_dhcp_pt_values][value='SavedCfg']").prop('checked', true);
+ function setPresetsnow(timeout, retry, selecttimeout, reboot, backoffcutoff, initialinterval) {
+ $('#adv_dhcp_pt_timeout').val(timeout);
+ $('#adv_dhcp_pt_retry').val(retry);
+ $('#adv_dhcp_pt_select_timeout').val(selecttimeout);
+ $('#adv_dhcp_pt_reboot').val(reboot);
+ $('#adv_dhcp_pt_backoff_cutoff').val(backoffcutoff);
+ $('#adv_dhcp_pt_initial_interval').val(initialinterval);
+ }
- // Set preset from value
- setPresets(sv);
+ // Set preset buttons on page load
+ var sv = "=htmlspecialchars($pconfig['adv_dhcp_pt_values']);?>";
+ if(sv == "")
+ $("input[name=adv_dhcp_pt_values][value='SavedCfg']").prop('checked', true);
- // On click . .
- $('[id=adv_dhcp_pt_values]').click(function () {
- setPresets($('input[name=adv_dhcp_pt_values]:checked').val());
- });
+ // Set preset from value
+ setPresets(sv);
+
+ // On click . .
+ $('[id=adv_dhcp_pt_values]').click(function () {
+ setPresets($('input[name=adv_dhcp_pt_values]:checked').val());
+ });
});
//]]>