45         int $a_participant_id,
    46         ?array $selected_participants = null
    50         $this->user_id = $a_usr_id;
    51         $this->exc_ref_id = $a_exc_ref_id;
    52         $this->exc_id = $a_exc_id;
    53         $this->ass_id = $a_ass_id;
    54         $this->participant_id = $a_participant_id;
    57         $this->task_factory = $DIC->backgroundTasks()->taskFactory();
    58         $this->task_manager = $DIC->backgroundTasks()->taskManager();
    60         $this->
logger = $DIC->logger()->exc();
    63     public function run(): bool
    66         $bucket->setUserId($this->user_id);
    68         $this->
logger->debug(
"* Create task 'collect_data_job' using the following values:");
    69         $this->
logger->debug(
"job class = " . ilExerciseManagementCollectFilesJob::class);
    70         $this->
logger->debug(
"exc_id = " . $this->exc_id . 
", exc_ref_id = " . $this->exc_ref_id . 
", ass_id = " . (
int) $this->ass_id . 
", participant_id = " . (
int) $this->participant_id . 
", user_id = " . $this->user_id);
    72         $sel_participants = $this->selected_participants
    73             ? implode(
",", $this->selected_participants)
    75         $collect_data_job = $this->task_factory->createTask(
    76             ilExerciseManagementCollectFilesJob::class,
    81                 (
int) $this->participant_id,
    87         $this->
logger->debug(
"* Create task 'zip job' using the following values:");
    88         $this->
logger->debug(
"job class = " . ilSubmissionsZipJob::class);
    89         $this->
logger->debug(
"sending as input the task called->collect_data_job");
    91         $zip_job = $this->task_factory->createTask(ilSubmissionsZipJob::class, [$collect_data_job]);
    93         if ($this->participant_id > 0) {
    98             $bucket->setTitle($download_name);
   102         $this->
logger->debug(
"* Create task 'download_interaction' using the following values:");
   103         $this->
logger->debug(
"job class = " . ilExDownloadSubmissionsZipInteraction::class);
   104         $this->
logger->debug(
"download_name which is the same as bucket title = " . $download_name . 
" + the zip_job task");
   106         $download_interaction = $this->task_factory->createTask(ilExDownloadSubmissionsZipInteraction::class, [$zip_job, $download_name]);
   109         $bucket->setTask($download_interaction);
   110         $this->task_manager->run($bucket);
   117         return ucfirst($name[
'lastname']) . 
", " . ucfirst($name[
'firstname']);
 
getParticipantBucketTitle()
 
static lookupTitle(int $a_id)
 
static _lookupName(int $a_user_id)
lookup user name 
 
TaskFactory $task_factory
 
static getASCIIFilename(string $a_filename)
 
TaskManager $task_manager
 
Download submissions and feedback for exercises. 
 
__construct(int $a_usr_id, int $a_exc_ref_id, int $a_exc_id, int $a_ass_id, int $a_participant_id, ?array $selected_participants=null)
 
static getDirectoryNameFromUserData(int $a_user_id)
 
array $selected_participants