JSON API returns the count of online unique IPs

This commit is contained in:
Znote 2016-12-06 00:44:33 +01:00
parent 13cc920228
commit a3ac81cfbe

View File

@ -34,14 +34,18 @@ $response['data']['time_formatted'] = getClock(time(), true, true);
// Account count // Account count
$accounts = mysql_select_single("SELECT COUNT('id') AS `count` FROM `accounts`;"); $accounts = mysql_select_single("SELECT COUNT('id') AS `count` FROM `accounts`;");
$response['data']['accounts'] = ($accounts !== false) ? $accounts['count'] : 0; $response['data']['accounts'] = ($accounts !== false) ? (int)$accounts['count'] : 0;
// Player count // Player count
$players = mysql_select_single("SELECT COUNT('id') AS `count` FROM `players`;"); $players = mysql_select_single("SELECT COUNT('id') AS `count` FROM `players`;");
$response['data']['players'] = ($players !== false) ? $players['count'] : 0; $response['data']['players'] = ($players !== false) ? (int)$players['count'] : 0;
// online player count // online player count
if ($config['TFSVersion'] != 'TFS_10') $online = mysql_select_single("SELECT COUNT('id') AS `count` FROM `players` WHERE `status`='1';"); if ($config['TFSVersion'] != 'TFS_10') {
else $online = mysql_select_single("SELECT COUNT('player_id') AS `count` FROM `players_online`;"); $online = mysql_select_single("SELECT COUNT('id') AS `count`, COUNT(DISTINCT `lastip`) AS `unique` FROM `players` WHERE `status`='1';");
$response['data']['online'] = ($online !== false) ? $online['count'] : 0; } else {
$online = mysql_select_single("SELECT COUNT(`o`.`player_id`) AS `count`, COUNT(DISTINCT `p`.`lastip`) AS `unique` FROM `players_online` AS `o` INNER JOIN `players` AS `p` ON `o`.`player_id` = `p`.`id`;");
}
$response['data']['online'] = ($online !== false) ? (int)$online['count'] : 0;
$response['data']['online_unique_ip'] = ($online !== false) ? (int)$online['unique'] : 0;
$response['data']['client'] = $config['client']; $response['data']['client'] = $config['client'];
$response['data']['port'] = $config['port']; $response['data']['port'] = $config['port'];
$response['data']['guildwar'] = $config['guildwar_enabled']; $response['data']['guildwar'] = $config['guildwar_enabled'];