Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
E
edx-platform
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
edx
edx-platform
Commits
867deae6
Commit
867deae6
authored
Dec 28, 2012
by
Vik Paruchuri
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Bugfixes
parent
0be51cfa
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
24 additions
and
7 deletions
+24
-7
common/lib/xmodule/xmodule/combined_open_ended_module.py
+24
-7
No files found.
common/lib/xmodule/xmodule/combined_open_ended_module.py
View file @
867deae6
...
@@ -38,6 +38,7 @@ class CombinedOpenEndedModule(XModule):
...
@@ -38,6 +38,7 @@ class CombinedOpenEndedModule(XModule):
# states
# states
INITIAL
=
'initial'
INITIAL
=
'initial'
ASSESSING
=
'assessing'
ASSESSING
=
'assessing'
INTERMEDIATE_DONE
=
'intermediate_done'
DONE
=
'done'
DONE
=
'done'
TASK_TYPES
=
[
"self"
,
"ml"
,
"instructor"
,
"peer"
]
TASK_TYPES
=
[
"self"
,
"ml"
,
"instructor"
,
"peer"
]
...
@@ -72,7 +73,8 @@ class CombinedOpenEndedModule(XModule):
...
@@ -72,7 +73,8 @@ class CombinedOpenEndedModule(XModule):
# None for any element, and score and hint can be None for the last (current)
# None for any element, and score and hint can be None for the last (current)
# element.
# element.
# Scores are on scale from 0 to max_score
# Scores are on scale from 0 to max_score
self
.
current_task
=
instance_state
.
get
(
'current_task'
,
0
)
self
.
current_task_number
=
instance_state
.
get
(
'current_task_number'
,
0
)
self
.
tasks
=
instance_state
.
get
(
'tasks'
,
[])
self
.
state
=
instance_state
.
get
(
'state'
,
'initial'
)
self
.
state
=
instance_state
.
get
(
'state'
,
'initial'
)
self
.
problems
=
instance_state
.
get
(
'problems'
,
[])
self
.
problems
=
instance_state
.
get
(
'problems'
,
[])
...
@@ -84,16 +86,31 @@ class CombinedOpenEndedModule(XModule):
...
@@ -84,16 +86,31 @@ class CombinedOpenEndedModule(XModule):
# completion (doesn't matter if you self-assessed correct/incorrect).
# completion (doesn't matter if you self-assessed correct/incorrect).
self
.
_max_score
=
int
(
self
.
metadata
.
get
(
'max_score'
,
MAX_SCORE
))
self
.
_max_score
=
int
(
self
.
metadata
.
get
(
'max_score'
,
MAX_SCORE
))
self
.
tasks
=
definition
[
'tasks'
]
self
.
task_xml
=
definition
[
'task_xml'
]
log
.
debug
(
self
.
tasks
)
self
.
setup_next_task
()
def
get_tag_name
(
self
,
xml
):
tag
=
etree
.
fromstring
(
xml
)
.
tag
return
tag
def
setup_next_task
(
self
):
def
setup_next_task
(
self
):
pass
if
self
.
state
in
[
self
.
ASSESSING
,
self
.
DONE
]:
self
.
current_task
=
self
.
tasks
[
len
(
self
.
tasks
)
-
1
]
return
True
self
.
current_task_xml
=
self
.
task_xml
[
self
.
current_task_number
]
current_task_type
=
self
.
get_tag_name
(
self
.
current_task_xml
)
if
current_task_type
==
"selfassessment"
:
self
.
current_task_descriptor
=
self_assessment_module
.
SelfAssessmentDescriptor
(
self
.
system
)
self
.
current_task_parsed_xml
=
self
.
current_task_descriptor
.
definition_from_xml
(
self
.
current_task_xml
,
self
.
system
)
self
.
current_task
=
self_assessment_module
.
SelfAssessmentModule
(
self
.
system
,
self
.
location
,
self
.
current_task_parsed_xml
,
self
.
current_task_descriptor
)
return
True
def
get_html
(
self
):
def
get_html
(
self
):
html
=
"<html><head></head><body></body></html>"
return
self
.
current_task
.
get_html
()
return
rewrite_links
(
html
,
self
.
rewrite_content_links
)
def
handle_ajax
(
self
,
dispatch
,
get
):
return
self
.
current_task
.
handle_ajax
(
dispatch
,
get
)
class
CombinedOpenEndedDescriptor
(
XmlDescriptor
,
EditingDescriptor
):
class
CombinedOpenEndedDescriptor
(
XmlDescriptor
,
EditingDescriptor
):
"""
"""
...
@@ -132,7 +149,7 @@ class CombinedOpenEndedDescriptor(XmlDescriptor, EditingDescriptor):
...
@@ -132,7 +149,7 @@ class CombinedOpenEndedDescriptor(XmlDescriptor, EditingDescriptor):
"""Assumes that xml_object has child k"""
"""Assumes that xml_object has child k"""
return
[
stringify_children
(
xml_object
.
xpath
(
k
)[
i
])
for
i
in
xrange
(
0
,
len
(
xml_object
.
xpath
(
k
)))]
return
[
stringify_children
(
xml_object
.
xpath
(
k
)[
i
])
for
i
in
xrange
(
0
,
len
(
xml_object
.
xpath
(
k
)))]
return
{
'task
s
'
:
parse
(
'task'
)}
return
{
'task
_xml
'
:
parse
(
'task'
)}
def
definition_to_xml
(
self
,
resource_fs
):
def
definition_to_xml
(
self
,
resource_fs
):
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment