ILIAS  release_8 Revision v8.19
All Data Structures Namespaces Files Functions Variables Modules Pages
ilCourseXMLWriter Class Reference

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V. More...

+ Inheritance diagram for ilCourseXMLWriter:
+ Collaboration diagram for ilCourseXMLWriter:

Public Member Functions

 __construct (ilObjCourse $course_obj)
 
 setMode (int $a_mode)
 
 getMode ()
 
 start ()
 
 getXML ()
 
 modifyExportIdentifier ($a_tag, $a_param, $a_value)
 
 __buildHeader ()
 
 __buildCourseStart ()
 
 __buildMetaData ()
 
 __buildAdmin ()
 
 __buildTutor ()
 
 __buildMember ()
 
 __buildSubscriber ()
 
 __buildWaitingList ()
 
 __buildSetting ()
 
 __buildFooter ()
 
 setAttachUsers ($value)
 
- Public Member Functions inherited from ilXmlWriter
 __construct (string $version="1.0", string $outEnc="utf-8", string $inEnc="utf-8")
 
 xmlSetDtdDef (string $dtdDef)
 Sets dtd definition. More...
 
 xmlSetGenCmt (string $genCmt)
 Sets generated comment. More...
 
 xmlFormatData (string $data)
 Indents text for better reading. More...
 
 xmlHeader ()
 Writes xml header. More...
 
 xmlStartTag (string $tag, ?array $attrs=null, bool $empty=false, bool $encode=true, bool $escape=true)
 Writes a starttag. More...
 
 xmlEndTag (string $tag)
 Writes an endtag. More...
 
 xmlData (string $data, bool $encode=true, bool $escape=true)
 Writes data. More...
 
 xmlElement (string $tag, $attrs=null, $data=null, $encode=true, $escape=true)
 Writes a basic element (no children, just textual content) More...
 
 xmlDumpFile (string $file, bool $format=true)
 Dumps xml document from memory into a file. More...
 
 xmlDumpMem (bool $format=true)
 Returns xml document from memory. More...
 
 appendXML (string $a_str)
 append xml string to document More...
 
 xmlClear ()
 clears xmlStr More...
 

Data Fields

const MODE_SOAP = 1
 
const MODE_EXPORT = 2
 
const EXPORT_VERSION = '8.0'
 

Protected Attributes

ilSetting $setting
 
ilAccessHandler $access
 

Private Member Functions

 __buildAdvancedMetaData ()
 

Private Attributes

int $mode = self::MODE_SOAP
 
string $xml = ''
 
ilObjCourse $course_obj
 
bool $attach_users = true
 

Detailed Description

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V.

ILIAS is licensed with the GPL-3.0, see https://www.gnu.org/licenses/gpl-3.0.en.html You should have received a copy of said license along with the source code, too.

If this is not the case or you just want to try ILIAS, you'll find us at: https://www.ilias.de https://github.com/ILIAS-eLearning XML writer class Class to simplify manual writing of xml documents. It only supports writing xml sequentially, because the xml document is saved in a string with no additional structure information. The author is responsible for well-formedness and validity of the xml document.

Author
Stefan Meyer meyer.nosp@m.@lei.nosp@m.fos.c.nosp@m.om
Version
$Id$

Definition at line 31 of file class.ilCourseXMLWriter.php.

Constructor & Destructor Documentation

◆ __construct()

ilCourseXMLWriter::__construct ( ilObjCourse  $course_obj)

Definition at line 47 of file class.ilCourseXMLWriter.php.

References $course_obj, $DIC, ILIAS\GlobalScreen\Provider\__construct(), and ILIAS\Repository\access().

48  {
49  global $DIC;
50 
51  $this->setting = $DIC->settings();
52  $this->access = $DIC->access();
53 
55  $this->course_obj = $course_obj;
56  }
global $DIC
Definition: feed.php:28
__construct(Container $dic, ilPlugin $plugin)
+ Here is the call graph for this function:

