Commit Graph

18477 Commits

Author SHA1 Message Date
Chris Hart 76b8661e0d Add State U. Theme to Theme Editor
Fixes: CNVS-25765

This is the second of four themes we are going to
add to Theme Editor's default offerings.

Test plan:
- Pull down the patchset, migrate your
  database, and restart Canvas
- Open Theme Editor. Make sure you have delayed
  jobs running in the background:
  script/delayed_job run
- You should now see the State U. theme listed in
  the select input
- If you lose all your styles after doing this, you
  might need to run:
  bundle exec rake brand_configs:generate_and_upload_all
  ... then restart.
- Canvas should now look like this:
  http://screencast.com/t/dOZs5zGVI

Change-Id: Ifbb529f815a82a025020b8c573193e6d370b5ab8
Reviewed-on: https://gerrit.instructure.com/68174
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Product-Review: Chris Hart <chart@instructure.com>
Product-Review: Pam Hiett <phiett@instructure.com>
Tested-by: Jenkins
Product-Review: Colleen Palmer <colleen@instructure.com>
QA-Review: Michael Hargiss <mhargiss@instructure.com>
2015-12-11 19:57:08 +00:00
James Williams edcf2f5be1 don't show future access messages when active enrollments exist
test plan:
* create a student in a course in a section with a start
 date in the future
* make sure that the course doesn't restrict students
 from viewing before start date
* as a student, should still receive a flash message at the top
 of the screen when accessing the course letting them know
 when it will start

* add them to another section with current dates
* the student should no longer see the message

closes #CNVS-25763

Change-Id: I97389e934a5c81a9e05f8994d025de6a71c48b05
Reviewed-on: https://gerrit.instructure.com/68746
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Ryan Allen <rallen@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
2015-12-11 19:01:15 +00:00
Alex Boyd c8e8d6f12b Show correct times for calendar events after 11:30
Fixes CNVS-25055

Test plan:
 - Create a calendar event at 11:45pm
 - View it in week view
 - Ensure that the time shows as "11:45"
 - View it in month view
 - Ensure that time time shows as "11:45p"

Change-Id: I7772518517fa29fcabd41187ed54972918d047ca
Reviewed-on: https://gerrit.instructure.com/67179
Tested-by: Jenkins
Reviewed-by: Andrew Butterfield <abutterfield@instructure.com>
QA-Review: Adrian Russell <arussell@instructure.com>
Product-Review: Allison Weiss <allison@instructure.com>
2015-12-11 18:49:55 +00:00
Nathan Mills 700948052c add the allowfullscreen to contentitem
fixes PLAT-1291

test-plan:
embed a video or something that supports fullscreen via content-item
attempt to make it fullscreen
it should allow you to go fullscreen

Change-Id: I2d9b3bd4a4682927526cecf90b7c4a8a6ca4f6f2
Reviewed-on: https://gerrit.instructure.com/68564
Tested-by: Jenkins
Reviewed-by: Brad Horrocks <bhorrocks@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Nathan Mills <nathanm@instructure.com>
2015-12-11 18:47:02 +00:00
Alex Boyd 554dd86f38 Expose bounce details via the API to siteadmins
Fixes CNVS-22965

