4require_once 
'Services/Export/classes/class.ilExportGUI.php';
 
   20        public function __construct($a_parent_gui, $a_main_obj = 
null)
 
   22                global $ilPluginAdmin;
 
   24                parent::__construct($a_parent_gui, $a_main_obj);
 
   26                #$this->addFormat('xml', $a_parent_gui->lng->txt('ass_create_export_file'), $this, 'createTestExport'); 
   27                $this->
addFormat(
'xml', $a_parent_gui->lng->txt(
'ass_create_export_file'));
 
   28                $this->
addFormat(
'xmlres', $a_parent_gui->lng->txt(
'ass_create_export_file_with_results'), $this, 
'createTestExportWithResults');
 
   29                $this->
addFormat(
'csv', $a_parent_gui->lng->txt(
'ass_create_export_test_results'), $this, 
'createTestResultsExport');
 
   30                $this->
addFormat( 
'arc', $a_parent_gui->lng->txt( 
'ass_create_export_test_archive' ), $this, 
'createTestArchiveExport');
 
   31                $pl_names = $ilPluginAdmin->getActivePluginsForSlot(
IL_COMP_MODULE, 
'Test', 
'texp');
 
   32                foreach($pl_names as $pl)
 
   38                        $plugin->setTest($this->obj);
 
   41                                $plugin->getFormatLabel(),
 
   53                require_once 
'Modules/Test/classes/tables/class.ilTestExportTableGUI.php';
 
   61        public function createTestExportWithResults()
 
   69                require_once 
'Modules/Test/classes/class.ilTestExportFactory.php';
 
   71                $test_exp = $expFactory->getExporter(
'xml');
 
   72                $test_exp->setResultExportingEnabledForTestExport(
true);
 
   73                $test_exp->buildExportFile();
 
   75                $ilCtrl->redirectByClass(
'iltestexportgui');
 
   81        public function createTestResultsExport()
 
   89                require_once 
'Modules/Test/classes/class.ilTestExportFactory.php';
 
   91                $test_exp = $expFactory->getExporter(
'results');
 
   92                $test_exp->buildExportFile();
 
   94                $ilCtrl->redirectByClass(
'iltestexportgui');
 
  101                if ($ilAccess->checkAccess(
"write", 
"", $this->obj->ref_id))
 
  104                        require_once 
'Services/PDFGeneration/classes/class.ilPDFGeneration.php';
 
  107                        require_once 
'Modules/Test/classes/class.ilTestEvaluation.php';
 
  109                        $allActivesPasses = $evaluation->getAllActivesPasses();
 
  111                        require_once 
'Modules/Test/classes/class.ilTestParticipantData.php';
 
  113                        $participantData->setActiveIds(array_keys($allActivesPasses));
 
  114                        $participantData->load($this->obj->getTestId());
 
  116                        require_once 
'Modules/Test/classes/class.ilTestArchiveService.php';
 
  118                        $archiveService->setParticipantData($participantData);
 
  119                        $archiveService->archivePassesByActives($allActivesPasses);
 
  121                        include_once(
"./Modules/Test/classes/class.ilTestArchiver.php");
 
  122                        $test_id = $this->obj->getId();
 
  125                        require_once 
'./Modules/Test/classes/class.ilTestScoring.php';
 
  127                        $best_solution = $scoring->calculateBestSolutionForTest();
 
  130                        if(!is_dir($tmpFileName))
 
  135                        $directory_name = realpath($tmpFileName);
 
  136                        $file_name      = $directory_name . DIRECTORY_SEPARATOR . 
'Best_Solution.pdf';
 
  138                        require_once 
'./Modules/Test/classes/class.ilTestPDFGenerator.php';
 
  141                        $archive_exp->handInTestBestSolution($best_solution, $file_name);
 
  144                        $archive_exp->updateTestArchive();
 
  145                        $archive_exp->compressTestArchive();
 
  151                $ilCtrl->redirectByClass(
'iltestexportgui');
 
  158                $ilToolbar->setFormAction(
$ilCtrl->getFormAction($this));
 
  166                        include_once 
'Services/Form/classes/class.ilSelectInputGUI.php';
 
  169                        $ilToolbar->addInputItem(
$si, 
true);
 
  170                        $ilToolbar->addFormButton(
$lng->txt(
"exp_create_file"), 
"createExportFile");
 
  175                        $format = $format[0];
 
  176                        $ilToolbar->addFormButton(
$lng->txt(
"exp_create_file") . 
" (" . $format[
"txt"] . 
")", 
"create_" . $format[
"key"]);
 
  179                require_once 
