private function duplicateChildren($slideID, $newSlideID) { $arrChildren = $this->getArrSlideChildren($slideID); foreach ($arrChildren as $childSlide) { $childSlideID = $childSlide->getID(); //duplicate $duplicatedSlideID = $this->duplicateSlide($childSlideID); //update parent id $duplicatedSlide = new BannerSlide(); $duplicatedSlide->initByID($duplicatedSlideID); $duplicatedSlide->updateParentSlideID($newSlideID); } }
<?php //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);
public function putSlidePreviewByData($data) { if ($data == "empty_output") { $this->loadingMessageOutput(); exit; } $data = UniteFunctionsBanner::jsonDecodeFromClientSide($data); $slideID = $data["slideid"]; $slide = new BannerSlide(); $slide->initByID($slideID); $sliderID = $slide->getSliderID(); $output = new BannerRotatorOutput(); $output->setOneSlideMode($data); $this->previewOutput($sliderID, $output); }
private function addLangFromData($data) { $sliderID = UniteFunctionsBanner::getVal($data, "sliderid"); $slideID = UniteFunctionsBanner::getVal($data, "slideid"); $lang = UniteFunctionsBanner::getVal($data, "lang"); //duplicate slide $slider = new BannerRotator(); $slider->initByID($sliderID); $newSlideID = $slider->duplicateSlide($slideID); //update new slide $this->initByID($newSlideID); $arrUpdate = array(); $arrUpdate["lang"] = $lang; $arrUpdate["parentid"] = $slideID; $this->updateParamsInDB($arrUpdate); $urlIcon = UniteWpmlBanner::getFlagUrl($lang); $title = UniteWpmlBanner::getLangTitle($lang); $newSlide = new BannerSlide(); $newSlide->initByID($slideID); $arrLangCodes = $newSlide->getArrChildLangCodes(); $isAll = UniteWpmlBanner::isAllLangsInArray($arrLangCodes); $html = "<li>\n\t\t\t\t\t\t<img id=\"icon_lang_{$newSlideID}\" class=\"icon_slide_lang\" src=\"{$urlIcon}\" title=\"{$title}\" data-slideid=\"{$newSlideID}\" data-lang=\"{$lang}\">\n\t\t\t\t\t\t<div class=\"icon_lang_loader loader_round\" style=\"display:none\"></div>\t\t\t\t\t\t\t\t\n\t\t\t\t\t</li>"; $response = array(); $response["operation"] = "add"; $response["isAll"] = $isAll; $response["html"] = $html; return $response; }