aboutsummaryrefslogtreecommitdiffstats
path: root/ntuceiba/toxml.py
diff options
context:
space:
mode:
Diffstat (limited to 'ntuceiba/toxml.py')
-rw-r--r--ntuceiba/toxml.py70
1 files changed, 70 insertions, 0 deletions
diff --git a/ntuceiba/toxml.py b/ntuceiba/toxml.py
new file mode 100644
index 0000000..4417f15
--- /dev/null
+++ b/ntuceiba/toxml.py
@@ -0,0 +1,70 @@
+#!/usr/bin/env python
+# -*- coding: UTF-8 -*-
+
+from ntuceiba import NtuCeibaEvent
+from datetime import datetime
+from lxml import etree
+
+def XMLBuildNtuCaibaEvent(eleobj, cbobj):
+ newdata = etree.SubElement(eleobj, 'title')
+ newdata.text = cbobj.title
+ newdata = etree.SubElement(eleobj, 'member')
+ newdata.text = cbobj.member
+ newdata = etree.SubElement(eleobj, 'method')
+ newdata.text = cbobj.method
+ newdata = etree.SubElement(eleobj, 'percent')
+ newdata.text = cbobj.percent
+ newdata = etree.SubElement(eleobj, 'late')
+ newdata.text = str(cbobj.late)
+ newdate = etree.SubElement(eleobj, 'comment')
+ newdata.text = cbobj.comment
+ newdata = etree.SubElement(eleobj, 'red')
+ newdata.text = str(cbobj.red)
+
+ if(cbobj.duedate == None):
+ newdata = etree.SubElement(eleobj, 'dueyear')
+ newdata.text = ""
+ newdata = etree.SubElement(eleobj, 'duemonth')
+ newdata.text = ""
+ newdata = etree.SubElement(eleobj, 'duedate')
+ newdata.text = ""
+ newdata = etree.SubElement(eleobj, 'duehour')
+ newdata.text = ""
+ else:
+ newdata = etree.SubElement(eleobj, 'dueyear')
+ newdata.text = str(cbobj.duedate.year)
+ newdata = etree.SubElement(eleobj, 'duemonth')
+ newdata.text = str(cbobj.duedate.month)
+ newdata = etree.SubElement(eleobj, 'duedate')
+ newdata.text = str(cbobj.duedate.day)
+ newdata = etree.SubElement(eleobj, 'duehour')
+ newdata.text = str(cbobj.duedate.hour)
+
+ if(cbobj.subdate == None):
+ newdata = etree.SubElement(eleobj, 'subyear')
+ newdata.text = ""
+ newdata = etree.SubElement(eleobj, 'submonth')
+ newdata.text = ""
+ newdata = etree.SubElement(eleobj, 'subdate')
+ newdata.text = ""
+ newdata = etree.SubElement(eleobj, 'subhour')
+ newdata.text = ""
+ else:
+ newdata = etree.SubElement(eleobj, 'subyear')
+ newdata.text = str(cbobj.duedate.year)
+ newdata = etree.SubElement(eleobj, 'submonth')
+ newdata.text = str(cbobj.duedate.month)
+ newdata = etree.SubElement(eleobj, 'subdate')
+ newdata.text = str(cbobj.duedate.day)
+ newdata = etree.SubElement(eleobj, 'subhour')
+ newdata.text = str(cbobj.duedate.hour)
+
+
+def ntuceiba_toxml(listobj):
+ xmlroot = etree.Element('ntuceiba')
+ for entry in listobj:
+ newevt = etree.SubElement(xmlroot, 'ncevent')
+ XMLBuildNtuCaibaEvent(newevt, entry)
+
+ return etree.tostring(xmlroot, xml_declaration=True, encoding='UTF-8')
+