Test plan:
 - Create a user and a communication channel for that user, or reuse
   an existing one that has not been deleted
 - Bounce details:
   - From a console, do the following, where "..." is the id of the
     communication channel you're working with:
       c = CommunicationChannel.find(...)
       c.last_bounce_details =
         {'bouncedRecipients' => [{'diagnosticCode' => 'foo'}]}
       c.save!
   - As a siteadmin, hit /api/v1/users/.../communication_channels, where
     ... is the id of the user that owns the communication channel
   - Verify that the communication channel includes a
     "last_bounce_summary" property whose value is "foo"
 - Transient bounce details:
   - From a console, do the following, where "..." is the id of the
     communication channel you're working with:
       c = CommunicationChannel.find(...)
       c.last_transient_bounce_details =
         {'bouncedRecipients' => [{'diagnosticCode' => 'foo'}]}
       c.save!
   - As a siteadmin, hit /api/v1/users/.../communication_channels, where
     ... is the id of the user that owns the communication channel
   - Verify that the communication channel includes a
     "last_transient_bounce_summary" property whose value is "foo"
 - Bounce date:
   - From a console, do the following, where "..." is the id of the
     communication channel you're working with:
       c = CommunicationChannel.find(...)
       c.last_bounce_at = '2015-01-01T01:01:01.000Z'
       c.save!
   - As a siteadmin, hit /api/v1/users/.../communication_channels, where
     ... is the id of the user that owns the communication channel
   - Verify that the communication channel includes a
     "last_bounce_at" key whose values is "2015-01-01T01:01:01.000Z"
 - Transient bounce date:
  - From a console, do the following, where "..." is the id of the
     communication channel you're working with:
       c = CommunicationChannel.find(...)
       c.last_transient_bounce_at = '2015-01-01T01:01:01.000Z'
       c.save!
   - As a siteadmin, hit /api/v1/users/.../communication_channels, where
     ... is the id of the user that owns the communication channel
   - Verify that the communication channel includes a
     "last_transient_bounce_at" key whose values is "2015-01-01T01:01:01.000Z"
 - Suppression bounce date:
   - From a console, do the following, where "..." is the id of the
     communication channel you're working with:
       c = CommunicationChannel.find(...)
       c.last_suppression_bounce_at = '2015-01-01T01:01:01.000Z'
       c.save!
   - As a siteadmin, hit /api/v1/users/.../communication_channels, where
     ... is the id of the user that owns the communication channel
   - Verify that the communication channel includes a
     "last_suppression_bounce_at" key whose values is "2015-01-01T01:01:01.000Z"
 - Restricted to site admins:
   - As the user whose communication channel you were working with,
     hit /api/v1/users/.../communication_channels, where ... is that
     user's id
   - Verify that the communication channel does not include
     "last_bounce_at", "last_suppression_bounce_at",
     "last_transient_bounce_at", "last_bounce_summary",
     or "last_transient_bounce_summary"

Change-Id: I10ed797620392229a55ffc797b2b35d3e979e19a
Reviewed-on: https://gerrit.instructure.com/62578
Reviewed-by: Andrew Butterfield <abutterfield@instructure.com>
Tested-by: Jenkins
QA-Review: Adrian Russell <arussell@instructure.com>
Product-Review: Allison Weiss <allison@instructure.com>
2015-12-11 18:18:49 +00:00
Strand McCutchen 556796188a round course settings grading schemes percentages
fixes CNVS-17280

Test plan:
 0. As a teacher in a course navigate to the settings page.
 1. If the grading scheme checkbox is unchecked, check it.
 2. Click View Grading Scheme.
 3. Edit the grading scheme so that it has many grades
    between D and F, each at a different percentage.
 4. Click Save.
 5. Click Select Another Scheme
 6. Review the selectable schemes and verify that the
    percentages only show digits rounded to the tenth.

Change-Id: I291444bedf36359b8e229dc7e8129fac520d85c9
Reviewed-on: https://gerrit.instructure.com/68535
Tested-by: Jenkins
Reviewed-by: Derek Bender <djbender@instructure.com>
QA-Review: Jason Carter <jcarter@instructure.com>
Product-Review: Christi Wruck
2015-12-11 17:30:52 +00:00
Strand McCutchen 0fe2c7a3b3 make width resizer visible on Windows
fixes CNVS-25249
fixes CNVS-22814

This regression was introduced by change-id: Iaf155b.

Test plan:

 0. In Windows on Chrome, IE, and Firefox, verify in
    speedgrader that the width resizer is visible.
 1. Using the test plan on change-id: Iaf155b verify
    that the right panel still scrolls appropriately
    for assignments with long rubrics.

