fedi-feed-router/backend/app/Http/Controllers/SettingsController.php

39 lines
1.3 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Models\Setting;
use Illuminate\Contracts\View\View;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request;
class SettingsController extends Controller
{
public function index(): View
{
$articleProcessingEnabled = Setting::isArticleProcessingEnabled();
$publishingApprovalsEnabled = Setting::isPublishingApprovalsEnabled();
return view('pages.settings.index', compact('articleProcessingEnabled', 'publishingApprovalsEnabled'));
}
public function update(Request $request): RedirectResponse
{
$request->validate([
'article_processing_enabled' => 'boolean',
'enable_publishing_approvals' => 'boolean',
]);
Setting::setArticleProcessingEnabled($request->boolean('article_processing_enabled'));
Setting::setPublishingApprovalsEnabled($request->boolean('enable_publishing_approvals'));
// If redirected from onboarding, go to dashboard
if ($request->get('from') === 'onboarding') {
return redirect()->route('onboarding.index')
->with('success', 'System activated successfully! Welcome to Lemmy Poster.');
}
return redirect()->route('settings.index')
->with('success', 'Settings updated successfully.');
}
}