Joomla, компонент, запустить скрипт на удаление записи из бэкэнда

я разработал компонент для Joomla 3, и я знаю, что могу выполнять операции табличной формы при сохранении с помощью функции prepareTable в классе /administrator/components/com_edm/models/edm.php

однако теперь мне нужно манипулировать БД, когда пользователи удаляют запись моего компонента в бэкэнде.

по сути, я спрашиваю, есть ли такая функция, как prepareTable, но для удаления

заранее спасибо

0

Решение

Хорошо … после долгих исследований я нашел способ достичь того, чего я хочу.

изменить
администратор / компоненты / com_edm / просмотров / newsletterss / view.html.php
файл для регистрации вашей новой функции кнопки, так
JToolBarHelper :: trash (‘newsletterss.Mytrash’, ‘JTOOLBAR_TRASH’);

а затем расширить контроллер для списка компонентов

администратор / компоненты / com_edm / Контроллеры / newsletterss.php
где вы можете установить свою собственную функцию, как так

публичная функция Mytrash () {

    // Check for request forgeries
JSession::checkToken() or die(JText::_('JINVALID_TOKEN'));

// Get items to remove from the request.
$cid = JRequest::getVar('cid', array(), '', 'array');

if (!is_array($cid) || count($cid) < 1)
{
JError::raiseWarning(500, JText::_($this->text_prefix . '_NO_ITEM_SELECTED'));
}
else
{
// Get the model.
$model = $this->getModel();

// Make sure the item ids are integers
jimport('joomla.utilities.arrayhelper');
JArrayHelper::toInteger($cid);

// Remove the items.
if ($model->delete($cid))
{
$this->setMessage(JText::plural($this->text_prefix . '_N_ITEMS_DELETED', count($cid)));
}
else
{
$this->setMessage($model->getError());
}
}

$this->setRedirect(JRoute::_('index.php?option=' . $this->option . '&view=' . $this->view_list, false));
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]