本文整理汇总了PHP中Subnets::verify_subnet_resize方法的典型用法代码示例。如果您正苦于以下问题:PHP Subnets::verify_subnet_resize方法的具体用法?PHP Subnets::verify_subnet_resize怎么用?PHP Subnets::verify_subnet_resize使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Subnets
的用法示例。
在下文中一共展示了Subnets::verify_subnet_resize方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: Result
$Result = new Result();
# verify that user is logged in
$User->check_user_session();
# validate csrf cookie
$_POST['csrf_cookie'] == $_SESSION['csrf_cookie'] ?: $Result->show("danger", _("Invalid CSRF cookie"), true);
# ID must be numeric
if (!is_numeric($_POST['subnetId'])) {
$Result->show("danger", _("Invalid ID"), true);
}
# verify that user has write permissions for subnet
if ($Subnets->check_permission($User->user, $_POST['subnetId']) < 3) {
$Result->show("danger", _('You do not have permissions to resize subnet') . '!', true);
}
# fetch old subnet details and set new
$subnet_old = (array) $Subnets->fetch_subnet(null, $_POST['subnetId']);
# verify resizing
$Subnets->verify_subnet_resize($subnet_old['subnet'], $_POST['newMask'], $subnet_old['id'], $subnet_old['vrfId'], $subnet_old['masterSubnetId'], $subnet_old['mask'], $subnet_old['sectionId']);
# we need to recalculate subnet address if needed
if ($subnet_old['mask'] < $_POST['newMask']) {
$subnet_new['subnet'] = $subnet_old['subnet'];
} else {
$new_boundaries = $Subnets->get_network_boundaries($Subnets->transform_address($subnet_old['subnet'], "dotted"), $_POST['newMask']);
$subnet_new['subnet'] = $Subnets->transform_address($new_boundaries['network'], "decimal");
}
# set update values
$values = array("id" => $_POST['subnetId'], "subnet" => $subnet_new['subnet'], "mask" => $_POST['newMask']);
if (!$Subnets->modify_subnet("resize", $values)) {
$Result->show("danger", _("Error resizing subnet") . "!", true);
} else {
$Result->show("success", _("Subnet resized successfully") . "!", true);
}