Commit Graph

25269 Commits

Author SHA1 Message Date
James Williams e40f3f1ba9 allow course admins to see concluded group discussion posts
test plan:
* create a group discussion with "Users must post before
 seeing replies" enabled and add a reply to a subtopic
* conclude the course
* teachers should still be able to see the reply

closes #CNVS-36199

Change-Id: I7e21441d0789446fe4a798b9e560903045534231
Reviewed-on: https://gerrit.instructure.com/109335
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
2017-04-24 18:55:55 +00:00
Pam Hiett cd324d6102 switch h2 to an h1 on the Themes page
Fixes: CNVS-36469

test plan:
- as an admin navigate to "Admin" select an account
- select "themes" from the sub-nav
- the "Themes" heading should now be an h1
  example: https://screencast.com/t/tslfUqa2k0u1

Change-Id: I4adb2d1ebcca3ea670e0990a7543bdd8dd1c1c9d
Reviewed-on: https://gerrit.instructure.com/109338
Tested-by: Jenkins
Reviewed-by: Stephen Jensen <sejensen@instructure.com>
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Product-Review: Nathan Rogowski <nathan@instructure.com>
2017-04-24 18:14:26 +00:00
Simon Williams e4e9289853 add some options for turning down redis logging
Setting.set('redis_log_style', 'json') - verbose logging as JSON
Setting.set('redis_log_style', 'compact') - similar to rails SQL logs
Setting.set('redis_log_style', 'off') - no redis logging

'compact' is the default

closes CNVS-36152

test plan: set the setting to all three levels, and verify the logs look
right

Change-Id: I8f56cbb61250243f0f1976809cf28e11fd4921eb
Reviewed-on: https://gerrit.instructure.com/107706
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Reviewed-by: Tyler Pickett <tpickett@instructure.com>
Tested-by: Jenkins
Product-Review: Simon Williams <simon@instructure.com>
2017-04-24 17:58:18 +00:00
shawniverson 535d00d049 Route for Speed Grader Google Doc Preview
Fixes an issue in which the local_storage_path in attachment.rb returns
a path without a route when local file storage is used instead of s3.

closes gh-636

Test Plan:
- Create a Production Canvas instance using local storage
- Enable the Google Drive plugin
- Create a teacher, student, class, and assignment with file uploads
  enabled
- As a student, upload an assignment, such as a pdf
- Access SpeedGrader as a teacher
- Document from student should appear in preview window using Google
  Docs Viewer

Change-Id: I9863cea7da560369f8eb6aa99508b748e55ed6fe
Reviewed-on: https://gerrit.instructure.com/107628
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
QA-Review: KC Naegle <knaegle@instructure.com>
Product-Review: Keith T. Garner <kgarner@instructure.com>
2017-04-24 16:36:01 +00:00
James Williams be0f256689 master courses: give better errors on restrict_item
oops

Change-Id: I851de410f4517cf49771782abb7c1bc6ad7f9fad
Reviewed-on: https://gerrit.instructure.com/109476
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
QA-Review: James Williams  <jamesw@instructure.com>
2017-04-24 14:48:11 +00:00
Transifreq 0ebf4860e6 update he translation
Change-Id: I460681202e0545cfe149702c1d7f286e8dd6c8a9
2017-04-23 05:45:39 -06:00
James Williams 57f60caa98 don't overwrite globallookups enabled? in stub
Change-Id: I503c2d79a9e6b35f6b0487bc9f6c9aa34005f66b
Reviewed-on: https://gerrit.instructure.com/109455
Reviewed-by: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
Tested-by: Jenkins
2017-04-22 18:28:01 +00:00
Brian Park ea01fd3e3f use sis_name for student secondary info label when set
closes: CNVS-36142

Test Plan:
1. Navigate to root account settings
  - In section "SIS Integration Settings", give a value
    to the "SIS friendly name" field and save
2. Navigate to gradezilla and open student column
   header menu
  - Observe that the "SIS ID" menu item label now reads
    what was set in step 1.

