Пример #1
0
# save $_POST to $address
$address = $_POST;
# required fields
isset($address['action']) ?: $Result->show("danger", _("Missing required fields") . " action", true);
isset($address['subnet']) ?: $Result->show("danger", _("Missing required fields") . " subnet", true);
isset($address['subnetId']) ?: $Result->show("danger", _("Missing required fields") . " subnetId", true);
isset($address['id']) ?: $Result->show("danger", _("Missing required fields") . " id", true);
# ptr
if (!isset($address['PTRignore'])) {
    $address['PTRignore'] = 0;
}
# generate firewall address object name
$firewallZoneSettings = json_decode($User->settings->firewallZoneSettings, true);
if ($firewallZoneSettings->autogen == 'on') {
    if ($address['action'] == 'add') {
        $address['firewallAddressObject'] = $Zones->generate_address_object($address['subnetId'], $address['dns_name']);
    } else {
        if ($_POST['firewallAddressObject']) {
            $address['firewallAddressObject'] = $_POST['firewallAddressObject'];
        } else {
            $address['firewallAddressObject'] = NULL;
        }
    }
}
# set and check permissions
$subnet_permission = $Subnets->check_permission($User->user, $address['subnetId']);
$subnet_permission > 1 ?: $Result->show("danger", _('Cannot edit IP address'), true);
# fetch subnet
$subnet = (array) $Subnets->fetch_subnet(null, $address['subnetId']);
if (@$_POST['verifydatabase'] !== "yes") {
    sizeof($subnet) > 0 ?: $Result->show("danger", _("Invalid subnet"), true);