Member Function Documentation

◆ __buildAdmin()

ilCourseXMLWriter::__buildAdmin ( )

Definition at line 140 of file class.ilCourseXMLWriter.php.

References $GLOBALS, $id, ilOrgUnitOperation\OP_MANAGE_MEMBERS, ilXmlWriter\xmlEndTag(), and ilXmlWriter\xmlStartTag().

Referenced by start().

140  : void
141  {
142  $admins = $this->course_obj->getMembersObject()->getAdmins();
143  $admins = $GLOBALS['DIC']->access()->filterUserIdsByRbacOrPositionOfCurrentUser(
144  'manage_members',
146  $this->course_obj->getRefId(),
147  $admins
148  );
149 
150  foreach ($admins as $id) {
151  $attr['id'] = 'il_' . $this->setting->get('inst_id') . '_usr_' . $id;
152  $attr['notification'] = ($this->course_obj->getMembersObject()->isNotificationEnabled($id)) ? 'Yes' : 'No';
153  $attr['passed'] = $this->course_obj->getMembersObject()->hasPassed($id) ? 'Yes' : 'No';
154  $attr['contact'] = $this->course_obj->getMembersObject()->isContact($id) ? 'Yes' : 'No';
155 
156  $this->xmlStartTag('Admin', $attr);
157  $this->xmlEndTag('Admin');
158  }
159  }
xmlEndTag(string $tag)
Writes an endtag.
if(!defined('PATH_SEPARATOR')) $GLOBALS['_PEAR_default_error_mode']
Definition: PEAR.php:64
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
Definition: plugin.php:23
xmlStartTag(string $tag, ?array $attrs=null, bool $empty=false, bool $encode=true, bool $escape=true)
Writes a starttag.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __buildAdvancedMetaData()

ilCourseXMLWriter::__buildAdvancedMetaData ( )
private

Definition at line 135 of file class.ilCourseXMLWriter.php.

References ilAdvancedMDValues\_appendXMLByObjId().

Referenced by start().

135  : void
136  {
137  ilAdvancedMDValues::_appendXMLByObjId($this, $this->course_obj->getId());
138  }
static _appendXMLByObjId(ilXmlWriter $a_xml_writer, int $a_obj_id)
Get xml of object values.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __buildCourseStart()

ilCourseXMLWriter::__buildCourseStart ( )

Definition at line 120 of file class.ilCourseXMLWriter.php.

References ilXmlWriter\xmlStartTag().

Referenced by start().

120  : void
121  {
122  $attrs["exportVersion"] = self::EXPORT_VERSION;
123  $attrs["id"] = "il_" . $this->setting->get('inst_id') . '_crs_' . $this->course_obj->getId();
124  $attrs['showMembers'] = ($this->course_obj->getShowMembers() ? 'Yes' : 'No');
125  $this->xmlStartTag("Course", $attrs);
126  }
xmlStartTag(string $tag, ?array $attrs=null, bool $empty=false, bool $encode=true, bool $escape=true)
Writes a starttag.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __buildFooter()

ilCourseXMLWriter::__buildFooter ( )

Definition at line 367 of file class.ilCourseXMLWriter.php.

References ilXmlWriter\xmlEndTag().

Referenced by start().

367  : void
368  {
369  $this->xmlEndTag('Course');
370  }
xmlEndTag(string $tag)
Writes an endtag.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __buildHeader()

ilCourseXMLWriter::__buildHeader ( )

Definition at line 113 of file class.ilCourseXMLWriter.php.

References ilXmlWriter\xmlHeader(), ilXmlWriter\xmlSetDtdDef(), and ilXmlWriter\xmlSetGenCmt().

Referenced by start().

