Add blog functionality

This commit is contained in:
2020-03-22 19:44:44 +01:00
parent 6409267670
commit 3b8c85215f
15 changed files with 235 additions and 9 deletions

View File

@@ -55,7 +55,47 @@ class NewsController extends Controller
{
return $this->listNews($request, 'zoeken/' . $query, 'Zoekresultaat')->with('query', urldecode($query));
}
public function activeblog()
{
$apiResult = $this->API('blog/overzicht');
if(count($apiResult)) {
$blog = new \Model\Blog($apiResult[0]);
if($blog->is_active) {
return redirect($blog->url);
}
}
return abort(404);
}
public function blog(Request $request, $id)
{
$page = (int)$request->get('pagina', 1);
$hasNext = true;
while($page > 0) {
$apiResult = $this->API('blog/overzicht/' . (int)$id . '?pagina=' . (int)max(1, $page));
$blog = new \Model\Blog($apiResult->blog);
$items = [];
foreach($apiResult->items as $blogItem)
{
$items[] = new \Model\NewsItem($blogItem);
}
if(count($items) || ($page == 1))
{
return view('blog', ['blog' => $blog, 'pagina' => $page, 'items' => $items, 'hasNext' => $hasNext && count($items) == 15]);
}
$hasNext = false;
--$page;
}
return abort(404);
}
private function listNews(Request $request, $url, $title = null)
{
$page = (int)$request->get('pagina', 1);