Allow user agents that do not support the XHR2 upload property to respond to ready state changes. Separate onreadystatechange property from upload property by removing it outside of the upload if statement.
Fix inability to disable Skype/Delicious/Diigo

The view was missing a check for whether these services are enabled, so
they were showing even when disabled in Account Settings.

Test Plan:
 * First enable Skype, Delicious, and Diigo in Account Settings
 * Confirm that they both show up in the user's Profile Settings
 * Disable Skype in Account Settings
 * Confirm that Skype no longer shows up in Profile Settings
 * Repeat last 2 steps with Delicious and Diigo
Use "danger button" for Reset Course Content

Due to the destructive nature of resetting course content, the red
"danger button" does a better job of reflecting just that.

Test Plan:
* Go to a course, click Settings, then Reset Course Content
* Verify that the confirmation button in the dialog is now red
Sort terms drop-down lists by start date

Terms are easier to select when they are sorted consistently.

Test Plan:
* Create 3+ terms in a different order than their start dates
* Verify terms are sorted in chronological order by start date:
  * /account/### (right sidebar under Course Filtering)
  * /account/### (click Add a New Course; in the dialog)
  * /account/###/users (right sidebar under Choose Term)
* Terms should be sorted the same way as the drop-down list in:
  * Course Settings > Edit Course Details
Improve efficiency of sorting term drop-down lists
add public_syllabus, etc to course object

Change-Id: I5783e4dc232717ddeb1224fdca55ea406c08dd11
Reviewed-on: https://gerrit.instructure.com/25389
Reviewed-by: Rob Orton <rob@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Duane Johnson <duane@instructure.com>
QA-Review: Duane Johnson <duane@instructure.com>
fix BBB xml error on timed out conferences and rejoining as mod

fixes CNVS-1602, CNVS-1443

test plan:
  xml error:
  - create a long running BigBlueButton conference.
  - start the conference, click though the initial dialogs, and
    then close the conference page.
  - refresh the canvas conferences page so the "join" button
    shows up and then wait at least 6 minutes.
  - click the "join" button and verify you rejoin the conference
    instead of getting an xml error.
  - close the conference and wait another 6 minutes.
  - click the "end" button on the conference and make sure you
    don't get any errors.

  moderator status:
  - as a teacher, create and start a BigBlueButton conference.
  - in another browser, join the conference as a student.
  - have the teacher leave the conference while the student is
    still in the conference.
  - rejoin the conference as the teacher and see that the
    teacher regains their moderator/presenter status.

Change-Id: I70421ddc7f853d749b5f7b56d39859d04e196c32
Reviewed-on: https://gerrit.instructure.com/25574
Reviewed-by: Zach Pendleton <zachp@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Matt Fairbourn <mfairbourn@instructure.com>
Product-Review: Jon Willesen <jonw@instructure.com>
specs: run calendar2 selenium specs with agenda view

test plan:
  * run specs

Change-Id: Ib9bd4c2eca1a9b86c555b0d76844d1b6c395cc3e
Reviewed-on: https://gerrit.instructure.com/25647
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Braden Anderson <banderson@instructure.com>
QA-Review: Braden Anderson <banderson@instructure.com>
Product-Review: Zach Pendleton <zachp@instructure.com>
spec: fix failure caused by order discrepancy

in g/24732, the controller was updated to use Unicode collation,
while the test remained ASCIIbetical.

test plan: test
  spec/apis/v1/enrollments_api_spec.rb:600
  "should list all members of a course"
should pass on OSX

Change-Id: I9f698ae81d983fa84d7d5c2caafd1c239c90181d
Reviewed-on: https://gerrit.instructure.com/25703
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: Bryan Madsen <bryan@instructure.com>
QA-Review: Bryan Madsen <bryan@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
fix sorting on agenda view

the results of the events and assignments api request were not
being properly merged into a sorted list.

fixes CNVS-9037

test plan:
 - create a bunch of days that contain only events.
 - interleave a bunch of days that contain only assignments.
 - verify that the agenda view is sorted correctly.
 - verify that "load more" works properly.

Change-Id: I7f5c203149bb854496e64af053170b50361b7a96
Reviewed-on: https://gerrit.instructure.com/25641
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Braden Anderson <banderson@instructure.com>
Product-Review: Marc LeGendre <marc@instructure.com>
QA-Review: Marc LeGendre <marc@instructure.com>
spec: clean up javascript specs