113  : void
114  {
115  $this->xmlSetDtdDef("<!DOCTYPE Course PUBLIC \"-//ILIAS//DTD Course//EN\" \"" . ILIAS_HTTP_PATH . "/xml/ilias_crs_5_0.dtd\">");
116  $this->xmlSetGenCmt("Export of ILIAS course " . $this->course_obj->getId() . " of installation " . $this->setting->get('inst_id') . ".");
117  $this->xmlHeader();
118  }
xmlSetGenCmt(string $genCmt)
Sets generated comment.
xmlSetDtdDef(string $dtdDef)
Sets dtd definition.
xmlHeader()
Writes xml header.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __buildMember()

ilCourseXMLWriter::__buildMember ( )

Definition at line 181 of file class.ilCourseXMLWriter.php.

References $GLOBALS, $id, ilOrgUnitOperation\OP_MANAGE_MEMBERS, ilXmlWriter\xmlEndTag(), and ilXmlWriter\xmlStartTag().

Referenced by start().

181  : void
182  {
183  $members = $this->course_obj->getMembersObject()->getMembers();
184  $members = $GLOBALS['DIC']->access()->filterUserIdsByRbacOrPositionOfCurrentUser(
185  'manage_members',
187  $this->course_obj->getRefId(),
188  $members
189  );
190  foreach ($members as $id) {
191  $attr['id'] = 'il_' . $this->setting->get('inst_id') . '_usr_' . $id;
192  $attr['blocked'] = ($this->course_obj->getMembersObject()->isBlocked($id)) ? 'Yes' : 'No';
193  $attr['passed'] = $this->course_obj->getMembersObject()->hasPassed($id) ? 'Yes' : 'No';
194 
195  $this->xmlStartTag('Member', $attr);
196  $this->xmlEndTag('Member');
197  }
198  }
xmlEndTag(string $tag)
Writes an endtag.
if(!defined('PATH_SEPARATOR')) $GLOBALS['_PEAR_default_error_mode']
Definition: PEAR.php:64
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
Definition: plugin.php:23
xmlStartTag(string $tag, ?array $attrs=null, bool $empty=false, bool $encode=true, bool $escape=true)
Writes a starttag.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __buildMetaData()

ilCourseXMLWriter::__buildMetaData ( )

Definition at line 128 of file class.ilCourseXMLWriter.php.

References ilXmlWriter\appendXML(), and ilMD2XML\startExport().

Referenced by start().

128  : void
129  {
130  $md2xml = new ilMD2XML($this->course_obj->getId(), $this->course_obj->getId(), 'crs');
131  $md2xml->startExport();
132  $this->appendXML($md2xml->getXML());
133  }
appendXML(string $a_str)
append xml string to document
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __buildSetting()

ilCourseXMLWriter::__buildSetting ( )

Definition at line 245 of file class.ilCourseXMLWriter.php.

References IL_CAL_UNIX, ilCourseConstants\IL_CRS_SUBSCRIPTION_CONFIRMATION, ilCourseConstants\IL_CRS_SUBSCRIPTION_DEACTIVATED, ilCourseConstants\IL_CRS_SUBSCRIPTION_DIRECT, ilCourseConstants\IL_CRS_SUBSCRIPTION_UNLIMITED, ilCourseConstants\IL_CRS_VIEW_TIMING, ilXmlWriter\xmlElement(), ilXmlWriter\xmlEndTag(), and ilXmlWriter\xmlStartTag().

Referenced by start().

