Delectus ullam et corporis nulla voluptas sequi
Non et quaerat ex quae ad maiores maiores recusandae totam aut blanditiis mollitia quas illo ut voluptatibus voluptatem similique nostrum eum
Posts and authors fetched from JSONPlaceholder by the controller, then rendered here.
PagesController::pageDemosPosts() calls the JSONPlaceholder API using
Cake\Http\Client, maps users by ID, and passes both arrays to this template
via $this->set().
public function pageDemosPosts(): void
{
$page = max(1, (int)$this->request->getQuery('page', 1));
$perPage = 9;
$http = new Client(['timeout' => 5]);
$postsResp = $http->get('https://jsonplaceholder.typicode.com/posts', [
'_limit' => $perPage,
'_start' => ($page - 1) * $perPage,
]);
$usersResp = $http->get('https://jsonplaceholder.typicode.com/users');
foreach ((array)$usersResp->getJson() as $user) {
$userMap[(int)$user['id']] = $user;
}
$total = (int)$postsResp->getHeaderLine('X-Total-Count');
$totalPages = (int)ceil($total / $perPage);
$this->set(compact('posts', 'userMap', 'error', 'page', 'totalPages'));
}
Non et quaerat ex quae ad maiores maiores recusandae totam aut blanditiis mollitia quas illo ut voluptatibus voluptatem similique nostrum eum
Odit magnam ut saepe sed non qui tempora atque nihil accusamus illum doloribus illo dolor eligendi repudiandae odit magni similique sed cum maiores
Alias dolor cumque impedit blanditiis non eveniet odio maxime blanditiis amet eius quis tempora quia autem rem a provident perspiciatis quia
Debitis eius sed quibusdam non quis consectetur vitae impedit ut qui consequatur sed aut in quidem sit nostrum et maiores adipisci atque quaerat voluptatem adipisci repudiandae
Deserunt eos nobis asperiores et hic est debitis repellat molestiae optio nihil ratione ut eos beatae quibusdam distinctio maiores earum voluptates et aut adipisci ea maiores voluptas maxime
Rerum ut et numquam laborum odit est sit id qui sint in quasi tenetur tempore aperiam et quaerat qui in rerum officiis sequi cumque quod
Ea velit perferendis earum ut voluptatem voluptate itaque iusto totam pariatur in nemo voluptatem voluptatem autem magni tempora minima in est distinctio qui assumenda accusamus dignissimos officia nesciunt nobis
Nisi error delectus possimus ut eligendi vitae placeat eos harum cupiditate facilis reprehenderit voluptatem beatae modi ducimus quo illum voluptas eligendi et nobis quia fugit
Ad mollitia et omnis minus architecto odit voluptas doloremque maxime aut non ipsa qui alias veniam blanditiis culpa aut quia nihil cumque facere et occaecati qui aspernatur quia eaque ut aperiam inventore