| @@ 160-175 (lines=16) @@ | ||
| 157 | return $data; |
|
| 158 | } |
|
| 159 | ||
| 160 | function getTop50Pokemon($pokemon_id, $top_order_by, $top_direction) { |
|
| 161 | $req = "SELECT (CONVERT_TZ(disappear_time, '+00:00', '".self::$time_offset."')) AS distime, pokemon_id, disappear_time, latitude, longitude, |
|
| 162 | cp, individual_attack, individual_defense, individual_stamina, |
|
| 163 | ROUND(100*(individual_attack+individual_defense+individual_stamina)/45,1) AS IV, move_1, move_2, form |
|
| 164 | FROM pokemon |
|
| 165 | WHERE pokemon_id = '".$pokemon_id."' AND move_1 IS NOT NULL AND move_1 <> '0' |
|
| 166 | ORDER BY $top_order_by $top_direction, disappear_time DESC |
|
| 167 | LIMIT 0,50"; |
|
| 168 | ||
| 169 | $result = $this->mysqli->query($req); |
|
| 170 | $top = array(); |
|
| 171 | while ($data = $result->fetch_object()) { |
|
| 172 | $top[] = $data; |
|
| 173 | } |
|
| 174 | return $top; |
|
| 175 | } |
|
| 176 | ||
| 177 | function getTop50Trainers($pokemon_id, $best_order_by, $best_direction) { |
|
| 178 | $trainer_blacklist = ""; |
|
| @@ 580-593 (lines=14) @@ | ||
| 577 | return $data; |
|
| 578 | } |
|
| 579 | ||
| 580 | private function getTrainerActivePokemon($trainer_name){ |
|
| 581 | $req = "(SELECT DISTINCT gympokemon.pokemon_id, gympokemon.pokemon_uid, gympokemon.cp, DATEDIFF(UTC_TIMESTAMP(), gympokemon.last_seen) AS last_scanned, gympokemon.trainer_name, gympokemon.iv_defense, gympokemon.iv_stamina, gympokemon.iv_attack, filtered_gymmember.gym_id, CONVERT_TZ(filtered_gymmember.deployment_time, '+00:00', '".self::$time_offset."') as deployment_time, '1' AS active |
|
| 582 | FROM gympokemon INNER JOIN |
|
| 583 | (SELECT gymmember.pokemon_uid, gymmember.gym_id, gymmember.deployment_time FROM gymmember GROUP BY gymmember.pokemon_uid, gymmember.deployment_time, gymmember.gym_id HAVING gymmember.gym_id <> '') AS filtered_gymmember |
|
| 584 | ON gympokemon.pokemon_uid = filtered_gymmember.pokemon_uid |
|
| 585 | WHERE gympokemon.trainer_name='".$trainer_name."' |
|
| 586 | ORDER BY gympokemon.cp DESC)"; |
|
| 587 | $result = $this->mysqli->query($req); |
|
| 588 | $pokemons = array(); |
|
| 589 | while ($data = $result->fetch_object()) { |
|
| 590 | $pokemons[] = $data; |
|
| 591 | } |
|
| 592 | return $pokemons; |
|
| 593 | } |
|
| 594 | ||
| 595 | private function getTrainerInactivePokemon($trainer_name){ |
|
| 596 | $req = "(SELECT DISTINCT gympokemon.pokemon_id, gympokemon.pokemon_uid, gympokemon.cp, DATEDIFF(UTC_TIMESTAMP(), gympokemon.last_seen) AS last_scanned, gympokemon.trainer_name, gympokemon.iv_defense, gympokemon.iv_stamina, gympokemon.iv_attack, null AS gym_id, CONVERT_TZ(filtered_gymmember.deployment_time, '+00:00', '".self::$time_offset."') as deployment_time, '0' AS active |
|
| @@ 595-608 (lines=14) @@ | ||
| 592 | return $pokemons; |
|
| 593 | } |
|
| 594 | ||
| 595 | private function getTrainerInactivePokemon($trainer_name){ |
|
| 596 | $req = "(SELECT DISTINCT gympokemon.pokemon_id, gympokemon.pokemon_uid, gympokemon.cp, DATEDIFF(UTC_TIMESTAMP(), gympokemon.last_seen) AS last_scanned, gympokemon.trainer_name, gympokemon.iv_defense, gympokemon.iv_stamina, gympokemon.iv_attack, null AS gym_id, CONVERT_TZ(filtered_gymmember.deployment_time, '+00:00', '".self::$time_offset."') as deployment_time, '0' AS active |
|
| 597 | FROM gympokemon LEFT JOIN |
|
| 598 | (SELECT * FROM gymmember HAVING gymmember.gym_id <> '') AS filtered_gymmember |
|
| 599 | ON gympokemon.pokemon_uid = filtered_gymmember.pokemon_uid |
|
| 600 | WHERE filtered_gymmember.pokemon_uid IS NULL AND gympokemon.trainer_name='".$trainer_name."' |
|
| 601 | ORDER BY gympokemon.cp DESC)"; |
|
| 602 | $result = $this->mysqli->query($req); |
|
| 603 | $pokemons = array(); |
|
| 604 | while ($data = $result->fetch_object()) { |
|
| 605 | $pokemons[] = $data; |
|
| 606 | } |
|
| 607 | return $pokemons; |
|
| 608 | } |
|
| 609 | ||
| 610 | ||
| 611 | ///////// |
|
| @@ 373-387 (lines=15) @@ | ||
| 370 | // Raids |
|
| 371 | /////////// |
|
| 372 | ||
| 373 | public function getAllRaids($page) { |
|
| 374 | $limit = " LIMIT ".($page * 10).",10"; |
|
| 375 | $req = "SELECT r.fort_id AS gym_id, r.level AS level, r.pokemon_id AS pokemon_id, r.cp AS cp, r.move_1 AS move_1, r.move_2 AS move_2, FROM_UNIXTIME(r.time_spawn) AS spawn, FROM_UNIXTIME(r.time_battle) AS start, FROM_UNIXTIME(r.time_end) AS end, FROM_UNIXTIME(fs.updated) AS last_scanned, f.name, f.lat AS latitude, f.lon as longitude |
|
| 376 | FROM forts f |
|
| 377 | LEFT JOIN fort_sightings fs ON (fs.fort_id = f.id AND fs.last_modified = (SELECT MAX(last_modified) FROM fort_sightings fs2 WHERE fs2.fort_id=f.id)) |
|
| 378 | LEFT JOIN raids r ON (r.fort_id = f.id AND r.time_end >= UNIX_TIMESTAMP()) |
|
| 379 | WHERE r.time_end > UNIX_TIMESTAMP() |
|
| 380 | ORDER BY r.level DESC, r.time_battle" . $limit; |
|
| 381 | $result = $this->mysqli->query($req); |
|
| 382 | $raids = array(); |
|
| 383 | while ($data = $result->fetch_object()) { |
|
| 384 | $raids[] = $data; |
|
| 385 | } |
|
| 386 | return $raids; |
|
| 387 | } |
|
| 388 | ||
| 389 | ||
| 390 | ||
| @@ 482-495 (lines=14) @@ | ||
| 479 | return array("last_page" => $last_page, "data" => $history); |
|
| 480 | } |
|
| 481 | ||
| 482 | private function getHistoryForGymPokemon($gym_id, $last_modified) |
|
| 483 | { |
|
| 484 | $req = "SELECT ghd.defender_id, gd.pokemon_id, ghd.cp, gd.owner_name as trainer_name |
|
| 485 | FROM gym_history_defenders ghd |
|
| 486 | JOIN gym_defenders gd ON ghd.defender_id = gd.external_id |
|
| 487 | WHERE ghd.fort_id = '". $gym_id ."' AND date = '".$last_modified."' |
|
| 488 | ORDER BY gd.deployment_time"; |
|
| 489 | $result = $this->mysqli->query($req); |
|
| 490 | $pokemons = array(); |
|
| 491 | while ($data = $result->fetch_object()) { |
|
| 492 | $pokemons[$data->defender_id] = $data; |
|
| 493 | } |
|
| 494 | return $pokemons; |
|
| 495 | } |
|
| 496 | ||
| 497 | ||
| 498 | ||
| @@ 468-481 (lines=14) @@ | ||
| 465 | return array("last_page" => $last_page, "data" => $history); |
|
| 466 | } |
|
| 467 | ||
| 468 | private function getHistoryForGymPokemon($gym_id, $last_modified) |
|
| 469 | { |
|
| 470 | $req = "SELECT ghd.defender_id, gd.pokemon_id, ghd.cp, gd.owner_name as trainer_name |
|
| 471 | FROM gym_history_defenders ghd |
|
| 472 | JOIN gym_defenders gd ON ghd.defender_id = gd.external_id |
|
| 473 | WHERE ghd.fort_id = '". $gym_id ."' AND date = '".$last_modified."' |
|
| 474 | ORDER BY gd.deployment_time"; |
|
| 475 | $result = $this->mysqli->query($req); |
|
| 476 | $pokemons = array(); |
|
| 477 | while ($data = $result->fetch_object()) { |
|
| 478 | $pokemons[$data->defender_id] = $data; |
|
| 479 | } |
|
| 480 | return $pokemons; |
|
| 481 | } |
|
| 482 | ||
| 483 | /////////// |
|
| 484 | // Raids |
|