× Please submit new Bug Reports on GitHub: github.com/Jensen-Technologies/component-creator-issues/issues

Extending backend trash button component toolbar

9 jaren 5 maanden geleden #844 door Daniel
Hey guys, going nuts with this and its not the easiest thing to google for some reason.

What i am after is
- in the backend
- in the list view of my component
- i am able to perform operations prior to save using the prepareTable from the model

- however now i want to be able to perform  changes to the database when the trash button is clicked in the backend.

Some guidance will be very much appreciated as i am ready to blow up at my computer and Joomla....it shouldnt be this hard
Bijlagen:

Gelieve Inloggen of een account aanmaken om deel te nemen aan het gesprek.

9 jaren 5 maanden geleden #846 door Daniel
Beantwoord door Daniel in topic Extending backend trash button component toolbar
OK...after much research i have found a way to achieve what i want.
alter the 
administrator/components/com_edm/views/newsletterss/view.html.php
file to register your new button function like so
JToolBarHelper::trash('newsletterss.Mytrash', 'JTOOLBAR_TRASH');
and then extend the controller for the component list
administrator/components/com_edm/controllers/newsletterss.php
where you can set your own function like so
public function 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));
}

Gelieve Inloggen of een account aanmaken om deel te nemen aan het gesprek.

Tijd voor maken pagina: 0.048 seconden
Gemaakt door Kunena

We use cookies so that you can place orders and we can provide a better service. You can control the use of cookies at the individual browser level. If you reject cookies, you may still use our website, but your ability to use some features or areas of our website may be limited.