* vddDueColumnView was never used
* window's beforeunload wouldn't trigger the second time for me
  (both chrome and phantomjs)
* be nicer about retrying specs when run with a custom matcher
* some specs need ENV.PERMISSIONS to exist
* no more vddDueTooltipView
* don't completely overwrite ENV in your spec ಠ_ಠ
* don't start tests before specs are loaded, but don't use
  QUnit.stop() before QUnit has loaded.  instead, don't let it autostart,
  and wait to call QUnit.start() until both are loaded.

Change-Id: Ib89cc9f2bd2c27a04f72e8dc1261953a7a640a46
Reviewed-on: https://gerrit.instructure.com/24795
Reviewed-by: Jon Jensen <jon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
don't include ActionController::UrlWriter w/rails3

refs CNVS-9166

include Rails.application.routes.url_helpers instead

(in most of these, should be refactored to not include those either, but
not going down that rabbit hole in this commit.)

Change-Id: I3a7091ac604c811d9b7ad2777c289fc8c6477822
test-plan: N/A
Reviewed-on: https://gerrit.instructure.com/25725
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
QA-Review: Jacob Fugal <jacob@instructure.com>
consider_all_requests_local in specs for rails3

refs CNVS-9166

was already fixed in application setup, but not in these specs

test-plan: N/A

Change-Id: I7aaf2d487806c10b7c30dbd7e056e7b26e475875
Reviewed-on: https://gerrit.instructure.com/25732
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
QA-Review: Jacob Fugal <jacob@instructure.com>
update utf8 check for rails 3

refs CNVS-9166

unserialize_attribute was replaced with type_cast_attribute in rails 3.2

test-plan: N/A

Change-Id: I1e9af80a8c3ac36d5d4467bcb9cbeec6bf88ad4c
Reviewed-on: https://gerrit.instructure.com/25730
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
QA-Review: Jacob Fugal <jacob@instructure.com>
class_inheritable_accessor -> class_attribute

refs CNVS-9166

Change-Id: Ie116881aaeae201222a658de1eb5fc608cec7d01
test-plan: N/A
Reviewed-on: https://gerrit.instructure.com/25726
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
QA-Review: Jacob Fugal <jacob@instructure.com>
require the rails-agnostic action pack file

instead of the one specifically for rails2

refs CNVS-9166

test-plan: N/A

Change-Id: Id9cddfc4fe499955630b18151b400253375306f3
Reviewed-on: https://gerrit.instructure.com/25735
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
QA-Review: Jacob Fugal <jacob@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
remove raise in rails 3.2 boot

refs CNVS-9166

we're going straight to 3.2 now, so the patch in question can just be
branched on CANVAS_RAILS2

test-plan: N/A

Change-Id: Ib8283160193b9e78924d2106e79cd23a5f228cc3
Reviewed-on: https://gerrit.instructure.com/25737
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
QA-Review: Jacob Fugal <jacob@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
drives focus to buttons and cog menus after modals are closed or submitted

accessibility. fixes: CNVS-8936

Test Plan
1) From the groups UI, open a modal dialog menu using the '+ Group Set'
   button, '+ Group' button, or any cog menu (and click a submenu option)
2) Click cancel, submit, or press ESC to close the dialog modal
3) Ensure focus is returned to the correct button or menu

Change-Id: Ie2062ddc1c7b604dce2c4bb8921bec4f724308e6
Reviewed-on: https://gerrit.instructure.com/25510
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Mark Ericksen <marke@instructure.com>
Product-Review: Marc LeGendre <marc@instructure.com>
QA-Review: Marc LeGendre <marc@instructure.com>
remove reference to debug_rjs

refs CNVS-9166

we don't use it in rails2.3, and it's not there in rails3

Change-Id: I30d34660b7c684497630255706ebba92a8df056e
test-plan: N/A
Reviewed-on: https://gerrit.instructure.com/25727
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
QA-Review: Jacob Fugal <jacob@instructure.com>
require appropriate file for testing uploads

refs CNVS-9166

test-plan: N/A

Change-Id: Ie9ed104579961f0af67b9453ecc43670d48ecbac
Reviewed-on: https://gerrit.instructure.com/25736
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
QA-Review: Jacob Fugal <jacob@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>