Change-Id: I6bdc0adf18514e19db88ad784587d085252a7a0f
Reviewed-on: https://gerrit.instructure.com/68305
Tested-by: Jenkins
Reviewed-by: Derek Bender <djbender@instructure.com>
QA-Review: Jason Carter <jcarter@instructure.com>
Product-Review: Christi Wruck
2015-12-11 17:30:49 +00:00
Strand McCutchen 91947a8957 permit admins to send messages through gradebook
When an admin sent a message, the
ConversationsController#normalize_recipients method did not
populate `@recipients` which caused an "invalid recipients"
error to display when an admin attempted to create a new
message.

Now #normalize_recipients accounts for the admin case, and
admins can send messages without error.

fixes CNVS-24927

test plan:

 0. In a course with at least one student and one
    assignment…
 1. As an admin who is not a teacher in the course,
    navigate to the gradebook page.
 2. In the assignment dropdown at the top of the assignment
    column, select "Message students who…"
 3. In the Message Students dialog, select an option from
    the dropdown which includes a student. Fill in the body
    of the message with some text.
 4. Click "Send Message."
 5. Verify that no error is displayed and the dialog fades
    away.

Change-Id: Ia3c567455c710cf550cfb836cbbe5f78dd1be4c6
Reviewed-on: https://gerrit.instructure.com/67552
Tested-by: Jenkins
Reviewed-by: Derek Bender <djbender@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Christi Wruck
2015-12-11 17:30:43 +00:00
Strand McCutchen 3124dee82d provide tooltip for assignments outside of grading period
fixes CNVS-23212

test plan:
 0. Create a course with two grading periods (October and
    November) and two students (Alice and Bob).
 2. Create an assignment. Assign it to Alice on 10/15 and
    Bob on 11/15.
 3. As each student and take the assignment.
 4. As the teacher, grade the assignment.
 5. Go to the gradebook. Filter the gradebook by the
    October grading period.
 6. Verify that Alice's grade is displayed.
 7. Verify that Bob's grade is not displayed and that when
    you hover over the grayed-out cell, a message is
    displayed indicating that this assignment is outside of
    the current grading period.
 8. Filter the gradebook by the November grading period.
    October grading period.
 9. Verify that Alice's grade is not displayed and that
    when you hover over the grayed-out cell, a message is
    displayed indicating that this assignment is outside
    of the current grading period.
10. Verify that Bob's grade is displayed.

Change-Id: I585b7b27d05871ef9ecc139fa7f53d95b087f6f7
Reviewed-on: https://gerrit.instructure.com/66935
Reviewed-by: Spencer Olson <solson@instructure.com>
Tested-by: Jenkins
QA-Review: Jason Carter <jcarter@instructure.com>
Product-Review: Christi Wruck
2015-12-11 17:30:38 +00:00
Ethan Vizitei 0a66b7f42a make web pack able to run ember quit
closes CNVS-25792

TEST PLAN: jenkins web pack should get better

Change-Id: Ie2187d069cfd6d055c425038dba24637bf0ded3f
Reviewed-on: https://gerrit.instructure.com/68724
Reviewed-by: Mike Nomitch <mnomitch@instructure.com>
Tested-by: Jenkins
Product-Review: Ethan Vizitei <evizitei@instructure.com>
QA-Review: Ethan Vizitei <evizitei@instructure.com>
2015-12-11 17:07:10 +00:00
Jon Jensen 2ffa2075f5 spec: disallow record creation outside spec lifecycle
fixes various brittle specs

Change-Id: Ia595df0865efb3cdfcdd73d62adba9c40cf6f737
Reviewed-on: https://gerrit.instructure.com/68684
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
2015-12-11 16:36:00 +00:00
Derek Bender 8f108f08dd spec: prefer block syntax for timecop
fixes CNVS-25108

Test Plan
  - `rspec spec/lib/canvas/security_spec.rb`

Change-Id: Iab5e1f2975f09190509b376ef81d3846dbe6d792
Reviewed-on: https://gerrit.instructure.com/67349
Tested-by: Jenkins
Reviewed-by: Strand McCutchen <smccutchen@instructure.com>
QA-Review: Derek Hansen <dhansen@instructure.com>
Product-Review: Keith T. Garner <kgarner@instructure.com>
2015-12-11 16:13:19 +00:00
Chris Hart f6ca9ddef2 Dashcard UI refresh
Fixes: CNVS-25440

