diff options
author | Gonzalo Odiard <godiard@sugarlabs.org> | 2011-04-11 11:26:45 (GMT) |
---|---|---|
committer | Gonzalo Odiard <godiard@sugarlabs.org> | 2011-04-11 11:26:45 (GMT) |
commit | 5484a33ddb232a1072da5ca0a7110d6a70d34769 (patch) | |
tree | c71a6df5b24b23f16ef988bc910c1af425641b59 | |
parent | 4d386900e9c7a23569a3181d2fd80fcbf1fc215c (diff) |
Use lessons for the language in use if possible, use en_US if not.
-rw-r--r-- | mainscreen.py | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/mainscreen.py b/mainscreen.py index 8a63ede..2762baf 100644 --- a/mainscreen.py +++ b/mainscreen.py @@ -78,12 +78,18 @@ class MainScreen(gtk.VBox): # Load lessons for this language. code = locale.getdefaultlocale()[0] or 'en_US' - try: - self.load_lessons('lessons/' + code + '.lessons') - - except: - # Fallback to en_US lessons if none found. - self.load_lessons('lessons/en_US.lessons') + lessons_path = os.path.join(sugar.activity.activity.get_bundle_path(), 'lessons') + lessons_file = os.path.join(lessons_path, code + '.lessons') + if os.path.isfile(lessons_file): + self.load_lessons(lessons_file) + else: + code = code[0:2] + lessons_file = os.path.join(lessons_path, code + '.lessons') + if os.path.isfile(lessons_file): + self.load_lessons(lessons_file) + else: + # Fallback to en_US lessons if none found. + self.load_lessons('lessons/en_US.lessons') # We cannot run without lessons. if not len(self.lessons): |