1 from xml.sax import make_parser
2 from xml.sax.handler import ContentHandler
8 class parseTimezones(ContentHandler):
9 def __init__(self, timezones):
10 self.isPointsElement, self.isReboundsElement = 0, 0
11 self.timezones = timezones
13 def startElement(self, name, attrs):
15 self.timezones.append((attrs.get('name',""), attrs.get('zone',"")))
20 self.readTimezonesFromFile()
22 def readTimezonesFromFile(self):
23 parser = make_parser()
24 timezonesHandler = self.parseTimezones(self.timezones)
25 parser.setContentHandler(timezonesHandler)
26 parser.parse('/etc/timezone.xml')
28 def activateTimezone(self, index):
29 os.environ['TZ'] = self.timezones[index][1]
30 # FIXME we need a tzset
33 def getTimezoneList(self):
35 for x in self.timezones:
36 list.append(str(x[0]))
39 def getDefaultTimezone(self):
40 # TODO return something more useful - depending on country-settings?
43 timezones = Timezones()