/** * * update slide from data * @param $data */ public function updateStaticSlideFromData($data) { $slideID = RevSliderFunctions::getVal($data, "slideid"); $this->initByStaticID($slideID); //treat layers $layers = RevSliderFunctions::getVal($data, "layers"); if (gettype($layers) == "string") { $layersStrip = stripslashes($layers); $layersDecoded = json_decode($layersStrip); if (empty($layersDecoded)) { $layersDecoded = json_decode($layers); } $layers = RevSliderFunctions::convertStdClassToArray($layersDecoded); } if (empty($layers) || gettype($layers) != "array") { $layers = array(); } $layers = $this->normalizeLayers($layers); $settings = RevSliderFunctions::getVal($data, "settings"); $arrUpdate = array(); $arrUpdate["layers"] = json_encode($layers); $arrUpdate["settings"] = json_encode($settings); $this->db->update(RevSliderGlobals::$table_static_slides, $arrUpdate, array("id" => $this->id)); //RevSliderOperations::updateDynamicCaptions(); }
/** * * filter the slides for one slide preview */ private function filterOneSlide($slides) { $oneSlideID = $this->oneSlideData['slideid']; if (strpos($oneSlideID, 'static_') !== false) { global $wpdb; $sliderID = str_replace('static_', '', $oneSlideID); $tmp_slides = $wpdb->get_results($wpdb->prepare("SELECT * FROM " . RevSliderGlobals::$table_static_slides . " WHERE slider_id = %s", array($sliderID)), ARRAY_A); if (!empty($tmp_slides)) { $n_slides = new RevSliderSlide(); $n_slides->initByData($tmp_slides[0]); $slides[0] = $n_slides; $oneSlideID = $n_slides->getID(); } } $oneSlideParams = RevSliderFunctions::getVal($this->oneSlideData, 'params'); $oneSlideLayers = RevSliderFunctions::getVal($this->oneSlideData, 'layers'); if (gettype($oneSlideParams) == 'object') { $oneSlideParams = (array) $oneSlideParams; } if (gettype($oneSlideLayers) == 'object') { $oneSlideLayers = (array) $oneSlideLayers; } if (!empty($oneSlideLayers)) { $oneSlideLayers = RevSliderFunctions::convertStdClassToArray($oneSlideLayers); } $newSlides = array(); foreach ($slides as $slide) { $slideID = $slide->getID(); if ($slideID == $oneSlideID) { if (!empty($oneSlideParams)) { $slide->setParams($oneSlideParams); } if (!empty($oneSlideLayers)) { $slide->setLayers($oneSlideLayers); } $newSlides[] = $slide; //add 2 slides $newSlides[] = $slide; } } return $newSlides; }
/** * * get categories by id's */ public static function getCategoriesByIDs($arrIDs, $strTax = null) { if (empty($arrIDs)) { return array(); } if (is_string($arrIDs)) { $strIDs = $arrIDs; } else { $strIDs = implode(",", $arrIDs); } $args = array(); $args["include"] = $strIDs; if (!empty($strTax)) { if (is_string($strTax)) { $strTax = explode(",", $strTax); } $args["taxonomy"] = $strTax; } $arrCats = get_categories($args); if (!empty($arrCats)) { $arrCats = RevSliderFunctions::convertStdClassToArray($arrCats); } return $arrCats; }
/** * * filter the slides for one slide preview */ private function filterOneSlide($slides) { $oneSlideID = $this->oneSlideData['slideid']; $oneSlideParams = RevSliderFunctions::getVal($this->oneSlideData, 'params'); $oneSlideLayers = RevSliderFunctions::getVal($this->oneSlideData, 'layers'); if (gettype($oneSlideParams) == 'object') { $oneSlideParams = (array) $oneSlideParams; } if (gettype($oneSlideLayers) == 'object') { $oneSlideLayers = (array) $oneSlideLayers; } if (!empty($oneSlideLayers)) { $oneSlideLayers = RevSliderFunctions::convertStdClassToArray($oneSlideLayers); } $newSlides = array(); foreach ($slides as $slide) { $slideID = $slide->getID(); if ($slideID == $oneSlideID) { if (!empty($oneSlideParams)) { $slide->setParams($oneSlideParams); } if (!empty($oneSlideLayers)) { $slide->setLayers($oneSlideLayers); } $newSlides[] = $slide; //add 2 slides $newSlides[] = $slide; } } return $newSlides; }