private function _verifyGatewayResponse($response) { if (isset($response['verification'])) { return new Result\Successful(CreditCardVerification::factory($response['verification'])); } else { if (isset($response['apiErrorResponse'])) { return new Result\Error($response['apiErrorResponse']); } else { throw new Exception\Unexpected("Expected transaction or apiErrorResponse"); } } }
/** * sets instance properties from an array of values * * @access protected * @param array $creditCardAttribs array of creditcard data * @return none */ protected function _initialize($creditCardAttribs) { // set the attributes $this->_attributes = $creditCardAttribs; // map each address into its own object $billingAddress = isset($creditCardAttribs['billingAddress']) ? Address::factory($creditCardAttribs['billingAddress']) : null; $subscriptionArray = array(); if (isset($creditCardAttribs['subscriptions'])) { foreach ($creditCardAttribs['subscriptions'] as $subscription) { $subscriptionArray[] = Subscription::factory($subscription); } } $this->_set('subscriptions', $subscriptionArray); $this->_set('billingAddress', $billingAddress); $this->_set('expirationDate', $this->expirationMonth . '/' . $this->expirationYear); $this->_set('maskedNumber', $this->bin . '******' . $this->last4); if (isset($creditCardAttribs['verifications']) && count($creditCardAttribs['verifications']) > 0) { $verifications = $creditCardAttribs['verifications']; usort($verifications, array($this, '_compareCreatedAtOnVerifications')); $this->_set('verification', CreditCardVerification::factory($verifications[0])); } }