示例#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;
 }
 static function getAll()
 {
     if (self::$settings === null) {
         self::$settings = json_decode(NextendSmartSliderStorage::get('settings'), true);
         if (self::$settings === null) {
             self::$settings = array();
         }
     }
     return self::$settings;
 }
示例#3
0
/**
 * @return phpFlickr
 */
function getNextendFlickr()
{
    $flickr = null;
    NextendPlugin::callPlugin('nextendslidergenerator', 'onNextendFlickr', array(&$flickr));
    if ($flickr->auth_checkToken() === false) {
        if (NextendSmartSliderSettings::get('debugmessages', 1)) {
            global $smartslidercontroller;
            echo "<span style='line-height: 24px; padding: 0 10px;'>";
            echo NextendText::_('There_are_some_configuration_issues_with_Flickr_API_Please_check_the_settings') . ' <a href="' . $smartslidercontroller->route('controller=settings&view=sliders_settings&action=flickr') . '">' . NextendText::_('settings') . '</a>!<br />';
            echo "</span>";
        }
        return false;
    }
    return $flickr;
}
/**
 * @return Instagram
 */
function getNextendInstagram()
{
    $instagram = null;
    NextendPlugin::callPlugin('nextendslidergenerator', 'onNextendInstagram', array(&$instagram));
    $test = json_decode($instagram->getUserFeed(), true);
    if ($test['meta']['code'] != 200) {
        if (NextendSmartSliderSettings::get('debugmessages', 1)) {
            global $smartslidercontroller;
            echo "<span style='line-height: 24px; padding: 0 10px;'>";
            echo NextendText::_('There_are_some_configuration_issues_with_Instagram_API_Please_check_the') . ' <a href="' . $smartslidercontroller->route('controller=settings&view=sliders_settings&action=instagram') . '">' . NextendText::_('settings') . '</a>!<br />';
            echo "</span>";
        }
        return false;
    }
    return $instagram;
}
示例#5
0
function getNextendTwitter()
{
    $twitter = null;
    NextendPlugin::callPlugin('nextendslidergenerator', 'onNextendTwitter', array(&$twitter));
    $test = $twitter->request('GET', 'https://api.twitter.com/1.1/statuses/user_timeline.json', array());
    if ($test != 200) {
        if (NextendSmartSliderSettings::get('debugmessages', 1)) {
            global $smartslidercontroller;
            echo "<span style='line-height: 24px; padding: 0 10px;'>";
            echo NextendText::_('There_are_some_configuration_issues_with_Twitter_API_Please_check_the') . ' <a href="' . $smartslidercontroller->route('controller=settings&view=sliders_settings&action=twitter') . '">' . NextendText::_('settings') . '</a>!<br />';
            echo "</span>";
        }
        return false;
    }
    return $twitter;
}
示例#6
0
/**
 * @return array(Google_Client,Google_Client_YouTube)
 */
function getNextendYoutube()
{
    static $google = null, $youtube = null;
    if ($google === null) {
        NextendPlugin::callPlugin('nextendslidergenerator', 'onNextendYoutube', array(&$google, &$youtube));
    }
    if ($google->isAccessTokenExpired()) {
        if (NextendSmartSliderSettings::get('debugmessages', 1)) {
            global $smartslidercontroller;
            echo "<span style='line-height: 24px; padding: 0 10px;'>";
            echo NextendText::_('There are some configuration issues with Youtube API. Please check the') . ' <a href="' . $smartslidercontroller->route('controller=settings&view=sliders_settings&action=youtube') . '">' . NextendText::_('settings') . '</a>!<br />';
            echo "</span>";
        }
        return false;
    }
    return array($google, $youtube);
}
示例#7
0
/**
 * @return Facebook
 */
