private function getSlideFullWidthVideoData(BannerSlide $slide) { $response = array("found" => false); //Deal full width video $enableVideo = $slide->getParam("enable_video", "false"); if ($enableVideo != "true") { return $response; } $videoID = $slide->getParam("video_id", ""); $videoID = trim($videoID); if (empty($videoID)) { return $response; } $response["found"] = true; $videoType = is_numeric($videoID) ? "vimeo" : "youtube"; $videoAutoplay = $slide->getParam("video_autoplay"); $videoNextslide = $slide->getParam("video_nextslide"); $response["type"] = $videoType; $response["videoID"] = $videoID; $response["autoplay"] = UniteFunctionsBanner::strToBool($videoAutoplay); $response["nextslide"] = UniteFunctionsBanner::strToBool($videoNextslide); return $response; }
public function getSlides($publishedOnly = false) { $this->validateInited(); $arrSlides = array(); $arrSlideRecords = $this->db->fetch(GlobalsBannerRotator::$table_slides, "slider_id=" . $this->id, "slide_order"); $arrChildren = array(); foreach ($arrSlideRecords as $record) { $slide = new BannerSlide(); $slide->initByData($record); $slideID = $slide->getID(); $arrIdsAssoc[$slideID] = true; if ($publishedOnly == true) { $state = $slide->getParam("state", "published"); if ($state == "unpublished") { continue; } } $parentID = $slide->getParam("parentid", ""); if (!empty($parentID)) { $lang = $slide->getParam("lang", ""); if (!isset($arrChildren[$parentID])) { $arrChildren[$parentID] = array(); } $arrChildren[$parentID][] = $slide; continue; //Skip adding to main list } //Init the children array $slide->setArrChildren(array()); $arrSlides[$slideID] = $slide; } //add children array to the parent slides foreach ($arrChildren as $parentID => $arr) { if (!isset($arrSlides[$parentID])) { continue; } $arrSlides[$parentID]->setArrChildren($arr); } $this->arrSlides = $arrSlides; return $arrSlides; }
//Get input $slideID = UniteFunctionsBanner::getGetVar("id"); //Init slide object $slide = new BannerSlide(); $slide->initByID($slideID); $slideParams = $slide->getParams(); $operations = new BannerOperations(); //Init slider object $sliderID = $slide->getSliderID(); $slider = new BannerRotator(); $slider->initByID($sliderID); $sliderParams = $slider->getParams(); $arrSlideNames = $slider->getArrSlideNames(); //Set slide delay $sliderDelay = $slider->getParam("delay", "9000"); $slideDelay = $slide->getParam("delay", ""); if (empty($slideDelay)) { $slideDelay = $sliderDelay; } require self::getSettingsFilePath("slide_settings"); require self::getSettingsFilePath("layer_settings"); $settingsLayerOutput = new UniteSettingsProductSidebarBanner(); $settingsSlideOutput = new UniteSettingsBannerProductBanner(); $arrLayers = $slide->getLayers(); //Get settings objects $settingsLayer = self::getSettings("layer_settings"); $settingsSlide = self::getSettings("slide_settings"); $cssContent = self::getSettings("css_captions_content"); $arrCaptionClasses = $operations->getArrCaptionClasses($cssContent); $arrButtonClasses = $operations->getButtonClasses(); //Set layer caption as first caption class