Fix middleware class collision (RadioApiKey -> alias), add missing setup.do and setup.reset routes, fix SSE int type cast

This commit is contained in:
root
2026-05-24 14:20:22 +02:00
parent 261a5e63c6
commit eea81a3e9a
3 changed files with 26 additions and 2 deletions
@@ -107,6 +107,28 @@ class RadioSetupController extends Controller
} }
} }
public function doSetup(Request $request): RedirectResponse
{
return $this->setup($request);
}
public function reset(): RedirectResponse
{
try {
WebsiteSetting::where('key', 'like', 'radio_%')->delete();
WebsiteSetting::where('key', 'like', 'points_%')->delete();
Artisan::call('config:clear');
Artisan::call('cache:clear');
return redirect()->route('admin.radio.setup')
->with('success', 'Radio instellingen zijn gereset.');
} catch (\Exception $e) {
return redirect()->route('admin.radio.setup')
->with('error', 'Fout bij resetten: ' . $e->getMessage());
}
}
private function createDefaultRanks(): void private function createDefaultRanks(): void
{ {
$ranks = [ $ranks = [
+2 -2
View File
@@ -4,7 +4,7 @@ declare(strict_types=1);
namespace App\Http\Middleware; namespace App\Http\Middleware;
use App\Models\RadioApiKey; use App\Models\RadioApiKey as RadioApiKeyModel;
use Closure; use Closure;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpFoundation\Response;
@@ -21,7 +21,7 @@ class RadioApiKey
], 401); ], 401);
} }
$apiKey = RadioApiKey::active()->where('key', $key)->first(); $apiKey = RadioApiKeyModel::active()->where('key', $key)->first();
if (! $apiKey) { if (! $apiKey) {
return response()->json([ return response()->json([
+2
View File
@@ -9,6 +9,8 @@ use Illuminate\Support\Facades\Route;
Route::prefix('admin')->group(function () { Route::prefix('admin')->group(function () {
Route::get('/radio/setup', [RadioSetupController::class, 'index'])->name('admin.radio.setup'); Route::get('/radio/setup', [RadioSetupController::class, 'index'])->name('admin.radio.setup');
Route::post('/radio/setup', [RadioSetupController::class, 'setup'])->name('admin.radio.setup.post'); Route::post('/radio/setup', [RadioSetupController::class, 'setup'])->name('admin.radio.setup.post');
Route::post('/radio/setup/do', [RadioSetupController::class, 'doSetup'])->name('admin.radio.setup.do');
Route::post('/radio/setup/reset', [RadioSetupController::class, 'reset'])->name('admin.radio.setup.reset');
// Radio wizard (multi-step) // Radio wizard (multi-step)
Route::prefix('radio/wizard')->group(function () { Route::prefix('radio/wizard')->group(function () {