avance solo de la vista del formulario y validaciones del negocio

This commit is contained in:
Jose Sanchez
2023-08-22 16:58:22 -04:00
parent 534a66ff0b
commit abd8354e71
5 changed files with 96 additions and 31 deletions

View File

@@ -3,6 +3,7 @@
namespace App\Http\Controllers;
use App\Mail\VerificationEmail;
use App\Models\Category;
use App\Models\Shop;
use App\Models\User;
use Illuminate\Http\Request;
@@ -23,7 +24,10 @@ class TypeBusinessController extends Controller
*/
public function index()
{
return view('frontend.registro-comercio.views.business.index');
$categories = Category::all();
return view('frontend.registro-comercio.views.business.index', compact('categories'));
}
@@ -47,41 +51,45 @@ class TypeBusinessController extends Controller
{
// Validación de los campos de registro
$validator = Validator::make($request->all(), [
'email' => ['required', 'string', 'email', 'max:255', 'unique:'.User::class],
'name' => ['required'],
'address' => ['required'],
'categories_id' => ['required'],
'email' => ['required', 'string', 'email', 'max:255', 'unique:'.User::class, 'regex:/^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+.(com|do|net|com.do)$/'],
'password' => ['required', 'confirmed', Password::defaults()],
'terms' => ['required'], // Agrega esta línea para hacer el campo 'terms' requerido
'g-recaptcha-response' => ['required', function ($attribute, $value, $fail) {
$recaptcha = new Recaptcha(env('RECAPTCHA_SECRET_KEY'));
$recaptcha->verify($value);
}],
]);
if ($validator->fails()) {
// Si la validación falla, puedes redirigir o devolver una respuesta con los errores
return redirect()->back()->withErrors($validator)->withInput();
}
// if ($validator->fails()) {
// // Si la validación falla, puedes redirigir o devolver una respuesta con los errores
// return redirect()->back()->withErrors($validator)->withInput();
// }
$confirmation_code = Str::random(25);
// $confirmation_code = Str::random(25);
$user = new User();
$user->email = $request->input('email');
$user->password = Hash::make($request->input('password'));
$user->user_type = 'seller';
$user->confirmation_code = $confirmation_code;
$user->save();
// $user = new User();
// $user->email = $request->input('email');
// $user->password = Hash::make($request->input('password'));
// $user->user_type = 'seller';
// $user->confirmation_code = $confirmation_code;
// $user->save();
Mail::to($user->email)->send(new VerificationEmail($user));
// Mail::to($user->email)->send(new VerificationEmail($user));
// Intentar iniciar sesión automáticamente
if (Auth::attempt($request->only('email', 'password'))) {
if (Auth::user()->email_verified_at) {
// La cuenta está verificada, redirige a la página deseada
return redirect()->route('shop.view.signup.complete');
} else {
// La cuenta no está verificada, redirige a la página de verificación de correo electrónico
return redirect()->route('shop.view.email.verification');
}
}
// // Intentar iniciar sesión automáticamente
// if (Auth::attempt($request->only('email', 'password'))) {
// if (Auth::user()->email_verified_at) {
// // La cuenta está verificada, redirige a la página deseada
// return redirect()->route('shop.view.signup.complete');
// } else {
// // La cuenta no está verificada, redirige a la página de verificación de correo electrónico
// return redirect()->route('shop.view.email.verification');
// }
// }
}
/**