/** * Build up a search query based on the users entries * * @return $this */ protected function _prepareBraintreeSearchQuery() { // Has the search query been set already? if ($this->searchQuery) { return $this->searchQuery; } $searchArray = array(); // Init some times $to = new Datetime(); $from = clone $to; $from = $from->modify("-24 hour"); // If a from and to date are set modify things if (Mage::app()->getRequest()->getParam('from_date') && Mage::app()->getRequest()->getParam('to_date')) { $from = new DateTime(Mage::app()->getRequest()->getParam('from_date')); $to = new DateTime(Mage::app()->getRequest()->getParam('to_date')); } // We always want to be filtering by a date to some degree $searchArray[] = Braintree_TransactionSearch::createdAt()->between($from, $to); // Type search if ($type = Mage::app()->getRequest()->getParam('type')) { $searchArray[] = Braintree_TransactionSearch::type()->is($type); } // Allow searching upon the status if ($status = Mage::app()->getRequest()->getParam('status')) { $searchArray[] = Braintree_TransactionSearch::status()->is($status); } // Order ID searching can be helpful if ($orderId = Mage::app()->getRequest()->getParam('order_id')) { $searchArray[] = Braintree_TransactionSearch::orderId()->is($orderId); } // Store the search query within the session Mage::getSingleton('adminhtml/session')->setBraintreeSearchQuery($searchArray); return $searchArray; }
function test_multipleValueNode_status_allowedValues() { $this->setExpectedException('InvalidArgumentException', 'Invalid argument(s) for status: noSuchStatus'); $collection = Braintree_Transaction::search(array(Braintree_TransactionSearch::status()->is('noSuchStatus'))); }