File: /var/www/html/unitime/Documentation/Scripts/Export Course Offerings.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE scripts PUBLIC "-//UniTime//DTD University Course Timetabling/EN" "http://www.unitime.org/interface/Script.dtd">
<!--
* Licensed to The Apereo Foundation under one or more contributor license
* agreements. See the NOTICE file distributed with this work for
* additional information regarding copyright ownership.
*
* The Apereo Foundation licenses this file to you under the Apache License,
* Version 2.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
*
* See the License for the specific language governing permissions and
* limitations under the License.
*
-->
<script name="Export Course Offerings" permission="Data Exchange" engine="ECMAScript" created="Fri Nov 16 10:24:23 CET 2018">
<description><![CDATA[This script export course offerings for the selected subjects.]]></description>
<parameter name="exportAssignments" label="Export Assignments" type="boolean" default="true"/>
<parameter name="exportExams" label="Export Exams" type="enum(all,final,midterm,none)" default="none"/>
<parameter name="subjects" label="Subject Areas" type="Subjects"/>
<body><![CDATA[var exp = new org.unitime.timetable.dataexchange.CourseOfferingExport();
var doc = org.dom4j.DocumentHelper.createDocument();
var ids = null;
if (subjects) {
for (var i = subjects.iterator(); i.hasNext(); ) {
var subject = i.next();
if (ids)
ids += "," + subject.getUniqueId();
else
ids = subject.getUniqueId().toString();
}
}
var properties = new java.util.Properties();
properties.setProperty("tmtbl.export.timetable", (exportAssignments ? "true" : "false"));
properties.setProperty("tmtbl.export.exam", "false");
properties.setProperty("tmtbl.export.exam.type", exportExams);
log.info("Subjects:" + ids);
if (ids != null)
properties.setProperty("tmtbl.export.subjects", ids);
exp.saveXml(doc, session, properties);
var fos = new java.io.FileOutputStream(log.createOutput('offerings', 'xml'));
var writer = new org.dom4j.io.XMLWriter(fos, org.dom4j.io.OutputFormat.createPrettyPrint());
writer.write(doc);
fos.flush();
fos.close();]]></body>
</script>