29 lines
703 B
PHP
29 lines
703 B
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use Illuminate\Http\Request;
|
|
use App\Article;
|
|
use Illuminate\Support\Carbon;
|
|
use App\Http\Resources\ArticleResource;
|
|
|
|
class TodaysPick extends Controller
|
|
{
|
|
/**
|
|
* __invoke
|
|
*
|
|
* Query the Articles published today and return 8 articles from unique sources
|
|
*
|
|
* @return void
|
|
*/
|
|
public function __invoke()
|
|
{
|
|
return ArticleResource::collection(Article::with('topics', 'source')
|
|
->whereDate('published_date', Carbon::today())
|
|
->inRandomOrder()
|
|
->take(8)
|
|
->get()
|
|
->unique('source.name'));
|
|
}
|
|
}
|