From 175031a4d8da2113d4ca778273754fa64ce3582d Mon Sep 17 00:00:00 2001
From: Matthew Wire <mjw@mjwconsult.co.uk>
Date: Fri, 25 Nov 2022 17:55:51 +0000
Subject: [PATCH] Fix fallback update email

---
 CRM/Stripe/BAO/StripeCustomer.php | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/CRM/Stripe/BAO/StripeCustomer.php b/CRM/Stripe/BAO/StripeCustomer.php
index 75773fb7..4177073e 100644
--- a/CRM/Stripe/BAO/StripeCustomer.php
+++ b/CRM/Stripe/BAO/StripeCustomer.php
@@ -1,6 +1,7 @@
 <?php
 
 use Civi\Api4\Contact;
+use Civi\Api4\Email;
 use Civi\Api4\Extension;
 use Civi\Api4\StripeCustomer;
 use CRM_Stripe_ExtensionUtil as E;
@@ -28,13 +29,14 @@ class CRM_Stripe_BAO_StripeCustomer extends CRM_Stripe_DAO_StripeCustomer {
       // @todo: Remove when we drop support for CiviCRM < 5.53
       // APIv4 - Read & write contact primary and billing locations as implicit joins
       // https://github.com/civicrm/civicrm-core/pull/23972 was added in 5.53
-      $email = \Civi\Api4\Email::get(FALSE)
+      $emailResult = Email::get(FALSE)
+        ->addWhere('contact_id', '=', $contactID)
         ->addOrderBy('is_primary', 'DESC')
         ->addOrderBy('is_billing', 'DESC')
         ->execute()
         ->first();
-      if (!empty($email['email'])) {
-        $contact['email_primary.email'] = $email['email'];
+      if (!empty($emailResult['email'])) {
+        $contact['email_primary.email'] = $emailResult['email'];
       }
     }
 
-- 
GitLab