query("DELETE FROM `geo` WHERE time<(NOW() - INTERVAL 1 YEAR)"); if (isset($_GET['label'])) { $label = Database::escape($_GET['label']); $db->query("UPDATE `geo` SET label='$label' WHERE user_id='$id'"); } else if (isset($_GET['lat']) && isset($_GET['lng'])) { $lat = Database::escape($_GET['lat']); $lng = Database::escape($_GET['lng']); if ($db->query("SELECT id FROM `geo` WHERE user_id='$id'")) { $db->query("UPDATE `geo` SET time=NOW(), lat='$lat', lng='$lng', version='$version' WHERE user_id='$id'"); } else { $db->query("INSERT INTO `geo` (user_id, lat, lng, version, label) VALUES ('$id', '$lat', '$lng', '$version', '')"); } } else { if ($db->query("SELECT * FROM `geo` WHERE user_id='$id'")) { $lat = $db['lat']; $lng = $db['lng']; $db->query("UPDATE `geo` SET version='$version', time=NOW() WHERE user_id='$id'"); } else { $info = preg_split("/,/", file_get_contents("https://geoip.maxmind.com/b?l={$config['maxmind_key']}&i=" . (isset($_GET['ip']) ? $_GET['ip'] : $_SERVER['REMOTE_ADDR']))); $cc = $info[0]; $lat = $info[3] + rand(-1000, 1000)/2000000; $lng = $info[4] + rand(-1000, 1000)/2000000; if ($id && $info && $lat && $lng) { $db->query("INSERT INTO `geo` (user_id, lat, lng, version, label) VALUES ('$id', '$lat', '$lng', '$version', '')"); } } } }