Example #1
0
 public function prepareRow($object)
 {
     $row = parent::prepareRow($object);
     $menu = array(array('text' => 'Добавить товар', 'handler' => 'this.addProduct'));
     // Если статус Новый, то предлагаем принять в работу
     switch ($row['status_id']) {
         case '1':
             // Новый
             break;
         case '2':
             // Оформленный пользователем
         // Оформленный пользователем
         case '8':
             // Оплачен
             if (!$row['manager']) {
                 $menu[] = array('text' => 'Принять заказ', 'handler' => 'this.takeOrder');
             }
             break;
         default:
             $menu[] = array('text' => 'Изменить статус', 'handler' => 'this.updateOrderStatus');
     }
     if ($row['status_id'] > 1) {
         $menu[] = array('text' => 'Печать заказа', 'handler' => 'this.printOrder');
     }
     if ($this->modx->hasPermission('delete_order')) {
         $menu[] = array('text' => 'Удалить заказ', 'handler' => 'this.deleteOrder');
     }
     if (!empty($row['contractor'])) {
         $menu[] = array('text' => 'Данные клиента', 'handler' => 'this.ShowContractorInfo');
         $menu[] = array('text' => 'Фильтровать по клиенту', 'handler' => 'this.FilterByContractor');
     }
     $row['menu'] = $menu;
     return $row;
 }
Example #2
0
 public function prepareRow(xPDOObject $object)
 {
     $data = parent::prepareRow($object);
     $menu = !empty($data['menu']) ? $data['menu'] : array();
     // Если заказ оформленный, то можно его оплатить
     if ($data['status_id'] == 2) {
         $menu[] = array("text" => "Оплатить", "handler" => 'pay');
     }
     $data['menu'] = $menu;
     return $data;
 }