where([\common\models\Slider::tableName().'.title'=>$this->title])->joinWith("sliderImage")->one(); if (! empty ($slider)) { // изображения $images = $slider->sliderImage; if (! empty ($images)) { // подключаем jssor-slider $this->initSliderJs(); // скрипт-обработчик $this->initSliderScript($slider); // html return $this->htmlSlider($slider, $images); } } return $this->render('slider',[ 'slider'=>$slider ]); } // ==== DISPLAY ==== public function initSliderJs () { if (! $this->is_init_slider) { // TODO:: wiget подключение jcarousel $this->view->registerJsFile(\Yii::$app->request->baseUrl . '/js/widget-carousel/lib/jquery.jcarousel.min.js',[ 'position' => View::POS_END, 'depends' => ['yii\web\JqueryAsset'] ]); $this->is_init_slider = true; } } public function initSliderScript ($slider) { $this->view->registerJs(' var '.$slider->title.'_option_1 = { $AutoPlayInterval: '.$slider->duration.', $SlideDuration: '.$slider->speed.', }; ', 1); $this->view->registerCssFile (\Yii::$app->request->BaseUrl . '/js/widget-carousel/'.$slider->title.'/style.css'); $this->view->registerJsFile(\Yii::$app->request->BaseUrl . '/js/widget-carousel/'.$slider->title.'/style.js',[ 'position' => View::POS_END, 'depends' => ['yii\web\JqueryAsset'] ]); } public function htmlSlider ($slider, $images) { ob_start(); if (! empty ($images)) { echo '