Example #1
0
 public function closeCartAction($cartId = 0)
 {
     $cart = Ecommerce\Cart::get((int) $cartId);
     $result = new Server\Result();
     if ($cart && $cart->cart_status_id != 5) {
         $cart->cart_status_id = 5;
         $cart->save();
         $result->successMsg = 'Заказ был завершен';
         $result->send();
     }
     $result->success = false;
     $result->content = 'Такая корзина не найдена';
     $result->send();
 }
Example #2
0
<?php

$cart = !empty($_SESSION['cart']['cart_id']) ? Ecommerce\Cart::get((int) $_SESSION['cart']['cart_id']) : false;
$count = $cart ? count($cart->cartItems) : 0;
$sum = $cart ? $cart->sum : 0;
?>
<a href ='/ecommerce/cart'> 
    В корзине <?php 
echo $count;
?>
 <?php 
echo Tools::getNumEnding($count, ['товар', 'товара', 'товаров']);
?>
  (<?php 
echo $sum;
?>
р.)
</a>
Example #3
0
<?php

$cart = Ecommerce\Cart::getList(['where' => [['user_id', Users\User::$cur->id]], 'order' => ['complete_data', 'desc'], 'limit' => 1]);
$cart_id = isset(array_values($cart)[0]) ? array_values($cart)[0]->id : '';
$prefix = isset(App::$cur->ecommerce->config['orderPrefix']) ? $config = App::$cur->ecommerce->config['orderPrefix'] : '';
$text = "<p>История заказа находится в <a href='/users/cabinet'>Личном кабинете</a>. Для просмотра истории, перейдите по ссылке <a href=\"/users/cabinet/ecommerceOrdersHistory\">История заказов</a>.</p>\n             <p>Если у Вас возникли вопросы, пожалуйста <a href='/materials/contacts'>свяжитесь с нами</a>.</p>";
if (isset(array_values($cart)[0])) {
    ?>
    <h1 class="heading-title">Ваш заказ номер <?php 
    echo $prefix;
    echo $cart_id;
    ?>
 принят!</h1>
    <p>Ваш заказ принят!</p>
    <?php 
    echo $text;
    ?>
    <p>Спасибо за покупки в нашем интернет-магазине!</p>
<?php 
} else {
    ?>
    <h1 class="heading-title">У вас нет недавних заказов</h1>
    <p>У вас нет недавних заказов</p>
    <?php 
    echo $text;
}
Example #4
0
 public function getCurCart($create = true)
 {
     $cart = false;
     if (!empty($_SESSION['cart']['cart_id'])) {
         $cart = Ecommerce\Cart::get((int) $_SESSION['cart']['cart_id']);
     }
     if (!$cart && $create) {
         $cart = new Ecommerce\Cart();
         $cart->cart_status_id = 1;
         $cart->user_id = Users\User::$cur->id;
         $userCard = \Ecommerce\Card\Item::get(\Users\User::$cur->id, 'user_id');
         if ($userCard) {
             $cart->card_item_id = $userCard->id;
         }
         $cart->save();
         $_SESSION['cart']['cart_id'] = $cart->id;
     }
     return $cart;
 }
Example #5
0
    ?>
 / <?php 
    echo \App::$cur->ecommerce->getItemsCount(['where' => ['date_create', date('Y-m-d 00:00:00'), '>']]);
    ?>
</p>
              </div>
              <div class="col-lg-6">
                <p>Всего Корзин/Заказов: <?php 
    echo Ecommerce\Cart::getCount();
    ?>
 / <?php 
    echo Ecommerce\Cart::getCount(['where' => ['cart_status_id', 1, '>']]);
    ?>
</p>
                <p>Новых Корзин/Заказов сегодня:  <?php 
    echo Ecommerce\Cart::getCount(['where' => [['date_create', date('Y-m-d 00:00:00'), '>']]]);
    ?>
 / <?php 
    echo Ecommerce\Cart::getCount(['where' => [['cart_status_id', 1, '>'], ['complete_data', date('Y-m-d 00:00:00'), '>']]]);
    ?>
</p>                  
              </div>
            </div>
          </div>
          <div class="panel-footer">
            <a href ="/admin/Ecommerce/Item">Товары</a> |
            <a href ="/admin/Ecommerce/Cart">Заказы</a>
          </div>
        </div>
        <?php 
}];
Example #6
0
 public function buyCardAction()
 {
     $this->view->setTitle('Покупка карты');
     $bread = [];
     $bread[] = ['text' => 'Покупка карты'];
     $user = Users\User::$cur;
     if (!empty($_POST) && !empty($_POST['card_id'])) {
         $error = false;
         $card = \Ecommerce\Card::get((int) $_POST['card_id']);
         if (!$card) {
             $error = true;
             Msg::add('Такой карты не существует', 'danger');
         }
         if (!Users\User::$cur->id) {
             $user_id = $this->Users->registration($_POST, true);
             if (!$user_id) {
                 $error = true;
                 $user = null;
             } else {
                 $user = Users\User::get($user_id);
             }
         }
         $userCard = \Ecommerce\Card\Item::get([['card_id', $card->id], ['user_id', $user->id]]);
         if ($userCard) {
             $error = true;
             Msg::add('У вас уже есть такая карта', 'danger');
         }
         $fields = \Ecommerce\UserAdds\Field::getList();
         foreach ($fields as $field) {
             if (empty($_POST['userAdds']['fields'][$field->id]) && $field->required) {
                 $error = 1;
                 Msg::add('Вы не указали: ' . $field->name);
             }
         }
         if (!$error) {
             $cardItem = new \Ecommerce\Card\Item();
             $cardItem->card_id = $card->id;
             $cardItem->user_id = $user->id;
             $cardItem->save();
             $cart = new \Ecommerce\Cart();
             $cart->user_id = $user->user_id;
             $cart->cart_status_id = 2;
             $cart->comment = htmlspecialchars($_POST['comment']);
             $cart->date_status = date('Y-m-d H:i:s');
             $cart->complete_data = date('Y-m-d H:i:s');
             if (!empty($_SESSION['cart']['cart_id'])) {
                 $cart->card_item_id = $cardItem->id;
             }
             $cart->save();
             $this->module->parseFields($_POST['userAdds']['fields'], $cart);
             $extra = new \Ecommerce\Cart\Extra();
             $extra->name = $card->name;
             $extra->price = $card->price;
             $extra->count = 1;
             $extra->cart_id = $cart->id;
             $extra->info = 'card:' . $card->id . '|cardItem:' . $cardItem->id;
             $extra->save();
             Tools::redirect('/ecommerce/cart/success');
         }
     }
     $this->view->page(['data' => compact('bread')]);
 }
Example #7
0
 public function orderDetailAction($id = 0)
 {
     $cart = Ecommerce\Cart::get((int) $id);
     if ($cart->user_id != Users\User::$cur->id) {
         $this->url->redirect('/', 'Это не ваша корзина');
     }
     $bread[] = ['text' => 'Каталог', 'href' => '/ecommerce'];
     $bread[] = ['text' => 'Корзина', 'href' => '/ecommerce/cart'];
     $bread[] = ['text' => 'Заказ: №' . $cart->id, 'href' => '/ecommerce/cart/orderDetail/' . $cart->id];
     $this->view->setTitle('Заказ №' . $cart->id);
     $this->view->page(['data' => compact('cart', 'bread')]);
 }
Example #8
0
<?php

$pages = new Ui\Pages($_GET, ['count' => Ecommerce\Cart::getCount(['where' => ['user_id', Users\User::$cur->id]]), 'limit' => 10]);
$carts = Ecommerce\Cart::getList(['where' => ['user_id', Users\User::$cur->id], 'order' => ['date_create', 'desc'], 'start' => $pages->params['start'], 'limit' => $pages->params['limit']]);
$prefix = isset(App::$cur->ecommerce->config['orderPrefix']) ? $config = App::$cur->ecommerce->config['orderPrefix'] : '';
?>
<h3>История заказов</h3>
<div class="table-responsive">
  <table class="table table-bordered table-hover table-condensed list">
    <thead>
      <tr>
        <td class="text-right">№ Заказа</td>
        <td class="text-left">Статус</td>

        <td class="text-right">Товары</td>
        <td class="text-right">Всего</td>
        <td class="text-left">Оформлено</td>
        <td>Оплата</td>
        <td></td>
      </tr>
    </thead>
    <tbody>
      <?php 
foreach ($carts as $cart) {
    $sums = [];
    foreach ($cart->cartItems as $cartItem) {
        $currency_id = $cartItem->price && $cartItem->price->currency ? $cartItem->price->currency->id : (!empty(\App::$cur->ecommerce->config['defaultCurrency']) ? \App::$cur->ecommerce->config['defaultCurrency'] : 0);
        if (empty($sums[$currency_id])) {
            $sums[$currency_id] = $cartItem->final_price * $cartItem->count;
        } else {
            $sums[$currency_id] += $cartItem->final_price * $cartItem->count;