Example #1
0
global $mdb;
$involved = array();
$message = '';
$id = (int) $id;
while ($mdb->count('queueInfo', ['killID' => $id])) {
    sleep(1);
}
$exists = $mdb->exists('killmails', ['killID' => $id]);
if (!$exists) {
    return $app->render('404.html', array('message' => "KillID {$id} does not exist."), 404);
}
$killKey = "CacheKill:{$id}:{$pageview}";
$details = RedisCache::get($killKey);
if ($details == null) {
    // Create the details on this kill
    $killdata = Kills::getKillDetails($id);
    // create the dropdown involved array
    $allinvolved = $killdata['involved'];
    $cnt = 0;
    while ($cnt < 10) {
        if (isset($allinvolved[$cnt])) {
            $involved[] = $allinvolved[$cnt];
            unset($allinvolved[$cnt]);
        }
        ++$cnt;
        continue;
    }
    $topDamage = $finalBlow = null;
    $first = null;
    if (sizeof($killdata['involved']) > 1) {
        foreach ($killdata['involved'] as $inv) {
Example #2
0
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
//make sure the requester is not being a naughty boy
Util::scrapeCheck();
//set the headers to cache the request properly
$dna = array();
$parameters = Util::convertUriToParameters();
$page = 1;
if (isset($parameters["page"])) {
    $page = $parameters["page"];
}
$kills = Feed::getKills(array("limit" => 200, "cacheTime" => 3600, "page" => $page));
foreach ($kills as $kill) {
    $kill = json_decode($kill, true);
    $killdata = Kills::getKillDetails($kill["killID"]);
    $dna[][] = array("killtime" => $killdata["info"]["dttm"], "SolarSystemName" => $killdata["info"]["solarSystemName"], "solarSystemID" => $killdata["info"]["solarSystemID"], "regionID" => $killdata["info"]["regionID"], "regionName" => $killdata["info"]["regionName"], "victimCharacterID" => isset($killdata["victim"]["characterID"]) ? isset($killdata["victim"]["characterID"]) : null, "victimCharacterName" => isset($killdata["victim"]["characterName"]) ? isset($killdata["victim"]["characterName"]) : null, "victimCorporationID" => isset($killdata["victim"]["corporationID"]) ? isset($killdata["victim"]["corporationID"]) : null, "victimCorporationName" => isset($killdata["victim"]["corporationName"]) ? isset($killdata["victim"]["corporationName"]) : null, "victimAllianceID" => isset($killdata["victim"]["allianceID"]) ? isset($killdata["victim"]["allianceID"]) : null, "victimAllianceName" => isset($killdata["victim"]["allianceName"]) ? isset($killdata["victim"]["allianceName"]) : null, "victimFactionID" => isset($killdata["victim"]["factionID"]) ? isset($killdata["victim"]["factionID"]) : null, "victimFactionName" => isset($killdata["victim"]["factionName"]) ? isset($killdata["victim"]["factionName"]) : null, "dna" => Fitting::DNA($killdata["items"], $killdata["victim"]["shipTypeID"]));
}
$app->etag(md5(serialize($dna)));
$app->expires("+1 hour");
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Methods: GET");
$app->contentType("application/json; charset=utf-8");
echo json_encode($dna, JSON_NUMERIC_CHECK);
Example #3
0
 private static function getStatsKillList($killIDs)
 {
     $totalPrice = 0;
     $totalPoints = 0;
     $groupIDs = array();
     $totalShips = 0;
     foreach ($killIDs as $killID) {
         $kill = Kills::getKillDetails($killID);
         $info = $kill['info'];
         $victim = $kill['victim'];
         $totalPrice += $info['zkb']['totalValue'];
         $totalPoints += $info['zkb']['points'];
         $groupID = $victim['groupID'];
         if (!isset($groupIDs[$groupID])) {
             $groupIDs[$groupID] = array();
             $groupIDs[$groupID]['count'] = 0;
             $groupIDs[$groupID]['isk'] = 0;
             $groupIDs[$groupID]['points'] = 0;
         }
         $groupIDs[$groupID]['groupID'] = $groupID;
         ++$groupIDs[$groupID]['count'];
         $groupIDs[$groupID]['isk'] += $info['zkb']['totalValue'];
         $groupIDs[$groupID]['points'] += $info['zkb']['points'];
         ++$totalShips;
     }
     Info::addInfo($groupIDs);
     return array('total_price' => $totalPrice, 'groupIDs' => $groupIDs, 'totalShips' => $totalShips, 'total_points' => $totalPoints);
 }
Example #4
0
<?php

//set the headers to cache the request properly
$dna = array();
$parameters = Util::convertUriToParameters();
$page = 1;
if (isset($parameters['page'])) {
    $page = $parameters['page'];
}
$kills = Feed::getKills(array('limit' => 200, 'cacheTime' => 3600, 'page' => $page));
foreach ($kills as $kill) {
    $kill = json_decode($kill, true);
    $killdata = Kills::getKillDetails($kill['killID']);
    $dna[][] = array('killtime' => $killdata['info']['dttm'], 'SolarSystemName' => $killdata['info']['solarSystemName'], 'solarSystemID' => $killdata['info']['solarSystemID'], 'regionID' => $killdata['info']['regionID'], 'regionName' => $killdata['info']['regionName'], 'victimCharacterID' => isset($killdata['victim']['characterID']) ? isset($killdata['victim']['characterID']) : null, 'victimCharacterName' => isset($killdata['victim']['characterName']) ? isset($killdata['victim']['characterName']) : null, 'victimCorporationID' => isset($killdata['victim']['corporationID']) ? isset($killdata['victim']['corporationID']) : null, 'victimCorporationName' => isset($killdata['victim']['corporationName']) ? isset($killdata['victim']['corporationName']) : null, 'victimAllianceID' => isset($killdata['victim']['allianceID']) ? isset($killdata['victim']['allianceID']) : null, 'victimAllianceName' => isset($killdata['victim']['allianceName']) ? isset($killdata['victim']['allianceName']) : null, 'victimFactionID' => isset($killdata['victim']['factionID']) ? isset($killdata['victim']['factionID']) : null, 'victimFactionName' => isset($killdata['victim']['factionName']) ? isset($killdata['victim']['factionName']) : null, 'dna' => Fitting::DNA($killdata['items'], $killdata['victim']['shipTypeID']));
}
$app->etag(md5(serialize($dna)));
$app->expires('+1 hour');
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET');
$app->contentType('application/json; charset=utf-8');
echo json_encode($dna, JSON_NUMERIC_CHECK);