fedi-feed-router/app/Http/Controllers/ArticlesController.php
2025-07-10 14:57:10 +02:00

37 lines
1,010 B
PHP

<?php
namespace App\Http\Controllers;
use App\Models\Article;
use App\Models\Setting;
use Illuminate\Contracts\View\View;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request;
class ArticlesController extends Controller
{
public function __invoke(Request $request): View
{
$articles = Article::with('articlePublication')
->orderBy('created_at', 'desc')
->paginate(15);
$publishingApprovalsEnabled = Setting::isPublishingApprovalsEnabled();
return view('pages.articles.index', compact('articles', 'publishingApprovalsEnabled'));
}
public function approve(Article $article): RedirectResponse
{
$article->approve('manual');
return redirect()->back()->with('success', 'Article approved and queued for publishing.');
}
public function reject(Article $article): RedirectResponse
{
$article->reject('manual');
return redirect()->back()->with('success', 'Article rejected.');
}
}