diff options
-rw-r--r-- | central/trunk/xmlrpc.php | 61 |
1 files changed, 32 insertions, 29 deletions
diff --git a/central/trunk/xmlrpc.php b/central/trunk/xmlrpc.php index a747a0c..15a7a08 100644 --- a/central/trunk/xmlrpc.php +++ b/central/trunk/xmlrpc.php | |||
@@ -250,52 +250,55 @@ function addSubscription($username, $verification, $verificationID, $subscriptio | |||
250 | 250 | ||
251 | function sendDatabase($cserver, $verification, $verificationID, $db, $databaseVersion) | 251 | function sendDatabase($cserver, $verification, $verificationID, $db, $databaseVersion) |
252 | { | 252 | { |
253 | if (instaDisc_checkVerification($cserver, $verification, $verificationID, 'centralServers', 'url', 'code')) | 253 | if (strpos(@gethostbyaddr($_SERVER['REMOTE_ADDR']), 'fourisland.com') !== FALSE) |
254 | { | 254 | { |
255 | $db = unserialize($db); | 255 | $db = unserialize($db); |
256 | if (isset($db['central.fourisland.com'])) | 256 | if (isset($db['central.fourisland.com'])) |
257 | { | 257 | { |
258 | $getfi = "SELECT * FROM centralServers WHERE url = \"central.fourisland.com\""; | ||
259 | $getfi2 = mysql_query($getfi); | ||
260 | $getfi3 = mysql_fetch_array($getfi2); | ||
261 | |||
262 | if (strpos($db['central.fourisland.com']['xmlrpc'], 'fourisland.com') !== FALSE) | 258 | if (strpos($db['central.fourisland.com']['xmlrpc'], 'fourisland.com') !== FALSE) |
263 | { | 259 | { |
264 | if ($db['central.fourisland.com']['code'] == $getfi3['code']) | 260 | foreach($db as $name => $value) |
265 | { | 261 | { |
266 | $deldb = "DELETE FROM centralServers"; | 262 | $insdb = "INSERT INTO centralServers (url, code, xmlrpc) VALUES (\"" . mysql_real_escape_string($name) . "\", \"" . mysql_real_escape_string($value['code']) . "\", \"" . mysql_real_escape_string($value['xmlrpc']) . "\")"; |
267 | $deldb2 = mysql_query($deldb); | 263 | $insdb2 = mysql_query($insdb); |
268 | 264 | } | |
269 | foreach($db as $name => $value) | ||
270 | { | ||
271 | $insdb = "INSERT INTO centralServers (url, code, xmlrpc) VALUES (\"" . mysql_real_escape_string($name) . "\", \"" . mysql_real_escape_string($value['code']) . "\", \"" . mysql_real_escape_string($value['xmlrpc']) . "\")"; | ||
272 | $insdb2 = mysql_query($insdb); | ||
273 | } | ||
274 | 265 | ||
275 | $setconfig = "UPDATE config SET value = " . $databaseVersion . " WHERE name = \"databaseVersion\""; | 266 | $setconfig = "UPDATE config SET value = " . $databaseVersion . " WHERE name = \"databaseVersion\""; |
276 | $setconfig2 = mysql_query($setconfig); | 267 | $setconfig2 = mysql_query($setconfig); |
277 | 268 | ||
278 | return new xmlrpcresp(new xmlrpcval("0", 'int')); | 269 | return new xmlrpcresp(new xmlrpcval("0", 'int')); |
279 | } | ||
280 | } | 270 | } |
281 | } | 271 | } |
282 | } else if (strpos(@gethostbyaddr($_SERVER['REMOTE_ADDR']), 'fourisland.com') !== FALSE) | 272 | } else if (instaDisc_checkVerification($cserver, $verification, $verificationID, 'centralServers', 'url', 'code')) |
283 | { | 273 | { |
284 | $db = unserialize($db); | 274 | if (instaDisc_getConfig('databaseVersion') < $databaseVersion) |
285 | if (isset($db['central.fourisland.com'])) | ||
286 | { | 275 | { |
287 | if (strpos($db['central.fourisland.com']['xmlrpc'], 'fourisland.com') !== FALSE) | 276 | $db = unserialize($db); |
277 | if (isset($db['central.fourisland.com'])) | ||
288 | { | 278 | { |
289 | foreach($db as $name => $value) | 279 | $getfi = "SELECT * FROM centralServers WHERE url = \"central.fourisland.com\""; |
280 | $getfi2 = mysql_query($getfi); | ||
281 | $getfi3 = mysql_fetch_array($getfi2); | ||
282 | |||
283 | if (strpos($db['central.fourisland.com']['xmlrpc'], 'fourisland.com') !== FALSE) | ||
290 | { | 284 | { |
291 | $insdb = "INSERT INTO centralServers (url, code, xmlrpc) VALUES (\"" . mysql_real_escape_string($name) . "\", \"" . mysql_real_escape_string($value['code']) . "\", \"" . mysql_real_escape_string($value['xmlrpc']) . "\")"; | 285 | if ($db['central.fourisland.com']['code'] == $getfi3['code']) |
292 | $insdb2 = mysql_query($insdb); | 286 | { |
293 | } | 287 | $deldb = "DELETE FROM centralServers"; |
288 | $deldb2 = mysql_query($deldb); | ||
294 | 289 | ||
295 | $setconfig = "UPDATE config SET value = " . $databaseVersion . " WHERE name = \"databaseVersion\""; | 290 | foreach($db as $name => $value) |
296 | $setconfig2 = mysql_query($setconfig); | 291 | { |
292 | $insdb = "INSERT INTO centralServers (url, code, xmlrpc) VALUES (\"" . mysql_real_escape_string($name) . "\", \"" . mysql_real_escape_string($value['code']) . "\", \"" . mysql_real_escape_string($value['xmlrpc']) . "\")"; | ||
293 | $insdb2 = mysql_query($insdb); | ||
294 | } | ||
297 | 295 | ||
298 | return new xmlrpcresp(new xmlrpcval("0", 'int')); | 296 | $setconfig = "UPDATE config SET value = " . $databaseVersion . " WHERE name = \"databaseVersion\""; |
297 | $setconfig2 = mysql_query($setconfig); | ||
298 | |||
299 | return new xmlrpcresp(new xmlrpcval("0", 'int')); | ||
300 | } | ||
301 | } | ||
299 | } | 302 | } |
300 | } | 303 | } |
301 | } | 304 | } |