Test plan:
- New UI only
- The dashcards on the user dashboard should now
  look like this:
  http://cl.ly/image/0a311i3a1g25
- The dashcards should function exactly the same
  as they did before. The only non-style-related
  change is that now, when the page is loading,
  the number of "empty dashcard" placeholder
  images should now match the number of dashcards
  that will appear when the dashboard loads.

Change-Id: I92d0a9dc866718e79921c33390965471135fde21
Reviewed-on: https://gerrit.instructure.com/68356
Reviewed-by: Colleen Palmer <colleen@instructure.com>
Product-Review: Colleen Palmer <colleen@instructure.com>
Tested-by: Jenkins
QA-Review: Myller de Araujo <myller@instructure.com>
2015-12-11 15:50:45 +00:00
Amber Taniuchi c4cb2173a2 spec: verify that grading schemes is working with mgp flag
Test Plan:
- pass Jenkins
- check for syntax errors
- make sure new test_ids match up to an existing test case in TestRails

Change-Id: Ic7960ee5f8ef6f154179137983c679722a179deb
Reviewed-on: https://gerrit.instructure.com/68700
Tested-by: Jenkins
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Reviewed-by: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Caleb Guanzon <cguanzon@instructure.com>
2015-12-11 15:44:52 +00:00
James Williams d0f8f78239 more course link validator improvements
test plan:
* the course link validator should now detect
 links that point to different courses

* also the special invalid types (linking to an
 unpublished/deleted item or to a different course)
 should have an explanatory label

* also there should be a checkbox to hide the
 unpublished links in case they don't matter yet

closes #CNVS-25715

Change-Id: I71f1f38588c6c6392d508f848cf5287182633bb8
Reviewed-on: https://gerrit.instructure.com/68657
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Ryan Allen <rallen@instructure.com>
Product-Review: Cosme Salazar <cosme@instructure.com>
2015-12-11 14:20:25 +00:00
Pam Hiett 72dab9f7b4 move admin link above dashboard link in new ui
Fixes: CNVS-25499

test plan:
- as an admin using the new ui
- navigate to your canvas instance
- the admin link should now display directly above the dashboard
  link in the left-hand navigation

- ensure that this link does not show for a student/non-admin

Change-Id: Ie9a206228b4fdc53c5cfe70841c3afd40793e1e9
Reviewed-on: https://gerrit.instructure.com/68440
Tested-by: Jenkins
Reviewed-by: Chris Hart <chart@instructure.com>
Product-Review: Chris Hart <chart@instructure.com>
QA-Review: Myller de Araujo <myller@instructure.com>
2015-12-11 01:12:46 +00:00
Simon Williams 343fdcd81f doc: cleanup steps after webpack is live
Change-Id: Iaae1c625873b4bcdb13e3976acc08c34c9aa0bd7
Reviewed-on: https://gerrit.instructure.com/68714
Tested-by: Jenkins
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
2015-12-10 23:03:12 +00:00
Rob Orton c5da6343a4 add delayed jobs database check to health check
fixes CNVS-25636

test plan
 - hit health check enpoint
 - it should work and pass
 - shutdown jobs server
 - health check should fail

Change-Id: Iead67173dee2b7b0457ffc8f140b674aa5f7e9b7
Reviewed-on: https://gerrit.instructure.com/68545
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2015-12-10 22:35:29 +00:00
Cameron Sutter 0fb50838f7 return submissions in calendar events api
fixes MBL-5235

test plan:
- in the calendar events index api, add the following parameter:
  include[]=submissions
- when you request assignment type calendar events that have
  submissions, those submissions should be returned

