Ejemplo n.º 1
0
 /**
  * Возвращает сообщение о статусе заказа "Подтвержден".
  * @param type $pay - id заказа.
  * @return mixed - сообщение и email пользователя.
  */
 public function confirmOrder($id)
 {
     // Модель для работы заказом.
     $model = new Models_Order();
     // Информация о заказе по переданному id.
     $orderInfo = $model->getOrder('`' . PREFIX . 'order`.id = "' . $id . '"');
     $hash = URL::getQueryParametr('sec');
     // Информация о пользователе, сделавший заказ .
     $orderUser = USER::getUserInfoByEmail($orderInfo[$id]['user_email']);
     // Если присланный хэш совпадает с хэшом из БД для соответствующего id.
     if ($orderInfo[$id]['confirmation'] == $hash) {
         if ($orderInfo[$id]['hash'] == '') {
             $msg = 'Посмотреть статус заказа Вы можете в <a href="' . SITE . '/personal">личном кабинете</a>.';
         } else {
             $msg = 'Следить за статусом заказа Вы можете по ссылке <br> ' . '<a href="' . SITE . '/order?hash=' . $orderInfo[$id]['hash'] . '">' . SITE . '/order?hash=' . $orderInfo[$id]['hash'] . '</a>';
         }
         // Если статус заказа "Не подтвержден".
         if (0 == $orderInfo[$id]['status_id']) {
             // Подтверждаем заказ.
             $orderStatus = 1;
             // если оплата выбрана наложенным платежём, то статус заказа изменяем на "в доставке"
             if ($orderInfo[$id]['payment_id'] == 3) {
                 $orderStatus = 3;
             }
             $model->sendStatusToEmail($id, $orderStatus);
             $model->setOrderStatus($id, $orderStatus);
             $orderNumber = $orderInfo[$id]['number'];
             $orderId = $id;
             $msg = 'Ваш заказ №' . $orderNumber . ' подтвержден и передан на обработку. <br>
       ' . $msg;
         } else {
             $msg = 'Заказ уже подтвержден и находится в работе. <br>
       ' . $msg;
         }
         if (!$orderUser->activity) {
             $userEmail = $orderUser->email;
             $_SESSION['id'] = $orderUser->id;
         }
     } else {
         $msg = 'Некорректная ссылка.<br> Заказ не подтвержден<br>';
     }
     $result = array('msg' => $msg, 'userEmail' => $userEmail);
     return $result;
 }