public static function getPage($id, $num) { $cat = Categories::find()->where(['id' => $id])->one(); $count = $cat->count_product; $realNum = $num + 1; $html = ''; //достаем все жалюзи текущей категории $blinds = BlindCatid::find()->where(['id_cat' => $id])->offset($num * $count)->limit($count)->orderBy('id_blind DESC')->all(); //получаем описание объекта жалюзи if (isset($blinds) && !empty($blinds)) { //start of page $html .= '<div class="page">'; if ($realNum > 1) { $html .= '<div class="title"> <span>Страница ' . $realNum . ' </span> <a href="#" class="hidepage">Скрыть</a> </div>'; } foreach ($blinds as $blind) { if (isset($blind)) { $blindObj = Blind::find()->where(['id' => $blind->id_blind])->one(); //получаем картинки для жалюзи $blindImgs = BlindImg::find()->where(['id_blind' => $blindObj->id])->orderBy('main DESC')->all(); } if (isset($blindObj) && !empty($blindObj)) { $html .= self::getItem($blindObj, $blindImgs); } } //end of page $html .= '</div>'; } return $html; }
/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = Blind::find(); $dataProvider = new ActiveDataProvider(['query' => $query]); $this->load($params); if (!$this->validate()) { // uncomment the following line if you do not want to return any records when validation fails // $query->where('0=1'); return $dataProvider; } $query->andFilterWhere(['id' => $this->id, 'status' => $this->status]); $query->andFilterWhere(['like', 'name', $this->name])->andFilterWhere(['like', 'description', $this->description]); return $dataProvider; }
public function actionGet_order() { $blind = Blind::find()->where(['id' => $_GET['blId']])->one(); $materials = \backend\modules\supplies\models\Supplies::find()->where(['id' => $_GET['mtId']])->one(); $telephone = $_GET['tel']; $order = new Orders(); $order->blind = (string) $blind->name; $order->materials = (string) $materials->code; $order->telephone = (string) $telephone; $order->dt_add = time(); $order->save(); echo $order->id; $email = Options::find()->where(['key' => 'email_to_prod'])->one(); mail($email->value, "Заказ с вашего сайта", "С вашего сайта заказали:<br>Номер заказа: {$blind->id}<br>Название жалюзи: {$blind->name}<br>Код материала: {$materials->code}<br>Телефон для связ: {$telephone}", "Content-type: text/html; charset=UTF-8\r\n"); }
public static function getBlind($id) { /*$html = '<div class="catalog_blocks">';*/ $blinds = BlindCatid::find()->where(['id_cat' => $id])->all(); $html = ''; foreach ($blinds as $bl) { $product = Blind::find()->where(['id' => $bl->id_blind])->one(); //Debag::prn($product); $html .= '<div class="product"> <a href="#">' . $product->name . '</a> <div class="info"> <span></span> <div class="hint"> ' . $product->description . ' </div> </div> </div>'; } /*$html .= '</div>';*/ return $html; }
/** * Updates an existing Blind model. * If update is successful, the browser will be redirected to the 'view' page. * @param integer $id * @return mixed */ public function actionUpdate($id) { $blind = Blind::find()->where(['id' => $id])->one(); $model = new BlindForm(); $model->name = $blind->name; $model->status = $blind->status; $model->description = $blind->description; $model->tab = $blind->tab; $cat = BlindCatid::find()->where(['id_blind' => $id])->all(); $blindMaterialHeader = BlindMaterials::find()->where(['id_blind' => $id])->all(); //Debag::prn($_POST); foreach ($cat as $c) { $arr_catid[$c->id_cat] = ['selected ' => 'selected']; } $media = Media::find()->orderBy('id DESC')->all(); $supples = BlindIdmaterials::find()->where(['id_blind' => $id])->all(); foreach ($supples as $supl) { $arr_supl[$supl->id_materials] = ['selected ' => 'selected']; } $materials = \backend\modules\supplies\models\Supplies::find()->all(); foreach ($materials as $v) { $arr_materials[$v->id] = $v->code; } $arr_cat = CategoryTree::getTreeSelect(0); unset($arr_cat[0]); $blImg = new BlindImg(); $imgages = $blImg->find()->where(['id_blind' => $id])->all(); $addMaterials = \common\classes\Supplies::getAddSupplies(); if ($model->load(Yii::$app->request->post()) && $model->validate()) { $blind->name = $model->name; $blind->status = $model->status; $blind->description = $model->description; $blind->tab = $model->tab; $blind->save(); $delBmt = new BlindMaterials(); $delBmt->deleteAll(['id_blind' => $blind->id]); if (isset($_POST['blindTitle'])) { foreach ($_POST['blindTitle'] as $bt) { $arrBt = explode('*', $bt); $bmt = new BlindMaterials(); $bmt->id_blind = $blind->id; $bmt->id_materials = $arrBt[0]; $bmt->title = $arrBt[1]; $bmt->save(); } } $cat = BlindCatid::deleteAll(['id_blind' => $blind->id]); foreach ($model->categories as $cat) { $blindCatId = new BlindCatid(); $blindCatId->id_blind = $blind->id; $blindCatId->id_cat = $cat; $blindCatId->save(); } $blindImg = new BlindImg(); $cat = $blindImg->deleteAll(['id_blind' => $blind->id]); if (!empty($_POST['blind_image'])) { foreach ($_POST['blind_image'] as $img) { $blindImg = new BlindImg(); $imgarr = explode('*', $img); $blindImg->id_blind = $blind->id; $blindImg->images = $imgarr[0]; $blindImg->main = $imgarr[1]; $blindImg->save(); } } $cat = BlindIdmaterials::deleteAll(['id_blind' => $blind->id]); if (!empty($model->materials)) { foreach ($model->materials as $mat) { $blindMat = new BlindIdmaterials(); $blindMat->id_blind = $blind->id; $blindMat->id_materials = $mat; $blindMat->save(); } } //Debag::prn($_POST['infoPage']); $zag = PageToBlind::find()->where(['id_blind' => $blind->id])->all(); foreach ($zag as $v) { PageBlinds::deleteAll(['id' => $v->id_pages]); } PageToBlind::deleteAll(['id_blind' => $blind->id]); if (isset($_POST['infoPage'])) { foreach ($_POST['infoPage'] as $v) { $input = explode('*', $v); $s = str_replace('_', ' ', $input[0]); $pb = PageBlinds::find()->where(['name' => $s])->one(); if (empty($pb->id)) { $pb = new PageBlinds(); $pb->name = $s; $pb->save(); } //$pb->name = $input[0]; //$pb->save(); unset($input[0]); $del = PageToBlind::deleteAll(['id_pages' => $pb->id]); $ptb = new PageToBlind(); $ptb->id_pages = $pb->id; $ptb->id_blind = $blind->id; $ptb->save(); $cat = PageItem::deleteAll(['id_page' => $pb->id]); foreach ($input as $in) { //Debag::prn($in); $pageItem = new PageItem(); $item = explode('_', $in); if ($item[1] == 'materials') { $pageItem->id_page = $pb->id; $pageItem->id_item = $item[0]; $pageItem->item_type = 'materials'; } else { $pageTitle = PageForTitle::find()->where(['title' => $item[0]])->one(); if (empty($pageTitle->id)) { $pageTitle = new PageForTitle(); $pageTitle->title = $item[0]; $pageTitle->save(); } /*$pageTitle = new PageForTitle(); $pageTitle->title = $item[0]; $pageTitle->save();*/ $pageItem->id_page = $pb->id; $pageItem->id_item = $pageTitle->id; $pageItem->item_type = 'zagolovok'; } $pageItem->id_blind = $blind->id; $pageItem->save(); } } } else { } return $this->redirect(['update', 'id' => $blind->id]); } else { return $this->render('update', ['model' => $model, 'categories' => $arr_cat, 'catselect' => $arr_catid, 'materials' => $arr_materials, 'materialselect' => $arr_supl, 'media' => $media, 'img' => $imgages, 'bmt' => $blindMaterialHeader, 'blind' => $blind, 'addMat' => $addMaterials]); } }
}, 'filter' => "<input id='colorId' type='hidden' name='SuppliesSearch[color]' value='" . $_GET['SuppliesSearch']['color'] . "'>" . $color], ['attribute' => 'price', 'format' => 'raw', 'value' => function ($model) { return Html::textInput('price_' . $model->id, $model->price, ['id' => 'price_' . $model->id, 'class' => 'priceInput', 'style' => 'width:120px;']); //return "<input type='text' value='$model->code' name='code'>"; }], ['class' => DataColumn::className(), 'header' => 'Прикреплен', 'format' => 'raw', 'value' => function ($model) { $pageItem = \common\models\PageItem::find()->where(['id_item' => $model->id, 'item_type' => 'materials'])->all(); foreach ($pageItem as $p) { $arr[] = $p->id_blind; } if (!empty($arr)) { $arr = array_unique($arr); $html = ''; $html .= '<div class="blindToSupliesOne" style="width: 200px">'; $k = 0; foreach ($arr as $p) { if ($p) { $title = \backend\modules\blind\models\Blind::find()->where(['id' => $p])->one(); if ($k == 2) { $html .= '</div><div class="blindToSuplies">'; } $html .= '<li>' . $title->name . '<a href="#" class="undock" id-mat="' . $model->id . '" id-page="' . $p . '"> -</a></li>'; $k++; } } $html .= '</div>'; if ($k > 2) { $html .= '<a href="#" class="allBlindToSuplies">Показать все</a>'; } return $html; } else { return ''; }