Change-Id: Ib4626be066839ea96b6db932ef422224daeadf69
Reviewed-on: https://gerrit.instructure.com/68107
Reviewed-by: Joel Hough <joel@instructure.com>
Tested-by: Jenkins
Product-Review: Ben Kirato <benk@instructure.com>
QA-Review: Ben Kirato <benk@instructure.com>
2015-12-10 21:20:18 +00:00
James Williams b144bd8135 fix moderated grading submission states
This regression was introduced by a81b46a81

test plan:
* create a submission for a moderated assignment
* as a ta, add a provisional grade
* add the user to the moderation set
* the moderator should not see the submission as already "graded"
 (since it needs another provisional grade)

clsoes #CNVS-25722

Change-Id: I8bf7476b9f731859ee5a2f4563c63614db9684db
Reviewed-on: https://gerrit.instructure.com/68669
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
2015-12-10 21:13:45 +00:00
Rob Orton 461d5829c7 use touch_all on enrollment import for courses and users
fixes CNVS-25747

test plan
 - enrollment sis import should work

Change-Id: Ifaecd8651d62a9df4e6695965f9f9747c6a5f845
Reviewed-on: https://gerrit.instructure.com/68609
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2015-12-10 20:21:07 +00:00
Rob Orton ce9b2737e6 order and lock relations for touch all
refs CNVS-25747

test plan
 - Course.touch_all should work

Change-Id: I94f292166ae1dcd10d11d05078de37c62d9c95b5
Reviewed-on: https://gerrit.instructure.com/68608
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2015-12-10 20:21:02 +00:00
James Williams af46a60a20 fix conversations and group xss vulnerabilities
test plan:
* create a group with a name as described in the ticket
* hovering over the group name on the group management page
 should not cause a browser alert
* hovering over the group name in the inbox dropdown menu
 should not cause a browser alert

* create a course with a name as described in the ticket
* hovering over the course name in the inbox dropdown menu
 should not cause a browser alert

closes #CNVS-25645 #CNVS-25647

Change-Id: I7c19ac6134a4a2841e6f6ffc650420cfd61e4a9f
Reviewed-on: https://gerrit.instructure.com/68479
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
2015-12-10 19:30:26 +00:00
Jeremy Stanley 37e873c2d5 fix quiz answer comment sanitization
test plan: see steps in CNVS-25726

fixes CNVS-25726

Change-Id: Id98fc57d80a4db01b1f08469f4df407e02144591
Reviewed-on: https://gerrit.instructure.com/68611
Tested-by: Jenkins
Reviewed-by: James Williams  <jamesw@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
2015-12-10 19:29:18 +00:00
Jeremy Stanley dd093d0be5 fix htmlEscape to escape attributes properly
test plan: see CNVS-25646 and CNVS-25662

fixes CNVS-25646
fixes CNVS-25662

Change-Id: Iae0bcc0df8f731ff682d24bf240fe13906fd782c
Reviewed-on: https://gerrit.instructure.com/68486
Tested-by: Jenkins
Reviewed-by: Jon Jensen <jon@instructure.com>
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
2015-12-10 19:29:12 +00:00
Jeremy Stanley 6aa08608dc return focus after using course/user filter/search
test plan:
 - go to /accounts/X
 - use Course Filtering / Find a Course / Find A User
   and ensure after the search completes, the area where you
   started regains keyboard focus

fixes CNVS-25660

Change-Id: Ia736b3e9144fa0d65d30a710066d4d17f5e368db
Reviewed-on: https://gerrit.instructure.com/68567
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Ryan Allen <rallen@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
2015-12-10 19:11:22 +00:00
Rob Orton 8488eeda05 use touch_all method instead update_all
refs CNVS-25747

test plan
 - specs should pass

Change-Id: Ia0c9df0969ae4c574b1ad0411a183f7b92a8d6ff
Reviewed-on: https://gerrit.instructure.com/68646
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
2015-12-10 18:56:32 +00:00
Ryan Shaw 42f138d142 don't proceed like normal if npm install fails
fixes: CNVS-23785

test plan:
 - with normal env, rake task still works
 - set you path so npm doesn't exist or is something that will fail
   (eg: `brew uninstall node`)
 - run rake task
 - expect failure

