protected function processRecord(CustomerOrder $order) { $order->processMass_history = new OrderHistory($order, SessionUser::getUser()); switch ($this->getAction()) { case 'setNew': $status = CustomerOrder::STATUS_NEW; break; case 'setProcessing': $status = CustomerOrder::STATUS_PROCESSING; break; case 'setAwaitingShipment': $status = CustomerOrder::STATUS_AWAITING; break; case 'setShipped': $status = CustomerOrder::STATUS_SHIPPED; break; case 'setReturned': $status = CustomerOrder::STATUS_RETURNED; break; case 'setUnfinalized': $order->isFinalized->set(0); break; case 'setCancel': $order->cancel(); break; case 'setFinalized': if (!$order->isFinalized->get() && $order->user->get()) { $order->finalize(); } break; } if (isset($status) && $status != $order->status->get()) { $order->setStatus($status); $this->params['controller']->sendStatusNotifyEmail($order); } }