/** * Deletes one category * * @param int $id_category * @param bool|string $parent Parent table name. optional * @param bool|int $id_parent Optional */ public function delete($id_category, $parent = FALSE, $id_parent = FALSE) { if ($id_category && $id_category != '') { if ($this->category_model->delete($id_category) > 0) { // Delete join between parent and the deleted category if ($parent !== FALSE && $id_parent !== FALSE) { $this->category_model->delete_joined_key('category', $id_category, $parent, $id_parent); } // Delete lang data $this->category_model->delete(array('id_category' => $id_category), 'category_lang'); if ($parent != FALSE) { $parent_url = $parent && $id_parent ? '/' . $parent . '/' . $id_parent : ''; $this->update[] = array('element' => 'categories', 'url' => admin_url() . 'category/get_select' . $parent_url); } // Remove deleted items from DOM $this->callback[] = array('fn' => 'ION.deleteDomElements', 'args' => array('.category' . $id_category)); // Answer prepare $this->id = $id_category; // Send answer $this->success(lang('ionize_message_category_deleted')); } else { $this->error(lang('ionize_message_category_not_deleted')); } } }