(when you are done, `brew install node` if you uninstalled it to test this)

Change-Id: I095f0d1a7c6d9f298cf836592060989332a9d2db
Reviewed-on: https://gerrit.instructure.com/64474
Reviewed-by: Simon Williams <simon@instructure.com>
Tested-by: Jenkins
QA-Review: August Thornton <august@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
2015-12-10 17:26:12 +00:00
Michael Nomitch c7d19b2357 equella plugin works on remote RCE
fixes CNVS-25390

test plan:
  - configure account to use equella
  - spin up RCE service
  - with remote RCS feature flag on and off
    - you can access and embed equella from
      tinyMCE

Change-Id: I9e607ef9c64a7af8185cc8e6d568b86721d46eb6
Reviewed-on: https://gerrit.instructure.com/67928
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Tested-by: Jenkins
Product-Review: Ethan Vizitei <evizitei@instructure.com>
2015-12-10 17:13:42 +00:00
Michael Nomitch 39e0f80355 RCS: set up event listener for image plugin
refs CNVS-25291

test plan:
  - when the RCS service has the image plugin code
    and the RCS feature flag on
    - the RCS can add images from a url or canvas
  - when the RCS flag is turned off
    - the image plugin works like normal

Change-Id: Idaac68887f9ae2dd36410a5922a0b161cca13316
Reviewed-on: https://gerrit.instructure.com/67450
Reviewed-by: Mike Nomitch <mnomitch@instructure.com>
Tested-by: Jenkins
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>
2015-12-10 17:13:36 +00:00
Jon Jensen 96ddbaf5b8 spec: fix broken specs
also ensure rspec doesn't asplode when course_json_spec.rb is the first
spec in the list (alphabetically)

test plan:
1. all specs should pass
2. `bin/rspec <these files>` should:
   1. not asplode w/o running any specs
   2. have all specs pass

Change-Id: I23920e355d76dd122d642a10f8394f7442114a25
Reviewed-on: https://gerrit.instructure.com/68627
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
2015-12-10 04:55:40 +00:00
Deepeeca Soundarrajan 08049655d2 spec: Add spec for test case 140591 quiz group settings
Change-Id: Iafe3547c94ecc8c77fe580be231a7dd0e3ced007
Reviewed-on: https://gerrit.instructure.com/68523
Tested-by: Jenkins
Reviewed-by: Michael Hargiss <mhargiss@instructure.com>
Product-Review: Michael Hargiss <mhargiss@instructure.com>
QA-Review: Michael Hargiss <mhargiss@instructure.com>
2015-12-10 00:32:49 +00:00
Jeremy Putnam 18b2a70e45 spec: add tiny-mce left-to-right button check
Change-Id: I59f64d8a142e22fd2df6ab9cb5358fdfd9a44c05
Reviewed-on: https://gerrit.instructure.com/68555
Tested-by: Jenkins
Product-Review: Jeremy Putnam <jeremyp@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Reviewed-by: August Thornton <august@instructure.com>
2015-12-09 22:47:23 +00:00
Cody Cutrer 28a9617856 add Google Apps domain option for Google Auth
test plan:
 * sign in to google with two accounts from two different google apps
   domains
 * configure canvas to use google auth
 * confirm that you can log in to canvas with google auth (either
   account; it should ask which)
 * change the google auth provider to restrict to one of your google
   apps domains
 * log in to canvas with google - it should automatically log you
   in with the google account from the correct domain
 * change the google auth provider to no longer restrict to your
   google apps domain (and make sure it's using sub as the login
   attribute)
 * start the login process in another browser session, but before
   you complete the login:
   * change the auth provider to restrict to your google apps
     domain
   * then log in with the google user from the _other_ domain
   * you should get an error from canvas saying there was a
     problem logging in, and your log should say
     "Non-matching hosted domain: nil"
 * repeat this process, but now with email as the login attribute
 * the result should be the same, but the log should list the
   actual "incorrect" domain

