X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=CRM%2FContribute%2FForm%2FUpdateBilling.php;h=9a1b1a939464cb7748b178ece0161b8acfa56836;hb=9126e134807cc434d8d91f2bc570a1f8db7449fe;hp=1370802e5494bea13208fecef2c0151dbae44ce5;hpb=f3f0ee4316f429eb65f1545a7b5e1ef2896af0d8;p=civicrm-core.git diff --git a/CRM/Contribute/Form/UpdateBilling.php b/CRM/Contribute/Form/UpdateBilling.php index 1370802e54..9a1b1a9394 100644 --- a/CRM/Contribute/Form/UpdateBilling.php +++ b/CRM/Contribute/Form/UpdateBilling.php @@ -55,12 +55,12 @@ class CRM_Contribute_Form_UpdateBilling extends CRM_Contribute_Form_Contribution } if ((!$this->_crid && !$this->_coid && !$this->_mid) || (!$this->_subscriptionDetails)) { - CRM_Core_Error::fatal('Required information missing.'); + throw new CRM_Core_Exception('Required information missing.'); } if (!$this->_paymentProcessor['object']->supports('updateSubscriptionBillingInfo')) { - CRM_Core_Error::fatal(ts("%1 processor doesn't support updating subscription billing details.", - array(1 => $this->_paymentProcessor['object']->_processorName) + throw new CRM_Core_Exception(ts("%1 processor doesn't support updating subscription billing details.", + [1 => $this->_paymentProcessor['title']] )); } $this->assign('paymentProcessor', $this->_paymentProcessor); @@ -84,10 +84,10 @@ class CRM_Contribute_Form_UpdateBilling extends CRM_Contribute_Form_Contribution * Default values */ public function setDefaultValues() { - $this->_defaults = array(); + $this->_defaults = []; if ($this->_subscriptionDetails->contact_id) { - $fields = array(); + $fields = []; $names = array( 'first_name', 'middle_name', @@ -170,7 +170,7 @@ class CRM_Contribute_Form_UpdateBilling extends CRM_Contribute_Form_Contribution * true if no errors, else array of errors */ public static function formRule($fields, $files, $self) { - $errors = array(); + $errors = []; CRM_Core_Form::validateMandatoryFields($self->_fields, $fields, $errors); // validate the payment instrument values (e.g. credit card number) @@ -192,7 +192,7 @@ class CRM_Contribute_Form_UpdateBilling extends CRM_Contribute_Form_Contribution } $fields["email-{$this->_bltID}"] = 1; - $processorParams = array(); + $processorParams = []; foreach ($params as $key => $val) { $key = str_replace('billing_', '', $key); list($key) = explode('-', $key); @@ -200,10 +200,11 @@ class CRM_Contribute_Form_UpdateBilling extends CRM_Contribute_Form_Contribution } $processorParams['state_province'] = CRM_Core_PseudoConstant::stateProvince($params["billing_state_province_id-{$this->_bltID}"], FALSE); $processorParams['country'] = CRM_Core_PseudoConstant::country($params["billing_country_id-{$this->_bltID}"], FALSE); - $processorParams['month'] = $processorParams['credit_card_exp_date']['M']; - $processorParams['year'] = $processorParams['credit_card_exp_date']['Y']; - $processorParams['subscriptionId'] = $this->_subscriptionDetails->subscription_id; + $processorParams['month'] = CRM_Core_Payment_Form::getCreditCardExpirationMonth($processorParams); + $processorParams['year'] = CRM_Core_Payment_Form::getCreditCardExpirationYear($processorParams); + $processorParams['subscriptionId'] = $this->getSubscriptionDetails()->processor_id; $processorParams['amount'] = $this->_subscriptionDetails->amount; + $message = ''; $updateSubscription = $this->_paymentProcessor['object']->updateSubscriptionBillingInfo($message, $processorParams); if (is_a($updateSubscription, 'CRM_Core_Error')) { CRM_Core_Error::displaySessionError($updateSubscription); @@ -333,10 +334,7 @@ class CRM_Contribute_Form_UpdateBilling extends CRM_Contribute_Form_Contribution list($donorDisplayName, $donorEmail) = CRM_Contact_BAO_Contact::getContactDetails($this->_subscriptionDetails->contact_id); $tplParams['contact'] = array('display_name' => $donorDisplayName); - $date = CRM_Utils_Date::format($processorParams['credit_card_exp_date']); - $tplParams['credit_card_exp_date'] = CRM_Utils_Date::mysqlToIso($date); - $tplParams['credit_card_number'] = CRM_Utils_System::mungeCreditCard($processorParams['credit_card_number']); - $tplParams['credit_card_type'] = $processorParams['credit_card_type']; + $tplParams = array_merge($tplParams, CRM_Contribute_Form_AbstractEditPayment::formatCreditCardDetails($processorParams)); $sendTemplateParams = array( 'groupName' => $this->_subscriptionDetails->membership_id ? 'msg_tpl_workflow_membership' : 'msg_tpl_workflow_contribution',