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
27b85fb7
Commit
27b85fb7
authored
Nov 09, 2015
by
Cliff Dyer
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #10554 from edx/release
Verifying release branch for release-2015-11-09
parents
2ae8ee26
e042ee23
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
28 additions
and
73 deletions
+28
-73
cms/static/cms/js/require-config.js
+0
-4
cms/static/coffee/spec/main.coffee
+0
-4
cms/static/js/certificates/models/signatory.js
+0
-17
cms/static/js/certificates/spec/views/certificate_details_spec.js
+0
-18
cms/static/js/certificates/spec/views/certificate_editor_spec.js
+2
-2
cms/static/js/utils/drag_and_drop.js
+2
-2
cms/static/js_test.yml
+0
-1
common/djangoapps/student/admin.py
+5
-0
common/lib/xmodule/xmodule/js/spec/capa/display_spec.coffee
+0
-13
common/lib/xmodule/xmodule/js/src/capa/display.coffee
+0
-2
common/static/js/vendor/draggabilly.pkgd.js
+8
-1
lms/djangoapps/instructor_task/tasks.py
+4
-4
lms/djangoapps/instructor_task/tasks_helper.py
+7
-5
No files found.
cms/static/cms/js/require-config.js
View file @
27b85fb7
...
...
@@ -17,7 +17,6 @@ require.config({
paths
:
{
"domReady"
:
"js/vendor/domReady"
,
"gettext"
:
"/i18n"
,
"json2"
:
"js/vendor/json2"
,
"mustache"
:
"js/vendor/mustache"
,
"codemirror"
:
"js/vendor/codemirror-compressed"
,
"codemirror/stex"
:
"js/vendor/CodeMirror/stex"
,
...
...
@@ -96,9 +95,6 @@ require.config({
]
},
shim
:
{
"json2"
:
{
exports
:
"JSON"
},
"gettext"
:
{
exports
:
"gettext"
},
...
...
cms/static/coffee/spec/main.coffee
View file @
27b85fb7
...
...
@@ -23,7 +23,6 @@ requirejs.config({
"jquery.simulate"
:
"xmodule_js/common_static/js/vendor/jquery.simulate"
,
"datepair"
:
"xmodule_js/common_static/js/vendor/timepicker/datepair"
,
"date"
:
"xmodule_js/common_static/js/vendor/date"
,
"json2"
:
"xmodule_js/common_static/js/vendor/json2"
,
"moment"
:
"xmodule_js/common_static/js/vendor/moment.min"
,
"moment-with-locales"
:
"xmodule_js/common_static/js/vendor/moment-with-locales.min"
,
"text"
:
"xmodule_js/common_static/js/vendor/requirejs/text"
,
...
...
@@ -59,9 +58,6 @@ requirejs.config({
"js/spec/test_utils"
:
"js/spec/test_utils"
,
}
shim
:
{
"json2"
:
{
exports
:
"JSON"
},
"gettext"
:
{
exports
:
"gettext"
},
...
...
cms/static/js/certificates/models/signatory.js
View file @
27b85fb7
...
...
@@ -31,23 +31,6 @@ function(_, str, Backbone, BackboneRelational, gettext) {
return
response
;
},
validate
:
function
(
attrs
)
{
var
errors
=
null
;
if
(
_
.
has
(
attrs
,
'title'
)){
var
title
=
attrs
.
title
;
var
lines
=
title
.
split
(
/
\r\n
|
\r
|
\n
/
);
if
(
lines
.
length
>
2
)
{
errors
=
_
.
extend
({
'title'
:
gettext
(
'Signatory title should span over maximum of 2 lines.'
)
},
errors
);
}
}
if
(
errors
!==
null
){
return
errors
;
}
},
setOriginalAttributes
:
function
()
{
// Remember the current state of this model (enables edit->cancel use cases)
this
.
_originalAttributes
=
this
.
parse
(
this
.
toJSON
());
...
...
cms/static/js/certificates/spec/views/certificate_details_spec.js
View file @
27b85fb7
...
...
@@ -244,24 +244,6 @@ function(_, Course, CertificatesCollection, CertificateModel, CertificateDetails
this
.
view
.
$
(
SELECTORS
.
signatory_organization_value
)
).
toContainText
(
'New Signatory Test Organization'
);
});
it
(
'should not allow invalid data when saving changes made during in-line signatory editing'
,
function
()
{
this
.
view
.
$
(
SELECTORS
.
edit_signatory
).
click
();
setValuesToInputs
(
this
.
view
,
{
inputSignatoryName
:
'New Signatory Test Name'
});
setValuesToInputs
(
this
.
view
,
{
inputSignatoryTitle
:
'Signatory Title
\
non three
\
nlines'
});
setValuesToInputs
(
this
.
view
,
{
inputSignatoryOrganization
:
'New Signatory Test Organization'
});
this
.
view
.
$
(
SELECTORS
.
signatory_panel_save
).
click
();
expect
(
this
.
view
.
$
(
SELECTORS
.
inputSignatoryTitle
).
parent
()).
toHaveClass
(
'error'
);
});
});
});
});
cms/static/js/certificates/spec/views/certificate_editor_spec.js
View file @
27b85fb7
...
...
@@ -246,7 +246,7 @@ function(_, Course, CertificateModel, SignatoryModel, CertificatesCollection, Ce
expect
(
this
.
view
.
$
(
'.certificate-edit-error'
)).
not
.
toHaveClass
(
'is-shown'
);
});
it
(
'signatories should
not
save when title span on more than 2 lines'
,
function
()
{
it
(
'signatories should save when title span on more than 2 lines'
,
function
()
{
this
.
view
.
$
(
SELECTORS
.
addSignatoryButton
).
click
();
setValuesToInputs
(
this
.
view
,
{
inputCertificateName
:
'New Certificate Name'
...
...
@@ -265,7 +265,7 @@ function(_, Course, CertificateModel, SignatoryModel, CertificatesCollection, Ce
});
this
.
view
.
$
(
SELECTORS
.
saveCertificateButton
).
click
();
expect
(
this
.
view
.
$
(
'.certificate-edit-error'
)).
toHaveClass
(
'is-shown'
);
expect
(
this
.
view
.
$
(
'.certificate-edit-error'
)).
not
.
toHaveClass
(
'is-shown'
);
});
it
(
'user can delete those signatories already saved'
,
function
()
{
...
...
cms/static/js/utils/drag_and_drop.js
View file @
27b85fb7
define
([
"jquery"
,
"jquery.ui"
,
"underscore"
,
"
json2"
,
"
gettext"
,
"draggabilly"
,
define
([
"jquery"
,
"jquery.ui"
,
"underscore"
,
"gettext"
,
"draggabilly"
,
"js/utils/module"
,
"common/js/components/views/feedback_notification"
],
function
(
$
,
ui
,
_
,
JSON
,
gettext
,
Draggabilly
,
ModuleUtils
,
NotificationView
)
{
function
(
$
,
ui
,
_
,
gettext
,
Draggabilly
,
ModuleUtils
,
NotificationView
)
{
'use strict'
;
var
contentDragger
=
{
...
...
cms/static/js_test.yml
View file @
27b85fb7
...
...
@@ -59,7 +59,6 @@ lib_paths:
-
xmodule_js/common_static/js/vendor/draggabilly.pkgd.js
-
xmodule_js/common_static/js/vendor/date.js
-
xmodule_js/common_static/js/vendor/domReady.js
-
xmodule_js/common_static/js/vendor/json2.js
-
xmodule_js/common_static/js/vendor/URI.min.js
-
xmodule_js/common_static/js/vendor/jquery.smooth-scroll.min.js
-
xmodule_js/common_static/coffee/src/jquery.immediateDescendents.js
...
...
common/djangoapps/student/admin.py
View file @
27b85fb7
...
...
@@ -136,8 +136,12 @@ class CourseEnrollmentAdmin(admin.ModelAdmin):
""" Admin interface for the CourseEnrollment model. """
list_display
=
(
'id'
,
'course_id'
,
'mode'
,
'user'
,
'is_active'
,)
list_filter
=
(
'mode'
,
'is_active'
,)
raw_id_fields
=
(
'user'
,)
search_fields
=
(
'course_id'
,
'mode'
,
'user__username'
,)
def
queryset
(
self
,
request
):
return
super
(
CourseEnrollmentAdmin
,
self
)
.
queryset
(
request
)
.
select_related
(
'user'
)
class
Meta
(
object
):
model
=
CourseEnrollment
...
...
@@ -145,6 +149,7 @@ class CourseEnrollmentAdmin(admin.ModelAdmin):
class
UserProfileAdmin
(
admin
.
ModelAdmin
):
""" Admin interface for UserProfile model. """
list_display
=
(
'user'
,
'name'
,)
raw_id_fields
=
(
'user'
,)
search_fields
=
(
'user__username'
,
'user__first_name'
,
'user__last_name'
,
'user__email'
,
'name'
,)
def
get_readonly_fields
(
self
,
request
,
obj
=
None
):
...
...
common/lib/xmodule/xmodule/js/spec/capa/display_spec.coffee
View file @
27b85fb7
...
...
@@ -538,19 +538,6 @@ describe 'Problem', ->
runs
->
expect
(
window
.
SR
.
readElts
).
toHaveBeenCalled
()
it
'disables check button while posting'
,
->
runs
->
spyOn
(
$
,
'postWithPrefix'
).
andCallFake
(
url
,
answers
,
callback
)
->
callback
(
success
:
'OK'
)
spyOn
@
problem
,
'enableCheckButton'
@
problem
.
save
()
expect
(
@
problem
.
enableCheckButton
).
toHaveBeenCalledWith
false
waitsFor
(
->
return
jQuery
.
active
==
0
),
"jQuery requests finished"
,
1000
runs
->
expect
(
@
problem
.
enableCheckButton
).
toHaveBeenCalledWith
true
describe
'refreshMath'
,
->
beforeEach
->
@
problem
=
new
Problem
(
$
(
'.xblock-student_view'
))
...
...
common/lib/xmodule/xmodule/js/src/capa/display.coffee
View file @
27b85fb7
...
...
@@ -412,13 +412,11 @@ class @Problem
@
save_internal
()
save_internal
:
=>
@
enableCheckButton
false
Logger
.
log
'problem_save'
,
@
answers
$
.
postWithPrefix
"
#{
@
url
}
/problem_save"
,
@
answers
,
(
response
)
=>
saveMessage
=
response
.
msg
@
gentle_alert
saveMessage
@
updateProgress
response
@
enableCheckButton
true
refreshMath
:
(
event
,
element
)
=>
element
=
event
.
target
unless
element
...
...
common/static/js/vendor/draggabilly.pkgd.js
View file @
27b85fb7
...
...
@@ -1748,7 +1748,14 @@ return Unidragger;
if
(
typeof
define
==
'function'
&&
define
.
amd
)
{
// AMD
define
(
[
// Note: fixed by andy-armstrong to include a name for the definition
// so that this works when optimized using r.js. This is only an issue
// in Studio, as the LMS uses a namespaced version of RequireJS so
// this clause isn't reached.
// See http://requirejs.org/docs/errors.html#mismatch
define
(
'draggabilly'
,
[
'classie/classie'
,
'get-style-property/get-style-property'
,
'get-size/get-size'
,
...
...
lms/djangoapps/instructor_task/tasks.py
View file @
27b85fb7
...
...
@@ -204,7 +204,7 @@ def calculate_students_features_csv(entry_id, xmodule_instance_args):
return
run_main_task
(
entry_id
,
task_fn
,
action_name
)
@task
(
base
=
BaseInstructorTask
,
routing_key
=
settings
.
GRADES_DOWNLOAD_ROUTING_KEY
)
# pylint: disable=not-callable
@task
(
base
=
BaseInstructorTask
)
# pylint: disable=not-callable
def
enrollment_report_features_csv
(
entry_id
,
xmodule_instance_args
):
"""
Compute student profile information for a course and upload the
...
...
@@ -216,7 +216,7 @@ def enrollment_report_features_csv(entry_id, xmodule_instance_args):
return
run_main_task
(
entry_id
,
task_fn
,
action_name
)
@task
(
base
=
BaseInstructorTask
,
routing_key
=
settings
.
GRADES_DOWNLOAD_ROUTING_KEY
)
# pylint: disable=not-callable
@task
(
base
=
BaseInstructorTask
)
# pylint: disable=not-callable
def
exec_summary_report_csv
(
entry_id
,
xmodule_instance_args
):
"""
Compute executive summary report for a course and upload the
...
...
@@ -228,7 +228,7 @@ def exec_summary_report_csv(entry_id, xmodule_instance_args):
return
run_main_task
(
entry_id
,
task_fn
,
action_name
)
@task
(
base
=
BaseInstructorTask
,
routing_key
=
settings
.
GRADES_DOWNLOAD_ROUTING_KEY
)
# pylint: disable=not-callable
@task
(
base
=
BaseInstructorTask
)
# pylint: disable=not-callable
def
course_survey_report_csv
(
entry_id
,
xmodule_instance_args
):
"""
Compute the survey report for a course and upload the
...
...
@@ -240,7 +240,7 @@ def course_survey_report_csv(entry_id, xmodule_instance_args):
return
run_main_task
(
entry_id
,
task_fn
,
action_name
)
@task
(
base
=
BaseInstructorTask
,
routing_key
=
settings
.
GRADES_DOWNLOAD_ROUTING_KEY
)
# pylint: disable=not-callable
@task
(
base
=
BaseInstructorTask
)
# pylint: disable=not-callable
def
proctored_exam_results_csv
(
entry_id
,
xmodule_instance_args
):
"""
Compute proctored exam results report for a course and upload the
...
...
lms/djangoapps/instructor_task/tasks_helper.py
View file @
27b85fb7
...
...
@@ -1327,12 +1327,15 @@ def upload_course_survey_report(_xmodule_instance_args, _entry_id, course_id, _t
survey_fields
.
sort
()
user_survey_answers
=
OrderedDict
()
survey_answers_for_course
=
SurveyAnswer
.
objects
.
filter
(
course_key
=
course_id
)
survey_answers_for_course
=
SurveyAnswer
.
objects
.
filter
(
course_key
=
course_id
)
.
select_related
(
'user'
)
for
survey_field_record
in
survey_answers_for_course
:
user_id
=
survey_field_record
.
user
.
id
if
user_id
not
in
user_survey_answers
.
keys
():
user_survey_answers
[
user_id
]
=
{}
user_survey_answers
[
user_id
]
=
{
'username'
:
survey_field_record
.
user
.
username
,
'email'
:
survey_field_record
.
user
.
email
}
user_survey_answers
[
user_id
][
survey_field_record
.
field_name
]
=
survey_field_record
.
field_value
...
...
@@ -1343,9 +1346,8 @@ def upload_course_survey_report(_xmodule_instance_args, _entry_id, course_id, _t
for
user_id
in
user_survey_answers
.
keys
():
row
=
[]
row
.
append
(
user_id
)
user_obj
=
User
.
objects
.
get
(
id
=
user_id
)
row
.
append
(
user_obj
.
username
)
row
.
append
(
user_obj
.
email
)
row
.
append
(
user_survey_answers
[
user_id
]
.
get
(
'username'
,
''
))
row
.
append
(
user_survey_answers
[
user_id
]
.
get
(
'email'
,
''
))
for
survey_field
in
survey_fields
:
row
.
append
(
user_survey_answers
[
user_id
]
.
get
(
survey_field
,
''
))
csv_rows
.
append
(
row
)
...
...
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