public function getStatuses() { $this->setChartType(self::PIE); $q = $this->getQuery('COUNT(*)'); $f = $q->getFilter(); $q->addField('IF (isCancelled = 1, -2, IF (isPaid = 0, -1, IF (status IS NULL, 0, status)))', null, 'entry'); $f->setGrouping(new ARExpressionHandle('entry')); $this->getReportData($q); foreach ($this->values['x'] as $value) { $value->label = $this->application->translate(CustomerOrder::getStatusName($value->originalName)); } }
protected function getLastOrders() { $f = select(); $f->mergeCondition(new EqualsCond(new ARFieldHandle('CustomerOrder', 'isFinalized'), true)); $f->mergeCondition(new EqualsCond(new ARFieldHandle('CustomerOrder', 'isCancelled'), false)); $f->setOrder(new ARFieldHandle('CustomerOrder', 'dateCompleted'), 'desc'); $f->setLimit(10); $customerOrders = ActiveRecordModel::getRecordSet('CustomerOrder', $f, ActiveRecordModel::LOAD_REFERENCES); $ordersArray = array(); if ($customerOrders->size() > 0) { $i = 0; foreach ($customerOrders as $order) { $ordersArray[$i] = $order->toArray(); $ordersArray[$i]['status_name'] = CustomerOrder::getStatusName($ordersArray[$i]['status'] ? $ordersArray[$i]['status'] : CustomerOrder::STATUS_NEW); $i++; } return $ordersArray; } return array(); }
public function quickEdit() { $this->loadQuickEditLanguageFile(); $request = $this->getRequest(); $userID = $request->get('id'); $user = User::getInstanceByID($userID, ActiveRecordModel::LOAD_DATA, array('UserGroup')); $f = new ARSelectFilter(new EqualsCond(new ARFieldHandle('CustomerOrder', 'userID'), $user->getID())); $f->setOrder(new ARFieldHandle('CustomerOrder', 'dateCompleted'), 'desc'); $customerOrders = ActiveRecordModel::getRecordSet('CustomerOrder', $f, ActiveRecordModel::LOAD_REFERENCES); $response = new ActionResponse(); $response->set('someUser', $user->toArray()); $lastOrder = false; $ordersArray = array(); if ($customerOrders->size() > 0) { $i = 0; foreach ($customerOrders as $order) { $order->loadAddresses(); $order->getShipments(); $order->loadDiscounts(); $ordersArray[$i] = $order->toArray(); $ordersArray[$i]['status_name'] = CustomerOrder::getStatusName($ordersArray[$i]['status'] ? $ordersArray[$i]['status'] : CustomerOrder::STATUS_NEW); $i++; } $response->set('orders', $ordersArray); $response->set('lastOrder', $ordersArray[0]); } $form = UserController::createUserForm($this, $user, $response); $response->set('form', $form); $availableUserGroups = array('' => $this->translate('_default_user_group')); foreach (UserGroup::getRecordSet(new ARSelectFilter()) as $group) { $availableUserGroups[$group->getID()] = $group->name->get(); } $response->set('availableUserGroups', $availableUserGroups); return $response; }