Commit e84444c8 by Stephen Sanchez

Merge pull request #497 from edx/sanchez/allow_image_upload_editing

Wiring the Authoring GUI for allow image submissions
parents a61a5ca2 5be535fa
......@@ -92,7 +92,7 @@
<label for="openassessment_submission_image_editor" class="setting-label">{% trans "Allow Image Submissions"%}</label>
<select id="openassessment_submission_image_editor" class="input setting-input" name="image submission">
<option value="0">{% trans "Disabled"%}</option>
<option value="1">{% trans "Enabled"%}</option>
<option value="1" {% if allow_file_upload %} selected="true" {% endif %}>{% trans "Enabled"%}</option>
</select>
</div>
<p class="setting-help">{% trans "If enabled, students will be able to submit an image along with their open response." %}</p>
......
......@@ -63,6 +63,7 @@ EDITOR_UPDATE_SCHEMA = Schema({
Required('feedback_prompt'): utf8_validator,
Required('submission_start'): Any(datetime_validator, None),
Required('submission_due'): Any(datetime_validator, None),
Required('allow_file_upload'): bool,
Required('assessments'): [
Schema({
Required('name'): All(
......
......@@ -413,6 +413,7 @@ if (typeof OpenAssessment.Server == "undefined" || !OpenAssessment.Server) {
submissionDue (ISO-formatted datetime string or null): The date the submission is due.
criteria (list of object literals): The rubric criteria.
assessments (list of object literals): The assessments the student will be evaluated on.
imageSubmissionEnabled (boolean): TRUE if image attachments are allowed.
Returns:
A JQuery promise, which resolves with no arguments
......@@ -428,7 +429,8 @@ if (typeof OpenAssessment.Server == "undefined" || !OpenAssessment.Server) {
submission_start: kwargs.submissionStart,
submission_due: kwargs.submissionDue,
criteria: kwargs.criteria,
assessments: kwargs.assessments
assessments: kwargs.assessments,
allow_file_upload: kwargs.imageSubmissionEnabled
});
return $.Deferred(function(defer) {
$.ajax({
......
......@@ -202,7 +202,8 @@ OpenAssessment.StudioView.prototype = {
title: view.settingsView.displayName(),
submissionStart: view.settingsView.submissionStart(),
submissionDue: view.settingsView.submissionDue(),
assessments: view.settingsView.assessmentsDescription()
assessments: view.settingsView.assessmentsDescription(),
imageSubmissionEnabled: view.settingsView.imageSubmissionEnabled()
}).done(
// Notify the client-side runtime that we finished saving
// so it can hide the "Saving..." notification.
......
......@@ -97,7 +97,8 @@ class StudioMixin(object):
'criteria': criteria,
'feedbackprompt': self.rubric_feedback_prompt,
'unused_assessments': unused_assessments,
'used_assessments': used_assessments
'used_assessments': used_assessments,
'allow_file_upload': self.allow_file_upload
}
@XBlock.json_handler
......@@ -150,6 +151,7 @@ class StudioMixin(object):
self.rubric_feedback_prompt = data['feedback_prompt']
self.submission_start = data['submission_start']
self.submission_due = data['submission_due']
self.allow_file_upload = bool(data['allow_file_upload'])
return {'success': True, 'msg': _(u'Successfully updated OpenAssessment XBlock')}
......
......@@ -22,6 +22,7 @@
"submission_due": "4014-02-27T09:46:28",
"submission_start": "4014-02-10T09:46:28",
"title": "My new title.",
"allow_file_upload": false,
"assessments": [
{
"name": "peer-assessment",
......
......@@ -3,6 +3,7 @@
"prompt": "My new prompt.",
"title": "My new title.",
"feedback_prompt": "Feedback prompt",
"allow_file_upload": false,
"assessments": [
{
"name": "peer-assessment",
......@@ -23,6 +24,7 @@
"no_prompt": {
"feedback_prompt": "Feedback prompt",
"allow_file_upload": false,
"criteria": [
{
"order_num": 0,
......@@ -66,6 +68,7 @@
"no_feedback_prompt": {
"prompt": "Test prompt",
"allow_file_upload": false,
"criteria": [
{
"order_num": 0,
......@@ -110,6 +113,7 @@
"no_submission_due": {
"feedback_prompt": "Feedback prompt",
"prompt": "Test Prompt",
"allow_file_upload": false,
"criteria": [
{
"order_num": 0,
......@@ -153,6 +157,7 @@
"invalid_dates": {
"feedback_prompt": "Feedback prompt",
"prompt": "Test Prompt",
"allow_file_upload": false,
"criteria": [
{
"order_num": 0,
......@@ -198,6 +203,7 @@
"invalid_dates_two": {
"feedback_prompt": "Feedback prompt",
"prompt": "Test Prompt",
"allow_file_upload": false,
"criteria": [
{
"order_num": 0,
......@@ -243,6 +249,7 @@
"order_num_is_string": {
"feedback_prompt": "Feedback prompt",
"prompt": "Test Prompt",
"allow_file_upload": false,
"criteria": [
{
"order_num": "Hello",
......@@ -280,6 +287,7 @@
"feedback_missing": {
"feedback_prompt": "Feedback prompt",
"prompt": "Test Prompt",
"allow_file_upload": false,
"criteria": [
{
"order_num": 0,
......@@ -316,6 +324,7 @@
"criterion_not_a_dict": {
"feedback_prompt": "Feedback prompt",
"prompt": "prompty",
"allow_file_upload": false,
"criteria": [
[]
],
......@@ -334,6 +343,7 @@
"criteria_missing_keys": {
"feedback_prompt": "Feedback prompt",
"prompt": "Test Prompt",
"allow_file_upload": false,
"criteria": [
{
"order_num": 0,
......@@ -370,6 +380,7 @@
"options_not_a_list": {
"feedback_prompt": "Feedback prompt",
"prompt": "Test Prompt",
"allow_file_upload": false,
"criteria": [
{
"order_num": 0,
......@@ -394,6 +405,7 @@
"option_not_a_dictionary": {
"feedback_prompt": "Feedback prompt",
"prompt": "Test Prompt",
"allow_file_upload": false,
"criteria": [
{
"order_num": 0,
......@@ -426,6 +438,7 @@
"option_missing_keys": {
"feedback_prompt": "Feedback prompt",
"prompt": "Test Prompt",
"allow_file_upload": false,
"criteria": [
{
"order_num": 0,
......@@ -462,6 +475,85 @@
"option_points_must_be_int": {
"feedback_prompt": "Feedback prompt",
"prompt": "Test Prompt",
"allow_file_upload": false,
"criteria": [
{
"order_num": 0,
"name": "Test criterion",
"prompt": "Test criterion prompt",
"options": [
{
"order_num": 0,
"points": "a million stanley nickels",
"name": "No",
"explanation": "No explanation"
},
{
"order_num": 1,
"points": "One Shrutebuck",
"name": "Yes",
"explanation": "Yes explanation"
}
],
"feedback": "optional"
}
],
"title": "My new title.",
"assessments": [
{
"name": "self-assessment",
"start": null,
"due": null
}
],
"submission_due": null,
"submission_start": null,
"expected_error": "error updating xblock configuration"
},
"allow_file_upload_must_be_boolean": {
"feedback_prompt": "Feedback prompt",
"prompt": "Test Prompt",
"allow_file_upload": 6,
"criteria": [
{
"order_num": 0,
"name": "Test criterion",
"prompt": "Test criterion prompt",
"options": [
{
"order_num": 0,
"points": "a million stanley nickels",
"name": "No",
"explanation": "No explanation"
},
{
"order_num": 1,
"points": "One Shrutebuck",
"name": "Yes",
"explanation": "Yes explanation"
}
],
"feedback": "optional"
}
],
"title": "My new title.",
"assessments": [
{
"name": "self-assessment",
"start": null,
"due": null
}
],
"submission_due": null,
"submission_start": null,
"expected_error": "error updating xblock configuration"
},
"allow_file_upload_null": {
"feedback_prompt": "Feedback prompt",
"prompt": "Test Prompt",
"allow_file_upload": null,
"criteria": [
{
"order_num": 0,
......@@ -524,6 +616,7 @@
"submission_due": "4014-02-27T09:46",
"submission_start": "4014-02-10T09:46",
"title": "My new title.",
"allow_file_upload": false,
"assessments": [
{
"name": "student-training",
......@@ -573,6 +666,7 @@
"submission_due": "4014-02-27T09:46",
"submission_start": "4014-02-10T09:46",
"title": "My new title.",
"allow_file_upload": false,
"assessments": [
{
"name": "student-training",
......@@ -620,6 +714,7 @@
"submission_due": "4014-02-27T09:46",
"submission_start": "4014-02-10T09:46",
"title": "My new title.",
"allow_file_upload": false,
"assessments": [
{
"name": "student-training",
......@@ -670,6 +765,7 @@
"submission_due": "4014-02-27T09:46",
"submission_start": "4014-02-10T09:46",
"title": "My new title.",
"allow_file_upload": false,
"assessments": [
{
"name": "student-training",
......@@ -720,6 +816,7 @@
"submission_due": "4014-02-27T09:46",
"submission_start": "4014-02-10T09:46",
"title": "My new title.",
"allow_file_upload": false,
"assessments": [
{
"name": "student-training",
......@@ -764,6 +861,7 @@
"submission_due": "4014-02-27T09:46",
"submission_start": "4014-02-10T09:46",
"title": "My new title.",
"allow_file_upload": false,
"assessments": [
{
"name": "student-training",
......
......@@ -27,6 +27,7 @@
"submission_due": "4014-02-27T09:46",
"submission_start": "4014-02-10T09:46",
"title": "My new title.",
"allow_file_upload": false,
"assessments": [
{
"name": "peer-assessment",
......@@ -71,6 +72,7 @@
"submission_due": "4014-02-27T09:46",
"submission_start": "4014-02-10T09:46",
"title": "ɯʎ uǝʍ ʇıʇןǝ",
"allow_file_upload": false,
"assessments": [
{
"name": "peer-assessment",
......@@ -115,6 +117,7 @@
"submission_due": "4014-02-27T09:46",
"submission_start": "4014-02-10T09:46",
"title": "My new title.",
"allow_file_upload": false,
"assessments": [
{
"name": "student-training",
......
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