cms/app/Http/Controllers/Auth/LoginActionController.php
Funky Waddle 37ed997989 feat(cms): initialize Laravel project structure and core CMS files
- Added standard Laravel directory structure and configuration.

- Included Svelte and Tailwind configuration for the admin interface.

- Added core PHPUnit and testing scripts.
2026-04-13 12:48:06 -05:00

41 lines
1 KiB
PHP

<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
class LoginActionController extends Controller
{
/**
* Handle the incoming request.
*/
public function __invoke(Request $request)
{
$credentials = $request->validate([
'email' => ['required', 'email'],
'password' => ['required'],
]);
if (Auth::attempt($credentials)) {
$request->session()->regenerate();
if ($request->user()->two_factor_secret) {
return response()->json([
'two_factor' => true,
'redirect' => route('two-factor.login'),
]);
}
return response()->json([
'redirect' => route('admin.dashboard'),
]);
}
return response()->json([
'message' => 'The provided credentials do not match our records.',
], 422);
}
}