function fetchElement() { if (isset($_REQUEST['get'])) { $get = json_decode(get_magic_quotes_gpc() || nextendIsWordPress() ? stripslashes($_REQUEST['get']) : $_REQUEST['get'], true); if (isset($get['sliderid'])) { nextendimportsmartslider2('nextend.smartslider.settings'); NextendSmartSliderFontSettings::initAdminFonts(intval($get['sliderid'])); } } $this->_xml->addChild('option', 'None')->addAttribute('value', ''); if (isset($GLOBALS['nextendfontmatrix']) && count($GLOBALS['nextendfontmatrix'])) { foreach ($GLOBALS['nextendfontmatrix'] as $k => $v) { $this->_xml->addChild('option', $v)->addAttribute('value', $k); } } return parent::fetchElement(); }
function form($xml) { $data = array(); switch ($xml) { case 'layout': $data = NextendSmartSliderLayoutSettings::getAll(); break; case 'font': $data = NextendSmartSliderFontSettings::getAll(NextendRequest::getInt('sliderid')); break; case 'joomla': $data = NextendSmartSliderJoomlaSettings::getAll(); break; default: $data = NextendSmartSliderSettings::getAll(); break; } $this->render(dirname(__FILE__) . '/forms/settings/' . $xml . '.xml', $data); }
function addCSS() { $id = $this->getId(); nextendimport('nextend.css.css'); $css = NextendCss::getInstance(); $css->createGroup($id); $css->enableLess($id); $css->addLessImportDir(NEXTEND_SMART_SLIDER2_ASSETS . 'less' . DIRECTORY_SEPARATOR, $id); $data =& $this->_data; $slider =& $this->_slider; $sliderParams =& $this->_sliderParams; $size = NextendParse::parse($sliderParams->get('size')); $context = array('id' => '~"#' . $this->getId() . '"', 'width' => $size[0] . 'px', 'height' => $size[1] . 'px', 'canvas' => intval($size[2]), 'count' => count($this->_slides), 'margin' => NextendParse::parseUnit($sliderParams->get('margin'), ' ')); if ($this->_backend) { $context['margin'] = '0px 0px 0px 0px'; } nextendimport('nextend.parse.font'); $fonts = 0; foreach (NextendSmartSliderFontSettings::getAll($this->_sliderid) as $k => $v) { preg_match('/sliderfont(custom)?([0-9]*)$/', $k, $matches); if (count($matches)) { $context['font' . $fonts] = '~".' . $matches[0] . '"'; $tmp = json_decode($v); if ($tmp === null || $tmp == $v) { $v = base64_decode($v); } $font = new NextendParseFont($v); $context['font' . $fonts . 'text'] = '";' . $font->printTab() . '"'; $font->mixinTab('Link'); $context['font' . $fonts . 'link'] = '";' . $font->printTab('Link') . '"'; $font->mixinTab('Link:Hover', 'Link'); $context['font' . $fonts . 'hover'] = '";' . $font->printTab('Link:Hover') . '"'; $fonts++; } } $context['fonts'] = $fonts; include $this->_typePath . 'context.php'; $css->addCssFile(array($this->getId(), $this->_typePath . 'style.less', $context), $this->getId()); $imageload = NextendParse::parse($this->_sliderParams->get('imageload', '0|*|0')); $lazyload = intval($imageload[0]); if ($lazyload) { $css->addCssFile(array($this->getId() . 'spinner', NEXTEND_SMART_SLIDER2_ASSETS . 'less' . DIRECTORY_SEPARATOR . 'spinner.less', array('id' => '~"#' . $this->getId() . '"')), $this->getId()); } if (strpos($context['margin'], '%')) { $m = explode('% ', $context['margin']); $m[1] = $m[1] / 100 * intval($context['width']); $m[3] = $m[3] / 100 * intval($context['width']); $m[0] = $m[0] / 100 * intval($context['height']); $m[2] = $m[2] / 100 * intval($context['height']); } else { $m = explode('px ', $context['margin']); } $addcss = (array) NextendParse::parse(NextendSmartSliderSettings::get('externalcssfile')); if ($this->_backend && count($addcss)) { foreach ($addcss as $cssfile) { $css->addCssFile($cssfile); } } return array(intval($context['width']), intval($context['height']), $m[0] + $m[2], $m[1] + $m[3], intval($context['canvaswidth']), intval($context['canvasheight'])); }
function editAction($tpl) { NextendSmartSliderFontSettings::initAdminFonts(); $this->render($tpl); }
function editAction($tpl) { NextendSmartSliderFontSettings::initAdminFonts(NextendRequest::getInt('sliderid')); $this->render($tpl); }
function exportSlider($id) { nextendimport('nextend.externals.zip_lib'); $zip = new NextendZipFile(); $slider = $this->getSlider($id); $title = preg_replace('/[^a-zA-Z0-9]/', '_', $slider['title']) . '.smart'; unset($slider['id']); $zip->addFile(serialize($slider), 'slider.ss2'); $slidesModel = $this->getModel('slides'); $slides = $slidesModel->getSlides($id); for ($i = 0; $i < count($slides); $i++) { unset($slides[$i]['id']); unset($slides[$i]['slider']); } $zip->addFile(serialize($slides), 'slides.ss2'); $fonts = NextendSmartSliderFontSettings::getAll($id); $zip->addFile(serialize($fonts), 'fonts.ss2'); return array($title, $zip->file()); }