/** * Creates a new AnItems model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new AnItems(); $NeccFunc = new NeccFunctions(); // вибираємо головних батьків $parentCats = AnCats::find()->roots()->all(); $list = $NeccFunc->getCorrectList($parentCats); // вибираємо регіони $regionsQuery = AnRegions::find()->asArray()->all(); $regions = array(); // формую правильний масив для select форми // хоча потрібно було б використати ArrayHelper::map($array, 'key', 'key') foreach ($regionsQuery as $region) { $regions[$region['id']] = $region['name']; } if ($model->load(Yii::$app->request->post())) { $model->created_at = DATE('Y-m-d H:i:s'); $model->status = 0; $model->local = Yii::$app->language; $model->save(); return $this->redirect('/announcement/anitems'); } else { return $this->render('create', ['model' => $model, 'regions' => $regions, 'list' => $list]); } }
public function init() { parent::init(); $NeccFunc = new NeccFunctions(); $perPage = $this->perPage ? $this->perPage : 10; // вибираємо головних батьків $parentCats = AnCats::find()->where(['local' => Yii::$app->language])->roots()->all(); $this->categories = $NeccFunc->getCorrectList($parentCats); foreach ($parentCats as $cats) { $this->categories[$cats->id] = $cats->name; } // виборка категорій та регіонів //$this->categories = AnCats::find()->addOrderBy('tree')->addOrderBy('lft')->all(); $parentRegs = AnRegions::find()->roots()->all(); $this->regions = $NeccFunc->getCorrectList($parentRegs); //$this->regions = AnRegions::find()->addOrderBy('tree')->addOrderBy('lft')->all(); // пошукові запроси, якщо такі є $this->searchModel = new AnItemsSearch(); $this->dataProvider = $this->searchModel->search(Yii::$app->request->queryParams, $perPage); $this->registerTranslations(); }
<div class="col-sm-12 an-items-form"> <?php $form = ActiveForm::begin(); ?> <div class="row"> <div class="col-md-6"> <?php echo $form->field($model, 'title')->textInput(['maxlength' => 500]); ?> <?php echo $form->field($model, 'text')->widget(Widget::className(), ['settings' => ['lang' => \vov\announcement\common\helpers\NeccFunctions::getShortLangFromLanguage(), 'minHeight' => 200, 'buttons' => ['bold', 'italic', 'unorderedlist', 'orderedlist']]]); ?> <?php echo $form->field($model, 'verifyCode')->widget(Captcha::className(), ['captchaAction' => '/announcement/anitems/captcha', 'options' => ['style' => 'width:30%', 'class' => 'form-control'], 'template' => '<div class="row"><div class="col-lg-3">{image}</div><div class="col-lg-9"><div class="field">{input}</div></div></div>']); ?> </div> <div class="col-md-6"> <div class="row"> <div class="col-md-6"> <?php echo $form->field($model, 'cat_id')->dropDownList($list, ['prompt' => Yii::t('announcement', '--Select--')]); ?> </div>
/* @var $searchModel vov\announcement\backend\models\AnCatsSearch */ /* @var $dataProvider yii\data\ActiveDataProvider */ $this->title = 'An Cats'; $this->params['breadcrumbs'][] = $this->title; ?> <div class="an-cats-index"> <h1><?php echo Html::encode($this->title); ?> </h1> <?php // echo $this->render('_search', ['model' => $searchModel]); ?> <p> <?php echo Html::a('Create An Cats', ['create'], ['class' => 'btn btn-success']); ?> </p> <?php echo GridView::widget(['dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'columns' => [['class' => 'yii\\grid\\SerialColumn'], 'name', ['label' => 'parentCat', 'attribute' => 'parentCat', 'value' => function ($searchModel) { $cat = \vov\announcement\backend\models\AnCats::findOne(['id' => $searchModel->id]); $parentCat = $cat->parents(1)->one(); return $parentCat->name; }, 'filter' => yii\Helpers\ArrayHelper::map($searchModel->getParents(), 'id', 'name')], ['label' => 'local', 'attribute' => 'local', 'value' => 'local', 'filter' => \vov\announcement\common\helpers\NeccFunctions::getLanguages()], ['class' => 'yii\\grid\\ActionColumn']]]); ?> </div>
<div class="an-cats-form"> <?php $form = ActiveForm::begin(); ?> <?php echo $form->field($model, 'parentCat')->dropDownList($cats); ?> <?php echo $form->field($model, 'name')->textInput(['maxlength' => 255]); ?> <?php echo $form->field($model, 'local')->dropDownList(\vov\announcement\common\helpers\NeccFunctions::getLanguages()); ?> <div class="form-group"> <?php echo Html::submitButton($model->isNewRecord ? 'Create' : 'Update', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']); ?> </div> <?php ActiveForm::end(); ?> </div>