/** * Delete an object from the database * @see icms_ipf_Handler::delete() * * @param mod_profile_Regstep $obj * @param bool $force * @return bool */ public function delete(&$obj, $force = false) { if (parent::delete($obj, $force)) { $field_handler = icms_getModuleHandler('field', basename(dirname(dirname(__FILE__))), 'profile'); return $field_handler->updateAll('step_id', 0, new icms_db_criteria_Item('step_id', $obj->getVar('step_id'))); } return false; }
/** * delete a profile field from the database * * @param object $obj reference to the object to delete * @param bool $force * @return bool FALSE if failed. **/ public function delete(&$obj, $force = false) { $profile_handler = icms_getmodulehandler('profile', basename(dirname(dirname(__FILE__))), 'profile'); $sql = "ALTER TABLE " . $profile_handler->table . " DROP " . $obj->getVar('field_name', 'n'); if ($this->db->query($sql)) { if (!parent::delete($obj, $force)) { return false; } if ($obj->getVar('field_show') || $obj->getVar('field_edit')) { $profile_module = icms::handler('icms_module')->getByDirname(basename(dirname(dirname(__FILE__)))); if (is_object($profile_module)) { // Remove group permissions $criteria = new icms_db_criteria_Compo(new icms_db_criteria_Item('gperm_modid', $profile_module->getVar('mid'))); $criteria->add(new icms_db_criteria_Item('gperm_itemid', $obj->getVar('fieldid'))); return icms::handler('icms_member_groupperm')->deleteAll($criteria); } } } return false; }