Your IP : 216.73.216.55


Current Path : /home/giteleslfp/www/plugins/editors-xtd/mediaboxckbutton/
Upload File :
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=&quot;http://www.joomlack.fr/en/joomla-extensions/image-effect-ck&quot; target=&quot;_blank&quot;>' . JText::_('PLG_MEDIABOXCKBUTTON_IMAGE_EFFECT_PLUGIN_NOT_UPTODATE') . '</a>';
		} else {
			$imageEffectsList = '<a href=&quot;http://www.joomlack.fr/en/joomla-extensions/image-effect-ck&quot; target=&quot;_blank&quot;>' . 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));
	}
}