diff --git a/models/SliderImage.php b/models/SliderImage.php index bf1e4d5..084f740 100755 --- a/models/SliderImage.php +++ b/models/SliderImage.php @@ -18,6 +18,7 @@ * @property string $url * @property integer $status * @property integer $sort + * @property integer $end_at * @property Slider $slider * * From language behavior * * @property SliderImageLang $lang @@ -68,11 +69,13 @@ 'slider_id', 'status', 'sort', + ], 'integer', ], [ [ + 'end_at', 'url', ], 'string', @@ -105,6 +108,38 @@ ], ]; } + + + + public function beforeSave($insert) + { + if (parent::beforeSave($insert)) { + + $this->end_at = !empty($this->end_at) ? strtotime($this->end_at) : ''; + return true; + } else { + return false; + } + } + + public function afterFind(){ + $this->end_at = !empty($this->end_at) ? date("Y-m-d", $this->end_at) : ''; + } + + + /** + * @return bool + */ + public function isActive(){ + if($this->status){ + + if(!empty($this->end_at) && (strtotime($this->end_at) <= strtotime(date("Y-m-d")))){ + return false; + } + return true; + } + return false; + } /** * @inheritdoc @@ -118,6 +153,7 @@ 'url' => Yii::t('app', 'url'), 'status' => Yii::t('app', 'status'), 'sort' => Yii::t('app', 'sort'), + 'end_at' => Yii::t('app', 'Таймер до'), ]; } diff --git a/views/slider-image/_form.php b/views/slider-image/_form.php index 5c80901..01de77f 100755 --- a/views/slider-image/_form.php +++ b/views/slider-image/_form.php @@ -9,7 +9,7 @@ use yii\helpers\Html; use yii\web\View; use yii\widgets\ActiveForm; - +use kartik\date\DatePicker; /** * @var View $this * @var SliderImage $model @@ -44,7 +44,13 @@ 'showUpload' => false, ], ]); ?> - + = $form->field($model, 'end_at') + ->widget(DatePicker::className(), [ + 'pluginOptions' => [ + 'todayHighlight' => true, + 'format' => 'yyyy-mm-dd', + ]]) ?> + = $form->field($model, 'url') ->textInput([ 'maxlength' => true ]) ?> diff --git a/views/slider/_form.php b/views/slider/_form.php index b8a5a6e..1e7bded 100755 --- a/views/slider/_form.php +++ b/views/slider/_form.php @@ -22,15 +22,7 @@ = $form->field($model, 'title') ->textInput([ 'maxlength' => true ]) ?> - - - = $form->field($model, 'width') - ->textInput([ 'maxlength' => true ]) ?> - - = $form->field($model, 'height') - ->textInput([ 'maxlength' => true ]) ?> - - + = $form->field($model, 'status') ->widget( Select2::className(), diff --git a/widgets/Slider.php b/widgets/Slider.php deleted file mode 100755 index 04e6449..0000000 --- a/widgets/Slider.php +++ /dev/null @@ -1,32 +0,0 @@ -where([\artweb\artbox\design\models\Slider::tableName().'.title'=>$this->title])->joinWith("sliderImage")->one(); - if($slider instanceof \artweb\artbox\design\models\Slider){ - return $this->render('slider',[ - 'slider'=>$slider, - 'title'=>$this->title - ]); - - } - - - } - -} diff --git a/widgets/views/slider.php b/widgets/views/slider.php deleted file mode 100755 index e5b9bf6..0000000 --- a/widgets/views/slider.php +++ /dev/null @@ -1,78 +0,0 @@ - - - -