|
|
@ -1,8 +1,8 @@
|
|
|
|
<?php
|
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
|
|
include_once "$PROJECT_ROOT/languages/language_flags.php";
|
|
|
|
include_once "$PROJECT_ROOT/languages/language_flags.php";
|
|
|
|
|
|
|
|
|
|
|
|
class CommunityRoom implements JsonSerializable {
|
|
|
|
class CommunityRoom implements JsonSerializable {
|
|
|
|
public readonly object $server;
|
|
|
|
public readonly object $server;
|
|
|
|
public readonly int $active_users;
|
|
|
|
public readonly int $active_users;
|
|
|
|
public readonly int $active_users_cutoff;
|
|
|
|
public readonly int $active_users_cutoff;
|
|
|
@ -283,7 +283,7 @@
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* @param array $data
|
|
|
|
* @param array $data
|
|
|
|
* @return CommunityServer
|
|
|
|
* @return CommunityServer
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
static function from_data(array $data) {
|
|
|
|
static function from_data(array $data) {
|
|
|
@ -296,28 +296,28 @@
|
|
|
|
return $server;
|
|
|
|
return $server;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* @param array[] $data
|
|
|
|
* @param array[] $data
|
|
|
|
* @return CommunityServer[]
|
|
|
|
* @return CommunityServer[]
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
static function from_data_array(array $data) {
|
|
|
|
static function from_data_array(array $data) {
|
|
|
|
return array_map(
|
|
|
|
return array_map(
|
|
|
|
'CommunityServer::from_data',
|
|
|
|
'CommunityServer::from_data',
|
|
|
|
$data
|
|
|
|
$data
|
|
|
|
);
|
|
|
|
);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* @param CommunityServer[] $servers
|
|
|
|
* @param CommunityServer[] $servers
|
|
|
|
* @return CommunityRoom[]
|
|
|
|
* @return CommunityRoom[]
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
static function enumerate_rooms($servers) {
|
|
|
|
static function enumerate_rooms($servers) {
|
|
|
|
$rooms = [];
|
|
|
|
$rooms = [];
|
|
|
|
foreach ($servers as $server) {
|
|
|
|
foreach ($servers as $server) {
|
|
|
|
$rooms[] = $server->rooms;
|
|
|
|
$rooms[] = $server->rooms;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return array_merge([], ...$rooms);
|
|
|
|
return array_merge([], ...$rooms);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Polls all servers for rooms.
|
|
|
|
* Polls all servers for rooms.
|
|
|
|