function getNextendFacebook()
{
    $facebook = null;
    NextendPlugin::callPlugin('nextendslidergenerator', 'onNextendFacebook', array(&$facebook));
    try {
        $test = $facebook->api('/me');
    } catch (Exception $e) {
        if (NextendSmartSliderSettings::get('debugmessages', 1)) {
            global $smartslidercontroller;
            echo "<span style='line-height: 24px; padding: 0 10px;'>";
            echo NextendText::_('There_are_some_configuration_issues_with_Facebook_API_Please_check_the') . ' <a href="' . $smartslidercontroller->route('controller=settings&view=sliders_settings&action=facebook') . '">' . NextendText::_('settings') . '</a>!<br />';
            echo "</span>";
        }
        return false;
    }
    return $facebook;
}
示例#8
0
 function editForm($data = array())
 {
     $css = NextendCss::getInstance();
     $js = NextendJavascript::getInstance();
     $css->addCssLibraryFile('common.css');
     $css->addCssLibraryFile('window.css');
     $css->addCssLibraryFile('configurator.css');
     $configurationXmlFile = dirname(__FILE__) . '/forms/slide.xml';
     $js->loadLibrary('dojo');
     nextendimport('nextend.form.form');
     $form = new NextendForm();
     $data['publishdates'] = isset($data['publishdates']) ? $data['publishdates'] : (isset($data['publish_up']) ? $data['publish_up'] : '') . '|*|' . (isset($data['publish_down']) ? $data['publish_down'] : '');
     $form->loadArray($data);
     $form->loadXMLFile($configurationXmlFile);
     $form->devicespecificimages = NextendSmartSliderSettings::get('devicespecificimages', 0);
     echo $form->render('slide');
 }
 function NextendSmartsliderGenerator($generator, $slide, $sliderid)
 {
     $this->_generator = $generator;
     $this->_slide = $slide;
     $this->_sliderid = $sliderid;
     if (class_exists('Tidy', false)) {
         $this->_tidy = true;
     }
     $this->_tidyInputEncoding = NextendSmartSliderSettings::get('tidy-input-encoding', 'utf8');
     $this->_tidyOutputEncoding = NextendSmartSliderSettings::get('tidy-output-encoding', 'utf8');
     $this->_generateslides = NextendParse::parse($this->_generator->get('generateslides'));
     $this->_number = intval($this->_generateslides[0]);
     $this->_generatorgroup = intval($this->_generator->get('generatorgroup', 1));
     if ($this->_generatorgroup < 1) {
         $this->_generatorgroup = 1;
     }
     $this->loadList();
 }
示例#10
0
文件: item.php 项目: sangikumar/IP
 function renderForm($type, $item, $data = array())
 {
     $css = NextendCss::getInstance();
     $js = NextendJavascript::getInstance();
     $js->addLibraryJsFile('jquery', NEXTEND_SMART_SLIDER2_ASSETS . 'admin/js/itemparser.js');
     $js->addLibraryJsFile('jquery', $item[4] . 'parser.js');
     $css->addCssLibraryFile('common.css');
     $css->addCssLibraryFile('window.css');
     $css->addCssLibraryFile('configurator.css');
     $configurationXmlFile = $item[4] . 'configuration.xml';
     $js->loadLibrary('dojo');
     nextendimport('nextend.form.form');
     $form = new NextendForm();
     $form->loadArray($data);
     $form->loadXMLFile($configurationXmlFile);
     $form->devicespecificimages = NextendSmartSliderSettings::get('devicespecificimages', 0);
     echo $form->render('item_' . $type);
 }
示例#11
0
 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);
 }
示例#12
0
 function getData($number)
 {
     $data = array();
     $photoset = $this->_data->get('peoplephotoset');
     if ($photoset) {
         $api = getNextendFlickr();
         if (!$api) {
             return $data;
         }
         $result = $api->photosets_getPhotos($photoset, 'description, date_upload, date_taken, owner_name, geo, tags, o_dims, views, media, path_alias, url_sq, url_t, url_s, url_q, url_m, url_n, url_z, url_c, url_l, url_o', NULL, $number);
         $people = array();
         foreach ($result['photoset']['photo'] as $photo) {
             if (!isset($people[$photo['ownername']])) {
                 $owner = $api->people_findByUsername($photo['ownername']);
                 $people[$photo['ownername']] = $api->people_getInfo($owner['nsid']);
             }
             $ow = $people[$photo['ownername']];
             $photo['owner_username'] = $ow['username'];
             $photo['owner_realname'] = isset($ow['realname']) ? $ow['realname'] : $ow['username'];
             $photo['owner_photosurl'] = $ow['photosurl'];
             $photo['owner_profileurl'] = $ow['profileurl'];
             $photo['image'] = isset($photo['url_o']) ? $photo['url_o'] : $photo['url_l'];
             $photo['thumbnail'] = isset($photo['url_m']) ? $photo['url_m'] : $photo['url_l'];
             $photo['url'] = $photo['owner_photosurl'];
             $photo['url_label'] = 'More photos';
             $photo['author_name'] = $photo['owner_realname'];
             $photo['author_url'] = $photo['owner_profileurl'];
             $data[] = $photo;
         }
     } else {
         if (NextendSmartSliderSettings::get('debugmessages', 1)) {
             echo 'Please choose a set for Flickr photoset generator!';
         }
     }
     return $data;
 }