245  : void
246  {
247  $this->xmlStartTag('Settings');
248 
249  // Availability
250  $this->xmlStartTag('Availability');
251  if ($this->course_obj->getOfflineStatus()) {
252  $this->xmlElement('NotAvailable');
253  } elseif ($this->course_obj->getActivationUnlimitedStatus()) {
254  $this->xmlElement('Unlimited');
255  } else {
256  $this->xmlStartTag('TemporarilyAvailable');
257  $this->xmlElement('Start', null, $this->course_obj->getActivationStart());
258  $this->xmlElement('End', null, $this->course_obj->getActivationEnd());
259  $this->xmlEndTag('TemporarilyAvailable');
260  }
261  $this->xmlEndTag('Availability');
262 
263  // Syllabus
264  $this->xmlElement('Syllabus', null, $this->course_obj->getSyllabus());
265  $this->xmlElement('ImportantInformation', null, $this->course_obj->getImportantInformation());
266  $this->xmlElement('TargetGroup', null, $this->course_obj->getTargetGroup());
267 
268  // Contact
269  $this->xmlStartTag('Contact');
270  $this->xmlElement('Name', null, $this->course_obj->getContactName());
271  $this->xmlElement('Responsibility', null, $this->course_obj->getContactResponsibility());
272  $this->xmlElement('Phone', null, $this->course_obj->getContactPhone());
273  $this->xmlElement('Email', null, $this->course_obj->getContactEmail());
274  $this->xmlElement('Consultation', null, $this->course_obj->getContactConsultation());
275  $this->xmlEndTag('Contact');
276 
277  // Registration
278  $attr = array();
279 
280  if ($this->course_obj->getSubscriptionType() == ilCourseConstants::IL_CRS_SUBSCRIPTION_CONFIRMATION) {
281  $attr['registrationType'] = 'Confirmation';
282  } elseif ($this->course_obj->getSubscriptionType() == ilCourseConstants::IL_CRS_SUBSCRIPTION_DIRECT) {
283  $attr['registrationType'] = 'Direct';
284  } else {
285  $attr['registrationType'] = 'Password';
286  }
287 
288  $attr['maxMembers'] = $this->course_obj->isSubscriptionMembershipLimited() ?
289  $this->course_obj->getSubscriptionMaxMembers() : 0;
290  $attr['notification'] = $this->course_obj->getSubscriptionNotify() ? 'Yes' : 'No';
291  $attr['waitingList'] = $this->course_obj->enabledWaitingList() ? 'Yes' : 'No';
292 
293  $this->xmlStartTag('Registration', $attr);
294 
295  if ($this->course_obj->getSubscriptionLimitationType() == ilCourseConstants::IL_CRS_SUBSCRIPTION_DEACTIVATED) {
296  $this->xmlElement('Disabled');
297  } elseif ($this->course_obj->getSubscriptionLimitationType() == ilCourseConstants::IL_CRS_SUBSCRIPTION_UNLIMITED) {
298  $this->xmlElement('Unlimited');
299  } else {
300  $this->xmlStartTag('TemporarilyAvailable');
301  $this->xmlElement('Start', null, $this->course_obj->getSubscriptionStart());
302  $this->xmlElement('End', null, $this->course_obj->getSubscriptionEnd());
303  $this->xmlEndTag('TemporarilyAvailable');
304  }
305  if (strlen($pwd = $this->course_obj->getSubscriptionPassword())) {
306  $this->xmlElement('Password', null, $pwd);
307  }
308  $this->xmlEndTag('Registration');
309 
310  $this->xmlStartTag('Period', ['withTime' => $this->course_obj->getCourseStartTimeIndication() ? 1 : 0]);
311  $this->xmlElement(
312  'Start',
313  null,
314  $this->course_obj->getCourseStart()
315  ? $this->course_obj->getCourseStart()->get(IL_CAL_UNIX)
316  : null
317  );
318  $this->xmlElement(
319  'End',
320  null,
321  $this->course_obj->getCourseEnd()
322  ? $this->course_obj->getCourseEnd()->get(IL_CAL_UNIX)
323  : null
324  );
325  $this->xmlEndTag('Period');
326  $this->xmlElement('WaitingListAutoFill', null, (int) $this->course_obj->hasWaitingListAutoFill());
327  $this->xmlElement(
328  'CancellationEnd',
329  null,
330  ($this->course_obj->getCancellationEnd() && !$this->course_obj->getCancellationEnd()->isNull()) ? $this->course_obj->getCancellationEnd()->get(IL_CAL_UNIX) : null
331  );
332  $this->xmlElement('MinMembers', null, $this->course_obj->getSubscriptionMinMembers());
333 
334  $this->xmlElement('ViewMode', null, $this->course_obj->getViewMode());
335  if ($this->course_obj->getViewMode() == ilCourseConstants::IL_CRS_VIEW_TIMING) {
336  $this->xmlElement('TimingMode', null, $this->course_obj->getTimingMode());
337  }
338 
339  $this->xmlElement(
340  'SessionLimit',
341  [
342  'active' => $this->course_obj->isSessionLimitEnabled() ? 1 : 0,
343  'previous' => $this->course_obj->getNumberOfPreviousSessions(),
344  'next' => $this->course_obj->getNumberOfNextSessions()
345  ]
346  );
347 
348  $this->xmlElement(
349  'WelcomeMail',
350  [
351  'status' => $this->course_obj->getAutoNotification() ? 1 : 0
352  ]
353  );
354 
355  $this->xmlElement('StatusDetermination', null, (int) $this->course_obj->getStatusDetermination());
356  $this->xmlElement('MailToMembersType', null, (int) $this->course_obj->getMailToMembersType());
357  $this->xmlElement('CourseMap', [
358  'enabled' => (int) $this->course_obj->getEnableCourseMap(),
359  'latitude' => $this->course_obj->getLatitude(),
360  'longitude' => $this->course_obj->getLongitude(),
361  'location_zoom' => $this->course_obj->getLocationZoom()
362  ]);
363 
364  $this->xmlEndTag('Settings');
365  }
const IL_CAL_UNIX
xmlEndTag(string $tag)
Writes an endtag.
xmlStartTag(string $tag, ?array $attrs=null, bool $empty=false, bool $encode=true, bool $escape=true)
Writes a starttag.
xmlElement(string $tag, $attrs=null, $data=null, $encode=true, $escape=true)
Writes a basic element (no children, just textual content)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __buildSubscriber()

