CRM-17387 getBillingDefaults function not available to Membership Form
authoreileenmcnaugton <eileen@fuzion.co.nz>
Tue, 13 Oct 2015 09:38:04 +0000 (22:38 +1300)
committereileenmcnaugton <eileen@fuzion.co.nz>
Tue, 13 Oct 2015 09:38:04 +0000 (22:38 +1300)
I think this might be some mix up in the history of merged & perhaps this function
might have been meant to go in favour of anohter.

But, the other places in the code that duplicate this are still present - so perhaps not tackled

CRM/Contribute/Form/AbstractEditPayment.php
CRM/Member/Form/MembershipRenewal.php

index 7fb7a90e404b1f8a145b26db4ad01590504a355a..6c373e3271505fed40e2dc4f19f181e45329b91b 100644 (file)
@@ -706,4 +706,30 @@ LEFT JOIN  civicrm_contribution on (civicrm_contribution.contact_id = civicrm_co
     }
   }
 
+  /**
+   * Get default values for billing fields.
+   *
+   * @todo this function still replicates code in several other places in the code.
+   *
+   * Also - the call to getProfileDefaults possibly covers the state_province & country already.
+   *
+   * @param $defaults
+   *
+   * @return array
+   */
+  protected function getBillingDefaults($defaults) {
+    // set default country from config if no country set
+    $config = CRM_Core_Config::singleton();
+    if (empty($defaults["billing_country_id-{$this->_bltID}"])) {
+      $defaults["billing_country_id-{$this->_bltID}"] = $config->defaultContactCountry;
+    }
+
+    if (empty($defaults["billing_state_province_id-{$this->_bltID}"])) {
+      $defaults["billing_state_province_id-{$this->_bltID}"] = $config->defaultContactStateProvince;
+    }
+
+    $billingDefaults = $this->getProfileDefaults('Billing', $this->_contactID);
+    return array_merge($defaults, $billingDefaults);
+  }
+
 }
index 697ed171c8a92c4242085f1a25f7db9867c88002..b419773ea5699ed2d5b2f994b9d281370c10eb4d 100644 (file)
@@ -726,24 +726,4 @@ class CRM_Member_Form_MembershipRenewal extends CRM_Member_Form {
     }
   }
 
-  /**
-   * @param $defaults
-   *
-   * @return array
-   */
-  protected function getBillingDefaults($defaults) {
-    // set default country from config if no country set
-    $config = CRM_Core_Config::singleton();
-    if (empty($defaults["billing_country_id-{$this->_bltID}"])) {
-      $defaults["billing_country_id-{$this->_bltID}"] = $config->defaultContactCountry;
-    }
-
-    if (empty($defaults["billing_state_province_id-{$this->_bltID}"])) {
-      $defaults["billing_state_province_id-{$this->_bltID}"] = $config->defaultContactStateProvince;
-    }
-
-    $billingDefaults = $this->getProfileDefaults('Billing', $this->_contactID);
-    return array_merge($defaults, $billingDefaults);
-  }
-
 }