/** * Clone course files * * @access public * @static * * @param int source id * @param int target_id */ public static function _cloneFiles($a_source_id, $a_target_id) { $source = new ilFSStorageCourse($a_source_id); foreach (ilCourseFile::_readFilesByCourse($a_source_id) as $file_obj) { $new_file = new ilCourseFile(); $new_file->setCourseId($a_target_id); $new_file->setFileName($file_obj->getFileName()); $new_file->setFileSize($file_obj->getFileSize()); $new_file->setFileType($file_obj->getFileType()); $new_file->create(false); $target = new ilFSStorageCourse($a_target_id); $target->initInfoDirectory(); $source->copyFile($file_obj->getAbsolutePath(), $new_file->getAbsolutePath()); } }
/** * 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; }
function sendFileObject() { include_once 'Modules/Course/classes/class.ilCourseFile.php'; $file = new ilCourseFile((int) $_GET['file_id']); ilUtil::deliverFile($file->getAbsolutePath(), $file->getFileName(), $file->getFileType()); return true; }