canvas-lms/app
Braden Anderson e59e7e2cbd discussions: fix pinned discussion sorting
fixes CNVS-10801

The issue here is that discussion topics have a null position
when they're first pinned. Our sorting library doesn't handle
null positions, so we need to initialize it when we pin topics
and fix legacy data on demand.

To test legacy data handling, you can run the "BEFORE PATCH"
instructions or run this in the console:

DiscussionTopic.update_all(position: nil)

test plan:
  *** BEFORE PATCH ***
  * create a course with many discussions
  * pin some of the discussions
  *** after patch ***
  * pin, unpin, and sort discussions
  * refresh the page
  * verify that your discussion positions persist

Change-Id: I6770c584b4af41ddf9592d39fa14b5a424c5c57d
Reviewed-on: https://gerrit.instructure.com/31589
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Reviewed-by: Jon Willesen <jonw@instructure.com>
Product-Review: Braden Anderson <banderson@instructure.com>
2014-03-17 16:56:40 +00:00
..
coffeescripts discussions: fix pinned discussion sorting 2014-03-17 16:56:40 +00:00
controllers fix assignment_rubrics_spec for rails 3 2014-03-12 20:46:39 +00:00
helpers fix draft-state published quiz and update question 2014-03-12 17:42:23 +00:00
messages uses conversation context tags for notifications 2014-03-05 18:05:18 +00:00
middleware extract canvas statsd gem 2014-03-14 15:03:23 +00:00
models extract canvas statsd gem 2014-03-14 15:03:23 +00:00
observers don't include submissions in recent_stream_items 2013-01-03 15:42:39 -07:00
presenters remove :includes => :quiz_submission 2014-03-01 01:46:22 +00:00
serializers move QuizSerializer into quizzes namespace 2014-03-12 16:21:33 +00:00
stylesheets fix draft-state published quiz and update question 2014-03-12 17:42:23 +00:00
views Discussions: Make Screen Readers read the number of replies and unread replies 2014-03-14 21:21:06 +00:00