/** * delete course and all related data * * @access public * @return boolean true if all object data were removed; false if only a references were removed */ function delete() { global $ilAppEventHandler; // always call parent delete function first!! if (!parent::delete()) { return false; } // delete meta data $this->deleteMetaData(); // put here course specific stuff $this->__deleteSettings(); include_once 'Modules/Course/classes/class.ilCourseParticipants.php'; ilCourseParticipants::_deleteAllEntries($this->getId()); $this->initCourseArchiveObject(); $this->archives_obj->deleteAll(); include_once './Modules/Course/classes/class.ilCourseObjective.php'; ilCourseObjective::_deleteAll($this->getId()); include_once './Modules/Course/classes/class.ilObjCourseGrouping.php'; ilObjCourseGrouping::_deleteAll($this->getId()); include_once './Modules/Course/classes/class.ilCourseFile.php'; ilCourseFile::_deleteByCourse($this->getId()); include_once 'Modules/Course/classes/Export/class.ilCourseDefinedFieldDefinition.php'; ilCourseDefinedFieldDefinition::_deleteByContainer($this->getId()); $ilAppEventHandler->raise('Modules/Course', 'delete', array('object' => $this, 'obj_id' => $this->getId(), 'appointments' => $this->prepareAppointments('delete'))); return true; }