/**
  * 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());
     }
 }
Beispiel #2
0
 /**
  * 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;
 }