diff --git a/Module.php b/Module.php
index d38f0e9..7f9bce1 100755
--- a/Module.php
+++ b/Module.php
@@ -1,6 +1,6 @@
+
+
diff --git a/views/banner/_form_language.php b/views/banner/_form_language.php
new file mode 100755
index 0000000..966481a
--- /dev/null
+++ b/views/banner/_form_language.php
@@ -0,0 +1,34 @@
+
+= $form->field($model_lang, '[' . $language->id . ']title')
+ ->textInput([ 'maxlength' => true ]); ?>
+= $form->field($model_lang, '[' . $language->id . ']alt')
+ ->textInput([ 'maxlength' => true ]); ?>
+
+= $form->field($model_lang, '['.$language->id.']image')->widget(\kartik\file\FileInput::className(), [
+ 'model' => $model_lang,
+ 'attribute' => 'image',
+ 'options' => [
+ 'accept' => 'image/*',
+ 'multiple' => false
+ ],
+ 'pluginOptions' => [
+ 'allowedFileExtensions' => ['jpg','gif','png'],
+ 'initialPreview' => $model_lang->imageUrl ? \common\components\artboximage\ArtboxImageHelper::getImage($model_lang->imageUrl, 'slider') : '',
+ 'showRemove' => false,
+ 'overwriteInitial' => true,
+ 'showUpload' => false,
+ 'showClose' => false,
+ ],
+]); ?>
\ No newline at end of file
diff --git a/views/banner/create.php b/views/banner/create.php
new file mode 100755
index 0000000..d42053b
--- /dev/null
+++ b/views/banner/create.php
@@ -0,0 +1,30 @@
+title = Yii::t('app', 'Create Banner');
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => Yii::t('app', 'Banners'),
+ 'url' => [ 'index' ],
+ ];
+ $this->params[ 'breadcrumbs' ][] = $this->title;
+?>
+
+
+
= Html::encode($this->title) ?>
+
+ = $this->render('_form', [
+ 'model' => $model,
+ 'modelLangs' => $modelLangs,
+ ]) ?>
+
+
diff --git a/views/banner/index.php b/views/banner/index.php
new file mode 100755
index 0000000..43c66bb
--- /dev/null
+++ b/views/banner/index.php
@@ -0,0 +1,57 @@
+title = Yii::t('app', 'Banners');
+ $this->params[ 'breadcrumbs' ][] = $this->title;
+?>
+
+
+
= Html::encode($this->title) ?>
+
+
+ = Html::a(Yii::t('app', 'Create Banner'), [ 'create' ], [ 'class' => 'btn btn-success' ]) ?>
+
+ = GridView::widget([
+ 'dataProvider' => $dataProvider,
+ 'filterModel' => $searchModel,
+ 'columns' => [
+ 'id',
+ [
+ 'attribute' => 'url',
+ 'content' => function($model) {
+ /**
+ * @var Banner $model
+ */
+ return Html::a($model->url, \Yii::$app->urlManagerFrontend->createUrl($model->url));
+ },
+ ],
+ [
+ 'attribute' => 'title',
+ 'value' => 'lang.title',
+ ],
+ 'lang.imageUrl:image',
+ [
+ 'attribute' => 'status',
+ 'value' => function($model) {
+ /**
+ * @var Banner $model
+ */
+ return ( !$model->status ) ? \Yii::t('app', 'Скрыто') : \Yii::t('app', 'Показать');
+ },
+ 'filter' => [
+ 0 => \Yii::t('app', 'Скрыто'),
+ 1 => \Yii::t('app', 'Показать'),
+ ],
+ ],
+ [ 'class' => 'yii\grid\ActionColumn' ],
+ ],
+ ]); ?>
+
diff --git a/views/banner/update.php b/views/banner/update.php
new file mode 100755
index 0000000..81ccfc1
--- /dev/null
+++ b/views/banner/update.php
@@ -0,0 +1,39 @@
+title = Yii::t('app', 'Update {modelClass}: ', [
+ 'modelClass' => 'Banner',
+ ]) . $model->id;
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => Yii::t('app', 'Banners'),
+ 'url' => [ 'index' ],
+ ];
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => $model->id,
+ 'url' => [
+ 'view',
+ 'id' => $model->id,
+ ],
+ ];
+ $this->params[ 'breadcrumbs' ][] = Yii::t('app', 'Update');
+?>
+
+
+
= Html::encode($this->title) ?>
+
+ = $this->render('_form', [
+ 'model' => $model,
+ 'modelLangs' => $modelLangs,
+ ]) ?>
+
+
diff --git a/views/banner/view.php b/views/banner/view.php
new file mode 100755
index 0000000..64e1bb5
--- /dev/null
+++ b/views/banner/view.php
@@ -0,0 +1,56 @@
+title = $model->lang->title;
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => Yii::t('app', 'Banners'),
+ 'url' => [ 'index' ],
+ ];
+ $this->params[ 'breadcrumbs' ][] = $this->title;
+?>
+
+
+
= Html::encode($this->title) ?>
+
+
+ = Html::a(Yii::t('app', 'Update'), [
+ 'update',
+ 'id' => $model->id,
+ ], [ 'class' => 'btn btn-primary' ]) ?>
+ = Html::a(Yii::t('app', 'Delete'), [
+ 'delete',
+ 'id' => $model->id,
+ ], [
+ 'class' => 'btn btn-danger',
+ 'data' => [
+ 'confirm' => Yii::t('app', 'Are you sure you want to delete this item?'),
+ 'method' => 'post',
+ ],
+ ]) ?>
+
+
+ = DetailView::widget([
+ 'model' => $model,
+ 'attributes' => [
+ 'id',
+ [
+ 'attribute' => 'url',
+ 'value' => Html::a($model->url, \Yii::$app->urlManagerFrontend->createUrl($model->url)),
+ 'format' => 'html',
+ ],
+ 'lang.title',
+ 'lang.imageUrl:image',
+ [
+ 'attribute' => 'status',
+ 'value' => $model->status ? \Yii::t('app', 'Показать') : \Yii::t('app', 'Скрыть'),
+ ],
+ ],
+ ]) ?>
+
+
diff --git a/views/bg/_form.php b/views/bg/_form.php
new file mode 100755
index 0000000..e6fef06
--- /dev/null
+++ b/views/bg/_form.php
@@ -0,0 +1,64 @@
+
+
+
diff --git a/views/bg/_form_language.php b/views/bg/_form_language.php
new file mode 100755
index 0000000..13dbcc2
--- /dev/null
+++ b/views/bg/_form_language.php
@@ -0,0 +1,15 @@
+
+= $form->field($model_lang, '[' . $language->id . ']title')
+ ->textInput([ 'maxlength' => true ]); ?>
\ No newline at end of file
diff --git a/views/bg/create.php b/views/bg/create.php
new file mode 100755
index 0000000..699a078
--- /dev/null
+++ b/views/bg/create.php
@@ -0,0 +1,30 @@
+title = \Yii::t('app', 'Create Bg');
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => \Yii::t('app', 'Bgs'),
+ 'url' => [ 'index' ],
+ ];
+ $this->params[ 'breadcrumbs' ][] = $this->title;
+?>
+
+
+
= Html::encode($this->title) ?>
+
+ = $this->render('_form', [
+ 'model' => $model,
+ 'modelLangs' => $modelLangs,
+ ]) ?>
+
+
diff --git a/views/bg/index.php b/views/bg/index.php
new file mode 100755
index 0000000..baf2d1b
--- /dev/null
+++ b/views/bg/index.php
@@ -0,0 +1,36 @@
+title = \Yii::t('app', 'Bgs');
+ $this->params[ 'breadcrumbs' ][] = $this->title;
+?>
+
+
+
= Html::encode($this->title) ?>
+
+
+ = Html::a(\Yii::t('app', 'Create Bg'), [ 'create' ], [ 'class' => 'btn btn-success' ]) ?>
+
+ = GridView::widget([
+ 'dataProvider' => $dataProvider,
+ 'filterModel' => $searchModel,
+ 'columns' => [
+ [ 'class' => 'yii\grid\SerialColumn' ],
+ 'id',
+ 'url:url',
+ [
+ 'attribute' => 'title',
+ 'value' => 'lang.title',
+ ],
+ 'imageUrl:image',
+ [ 'class' => 'yii\grid\ActionColumn' ],
+ ],
+ ]); ?>
+
diff --git a/views/bg/update.php b/views/bg/update.php
new file mode 100755
index 0000000..d65a61a
--- /dev/null
+++ b/views/bg/update.php
@@ -0,0 +1,37 @@
+title = \Yii::t('app', 'Update Bg: ') . $model->lang->title;
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => \Yii::t('app', 'Bgs'),
+ 'url' => [ 'index' ],
+ ];
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => $model->lang->title,
+ 'url' => [
+ 'view',
+ 'id' => $model->id,
+ ],
+ ];
+ $this->params[ 'breadcrumbs' ][] = \Yii::t('app', 'Update');
+?>
+
+
+
= Html::encode($this->title) ?>
+
+ = $this->render('_form', [
+ 'model' => $model,
+ 'modelLangs' => $modelLangs,
+ ]) ?>
+
+
diff --git a/views/bg/view.php b/views/bg/view.php
new file mode 100755
index 0000000..d528821
--- /dev/null
+++ b/views/bg/view.php
@@ -0,0 +1,48 @@
+title = $model->lang->title;
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => \Yii::t('app', 'Bgs'),
+ 'url' => [ 'index' ],
+ ];
+ $this->params[ 'breadcrumbs' ][] = $this->title;
+?>
+
+
+
= Html::encode($this->title) ?>
+
+
+ = Html::a(\Yii::t('app', 'Update'), [
+ 'update',
+ 'id' => $model->id,
+ ], [ 'class' => 'btn btn-primary' ]) ?>
+ = Html::a(\Yii::t('app', 'Delete'), [
+ 'delete',
+ 'id' => $model->id,
+ ], [
+ 'class' => 'btn btn-danger',
+ 'data' => [
+ 'confirm' => \Yii::t('app', 'Are you sure you want to delete this item?'),
+ 'method' => 'post',
+ ],
+ ]) ?>
+
+
+ = DetailView::widget([
+ 'model' => $model,
+ 'attributes' => [
+ 'id',
+ 'lang.title',
+ 'url:url',
+ 'imageUrl:image',
+ ],
+ ]) ?>
+
+
diff --git a/views/slider-image/_form.php b/views/slider-image/_form.php
new file mode 100755
index 0000000..b5a5df8
--- /dev/null
+++ b/views/slider-image/_form.php
@@ -0,0 +1,81 @@
+
+
+
+
+ [ 'enctype' => 'multipart/form-data' ] ]); ?>
+
+ = $form->field($model, 'image')
+ ->widget(\kartik\file\FileInput::className(), [
+ 'model' => $model,
+ 'attribute' => 'image',
+ 'options' => [
+ 'accept' => 'image/*',
+ 'multiple' => true,
+ ],
+ 'pluginOptions' => [
+ 'allowedFileExtensions' => [
+ 'jpg',
+ 'gif',
+ 'png',
+ ],
+ 'initialPreview' => $model->imageUrl ? \common\components\artboximage\ArtboxImageHelper::getImage($model->imageUrl, 'slider') : '',
+ 'overwriteInitial' => true,
+ 'showRemove' => true,
+ 'showUpload' => false,
+ ],
+ ]); ?>
+
+ = $form->field($model, 'url')
+ ->textInput([ 'maxlength' => true ]) ?>
+
+ = $form->field($model, 'status')
+ ->widget(Select2::className(), ( [
+ 'name' => 'status',
+ 'hideSearch' => true,
+ 'data' => [
+ 1 => \Yii::t('app', 'Active'),
+ 2 => \Yii::t('app', 'Inactive'),
+ ],
+ 'options' => [ 'placeholder' => 'Select status...' ],
+ 'pluginOptions' => [
+ 'allowClear' => true,
+ ],
+ ] )) ?>
+
+ = $form->field($model, 'sort')
+ ->textInput() ?>
+
+ $modelLangs,
+ 'formView' => '@backend/views/slider-image/_form_language',
+ 'form' => $form,
+ ]);
+ ?>
+
+
+ = Html::submitButton($model->isNewRecord ? Yii::t('app', 'Create') : Yii::t('app', 'Update'), [ 'class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary' ]) ?>
+
+
+
+
+
diff --git a/views/slider-image/_form_language.php b/views/slider-image/_form_language.php
new file mode 100755
index 0000000..64b69c3
--- /dev/null
+++ b/views/slider-image/_form_language.php
@@ -0,0 +1,17 @@
+
+= $form->field($model_lang, '[' . $language->id . ']title')
+ ->textInput([ 'maxlength' => true ]); ?>
+= $form->field($model_lang, '[' . $language->id . ']alt')
+ ->textInput([ 'maxlength' => true ]); ?>
\ No newline at end of file
diff --git a/views/slider-image/create.php b/views/slider-image/create.php
new file mode 100755
index 0000000..fa38d29
--- /dev/null
+++ b/views/slider-image/create.php
@@ -0,0 +1,44 @@
+title = Yii::t('app', 'Create Slider Image');
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => Yii::t('app', 'Sliders'),
+ 'url' => Url::toRoute([
+ 'slider/index',
+ ]),
+ ];
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => Yii::t('app', 'Slider Images'),
+ 'url' => Url::toRoute([
+ 'index',
+ 'slider_id' => $slider_id,
+ ]),
+ ];
+ $this->params[ 'breadcrumbs' ][] = $this->title;
+?>
+
+
+
= Html::encode($this->title) ?>
+
+ = $this->render('_form', [
+ 'model' => $model,
+ 'modelLangs' => $modelLangs,
+ 'slider' => $slider,
+ ]) ?>
+
+
diff --git a/views/slider-image/index.php b/views/slider-image/index.php
new file mode 100755
index 0000000..41b5c2f
--- /dev/null
+++ b/views/slider-image/index.php
@@ -0,0 +1,114 @@
+title = Yii::t('app', 'Slider Images');
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => Yii::t('app', 'Sliders'),
+ 'url' => Url::toRoute([ 'slider/index' ]),
+ ];
+ $this->params[ 'breadcrumbs' ][] = $this->title;
+?>
+
+
+
= Html::encode($this->title) ?>
+
+
+ = Html::a(
+ Yii::t('app', 'Create Slider Image'),
+ Url::toRoute(
+ [
+ 'create',
+ 'slider_id' => $slider_id,
+ ]
+ ),
+ [ 'class' => 'btn btn-success' ]
+ ) ?>
+
+ = GridView::widget(
+ [
+ 'dataProvider' => $dataProvider,
+ 'filterModel' => $searchModel,
+ 'columns' => [
+ 'id',
+ 'imageUrl:image',
+ 'url',
+ [
+ 'attribute' => 'status',
+ 'value' => function ($model) {
+ /**
+ * @var SliderImage $model
+ */
+ return ( !$model->status ) ? \Yii::t('app', 'Скрыто') : \Yii::t('app', 'Показать');
+ },
+ 'filter' => [
+ 0 => \Yii::t('app', 'Скрыто'),
+ 1 => \Yii::t('app', 'Показать'),
+ ],
+ ],
+ [
+ 'class' => 'yii\grid\ActionColumn',
+ 'buttons' => [
+ 'view' => function ($url, $model) {
+ return Html::a(
+ '
',
+ Url::toRoute(
+ [
+ 'view',
+ 'slider_id' => $model->slider_id,
+ 'id' => $model->id,
+ ]
+ ),
+ [
+ 'title' => \Yii::t('app', 'Просмотр'),
+ ]
+ );
+ },
+ 'update' => function ($url, $model) {
+ return Html::a(
+ '
',
+ Url::toRoute(
+ [
+ 'update',
+ 'slider_id' => $model->slider_id,
+ 'id' => $model->id,
+ ]
+ ),
+ [
+ 'title' => \Yii::t('app', 'Редактировать'),
+ ]
+ );
+ },
+ 'delete' => function ($url, $model) {
+ return Html::a(
+ '
',
+ Url::toRoute(
+ [
+ 'delete',
+ 'slider_id' => $model->slider_id,
+ 'id' => $model->id,
+ ]
+ ),
+ [
+ 'title' => Yii::t('yii', 'Delete'),
+ 'data-confirm' => Yii::t('yii', 'Are you sure to delete this item?'),
+ 'data-method' => 'post',
+ ]
+ );
+
+ },
+ ],
+ ],
+ ],
+ ]
+ ); ?>
+
diff --git a/views/slider-image/update.php b/views/slider-image/update.php
new file mode 100755
index 0000000..96a3fe2
--- /dev/null
+++ b/views/slider-image/update.php
@@ -0,0 +1,67 @@
+title = Yii::t(
+ 'app',
+ 'Update {modelClass}: ',
+ [
+ 'modelClass' => 'Slider Image',
+ ]
+ ) . $model->id;
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => Yii::t('app', 'Sliders'),
+ 'url' => Url::toRoute(
+ [
+ 'slider/index',
+ ]
+ ),
+ ];
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => Yii::t('app', 'Slider Images'),
+ 'url' => Url::toRoute(
+ [
+ 'index',
+ 'slider_id' => $slider_id,
+ ]
+ ),
+ ];
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => \Yii::t('app', 'Slide') . ': ' . $model->id,
+ 'url' => Url::toRoute(
+ [
+ 'view',
+ 'slider_id' => $slider_id,
+ 'id' => $model->id,
+ ]
+ ),
+ ];
+ $this->params[ 'breadcrumbs' ][] = Yii::t('app', 'Update');
+?>
+
+
+
= Html::encode($this->title) ?>
+
+ = $this->render(
+ '_form',
+ [
+ 'model' => $model,
+ 'modelLangs' => $modelLangs,
+ 'slider' => $slider,
+ ]
+ ) ?>
+
+
diff --git a/views/slider-image/view.php b/views/slider-image/view.php
new file mode 100755
index 0000000..7aff7be
--- /dev/null
+++ b/views/slider-image/view.php
@@ -0,0 +1,92 @@
+title = \Yii::t('app', 'Slide') . ': ' . $model->id;
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => Yii::t('app', 'Sliders'),
+ 'url' => Url::toRoute(
+ [
+ 'slider/index',
+ ]
+ ),
+ ];
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => Yii::t('app', 'Slider Images'),
+ 'url' => Url::toRoute(
+ [
+ 'index',
+ 'slider_id' => $slider_id,
+ ]
+ ),
+ ];
+ $this->params[ 'breadcrumbs' ][] = $this->title;
+?>
+
+
+
= Html::encode($this->title) ?>
+
+
+ = Html::a(
+ Yii::t('app', 'Update'),
+ [
+ 'update',
+ 'slider_id' => $slider_id,
+ 'id' => $model->id,
+ ],
+ [ 'class' => 'btn btn-primary' ]
+ ) ?>
+ = Html::a(
+ Yii::t('app', 'Delete'),
+ [
+ 'delete',
+ 'slider_id' => $slider_id,
+ 'id' => $model->id,
+ ],
+ [
+ 'class' => 'btn btn-danger',
+ 'data' => [
+ 'confirm' => Yii::t('app', 'Are you sure you want to delete this item?'),
+ 'method' => 'post',
+ ],
+ ]
+ ) ?>
+
+
+ = DetailView::widget(
+ [
+ 'model' => $model,
+ 'attributes' => [
+ 'id',
+ [
+ 'attribute' => 'slider_id',
+ 'format' => 'html',
+ 'value' => Html::a(
+ $model->slider->title,
+ [
+ 'slider/update',
+ 'id' => $model->slider_id,
+ ]
+ ),
+ ],
+ 'lang.title',
+ 'lang.alt',
+ 'imageUrl:image',
+ 'url:url',
+ [
+ 'attribute' => 'status',
+ 'value' => $model->status ? \Yii::t('app', 'Показать') : \Yii::t('app', 'Скрыть'),
+ ],
+ 'sort',
+ ],
+ ]
+ ) ?>
+
+
diff --git a/views/slider/_form.php b/views/slider/_form.php
new file mode 100755
index 0000000..4ea7c7e
--- /dev/null
+++ b/views/slider/_form.php
@@ -0,0 +1,44 @@
+
+
+
diff --git a/views/slider/create.php b/views/slider/create.php
new file mode 100755
index 0000000..8cb53fb
--- /dev/null
+++ b/views/slider/create.php
@@ -0,0 +1,24 @@
+title = Yii::t('app', 'Create Slider');
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => Yii::t('app', 'Sliders'),
+ 'url' => [ 'index' ],
+ ];
+ $this->params[ 'breadcrumbs' ][] = $this->title;
+?>
+
+
+
= Html::encode($this->title) ?>
+
+ = $this->render('_form', [
+ 'model' => $model,
+ ]) ?>
+
+
diff --git a/views/slider/index.php b/views/slider/index.php
new file mode 100755
index 0000000..cd5bde4
--- /dev/null
+++ b/views/slider/index.php
@@ -0,0 +1,75 @@
+title = Yii::t('app', 'Sliders');
+ $this->params[ 'breadcrumbs' ][] = $this->title;
+?>
+
+
+
= Html::encode($this->title) ?>
+
+
+ = Html::a(Yii::t('app', 'Create Slider'), [ 'create' ], [ 'class' => 'btn btn-success' ]) ?>
+
+ = GridView::widget(
+ [
+ 'dataProvider' => $dataProvider,
+ 'filterModel' => $searchModel,
+ 'columns' => [
+ 'id',
+ 'title',
+ [
+ 'attribute' => 'status',
+ 'value' => function ($model) {
+ /**
+ * @var Slider $model
+ */
+ return ( !$model->status ) ? \Yii::t('app', 'Скрыто') : \Yii::t('app', 'Показать');
+ },
+ 'filter' => [
+ 0 => \Yii::t('app', 'Скрыто'),
+ 1 => \Yii::t('app', 'Показать'),
+ ],
+ ],
+ [
+ 'label' => \Yii::t('app', 'Slide count'),
+ 'content' => function ($model) {
+ /**
+ * @var Slider $model
+ */
+ return count($model->sliderImages);
+ },
+ ],
+ [
+ 'class' => 'yii\grid\ActionColumn',
+ 'template' => '{update} {image} {delete}',
+ 'buttons' => [
+ 'image' => function ($url, $model) {
+ return Html::a(
+ '
',
+ Url::toRoute(
+ [
+ 'slider-image/index',
+ 'slider_id' => $model->id,
+ ]
+ ),
+ [
+ 'title' => \Yii::t('app', "слайды"),
+ ]
+ );
+ },
+ ],
+ ],
+ ],
+ ]
+ ); ?>
+
diff --git a/views/slider/update.php b/views/slider/update.php
new file mode 100755
index 0000000..ff836e0
--- /dev/null
+++ b/views/slider/update.php
@@ -0,0 +1,26 @@
+title = Yii::t('app', 'Update {modelClass}: ', [
+ 'modelClass' => 'Slider',
+ ]) . $model->title;
+ $this->params[ 'breadcrumbs' ][] = [
+ 'label' => Yii::t('app', 'Sliders'),
+ 'url' => [ 'index' ],
+ ];
+ $this->params[ 'breadcrumbs' ][] = Yii::t('app', 'Update');
+?>
+
+
+
= Html::encode($this->title) ?>
+
+ = $this->render('_form', [
+ 'model' => $model,
+ ]) ?>
+
+
--
libgit2 0.21.4