/** * Exports the user results as PDF certificates using * XSL-FO via XML:RPC calls * * @access public */ public function exportCertificate() { global $ilUser; include_once "./Services/Utilities/classes/class.ilUtil.php"; include_once "./Services/Certificate/classes/class.ilCertificate.php"; include_once "./Modules/Test/classes/class.ilTestCertificateAdapter.php"; $certificate = new ilCertificate(new ilTestCertificateAdapter($this->object)); $archive_dir = $certificate->createArchiveDirectory(); $total_users = array(); $total_users =& $this->object->evalTotalPersonsArray(); if (count($total_users)) { foreach ($total_users as $active_id => $name) { $user_id = $this->object->_getUserIdFromActiveId($active_id); $pdf = $certificate->outCertificate(array("active_id" => $active_id, "userfilter" => $userfilter, "passedonly" => $passedonly), FALSE); if (strlen($pdf)) { $certificate->addPDFtoArchiveDirectory($pdf, $archive_dir, $user_id . "_" . str_replace(" ", "_", ilUtil::getASCIIFilename($name)) . ".pdf"); } } $zipArchive = $certificate->zipCertificatesInArchiveDirectory($archive_dir, TRUE); } }