mirror of
https://github.com/billz/raspap-webgui.git
synced 2023-10-10 13:37:24 +02:00
Merge pull request #241 from D9ping/Branch_D9ping
Deal with infinite lease time DHCP leases
This commit is contained in:
commit
c9377c1c04
@ -29,7 +29,7 @@ function DisplayDHCPConfig() {
|
|||||||
$errors .= _('Invalid DHCP range end.').'<br />'.PHP_EOL;
|
$errors .= _('Invalid DHCP range end.').'<br />'.PHP_EOL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!ctype_digit($_POST['RangeLeaseTime'])) {
|
if (!ctype_digit($_POST['RangeLeaseTime']) && $_POST['RangeLeaseTimeUnits'] !== 'infinite') {
|
||||||
$errors .= _('Invalid DHCP lease time, not a number.').'<br />'.PHP_EOL;
|
$errors .= _('Invalid DHCP lease time, not a number.').'<br />'.PHP_EOL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -41,7 +41,12 @@ function DisplayDHCPConfig() {
|
|||||||
if (empty($errors)) {
|
if (empty($errors)) {
|
||||||
$config = 'interface='.$_POST['interface'].PHP_EOL.
|
$config = 'interface='.$_POST['interface'].PHP_EOL.
|
||||||
'dhcp-range='.$_POST['RangeStart'].','.$_POST['RangeEnd'].
|
'dhcp-range='.$_POST['RangeStart'].','.$_POST['RangeEnd'].
|
||||||
',255.255.255.0,'.$_POST['RangeLeaseTime'].$_POST['RangeLeaseTimeUnits'];
|
',255.255.255.0,';
|
||||||
|
if ($_POST['RangeLeaseTimeUnits'] !== 'infinite') {
|
||||||
|
$config .= $_POST['RangeLeaseTime'];
|
||||||
|
}
|
||||||
|
|
||||||
|
$config .= $_POST['RangeLeaseTimeUnits'];
|
||||||
exec('echo "'.$config.'" > /tmp/dhcpddata', $temp);
|
exec('echo "'.$config.'" > /tmp/dhcpddata', $temp);
|
||||||
system('sudo cp /tmp/dhcpddata '.RASPI_DNSMASQ_CONFIG, $return);
|
system('sudo cp /tmp/dhcpddata '.RASPI_DNSMASQ_CONFIG, $return);
|
||||||
} else {
|
} else {
|
||||||
@ -107,25 +112,30 @@ function DisplayDHCPConfig() {
|
|||||||
$RangeStart = $arrRange[0];
|
$RangeStart = $arrRange[0];
|
||||||
$RangeEnd = $arrRange[1];
|
$RangeEnd = $arrRange[1];
|
||||||
$RangeMask = $arrRange[2];
|
$RangeMask = $arrRange[2];
|
||||||
preg_match( '/([0-9]*)([a-z])/i', $arrRange[3], $arrRangeLeaseTime );
|
$leaseTime = $arrRange[3];
|
||||||
|
|
||||||
$hselected = '';
|
$hselected = '';
|
||||||
$mselected = '';
|
$mselected = '';
|
||||||
$dselected = '';
|
$dselected = '';
|
||||||
|
$infiniteselected = '';
|
||||||
switch( $arrRangeLeaseTime[2] ) {
|
preg_match( '/([0-9]*)([a-z])/i', $leaseTime, $arrRangeLeaseTime );
|
||||||
case 'h':
|
if ($leaseTime === 'infinite') {
|
||||||
$hselected = ' selected="selected"';
|
$infiniteselected = ' selected="selected"';
|
||||||
break;
|
} else {
|
||||||
case 'm':
|
switch( $arrRangeLeaseTime[2] ) {
|
||||||
$mselected = ' selected="selected"';
|
case 'h':
|
||||||
break;
|
$hselected = ' selected="selected"';
|
||||||
case 'd':
|
break;
|
||||||
$dselected = ' selected="selected"';
|
case 'm':
|
||||||
break;
|
$mselected = ' selected="selected"';
|
||||||
|
break;
|
||||||
|
case 'd':
|
||||||
|
$dselected = ' selected="selected"';
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-12">
|
<div class="col-lg-12">
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
@ -156,7 +166,7 @@ function DisplayDHCPConfig() {
|
|||||||
foreach( $interfaces as $inet ) {
|
foreach( $interfaces as $inet ) {
|
||||||
$select = '';
|
$select = '';
|
||||||
if( $inet === $conf['interface'] ) {
|
if( $inet === $conf['interface'] ) {
|
||||||
$select = ' selected="selected"'; // FIXED use xhtml valid attribute
|
$select = ' selected="selected"';
|
||||||
}
|
}
|
||||||
|
|
||||||
echo ' <option value="'.htmlspecialchars($inet, ENT_QUOTES).'"'.
|
echo ' <option value="'.htmlspecialchars($inet, ENT_QUOTES).'"'.
|
||||||
@ -188,10 +198,10 @@ function DisplayDHCPConfig() {
|
|||||||
<div class="col-xs-2 col-sm-2">
|
<div class="col-xs-2 col-sm-2">
|
||||||
<label for="code"><?php echo _("Interval"); ?></label>
|
<label for="code"><?php echo _("Interval"); ?></label>
|
||||||
<select name="RangeLeaseTimeUnits" class="form-control" >
|
<select name="RangeLeaseTimeUnits" class="form-control" >
|
||||||
<option value="m" <?php echo $mselected; ?>>Minute(s)</option>
|
<option value="m"<?php echo $mselected; ?>><?php echo _("Minute(s)"); ?></option>
|
||||||
<option value="h" <?php echo $hselected; ?>>Hour(s)</option>
|
<option value="h"<?php echo $hselected; ?>><?php echo _("Hour(s)"); ?></option>
|
||||||
<option value="d" <?php echo $dselected; ?>>Day(s)</option>
|
<option value="d"<?php echo $dselected; ?>><?php echo _("Day(s)"); ?></option>
|
||||||
<option value="infinite">Infinite</option>
|
<option value="infinite"<?php echo $infiniteselected; ?>><?php echo _("Infinite"); ?></option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
Loading…
Reference in New Issue
Block a user