Change-Id: Ic503ebf3de774c84e741b748458d024882a28783
Reviewed-on: https://gerrit.instructure.com/108947
Tested-by: Jenkins
Reviewed-by: Shahbaz Javeed <sjaveed@instructure.com>
Reviewed-by: Jeremy Neander <jneander@instructure.com>
QA-Review: Anju Reddy <areddy@instructure.com>
Product-Review: Christi Wruck
2017-04-22 01:03:44 +00:00
Mysti Sadler e631365a92 Update canvas_offline_course_viewer for new bug changes
Change-Id: I45ff12a314449330ffa3939b61c343d7152add40
Reviewed-on: https://gerrit.instructure.com/109416
Tested-by: Jenkins
Reviewed-by: Cameron Sutter <csutter@instructure.com>
Product-Review: Mysti Sadler <mysti@instructure.com>
QA-Review: Mysti Sadler <mysti@instructure.com>
2017-04-21 21:54:05 +00:00
Jon Jensen 83166e3000 spec: fix some brittle specs
:38 in particular has been failing a lot since the thin -> puma switch,
due to an existing StaleElementError race condition ... check this
stuff in a more reliable way.

Change-Id: I8c3acd820b4642f32e3d76ffacd0b1585c0ef6ae
Reviewed-on: https://gerrit.instructure.com/109415
Tested-by: Jenkins
Reviewed-by: Landon Wilkins <lwilkins@instructure.com>
Product-Review: Landon Wilkins <lwilkins@instructure.com>
QA-Review: Landon Wilkins <lwilkins@instructure.com>
2017-04-21 21:48:15 +00:00
Stephen Jensen b384bdc98c New Masquerade Modal implementation
Closes: CNVS-36403

