function output_onpost_form_zone() { global $construct, $main, $db, $vars; if (substr($_POST['dns_zones__name'], -strlen($vars['dns']['root_zone']) - 1) == "." . $vars['dns']['root_zone']) { $_POST['dns_zones__name'] = substr($_POST['dns_zones__name'], 0, -strlen($vars['dns']['root_zone']) - 1); } $_POST['dns_zones__name'] = validate_zone($_POST['dns_zones__name']); $form_zone = $this->form_zone(); $ret = TRUE; $f = array(); if (get('zone') == 'add') { if ($_POST['dns_zones__name'] == '') { if (is_null($_POST['dns_zones__name'])) { $main->message->set_fromlang('error', 'zone_invalid_name'); } else { $db->output_error_fields_required(array('dns_zones__name')); } return; } switch (get('type')) { case 'forward': if ($_POST['dns_zones__name'] . '.' . $vars['dns']['root_zone'] == $vars['dns']['ns_zone']) { $main->message->set_fromlang('error', 'zone_reserved_name'); return; } break; case 'reverse': $iprange = $db->get("ip_start, ip_end", "ip_ranges", "node_id = " . intval(get('node'))); foreach ((array) $iprange as $value) { if (reverse_zone_from_ip(long2ip($value['ip_start'])) == $_POST['dns_zones__name']) { $valid = TRUE; break; } } if (!$valid) { $main->message->set_fromlang('error', 'zone_out_of_range'); return; } break; default: $main->message->set_fromlang('error', 'generic'); return; } $f = array('dns_zones.status' => 'waiting', 'dns_zones.type' => get('type'), "dns_zones.node_id" => intval(get('node'))); $ret = $form_zone->db_set($f, "dns_zones", "id", get('zone')); } $ins_id = get('zone') == 'add' ? $db->insert_id : get('zone'); $ret = $ret && $form_zone->db_set_multi(array(), "dns_zones_nameservers", "zone_id", $ins_id); if ($ret) { $main->message->set_fromlang('info', get('zone') == 'add' ? 'request_dnszone_success' : 'edit_success', make_ref('/node_editor', array("node" => intval(get('node'))))); } else { $main->message->set_fromlang('error', 'generic'); } }
$test = $vbulletin->GPC['test']; $verbose = $vbulletin->GPC['verbose']; $zone = $vbulletin->GPC['zone']; //check for valid zone switch ($zone) { case 'post': case 'blog': case 'vm': case 'group': case 'sig': break; default: print_stop_message('automediaembed_invalid_zone_specified'); } //quick validation check validate_zone($zone); if ($start < 2 && !$cont) { $settings = unserialize($vbulletin->AME_settings); $start = 0; $limitstart = "0"; build_datastore('AME_settings', serialize(array('length' => $length, 'perpage' => $perpage, 'seconds' => $seconds, 'verbose' => $verbose, 'test' => $test, 'codes' => $settings['codes'], 'conversions' => $settings['conversions']))); } else { $limitstart = $start * $perpage; } $return = false; $x = 0; require_once DIR . "/includes/ame_bbcode.php"; if ($length) { switch ($zone) { case 'post': $and .= " AND p.dateline >= {$length} ";