protected function assignStudyprograms()
 {
     if (!count($this->getAssignedStudyprograms())) {
         return false;
     }
     foreach ($this->getAssignedStudyprograms() as $studyProgramObjId) {
         if (ilObject2::_lookupType($studyProgramObjId) != 'prg') {
             continue;
         }
         $usr_id = $this->getUsrObject()->getId();
         // require stuff here in order not to break it in ILIAS <= 5.0.x
         require_once "./Modules/StudyProgramme/classes/class.ilObjStudyProgramme.php";
         $prg_ref_ids = ilObjStudyProgramme::_getAllReferences($studyProgramObjId);
         $prg_ref_id = array_shift(array_values($prg_ref_ids));
         if (!$prg_ref_id) {
             continue;
         }
         $studyProgram = new ilObjStudyProgramme($prg_ref_id, true);
         $studyProgram->assignUser($usr_id, 6);
     }
     return true;
 }
 /**
  * function parses stored value to the variable needed to fill into the form for editing.
  * @param $value
  * @return mixed
  */
 public function parseFormInput($value, ilDataCollectionRecordField $record_field)
 {
     switch ($this->id) {
         case self::INPUTFORMAT_DATETIME:
             if (!$value || $value == "-") {
                 return NULL;
             }
             //$datetime = new DateTime();
             $input = array("date" => substr($value, 0, -9), "time" => "00:00:00");
             break;
         case self::INPUTFORMAT_FILE:
             if (!ilObject2::_exists($value) || ilObject2::_lookupType($value, false) != "file") {
                 $input = "";
                 break;
             }
             $file_obj = new ilObjFile($value, false);
             //$input = ilObjFile::_lookupAbsolutePath($value);
             $input = $file_obj->getFileName();
             break;
         case self::INPUTFORMAT_MOB:
             if (!ilObject2::_exists($value) || ilObject2::_lookupType($value, false) != "mob") {
                 $input = "";
                 break;
             }
             $media_obj = new ilObjMediaObject($value, false);
             //$input = ilObjFile::_lookupAbsolutePath($value);
             $input = $value;
             break;
         case self::INPUTFORMAT_TEXT:
             $arr_properties = $record_field->getField()->getProperties();
             if ($arr_properties[ilDataCollectionField::PROPERTYID_TEXTAREA]) {
                 $breaks = array("<br />");
                 $input = str_ireplace($breaks, "", $value);
             } else {
                 $input = $value;
             }
             break;
         default:
             $input = $value;
             break;
     }
     return $input;
 }