<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Mensajeria\WhatsAppController;
use App\Mail\VerificationEmail;
use App\Models\SmsTemplate;
use App\Services\SendSmsService;
use Auth;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Mail;
use Str;
class ReenviarController extends Controller {
public function reenviarCodigo(Request $request) {
$user = Auth::user(); // Obtén el usuario autenticado
$user->update([
'confirmation_code' => Str::random(25)
]);
try {
Mail::to($user->email)->send(new VerificationEmail($user));
return redirect()->back()->with('success', 'Se ha enviado el código de verificación nuevamente.');
} catch (\Exception $e) {
$errorMessage = $e->getMessage();
$errorCode = $e->getCode();
if ($errorCode >= 250 && $errorCode <= 252) {
// Código de respuesta esperado, puedes manejarlo según tus necesidades
// Por ejemplo, mostrar un mensaje de éxito en el formulario
return redirect()->back()->with('success', 'Se ha enviado el código de verificación nuevamente.');
} else {
// Código de respuesta inesperado, mostrar el mensaje de error en el formulario
return redirect()->back()->with('error', 'Error al enviar el código de verificación: ' . $errorMessage);
}
}
}
public function resendVerificationMessage() {
$user = Auth::user();
$user->update([
'verification_code' => str_pad(rand(0, 999999), 6, '0', STR_PAD_LEFT)
]);
(new WhatsAppController)->sendVerificationMessage($user);
return redirect()->back()->with('success', 'Revisa tu WhatsApp, recibirás un nuevo código en breve');
}
}
|