From c76a8ed04a26cd642ed37c4d8b5c70b2c7797fd9 Mon Sep 17 00:00:00 2001 From: Russ Long Date: Sun, 3 May 2026 06:55:40 -0400 Subject: [PATCH 1/5] fix: restore fallback verification button and error handling for North checkout --- resources/views/north_checkout.blade.php | 45 ++++++++++++++++++++++-- 1 file changed, 43 insertions(+), 2 deletions(-) diff --git a/resources/views/north_checkout.blade.php b/resources/views/north_checkout.blade.php index 2e49af1..54a18dc 100644 --- a/resources/views/north_checkout.blade.php +++ b/resources/views/north_checkout.blade.php @@ -26,6 +26,7 @@
+
@@ -33,6 +34,13 @@
+
@@ -67,19 +75,52 @@ return; } + // Set up fallback button + const verifyUrl = `/north/verify/${bidderId}?sessionToken=${sessionToken}`; + const verifyButton = document.getElementById('verify-button'); + const fallbackContainer = document.getElementById('fallback-container'); + verifyButton.href = verifyUrl; + + // Show fallback after 5 seconds to give user a manual way out if auto-redirect fails + setTimeout(() => { + fallbackContainer.style.display = 'block'; + }, 5000); + await checkout.mount(sessionToken, 'checkout-container'); const handleCompletion = (result) => { - window.location.href = `/north/verify/${bidderId}?sessionToken=${sessionToken}`; + console.log('Payment complete event received:', result); + window.location.href = verifyUrl; }; + // Register standard completion events checkout.onPaymentComplete(handleCompletion); if (typeof checkout.onPaymentSuccess === 'function') { checkout.onPaymentSuccess(handleCompletion); } + + // Handle errors + if (typeof checkout.onPaymentError === 'function') { + checkout.onPaymentError((error) => { + console.error('Payment Error:', error); + const errorDiv = document.createElement('div'); + errorDiv.className = 'alert alert-danger alert-dismissible'; + errorDiv.innerHTML = ` +
+
+
+ Payment Error: ${error.message || 'An error occurred during payment.'} +
+
+ + `; + document.getElementById('payment-error-container').prepend(errorDiv); + }); + } + } catch (error) { console.error('Checkout Error:', error); - document.getElementById('checkout-container').innerHTML = '
An error occurred. Please try again.
'; + document.getElementById('checkout-container').innerHTML = '
An error occurred while initializing checkout. Please try again.
'; } }); -- 2.52.0 From 39ffca777c1627696fb4426b75f2cce35ac97792 Mon Sep 17 00:00:00 2001 From: Russ Long Date: Sun, 3 May 2026 07:00:25 -0400 Subject: [PATCH 2/5] feat: expand checkout_complete_list columns and include item numbers --- .../views/checkout_complete_list.blade.php | 37 ++++++++++++++----- 1 file changed, 28 insertions(+), 9 deletions(-) diff --git a/resources/views/checkout_complete_list.blade.php b/resources/views/checkout_complete_list.blade.php index 5f5b363..f0f56ce 100644 --- a/resources/views/checkout_complete_list.blade.php +++ b/resources/views/checkout_complete_list.blade.php @@ -16,28 +16,47 @@
- +
- - - + + + + + + + + + - + + @foreach($checkout_complete_results as $c) - + + + + + + + + + + - - @endforeach -- 2.52.0 From ebfbee52967f4bee784c612265f79e1bab71cf20 Mon Sep 17 00:00:00 2001 From: Russ Long Date: Sun, 3 May 2026 07:01:57 -0400 Subject: [PATCH 3/5] feat: update bidderlist columns to show full contact details --- resources/views/bidderlist.blade.php | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/resources/views/bidderlist.blade.php b/resources/views/bidderlist.blade.php index 608dead..c982681 100644 --- a/resources/views/bidderlist.blade.php +++ b/resources/views/bidderlist.blade.php @@ -17,24 +17,32 @@
-
Bidder #NameItems Won#Last NameFirst NameAddressCityStateZipPhoneEmail TotalPaymentPayment MethodItems Won
{{ $c->bidder_assigned_number }}{{ $c->bidder_fname }} {{ $c->bidder_lname }}{{ $c->bidder_lname }}{{ $c->bidder_fname }}{{ $c->bidder_addr }}{{ $c->bidder_city }}{{ $c->bidder_state }}{{ $c->bidder_zip }}{{ \App\Helpers\PhoneHelper::format($c->bidder_phone) }}{{ $c->bidder_email }}${{ number_format($c->winnertotal, 2) }} + @if($c->payment_method == 1) Cash + @elseif($c->payment_method == 2) Check ({{ $c->check_number }}) + @else Credit ({{ $c->cc_transaction }}) + @endif + @foreach(\App\Models\WinningBids::with('items')->where('winning_bidder_num', $c->bidder_num)->get() as $bid) - {{ $bid->items->item_desc ?? 'N/A' }}
+ #{{ $bid->items->item_assigned_num ?? '?' }} - {{ $bid->items->item_desc ?? 'N/A' }}
@endforeach
${{ number_format($c->winnertotal, 2) }}{{ $c->payment_method == 1 ? 'Cash' : ($c->payment_method == 2 ? 'Check' : 'Credit') }}
+
- + + + + + + - @foreach($bidderlist_results as $bidder) - - + + + + + + + - @endforeach -- 2.52.0 From 39a181e0132b74eaa57cc10fb90bc1d4593b7e06 Mon Sep 17 00:00:00 2001 From: Russ Long Date: Sun, 3 May 2026 07:03:17 -0400 Subject: [PATCH 4/5] feat: update showcarlist columns to show full contact and vehicle details --- resources/views/showcarlist.blade.php | 30 ++++++++++++++++++++------- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/resources/views/showcarlist.blade.php b/resources/views/showcarlist.blade.php index 93878d1..b2a4f45 100644 --- a/resources/views/showcarlist.blade.php +++ b/resources/views/showcarlist.blade.php @@ -14,24 +14,38 @@
-
#NameLast NameFirst NameAddressCityStateZip Phone EmailAddress
{{ $bidder->bidder_assigned_number }}{{ $bidder->bidder_fname }} {{ $bidder->bidder_lname }}{{ $bidder->bidder_phone }}{{ $bidder->bidder_lname }}{{ $bidder->bidder_fname }}{{ $bidder->bidder_addr }}{{ $bidder->bidder_city }}{{ $bidder->bidder_state }}{{ $bidder->bidder_zip }}{{ \App\Helpers\PhoneHelper::format($bidder->bidder_phone) }} {{ $bidder->bidder_email }}{{ $bidder->bidder_addr }}, {{ $bidder->bidder_city }}
+
- + + + + + + + + + + - - @foreach($showcarlist_results as $vehicle) - + + + + + + + + + + - - @endforeach @@ -46,7 +60,7 @@ @endsection -- 2.52.0 From bd6b83ad13fbe5fcb3fca9571dc0b69a9cce471c Mon Sep 17 00:00:00 2001 From: Russ Long Date: Sun, 3 May 2026 07:05:13 -0400 Subject: [PATCH 5/5] docs: update changelog with reporting and checkout verification improvements --- readme.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/readme.md b/readme.md index a107a6b..e78c7d5 100644 --- a/readme.md +++ b/readme.md @@ -58,6 +58,7 @@ The Laravel framework is open-sourced software licensed under the [MIT license]( - **Searchable Dropdowns:** Integrated `TomSelect` across various forms (Checkout, Reprint Receipt, etc.) for enhanced usability. - **Self-Checkout Flow:** Added a prominent self-checkout link for bidders, integrated with North Embedded Checkout. - **Pickup Instructions:** Added clear instructions for bidders on the checkout completion page to proceed to the Item Pickup Table. +- **North Checkout Fallback:** Restored the manual "Verify Payment Status" button and enhanced error reporting for digital wallet payments (Google Pay). #### Fixed - **Logo Integration:** Corrected logo sizing issues using inline styles to override theme constraints. @@ -66,6 +67,8 @@ The Laravel framework is open-sourced software licensed under the [MIT license]( - **Data Restoration:** Re-added bidder information and itemized winning lists to the checkout completion views. #### Changed +- **Expanded Reports:** Standardized `bidderlist`, `showcarlist`, and `checkout_complete_list` to show full contact details (Address, City, State, Zip, Phone, Email). +- **Reporting Enhancements:** Added Year, Make, and Model to the `showcarlist` and included item numbers in the `checkout_complete_list` for improved tracking. - **UI Cleanup:** Disabled default Tablar footers and notifications across all layout templates to maintain a focused auction interface. - **Theme Consistency:** Updated various partials to ensure a seamless transition from the previous custom theme to Tablar. -- 2.52.0
Bidder ##Last NameFirst NameAddressCityStateZipPhoneEmailYear Make ModelYearOwner
{{ $vehicle->bidder_assigned_number ?? 'N/A' }}{{ $vehicle->bidder_assigned_number }}{{ $vehicle->bidder_lname }}{{ $vehicle->bidder_fname }}{{ $vehicle->bidder_addr }}{{ $vehicle->bidder_city }}{{ $vehicle->bidder_state }}{{ $vehicle->bidder_zip }}{{ \App\Helpers\PhoneHelper::format($vehicle->bidder_phone) }}{{ $vehicle->bidder_email }}{{ $vehicle->year }} {{ $vehicle->make }} {{ $vehicle->model }}{{ $vehicle->year }}{{ $vehicle->bidder_fname }} {{ $vehicle->bidder_lname }}