ilCourseXMLWriter::__buildSubscriber ( )

Definition at line 200 of file class.ilCourseXMLWriter.php.

References $data, $id, ILIAS\Repository\access(), ilOrgUnitOperation\OP_MANAGE_MEMBERS, ilXmlWriter\xmlEndTag(), and ilXmlWriter\xmlStartTag().

Referenced by start().

200  : void
201  {
202  $subs = $this->course_obj->getMembersObject()->getSubscribers();
203  $subs = $this->access->filterUserIdsByRbacOrPositionOfCurrentUser(
204  'manage_members',
206  $this->course_obj->getRefId(),
207  $subs
208  );
209 
210  foreach ($subs as $id) {
211  $data = $this->course_obj->getMembersObject()->getSubscriberData($id);
212 
213  $attr['id'] = 'il_' . $this->setting->get('inst_id') . '_usr_' . $id;
214  $attr['subscriptionTime'] = $data['time'];
215 
216  $this->xmlStartTag('Subscriber', $attr);
217  $this->xmlEndTag('Subscriber');
218  }
219  }
xmlEndTag(string $tag)
Writes an endtag.
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
Definition: plugin.php:23
xmlStartTag(string $tag, ?array $attrs=null, bool $empty=false, bool $encode=true, bool $escape=true)
Writes a starttag.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __buildTutor()

ilCourseXMLWriter::__buildTutor ( )

Definition at line 161 of file class.ilCourseXMLWriter.php.

References $id, ILIAS\Repository\access(), ilOrgUnitOperation\OP_MANAGE_MEMBERS, ilXmlWriter\xmlEndTag(), and ilXmlWriter\xmlStartTag().

Referenced by start().

161  : void
162  {
163  $tutors = $this->course_obj->getMembersObject()->getTutors();
164  $tutors = $this->access->filterUserIdsByRbacOrPositionOfCurrentUser(
165  'manage_members',
167  $this->course_obj->getRefId(),
168  $tutors
169  );
170  foreach ($tutors as $id) {
171  $attr['id'] = 'il_' . $this->setting->get('inst_id') . '_usr_' . $id;
172  $attr['notification'] = ($this->course_obj->getMembersObject()->isNotificationEnabled($id)) ? 'Yes' : 'No';
173  $attr['passed'] = $this->course_obj->getMembersObject()->hasPassed($id) ? 'Yes' : 'No';
174  $attr['contact'] = $this->course_obj->getMembersObject()->isContact($id) ? 'Yes' : 'No';
175 
176  $this->xmlStartTag('Tutor', $attr);
177  $this->xmlEndTag('Tutor');
178  }
179  }
xmlEndTag(string $tag)
Writes an endtag.
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
Definition: plugin.php:23
xmlStartTag(string $tag, ?array $attrs=null, bool $empty=false, bool $encode=true, bool $escape=true)
Writes a starttag.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __buildWaitingList()

ilCourseXMLWriter::__buildWaitingList ( )

Definition at line 221 of file class.ilCourseXMLWriter.php.

References $data, $GLOBALS, ilWaitingList\getAllUsers(), ilOrgUnitOperation\OP_MANAGE_MEMBERS, ilXmlWriter\xmlEndTag(), and ilXmlWriter\xmlStartTag().

Referenced by start().

221  : void
222  {
223  $waiting_list = new ilCourseWaitingList($this->course_obj->getId());
224  $wait = $waiting_list->getAllUsers();
225  foreach ($wait as $data) {
226  $is_accessible = $GLOBALS['DIC']->access()->filterUserIdsByRbacOrPositionOfCurrentUser(
227  'manage_members',
229  $this->course_obj->getRefId(),
230  [$data['usr_id']]
231  );
232  if (count($is_accessible) === 0) {
233  continue;
234  }
235 
236  $attr['id'] = 'il_' . $this->setting->get('inst_id') . '_usr_' . $data['usr_id'];
237  $attr['position'] = $data['position'];
238  $attr['subscriptionTime'] = $data['time'];
239 
240  $this->xmlStartTag('WaitingList', $attr);
241  $this->xmlEndTag('WaitingList');
242  }
243  }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
xmlEndTag(string $tag)
Writes an endtag.
getAllUsers()
get all users on waiting list public
if(!defined('PATH_SEPARATOR')) $GLOBALS['_PEAR_default_error_mode']
Definition: PEAR.php:64
xmlStartTag(string $tag, ?array $attrs=null, bool $empty=false, bool $encode=true, bool $escape=true)
Writes a starttag.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getMode()

ilCourseXMLWriter::getMode ( )

Definition at line 63 of file class.ilCourseXMLWriter.php.

References $mode.

Referenced by start().

63  : int
64  {
65  return $this->mode;
66  }
+ Here is the caller graph for this function:

◆ getXML()

ilCourseXMLWriter::getXML ( )

Definition at line 98 of file class.ilCourseXMLWriter.php.

References ilXmlWriter\xmlDumpMem().

98  : string
99  {
100  return $this->xmlDumpMem(true);
101  }
xmlDumpMem(bool $format=true)
Returns xml document from memory.
+ Here is the call graph for this function:

◆ modifyExportIdentifier()

ilCourseXMLWriter::modifyExportIdentifier (   $a_tag,
  $a_param,
  $a_value 
)

Definition at line 103 of file class.ilCourseXMLWriter.php.

104  {
105  if ($a_tag == "Identifier" && $a_param == "Entry") {
106  $a_value = "il_" . $this->setting->get('inst_id') . "_crs_" . $this->course_obj->getId();
107  }
108 
109  return $a_value;
110  }

◆ setAttachUsers()

ilCourseXMLWriter::setAttachUsers (   $value)

Definition at line 372 of file class.ilCourseXMLWriter.php.

372  : void
373  {
374  $this->attach_users = (bool) $value;
375  }

◆ setMode()

ilCourseXMLWriter::setMode ( int  $a_mode)

Definition at line 58 of file class.ilCourseXMLWriter.php.

58  : void
59  {
60  $this->mode = $a_mode;
61  }

◆ start()

ilCourseXMLWriter::start ( )

Definition at line 68 of file class.ilCourseXMLWriter.php.

References __buildAdmin(), __buildAdvancedMetaData(), __buildCourseStart(), __buildFooter(), __buildHeader(), __buildMember(), __buildMetaData(), __buildSetting(), __buildSubscriber(), __buildTutor(), __buildWaitingList(), ilContainer\_exportContainerSettings(), ilContainerSortingSettings\_exportContainerSortingSettings(), and getMode().

68  : void
69  {
70  if ($this->getMode() == self::MODE_SOAP) {
71  $this->__buildHeader();
72  $this->__buildCourseStart();
73  $this->__buildMetaData();
74  $this->__buildAdvancedMetaData();
75  if ($this->attach_users) {
76  $this->__buildAdmin();
77  $this->__buildTutor();
78  $this->__buildMember();
79  }
80  $this->__buildSubscriber();
81  $this->__buildWaitingList();
82 
83  $this->__buildSetting();
84  ilContainerSortingSettings::_exportContainerSortingSettings($this, $this->course_obj->getId());
85  ilContainer::_exportContainerSettings($this, $this->course_obj->getId());
86  $this->__buildFooter();
87  } elseif ($this->getMode() == self::MODE_EXPORT) {
88  $this->__buildCourseStart();
89  $this->__buildMetaData();
90  $this->__buildAdvancedMetaData();
91  $this->__buildSetting();
92  ilContainerSortingSettings::_exportContainerSortingSettings($this, $this->course_obj->getId());
93  ilContainer::_exportContainerSettings($this, $this->course_obj->getId());
94  $this->__buildFooter();
95  }
96  }
static _exportContainerSortingSettings(ilXmlWriter $xml, int $obj_id)
sorting XML-export for all container objects
static _exportContainerSettings(ilXmlWriter $a_xml, int $a_obj_id)
+ Here is the call graph for this function:

Field Documentation

◆ $access

ilAccessHandler ilCourseXMLWriter::$access
protected

Definition at line 45 of file class.ilCourseXMLWriter.php.

◆ $attach_users

bool ilCourseXMLWriter::$attach_users = true
private

Definition at line 42 of file class.ilCourseXMLWriter.php.

◆ $course_obj

ilObjCourse ilCourseXMLWriter::$course_obj
private

Definition at line 41 of file class.ilCourseXMLWriter.php.

Referenced by __construct().

◆ $mode

int ilCourseXMLWriter::$mode = self::MODE_SOAP
private

Definition at line 38 of file class.ilCourseXMLWriter.php.

Referenced by getMode().

◆ $setting

ilSetting ilCourseXMLWriter::$setting
protected

Definition at line 44 of file class.ilCourseXMLWriter.php.

◆ $xml

string ilCourseXMLWriter::$xml = ''
private

Definition at line 40 of file class.ilCourseXMLWriter.php.

◆ EXPORT_VERSION

const ilCourseXMLWriter::EXPORT_VERSION = '8.0'

Definition at line 36 of file class.ilCourseXMLWriter.php.

◆ MODE_EXPORT

const ilCourseXMLWriter::MODE_EXPORT = 2

Definition at line 34 of file class.ilCourseXMLWriter.php.

Referenced by ilCourseExporter\getXmlRepresentation().

◆ MODE_SOAP

const ilCourseXMLWriter::MODE_SOAP = 1

Definition at line 33 of file class.ilCourseXMLWriter.php.


The documentation for this class was generated from the following file: