diff options
author | Tony Anderson <tony@traveler.(none)> | 2011-01-15 16:20:34 (GMT) |
---|---|---|
committer | Tony Anderson <tony@traveler.(none)> | 2011-01-15 16:20:34 (GMT) |
commit | dd479cbb0c93d39d219731b10e3a2f43945f2112 (patch) | |
tree | f79b5afae088d341555406f5d3a9c146707330a1 | |
parent | 5a5439f1a3edcecce5ddebca16bb0b4db1a7cd4e (diff) |
version 11.4
-rwxr-xr-x | activity/activity.info | 2 | ||||
-rwxr-xr-x | cgi-bin/activities.py | 20 | ||||
-rwxr-xr-x | cgi-bin/fetch_milestone.py | 20 | ||||
-rwxr-xr-x | cgi-bin/results.py | 3 |
4 files changed, 26 insertions, 19 deletions
diff --git a/activity/activity.info b/activity/activity.info index c377280..92f4a9b 100755 --- a/activity/activity.info +++ b/activity/activity.info @@ -1,5 +1,5 @@ [Activity] -#version = 11.3 +#version = 11.4 name = Learn service_name = org.olerwanda.Learn icon = activity-learn diff --git a/cgi-bin/activities.py b/cgi-bin/activities.py index 959eb3a..13b5f99 100755 --- a/cgi-bin/activities.py +++ b/cgi-bin/activities.py @@ -31,7 +31,7 @@ def sftp(script, folder = None): subprocess.call(cmd, shell=True) return 0 -def getNick() +def getNick(): nickname = 'Funknown' pth = path('/home') / 'olpc' / '.sugar' / 'default' / 'config' if pth.exists(): @@ -42,7 +42,7 @@ def getNick() for line in lines: if line.find('nickname') > -1: pos = line.find('=') - self.nickname = line[pos+1:].strip() + nickname = line[pos+1:].strip() return nickname def getInstalled(subject): @@ -54,12 +54,12 @@ def getInstalled(subject): milestones.remove('karma') return milestones -def getEntries(subject, milestone): +def getEntries(subject, grade, milestone): pth = path('content') /subject if len(milestone) > 0: fpth = pth / milestone / 'activities.js' else: - fpth = pth / 'activities.js' + fpth = pth / 'activities_'+grade+'.js' fin = open(fpth,'r') txt = fin.read() fin.close() @@ -78,7 +78,7 @@ def setEntries(subject, grade, milestone, entries): if len(milestone) > 0: fpth = pth / milestone / 'activities.js' else: - fpth = pth / 'activities.js' + fpth = pth / 'activities_'+grade+'.js' fin = open(fpth,'r') txt = fin.read() fin.close() @@ -89,17 +89,17 @@ def setEntries(subject, grade, milestone, entries): fout = open(fpth,'w') fout.write(txtout) fout.close() - if grade > 0: - fout = open(pth /milestone / 'activities_'+grade+'.js','w') + if len(milestone) < 1 and pth / 'activities.js'.exists(): + fout = open(pth / 'activities.js','w') fout.write(txtout) fout.close() -def getMilestones(subject): - milestones = getEntries(subject, "") +def getMilestones(subject, grade): + milestones = getEntries(subject,grade, "") return milestones def getActivities(subject, milestone): - activities = getEntries(subject, milestone) + activities = getEntries(subject, 0, milestone) return activities def setMilestones(subject, grade, milestones): diff --git a/cgi-bin/fetch_milestone.py b/cgi-bin/fetch_milestone.py index 836165c..4062e32 100755 --- a/cgi-bin/fetch_milestone.py +++ b/cgi-bin/fetch_milestone.py @@ -44,21 +44,21 @@ def process_milestones(subject, grade, current_ms): initialFlag = False if not current_milestone in installed: fetchMilestone(subject, grade, current_milestone) - milestones = getMilestones(subject) + milestones = getMilestones(subject, grade) for milestone in milestones: if milestone[4] == current_milestone: milestone[5] = 'blue' setMilestones(subject,grade,milestones) if not next_milestone in installed: fetchMilestone(subject, grade, next_milestone) - milestones = getMilestones(subject) + milestones = getMilestones(subject, grade) for milestone in milestones: if milestone[4] == next_milestone: milestone[5] = 'blue' setMilestones(subject,grade,milestones) if initialFlag and not mode == 'faculty': #mark first milestone and first activity red - milestones = getMilestones(subject) + milestones = getMilestones(subject, grade) entry = milestones[0] entry[5] = 'red' milestone = entry[4] @@ -96,12 +96,12 @@ def process_student(student,student_record): process_milestones('Mathematics',grade, current_ms) def setColor(subject, grade, milestone, color): - milestones = getMilestones(subject) + milestones = getMilestones(subject, grade) for ms in milestones: if ms[4] == milestone: ms[5] = color setMilestones(subject, grade, milestones) - milestones = getMilestones(subject, grade = grade) + milestones = getMilestones(subject, grade) for ms in milestones: if ms[4] == milestone: ms[5] = color @@ -122,8 +122,14 @@ def process_faculty(): subject = 'Mathematics' grade = sbj[2:] milestone = form.getfirst('milestone', default = "") - fetchMilestone(subject,grade,milestone) - setColor(subject, grade, milestone, 'blue') + try: + fetchMilestone(subject,grade,milestone) + except: + print >> log, 'fetchMilestone failed',sys.exc_info()[:2] + try: + setColor(subject, grade, milestone, 'blue') + except: + print >> log, 'setColor failed', sys.exc_info()[:2] #main # diff --git a/cgi-bin/results.py b/cgi-bin/results.py index 83db249..0293d43 100755 --- a/cgi-bin/results.py +++ b/cgi-bin/results.py @@ -43,6 +43,7 @@ if len(score) > 0 and len(subject) > 0 and len(milestone) >0 and len(activity) > stoptime = str(int(time.time())) result = score #make next activity the current activity - use student record + grade = student_record['grade'] mss = student_record['milestones'] if subject == 'English': msstate = mss[0] @@ -51,7 +52,7 @@ if len(score) > 0 and len(subject) > 0 and len(milestone) >0 and len(activity) > temp = msstate.split('.') active_milestone = int(temp[0])-1 active_activity = int(temp[1])-1 - milestones = getMilestones(subject) + milestones = getMilestones(subject, grade) activities = getActivities(subject, milestones[active_milestone][4]) activities[active_activity][5] = 'green' print >> log,'set ',active_activity,activities[active_activity] |