ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
class.ilSurveyExporter.php
Go to the documentation of this file.
1<?php
2
3/* Copyright (c) 1998-2010 ILIAS open source, Extended GPL, see docs/LICENSE */
4
5
12{
16 private $ds;
17
21 public function init()
22 {
23 $this->ds = new ilSurveyDataSet();
24 $this->ds->setExportDirectories($this->dir_relative, $this->dir_absolute);
25 $this->ds->setDSPrefix("ds");
26 }
27
28
37 public function getXmlRepresentation($a_entity, $a_schema_version, $a_id)
38 {
39 if ($a_entity == "svy") {
40 $svy = new ilObjSurvey($a_id, false);
41 $svy->loadFromDb();
42
43 $svy_exp = new ilSurveyExport($svy, 'xml');
44 $zip = $svy_exp->buildExportFile();
45
46 // Unzip, since survey deletes this dir
47 ilUtil::unzip($zip);
48
49 $GLOBALS['ilLog']->write(__METHOD__ . ': Created zip file ' . $zip);
50 return "";
51 } else {
52 return $this->ds->getXmlRepresentation($a_entity, $a_schema_version, $a_id, "", true, true);
53 }
54 }
55
64 public function getXmlExportTailDependencies($a_entity, $a_target_release, $a_ids)
65 {
66 if ($a_entity == "svy") {
67 return array(
68 array(
69 "component" => "Modules/Survey",
70 "entity" => "svy_quest_skill",
71 "ids" => $a_ids),
72 array(
73 "component" => "Modules/Survey",
74 "entity" => "svy_skill_threshold",
75 "ids" => $a_ids),
76 array(
77 "component" => "Services/Object",
78 "entity" => "common",
79 "ids" => $a_ids)
80 );
81 }
82 return array();
83 }
84
92 public function getValidSchemaVersions($a_entity)
93 {
94 if ($a_entity == "svy") {
95 return array(
96 "4.1.0" => array(
97 "namespace" => "http://www.ilias.de/Modules/Survey/htlm/4_1",
98 "xsd_file" => "ilias_svy_4_1.xsd",
99 "uses_dataset" => false,
100 "min" => "4.1.0",
101 "max" => "")
102 );
103 } else {
104 return array(
105 "5.1.0" => array(
106 "namespace" => "http://www.ilias.de/Modules/Survey/svy/5_1",
107 "xsd_file" => "ilias_svy_5_1.xsd",
108 "uses_dataset" => true,
109 "min" => "5.1.0",
110 "max" => "")
111 );
112 }
113 }
114}
if(!defined('PATH_SEPARATOR')) $GLOBALS['_PEAR_default_error_mode']
Definition: PEAR.php:64
An exception for terminatinating execution or to throw for unit testing.
Class ilObjSurvey.
Survey Data set class.
Export class for surveys.
Used for container export with tests.
getXmlExportTailDependencies($a_entity, $a_target_release, $a_ids)
Get tail dependencies.
getValidSchemaVersions($a_entity)
Returns schema versions that the component can export to.
getXmlRepresentation($a_entity, $a_schema_version, $a_id)
Get xml representation.
static unzip($a_file, $overwrite=false, $a_flat=false)
unzip file
Xml Exporter class.