Commit cd764d3d by Vik Paruchuri

Modify self-assessment to not be an xmodule

parent e975174d
...@@ -43,7 +43,7 @@ class CombinedOpenEndedModule(XModule): ...@@ -43,7 +43,7 @@ class CombinedOpenEndedModule(XModule):
TASK_TYPES=["self", "ml", "instructor", "peer"] TASK_TYPES=["self", "ml", "instructor", "peer"]
js = {'coffee': [resource_string(__name__, 'js/src/selfassessment/display.coffee')]} js = {'coffee': [resource_string(__name__, 'js/src/selfassessment/display.coffee')]}
js_module_name = "CombinedOpenEnded" js_module_name = "SelfAssessment"
def __init__(self, system, location, definition, descriptor, def __init__(self, system, location, definition, descriptor,
instance_state=None, shared_state=None, **kwargs): instance_state=None, shared_state=None, **kwargs):
...@@ -111,7 +111,7 @@ class CombinedOpenEndedModule(XModule): ...@@ -111,7 +111,7 @@ class CombinedOpenEndedModule(XModule):
return rewrite_links(html, self.rewrite_content_links) return rewrite_links(html, self.rewrite_content_links)
def handle_ajax(self, dispatch, get): def handle_ajax(self, dispatch, get):
return self.current_task.handle_ajax(dispatch,get) return self.current_task.handle_ajax(dispatch,get, self.system)
class CombinedOpenEndedDescriptor(XmlDescriptor, EditingDescriptor): class CombinedOpenEndedDescriptor(XmlDescriptor, EditingDescriptor):
""" """
......
...@@ -233,8 +233,8 @@ class SelfAssessmentModule(): ...@@ -233,8 +233,8 @@ class SelfAssessmentModule():
'prompt': self.prompt, 'prompt': self.prompt,
'previous_answer': previous_answer, 'previous_answer': previous_answer,
'ajax_url': system.ajax_url, 'ajax_url': system.ajax_url,
'initial_rubric': self.get_rubric_html(), 'initial_rubric': self.get_rubric_html(system),
'initial_hint': self.get_hint_html(), 'initial_hint': self.get_hint_html(system),
'initial_message': self.get_message_html(), 'initial_message': self.get_message_html(),
'state': self.state, 'state': self.state,
'allow_reset': self._allow_reset(), 'allow_reset': self._allow_reset(),
...@@ -270,7 +270,7 @@ class SelfAssessmentModule(): ...@@ -270,7 +270,7 @@ class SelfAssessmentModule():
return None return None
def handle_ajax(self, dispatch, get): def handle_ajax(self, dispatch, get, system):
""" """
This is called by courseware.module_render, to handle an AJAX call. This is called by courseware.module_render, to handle an AJAX call.
"get" is request.POST. "get" is request.POST.
...@@ -292,7 +292,7 @@ class SelfAssessmentModule(): ...@@ -292,7 +292,7 @@ class SelfAssessmentModule():
return 'Error' return 'Error'
before = self.get_progress() before = self.get_progress()
d = handlers[dispatch](get) d = handlers[dispatch](get, system)
after = self.get_progress() after = self.get_progress()
d.update({ d.update({
'progress_changed': after != before, 'progress_changed': after != before,
...@@ -309,7 +309,7 @@ class SelfAssessmentModule(): ...@@ -309,7 +309,7 @@ class SelfAssessmentModule():
return {'success': False, return {'success': False,
'error': 'The problem state got out-of-sync'} 'error': 'The problem state got out-of-sync'}
def get_rubric_html(self): def get_rubric_html(self,system):
""" """
Return the appropriate version of the rubric, based on the state. Return the appropriate version of the rubric, based on the state.
""" """
...@@ -328,9 +328,9 @@ class SelfAssessmentModule(): ...@@ -328,9 +328,9 @@ class SelfAssessmentModule():
else: else:
raise ValueError("Illegal state '%r'" % self.state) raise ValueError("Illegal state '%r'" % self.state)
return self.system.render_template('self_assessment_rubric.html', context) return system.render_template('self_assessment_rubric.html', context)
def get_hint_html(self): def get_hint_html(self,system):
""" """
Return the appropriate version of the hint view, based on state. Return the appropriate version of the hint view, based on state.
""" """
...@@ -354,7 +354,7 @@ class SelfAssessmentModule(): ...@@ -354,7 +354,7 @@ class SelfAssessmentModule():
else: else:
raise ValueError("Illegal state '%r'" % self.state) raise ValueError("Illegal state '%r'" % self.state)
return self.system.render_template('self_assessment_hint.html', context) return system.render_template('self_assessment_hint.html', context)
def get_message_html(self): def get_message_html(self):
""" """
...@@ -366,7 +366,7 @@ class SelfAssessmentModule(): ...@@ -366,7 +366,7 @@ class SelfAssessmentModule():
return """<div class="save_message">{0}</div>""".format(self.submit_message) return """<div class="save_message">{0}</div>""".format(self.submit_message)
def save_answer(self, get): def save_answer(self, get, system):
""" """
After the answer is submitted, show the rubric. After the answer is submitted, show the rubric.
...@@ -397,10 +397,10 @@ class SelfAssessmentModule(): ...@@ -397,10 +397,10 @@ class SelfAssessmentModule():
return { return {
'success': True, 'success': True,
'rubric_html': self.get_rubric_html() 'rubric_html': self.get_rubric_html(system)
} }
def save_assessment(self, get): def save_assessment(self, get, system):
""" """
Save the assessment. If the student said they're right, don't ask for a Save the assessment. If the student said they're right, don't ask for a
hint, and go straight to the done state. Otherwise, do ask for a hint. hint, and go straight to the done state. Otherwise, do ask for a hint.
...@@ -433,13 +433,13 @@ class SelfAssessmentModule(): ...@@ -433,13 +433,13 @@ class SelfAssessmentModule():
d['allow_reset'] = self._allow_reset() d['allow_reset'] = self._allow_reset()
else: else:
self.change_state(self.REQUEST_HINT) self.change_state(self.REQUEST_HINT)
d['hint_html'] = self.get_hint_html() d['hint_html'] = self.get_hint_html(system)
d['state'] = self.state d['state'] = self.state
return d return d
def save_hint(self, get): def save_hint(self, get, system):
''' '''
Save the hint. Save the hint.
Returns a dict { 'success': bool, Returns a dict { 'success': bool,
...@@ -465,7 +465,6 @@ class SelfAssessmentModule(): ...@@ -465,7 +465,6 @@ class SelfAssessmentModule():
'history': self.history, 'history': self.history,
} }
} }
self.system.track_function('save_hint', event_info)
return {'success': True, return {'success': True,
'message_html': self.get_message_html(), 'message_html': self.get_message_html(),
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment