Exemplo n.º 1
0
 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'));
Exemplo n.º 3
0
 /**
  * @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);
             }
         }
     }
 }