public function sendAdvancedNotification($active_id)
 {
     include_once "./Services/Mail/classes/class.ilMail.php";
     $mail = new ilMail(ANONYMOUS_USER_ID);
     $usr_data = $this->userLookupFullName(ilObjTest::_getUserIdFromActiveId($active_id));
     $message = new ilTemplate("tpl.il_as_tst_finish_notification_simple.html", TRUE, TRUE, "Modules/Test");
     $message->setVariable('TEXT_TEST_TITLE', $this->lng->txt('title'));
     $message->setVariable('VALUE_TEST_TITLE', $this->getTitle());
     $message->setVariable('TEXT_USER_NAME', $this->lng->txt('username'));
     $message->setVariable('VALUE_USER_NAME', $usr_data);
     $message->setVariable('TEXT_FINISH_TIME', $this->lng->txt('tst_finished'));
     ilDatePresentation::setUseRelativeDates(false);
     $message->setVariable('VALUE_FINISH_TIME', ilDatePresentation::formatDate(new ilDateTime(time(), IL_CAL_UNIX)));
     include_once "./Modules/Test/classes/class.ilTestExport.php";
     $exportObj = new ilTestExport($this, "results");
     $file = $exportObj->exportToExcel($deliver = FALSE, 'active_id', $active_id, $passedonly = FALSE);
     include_once "./Services/Mail/classes/class.ilFileDataMail.php";
     $fd = new ilFileDataMail(ANONYMOUS_USER_ID);
     $fd->copyAttachmentFile($file, "result_" . $active_id . ".xls");
     $file_names[] = "result_" . $active_id . ".xls";
     $result = $mail->sendMail(ilObjUser::_lookupLogin($this->getOwner()), "", "", sprintf($this->lng->txt('tst_user_finished_test'), $this->getTitle()), $message->get(), count($file_names) ? $file_names : array(), array('normal'));
     if (count($file_names)) {
         $fd->unlinkFiles($file_names);
         unset($fd);
         @unlink($file);
     }
 }
예제 #2
0
 public function sendAdvancedNotification($active_id)
 {
     include_once "./Modules/Test/classes/class.ilTestMailNotification.php";
     $mail = new ilTestMailNotification();
     $owner_id = $this->getOwner();
     $usr_data = $this->userLookupFullName(ilObjTest::_getUserIdFromActiveId($active_id));
     include_once "./Modules/Test/classes/class.ilTestExport.php";
     $exportObj = new ilTestExport($this, "results");
     $file = $exportObj->exportToExcel($deliver = FALSE, 'active_id', $active_id, $passedonly = FALSE);
     include_once "./Services/Mail/classes/class.ilFileDataMail.php";
     $fd = new ilFileDataMail(ANONYMOUS_USER_ID);
     $fd->copyAttachmentFile($file, "result_" . $active_id . ".xls");
     $file_names[] = "result_" . $active_id . ".xls";
     $mail->sendAdvancedNotification($owner_id, $this->getTitle(), $usr_data, $file_names);
     if (count($file_names)) {
         $fd->unlinkFiles($file_names);
         unset($fd);
         @unlink($file);
     }
 }
 /**
  * Exports the aggregated results
  *
  * @access public
  */
 function exportAggregatedResults()
 {
     switch ($_POST["export_type"]) {
         case "excel":
             include_once "./Modules/Test/classes/class.ilTestExport.php";
             $exportObj = new ilTestExport($this->object, "aggregated");
             $exportObj->exportToExcel($deliver = TRUE);
             break;
         case "csv":
             include_once "./Modules/Test/classes/class.ilTestExport.php";
             $exportObj = new ilTestExport($this->object, "aggregated");
             $exportObj->exportToCSV($deliver = TRUE);
             break;
     }
 }