public function afterFind($results, $primary = false) { if ($primary) { $results = Hash::insert($results, "{n}.BraintreeSubscription", array()); $results = Hash::insert($results, "{n}.BraintreePlan", array()); $braintreeSubscriptions = Braintree_Subscription::search([Braintree_SubscriptionSearch::ids()->in(Hash::extract($results, "{n}.BillingSubscription.remote_subscription_id"))]); $braintreePlans = Braintree_Plan::all(); foreach ($results as $key => $result) { foreach ($braintreeSubscriptions as $braintreeSubscription) { if ($braintreeSubscription->id == $result['BillingSubscription']['remote_subscription_id']) { $result['BraintreeSubscription'] = $braintreeSubscription; break; } //$results = Hash::insert($results, "{n}.BillingSubscription[remote_subscription_id=".$braintreeSubscription->id."]", array('BraintreeSubscription' => $braintreeSubscription)); } foreach ($braintreePlans as $braintreePlan) { if ($braintreePlan->id == $result['BillingSubscription']['remote_plan_id']) { $result['BraintreePlan'] = $braintreePlan; break; } } $results[$key] = $result; } } return $results; }
public static function fetch($query, $ids) { $criteria = array(); foreach ($query as $term) { $criteria[$term->name] = $term->toparam(); } $criteria["ids"] = Braintree_SubscriptionSearch::ids()->in($ids)->toparam(); $response = Braintree_Http::post('/subscriptions/advanced_search', array('search' => $criteria)); return Braintree_Util::extractAttributeAsArray($response['subscriptions'], 'subscription'); }
public function fetch($query, $ids) { $criteria = array(); foreach ($query as $term) { $criteria[$term->name] = $term->toparam(); } $criteria["ids"] = Braintree_SubscriptionSearch::ids()->in($ids)->toparam(); $path = $this->_config->merchantPath() . '/subscriptions/advanced_search'; $response = $this->_http->post($path, array('search' => $criteria)); return Braintree_Util::extractAttributeAsArray($response['subscriptions'], 'subscription'); }
function testSearch_ids_isMultipleValueNode() { $node = Braintree_SubscriptionSearch::ids(); $this->assertType('Braintree_MultipleValueNode', $node); }