Exemplo n.º 1
0
if ($znum) {
    if ($user->isOwned($znum, 'master', 'live')) {
        $zone = new masterZone(array('id' => $znum));
        $zone->loadZone();
        $zonerec = $zone->getZoneHead();
        $zrec = array();
        foreach (array('refresh', 'expire', 'retry', 'ttl', 'secured', 'pri_dns', 'sec_dns', 'owner') as $key) {
            $zrec[$key] = (isset($_POST[$key]) and $_POST[$key] > '') ? $_POST[$key] : $zonerec[$key];
        }
        $zrec['valid'] = 'may';
        $zone->setZoneHead($zrec);
        $zone->saveZoneHead();
        $total = isset($_POST['total']) && $_POST['total'] > 0 ? $_POST['total'] : 0;
        for ($x = 0; $x < $total; $x++) {
            if (isset($_POST['delete'][$x])) {
                $zone->eraseRecord(intval($_POST['host_id'][$x]));
            } else {
                $nrec = array();
                foreach (array('host', 'ttl', 'type', 'pri', 'destination') as $key) {
                    $pkey = $key == 'ttl' ? 'rttl' : $key;
                    $nrec[$key] = isset($_POST[$pkey][$x]) ? $_POST[$pkey][$x] : '';
                    $nrec[$key] = $key == 'ttl' && $nrec[$key] == '' ? 0 : $nrec[$key];
                    $nrec[$key] = $key == 'pri' && $nrec[$key] == '' ? 10 : $nrec[$key];
                    $nrec[$key] = $key == 'host' && $nrec[$key] == '' ? '@' : $nrec[$key];
                    $nrec[$key] = $key == 'destination' && $nrec[$key] == '' ? '@' : $nrec[$key];
                }
                if ($nrec['host'] != $nrec['destination']) {
                    $urec = new masterRecord(intval($_POST['host_id'][$x]));
                    $urec->loadRecord();
                    $urec->setRecord($nrec);
                    $xrec = $urec->getRecordRaw();