deleteBasketMod($_GET['deleteID']); return Yii::$app->response->redirect(['basket/index']); } if(isset($_POST['update']) && isset($_POST['ProductVariant'])){ foreach ($_POST['ProductVariant'] as $index=>$row) { $modelOrder->updateBasket($row); } }elseif(isset($_POST['ProductVariant'])){ // die(print_r($_POST)); $body = ''; foreach ($_POST['ProductVariant'] as $index=>$row) { $body .= $row['product_name'].' '.$row['name'].' Кол:'.$row['count'].' Цена:'.$row['sum_cost']; $body .= "\n\r"; } $body .= "\n\r"; if ($modelOrder->load(Yii::$app->request->post()) && $modelOrder->save()) { foreach ($_POST['ProductVariant'] as $index=>$row) { $modelOrdersProducts = new OrdersProducts(); $mod_id = $row['id']; unset($row['id']); $data['OrdersProducts'] = $row; $data['OrdersProducts']['mod_id'] = $mod_id; $data['OrdersProducts']['order_id'] = $modelOrder->id; $modelOrdersProducts->load($data); $modelOrdersProducts->save(); } if(!Yii::$app->user->id && !empty($modelOrder->email)){ $modelUser = new Customer(); $modelUser->role = 'person'; $modelUser->username = $modelOrder->email; $modelUser->name = $modelOrder->name; $modelUser->phone = $modelOrder->phone; $modelUser->password = Yii::$app->getSecurity()->generateRandomString(10); $modelUser->group_id = 2; $modelUser->save(); } $modelOrder->clearBasket(); return Yii::$app->response->redirect(['basket/success']); } } $basket_mods = $modelOrder->getBasketMods(); if(!empty(Yii::$app->user->id)){ $user = Customer::findOne(Yii::$app->user->id); $modelOrder->email = $user->username; $modelOrder->phone = $user->phone; $modelOrder->name = $user->name; } return $this->render('index', [ 'modelMod'=>$modelMod, 'basket_mods'=>$basket_mods, 'modelOrder'=>$modelOrder, ]); } public function actionItems(){ $modelMod = new Orders; if(!empty($_GET['deleteID'])){ $modelMod->deleteBasketMod($_GET['deleteID']); } if(isset($_POST['ProductVariant'])){ foreach ($_POST['ProductVariant'] as $index=>$row) { $modelMod->updateBasket($row); } } $basket_mods = $modelMod->getBasketMods(); return $this->renderAjax('ajax_items', [ 'modelMod'=>$modelMod, 'basket_mods'=>$basket_mods, ]); } public function actionInfo() { $modelMod = new Orders(); $info = $modelMod->rowBasket(); return $this->renderAjax('ajax_info', [ 'info'=>$info, ]); } public function actionAdd(){ $modelOrders = new Orders(); if(isset($_GET['mod_id'],$_GET['count']) && $_GET['mod_id']>0 && $_GET['count']>0){ $modelOrders->addBasket($_GET['mod_id'],$_GET['count']); } Yii::$app->end(); } public function actionSuccess(){ return $this->render('success'); } }