if (isset($id) && $a_vip[$id]) { $pconfig['mode'] = $a_vip[$id]['mode']; $pconfig['vhid'] = $a_vip[$id]['vhid']; $pconfig['advskew'] = $a_vip[$id]['advskew']; $pconfig['advbase'] = $a_vip[$id]['advbase']; $pconfig['password'] = $a_vip[$id]['password']; $pconfig['range'] = $a_vip[$id]['range']; $pconfig['subnet'] = $a_vip[$id]['subnet']; $pconfig['subnet_bits'] = $a_vip[$id]['subnet_bits']; $pconfig['noexpand'] = $a_vip[$id]['noexpand']; $pconfig['descr'] = $a_vip[$id]['descr']; $pconfig['type'] = $a_vip[$id]['type']; $pconfig['interface'] = $a_vip[$id]['interface']; $pconfig['uniqid'] = $a_vip[$id]['uniqid']; } else { $lastvhid = find_last_used_vhid(); $lastvhid++; $pconfig['vhid'] = $lastvhid; $pconfig['uniqid'] = uniqid(); } if ($_POST) { unset($input_errors); $pconfig = $_POST; /* input validation */ $reqdfields = explode(" ", "mode"); $reqdfieldsn = array(gettext("Type")); do_input_validation($_POST, $reqdfields, $reqdfieldsn, $input_errors); if ($_POST['subnet']) { $_POST['subnet'] = trim($_POST['subnet']); } if ($_POST['subnet']) {
} if (!isset($config['virtualip']['vip']) || !is_array($config['virtualip']['vip'])) { $config['virtualip']['vip'] = array(); } $a_vip =& $config['virtualip']['vip']; if ($_SERVER['REQUEST_METHOD'] === 'GET') { // input record id, if valid if (isset($_GET['dup']) && isset($a_vip[$_GET['dup']])) { $configId = $_GET['dup']; $after = $configId; } elseif (isset($_GET['id']) && isset($a_vip[$_GET['id']])) { $id = $_GET['id']; $configId = $id; } $pconfig = array(); $pconfig['vhid'] = find_last_used_vhid() + 1; $form_fields = array('mode', 'vhid', 'advskew', 'advbase', 'password', 'subnet', 'subnet_bits', 'descr', 'type', 'interface'); if (isset($configId)) { // 1-on-1 copy of config data foreach ($form_fields as $fieldname) { if (isset($a_vip[$configId][$fieldname])) { $pconfig[$fieldname] = $a_vip[$configId][$fieldname]; } } } // initialize empty form fields foreach ($form_fields as $fieldname) { if (!isset($pconfig[$fieldname])) { $pconfig[$fieldname] = null; } }