Test Plan:
- Navigate to the following places where masquerading
  occurs
  * Courses/People (Selecting 'Act as User' through Student
  	Context Tray)
  * Courses/People (Selecting User Details from the drop
  	down menu and selecting 'Act as User')
  * Admin/Users (Select the user then select 'Act as User')
  * Groups/People (Select the user, then select 'User Account
  	Details' then 'Act as User')
  * Any other obscure locations where you can masquerade
- In each above location, selecting 'Act as User' will open
  a modal with a panda/mask animation
- Within the modal, selecting 'Act as User' should cause
  a loading spinner to appear briefly. Then you should
  be taken to the student masquerade view which should
  behave as it did before.

Change-Id: Ib5c47b65dc30041a5c6cf8a5d99b131cea997a4e
Reviewed-on: https://gerrit.instructure.com/108292
Tested-by: Jenkins
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Reviewed-by: Pam Hiett <phiett@instructure.com>
Product-Review: Kyle Follett <kfollett@instructure.com>
2017-04-21 21:02:00 +00:00
Heath Hales 7cf8a743c3 spec: master course permission, setting
Change-Id: I88af12c17900ae858e58901e452f2641307a6eb3
Reviewed-on: https://gerrit.instructure.com/109403
Tested-by: Jenkins
Reviewed-by: Matt Fairbourn <mfairbourn@instructure.com>
Product-Review: Matt Fairbourn <mfairbourn@instructure.com>
QA-Review: Matt Fairbourn <mfairbourn@instructure.com>
2017-04-21 20:48:51 +00:00
James Williams 5720e59f84 Revert "Hide Enable new SIS integration settings in prod"
This reverts commit 38254bc340.

Change-Id: I5aae121822208636bb11907f252cb24190f8f301
Reviewed-on: https://gerrit.instructure.com/109393
Tested-by: Jenkins
QA-Review: Pedro Fajardo <pfajardo@instructure.com>
Reviewed-by: Rob Orton <rob@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2017-04-21 19:54:03 +00:00
Derek Bender b205368be4 follow up copyright headers and cleanup
No change in functionality should be present, this work was separated
out of ac9666a.

refs: CNVS-31606

test plan:
 - specs pass

Change-Id: I05787067c6596f1225f3c2196ad5807be14c8a95
Reviewed-on: https://gerrit.instructure.com/108465
Tested-by: Jenkins
Reviewed-by: Shahbaz Javeed <sjaveed@instructure.com>
Reviewed-by: Keith T. Garner <kgarner@instructure.com>
Product-Review: Derek Bender <djbender@instructure.com>
QA-Review: Derek Bender <djbender@instructure.com>
2017-04-21 19:03:48 +00:00
Nick Houle 38254bc340 Hide Enable new SIS integration settings in prod
Fixes: SIS-2838

Test plan:
- Load the Canvas app in the production environment locally
- Confirm you cannot see the Enable new SIS integration feature
  flag on the account settings page under the Feature Options tab

Change-Id: If9e9482129af95c1c413ab7b0ffba41e48f0b6aa
Reviewed-on: https://gerrit.instructure.com/109365
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins
QA-Review: Mark McDermott <mmcdermott@instructure.com>
Product-Review: Brad Humphrey <brad@instructure.com>
2017-04-21 18:17:10 +00:00
Clay Diffrient bb8423e71b Add onEntered callback to tutorial tray
This is a bit redundant, but seems to make VO happy by delaying
when the focus gets set to the collapse button.

closes FALCOR-207

Test Plan:
  - Enable tutorial trays at the account and at the
    user level
  - Make sure some trays are set to non-collapsed status
  - Navigate between pages using VO
  - Notice that when you go to a page and a tray pops out
    VO focus gets set to the collapse button

Change-Id: Ic74d628e13bdd2faf0251df3c5ef8887a882be36
Reviewed-on: https://gerrit.instructure.com/109317
Tested-by: Jenkins
Reviewed-by: Felix Milea-Ciobanu <fmileaciobanu@instructure.com>
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Product-Review: Christi Wruck
2017-04-21 15:26:19 +00:00
Brian Park e4ddead63d fix i18n grade parsing and formatting
fixes: CNVS-35682

Test Plan:
1. Navigate to gradezilla
2. Edit some numeric grades (point/percentage)
  - Observe value is displayed with i18n in view mode
  - Observe value is displayed with i18n in edit mode
  - Observe correct value is displayed after editing
3. Switch to different locale and repeat #2
4. Repeat #2 with non-numeric grades
  - Observe non-numeric grades were not broken
5. As a student, go to student grades page
6. Enter a 'What-If' score for an assignment
  - Observe numbers are parsed correctly for locale
  - Observe numbers are displayed correctly for locale
7. Revert 'What-If' score
  - Observe that the original value is correctly restored

Change-Id: I6588849485e1241bcd1250d4a7d413b8d7a2606b
Reviewed-on: https://gerrit.instructure.com/106809
Tested-by: Jenkins
Reviewed-by: Sheldon Leibole <sheldon@siimpl.io>
Reviewed-by: Jeremy Neander <jneander@instructure.com>
QA-Review: Anju Reddy <areddy@instructure.com>
Product-Review: Keith T. Garner <kgarner@instructure.com>
2017-04-21 14:06:44 +00:00
James Williams 2279243f04 bump lock_version on enrollment state on conclusion/deletion
Change-Id: I8b0ddbbb70b1af038d43bbc54a8830b8c121b1c9
Reviewed-on: https://gerrit.instructure.com/108990
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
QA-Review: James Williams  <jamesw@instructure.com>
2017-04-21 12:29:52 +00:00
Clay Diffrient 679f1cb699 Add length exemption for revert commit messages
This will make it so revert commits can make it through
without needing truncation done on the original commit message

Test Plan:
  - Amend this commit and make the commit message really long
  - Run script/lint_commit_message
  - It will output an error message about length
  - Amend the commit again and put "Revert" at the beginning
    of the subject line.
  - Run the linter again
  - It will not print out the error now

Change-Id: Id2b57e202a0bbd46dbc8de29d9bcc984c9c5fe99
Reviewed-on: https://gerrit.instructure.com/109316
Tested-by: Jenkins
Reviewed-by: Jon Jensen <jon@instructure.com>
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
2017-04-21 04:03:36 +00:00
James Williams e8c3368aca fix copying attachments on local storage
also fix copy_attachment_content when the destination file
doesn't exist yet

Change-Id: I46489f7f7395061bd34560b5d471c56133cf1dca
Reviewed-on: https://gerrit.instructure.com/109231
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
QA-Review: James Williams  <jamesw@instructure.com>
2017-04-20 23:41:43 +00:00
Rob Orton 187447e6b9 make page_views for api get requests
fixes CNVS-33580

test plan
 - hit canvas api
 - it should generate a page view

Change-Id: I1b5f4d0001f552c3c33ec3ebb94bf2442376e79a
Reviewed-on: https://gerrit.instructure.com/98821
Reviewed-by: Simon Williams <simon@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2017-04-20 22:59:49 +00:00
Jon Jensen ac3c05a35c spec: don't nuke the selinimum manifest
regression in 5d998e808e

this should get build times back down again, as more commits will be
selinimizable

Change-Id: I202fe22b734e29afb6c0e536cafb7e6f81eac071
Reviewed-on: https://gerrit.instructure.com/109298
Tested-by: Jenkins
Reviewed-by: Landon Wilkins <lwilkins@instructure.com>
Product-Review: Landon Wilkins <lwilkins@instructure.com>
QA-Review: Landon Wilkins <lwilkins@instructure.com>
2017-04-20 22:58:39 +00:00
Jon Jensen cf2f1d7510 spec: fix some oversights in re-run changes, refs SD-2387
ensure we pick up the other location style when queueing up reruns
and when deciding not to re-run changed files

test plan:
1. see examples that were rerun in selenium build on PS 2
2. see modified examples that were not rerun in rspec build on PS 2

Change-Id: I31e8f4b8cc0ef8a0cc6cb2d5e8b66d69d1e931c0
Reviewed-on: https://gerrit.instructure.com/109288
Tested-by: Jenkins
Reviewed-by: Landon Wilkins <lwilkins@instructure.com>
Product-Review: Landon Wilkins <lwilkins@instructure.com>
QA-Review: Landon Wilkins <lwilkins@instructure.com>
2017-04-20 22:58:34 +00:00
Clay Diffrient 810e5b2dd4 Revert "Remove `development` from Tutorial ..."
Accessibility defects were found and filed as
FALCOR-207 and FALCOR-208. Once these are completed this can be
re-committed and re-enabled.

This reverts commit 5cd49368b5.

Change-Id: I88390b49c3f1bb5f0dd0abcd4aa53972de28c983
Reviewed-on: https://gerrit.instructure.com/109299
Reviewed-by: Josh Simpson <jsimpson@instructure.com>
Product-Review: Robert Lamb <rlamb@instructure.com>
QA-Review: Robert Lamb <rlamb@instructure.com>
Tested-by: Robert Lamb <rlamb@instructure.com>
2017-04-20 22:53:09 +00:00
Clay Diffrient 8614c3d228 Revert "Allow modules home page and ..."
Accessibility defects were found and filed as
FALCOR-207 and FALCOR-208. Once these are completed this can be
re-committed and re-enabled.

This reverts commit 9a38016161.

Change-Id: I62e9774f46f4bea347693f18458b7d5883aa4115
Reviewed-on: https://gerrit.instructure.com/109295
Reviewed-by: Josh Simpson <jsimpson@instructure.com>
Product-Review: Robert Lamb <rlamb@instructure.com>
QA-Review: Robert Lamb <rlamb@instructure.com>
Tested-by: Robert Lamb <rlamb@instructure.com>
2017-04-20 22:51:58 +00:00
Jacob Fugal 547ca9f669 don't ignore address_book cache
don't need to preload users that are already in the cache. not
functionality change, just performance

test-plan: N/A

Change-Id: I34aecd97a35619718a7c66c902974d3b2cec09ae
Reviewed-on: https://gerrit.instructure.com/109287
Reviewed-by: Jonathan Featherstone <jfeatherstone@instructure.com>
Tested-by: Jenkins
Product-Review: Jacob Fugal <jacob@instructure.com>
QA-Review: Jacob Fugal <jacob@instructure.com>
2017-04-20 22:16:50 +00:00
Ryan Shaw df14a90b7c Fix yarn.lock
test plan:
Run yarn
Run it again, 
it shouldn’t take more than a couple seconds

Change-Id: I0ceeccac6ef1036fc99628c19afb9f18edeb8939
Reviewed-on: https://gerrit.instructure.com/109265
Reviewed-by: Jon Jensen <jon@instructure.com>
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Tested-by: Jenkins
2017-04-20 20:22:49 +00:00
Pam Hiett 48f2963947 fix sis import sub-nav item so it works with theming when active
Fixes: CNVS-36421

test plan:

- ensure you have "sis imports" checked under your account settings
  (first tab "settings" half way down the page)
- navigate to the "SIS Import" sub nav menu item and it should
  now be collerized to match an active tab/selection
- example: https://screencast.com/t/qjifu2iQ3xKW

Change-Id: I1fbdaec51edf03f8a3cceeaae262790edf07a497
Reviewed-on: https://gerrit.instructure.com/109004
Tested-by: Jenkins
Reviewed-by: Jennifer Stern <jstern@instructure.com>
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Product-Review: Colleen Palmer <colleen@instructure.com>
2017-04-20 20:20:03 +00:00
Pam Hiett 4e85fa0d38 Add "Use as Front Page" to individual page settings
Fixes: CNVS-36154

test plan:
- as a teacher/admin
- create at least 2 "pages" that are published and 1 that is
  not published
- click the title of one of the published pages (so you are taken
  to the main index page of that title)
- click the cog that appears next to the "published" & "edit" btns
- there should be an option to "Use as Front Page" - select
- this page should now be set as the front page :D
  example: https://screencast.com/t/TMHN4dvV

Change-Id: I571adf61954829b285adaf1cbcb497e91210e825
Reviewed-on: https://gerrit.instructure.com/108075
Tested-by: Jenkins
Reviewed-by: Stephen Jensen <sejensen@instructure.com>
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Product-Review: Colleen Palmer <colleen@instructure.com>
2017-04-20 20:19:57 +00:00
Felix Milea-Ciobanu 54a5f75d71 sync button functionality
fixes MC-158

test plan:
- navigate to the course home of a blueprint course
- open the blueprint course sidebar
- click the sync button
- note that the sync button is replaced by a progress indicator and
  some text describing the syncing
- note that if you refresh the page in the middle of the sync and open
  the blueprint sidebar again, it still shows the progress indicator
  (this one might be tricky to test because the sync happens really
  fast sometimes)

Change-Id: I78cea6fd2c1ecb50e1c3c18281dfbacd83459893
Reviewed-on: https://gerrit.instructure.com/109028
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Jenkins
QA-Review: Heath Hales <hhales@instructure.com>
Product-Review: Kendall Chadwick <kchadwick@instructure.com>
2017-04-20 20:06:47 +00:00
Jacob Fugal cd7462507b unify admin view handling in address book
fixes CNVS-35217, CNVS-35799, CNVS-35800

- allow Services::AddressBook.known_in_context to take a whitelist of
  user_ids. enables...

- allow address_book.known_users to take a context parameter (replaces
  include_context; see note below). enables...

- use known_users(users, context: ...) when normalizing recipients in
  the conversations controller, in place of post-filtering results from
  known_in_context(context, maybe_admin).

- remove is_admin flag from address_book.known_in_context; admin view
  never utilized for this method

- also remove is_admin flag from address_book.search_users; admin view
  is determined implicitly when context parameter present

- move admin_context checks from conversations controller and search
  controller inside the address book

- don't apply read_as_admin check when evaluating params[:context] for
  visible contexts in search results (it wasn't intended for that, only
  for @admin_context, which is gone)

- finally, make passing of contexts consistent; all of known_users,
  known_in_context, and search_users allow asset_strings _or_ context
  objects

note on include_context: include_context was intended to force inclusion
of participants in an otherwise unconnected context for an externally
vetted admin, without restricting other contexts. the context parameter
is instead intended to restrict to participants known either through
that context, or as an admin over that context while other contexts are
ignored. this is more consistent with how the call was being used.
meanwhile, whether an admin view is appropriate for that context is
determined within the address book instead of by the caller.

when determining whether a context is eligible for admin view within
known_users or search_users, the sender must have read_as_admin
permission on the context _and_ not be a participant in the context's
course (if any). this allows restrictions due to the course
participation to override read_as_admin, as they should.

test-plan:
[CNVS-35217]
- have an account with an account admin
- have a course in that account with two teachers (one section-limited,
  one not), and a student in a different section than the
  section-limited teacher (all active, published, etc.)
- ingest the data into the address book service and configure canvas to
  use the service
- as the account admin, search for the student in the inbox in the
  context of the course; should find them.
- as the non-section-limited teacher, search for the student in the
  inbox in the context of the course; should find them.
- as the section-limited teacher, search for the student in the inbox in
  the context of the course; should not find them.

[CNVS-35799, CNVS-35800]
- add two more students to the same course, then remove one from the
  course and deactivate the other
- re-ingest the data into the address book service (or have had the
  kinesis stream hooked up during the change)
- as the non-section-limited teacher, search for the student that was
  added but then removed; should not find them
- as the non-section-limited teacher, search for the student that was
  deactivated; should not find them
- as the account admin, search for the student that was deactivated;
  should not find them

Change-Id: I3233d8d45394c9233adc9888bfaf477e73bfde11
Reviewed-on: https://gerrit.instructure.com/107053
Tested-by: Jenkins
Reviewed-by: Andrew Huff <ahuff@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
2017-04-20 19:47:07 +00:00
Nick Houle 0a9c46b52c Expose authentication provider ID and integration ID in reports
Fixes: CNVS-31655

Test plan:
- Navigate to the account settings page
- Navigate to the Reports tab
- Click `Configure` for the Provisioning report
- In the modal click `Users CSV` and then click `Run Report`
- Once the report finishes click the download link
- Open the csv and confirm the `authentication_provider_id`
  and the `integration_id` are present in the report
- Repeat the Provisioning report scenario just for `Courses CSV`
  AND `Sections CSV`. NOTE: The `Courses CSV` and `Sections CSV`
  reoprts WILL NOT have `authentication_provider_id`
- Repeat these same steps for the `SIS Export` report and expect
  the same results

Change-Id: I543292565c5435cdfae737d7105574a83c9702f4
Reviewed-on: https://gerrit.instructure.com/108217
Tested-by: Jenkins
Reviewed-by: Jayce Higgins <jhiggins@instructure.com>
QA-Review: Mark McDermott <mmcdermott@instructure.com>
Product-Review: Brad Humphrey <brad@instructure.com>
2017-04-20 18:09:54 +00:00
Jon Jensen ff19c48de2 spec: re-run as few examples as necessary, fixes SD-2387
don't re-run all shared_examples when just one fails, and don't rerun
otherwise colliding example locations

also ensure the various formatters output a unique/correct rerun argument
for any such failing example

test plan:
1. see intentional patchset 1 failures and corresponding output and error
   pages
2. see rerun failures on this patchset (if any)

Change-Id: I3f40b576f9f78bd9541cf9934ef348724fa815e6
Reviewed-on: https://gerrit.instructure.com/109235
Tested-by: Jenkins
Reviewed-by: Landon Wilkins <lwilkins@instructure.com>
Product-Review: Landon Wilkins <lwilkins@instructure.com>
QA-Review: Landon Wilkins <lwilkins@instructure.com>
2017-04-20 17:55:50 +00:00
Spencer Olson b5759303b5 use effective_due_dates in grade calculator
closes CNVS-36422

Change-Id: I57c120abfb309d510195926c8cf0f859798e9303
Reviewed-on: https://gerrit.instructure.com/109030
Tested-by: Jenkins
Reviewed-by: Jeremy Neander <jneander@instructure.com>
Reviewed-by: Keith T. Garner <kgarner@instructure.com>
QA-Review: KC Naegle <knaegle@instructure.com>
Product-Review: Keith T. Garner <kgarner@instructure.com>
2017-04-20 17:54:01 +00:00
Felix Milea-Ciobanu 393b19575d add blueprint course locking to discussion index pages
closes MC-44

test plan:
- create a course, make it a master course
- create a discussion topic in the master course
- create a course and make it a child of the above master course
- go to the master course's Discussions page
  > expected result: there is an unlocked icon with the discussion
- click the unlocked lock
  > expected result: it changes to a locked lock
- go to the child course's Discussions page
  > expected result: the page has a locked lock icon
  > note that the icon is not a button (not clickable)
- create a plain old non-master type course
- go to discussions and add a new discussion
  > expected result: no lock icon

Change-Id: Ib90de7548f01acf8ea6fe196292909accdd38d24
Reviewed-on: https://gerrit.instructure.com/107855
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Jenkins
QA-Review: Heath Hales <hhales@instructure.com>
Product-Review: Kendall Chadwick <kchadwick@instructure.com>
2017-04-20 17:04:11 +00:00
Ed Schiebel 4c5250fe2d Add lock icon button to pages and quizzes index page
closes MC-46 MC-45

test plan:
Pages:
  - create a course, add a page
  - make the course a master course
  - create a course.
  - make it a child of the above master course
  - go to the master course's Pages page
  > expected result: there is an unlocked lock icon button with the page
  - click the unlocked lock
  > expected result: it changes to a locked lock
  - go to the child course's pages page
  > expected result: the page has a locked lock icon. it is not a  button.
  - create a plain old non-master type course
  - go to pages and ad a page
  > expected result: no lock icon
Quizes:
  - same as pages, but add a couple quizzes to the master course
    and check for locks on the quiz page in master and child

Change-Id: I66a8df875766edfbd2d0e4f4c2b51bedd6302c30
Reviewed-on: https://gerrit.instructure.com/107476
Reviewed-by: Felix Milea-Ciobanu <fmileaciobanu@instructure.com>
Tested-by: Jenkins
QA-Review: Heath Hales <hhales@instructure.com>
Product-Review: Kendall Chadwick <kchadwick@instructure.com>
2017-04-20 16:59:47 +00:00
Ed Schiebel 774b2c85c0 Add lock/unlock icon to assignments on index page
creates the lock button for use on index pages
and adds it to master class assignments

closes MC-43

test plan:
  - create a master course
  - in course settings, lock some stuff
  - create an assigment or two
  > expected result: each assignment has an open lock next to the
    publish icon button
  - click the lock
  > expected result: it toggles
  - creae a child course
  - go to the child course's assignments page
  - edit an assignment
  > expected result: whatever you locked ^up there^ cannot be edited

Change-Id: Ib7e78692603cac5b575f544b6972adbe631d3411
Reviewed-on: https://gerrit.instructure.com/107354
Reviewed-by: Felix Milea-Ciobanu <fmileaciobanu@instructure.com>
Tested-by: Jenkins
QA-Review: Heath Hales <hhales@instructure.com>
Product-Review: Kendall Chadwick <kchadwick@instructure.com>
2017-04-20 16:59:36 +00:00
Stephen Jensen 5351419f02 Allow user to take off “colorized” background on dashboard cards
Closes: CNVS-33354

Test Plan:
- Make sure you have
	- the course images feature turned on
	- multiple courses some with images, some not

- On the dashboard, click on the cog in the top
  right corner of the screen
- When 'Recent Activity' is checked/selected, the
  dropdown menu should only have two options
  	- Recent Activity, Course Cards
- When 'Course Cards' is checked/selected the
  dropdown menu should have three options
  	-Recent Activity, Course Cards, and Color Overlay
- Selecting the Color Overlay option should toggle
  the semi-transparent color overlays on the course
  cards that have images
- Also, when the color overlay is removed, there
  should now be a solid circle of color behind
  the icon button in the card's upper right
- The aesthetic should be in line with these
  screens, except the current compose icon will be
  replaced by the three circle icon in a separate
  commit
https://instructure.invisionapp.com/share/V57TR6CSU#/
screens/210837030

Change-Id: I2b3cb09479af937011c37342eec1883418720099
Reviewed-on: https://gerrit.instructure.com/99381
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Product-Review: Colleen Palmer <colleen@instructure.com>
2017-04-20 16:12:25 +00:00
Rob Orton 073408990f add user_observers to sis_export report
fixes CNVS-36062

test plan
 - export user_observers, it should work

Change-Id: Icad042d8dbcd8245fcbab51a8bda77adc4318cff
Reviewed-on: https://gerrit.instructure.com/107531
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2017-04-20 04:25:21 +00:00
Jon Jensen 8976bf760a spec: fix flaky specs frd
followup to 3ef932cf9a

Change-Id: I1a6aa1ecc6f143242167dd3f22324b4f409c609f
Reviewed-on: https://gerrit.instructure.com/109167
Tested-by: Jenkins
Reviewed-by: Landon Wilkins <lwilkins@instructure.com>
Product-Review: Landon Wilkins <lwilkins@instructure.com>
QA-Review: Landon Wilkins <lwilkins@instructure.com>
2017-04-19 23:57:15 +00:00
Michael Brewer-Davis c5a66aa4ad mastery path breakdown a11y improvements
- remove redundant text
 - improve focus
 - hide sidebar from screenreaders on hide

closes CNVS-35365, CNVS-35369

Test plan:
- verify that sidebars are not keyboard focusable
  or screen-reader readable when not shown
  (before showing/after closing)
- verify that focus is changed correctly
  - on sidebar open, to close button
  - on sidebar close, to button that was clicked
    to launch sidebar (i.e., one of the "3 of 7
    students" type buttons
- verify that "Send Message" and "View submission" links
  in student details do not have redundant title/mouseover
  text

Change-Id: I2fd4c59405647dfb5611b3bc6652b679e21ea041
Reviewed-on: https://gerrit.instructure.com/106350
Reviewed-by: Matt Berns <mberns@instructure.com>
Tested-by: Jenkins
QA-Review: Leo Abner <rabner@instructure.com>
Product-Review: Michael Brewer-Davis <mbd@instructure.com>
2017-04-19 21:44:48 +00:00
James Williams 2527eb5652 don't try to create default_enrollment_term on slave
closes #CNVS-36158

Change-Id: I757e52fb0c451b86f6e9bf48f10e8e2ff22e7092
Reviewed-on: https://gerrit.instructure.com/109123
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
QA-Review: James Williams  <jamesw@instructure.com>
2017-04-19 19:58:06 +00:00
James Williams c6a9e3097f fix user search query with domain account on different shard
closes #CNVS-36161

Change-Id: I90d6d76f06b9bbe8a06b4df7c56f8989cf9c1771
Reviewed-on: https://gerrit.instructure.com/109120
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
QA-Review: James Williams  <jamesw@instructure.com>
2017-04-19 19:47:05 +00:00
Andrew Butterfield 2f2a8cd55e Fix broken spec
Change-Id: I95d674893c8bd7a749a5e3aa182a10de3d697fee
Reviewed-on: https://gerrit.instructure.com/109115
Reviewed-by: Jon Jensen <jon@instructure.com>
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
Tested-by: Jenkins
2017-04-19 19:14:52 +00:00
Jon Jensen 3ef932cf9a spec: fix some spec weirdness
the after hooks are broken (@a2 is nil) and unnecessary (because of
transactions). also, these specs fail fairly regularly, seemingly due
to userSettings bleeding across specs (same course + user ids, so settings
from a previous spec could still apply)

Change-Id: I7b2ddfcd5bf4a9cf6a303f42476b164ffec97db2
Reviewed-on: https://gerrit.instructure.com/109095
Tested-by: Jenkins
Reviewed-by: Landon Wilkins <lwilkins@instructure.com>
Product-Review: Landon Wilkins <lwilkins@instructure.com>
QA-Review: Landon Wilkins <lwilkins@instructure.com>
2017-04-19 18:55:13 +00:00
Simon Williams 7c13e71169 put auditor unconfigured error in response
closes CNVS-36170

test plan:
- in a canvas instance without auditors configured, try to use the api
- you should get a 404 with a message that they are not configured
- with auditors configured, everything should work

Change-Id: I6d0cf51c123fd5032c03cd6a6328f91a7d4672d6
Reviewed-on: https://gerrit.instructure.com/108988
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
2017-04-19 18:40:24 +00:00
wdransfield 9680612d46 Add submisison lti api to restricted capabilities
Closes PLAT-2510

Test Plan:
Verify Lti::ToolConsumerProfile::RESTRICTED_SERVICES includes
the submision services from the lti submission api controller.

Change-Id: I4012f7fedbf2cf37dbbd207341eb23bce55374b7
Reviewed-on: https://gerrit.instructure.com/108856
Tested-by: Jenkins
Reviewed-by: Nathan Mills <nathanm@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
2017-04-19 18:01:36 +00:00
Andrew Butterfield 6c76c96a4b Add ability to delete all subscriptions by tool_proxy
fixes PLAT-2460

This will need to be tested in conjunction with a commit in the
live-events-subscription project

Test plan:
* Start the subscription service
* With the canvas api or in a rails console create a bunch of
  subscriptions using the same tool proxy
* Using the rails console issue the following command passing in the
  tool proxy
  res = Services::LiveEventsSubscriptionService.destroy_all_tool_proxy_subscriptions(tp)
* Ensure that canvas makes the right request to the subscription service
  and that the subscription service returns a 200

Change-Id: Ied5527d46db50bec14de0455907b209cb1375df2
Reviewed-on: https://gerrit.instructure.com/108834
Tested-by: Jenkins
Reviewed-by: Matthew Wheeler <mwheeler@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Andrew Butterfield <abutterfield@instructure.com>
2017-04-19 17:51:25 +00:00
James Williams 0e85a7d9aa queue course jobs in a job on grading period change
can have thousands have courses in a term and take
 too long to do in one request

Change-Id: Ib07fd9013371e63f3527350aa4eeca8d9a9b8c38
Reviewed-on: https://gerrit.instructure.com/108640
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
QA-Review: James Williams  <jamesw@instructure.com>
2017-04-19 17:26:04 +00:00
Jayce Higgins 8b52ff0dec Add root account UUID to sub service JWT
Fixes: PLAT-2379

Change-Id: I6f64e4cd54c60cddb1eefaa31fd29c098c2f2006
Test-Plan:
 - Modify the SubscriptionService jwt middleware to
      console.log the raw jwt it decodes
    - live-events-subscriptions/app/middleware/JwtService.js
 - Ensure that RootAccountUUID is part of the jwt body
Reviewed-on: https://gerrit.instructure.com/107874
Tested-by: Jenkins
Reviewed-by: Andrew Butterfield <abutterfield@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Jayce Higgins <jhiggins@instructure.com>
2017-04-19 17:17:55 +00:00