public function actionSlide() { if ($this->validateToken() && $this->validatePermission('smartslider_edit')) { $sliderId = N2Request::getInt('sliderId'); $slideId = N2Request::getInt('slideId'); if ($sliderId) { $slidesData = array(); $slidesModel = new N2SmartsliderSlidesModel(); $_slide = N2Request::getVar('slide'); if (is_array($_slide)) { $slide = $slidesModel->getRowFromPost($sliderId, $_slide); if ($slideId) { $slide['id'] = $slideId; $slidesData[$slideId] = $slide; } else { $slide['id'] = '-1000'; $slidesData['add'] = $slide; } } $this->addView("slide", array('slidesData' => $slidesData, 'sliderId' => $sliderId)); $this->render(); } } }
protected function loadSlides($extend, $dummy) { $this->slider->_activeSlide = 0; $where = $this->slidesWhereQuery(); N2Loader::import("models.Slides", "smartslider"); $slidesModel = new N2SmartsliderSlidesModel(); $slideRows = $slidesModel->getAll($this->slider->sliderId, $where); if (isset($extend['add'])) { if (!is_array($slideRows)) { $slideRows = array(); } array_push($slideRows, $extend['add']); } if (count($slideRows) == 0 && $dummy) { $images = array('$ss$/admin/images/dummyslide.png', '$ss$/admin/images/dummyslide.png', '$ss$/admin/images/dummyslide.png'); for ($i = 0; $i <= 7; $i++) { $index = $i % count($images); $slideRows[] = $slidesModel->getRowFromPost($this->slider->sliderId, array('title' => 'Dummy slide #' . $i, 'publish_up' => '', 'publish_down' => '', 'generator_id' => 0, 'slide' => '', 'description' => '', 'thumbnail' => $images[$index], 'published' => 1, 'first' => 0, 'backgroundImage' => $images[$index]), false); $slideRows[$i]['id'] = $i; } } for ($i = 0; $i < count($slideRows); $i++) { if (isset($extend[$slideRows[$i]['id']])) { $slideRows[$i] = $extend[$slideRows[$i]['id']]; } $slide = $this->createSlide($slideRows[$i]); if ($slide->isVisible()) { $this->slides[] = $slide; } $this->allEnabledSlides[$i] = $slide; } }