Change-Id: Iff9c073073184cb62c264ee4bbd66bd028f20550
Reviewed-on: https://gerrit.instructure.com/65054
Tested-by: Jenkins
QA-Review: August Thornton <august@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2015-12-09 21:11:49 +00:00
James Williams b39ce9e945 preload user account for avatar_url in conversation json
closes #CNVS-25269

Change-Id: I64adbf9a8ca024bac9d69ad5c3626e95eedc3e2b
Reviewed-on: https://gerrit.instructure.com/68438
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
QA-Review: James Williams  <jamesw@instructure.com>
2015-12-09 20:31:21 +00:00
James Williams ac6a10a1e5 spec: fix courses_api_spec for read_sis change
Change-Id: Iff290917b41ebd50c1827bac11c74ac8b1b743c3
Reviewed-on: https://gerrit.instructure.com/68589
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
QA-Review: James Williams  <jamesw@instructure.com>
2015-12-09 20:30:47 +00:00
James Williams ab07a6b245 fix saving an edited default grading scheme from assignment page
test plan:
* edit an assignment, selecting "Display Grade as" to
 "Letter Grade"
* click "View Grading Scheme" to see the default grading scheme
* click on the edit icon to edit it
* save the grading scheme
* it should work

closes #CNVS-25096

Change-Id: I49b08bc50e7b2fc57fd70c2d9afc2031419e4294
Reviewed-on: https://gerrit.instructure.com/68437
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
2015-12-09 20:27:17 +00:00
Cody Cutrer 28795ba78f avoid recursive query for postgres array types
in large databases, pg_types could be huge, and typelem is not
indexed. so instead just assumed they're named like "_#{base_type_name}"
and add the few that don't follow that, to get a singe direct query

Change-Id: I2c70ba5758c2888d113f0d1de159d9ea01f1d84a
Reviewed-on: https://gerrit.instructure.com/68554
Reviewed-by: James Williams  <jamesw@instructure.com>
Tested-by: Jenkins
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
2015-12-09 20:24:55 +00:00
James Williams 940bce5785 don't show media previews for deleted attachments
test plan:
* embed a link to a previewable media file in html content
(e.g. a wiki page)
* the media preview should work on the page
* delete the file
* the media preview should not be shown anymore

closes #CNVS-25285

Change-Id: I6e8fb5ad875ce62c51ca9ce6882df9d6239b053e
Reviewed-on: https://gerrit.instructure.com/68442
Tested-by: Jenkins
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
2015-12-09 19:44:02 +00:00
Ethan Vizitei 765507f63e several things to help webpack compile speed
closes CNVS-25714

TEST PLAN:
web pack should compile in like 60 seconds rather than 600

Change-Id: I74716d9cccfd0253693660c0b4ad4368e91b72e7
Reviewed-on: https://gerrit.instructure.com/68497
Tested-by: Jenkins
Reviewed-by: Mike Nomitch <mnomitch@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>
QA-Review: Ethan Vizitei <evizitei@instructure.com>
2015-12-09 19:25:30 +00:00
Alex Boyd c2077e75d7 Drop CommunicationChannel::RETIRE_THRESHOLD to 1
Fixes CNVS-24308

Test plan:
 - Create a user
 - From a Rails console, run the following, where <id> is the
   newly created user's id:
     c = User.find(<id>).email_channel
     c.bounce_count = 1
     c.save!
 - Log in as the user
 - Visit the user's settings page
 - Ensure that a warning triangle shows up next to the user's
   email address on the right side of the page

Change-Id: Ibdd280ebd582c87e01f77e81917b3674810a6aba
Reviewed-on: https://gerrit.instructure.com/65804
Reviewed-by: Andrew Butterfield <abutterfield@instructure.com>
Tested-by: Jenkins
QA-Review: Adrian Russell <arussell@instructure.com>
Product-Review: Allison Weiss <allison@instructure.com>
2015-12-09 18:58:57 +00:00
Jon Jensen 6444a75b12 spec: capture js errors and screenshots, refs SD-634
always display js errors that occur in the course of each spec, and
optionally save a screenshot and html summary page for each spec
failure

