public function accountDetails(Account $account)
{
$requests = [];
foreach ($account->characters as $character) {
$cid = $character->characterId;
$requests["{$cid}.activitystats"] = $this->platform->statsActivityAggregated($character);
$requests["{$cid}.inventory"] = $this->platform->inventory($character);
$requests["{$cid}.progression"] = $this->platform->progression($character);
$requests["{$cid}.checklist"] = $this->platform->checklist($character);
}
$results = $this->client->request($requests);
foreach ($account->characters as $character) {
$cid = $character->characterId;
$activityStats = array_get($results["{$cid}.activitystats"], 'data.activities', []);
$inventory = array_get($results["{$cid}.inventory"], 'data', []);
$progression = array_get($results["{$cid}.progression"], 'data', []);
if (!isset($results["{$cid}.checklist"]['private'])) {
$checklist = array_get($results["{$cid}.checklist"], 'data', []);
} else {
$checklist = [];
}
$character->activities = new ActivityCollection($character, $activityStats, $checklist);
$character->inventory = new Inventory($character, $inventory);
$character->progression = new ProgressionCollection($character, $progression);
}
return $account;
}