} else { $userCanPost = (bool) (!empty($userGroupList) && isset($userGroupList[$_REQUEST['authId']])); } $is_allowedToSubmit = (bool) ($assignmentIsVisible && $uploadDateIsOk && $userCanPost) || $is_allowedToEditAll; /*============================================================================ HANDLING FORM DATA =============================================================================*/ // execute this after a form has been send // this instruction bloc will set some vars that will be used in the corresponding queries // $wrkForm['filename'] , $wrkForm['wrkTitle'] , $wrkForm['authors'] ... if ($cmd == 'exDownload') { $workId = isset($_REQUEST['workId']) ? $_REQUEST['workId'] : null; $submission = new Submission(); if ($submission->load($workId)) { $submissionUserId = $submission->getUserId(); $submissionGroupId = $submission->getGroupId(); $userGroupList = array(); if ($assignment->getAssignmentType() == 'GROUP') { $userGroupList = get_user_group_list(claro_get_current_user_id()); } $is_allowedToDownload = (bool) $is_allowedToEditAll || $submissionUserId == claro_get_current_user_id() || isset($userGroupList[$submissionGroupId]); // check permission if ($submission->getVisibility() == 'VISIBLE' || $is_allowedToDownload) { // read file $filePath = $assignment->getAssigDirSys() . $submission->getSubmittedFilename(); if (claro_send_file($filePath)) { die; } else { $dialogBox->error(get_lang('Not found')); } } else {