Files
nhgooi.nl/app/Http/Controllers/HomeController.php
T
root 30893eb7a7
Build and Deploy / build (push) Failing after 44s
Changes by CLaude
2026-08-18 09:31:05 -01:00

41 lines
1.5 KiB
PHP
Executable File

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use \Model\NewsItem;
class HomeController extends Controller
{
public function show(Request $request)
{
$page = (int) $request->get('pagina', 1);
$apiResult = (object) $this->API('nieuws/overzicht?pagina=' . (int) max(1, $page) . '&aantal=10');
$news = [];
if ($apiResult && isset($apiResult->news)) {
foreach ($apiResult->news as $newsItem) {
$news[] = new \Model\NewsItem((object) $newsItem);
}
}
$apiResult = (object) $this->API('nieuws/liveblogs');
$liveblogs = $apiResult && isset($apiResult->liveblogs) ? $apiResult->liveblogs : [];
$populair = [];
$apiResult = (object) $this->API('nieuws/populair?pagina=' . (int) max(1, $page) . '&aantal=5');
if ($apiResult && isset($apiResult->news)) {
foreach ($apiResult->news as $newsItem) {
$populair[] = new \Model\NewsItem((object) $newsItem);
}
}
$podcast = null;
$apiResult = (object) $this->API('podcast/overzicht?aantal=15');
if ($apiResult && isset($apiResult->podcasts) && !empty($apiResult->podcasts)) {
$index = array_rand($apiResult->podcasts);
$podcast = new \Model\Podcast((object) $apiResult->podcasts[$index]);
}
return view('home', ['populair' => $populair, 'podcast' => $podcast, 'title' => 'Home', 'news' => $news, 'liveblogs' => $liveblogs, 'searchURL' => 'nieuws/zoeken']);
}
}