У меня есть простой компонент, следующий по большей части учебнику «Hello World», и все работает, за исключением того, что я добавил значки публикации/отмены публикации на панель инструментов и в сам список (маленькие зеленые/красные кружки).
Значки панели инструментов работают, и они могут без проблем изменить состояние, но маленькие значки не работают, вот код, который у меня есть:
view.html.php:
protected function addToolBar()
{
JToolBarHelper::title(JText::_('COM_MADS_MANAGER_OBJECTS'));
JToolBarHelper::publishList($task = 'objects.publish', $alt = 'Publish');
JToolBarHelper::unpublishList($task = 'objects.unpublish', $alt = 'Unpublish');
JToolBarHelper::deleteListX('', 'objects.delete');
JToolBarHelper::editListX('object.edit');
JToolBarHelper::addNewX('object.add');
}
tmpl > тело:
<?php
// No direct access to this file
defined('_JEXEC') or die;
?>
<?php foreach($this->items as $i => $item): ?>
<tr class="row<?php echo $i % 2; ?>">
<td><?php echo $item->id; ?></td>
<td><?php echo JHtml::_('grid.id', $i, $item->id); ?></td>
<td><a href="<?php echo JRoute::_('index.php?option=com_mads&task=object.edit&id=' . $item->id); ?>"><?php echo $item->title; ?></a></td>
<td><?php echo $item->description; ?></td>
<td align="center"><?php $published = JHTML::_('grid.published', $item, $i); echo $published;?></td>
</tr>
<?php endforeach; ?>
Я использую встроенную функцию публикации/отмены публикации и не создавал свою собственную.
Таблицы:
<?php
// No direct access to this file
defined('_JEXEC') or die;
jimport('joomla.database.table');
class MAdsTableObjects extends JTable
{
var $id = null;
var $title = null;
var $description = null;
var $published = 0;
function __construct(&$db)
{
parent::__construct('#__mads_objects', 'id', $db);
}
}
?>