Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
E
edx-ora2
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-ora2
Commits
17cdf6a6
Commit
17cdf6a6
authored
Dec 22, 2014
by
Usman Khalid
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Updates to studio_mixin
TNL-708
parent
94fe8e3a
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
16 additions
and
6 deletions
+16
-6
openassessment/xblock/schema.py
+5
-1
openassessment/xblock/studio_mixin.py
+6
-4
openassessment/xblock/validation.py
+5
-1
No files found.
openassessment/xblock/schema.py
View file @
17cdf6a6
...
...
@@ -66,7 +66,11 @@ VALID_ASSESSMENT_TYPES = [
# Schema definition for an update from the Studio JavaScript editor.
EDITOR_UPDATE_SCHEMA
=
Schema
({
Required
(
'prompt'
):
utf8_validator
,
Required
(
'prompts'
):
[
Schema
({
Required
(
'description'
):
utf8_validator
,
})
],
Required
(
'title'
):
utf8_validator
,
Required
(
'feedback_prompt'
):
utf8_validator
,
Required
(
'feedback_default_text'
):
utf8_validator
,
...
...
openassessment/xblock/studio_mixin.py
View file @
17cdf6a6
"""
Studio editing view for OpenAssessment XBlock.
"""
import
pkg_resources
import
copy
import
logging
import
pkg_resources
from
uuid
import
uuid4
from
django.template
import
Context
from
django.template.loader
import
get_template
from
voluptuous
import
MultipleInvalid
...
...
@@ -112,7 +114,7 @@ class StudioMixin(object):
feedback_default_text
=
DEFAULT_RUBRIC_FEEDBACK_TEXT
return
{
'prompt
'
:
self
.
prompt
,
'prompt
s'
:
self
.
prompts
,
'title'
:
self
.
title
,
'submission_due'
:
submission_due
,
'submission_start'
:
submission_start
,
...
...
@@ -192,7 +194,7 @@ class StudioMixin(object):
xblock_validator
=
validator
(
self
,
self
.
_
)
success
,
msg
=
xblock_validator
(
create_rubric_dict
(
data
[
'prompt'
],
data
[
'criteria'
]),
create_rubric_dict
(
data
[
'prompt
s
'
],
data
[
'criteria'
]),
data
[
'assessments'
],
submission_start
=
data
[
'submission_start'
],
submission_due
=
data
[
'submission_due'
],
...
...
@@ -205,7 +207,7 @@ class StudioMixin(object):
# so we can safely modify the XBlock fields.
self
.
title
=
data
[
'title'
]
self
.
display_name
=
data
[
'title'
]
self
.
prompt
=
data
[
'prompt
'
]
self
.
prompt
s
=
data
[
'prompts
'
]
self
.
rubric_criteria
=
data
[
'criteria'
]
self
.
rubric_assessments
=
data
[
'assessments'
]
self
.
editor_assessments_order
=
data
[
'editor_assessments_order'
]
...
...
openassessment/xblock/validation.py
View file @
17cdf6a6
...
...
@@ -214,6 +214,10 @@ def validate_rubric(rubric_dict, current_rubric, is_released, is_example_based,
# but nothing that would change the point value of a rubric.
if
is_released
:
# Number of prompts must be the same
if
len
(
rubric_dict
[
'prompts'
])
!=
len
(
current_rubric
[
'prompts'
]):
return
(
False
,
_
(
u'Prompts cannot be created or deleted after a problem is released.'
))
# Number of criteria must be the same
if
len
(
rubric_dict
[
'criteria'
])
!=
len
(
current_rubric
[
'criteria'
]):
return
(
False
,
_
(
u'The number of criteria cannot be changed after a problem is released.'
))
...
...
@@ -330,7 +334,7 @@ def validator(oa_block, _, strict_post_release=True):
# Rubric
is_example_based
=
'example-based-assessment'
in
[
asmnt
.
get
(
'name'
)
for
asmnt
in
assessments
]
current_rubric
=
{
'prompt
'
:
oa_block
.
prompt
,
'prompt
s'
:
oa_block
.
prompts
,
'criteria'
:
oa_block
.
rubric_criteria
}
success
,
msg
=
validate_rubric
(
rubric_dict
,
current_rubric
,
is_released
,
is_example_based
,
_
)
...
...
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