Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTony Anderson <tony@traveler.(none)>2011-01-15 16:20:34 (GMT)
committer Tony Anderson <tony@traveler.(none)>2011-01-15 16:20:34 (GMT)
commitdd479cbb0c93d39d219731b10e3a2f43945f2112 (patch)
treef79b5afae088d341555406f5d3a9c146707330a1
parent5a5439f1a3edcecce5ddebca16bb0b4db1a7cd4e (diff)
version 11.4
-rwxr-xr-xactivity/activity.info2
-rwxr-xr-xcgi-bin/activities.py20
-rwxr-xr-xcgi-bin/fetch_milestone.py20
-rwxr-xr-xcgi-bin/results.py3
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]