'class.ilTestArchiver.php';
 
  181                $archive_dir = $archiver->getZipExportDirectory();
 
  182                $archive_files = array();
 
  183                if( file_exists($archive_dir) && is_dir($archive_dir) )
 
  185                        $archive_files = scandir($archive_dir);
 
  188                $export_dir   = $this->obj->getExportDirectory();
 
  189                $export_files = $this->obj->getExportFiles($export_dir);
 
  191                if(count($export_files) > 0)
 
  193                        foreach($export_files as $exp_file)
 
  195                                $file_arr = explode(
"__", $exp_file);
 
  196                                array_push(
$data, array(
 
  198                                        'size'      => filesize($export_dir . 
"/" . $exp_file),
 
  199                                        'timestamp' => $file_arr[0]
 
  204                if(count($archive_files) > 0)
 
  206                        foreach($archive_files as $exp_file)
 
  208                                if ($exp_file == 
'.' || $exp_file == 
'..')
 
  212                                $file_arr = explode(
"_", $exp_file);
 
  213                                array_push(
$data, array(
 
  215                                                                        'size' => filesize($archive_dir.
"/".$exp_file),
 
  216                                                                        'timestamp' => $file_arr[4]
 
  222                $table->setSelectAllCheckbox(
"file");
 
  225                        $table->addCustomColumn($c[
"txt"], $c[
"obj"], $c[
"func"]);
 
  230                        $table->addCustomMultiCommand($c[
"txt"], 
"multi_".$c[
"func"]);
 
  233                $table->setData(
$data);
 
  234                $tpl->setContent($table->getHTML());
 
  250                if(!isset(
$_POST[
'file']))
 
  253                        $ilCtrl->redirect($this, 
'listExportFiles');
 
  256                if(count(
$_POST[
'file']) > 1)
 
  259                        $ilCtrl->redirect($this, 
'listExportFiles');
 
  262                require_once 
'class.ilTestArchiver.php';
 
  266                $exportFile = $this->obj->getExportDirectory().
'/'.
$filename;
 
  267                $archiveFile = $archiver->getZipExportDirectory().
'/'.
$filename;
 
  269                if( file_exists($exportFile) )
 
  274                if( file_exists($archiveFile) )
 
  279                $ilCtrl->redirect($this, 
'listExportFiles');
 
  285        public function delete()
 
  293                require_once 
'class.ilTestArchiver.php';
 
  295                $archiveDir = $archiver->getZipExportDirectory();
 
  297                $export_dir = $this->obj->getExportDirectory();
 
  303                        if( !strlen(
$file) || !strlen($dir) )
 
  308                        $exp_file = $export_dir.
'/'.
$file;
 
  309                        $arc_file = $archiveDir.
'/'.
$file;
 
  310                        $exp_dir = $export_dir.
'/'.$dir;
 
  311                        if(@is_file($exp_file))
 
  315                        if(@is_file($arc_file))
 
  319                        if(@is_dir($exp_dir))
 
  325                $ilCtrl->redirect($this, 
'listExportFiles');
 
An exception for terminatinating execution or to throw for unit testing.
Export User Interface Class.
addFormat($a_key, $a_txt="", $a_call_obj=null, $a_call_func="")
Add formats.
getParentGUI()
get parent gui
getCustomColumns()
Get custom columns.
__construct($a_parent_gui, $a_main_obj=null)
Constuctor.
getCustomMultiCommands()
Get custom multi commands.
static prepareGeneration()
Prepare the PDF generation This initializes the purpose for MathJax rendering It has to be called bef...
static getPluginObject($a_ctype, $a_cname, $a_slot_id, $a_pname)
Get Plugin Object.
Export User Interface Class.
createTestArchiveExport()
listExportFiles()
List export files.
Class ilTestPDFGenerator.
static delDir($a_dir, $a_clean_only=false)
removes a dir and all its content (subdirs and files) recursively
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static ilTempnam($a_temp_path=null)
Create a temporary file in an ILIAS writable directory.
static makeDirParents($a_dir)
Create a new directory and all parent directories.
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
static deliverFile($a_file, $a_filename, $a_mime='', $isInline=false, $removeAfterDelivery=false, $a_exit_after=true)
deliver file for download via browser.
if(!file_exists("$old.txt")) if( $old===$new) if(file_exists("$new.txt")) $file
if(!is_array($argv)) $options