implement 'setup modes' (simple, intermediate, expert)
[enigma2.git] / lib / python / Components / Timezones.py
index ccc982797e8c466b521362ce9c2145c98d4a2ba2..d9edfec5fdffd553648486d16d0fb8fbeafc9863 100644 (file)
@@ -1,7 +1,7 @@
 from xml.sax import make_parser
 from xml.sax.handler import ContentHandler
 
-import os
+from os import environ, unlink, symlink
 import time
 
 class Timezones:
@@ -36,7 +36,12 @@ class Timezones:
                if len(self.timezones) <= index:
                        return
                
-               os.environ['TZ'] = self.timezones[index][1]
+               environ['TZ'] = self.timezones[index][1]
+               try:
+                       unlink("/etc/localtime")
+               except OSError:
+                       pass
+               symlink("/usr/share/zoneinfo/%s" %(self.timezones[index][1]), "/etc/localtime")
                try:
                        time.tzset()
                except:
@@ -51,6 +56,10 @@ class Timezones:
        
        def getDefaultTimezone(self):
                # TODO return something more useful - depending on country-settings?
-               return "(GMT+01:00) Amsterdam, Berlin, Bern, Rome, Vienna"
+               t = "(GMT+01:00) Amsterdam, Berlin, Bern, Rome, Vienna"
+               for (a,b) in self.timezones:
+                       if a == t:
+                               return a
+               return self.timezones[0][0]
 
 timezones = Timezones()