/** * Search total amount * * @return \Doctrine\ORM\PersistentCollection */ protected function getSearchTotals() { // Get search conditions $name = \XLite\View\ItemsList\Model\Order\Admin\Search::getSessionCellName(); $cnd = new \XLite\Core\CommonCell(\XLite\Core\Session::getInstance()->{$name}); return \XLite\Core\Database::getRepo('XLite\\Model\\Order')->getSearchTotal($cnd); }
/** * Define the session cell name for the order list * * @return string */ protected function getSessionCellName() { return \XLite\View\ItemsList\Model\Order\Admin\Search::getSessionCellName(); }
/** * doActionSearch * * @return void */ protected function doActionSearch() { $ordersSearch = array(); $searchParams = \XLite\View\ItemsList\Model\Order\Admin\Search::getSearchParams(); // Prepare dates $this->startDate = $this->getDateValue('startDate'); $this->endDate = $this->getDateValue('endDate', true); if (0 === $this->startDate || 0 === $this->endDate || $this->startDate > $this->endDate) { $date = getdate(time()); $this->startDate = mktime(0, 0, 0, $date['mon'], 1, $date['year']); $this->endDate = mktime(0, 0, 0, $date['mon'], $date['mday'], $date['year']); } foreach ($searchParams as $modelParam => $requestParam) { if (\XLite\Model\Repo\Order::P_DATE === $requestParam) { $ordersSearch[$requestParam] = array($this->startDate, $this->endDate); } elseif (isset(\XLite\Core\Request::getInstance()->{$requestParam})) { $ordersSearch[$requestParam] = \XLite\Core\Request::getInstance()->{$requestParam}; } } \XLite\Core\Session::getInstance()->{\XLite\View\ItemsList\Model\Order\Admin\Search::getSessionCellName()} = $ordersSearch; }