Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/mainscreen.py
diff options
context:
space:
mode:
Diffstat (limited to 'mainscreen.py')
-rw-r--r--mainscreen.py18
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):