public function actionGetarendatypes($id) { $result = ArendaTypesForCats::find()->select(["arenda_types_for_cats.*", "images_for_arenda_types.url", "images_for_arenda_types.url_black"])->leftJoin('images_for_arenda_types', 'arenda_types_for_cats.arenda_type_id=images_for_arenda_types.arenda_type_id')->where(['cat_id' => $id])->asArray()->all(); while (empty($result)) { $cat = ModArendaTree::findOne(['id' => $id]); if ($cat->parent_id != 0) { $result = ArendaTypesForCats::find()->select(["arenda_types_for_cats.*", "images_for_arenda_types.*"])->leftJoin('images_for_arenda_types', 'arenda_types_for_cats.arenda_type_id=images_for_arenda_types.arenda_type_id')->where(['cat_id' => $cat->parent_id])->asArray()->all(); $id = $cat->parent_id; } else { return 'none'; } } $options = ''; foreach ($result as $key => $value) { $result2 = ArendaTypes::findOne(['id' => $value['arenda_type_id']]); $options .= ' <div class="col-md-2 arenda_type_col"> <label> <input type="checkbox" value="' . $result2->id . '" name="arenda_type"> <span class="arenda_type_img"> <img class="img_blue" src="/images/arenda_types_images/' . $value['arenda_type_id'] . '/' . $value['url'] . '"> <img class="img_black" style="display:none;" src="/images/arenda_types_images/' . $value['arenda_type_id'] . '/' . $value['url_black'] . '"> </span> </label> <span class="arenda_type_title">' . $result2->name . '</span> </div>'; } return $options; }
public function actionViewarendatype($id) { @session_start(); $_SESSION['menu'] = 4; if (Yii::$app->request->post()) { ArendaTypesForCats::deleteAll(['arenda_type_id' => $id]); if (Yii::$app->request->post('delete_arenda_type')) { $delete_arenda_type = ArendaTypes::findOne(['id' => key(Yii::$app->request->post('delete_arenda_type'))]); if ($delete_arenda_type->delete()) { return $this->redirect('arendatypes'); } } else { if (Yii::$app->request->post('cats')) { $arenda_types = Yii::$app->request->post('cats'); foreach ($arenda_types as $key => $value) { $model_d_t = new ArendaTypesForCats(); $model_d_t->arenda_type_id = $id; $model_d_t->cat_id = $key; $model_d_t->save(); } } } } $model = new ArendaTypes(); $arenda_type = $model->findOne(['id' => $id]); //Получаем активные категории $active_cats = ArendaTypesForCats::find()->where(['arenda_type_id' => $id])->asArray()->all(); //получаем категории и подкатегории $cats_model = new ModArendaTree(); $cats = $cats_model->view_cat_for_characters($cats_model->get_cat(), 0, $active_cats); return $this->render('view_arenda_type', ['model' => $arenda_type, 'tree' => $cats]); }