Commit 7c3211cc3b8c75ef62fe2032e3f1620e2ffd3de4
1 parent
3fb5ce0c
big commti
Showing
2 changed files
with
19 additions
and
1 deletions
Show diff stats
frontend/controllers/BasketController.php
@@ -76,11 +76,15 @@ | @@ -76,11 +76,15 @@ | ||
76 | */ | 76 | */ |
77 | public function getModal($basket): string | 77 | public function getModal($basket): string |
78 | { | 78 | { |
79 | + | ||
80 | + \Yii::$app->getAssetManager()->bundles['yii\web\JqueryAsset']['js'] =[]; | ||
81 | + | ||
82 | + | ||
79 | $output = ''; | 83 | $output = ''; |
80 | $data = $basket->getData(); | 84 | $data = $basket->getData(); |
81 | $models = $basket->findModels(array_keys($data)); | 85 | $models = $basket->findModels(array_keys($data)); |
82 | if(!empty( $models )) { | 86 | if(!empty( $models )) { |
83 | - $output = $this->renderPartial('modal_items', [ | 87 | + $output = $this->renderAjax('modal_items', [ |
84 | 'models' => $models, | 88 | 'models' => $models, |
85 | 'basket' => $basket, | 89 | 'basket' => $basket, |
86 | ]); | 90 | ]); |
frontend/controllers/OrderController.php
@@ -174,6 +174,7 @@ | @@ -174,6 +174,7 @@ | ||
174 | 174 | ||
175 | public function actionQuickBasket() | 175 | public function actionQuickBasket() |
176 | { | 176 | { |
177 | + | ||
177 | $response = \Yii::$app->response; | 178 | $response = \Yii::$app->response; |
178 | $request = \Yii::$app->request; | 179 | $request = \Yii::$app->request; |
179 | $response->format = $response::FORMAT_JSON; | 180 | $response->format = $response::FORMAT_JSON; |
@@ -181,11 +182,16 @@ | @@ -181,11 +182,16 @@ | ||
181 | * @var array $data | 182 | * @var array $data |
182 | */ | 183 | */ |
183 | $data = \Yii::$app->basket->getData(); | 184 | $data = \Yii::$app->basket->getData(); |
185 | + | ||
184 | $orders = new Orders([ | 186 | $orders = new Orders([ |
185 | 'scenario' => Orders::SCENARIO_QUICK, | 187 | 'scenario' => Orders::SCENARIO_QUICK, |
186 | 'name' => 'Покупка в 1 клик', | 188 | 'name' => 'Покупка в 1 клик', |
187 | ]); | 189 | ]); |
190 | + | ||
191 | + | ||
192 | + | ||
188 | if(!empty( $data )) { | 193 | if(!empty( $data )) { |
194 | + | ||
189 | /** | 195 | /** |
190 | * @var ProductVariant[] $product_variants | 196 | * @var ProductVariant[] $product_variants |
191 | * @var OrdersProducts[] $order_products | 197 | * @var OrdersProducts[] $order_products |
@@ -193,6 +199,7 @@ | @@ -193,6 +199,7 @@ | ||
193 | $product_variants = []; | 199 | $product_variants = []; |
194 | $order_products = []; | 200 | $order_products = []; |
195 | foreach($data as $product_variant_id => $item) { | 201 | foreach($data as $product_variant_id => $item) { |
202 | + | ||
196 | $product_variant = ProductVariant::findOne($product_variant_id); | 203 | $product_variant = ProductVariant::findOne($product_variant_id); |
197 | if(!empty($product_variant) && $product_variant->price > 0) { | 204 | if(!empty($product_variant) && $product_variant->price > 0) { |
198 | $product_variants[$product_variant_id] = $product_variant; | 205 | $product_variants[$product_variant_id] = $product_variant; |
@@ -207,10 +214,16 @@ | @@ -207,10 +214,16 @@ | ||
207 | ]); | 214 | ]); |
208 | } | 215 | } |
209 | } | 216 | } |
217 | + | ||
210 | } else { | 218 | } else { |
219 | + | ||
211 | throw new InvalidParamException('Не указан товар'); | 220 | throw new InvalidParamException('Не указан товар'); |
212 | } | 221 | } |
222 | + | ||
223 | + | ||
224 | + | ||
213 | if(!empty( $order_products ) && $orders->load($request->post()) && $orders->save()) { | 225 | if(!empty( $order_products ) && $orders->load($request->post()) && $orders->save()) { |
226 | + | ||
214 | foreach($order_products as $order_product) { | 227 | foreach($order_products as $order_product) { |
215 | $order_product->order_id = $orders->id; | 228 | $order_product->order_id = $orders->id; |
216 | $order_product->save(); | 229 | $order_product->save(); |
@@ -220,6 +233,7 @@ | @@ -220,6 +233,7 @@ | ||
220 | 'result' => 'Спасибо за заказ! Наши менеджеры свяжутся с Вами в ближайшее время.', | 233 | 'result' => 'Спасибо за заказ! Наши менеджеры свяжутся с Вами в ближайшее время.', |
221 | ]; | 234 | ]; |
222 | } else { | 235 | } else { |
236 | + | ||
223 | throw new InvalidConfigException('Товар не найден или не удалось загрузить данные о покупателе.'); | 237 | throw new InvalidConfigException('Товар не найден или не удалось загрузить данные о покупателе.'); |
224 | } | 238 | } |
225 | } | 239 | } |