Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGonzalo Odiard <godiard@sugarlabs.org>2011-04-11 11:26:45 (GMT)
committer Gonzalo Odiard <godiard@sugarlabs.org>2011-04-11 11:26:45 (GMT)
commit5484a33ddb232a1072da5ca0a7110d6a70d34769 (patch)
treec71a6df5b24b23f16ef988bc910c1af425641b59
parent4d386900e9c7a23569a3181d2fd80fcbf1fc215c (diff)
Use lessons for the language in use if possible, use en_US if not.
-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):