@@ -87,14 +87,17 @@ private function server_has_data($type, $server) {
8787 'mail_domain ' => array (
8888 'index_field ' => 'domain_id ' ,
8989 'server_type ' => 'mail ' ,
90+ 'server_id ' => $ server_id ,
9091 ),
9192 'mail_mailinglist ' => array (
9293 'index_field ' => 'mailinglist_id ' ,
9394 'server_type ' => 'mail ' ,
95+ 'server_id ' => $ server_id ,
9496 ),
9597 'mail_user ' => array (
9698 'index_field ' => 'mailuser_id ' ,
9799 'server_type ' => 'mail ' ,
100+ 'server_id ' => $ server_id ,
98101 ),
99102 );
100103 }
@@ -103,6 +106,7 @@ private function server_has_data($type, $server) {
103106 'mail_access ' => array (
104107 'index_field ' => 'access_id ' ,
105108 'server_type ' => 'mail ' ,
109+ 'server_id ' => $ server_id ,
106110 ),
107111 'mail_content_filter ' => array (
108112 'index_field ' => 'content_filter_id ' ,
@@ -119,18 +123,22 @@ private function server_has_data($type, $server) {
119123 'web_domain ' => array (
120124 'index_field ' => 'domain_id ' ,
121125 'server_type ' => 'web ' ,
126+ 'server_id ' => $ server_id ,
122127 ),
123128 'shell_user ' => array (
124129 'index_field ' => 'shell_user_id ' ,
125130 'server_type ' => 'web ' ,
131+ 'server_id ' => $ server_id ,
126132 ),
127133 'cron ' => array (
128134 'index_field ' => 'id ' ,
129135 'server_type ' => 'cron ' ,
136+ 'server_id ' => $ server_id ,
130137 ),
131138 'ftp_user ' => array (
132139 'index_field ' => 'ftp_user_id ' ,
133140 'server_type ' => 'web ' ,
141+ 'server_id ' => $ server_id ,
134142 ),
135143 );
136144 }
@@ -139,6 +147,7 @@ private function server_has_data($type, $server) {
139147 'dns_soa ' => array (
140148 'index_field ' => 'id ' ,
141149 'server_type ' => 'dns ' ,
150+ 'server_id ' => $ server_id ,
142151 ),
143152 );
144153 }
@@ -147,6 +156,7 @@ private function server_has_data($type, $server) {
147156 'webdav_user ' => array (
148157 'index_field ' => 'webdav_user_id ' ,
149158 'server_type ' => 'file ' ,
159+ 'server_id ' => $ server_id ,
150160 ),
151161 );
152162 }
@@ -155,6 +165,7 @@ private function server_has_data($type, $server) {
155165 'web_database ' => array (
156166 'index_field ' => 'web_database_id ' ,
157167 'server_type ' => 'db ' ,
168+ 'server_id ' => $ server_id ,
158169 ),
159170 );
160171 }
@@ -163,14 +174,16 @@ private function server_has_data($type, $server) {
163174 'openvz_vm ' => array (
164175 'index_field ' => 'vm_id ' ,
165176 'server_type ' => 'vserver ' ,
177+ 'server_id ' => $ server_id ,
166178 ),
167179 );
168180 }
169181 //* proxy
170182 //* firewall
171183 $ array_out = array ();
172184 foreach ($ server_data as $ db_table => $ data ) {
173- $ records = $ app ->db ->queryAllRecords ("SELECT * FROM $ db_table WHERE server_id = ? " , $ server_id );
185+ $ sql = @(isset ($ data ['server_id ' ]))?"SELECT * FROM $ db_table WHERE server_id = $ server_id " :"SELECT * FROM $ db_table " ;;
186+ $ records = $ app ->db ->queryAllRecords ($ sql );
174187 if (!empty ($ records )) array_push ($ array_out , $ db_table );
175188 }
176189
@@ -359,7 +372,7 @@ function onShowEnd() {
359372 }
360373
361374 //* fetch values during do_resync
362- private function query_server ($ db_table , $ server_id , $ server_type , $ active =true ) {
375+ private function query_server ($ db_table , $ server_id , $ server_type , $ active =true , $ opt = '' ) {
363376 global $ app ;
364377
365378 $ server_name = array ();
@@ -376,7 +389,7 @@ private function query_server($db_table, $server_id, $server_type, $active=true)
376389 unset($ temp );
377390
378391 if ( isset ($ temp_id ) ) $ server_id = rtrim ($ temp_id ,', ' );
379- $ sql = "SELECT * FROM $ db_table WHERE server_id IN ( " .$ server_id .") " ;
392+ $ sql = "SELECT * FROM $ db_table WHERE server_id IN ( " .$ server_id .") " . $ opt ;
380393 if ($ active ) $ sql .= " AND active = 'y' " ;
381394 $ records = $ app ->db ->queryAllRecords ($ sql );
382395
@@ -491,7 +504,7 @@ function onSubmit() {
491504 $ msg .= '<b> ' .$ app ->tform ->wordbook ['do_dns_txt ' ].'</b><br> ' ;
492505 if (is_array ($ soa_records ) && !empty ($ soa_records ))
493506 foreach ($ soa_records as $ soa_rec ) {
494- $ temp = $ this ->query_server ('dns_rr ' , $ soa_rec ['server_id ' ], $ server_type );
507+ $ temp = $ this ->query_server ('dns_rr ' , $ soa_rec ['server_id ' ], ' dns ' , true , " AND zone = " . $ app -> functions -> intval ( $ soa_rec [ ' id ' ]) );
495508 $ rr_records = $ temp [0 ];
496509 if (!empty ($ rr_records )) {
497510 foreach ($ rr_records as $ rec ) {
@@ -503,7 +516,7 @@ function onSubmit() {
503516 }
504517 $ new_serial = $ app ->validate_dns ->increase_serial ($ soa_rec ['serial ' ]);
505518 $ app ->db ->datalogUpdate ('dns_soa ' , "serial = ' " .$ new_serial ."' " , 'id ' , $ soa_rec ['id ' ]);
506- $ msg .= '[ ' .$ server_name [$ soa_rec ['server_id ' ]].'] ' .$ soa_rec ['origin ' ].'<br> ' ;
519+ $ msg .= '[ ' .$ server_name [$ soa_rec ['server_id ' ]].'] ' .$ soa_rec ['origin ' ].' ( ' . count ( $ rr_records ). ' ) <br> ' ;
507520 }
508521 else $ msg .= $ app ->tform ->wordbook ['no_results_txt ' ].'<br> ' ;
509522
0 commit comments