diff --git a/api/app/Http/Controllers/NewsController.php b/api/app/Http/Controllers/NewsController.php index f7988cc..0cb947b 100644 --- a/api/app/Http/Controllers/NewsController.php +++ b/api/app/Http/Controllers/NewsController.php @@ -84,6 +84,37 @@ QUERY; return response()->json($result); } + + /** + * Populaire berichten ophalen + */ + public function popular(Request $request) { + $count = (int)$request->get('aantal', 5); + $recent = app('db')->select(<< DATE_SUB(CURRENT_TIMESTAMP, INTERVAL 30 DAY) + GROUP BY `item_id` + ORDER BY `count` DESC + LIMIT 0, :count +QUERY + , [ + 'count' => $count + ]); + +return response()->json($recent); + + $result = array(); + foreach($recent as $item) + { + $newsItem = app('db')->select(self::$BASE_SQL . ' AND `news`.`id` = :newsId', ['newsId' => $item->item_id])[0]; + $pictures = app('db')->select(self::$LOAD_IMAGES, ['newsId' => $newsItem->id]); + $result[] = new \Model\NewsItem($newsItem, $pictures); + } + + return response()->json($result); + } + /** * Specifiek nieuwsbericht ophalen */ diff --git a/api/routes/web.php b/api/routes/web.php index 0faf50b..34d4024 100644 --- a/api/routes/web.php +++ b/api/routes/web.php @@ -16,6 +16,7 @@ $app->get('/', function () use ($app) { }); $app->get('nieuws/overzicht', 'NewsController@newslist' ); +$app->get('nieuws/populair', 'NewsController@popular' ); $app->get('nieuws/bericht/{id:\d+}', 'NewsController@newsitem' ); $app->get('nieuws/regionieuws', 'PodcastController@latestNews' );