diff --git a/backend/controllers/TileController.php b/backend/controllers/TileController.php index 7234bf2..59a79cb 100644 --- a/backend/controllers/TileController.php +++ b/backend/controllers/TileController.php @@ -3,12 +3,29 @@ namespace backend\controllers; use common\models\Tile; +use common\models\TileSearch; +use Yii; use yii\web\Controller; use yii\web\NotFoundHttpException; class TileController extends Controller { /** + * Lists all Tile models. + * @return mixed + */ + public function actionIndex() + { + $searchModel = new TileSearch(); + $dataProvider = $searchModel->search(Yii::$app->request->queryParams); + + return $this->render('index', [ + 'searchModel' => $searchModel, + 'dataProvider' => $dataProvider, + ]); + } + + /** * Creates a new Tile model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed diff --git a/backend/views/layouts/menu_items.php b/backend/views/layouts/menu_items.php index bfd3080..b96ce22 100755 --- a/backend/views/layouts/menu_items.php +++ b/backend/views/layouts/menu_items.php @@ -111,6 +111,11 @@ 'icon' => 'sun-o', ], [ + 'label' => \Yii::t('core', 'Тайлы'), + 'url' => ['/tile/index'], + 'icon' => 'sun-o', + ], + [ 'label' => \Yii::t('core', 'Комментарии'), 'url' => ['/comment/index'], 'icon' => 'sun-o', diff --git a/backend/views/tile/_form.php b/backend/views/tile/_form.php new file mode 100755 index 0000000..dba1648 --- /dev/null +++ b/backend/views/tile/_form.php @@ -0,0 +1,60 @@ + + +
+ + + + $modelLangs, + 'formView' => '@backend/views/tile/_form_language', + 'form' => $form, + ] + ) ?> + + field($model, 'sort') + ->textInput() ?> + + + field($model, 'image_id') + ->widget( + ImageManagerInputWidget::className(), + [ + 'aspectRatio' => ( 16 / 9 ), + //set the aspect ratio + 'showPreview' => true, + //false to hide the preview + 'showDeletePickedImageConfirm' => false, + //on true show warning before detach image + ] + ) + ?> + + field($model, 'status') + ->checkbox() ?> + +
+ isNewRecord ? Yii::t('app', 'Create') : Yii::t('app', 'Update'), + [ 'class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary' ] + ) ?> +
+ + + +
diff --git a/backend/views/tile/_form_language.php b/backend/views/tile/_form_language.php new file mode 100755 index 0000000..8ef6997 --- /dev/null +++ b/backend/views/tile/_form_language.php @@ -0,0 +1,23 @@ +field($model_lang, '[' . $language->id . ']title') + ->textInput(['maxlength' => true]); + +echo $attributeField; +$attributeField2 = $form->field($model_lang, '[' . $language->id . ']link') + ->textInput(['maxlength' => true]); + +echo $attributeField2; + +?> \ No newline at end of file diff --git a/backend/views/tile/_search.php b/backend/views/tile/_search.php new file mode 100755 index 0000000..988ab09 --- /dev/null +++ b/backend/views/tile/_search.php @@ -0,0 +1,35 @@ + + + diff --git a/backend/views/tile/create.php b/backend/views/tile/create.php new file mode 100755 index 0000000..120ebb7 --- /dev/null +++ b/backend/views/tile/create.php @@ -0,0 +1,25 @@ +title = Yii::t('app', 'Create Tile'); +$this->params['breadcrumbs'][] = ['label' => Yii::t('app', 'Tiles'), 'url' => ['index']]; +$this->params['breadcrumbs'][] = $this->title; +?> +
+ +

title) ?>

+ + render('_form', [ + 'model' => $model, + 'modelLangs' => $modelLangs, + //'sliders' => $sliders, + ]) ?> + +
diff --git a/backend/views/tile/index.php b/backend/views/tile/index.php new file mode 100755 index 0000000..d0b9ef5 --- /dev/null +++ b/backend/views/tile/index.php @@ -0,0 +1,35 @@ +title = Yii::t('app', 'Tiles'); +$this->params['breadcrumbs'][] = $this->title; +?> +
+ +

title) ?>

+ render('_search', ['model' => $searchModel]); ?> + +

+ 'btn btn-success']) ?> +

+ $dataProvider, + 'filterModel' => $searchModel, + 'columns' => [ + ['class' => 'yii\grid\SerialColumn'], + + 'id', + 'status:boolean', + 'sort', + 'image_id', + + ['class' => 'yii\grid\ActionColumn'], + ], + ]); ?> +
diff --git a/backend/views/tile/update.php b/backend/views/tile/update.php new file mode 100755 index 0000000..37a781c --- /dev/null +++ b/backend/views/tile/update.php @@ -0,0 +1,29 @@ +title = Yii::t('app', 'Update {modelClass}: ', [ + 'modelClass' => 'Objectkb', +]) . $model->id; +$this->params['breadcrumbs'][] = ['label' => Yii::t('app', 'Objectkbs'), 'url' => ['index']]; +$this->params['breadcrumbs'][] = ['label' => $model->id, 'url' => ['view', 'id' => $model->id]]; +$this->params['breadcrumbs'][] = Yii::t('app', 'Update'); +?> +
+ +

title) ?>

+ + render('_form', [ + 'model' => $model, + 'modelLangs' => $modelLangs, + 'sliders' => $sliders, + ]) ?> + +
diff --git a/backend/views/tile/view.php b/backend/views/tile/view.php new file mode 100755 index 0000000..991d9e6 --- /dev/null +++ b/backend/views/tile/view.php @@ -0,0 +1,39 @@ +title = $model->id; +$this->params['breadcrumbs'][] = ['label' => Yii::t('app', 'Objectkbs'), 'url' => ['index']]; +$this->params['breadcrumbs'][] = $this->title; +?> +
+ +

title) ?>

+ +

+ $model->id], ['class' => 'btn btn-primary']) ?> + $model->id], [ + 'class' => 'btn btn-danger', + 'data' => [ + 'confirm' => Yii::t('app', 'Are you sure you want to delete this item?'), + 'method' => 'post', + ], + ]) ?> +

+ + $model, + 'attributes' => [ + 'id', + 'slider_id', + 'status:boolean', + 'sort', + 'image_mini_id', + ], + ]) ?> + +
diff --git a/common/models/Tile.php b/common/models/Tile.php index 52d2d3a..ef5db45 100644 --- a/common/models/Tile.php +++ b/common/models/Tile.php @@ -28,12 +28,12 @@ class Tile extends ActiveRecord public function rules() { return [ - [ - [ - 'image', - ], - 'required', - ], +// [ +// [ +// 'image', +// ], +// 'required', +// ], [ [ 'status', diff --git a/common/models/TileSearch.php b/common/models/TileSearch.php new file mode 100755 index 0000000..95cdcbd --- /dev/null +++ b/common/models/TileSearch.php @@ -0,0 +1,75 @@ + $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; + } + + // grid filtering conditions + $query->andFilterWhere( + [ + 'id' => $this->id, + 'status' => $this->status, + 'sort' => $this->sort, + 'image_id' => $this->image_id, + ] + ); + + return $dataProvider; + } +} diff --git a/frontend/controllers/SiteController.php b/frontend/controllers/SiteController.php index 2268d76..8165363 100755 --- a/frontend/controllers/SiteController.php +++ b/frontend/controllers/SiteController.php @@ -6,6 +6,7 @@ use common\models\Feedback; use common\models\Settings; use common\models\Slider; + use common\models\Tile; use Yii; use yii\filters\VerbFilter; use yii\swiftmailer\Mailer; @@ -55,10 +56,10 @@ public function actionIndex() { - $slider = Slider::find() - ->with("slides.lang.image") - ->where([ 'on_home_page' => true ]) - ->one(); +// $slider = Slider::find() +// ->with("slides.lang.image") +// ->where([ 'on_home_page' => true ]) +// ->one(); // $objects = Objectkb::find() // ->with('lang.alias') @@ -74,6 +75,11 @@ // ) // ->orderBy('id') // ->all(); + $tiles = Tile::find() + ->with(['lang', 'image']) + ->limit(4) + ->all(); + $forCompanies = Objectkb::find() ->with('lang.alias') ->where( @@ -99,10 +105,11 @@ return $this->render( 'index', [ - 'slider' => $slider, + //'slider' => $slider, //'objects' => $objects, 'forCompanies'=>$forCompanies, - 'forPrivate'=>$forPrivate + 'forPrivate'=>$forPrivate, + 'tiles'=>$tiles, ] ); } diff --git a/frontend/views/site/index.php b/frontend/views/site/index.php index c981ecd..ca9d730 100755 --- a/frontend/views/site/index.php +++ b/frontend/views/site/index.php @@ -65,44 +65,24 @@ +
+
-
-
- -
-
- -
- +
+
@@ -133,7 +113,7 @@ - + -- libgit2 0.21.4
5,0 кВт Номінальна потужність мережевого інвертораНомінальна потужність мережевого інвертора
7,4 кВт