test plan:
1. run a bunch of selenium specs
2. confirm you see JS Error stuff in the output (if there are any)
3. run specs w/ CAPTURE_SCREENSHOTS=1
4. confirm you get a failure page/screenshot for each spec that fails

Change-Id: Id38a3c33ce131dce946bbfe4482a52a01569f746
Reviewed-on: https://gerrit.instructure.com/68428
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
2015-12-09 17:22:29 +00:00
Cody Cutrer 6ba1571fe1 JIT provisioning
closes CNVS-25392

test plan:
 * try each of the auth providers with a user that doesn't exist in
   Canvas
 * it should still give the "unknown user error"
 * enable JIT provisioning on each, and repeat
 * you should be able to log in now
 * smoke test "self registration" workflows (they've been migrated
   from an account setting to be configured on the Canvas
   authentication provider)

Change-Id: Ia01189d6d5a1235926c4723f13ef906cf4a6261f
Reviewed-on: https://gerrit.instructure.com/63253
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2015-12-09 17:00:45 +00:00
John Corrigan f78d944573 try again to protect against missing submission types
fixes CNVS-25459 (again)

test plan:
- Test in beta; not reproducable elsewhere so far.

Change-Id: Iaeb379b7d5f87a721922e8881a8de22ef8579ae7
Reviewed-on: https://gerrit.instructure.com/68231
Tested-by: Jenkins
Reviewed-by: Matt Berns <mberns@instructure.com>
Product-Review: John Corrigan <jcorrigan@instructure.com>
QA-Review: John Corrigan <jcorrigan@instructure.com>
2015-12-09 16:46:29 +00:00
Jeremy Putnam 8ede32cc0e spec: add tiny-mce right-to-left button check
Change-Id: Ie4bc5775ae8ded7089969d5b0ee11800c9c3e3f4
Reviewed-on: https://gerrit.instructure.com/68517
Tested-by: Jenkins
Product-Review: Jeremy Putnam <jeremyp@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Reviewed-by: August Thornton <august@instructure.com>
2015-12-09 15:46:14 +00:00
Cody Cutrer b7ea9c1282 qoute a table name
refs CNVS-21900

Change-Id: I4cd227dfbf9a98671dbd0b1f6d9c6d031d619392
Reviewed-on: https://gerrit.instructure.com/68521
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
2015-12-09 15:18:32 +00:00
James Williams 4d7060547d check sis permissions directly and not on root_account
allows sub account admins to read sis information on courses,
sections (and also groups)

test plan:
* create a sub-account with a sub account admin
* as a sub-account admin, should be able to read sis ids
 on courses and sections in the sub-account

closes #CNVS-25571

Change-Id: I6912cd65b9f14b36dadac97e70cf8fc555c3a189
Reviewed-on: https://gerrit.instructure.com/68330
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Ryan Allen <rallen@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
2015-12-09 15:13:56 +00:00
James Williams 4f8443c3ce find links to deleted and unpublished content in link validator
test plan:
* create an assignment/quiz/wikipage
* create a link to it in course content
* delete or unpublish the assignment/quiz/wikipage
* the link validator should point out the invalid link

closes #CNVS-25559

Change-Id: I2326dbdc81beaa8efb7726447688357e492a8398
Reviewed-on: https://gerrit.instructure.com/68266
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins
QA-Review: Ryan Allen <rallen@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
2015-12-09 15:13:51 +00:00
James Williams a59f7d1f58 don't call publish_final_grades in module callback unless enabled
closes #CNVS-25594

Change-Id: Ibbd371de3bc6e69eb640deffab7983add633cece
Reviewed-on: https://gerrit.instructure.com/68436
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
QA-Review: James Williams  <jamesw@instructure.com>
2015-12-09 15:13:31 +00:00
Transifreq 5491772180 update mi translation
Change-Id: I48807d4ab0750674cb6b934d6bf2dd6c9bf9c7eb
2015-12-09 05:16:41 -07:00