= 1) { api_not_allowed(true); } } $homework = get_work_assignment_by_id($workInfo['id']); $validationStatus = getWorkDateValidationStatus($homework); $interbreadcrumb[] = [ 'url' => api_get_path(WEB_CODE_PATH).'work/work.php?'.api_get_cidreq(), 'name' => get_lang('Assignments'), ]; $interbreadcrumb[] = [ 'url' => api_get_path(WEB_CODE_PATH).'work/work_list.php?'.api_get_cidreq().'&id='.$work_id, 'name' => $workInfo['title'], ]; $interbreadcrumb[] = ['url' => '#', 'name' => get_lang('Upload a document')]; $form = new FormValidator( 'form-work', 'POST', api_get_self()."?".api_get_cidreq()."&id=".$work_id, '', ['enctype' => "multipart/form-data"] ); setWorkUploadForm($form, $workInfo['allow_text_assignment']); $form->addHidden('id', $work_id); $form->addHidden('sec_token', $token); $allowRedirect = api_get_configuration_value('allow_redirect_to_main_page_after_work_upload'); $urlToRedirect = ''; if ($allowRedirect) { $urlToRedirect = api_get_path(WEB_CODE_PATH).'work/work.php?'.api_get_cidreq(); } $succeed = false; if ($form->validate()) { if ($student_can_edit_in_session && $check) { $values = $form->getSubmitValues(); // Process work $result = processWorkForm( $workInfo, $values, $course_info, $session_id, $group_id, $user_id, $_FILES['file'], api_get_configuration_value('assignment_prevent_duplicate_upload') ); if ($allowRedirect) { header('Location: '.$urlToRedirect); exit; } $script = 'work_list.php'; if ($is_allowed_to_edit) { $script = 'work_list_all.php'; } header('Location: '.api_get_path(WEB_CODE_PATH).'work/'.$script.'?'.api_get_cidreq().'&id='.$work_id); exit; } else { // Bad token or can't add works Display::addFlash( Display::return_message(get_lang('Impossible to save the document'), 'error') ); } } $url = api_get_path(WEB_AJAX_PATH).'work.ajax.php?'.api_get_cidreq().'&a=upload_file&id='.$work_id; $htmlHeadXtra[] = api_get_jquery_libraries_js(['jquery-ui', 'jquery-upload']); $htmlHeadXtra[] = to_javascript_work(); Display::display_header(null); // Only text if ($workInfo['allow_text_assignment'] == 1) { $tabs = $form->returnForm(); } else { $headers = [ get_lang('Upload'), get_lang('Upload').' ('.get_lang('Simple').')', ]; $multipleForm = new FormValidator('post'); $multipleForm->addMultipleUpload($url, $urlToRedirect); $tabs = Display::tabs( $headers, [$multipleForm->returnForm(), $form->returnForm()], 'tabs' ); } if (!empty($work_id)) { echo $validationStatus['message']; if ($is_allowed_to_edit) { if (api_resource_is_locked_by_gradebook($work_id, LINK_STUDENTPUBLICATION)) { echo Display::return_message(get_lang('This option is not available because this activity is contained by an assessment, which is currently locked. To unlock the assessment, ask your platform administrator.'), 'warning'); } else { echo $tabs; } } elseif ($student_can_edit_in_session && $validationStatus['has_ended'] == false) { echo $tabs; } else { Display::addFlash(Display::return_message(get_lang('Action not allowed'), 'error')); } } else { Display::addFlash(Display::return_message(get_lang('Action not allowed'), 'error')); } Display :: display_footer();