示例#13
0
 function getValues()
 {
     return array('imagefront' => NextendSmartSliderSettings::get('placeholder'), 'imageback' => NextendSmartSliderSettings::get('placeholder'), 'alt' => NextendText::_('Image_not_available'), 'link' => '#|*|_self', 'width' => '100%', 'css' => '', 'flipclass' => 'myflip', 'onmouseclick' => '', 'onmouseenter' => '', 'onmouseleave' => '');
 }
示例#14
0
 function getValues()
 {
     return array('imagefront' => NextendSmartSliderSettings::get('placeholder'), 'imageback' => NextendSmartSliderSettings::get('placeholder'), 'alt' => 'Image not available', 'link' => '#|*|_self', 'url' => '', 'target' => '_self', 'width' => '100%', 'fadeclass' => 'myfade', 'css' => '', 'class' => '');
 }
示例#15
0
文件: edit.php 项目: pguilford/vcomcc
$this->loadFragment('firstcol/slide');
?>

<?php 
$this->loadFragment('firstcolend');
?>

<?php 
$this->loadFragment('secondcolstart');
?>

<form id="smartslider-form" action="" onsubmit="return (parseInt(njQuery('#generateslidesgeneratorgenerateslides_1').val()) == 1 && parseInt(njQuery('#generateslidesgeneratorgenerateslides_2').val()) == 0 ? confirm('\'Generate slides\' without static switch will delete and generate your dynamic slides. Are you sure?') : true)" method="post">
    <?php 
NextendForm::tokenize();
$xml = $slidersModel->editGeneratorSlide($smartslidergenerator);
if (intval(NextendSmartSliderSettings::get('generatordesignermode', 1))) {
    if ($generator->_datasource && count($generator->_datasource)) {
        echo '<script type="text/javascript">window.samplegeneratordata = ' . json_encode($generator->_datasource) . ';</script>';
    }
}
$smartslidergeneratorslide = (array) json_decode($slider['slide'], true);
$slidesModel = $this->getModel('slides');
$slidesModel->editForm($smartslidergeneratorslide);
?>
    <input name="sliderid" value="<?php 
echo NextendRequest::getInt('sliderid');
?>
" type="hidden"/>
    <input name="save" value="1" type="hidden"/>
</form>
示例#16
0
 function getValues()
 {
     return array('image' => NextendSmartSliderSettings::get('placeholder'), 'alt' => NextendText::_('Image_not_available'), 'title' => '', 'link' => '#|*|_self', 'size' => '100%|*|auto', 'css' => '', 'onmouseenter' => '', 'onmouseclick' => '', 'onmouseleave' => '', 'kenburns' => '0|*|10000|*|115|*|0-50% 50%|*|0');
 }
示例#17
0
文件: caption.php 项目: sangikumar/IP
 function getValues()
 {
     return array('link' => '#|*|_self', 'url' => '', 'target' => '_self', 'image' => NextendSmartSliderSettings::get('placeholder'), 'alt' => 'Image not available', 'content' => 'Title', 'description' => 'Here comes the description text.', 'fontclass' => 'sliderfont11', 'fontclasstitle' => 'sliderfont1', 'captionclass' => 'simple-bottom', 'width' => '130', 'height' => '120', 'color' => '00000080', 'colora' => 'RGBA(0,0,0,0.6)', 'colorhex' => '000000', 'customcaptionclass' => 'my-caption-custom-class');
 }
示例#18
0
 function getValues()
 {
     return array('image' => NextendSmartSliderSettings::get('placeholder'), 'alt' => 'Image not available', 'link' => '#|*|_self', 'size' => '130|*|130', 'content' => 'Title', 'description' => 'Here comes the description text.', 'captionclass' => 'simple-bottom', 'fontclasstitle' => 'sliderfont1', 'fontclass' => 'sliderfont11', 'color' => '00000080', 'customcaptionclass' => '', 'onmouseclick' => '', 'onmouseenter' => '', 'onmouseleave' => '');
 }
示例#19
0
 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']));
 }