//$update_soas[] = $app->db->queryAllRecords("SELECT DISTINCT zone FROM rr WHERE name LIKE '%".$soa['origin']."' OR data LIKE '%".$soa['origin']."'");
$app->db->query("UPDATE rr SET name = '".substr($rr['name'],0,-(strlen($this->dataRecord['origin']))).$this->dataRecord['origin']."' WHERE name LIKE '%".$soa['origin']."' AND type != 'PTR'");
$app->db->query("UPDATE rr SET data = '".substr($rr['data'],0,-(strlen($this->dataRecord['origin']))).$this->dataRecord['origin']."' WHERE data LIKE '%".$soa['origin']."' AND type != 'PTR'");
$app->db->query("UPDATE rr SET name = '".substr($rr['name'],0,-(strlen($this->dataRecord['origin']))).$this->dataRecord['origin']."' WHERE name LIKE '%".$soa['origin']."' AND type != 'PTR' AND id = ".$rr['id']);
$app->db->query("UPDATE rr SET data = '".substr($rr['data'],0,-(strlen($this->dataRecord['origin']))).$this->dataRecord['origin']."' WHERE data LIKE '%".$soa['origin']."' AND type != 'PTR' AND id = ".$rr['id']);
$app->db->query("UPDATE rr SET name = '".substr($rr['name'],0,-(strlen($this->dataRecord['origin']))).$this->dataRecord['origin']."' WHERE name LIKE '%".$soa['origin']."' AND type = 'PTR'");
$app->db->query("UPDATE rr SET data = '".substr($rr['data'],0,-(strlen($this->dataRecord['origin']))).$this->dataRecord['origin']."' WHERE data LIKE '%".$soa['origin']."' AND type = 'PTR'");
$app->db->query("UPDATE rr SET name = '".substr($rr['name'],0,-(strlen($this->dataRecord['origin']))).$this->dataRecord['origin']."' WHERE name LIKE '%".$soa['origin']."' AND type = 'PTR' AND id = ".$rr['id']);
$app->db->query("UPDATE rr SET data = '".substr($rr['data'],0,-(strlen($this->dataRecord['origin']))).$this->dataRecord['origin']."' WHERE data LIKE '%".$soa['origin']."' AND type = 'PTR' AND id = ".$rr['id']);
}
}
...
...
@@ -132,7 +139,7 @@ class page_action extends tform_actions {
$ptr_soa=$c.'.'.$b.'.'.$a.'.in-addr.arpa.';
if($ptr=$app->db->queryOneRecord("SELECT soa.id, soa.serial FROM soa, rr WHERE rr.type = 'PTR' AND rr.data = '".$fqdn."' AND rr.zone = soa.id AND soa.origin = '".$ptr_soa."'")){
############
if($a_rr_with_same_ip=$app->db->queryOneRecord("SELECT rr.*, soa.origin FROM rr, soa WHERE rr.type = 'A' AND rr.data = '".$soa_rr['data']."' AND rr.zone = soa.id AND soa.active = 'Y' AND rr.id != ".$soa_rr["id"]." AND rr.zone != '".$soa_rr['zone']."'")){
if($a_rr_with_same_ip=$app->db->queryOneRecord("SELECT rr.*, soa.origin FROM rr, soa WHERE rr.type = 'A' AND rr.data = '".$soa_rr['data']."' AND rr.zone = soa.id AND soa.active = 'Y' AND rr.id != ".$soa_rr["id"]." AND rr.zone != '".$this->dataRecord['zone']."'")){
if(substr($a_rr_with_same_ip['name'],-1)=='.'){
$new_ptr_soa_rr_data=$a_rr_with_same_ip['name'];
}else{
...
...
@@ -165,6 +172,38 @@ class page_action extends tform_actions {