From a46c643bef1134520be7a4dbc0d22a1e63d73e29 Mon Sep 17 00:00:00 2001 From: yarik Date: Mon, 15 Aug 2016 21:29:01 +0300 Subject: [PATCH] Link on top basket and remove button. --- frontend/controllers/BasketController.php | 1 + frontend/views/basket/modal_items.php | 4 +++- frontend/views/layouts/main.php | 2 +- frontend/web/js/artbox_basket.js | 4 ++-- frontend/web/js/artbox_basket.js.map | 2 +- frontend/web/js/artbox_basket.ts | 4 ++-- frontend/web/js/script.js | 10 ++++++++++ 7 files changed, 20 insertions(+), 7 deletions(-) diff --git a/frontend/controllers/BasketController.php b/frontend/controllers/BasketController.php index fa79a46..3250c08 100755 --- a/frontend/controllers/BasketController.php +++ b/frontend/controllers/BasketController.php @@ -17,6 +17,7 @@ class BasketController extends \yii\web\Controller $basket = \Yii::$app->basket; $result = [ 'basket' => $basket->getData(), + 'modal' => $basket->getModal(), ]; return $result; } diff --git a/frontend/views/basket/modal_items.php b/frontend/views/basket/modal_items.php index a32e3dc..860e709 100644 --- a/frontend/views/basket/modal_items.php +++ b/frontend/views/basket/modal_items.php @@ -51,7 +51,9 @@ $item = $basket->getItem($model->product_variant_id); echo $item['count'] * $item['price']; ?> -   +   + + x diff --git a/frontend/views/layouts/main.php b/frontend/views/layouts/main.php index 77010a3..fb3278c 100755 --- a/frontend/views/layouts/main.php +++ b/frontend/views/layouts/main.php @@ -153,7 +153,7 @@ AppAsset::register($this);
  • Личный кабинет
  • - Корзина +

    Корзина пуста

    diff --git a/frontend/web/js/artbox_basket.js b/frontend/web/js/artbox_basket.js index 3dedf43..99511fd 100644 --- a/frontend/web/js/artbox_basket.js +++ b/frontend/web/js/artbox_basket.js @@ -2,7 +2,7 @@ var ArtboxBasket = (function () { function ArtboxBasket() { $.get('/basket', function (data) { this._items = data.basket; - this.updateCart(); + this.updateModal(data.modal); }.bind(this), 'json').fail(function () { console.error('Basket cannot be init'); }); @@ -46,7 +46,7 @@ var ArtboxBasket = (function () { var cart = $('#top-cart-content'); var count = this.count; if (count > 0) { - $(cart).html('В корзине' + count + ' товар' + ((count > 4) ? 'ов' : ((count > 1) ? 'а' : '')) + '
    на ' + this.sum + '
    '); + $(cart).html('В корзине' + count + ' товар' + ((count > 4) ? 'ов' : ((count > 1) ? 'а' : '')) + '
    на ' + this.sum + '
    '); } else { $(cart).html('

    Корзина пуста

    '); diff --git a/frontend/web/js/artbox_basket.js.map b/frontend/web/js/artbox_basket.js.map index bbd26ee..4b09e8a 100644 --- a/frontend/web/js/artbox_basket.js.map +++ b/frontend/web/js/artbox_basket.js.map @@ -1 +1 @@ -{"version":3,"file":"artbox_basket.js","sourceRoot":"","sources":["artbox_basket.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"artbox_basket.js","sourceRoot":"","sources":["artbox_basket.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/frontend/web/js/artbox_basket.ts b/frontend/web/js/artbox_basket.ts index b910bcf..2727d10 100644 --- a/frontend/web/js/artbox_basket.ts +++ b/frontend/web/js/artbox_basket.ts @@ -6,7 +6,7 @@ class ArtboxBasket { constructor() { $.get('/basket', function (data) { this._items = data.basket; - this.updateCart(); + this.updateModal(data.modal); }.bind(this), 'json').fail(function() { console.error('Basket cannot be init'); }); @@ -42,7 +42,7 @@ class ArtboxBasket { var cart = $('#top-cart-content'); var count = this.count; if(count > 0) { - $(cart).html('В корзине' + count + ' товар' + ((count > 4) ? 'ов' : ((count > 1) ? 'а' : '')) + '
    на ' + this.sum + '
    '); + $(cart).html('В корзине' + count + ' товар' + ((count > 4) ? 'ов' : ((count > 1) ? 'а' : '')) + '
    на ' + this.sum + '
    '); } else { $(cart).html('

    Корзина пуста

    '); } diff --git a/frontend/web/js/script.js b/frontend/web/js/script.js index 9018f21..1d25ba4 100644 --- a/frontend/web/js/script.js +++ b/frontend/web/js/script.js @@ -31,4 +31,14 @@ $(document).on('click', '#buyForm .count_choise .plus', function(e) { var new_value = parseInt(value) + 1; $(input).val(new_value); $(input).trigger('change'); +}); +$(document).on('click', '#top-cart', function() { + if(artbox_basket.count > 0) { + $('#buyForm').modal('show'); + } +}); +$(document).on('click', '#buyForm .cart_remove', function() { + var container = $(this).parents('tr'); + var id = $(container).data('id'); + artbox_basket.set(id, 0); }); \ No newline at end of file -- libgit2 0.21.4