select_options = array(); $i18n = $this->getContext()->getI18N(); foreach (OrderStatusPeer::getTypes() as $type => $label) { $this->select_options[$type] = $i18n->__($label, array(), 'stOrder'); } } public function executePayment() { $this->payments = $this->order->getOrderHasPaymentsJoinPayment(); $c = new Criteria(); $c->add(PaymentTypePeer::ACTIVE, 1); $activePayments = PaymentTypePeer::doSelectWithI18n($c); foreach ($activePayments as $activePayment) { if (!$activePayment->checkPaymentConfiguration()) continue; $activePaymentType[$activePayment->getId()] = $activePayment->getName(); } $this->paymentsType = $activePaymentType; } public function executeProforma() { $this->order_id = $this->order->getId(); $c = new Criteria(); $c->add(InvoicePeer::ORDER_ID, $this->order->getId()); $c->add(InvoicePeer::IS_PROFORMA, 1); $invoice = InvoicePeer::doSelectOne($c); $ifirmaConfig = stConfig::getInstance(sfContext::getInstance(), 'stInvoiceBackend'); $this->ifirma_enabled = $ifirmaConfig->get('ifirma_enabled'); if ($invoice) { $this->invoice_id = $invoice->getId(); } else { $this->type = "none"; } } public function executeInvoice() { $ifirmaConfig = stConfig::getInstance(sfContext::getInstance(), 'stInvoiceBackend'); $this->ifirma_enabled = $ifirmaConfig->get('ifirma_enabled'); // if($invoice) // { // $this->invoice_id = $invoice->getId(); // if($invoice->getIsRequest()==1) // { // $this->type = "request"; // } // if($invoice->getIsConfirm()==1) // { // $this->type = "confirm"; // } // } // else // { // $invoice = $this->order->getProforma(); // if ($invoice) // { // $this->invoice_id = $invoice->getId(); // $this->type = "proforma"; // } // else // { // $this->type = 'none'; // } // } } public function executePointsStatus() { $this->config_points = stConfig::getInstance(sfContext::getInstance(), 'stPointsBackend'); $this->config_points->setCulture($this->getRequestParameter('culture', stLanguage::getOptLanguage())); $this->points_status = 0; if (stPoints::isPointsAssigned($this->order) == true) { $this->points_status = 1; } $this->points_earn = stPoints::getOrderTotalPointsEarn($this->order); $this->order_id = $this->order->getId(); } public function executePointsSpend() { $this->config_points = stConfig::getInstance(sfContext::getInstance(), 'stPointsBackend'); $this->config_points->setCulture($this->getRequestParameter('culture', stLanguage::getOptLanguage())); $this->points_value = stPoints::getOrderTotalPointsValue($this->order); } public function executePointsEarn() { $this->config_points = stConfig::getInstance(sfContext::getInstance(), 'stPointsBackend'); $this->config_points->setCulture($this->getRequestParameter('culture', stLanguage::getOptLanguage())); $this->points_earn = stPoints::getOrderTotalPointsEarn($this->order); } public function executeProductLastOrderWidget() { $backendMainConfig = stConfig::getInstance($this->getContext(), 'stBackendMain'); if ($this->getRequestParameter('date_type')) { $date_type = $this->getRequestParameter('date_type'); $backendMainConfig->set('date_type', $date_type); $backendMainConfig->save(); } else { $date_type = $backendMainConfig->get('date_type'); } if ($date_type == "day") { $from_date = date('Y-m-d H:i:s', time() - 86400); } elseif ($date_type == "week") { $from_date = date('Y-m-d H:i:s', time() - 604800); } elseif ($date_type == "month") { $from_date = date('Y-m-d H:i:s', time() - 2419200); } elseif ($date_type == "lastlog") { $c = new Criteria(); $c->add(sfGuardUserPeer::ID, $this->getUser()->getAttribute('user_id', null, 'sfGuardSecurityUser')); $user = sfGuardUserPeer::doSelectOne($c); $from_date = $this->getUser()->getLastLogin(); } $to_date = date('Y-m-d H:i:s'); $this->date_type = $date_type; $this->from_date = $from_date; $this->to_date = $to_date; //produkty $c = new Criteria(); $criterion = $c->getNewCriterion(OrderProductPeer::CREATED_AT, $from_date, Criteria::GREATER_EQUAL); $criterion->addAnd($c->getNewCriterion(OrderProductPeer::CREATED_AT, $to_date, Criteria::LESS_EQUAL)); $c->add($criterion); $c->addDescendingOrderByColumn(OrderProductPeer::CREATED_AT); $c->setLimit(100); $orderProducts = OrderProductPeer::doSelectJoinProduct($c); $this->orderProducts = $orderProducts; } public function executeSummary() { $filters = stAdminGeneratorHelper::getFilters('stOrder', 'list');; if ((!$this->pager->getNbResults()) || (!$filters)){ return sfView::NONE; } $c = clone $this->pager->getCriteria(); $c->setLimit(null); $c->setOffset(0); $c->clearOrderByColumns(); $c->clearSelectColumns(); $c->addSelectColumn(sprintf('COUNT(%s)', OrderPeer::ID, OrderCurrencyPeer::EXCHANGE)); $c->addSelectColumn(sprintf('SUM(%s * %s)', OrderPeer::OPT_TOTAL_AMOUNT, OrderCurrencyPeer::EXCHANGE)); $c->addSelectColumn(sprintf('AVG(%s * %s)', OrderPeer::OPT_TOTAL_AMOUNT, OrderCurrencyPeer::EXCHANGE)); $c->addJoin(OrderPeer::ORDER_CURRENCY_ID, OrderCurrencyPeer::ID); $rs = OrderPeer::doSelectRS($c); $this->count = 0; $this->averageAmount = 0; $this->totalAmount = 0; if ($rs) { $rs->setFetchmode(ResultSet::FETCHMODE_NUM); if ($rs->next()) { list($this->count, $this->totalAmount, $this->averageAmount) = $rs->getRow(); } } } }