diff --git a/controllers/BasketController.php b/controllers/BasketController.php index 23e63ca..954acd4 100755 --- a/controllers/BasketController.php +++ b/controllers/BasketController.php @@ -20,7 +20,7 @@ /** * @var Basket $basket */ - $basket = \Yii::$app->basket; + $basket = \Yii::$app->get('basket'); $result = [ 'basket' => $basket->getData(), 'modal' => $this->getModal($basket), @@ -28,16 +28,16 @@ ]; return $result; } - - public function actionAdd(int $product_variant_id, int $count) + + public function actionAdd(int $variant_id, int $count) { $response = \Yii::$app->response; $response->format = Response::FORMAT_JSON; /** * @var Basket $basket */ - $basket = \Yii::$app->basket; - $basket->add($product_variant_id, $count); + $basket = \Yii::$app->get('basket'); + $basket->add($variant_id, $count); $result = [ 'basket' => $basket->getData(), 'modal' => $this->getModal($basket), @@ -45,16 +45,16 @@ ]; return $result; } - - public function actionSet(int $product_variant_id, int $count) + + public function actionSet(int $variant_id, int $count) { $response = \Yii::$app->response; $response->format = Response::FORMAT_JSON; /** * @var Basket $basket */ - $basket = \Yii::$app->basket; - $basket->set($product_variant_id, $count); + $basket = \Yii::$app->get('basket'); + $basket->set($variant_id, $count); $result = [ 'basket' => $basket->getData(), 'modal' => $this->getModal($basket), @@ -62,10 +62,10 @@ ]; return $result; } - - public function actionRemove(int $product_variant_id) + + public function actionRemove(int $variant_id) { - return $this->actionSet($product_variant_id, 0); + return $this->actionSet($variant_id, 0); } public function actionTest() @@ -73,7 +73,7 @@ /** * @var Basket $basket */ - $basket = \Yii::$app->basket; + $basket = \Yii::$app->get('basket'); $modal = $this->getModal($basket); return $modal; } diff --git a/migrations/m170503_145306_create_order_product_table.php b/migrations/m170503_145306_create_order_product_table.php index c3d68d0..50c1cb3 100755 --- a/migrations/m170503_145306_create_order_product_table.php +++ b/migrations/m170503_145306_create_order_product_table.php @@ -37,7 +37,7 @@ ); $this->addForeignKey( - 'order_product_variant_id_fkey', + 'order_variant_id_fkey', 'order_product', 'variant_id', 'variant', @@ -53,7 +53,7 @@ public function safeDown() { $this->dropForeignKey('order_product_order_id_fkey', 'order_product'); - $this->dropForeignKey('order_product_variant_id_fkey', 'order_product'); + $this->dropForeignKey('order_variant_id_fkey', 'order_product'); $this->dropTable('order_product'); } diff --git a/models/Delivery.php b/models/Delivery.php index e3a50ab..0d7c8ab 100644 --- a/models/Delivery.php +++ b/models/Delivery.php @@ -1,20 +1,46 @@ [ + 'class' => LanguageBehavior::className(), + ], + ]; + } + /** * @inheritdoc */ @@ -59,7 +97,7 @@ 'status' => Yii::t('order', 'Status'), ]; } - + /** * @return \yii\db\ActiveQuery */ @@ -67,7 +105,7 @@ { return $this->hasMany(DeliveryLang::className(), [ 'delivery_id' => 'id' ]); } - + /** * @return \yii\db\ActiveQuery */ @@ -76,7 +114,7 @@ return $this->hasMany(Language::className(), [ 'id' => 'language_id' ]) ->viaTable('delivery_lang', [ 'delivery_id' => 'id' ]); } - + /** * @return \yii\db\ActiveQuery */ diff --git a/models/Order.php b/models/Order.php index b46e0ed..30bf5f1 100644 --- a/models/Order.php +++ b/models/Order.php @@ -3,7 +3,8 @@ namespace artbox\order\models; use Yii; - + use yii\db\ActiveRecord; + /** * This is the model class for table "order". * @@ -27,7 +28,7 @@ * @property Payment $payment * @property OrderProduct[] $orderProducts */ - class Order extends \yii\db\ActiveRecord + class Order extends ActiveRecord { /** * @inheritdoc diff --git a/models/Payment.php b/models/Payment.php index 15c69c0..6ae1251 100644 --- a/models/Payment.php +++ b/models/Payment.php @@ -1,10 +1,13 @@ [ + 'class' => LanguageBehavior::className(), + ], + ]; + } + /** * @inheritdoc */ @@ -41,7 +79,7 @@ ], ]; } - + /** * @inheritdoc */ @@ -53,7 +91,7 @@ 'status' => Yii::t('order', 'Status'), ]; } - + /** * @return \yii\db\ActiveQuery */ @@ -61,7 +99,7 @@ { return $this->hasMany(Order::className(), [ 'payment_id' => 'id' ]); } - + /** * @return \yii\db\ActiveQuery */ @@ -69,7 +107,7 @@ { return $this->hasMany(PaymentLang::className(), [ 'payment_id' => 'id' ]); } - + /** * @return \yii\db\ActiveQuery */ diff --git a/views/basket/cart.php b/views/basket/cart.php index 6b53a5f..eb6a35f 100755 --- a/views/basket/cart.php +++ b/views/basket/cart.php @@ -1,5 +1,5 @@ - - -

