?
Path : /home/admin/public_html/old/board/plugins/editors-xtd/ |
Current File : /home/admin/public_html/old/board/plugins/editors-xtd/readmore.php |
<?php /** * @version $Id: readmore.php 14401 2010-01-26 14:10:00Z louis $ * @package Joomla * @copyright Copyright (C) 2005 - 2010 Open Source Matters. All rights reserved. * @license GNU/GPL, see LICENSE.php * Joomla! is free software. This version may have been modified pursuant * to the GNU General Public License, and as distributed it includes or * is derivative of works licensed under the GNU General Public License or * other free or open source software licenses. * See COPYRIGHT.php for copyright notices and details. */ // no direct access defined( '_JEXEC' ) or die( 'Restricted access' ); jimport( 'joomla.plugin.plugin' ); /** * Editor Readmore buton * * @package Editors-xtd * @since 1.5 */ class plgButtonReadmore extends JPlugin { /** * Constructor * * For php4 compatability we must not use the __constructor as a constructor for plugins * because func_get_args ( void ) returns a copy of all passed arguments NOT references. * This causes problems with cross-referencing necessary for the observer design pattern. * * @param object $subject The object to observe * @param array $config An array that holds the plugin configuration * @since 1.5 */ function plgButtonReadmore(& $subject, $config) { parent::__construct($subject, $config); } /** * readmore button * @return array A two element array of ( imageName, textToInsert ) */ function onDisplay($name) { global $mainframe; $doc =& JFactory::getDocument(); $template = $mainframe->getTemplate(); // button is not active in specific content components $getContent = $this->_subject->getContent($name); $present = JText::_('ALREADY EXISTS', true) ; $js = " function insertReadmore(editor) { var content = $getContent if (content.match(/<hr\s+id=(\"|')system-readmore(\"|')\s*\/*>/i)) { alert('$present'); return false; } else { jInsertEditorText('<hr id=\"system-readmore\" />', editor); } } "; $doc->addScriptDeclaration($js); $button = new JObject(); $button->set('modal', false); $button->set('onclick', 'insertReadmore(\''.$name.'\');return false;'); $button->set('text', JText::_('Readmore')); $button->set('name', 'readmore'); // TODO: The button writer needs to take into account the javascript directive //$button->set('link', 'javascript:void(0)'); $button->set('link', '#'); return $button; } }