if (empty($selectedCourseInfo)) { Session::write('reportErrorMessage', get_lang('NoCourse')); header("Location: {$selfUrl}"); exit; } $gradebookCategories = Category::load(null, null, $selectedCourseInfo['code'], null, false, $selectedSession); $gradebook = null; if (!empty($gradebookCategories)) { $gradebook = current($gradebookCategories); } if (!is_null($gradebook)) { $exportAllLink = api_get_path(WEB_CODE_PATH) . "gradebook/gradebook_display_certificate.php?"; $exportAllLink .= http_build_query(array("action" => "export_all_certificates", "cidReq" => $selectedCourseInfo['code'], "id_session" => 0, "gidReq" => 0, "cat_id" => $gradebook->get_id())); $sessionName = api_get_session_name($selectedSession); $courseName = api_get_course_info($selectedCourseInfo['code'])['title']; $studentList = GradebookUtils::get_list_users_certificates($gradebook->get_id()); $certificateStudents = array(); if (is_array($studentList) && !empty($studentList)) { foreach ($studentList as $student) { if (api_is_student_boss() && !in_array($student['user_id'], $userList)) { continue; } $certificateStudent = array('fullName' => api_get_person_name($student['firstname'], $student['lastname']), 'sessionName' => $sessionName, 'courseName' => $courseName, 'certificates' => array()); $studentCertificates = GradebookUtils::get_list_gradebook_certificates_by_user_id($student['user_id'], $gradebook->get_id()); if (!is_array($studentCertificates) || empty($studentCertificates)) { continue; } foreach ($studentCertificates as $certificate) { $creationDate = new DateTime($certificate['created_at']); $creationMonth = $creationDate->format('m'); $creationYear = $creationDate->format('Y');
$filterForm = '<br />' . $form->return_form(); if ($form->validate()) { $officialCode = $form->getSubmitValue('filter'); if ($officialCode == 'all') { $certificate_list = GradebookUtils::get_list_users_certificates($cat_id); } else { $userList = UserManager::getUsersByOfficialCode($officialCode); if (!empty($userList)) { $certificate_list = GradebookUtils::get_list_users_certificates($cat_id, $userList); } } } else { $certificate_list = GradebookUtils::get_list_users_certificates($cat_id); } } else { $certificate_list = GradebookUtils::get_list_users_certificates($cat_id); } echo '<div class="btn-group">'; $url = api_get_self() . '?action=generate_all_certificates' . '&' . api_get_cidReq() . '&cat_id=' . $cat_id . '&filter=' . $filterOfficialCode; echo Display::url(get_lang('GenerateCertificates'), $url, array('class' => 'btn btn-default')); $url = api_get_self() . '?action=delete_all_certificates' . '&' . api_get_cidReq() . '&cat_id=' . $cat_id . '&filter=' . $filterOfficialCode; echo Display::url(get_lang('DeleteAllCertificates'), $url, array('class' => 'btn btn-default')); $hideCertificateExport = api_get_setting('hide_certificate_export_link'); if (count($certificate_list) > 0 && $hideCertificateExport !== 'true') { $url = api_get_self() . '?action=export_all_certificates' . '&' . api_get_cidReq() . '&cat_id=' . $cat_id . '&filter=' . $filterOfficialCode; echo Display::url(get_lang('ExportAllCertificatesToPDF'), $url, array('class' => 'btn btn-default')); } echo '</div>'; echo $filterForm; if (count($certificate_list) == 0) { echo Display::display_warning_message(get_lang('NoResultsAvailable'));
/** * @param int $catId */ public static function deleteAllCertificates($catId) { $certificate_list = GradebookUtils::get_list_users_certificates($catId); if (!empty($certificate_list)) { foreach ($certificate_list as $index => $value) { $list_certificate = GradebookUtils::get_list_gradebook_certificates_by_user_id($value['user_id'], $catId); foreach ($list_certificate as $value_certificate) { $certificate_obj = new Certificate($value_certificate['id']); $certificate_obj->delete(true); } } } }