Joomla 3.x 覆盖自定义组件中的按钮功能
Joomla 3.x Override button functions in custom component
我正在尝试覆盖我的 joomla 组件中的按钮。
通过将代码添加到控制器中,我已经很好地管理了保存功能。
public function save($key = null, $urlVar = null)
{
$uri = JUri::getInstance();
$requestData = JRequest::getVar('jform', array(), 'post', 'array');
$user =& JFactory::getUser();
$userId = $user->get( 'id' );
$idToUse = $requestData['id'];
我想对保存和关闭以及保存和新建做同样的事情,但我不知道该怎么做。我想我需要去 view.html 看看自定义函数:
JToolBarHelper::title(JText::_('COM_SHOPPER_TITLE_SELECTOR'), 'selector.png');
// If not checked out, can save the item.
if (!$checkedOut && ($canDo->get('core.edit') || ($canDo->get('core.create'))))
{
JToolBarHelper::apply('selector.apply', 'JTOOLBAR_APPLY');
JToolBarHelper::save('selector.save', 'JTOOLBAR_SAVE');
}
if (!$checkedOut && ($canDo->get('core.create')))
{
JToolBarHelper::custom('selector.save2new', 'save-new.png', 'save-new_f2.png', 'JTOOLBAR_SAVE_AND_NEW', false);
}
所以我想我只需要添加一个函数 save2new() 但我不知道如何让它工作。
任何关于我哪里出错的想法都会很棒。
我猜你正在寻找 registerTask
。
如果您想为 save2new
任务调用保存方法,则需要在构造函数 __constructor
中调用 registerTask
$this->registerTask('save2new', 'save');
我正在尝试覆盖我的 joomla 组件中的按钮。
通过将代码添加到控制器中,我已经很好地管理了保存功能。
public function save($key = null, $urlVar = null)
{
$uri = JUri::getInstance();
$requestData = JRequest::getVar('jform', array(), 'post', 'array');
$user =& JFactory::getUser();
$userId = $user->get( 'id' );
$idToUse = $requestData['id'];
我想对保存和关闭以及保存和新建做同样的事情,但我不知道该怎么做。我想我需要去 view.html 看看自定义函数:
JToolBarHelper::title(JText::_('COM_SHOPPER_TITLE_SELECTOR'), 'selector.png');
// If not checked out, can save the item.
if (!$checkedOut && ($canDo->get('core.edit') || ($canDo->get('core.create'))))
{
JToolBarHelper::apply('selector.apply', 'JTOOLBAR_APPLY');
JToolBarHelper::save('selector.save', 'JTOOLBAR_SAVE');
}
if (!$checkedOut && ($canDo->get('core.create')))
{
JToolBarHelper::custom('selector.save2new', 'save-new.png', 'save-new_f2.png', 'JTOOLBAR_SAVE_AND_NEW', false);
}
所以我想我只需要添加一个函数 save2new() 但我不知道如何让它工作。
任何关于我哪里出错的想法都会很棒。
我猜你正在寻找 registerTask
。
如果您想为 save2new
任务调用保存方法,则需要在构造函数 __constructor
registerTask
$this->registerTask('save2new', 'save');