diff --git a/main/gradebook/gradebook_display_certificate.php b/main/gradebook/gradebook_display_certificate.php index 80cfacd03d..658b32ce65 100755 --- a/main/gradebook/gradebook_display_certificate.php +++ b/main/gradebook/gradebook_display_certificate.php @@ -159,6 +159,19 @@ switch ($action) { header('Location: '.$url); exit; break; + case 'download_all_certificates': + $courseCode = api_get_course_id(); + $sessionId = api_get_session_id(); + $categoryId = (int) $_GET['catId']; + $date = api_get_utc_datetime(null, false, true); + $pdfName = 'certs_'.$courseCode.'_'.$sessionId.'_'.$categoryId.'_'.$date->format('Y-m-d'); + $finalFile = api_get_path(SYS_ARCHIVE_PATH)."$pdfName.pdf"; + + $result = DocumentManager::file_send_for_download($finalFile, true); + if (false === $result) { + api_not_allowed(true); + } + break; } $interbreadcrumb[] = [ diff --git a/main/gradebook/lib/GradebookUtils.php b/main/gradebook/lib/GradebookUtils.php index f1dff271a1..0446b08faa 100644 --- a/main/gradebook/lib/GradebookUtils.php +++ b/main/gradebook/lib/GradebookUtils.php @@ -1732,6 +1732,7 @@ class GradebookUtils $imgSrcLoading = api_get_path(WEB_LIBRARY_JS_PATH).'loading.gif'; $imgSrcPdf = Display::return_icon('pdf.png', '', [], ICON_SIZE_MEDIUM, false, true); + $urlDownload = api_get_path(WEB_CODE_PATH).'gradebook/gradebook_display_certificate.php?'.api_get_cidreq().'&action=download_all_certificates&catId='.$categoryId; return "