good
This commit is contained in:
@@ -120,86 +120,25 @@ class VerificationController extends Controller
|
|||||||
|
|
||||||
public function congratulations(): View|RedirectResponse
|
public function congratulations(): View|RedirectResponse
|
||||||
{
|
{
|
||||||
// #region agent log
|
if (! session()->has('coupon_code') && ! request()->cookie(self::DEVICE_COOKIE_NAME)) {
|
||||||
$debugLog = static function (string $hypothesisId, string $message, array $data = []): void {
|
|
||||||
file_put_contents(
|
|
||||||
base_path('.cursor/debug-c4d726.log'),
|
|
||||||
json_encode([
|
|
||||||
'sessionId' => 'c4d726',
|
|
||||||
'hypothesisId' => $hypothesisId,
|
|
||||||
'location' => 'VerificationController::congratulations',
|
|
||||||
'message' => $message,
|
|
||||||
'data' => $data,
|
|
||||||
'timestamp' => (int) round(microtime(true) * 1000),
|
|
||||||
]).PHP_EOL,
|
|
||||||
FILE_APPEND
|
|
||||||
);
|
|
||||||
};
|
|
||||||
// #endregion
|
|
||||||
|
|
||||||
$hasSessionCoupon = session()->has('coupon_code');
|
|
||||||
$hasDeviceCookie = (bool) request()->cookie(self::DEVICE_COOKIE_NAME);
|
|
||||||
$sessionCode = session()->get('coupon_code');
|
|
||||||
|
|
||||||
// #region agent log
|
|
||||||
$debugLog('A', 'entry_state', [
|
|
||||||
'hasSessionCoupon' => $hasSessionCoupon,
|
|
||||||
'hasDeviceCookie' => $hasDeviceCookie,
|
|
||||||
'sessionCodePresent' => $sessionCode !== null && $sessionCode !== '',
|
|
||||||
'verifyPhone' => session()->get('verify_phone'),
|
|
||||||
]);
|
|
||||||
// #endregion
|
|
||||||
|
|
||||||
if (! $hasSessionCoupon && ! $hasDeviceCookie) {
|
|
||||||
// #region agent log
|
|
||||||
$debugLog('B', 'redirect_no_session_or_cookie', []);
|
|
||||||
// #endregion
|
|
||||||
|
|
||||||
return redirect()->route('verification.index');
|
return redirect()->route('verification.index');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$sessionCode = session()->get('coupon_code');
|
||||||
$code = null;
|
$code = null;
|
||||||
|
|
||||||
if ($sessionCode && Coupon::query()->where('code', $sessionCode)->exists()) {
|
if ($sessionCode && Coupon::query()->where('code', $sessionCode)->exists()) {
|
||||||
$code = $sessionCode;
|
$code = $sessionCode;
|
||||||
|
|
||||||
// #region agent log
|
|
||||||
$debugLog('E', 'session_code_db_validation', [
|
|
||||||
'codeFromSession' => $sessionCode,
|
|
||||||
'existsInDb' => true,
|
|
||||||
]);
|
|
||||||
// #endregion
|
|
||||||
} elseif ($sessionCode) {
|
} elseif ($sessionCode) {
|
||||||
session()->forget('coupon_code');
|
session()->forget('coupon_code');
|
||||||
|
|
||||||
// #region agent log
|
|
||||||
$debugLog('E', 'session_code_db_validation', [
|
|
||||||
'codeFromSession' => $sessionCode,
|
|
||||||
'existsInDb' => false,
|
|
||||||
'action' => 'forgot_stale_session_code',
|
|
||||||
]);
|
|
||||||
// #endregion
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (! $code) {
|
if (! $code) {
|
||||||
$phone = $this->phoneFromDeviceCookie();
|
$phone = $this->phoneFromDeviceCookie();
|
||||||
|
|
||||||
// #region agent log
|
|
||||||
$debugLog('C', 'cookie_phone_lookup', [
|
|
||||||
'phoneFromCookie' => $phone,
|
|
||||||
]);
|
|
||||||
// #endregion
|
|
||||||
|
|
||||||
if ($phone) {
|
if ($phone) {
|
||||||
$coupon = Coupon::query()->where('phone', $phone)->first();
|
$coupon = Coupon::query()->where('phone', $phone)->first();
|
||||||
|
|
||||||
// #region agent log
|
|
||||||
$debugLog('C', 'db_lookup_from_cookie', [
|
|
||||||
'phone' => $phone,
|
|
||||||
'couponFound' => $coupon !== null,
|
|
||||||
]);
|
|
||||||
// #endregion
|
|
||||||
|
|
||||||
if ($coupon) {
|
if ($coupon) {
|
||||||
$code = $coupon->code;
|
$code = $coupon->code;
|
||||||
session()->put('coupon_code', $code);
|
session()->put('coupon_code', $code);
|
||||||
@@ -208,15 +147,7 @@ class VerificationController extends Controller
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (! $code && session()->has('verify_phone')) {
|
if (! $code && session()->has('verify_phone')) {
|
||||||
$verifyPhone = session()->get('verify_phone');
|
$coupon = Coupon::query()->where('phone', session()->get('verify_phone'))->first();
|
||||||
$coupon = Coupon::query()->where('phone', $verifyPhone)->first();
|
|
||||||
|
|
||||||
// #region agent log
|
|
||||||
$debugLog('D', 'db_lookup_from_verify_phone', [
|
|
||||||
'verifyPhone' => $verifyPhone,
|
|
||||||
'couponFound' => $coupon !== null,
|
|
||||||
]);
|
|
||||||
// #endregion
|
|
||||||
|
|
||||||
if ($coupon) {
|
if ($coupon) {
|
||||||
$code = $coupon->code;
|
$code = $coupon->code;
|
||||||
@@ -225,21 +156,11 @@ class VerificationController extends Controller
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (! $code) {
|
if (! $code) {
|
||||||
// #region agent log
|
|
||||||
$debugLog('E', 'redirect_no_valid_code', []);
|
|
||||||
// #endregion
|
|
||||||
|
|
||||||
return redirect()
|
return redirect()
|
||||||
->route('verification.index')
|
->route('verification.index')
|
||||||
->withoutCookie(self::DEVICE_COOKIE_NAME);
|
->withoutCookie(self::DEVICE_COOKIE_NAME);
|
||||||
}
|
}
|
||||||
|
|
||||||
// #region agent log
|
|
||||||
$debugLog('A', 'rendering_view', [
|
|
||||||
'code' => $code,
|
|
||||||
]);
|
|
||||||
// #endregion
|
|
||||||
|
|
||||||
return view('verification.congratulations', [
|
return view('verification.congratulations', [
|
||||||
'code' => $code,
|
'code' => $code,
|
||||||
]);
|
]);
|
||||||
|
|||||||
Reference in New Issue
Block a user