type) { case 'home_page': return $this->render('slider/home_page', ['slides' => $this->getSlider()]); case 'home_page_e_library': return $this->render('slider/home_page_e_library', ['slides' => $this->getELibrary()]); case 'join_to_us': return $this->render('slider/join_to_us', ['slides' => $this->getJoinToUs()]); case 'home_page_partners': return $this->render('slider/home_page_partners', ['slides' => $this->getPartners()]); } } private function getSlider() { return Slides::find()->where(['is_active' => 1, 'type' => $this->type]) ->orderBy(['order_index' => SORT_ASC]) ->parseAll('id, media_key', [ 'title' => 'ts_en_title', 'text' => 'ts_en_text', 'relation' => 'ts_en_relation' ])->all(); } private function getELibrary() { $library = RegisterObjects::find()->andWhere(['is_active' => 1, 'lib_type' => 2])->orderBy(['date_updated' => SORT_DESC])->limit(20)->all(); $books = []; foreach ($library as $book) { $books[] = (object)[ 'img' => $book->getImg(), 'title' => $book->getTitle(), 'url' => $book->getLibraryUrl() ]; } return $books; } public function getJoinToUs() { $data = Navigation::find() ->where(['is_active' => 1, 'home_conn' => 1])->orderBy(['order_index' => SORT_ASC])->all(); $imgNum = 0; $result = []; foreach ($data as $link) { $imgNum++; if(file_exists($_SERVER['DOCUMENT_ROOT'].'/_public/images/dev/join-us-' . $imgNum . '.png')) { $plateImg = '/_public/images/dev/join-us-' . $imgNum . '.png'; } else { $plateImg = '/_public/images/dev/join-us-1.png'; } $result[] = (object)[ 'img' => $plateImg, 'title' => \Yii::$app->language == 'en' ? $link->ts_en_name : $link->name, 'text' => '', 'url' => $link->url ? $link->url : $link->page->getUrl(), ]; //if ($imgNum == 4) $imgNum = 0; } return $result; } public function getPartners() { $partnersArr = []; $partners = Partner::find()->where(['active' => 1, 'deleted' => 0]) ->andWhere(['<', 'type', 2]) ->all(); foreach ($partners as $partner) { $partnersArr[] = (object)[ 'url' => $partner->getUrl(), 'name' => $partner->getTsName(), 'logo' => $partner->getSrcOfSingleImage('partner_logo_image', '1:1', '/_public/assets/images/emptysq.png') ]; } return $partnersArr; } }