Spade
Mini Shell
| Directory:~$ /home/lmsyaran/public_html/joomla35/plugins/editors-xtd/pagebreak/ |
| [Home] [System Details] [Kill Me] |
<?php
/**
* @package Joomla.Plugin
* @subpackage Editors-xtd.pagebreak
*
* @copyright (C) 2006 Open Source Matters, Inc.
<https://www.joomla.org>
* @license GNU General Public License version 2 or later; see
LICENSE.txt
*/
defined('_JEXEC') or die;
/**
* Editor Pagebreak button
*
* @since 1.5
*/
class PlgButtonPagebreak extends JPlugin
{
/**
* Load the language file on instantiation.
*
* @var boolean
* @since 3.1
*/
protected $autoloadLanguage = true;
/**
* Display the button
*
* @param string $name The name of the button to add
*
* @return JObject The button options as JObject
*
* @since 1.5
*/
public function onDisplay($name)
{
$input = JFactory::getApplication()->input;
$user = JFactory::getUser();
// Can create in any category (component permission) or at least in one
category
$canCreateRecords = $user->authorise('core.create',
'com_content')
|| count($user->getAuthorisedCategories('com_content',
'core.create')) > 0;
// Instead of checking edit on all records, we can use **same** check as
the form editing view
$values = (array)
JFactory::getApplication()->getUserState('com_content.edit.article.id');
$isEditingRecords = count($values);
// This ACL check is probably a double-check (form view already performed
checks)
$hasAccess = $canCreateRecords || $isEditingRecords;
if (!$hasAccess)
{
return;
}
JFactory::getDocument()->addScriptOptions('xtd-pagebreak',
array('editor' => $name));
$link =
'index.php?option=com_content&view=article&layout=pagebreak&tmpl=component&e_name='
. $name;
$button = new JObject;
$button->modal = true;
$button->class = 'btn';
$button->link = $link;
$button->text =
JText::_('PLG_EDITORSXTD_PAGEBREAK_BUTTON_PAGEBREAK');
$button->name = 'copy';
$button->options = "{handler: 'iframe', size: {x: 500,
y: 300}}";
return $button;
}
}