81 lines
1.6 KiB
PHP
81 lines
1.6 KiB
PHP
|
<?php
|
||
|
/**
|
||
|
* @package Joomla.Libraries
|
||
|
* @subpackage HTML
|
||
|
*
|
||
|
* @copyright Copyright (C) 2005 - 2013 Open Source Matters, Inc. All rights reserved.
|
||
|
* @license GNU General Public License version 2 or later; see LICENSE.txt
|
||
|
*/
|
||
|
|
||
|
defined('JPATH_BASE') or die;
|
||
|
|
||
|
/**
|
||
|
* Utility class for icons.
|
||
|
*
|
||
|
* @package Joomla.Libraries
|
||
|
* @subpackage HTML
|
||
|
* @since 2.5
|
||
|
*/
|
||
|
abstract class JHtmlIcons
|
||
|
{
|
||
|
/**
|
||
|
* Method to generate html code for a list of buttons
|
||
|
*
|
||
|
* @param array $buttons Array of buttons
|
||
|
*
|
||
|
* @return string
|
||
|
*
|
||
|
* @since 2.5
|
||
|
*/
|
||
|
public static function buttons($buttons)
|
||
|
{
|
||
|
$html = array();
|
||
|
foreach ($buttons as $button)
|
||
|
{
|
||
|
$html[] = JHtml::_('icons.button', $button);
|
||
|
}
|
||
|
return implode($html);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Method to generate html code for a list of buttons
|
||
|
*
|
||
|
* @param array $button Button properties
|
||
|
*
|
||
|
* @return string
|
||
|
*
|
||
|
* @since 2.5
|
||
|
*/
|
||
|
public static function button($button)
|
||
|
{
|
||
|
if (isset($button['access']))
|
||
|
{
|
||
|
if (is_bool($button['access']))
|
||
|
{
|
||
|
if ($button['access'] == false)
|
||
|
{
|
||
|
return '';
|
||
|
}
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
// Get the user object to verify permissions
|
||
|
$user = JFactory::getUser();
|
||
|
|
||
|
// Take each pair of permission, context values.
|
||
|
for ($i = 0, $n = count($button['access']); $i < $n; $i += 2)
|
||
|
{
|
||
|
if (!$user->authorise($button['access'][$i], $button['access'][$i + 1]))
|
||
|
{
|
||
|
return '';
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Instantiate a new JLayoutFile instance and render the layout
|
||
|
$layout = new JLayoutFile('joomla.quickicons.icon');
|
||
|
return $layout->render($button);
|
||
|
}
|
||
|
}
|