Beispiel #1
0
 function fetchElement()
 {
     global $smartslidercontroller, $ss2sliderafterform;
     $this->_value = htmlspecialchars($this->_form->get($this->_name, $this->_default), ENT_QUOTES);
     $this->_form->set($this->_name, $this->_value);
     $html = '<div style="display:none;">' . parent::fetchElement() . '</div>';
     $slider = null;
     $params = new NextendData();
     if (nextendIsJoomla()) {
         nextendimportsmartslider2('nextend.smartslider.joomla.slider');
         $module = new stdClass();
         $module->id = 0;
         $params->loadArray(array('slider' => intval($_GET['sliderid'])));
         $slider = new NextendSliderJoomla($module, $params, dirname(__FILE__), true);
     } else {
         if (nextendIsWordpress()) {
             nextendimportsmartslider2('nextend.smartslider.wordpress.slider');
             $slider = new NextendSliderWordpress(intval($_GET['sliderid']), $params, dirname(__FILE__), true);
         } else {
             if (nextendIsMagento()) {
                 nextendimportsmartslider2('nextend.smartslider.magento.slider');
                 $slider = new NextendSliderMagento(intval($_GET['sliderid']), $params, dirname(__FILE__), true);
             }
         }
     }
     ob_start();
     echo "<div id='smartslider-adjust-height' style='overflow:auto; margin: 5px; padding: 5px;'>";
     $slider->render();
     echo "</div>";
     echo "<div id='smart-slider-layer-dummy' class='smart-slider-layer'></div>";
     echo '<div class="smartslider-slide-advanced-layers" style="min-width: 1600px;"></div>';
     $ss2sliderafterform = ob_get_clean();
     $css = NextendCss::getInstance();
     $css->addCssLibraryFile('jqueryui/jquery.ui.resizable.css');
     $css->addCssFile(NEXTEND_SMART_SLIDER2_ASSETS . 'admin/css/layer.css');
     $js = NextendJavascript::getInstance();
     $js->addLibraryJsLibraryFile('jquery', 'ui/jquery.ui.core.min.js');
     $js->addLibraryJsLibraryFile('jquery', 'ui/jquery.ui.widget.min.js');
     $js->addLibraryJsLibraryFile('jquery', 'ui/jquery.ui.mouse.min.js');
     $js->addLibraryJsLibraryFile('jquery', 'ui/jquery.ui.resizable.min.js');
     $js->addLibraryJsLibraryFile('jquery', 'ui/jquery.ui.draggable.min.js');
     $js->addLibraryJsLibraryFile('jquery', 'ui/jquery.ui.sortable.min.js');
     $js->addLibraryJsLibraryFile('jquery', 'ui/jquery.ui.droppable.min.js');
     $js->addLibraryJsFile('jquery', NEXTENDLIBRARYASSETS . 'js' . DIRECTORY_SEPARATOR . 'base64.js');
     $js->addLibraryJsFile('jquery', NEXTENDLIBRARYASSETS . 'js' . DIRECTORY_SEPARATOR . 'sortable.js');
     $js->addLibraryJsFile('jquery', NEXTEND_SMART_SLIDER2_ASSETS . 'admin' . DIRECTORY_SEPARATOR . 'js' . DIRECTORY_SEPARATOR . 'console.js');
     $js->addLibraryJsFile('jquery', NEXTEND_SMART_SLIDER2_ASSETS . 'admin' . DIRECTORY_SEPARATOR . 'js' . DIRECTORY_SEPARATOR . 'slide.js');
     $js->addLibraryJsFile('jquery', NEXTEND_SMART_SLIDER2_ASSETS . 'admin' . DIRECTORY_SEPARATOR . 'js' . DIRECTORY_SEPARATOR . 'slide.layer.js');
     $js->addLibraryJsFile('jquery', NEXTEND_SMART_SLIDER2_ASSETS . 'admin' . DIRECTORY_SEPARATOR . 'js' . DIRECTORY_SEPARATOR . 'slide.item.js');
     $js->addLibraryJsFile('jquery', NEXTEND_SMART_SLIDER2_ASSETS . 'admin' . DIRECTORY_SEPARATOR . 'js' . DIRECTORY_SEPARATOR . 'slide.layout.js');
     $js->addLibraryJs('jquery', "\r\n            njQuery(document).ready(function(){\r\n                var el = \$('#smartslider-adjust-height');\r\n                el.height(el[0].scrollHeight+10);\r\n                \$(window).trigger('resize');\r\n            });\r\n            ndojo.addOnLoad(function(){\r\n                SmartSliderAdminSlide('" . $slider->getId() . "','" . $slider->_activeSlide . "','" . $this->_id . "', '" . $smartslidercontroller->route('controller=layouts&action=create') . "');\r\n            });\r\n        ");
     if (NextendSmartSliderSettings::get('slideeditoralert', 1)) {
         $js->addLibraryJs('jquery', "\r\n                njQuery(window).on('beforeunload', function() {\r\n                    if (njQuery.now()-window.nextendtime > 60000 && !window.nextendsave) { // 1 min\r\n                        return '" . NextendText::_('Your_slide_settings_has_not_been_submitted_yet') . "';\r\n                    } else {\r\n                        return;\r\n                    }\r\n                });\r\n            ");
     }
     return $html;
 }
echo $this->route('controller=sliders&view=sliders_generator&action=generatorrecords&refreshcache=1&sliderid=' . NextendRequest::getInt('sliderid'));
?>
">
            <span class="smartslider-icon smartslider-action-icon smartslider-action-icon-refresh"></span>
            Refresh cache
        </a>
    </div>
</div>
<div style="clear:both;"></div>
<?php 
nextendimportsmartslider2('nextend.smartslider.generator');
$slidersModel = $this->getModel('sliders');
$slider = $slidersModel->getSlider(NextendRequest::getInt('sliderid'));
$smartslidergenerator = (array) json_decode($slider['generator'], true);
$generatorParams = new NextendData();
$generatorParams->loadArray($smartslidergenerator);
if ($generatorParams->get('enabled')) {
    $source = $generatorParams->get('source', '');
    if ($source) {
        $generator = new NextendSmartsliderGenerator($generatorParams, array(), NextendRequest::getInt('sliderid'));
        $generator->initDatasource($source, true);
        $generatorgroup = $generatorParams->get('generatorgroup', 1);
        if (!empty($generator->_datasource)) {
            for ($i = 0, $j = 1; $i < count($generator->_datasource); $j++) {
                ?>
<h2>Slide #<?php 
                echo $j;
                ?>
</h2>
<table class="ni">
    <?php 
Beispiel #3
0
# copyright Copyright (C) Nextendweb.com. All Rights Reserved.
# @license - http://www.gnu.org/licenses/gpl-3.0.txt GNU/GPL
*/
defined('_JEXEC') or die('Restricted access');
global $smartslidergeneratorslide, $slidegenerator, $generatorinstance;
nextendimportsmartslider2('nextend.smartslider.generator');
$slidersModel = $this->getModel('sliders');
$slider = $slidersModel->getSlider(NextendRequest::getInt('sliderid'));
$smartslidergenerator = (array) json_decode($slider['generator'], true);
$slidegenerator = null;
$generatorParams = new NextendData();
$generatorParams->loadArray($smartslidergenerator);
$source = $generatorParams->get('source', '');
if ($source) {
    $generatorSlideParams = new NextendData();
    $generatorSlideParams->loadArray(json_decode($slider['slide'], true));
    $generator = new NextendSmartsliderGenerator($generatorParams, $generatorSlideParams, NextendRequest::getInt('sliderid'));
    $generatorinstance = $generator->initDatasource($source, true);
    $slidegenerator = $generator;
} else {
    // Here should be a redirect for the generator start!
}
$this->loadFragment('headerstart');
?>
    <div class="smartslider-button smartslider-save" onclick="setTimeout(function(){njQuery('#smartslider-form').submit();}, 300);"><?php 
echo NextendText::_('Save');
?>
</div>
    <div class="smartslider-button smartslider-cancel" onclick="window.nextendsave=true;location.href='<?php 
echo $this->route('controller=sliders&view=sliders_slider&action=generatordashboard&sliderid=' . NextendRequest::getInt('sliderid'));
?>
Beispiel #4
0
 function changeDynamicLayout($sliderid)
 {
     $slider = $this->getSlider($sliderid);
     $sliderParams = new NextendData();
     $sliderParams->loadJSON($slider['params']);
     $sliders = array();
     NextendPlugin::callPlugin('nextendslidergeneratorlayouts', 'onNextendSliderGeneratorSlider', array(&$sliders, $sliderParams->get('size', null)));
     $sliderpreset = NextendRequest::getVar('sliderpreset', '');
     if (isset($sliders[$sliderpreset])) {
         $slider = $sliders[$sliderpreset]['slider'] + $slider;
         $db = NextendDatabase::getInstance();
         $db->update('#__nextend_smartslider_sliders', array('type' => $slider['type'], 'params' => $slider['params']), 'id = ' . $db->quote($sliderid));
         self::markChanged($sliderid);
     }
     $generatorParams = new NextendData();
     $generatorParams->loadJSON($slider['generator']);
     $group = array();
     $list = array();
     NextendPlugin::callPlugin('nextendslidergenerator', 'onNextendSliderGeneratorList', array(&$group, &$list));
     $source = $generatorParams->get('source');
     $sourcetype = null;
     foreach ($list as $ls) {
         foreach ($ls as $k => $l) {
             if ($k == $source) {
                 $sourcetype = $l;
                 break;
             }
         }
         if ($sourcetype) {
             break;
         }
     }
     $slide = array();
     NextendPlugin::callPlugin('nextendslidergeneratorlayouts', 'onNextendSliderGeneratorLayouts', array($sourcetype[5], &$slide));
     $layout = NextendRequest::getVar('layout', '');
     if (isset($slide[$layout])) {
         if (isset($slide[$layout]['slider'])) {
             $generatorParams->loadArray($slide[$layout]['slider']);
         }
         $this->saveGenerator($sliderid, $generatorParams->toArray(), $slide[$layout]['slide'], false);
     }
     return $sliderid;
 }