public function index($realm) { $data = $this->client->get('auction/data/' . Utils::realmNameToSlug($realm)); if ($data === null) { return null; } return new IndexEntity($data['files'][0]); }
public function challengeMode($realm = null) { if ($realm !== null) { $data = $this->client->get('challenge/' . Utils::realmNameToSlug($realm)); if ($data === null) { return null; } return new ChallengeModeEntity($data); } $data = $this->client->get('challenge/region'); return new ChallengeModeEntity($data); }
/** * @param array|string $realms * * @return RealmEntity|array|null */ public function find($realms) { $returnSingle = false; if (is_array($realms) === false) { $realms = [$realms]; $returnSingle = true; } foreach ($realms as &$realm) { $realm = Utils::realmNameToSlug($realm); } $data = $this->client->get('realm/status', ['query' => ['realms' => implode(',', $realms)]]); $realmCount = count($data['realms']); if ($returnSingle === true && $realmCount !== 1) { return; } if ($realmCount !== count($realms)) { throw new \RuntimeException('Unable to fetch all requested realms'); } $realms = $this->createRealmEntities($data['realms']); return $returnSingle === true ? $realms[0] : $realms; }
public function on($realm) { $this->realm = Utils::realmNameToSlug($realm); return $this; }