| Current Path : /home/giteleslfp/www/plugins/editors-xtd/mediaboxckbutton/ |
| Current File : /home/giteleslfp/www/plugins/editors-xtd/mediaboxckbutton/mediaboxckbutton.php |
<?php
/**
* @copyright Copyright (C) 2015 Cédric KEIFLIN alias ced1870
* http://www.joomlack.fr
* http://www.template-creator.com
* @license GNU/GPL
* */
defined('_JEXEC') or die;
jimport('joomla.filesystem.folder');
class PlgButtonMediaboxckbutton extends JPlugin
{
/**
* Load the language file on instantiation.
*
* @var boolean
* @since 3.1
*/
protected $autoloadLanguage = true;
/**
* Mediaboxckbutton button
*
* @param string $name The name of the editor field
*
* @return button Object
*/
public function onDisplay($name)
{
// JHtml::_('behavior.modal');
$doc = JFactory::getDocument();
// get the settings from the system plugin
if (! JPluginHelper::isEnabled('system', 'mediabox_ck')) {
JFactory::getApplication()->enqueueMessage(JText::_('PLG_MEDIABOXCKBUTTON_SYSTEM_PLUGIN_MISSING'), 'warning');
return;
}
$plugin = JPluginHelper::getPlugin('system', 'mediabox_ck');
$mediaboxParams = new JRegistry($plugin->params);
// translations
JText::script('PLG_MEDIABOXCKBUTTON_TEXT');
JText::script('PLG_MEDIABOXCKBUTTON_UPDATE_LINK');
JText::script('PLG_MEDIABOXCKBUTTON_INSERT_LINK');
JText::script('PLG_MEDIABOXCKBUTTON_UPDATE_TAG');
JText::script('PLG_MEDIABOXCKBUTTON_INSERT_TAG');
JText::script('PLG_MEDIABOXCKBUTTON_TITLE');
JText::script('PLG_MEDIABOXCKBUTTON_DESCRIPTION');
JText::script('PLG_MEDIABOXCKBUTTON_SOURCE');
JText::script('PLG_MEDIABOXCKBUTTON_SOURCE_MEDIA_SINGLE');
JText::script('PLG_MEDIABOXCKBUTTON_SOURCE_MEDIA_DIRECTORY');
JText::script('PLG_MEDIABOXCKBUTTON_SOURCE_NOTES');
JText::script('PLG_MEDIABOXCKBUTTON_SELECT_IMAGE');
JText::script('PLG_MEDIABOXCKBUTTON_SOURCE_DIRECTORY_NOTES');
JText::script('PLG_MEDIABOXCKBUTTON_SOURCE_DIRECTORY');
JText::script('PLG_MEDIABOXCKBUTTON_SELECT_DIRECTORY');
JText::script('PLG_MEDIABOXCKBUTTON_DIMENSIONS');
JText::script('PLG_MEDIABOXCKBUTTON_DIMENSIONS_NOTES');
JText::script('PLG_MEDIABOXCKBUTTON_WIDTH');
JText::script('PLG_MEDIABOXCKBUTTON_HEIGHT');
JText::script('PLG_MEDIABOXCKBUTTON_ALBUM_DESC');
JText::script('PLG_MEDIABOXCKBUTTON_ALBUM');
JText::script('PLG_MEDIABOXCKBUTTON_GALLERY_DESC');
JText::script('PLG_MEDIABOXCKBUTTON_GALLERY');
JText::script('PLG_MEDIABOXCKBUTTON_SOURCE_MISSING');
JText::script('PLG_MEDIABOXCKBUTTON_PREVIEW');
JText::script('PLG_MEDIABOXCKBUTTON_EFFECT');
JText::script('PLG_MEDIABOXCKBUTTON_EFFECT_DESC');
JText::script('PLG_MEDIABOXCKBUTTON_LIMIT_NUMBER');
JText::script('PLG_MEDIABOXCKBUTTON_RANDOM_ORDER');
// $doc->addScriptDeclaration($js);
$doc->addStylesheet(JUri::root(true) . '/plugins/editors-xtd/mediaboxckbutton/assets/mediaboxckbutton.css');
$doc->addScript(JUri::root(true) . '/plugins/editors-xtd/mediaboxckbutton/assets/mediaboxckbutton.js');
global $ckbox;
if (!isset($ckbox->loaded) || $ckbox->loaded != true) {
$doc->addStylesheet(JUri::root(true) . '/plugins/editors-xtd/mediaboxckbutton/assets/ckbox.css');
$doc->addScript(JUri::root(true) . '/plugins/editors-xtd/mediaboxckbutton/assets/ckbox.js');
// declare the CKBox initialization
$ckbox = new stdClass();
$ckbox->loaded = true;
$ckbox->version = '1.0.0';
}
// get the list of available image effects if installed
$imageEffectsList = array();
if ( JPluginHelper::isEnabled('system', 'imageeffectck') && file_exists(JPATH_SITE . '/plugins/system/imageeffectck/imageeffectckhelper.php')) {
include_once JPATH_SITE . '/plugins/system/imageeffectck/imageeffectckhelper.php';
$imageEffectsList = ImageeffectckHelper::getEffectsList();
$imageEffectsList = implode(',', $imageEffectsList);
} else if ( JPluginHelper::isEnabled('system', 'imageeffectck') && !file_exists(JPATH_SITE . '/plugins/system/imageeffectck/imageeffectckhelper.php')) {
$imageEffectsList = '<a href="http://www.joomlack.fr/en/joomla-extensions/image-effect-ck" target="_blank">' . JText::_('PLG_MEDIABOXCKBUTTON_IMAGE_EFFECT_PLUGIN_NOT_UPTODATE') . '</a>';
} else {
$imageEffectsList = '<a href="http://www.joomlack.fr/en/joomla-extensions/image-effect-ck" target="_blank">' . JText::_('PLG_MEDIABOXCKBUTTON_IMAGE_EFFECT_PLUGIN_NOT_INSTALLED') . '</a>';
}
$button = new JObject;
$button->modal = false;
$button->class = 'btn';
$button->onclick = 'showMediaboxckButton(\'' . $name . '\', \'' . $mediaboxParams->get('attribtype', 'rel') . '\',\'' . $mediaboxParams->get('attribname', 'lightbox') . '\', \'' . JUri::root(true) . '\', \'' . $imageEffectsList . '\');return false;';
$button->text = JText::_('PLG_MEDIABOXCKBUTTON_BUTTON');
$button->name = 'mediaboxckbutton'; // nom de la classe <i> pour icone
$button->link = '#';
return $button;
}
/*
* Escape single quote in the strings to avoid JS errors
*
* param $t string : the text to escape
* return string : the escaped string
*/
private function mediaboxckText($t) {
return str_replace('\'', '\\\'', JText::_($t));
}
}