-
+ + 'sub-title', + ] + ), + [ + '/basket/index', + ], + [ + 'class' => 'cart-item-link', + ] + ); +?> diff --git a/views/basket/modal_items.php b/views/basket/modal_items.php index 91dae96..0df3838 100755 --- a/views/basket/modal_items.php +++ b/views/basket/modal_items.php @@ -1,60 +1,10 @@ getData(); -?> -
-
-
-
- -
- render( - '@frontend/views/basket/basket_table', - [ - 'models' => $models, - 'basket' => $basket, - 'data' => $data, - ] - ); - ?> -
- 'basket-modal-form', - 'method' => 'POST', - 'action' => Url::to([ 'order/basket' ]), - ] - ); - echo Html::a( - \Yii::t('app', 'оформить заказ'), - [ - 'order/basket', - ], - [ - 'class' => 'btn_link_basket', - ] - ); - ?> - - -
-
-
-
-
diff --git a/web/js/artbox_basket.js b/web/js/artbox_basket.js index c5ffe70..d05d49d 100644 --- a/web/js/artbox_basket.js +++ b/web/js/artbox_basket.js @@ -1,6 +1,4 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -var $ = require("jquery"); +/// var ArtboxBasket = (function () { function ArtboxBasket(settings) { if (settings === void 0) { settings = {}; } @@ -58,7 +56,7 @@ var ArtboxBasket = (function () { }.bind(this)); }; ArtboxBasket.prototype.add = function (variant_id, count) { - $.post('/' + this.language + '/' + this._settings['url'] + '/add?variant_id=' + variant_id + '&count=' + count, function (data) { + return $.post('/' + this.language + '/' + this._settings['url'] + '/add?variant_id=' + variant_id + '&count=' + count, function (data) { this._items = data.basket; this.updateModal(data.modal, data.cart, true); }.bind(this), 'json').fail(function (xhr, status, error) { @@ -66,7 +64,7 @@ var ArtboxBasket = (function () { }); }; ArtboxBasket.prototype.set = function (variant_id, count) { - $.post('/' + this.language + '/' + this._settings['url'] + '/set?variant_id=' + variant_id + '&count=' + count, function (data) { + return $.post('/' + this.language + '/' + this._settings['url'] + '/set?variant_id=' + variant_id + '&count=' + count, function (data) { this._items = data.basket; this.updateModal(data.modal, data.cart, true); }.bind(this), 'json').fail(function (xhr, status, error) { @@ -74,7 +72,7 @@ var ArtboxBasket = (function () { }); }; ArtboxBasket.prototype.remove = function (variant_id) { - $.post('/' + this.language + '/' + this._settings['url'] + '/remove?variant_id=' + variant_id, function (data) { + return $.post('/' + this.language + '/' + this._settings['url'] + '/remove?variant_id=' + variant_id, function (data) { this._items = data.basket; this.updateModal(data.modal, data.cart, true); }.bind(this), 'json').fail(function (xhr, status, error) { diff --git a/web/js/artbox_basket.ts b/web/js/artbox_basket.ts index 13f821d..35e2b9a 100755 --- a/web/js/artbox_basket.ts +++ b/web/js/artbox_basket.ts @@ -1,5 +1,4 @@ -import * as $ from 'jquery'; - +/// class ArtboxBasket { private _items; private _language; @@ -52,8 +51,8 @@ class ArtboxBasket { }.bind(this)); } - public add(variant_id, count) { - $.post('/' + this.language + '/' + this._settings['url'] + '/add?variant_id=' + variant_id + '&count=' + count, function (data) { + public add(variant_id, count): JQueryPromise { + return $.post('/' + this.language + '/' + this._settings['url'] + '/add?variant_id=' + variant_id + '&count=' + count, function (data) { this._items = data.basket; this.updateModal(data.modal, data.cart, true); }.bind(this), 'json').fail(function (xhr, status, error) { @@ -61,8 +60,8 @@ class ArtboxBasket { }); } - public set(variant_id, count) { - $.post('/' + this.language + '/' + this._settings['url'] + '/set?variant_id=' + variant_id + '&count=' + count, function (data) { + public set(variant_id, count): JQueryPromise { + return $.post('/' + this.language + '/' + this._settings['url'] + '/set?variant_id=' + variant_id + '&count=' + count, function (data) { this._items = data.basket; this.updateModal(data.modal, data.cart, true); }.bind(this), 'json').fail(function (xhr, status, error) { @@ -70,8 +69,8 @@ class ArtboxBasket { }); } - public remove(variant_id) { - $.post('/' + this.language + '/' + this._settings['url'] + '/remove?variant_id=' + variant_id, function (data) { + public remove(variant_id): JQueryPromise { + return $.post('/' + this.language + '/' + this._settings['url'] + '/remove?variant_id=' + variant_id, function (data) { this._items = data.basket; this.updateModal(data.modal, data.cart, true); }.bind(this), 'json').fail(function (xhr, status, error) { -- libgit2 0.21.4