/
denispirit
/
otbor
Обзор
Документация
Войти
/
denispirit
/
otbor
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
app/Http/Controllers/AuthController.php
56 строк
2 KB
denispirit
Final наверное
14 фев 2025, 14:13
14 фев 2025, 14:13
5b40404
Код
Авторство
О чём код?
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Models\User; use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Auth; class AuthController extends Controller { public function register(Request $request) { $request->validate([ 'email' => 'required|email', 'password' => 'required|min:8|max:12|regex:/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d).+$/', ]); if (User::where('email', $request->email)->exists()) { return response()->json(['message' => 'Указанный e-mail уже зарегистрирован'], 409, [], JSON_UNESCAPED_SLASHES); } $user = User::create([ 'email' => $request->email, 'password' => Hash::make($request->password), ]); Auth::login($user); return response()->json(['redirect' => route('ads.index')], 200, [], JSON_UNESCAPED_SLASHES); } public function login(Request $request) { $request->validate([ 'email' => 'required|email', 'password' => 'required', ]); if (Auth::attempt($request->only('email', 'password'))) { return response()->json(['redirect' => route('ads.index')], 200, [], JSON_UNESCAPED_SLASHES); } return response()->json(['message' => 'Ошибка авторизации'], 401, [], JSON_UNESCAPED_SLASHES); } public function logout(Request $request) { Auth::logout(); $request->session()->invalidate(); $request->session()->regenerateToken(); return response()->json(['redirect' => route('ads.index')]); } }