diff --git a/app/Http/Controllers/Account/EmailController.php b/app/Http/Controllers/Account/EmailController.php index 05bd3b1..253083e 100644 --- a/app/Http/Controllers/Account/EmailController.php +++ b/app/Http/Controllers/Account/EmailController.php @@ -5,7 +5,6 @@ use App\Http\Controllers\Controller; use App\Mail\EmailChangeCodeMail; use App\Mail\EmailChangedNoticeMail; -use App\Services\GuestOrderClaimer; use Illuminate\Http\RedirectResponse; use Illuminate\Http\Request; use Illuminate\Support\Facades\Hash; @@ -14,6 +13,7 @@ use Illuminate\Support\Str; use Illuminate\Validation\Rule; use Illuminate\View\View; +use Modules\Core\Customer\Services\GuestOrderClaimer; /** * Changing the login email: new email → 6-digit code sent to that address → @@ -91,7 +91,7 @@ public function resend(string $locale, Request $request): RedirectResponse return back()->with('status', __('storefront.auth.code_resent')); } - public function verify(string $locale, Request $request, GuestOrderClaimer $orders): RedirectResponse + public function verify(string $locale, Request $request, GuestOrderClaimer $claimer): RedirectResponse { $pending = $request->session()->get(self::SESSION_KEY); @@ -136,7 +136,7 @@ public function verify(string $locale, Request $request, GuestOrderClaimer $orde Mail::to($oldEmail)->send(new EmailChangedNoticeMail($pending['email'])); // The code just proved they own the new address too. - $orders->claim($user); + $claimer->claim($user); $request->session()->forget(self::SESSION_KEY); diff --git a/app/Listeners/ClaimGuestOrdersOnLogin.php b/app/Listeners/ClaimGuestOrdersOnLogin.php deleted file mode 100644 index 8f9b056..0000000 --- a/app/Listeners/ClaimGuestOrdersOnLogin.php +++ /dev/null @@ -1,22 +0,0 @@ -claimer->claim($event->user); - } -} diff --git a/app/Services/GuestOrderClaimer.php b/app/Services/GuestOrderClaimer.php deleted file mode 100644 index 6988fe3..0000000 --- a/app/Services/GuestOrderClaimer.php +++ /dev/null @@ -1,37 +0,0 @@ -latestCustomer(); - - if (! $customer || ! $user->email) { - return 0; - } - - return Order::query() - ->whereNotNull('placed_at') - ->whereNull('customer_id') - ->whereNull('user_id') - ->whereHas('billingAddress', fn ($query) => $query - ->whereRaw('lower(contact_email) = ?', [strtolower($user->email)])) - ->update([ - 'customer_id' => $customer->id, - 'user_id' => $user->id, - ]); - } -} diff --git a/resources/views/checkout/confirmation.blade.php b/resources/views/checkout/confirmation.blade.php index 0c90408..ae97d87 100644 --- a/resources/views/checkout/confirmation.blade.php +++ b/resources/views/checkout/confirmation.blade.php @@ -42,7 +42,8 @@

{{ __('checkout.page.confirmation_email_note') }}

{{-- Guests: logging in with the order's email attaches it to an account - (App\Listeners\ClaimGuestOrdersOnLogin), so it shows in their history. --}} + (boboko-core's Modules\Core\Customer\Listeners\ClaimGuestOrdersOnLogin), + so it shows in their history. --}} @guest @if ($loginRoute = config('checkout.login_route'))