Exemplo n.º 1
0
 public function actionDeleteproduct($id)
 {
     $model = BasketItems::model()->findByPk($id);
     $modelOrder = $this->loadModel($model->basket_order_id);
     $model->delete();
     //Проверяем есть ли еще товары в заказе - если нет, удаляем заказ
     $model = BasketItems::model()->find('basket_order_id=' . $modelOrder->id);
     if (!$model) {
         $modelOrder->delete();
         $this->redirect('/admin/basket/basket/orders');
     }
     $this->redirect('/admin/basket/basket/update?id=' . $model->id);
 }
Exemplo n.º 2
0
 public function sendEmailAdmin($id)
 {
     $email = "*****@*****.**";
     $subject = "Новый заказ товаров";
     $model = $this->loadModel((int) $id);
     $bayerName = User::model()->findByPk((int) Yii::app()->user->id);
     $body = "<b>Заказ товара покупателем: " . (!empty($bayerName->first_name) ? $bayerName->first_name : 'не указан') . "</b><BR>";
     $body_address = 'Адрес доставки заказа: ' . $model->address . '<BR>
             Телефон: ' . $model->phone . '<BR>
             Примечания: ' . $model->comments . '<BR>
             ';
     $body .= '<table style="border: 1px solid #000000">';
     $body .= '<thead><tr><th>Название</th><th>Ссылка на товар</th><th>Заказаное количество</th></tr></thead>';
     $body .= '<tbody>';
     foreach (BasketItems::model()->findAll('basket_order_id = ' . $model->id) as $data) {
         $productModel = Yii::app()->db->createCommand()->select('name')->from('{{' . $data->module . '_elements}}')->where('id=' . (int) $data->item)->queryRow();
         $body .= '
             <tr>
                 <td>' . $productModel['name'] . '</td>
                 <td>' . SITE_NAME_FULL . '/' . $data->url . '</td>
                 <td>' . $data->quantity . '</td>
             </tr>
             ';
     }
     $body .= '
         </tbody>
         </table>';
     $body .= '<b>Указаные при заказе данные о доставки товара:</b><BR>';
     $body .= $body_address;
     $body .= '<b>Информация о пользователе:</b><BR>';
     $body .= "\n                            Покупатель: " . (!empty($bayerName->first_name) ? $bayerName->first_name : 'не указан') . "<BR>\n                            Организация: " . (!empty($bayerName->organization) ? $bayerName->organization : 'не указана') . "<BR>\n                            Юр. адрес: " . (!empty($bayerName->ur_addres) ? $bayerName->ur_addres : 'не указан') . "<BR>\n                            Физ. адрес: " . (!empty($bayerName->fiz_addres) ? $bayerName->fiz_addres : 'не указан') . "<BR>\n                            ИНН: " . (!empty($bayerName->inn) ? $bayerName->inn : 'не указан') . "<BR>\n                            КПП: " . (!empty($bayerName->kpp) ? $bayerName->kpp : 'не указан') . "<BR>\n                            ОКПО: " . (!empty($bayerName->okpo) ? $bayerName->okpo : 'не указан') . "<BR>\n                            Email: " . $bayerName->email . "<BR>\n                            ";
     Yii::app()->mailer->send(array('email' => $email, 'subject' => $subject, 'body' => $body));
     return true;
 }
Exemplo n.º 3
0
 public function getProductInOrder($id)
 {
     $result = array();
     $i = 0;
     foreach (BasketItems::model()->findAll('basket_order_id=' . (int) $id) as $data) {
         $result[$i]['module'] = $data->module;
         $result[$i]['url'] = $data->url;
         $result[$i]['item'] = $data->item;
         $result[$i]['quantity'] = $data->quantity;
         $result[$i]['comments'] = $data->comments;
         ++$i;
     }
     return $result;
 }
Exemplo n.º 4
0
 public function actionIndex()
 {
     //echo 123; exit;
     //Сравнение товаров
     if (isset($_GET['e']) && isset($_GET['m']) && $_GET['m'] == '47' && isset($_GET['u'])) {
         //Пишу в ссесию
         if (empty(Yii::app()->session['compare_selection'])) {
             Yii::app()->session->add('compare_selection', array());
         }
         $compare_selection = Yii::app()->session['compare_selection'];
         $add_compare_selection = array($_GET);
         Yii::app()->session->add('compare_selection', array_merge($compare_selection, $add_compare_selection));
     }
     //Удаление из сравнения товаров
     if (isset($_GET['id']) && isset($_GET['type']) && $_GET['type'] == "delete") {
         //Пишу в ссесию
         if (empty(Yii::app()->session['compare_selection'])) {
             Yii::app()->session->add('compare_selection', array());
         }
         $compare_selection = Yii::app()->session['compare_selection'];
         $add_compare_selection = array();
         if (!empty($compare_selection)) {
             foreach ($compare_selection as $key => $value) {
                 if ($value['e'] == (int) $_GET['id']) {
                     continue;
                 }
                 $add_compare_selection[] = $value;
             }
         }
         Yii::app()->session->add('compare_selection', $add_compare_selection);
         echo 'ok';
     }
     //Количество не оформленых товаров в корзине
     if (isset($_GET['basket']) && $_GET['basket'] == "getcount") {
         $result = 0;
         $cookies = Yii::app()->request->cookies;
         if (!empty($cookies['basket']) && ($basket = $cookies['basket']->value)) {
             $basket = unserialize($basket);
             foreach ($basket as $key => $value) {
                 $result = (int) $result + (int) $value['quantity'];
             }
         }
         /*
         if (!Yii::app()->user->isGuest){
             $basketCount = 0;
             $arr_id = null;
             foreach( Yii::app()->db->createCommand()
                 ->select('id')
                 ->from('{{basket_order}}')
                 ->where('status=0 AND user_id='.(int)Yii::app()->user->id)
                 ->queryAll() as $val){
                 $arr_id[] = $val['id'];
             }
             if (!empty($arr_id)){
                 $arr_id = implode(",", $arr_id);
                 $basketCount = Yii::app()->db->createCommand()
                     ->select('sum(quantity) as count')
                     ->from('{{basket_items}}')
                     ->where('basket_order_id in ('.$arr_id.')')
                     ->queryRow();
                 $result = (int)((current($basketCount)));
             }
         }
         */
         echo $result;
     }
     //Добавление товара в корзину
     if (isset($_POST['m']) && $_POST['m'] == "31" && isset($_POST['path']) && isset($_POST['module']) && isset($_POST['parent_id'])) {
         $quantity = 1;
         $k = $_POST['path'];
         //Пишем в куки заказаные товары
         $cookies = Yii::app()->request->cookies;
         $basket = array();
         //Получаем заказаные ранее товары из куки
         if (isset($cookies['basket'])) {
             $basket = $cookies['basket']->value;
             $basket = unserialize($basket);
         }
         //Если есть заказаный ранее такой товар - увеличиваем кол-во на 1
         $basket[$k]['quantity'] = isset($basket[$k]) ? (int) $basket[$k]['quantity'] + $quantity : $quantity;
         $basket[$k]['module'] = $_POST['module'];
         $basket[$k]['url'] = $_POST['path'];
         $basket[$k]['item'] = $_POST['parent_id'];
         $basket[$k]['price'] = BasketItems::model()->returnPrice((int) $_POST['parent_id'], $basket[$k]['quantity']);
         $basket = new CHttpCookie('basket', serialize($basket));
         $cookies['basket'] = $basket;
         echo 'ok';
     }
     Yii::app()->end();
 }