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