unset($obj_ptr); } } else { log_write("debug", "process", "Not updating record " . $record["id"] . " due to no change in details"); } } elseif ($record["mode"] == "delete") { $obj_record->action_delete_record(); // note: we intentionally don't delete the reverse PTR } } else { // new row but empty/deleted } } // update domain $obj_domain->action_update_serial(); $obj_domain->action_update_ns(); // clear messages & replace with custom one $_SESSION["notification"]["message"] = array("Domain updated successfully - name servers scheduled to reload with new domain configuration"); // clear the form_session as the update has been successfully updated $_SESSION['form']['domain_records']['form_session'] = 0; /* Update reverse domains (if appropiate) If there are any reverse domain PTR records set, we will need to update the serial on the domain to reflect the changes. */ log_write("debug", "process", "Updating serials for reverse domains"); if ($data["reverse"]) { foreach ($data["reverse"] as $id_domain) { $obj_reverse = new domain(); $obj_reverse->id = $id_domain;
function action_delete() { log_debug("name_server", "Executing action_delete()"); /* Start Transaction */ $sql_obj = new sql_query(); $sql_obj->trans_begin(); /* Delete Name Server */ $sql_obj->string = "DELETE FROM name_servers WHERE id='" . $this->id . "' LIMIT 1"; $sql_obj->execute(); $sql_obj->string = "DELETE FROM cloud_zone_map WHERE id='" . $this->id . "'"; $sql_obj->execute(); /* Un-associated any matched log entries */ $sql_obj->string = "UPDATE logs SET id_server='0' WHERE id_server='" . $this->id . "'"; $sql_obj->execute(); /* Update NS records We need to run through all the domains and update the records - if the nameserver was an automated entry for all the domains, after deleting the name server we should remove it from all the domains. */ $obj_domain = new domain(); $obj_domain->load_data_all(); foreach ($obj_domain->data as $data_domain) { $obj_domain_sub = new domain(); $obj_domain_sub->id = $data_domain["id"]; $obj_domain_sub->load_data(); $obj_domain_sub->action_update_ns(); $obj_domain_sub->action_update_serial(); } /* Commit */ if (error_check()) { $sql_obj->trans_rollback(); log_write("error", "name_server", "An error occured whilst trying to delete the name server."); return 0; } else { $sql_obj->trans_commit(); log_write("notification", "name_server", "Name server has been successfully deleted."); return 1; } }