function onRemove($drop = false) { $db =& JFactory::getDBO(); $orig_id = (int) $this->_id; if (!empty($orig_id)) { $db->setQuery("DELETE FROM #__fabrik_joins WHERE element_id = " . $orig_id); $db->query(); $db->setQuery("\n\t\t\t\tSELECT j.id AS jid\n\t\t\t\tFROM #__fabrik_elements AS e\n\t\t\t\tLEFT JOIN #__fabrik_joins AS j ON j.element_id = e.id\n\t\t\t\tWHERE e.parent_id = {$orig_id}\n\t\t\t"); $join_ids = $db->loadResultArray(); if (!empty($join_ids)) { $db->setQuery("DELETE FROM #__fabrik_joins WHERE id IN (" . implode(',', $join_ids) . ")"); } } parent::onRemove($drop); }