Ejemplo n.º 1
0
    /* geokrety info update */
    $sql = "INSERT INTO gk_item (`id`, `name`, `distancetravelled`, `latitude`, `longitude`, `stateid`) VALUES ('" . $id . "', '" . $name . "', '" . $dist . "', '" . $lat . "', '" . $lon . "','" . $state . "')\n        ON DUPLICATE KEY UPDATE `name`='" . $name . "', `distancetravelled`='" . $dist . "', `latitude`='" . $lat . "', `longitude`='" . $lon . "', `stateid`='" . $state . "'";
    $query = mysql_query($sql);
    /* Notify OKAPI. https://github.com/opencaching/okapi/issues/179 */
    $rs = mysql_query("SELECT distinct wp FROM gk_item_waypoint WHERE id='" . mysql_real_escape_string($id) . "'");
    $cache_codes = array();
    while ($row = mysql_fetch_array($rs)) {
        $cache_codes[] = $row[0];
    }
    \okapi\Facade::schedule_geocache_check($cache_codes);
    /* waypoints update */
    sql("DELETE FROM gk_item_waypoint WHERE id='&1'", $id);
    foreach ($geokret->waypoints as $waypoint) {
        $wp = sql_escape($waypoint->waypoint);
        if ($wp != '') {
            $sql = "INSERT INTO gk_item_waypoint (id, wp) VALUES ('" . $id . "', '" . $wp . "') ON DUPLICATE KEY UPDATE wp='" . $wp . "'";
            mysql_query($sql);
        }
    }
}
/* cleaning... */
/* Notify OKAPI. https://github.com/opencaching/okapi/issues/179 */
$rs = mysql_query("SELECT distinct wp FROM gk_item_waypoint WHERE id NOT IN (SELECT id FROM gk_item)");
$cache_codes = array();
while ($row = mysql_fetch_array($rs)) {
    $cache_codes[] = $row[0];
}
\okapi\Facade::schedule_geocache_check($cache_codes);
sql("DELETE FROM gk_item_waypoint WHERE id NOT IN (SELECT id FROM gk_item)");
/* last synchro update */
sql("UPDATE sysconfig SET value = '" . sql_escape($gkxml['date']) . "' WHERE name='geokrety_lastupdate'");