Commit Graph

47883 Commits

Author SHA1 Message Date
Matthew Lemon 82291bd7b5 fix busted inbox gql query
flag=none

Test Plan:
- Navigate to inbox
- Select a conversation and hit the reply button
- It should load the compose modal
- Hit reply on a conversation message inside a conversation
- It should load the compose modal

Change-Id: I9dfe2a1df44b857bd2198f538159763d0238c352
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276778
Reviewed-by: Jeffrey Johnson <jeffrey.johnson@instructure.com>
Product-Review: Jeffrey Johnson <jeffrey.johnson@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Jeffrey Johnson <jeffrey.johnson@instructure.com>
2021-10-25 22:01:17 +00:00
Jackson Howe f0e10a5236 Support parents with cross-shard enrollments
closes LS-2750
flag = k5_parent_support

Test plan:
 - Check out the setup steps in ticket LS-2750
 - Visit the dashboard as the observer and expect to see the
   cross-shard user in the dropdown

Change-Id: I9dff318e177e7891a063f4cf4afa860fb38b1280
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276370
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Nate Armstrong <narmstrong@instructure.com>
QA-Review: Nate Armstrong <narmstrong@instructure.com>
Product-Review: Jackson Howe <jackson.howe@instructure.com>
2021-10-25 21:32:35 +00:00
Matthew Lemon 137fd38f3b spec: skip spec until we fix inbox FE
Change-Id: Ia04b4eba9e65f0fa6b73cc02f1d07b83932cc3d3
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276772
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Caleb Guanzon <cguanzon@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Caleb Guanzon <cguanzon@instructure.com>
2021-10-25 21:10:52 +00:00
Adrian Packel f23e6259a4 Add updated "message students who" dialog
Add a basic component for an updated "Message Students Who" dialog,
viewable in Storybook but not yet accessible from Gradebook. This is
meant to give us a base to begin adding functionality and does not
presume to be the correct or final version of the UI.

closes EVAL-2056
flag=message_observers_of_students_who

Test plan:
- Test that the component appears as expected in Storybook

Change-Id: Ice349c68d4c717809d4fcbae4c8cae0a5fe7a5f1
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276525
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Adrian Packel <apackel@instructure.com>
Product-Review: Syed Hussain <shussain@instructure.com>
2021-10-25 20:38:53 +00:00
James Butters 0e69a91cf3 do not run node if queue is empty
[use-rspecq]

Test Plan:
-Jenkins passes both with and without rspecq
-add sleep to one node, wait for queue to empty
  -node will not run any stages since queue is empty
-add sleep to one node, wait but still have tests in queue
  -node will still run stages and tests

Change-Id: Iace45f456c19284c6a338f5537a367917fd4f9c0
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275325
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: James Butters <jbutters@instructure.com>
Reviewed-by: Kyle Rosenbaum <krosenbaum@instructure.com>
Product-Review: James Butters <jbutters@instructure.com>
2021-10-25 20:17:59 +00:00
Matthew Lemon 56ddf1597d implement reply for conversation messages
fixes VICE-2141
flag=react_inbox

Test Plan:
- Enable the react inbox FF
- Navigate to the inbox
- Open a conversation and reply to a conversation message
  within the conversation
- Huzzah

Change-Id: If9d4baf4d538c4ea07f8df355651407276180279
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276561
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jeffrey Johnson <jeffrey.johnson@instructure.com>
QA-Review: Jeffrey Johnson <jeffrey.johnson@instructure.com>
Product-Review: Jeffrey Johnson <jeffrey.johnson@instructure.com>
2021-10-25 19:52:48 +00:00
Spencer Olson 5cf0922f94 stop passing custom prop to time tag
flag=none

Test Plan:
- specs pass

Change-Id: If629f81ac9bca86cc4b07d31c9cf6d7cfda5ce30
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275961
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Aaron Shafovaloff <ashafovaloff@instructure.com>
Reviewed-by: Syed Hussain <shussain@instructure.com>
Reviewed-by: Adrian Packel <apackel@instructure.com>
QA-Review: Spencer Olson <solson@instructure.com>
Product-Review: Syed Hussain <shussain@instructure.com>
2021-10-25 19:09:18 +00:00
Robin Kuss b57934335e spec:pace plan modules selenium
Closes LS-2767

Test Plan: passes Jenkins and tests the pace plan modules

Change-Id: Id8cdb359ca396e3ad550d2e9d46e3da420e5be02
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276584
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Nate Armstrong <narmstrong@instructure.com>
QA-Review: Nate Armstrong <narmstrong@instructure.com>
Product-Review: Robin Kuss <rkuss@instructure.com>
2021-10-25 19:02:34 +00:00
Cody Cutrer bec3c7d33b RuboCop: Lint/UnusedMethodArgument gems
all manual. a few cascaded to cleaning up leaky consts in specs

Change-Id: Ia77478b92f23e06d1023f4e3cfa02a751593a368
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276484
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2021-10-25 18:57:24 +00:00
Cody Cutrer ea8cc92081 unguard the database server before running partitioners
fixes FOO-2519

since they could be set to prefer_secondary, which will ignore the GuardRails.activate(:deploy)

Change-Id: I6e7234e6b6b68121406d5fbbacbb19c7bbe984c7
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276727
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob Burroughs <jburroughs@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2021-10-25 18:20:33 +00:00
Caleb Guanzon 5392acd247 spec: add new conversations media test
fixes VICE-984
flag=react_inbox

unfortunately, in selenium, trying to attach a media file
to upload leads to packages/canvas-media/src/ComputerPanel.js
erroring out. so this tests stops that the ui for uploading media
exists when replying

test plan: code review

Change-Id: I179d5adf369f7e38c3c9e44874941f21f526eee4
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276750
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Omar Soto-Fortuño <omar.soto@instructure.com>
QA-Review: Omar Soto-Fortuño <omar.soto@instructure.com>
Product-Review: Omar Soto-Fortuño <omar.soto@instructure.com>
2021-10-25 18:17:37 +00:00
Omar Gerardo Soto-Fortuño 8cea9a7a6f Fix Discussions Reporting notifications
closes VICE-2185

flag=discussions_reporting

test plan:
  - Specs pass

qa risk: low

Change-Id: I3ceadca171cbe6bc52a9bbca6929942016ff66a5
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276753
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Drake Harper <drake.harper@instructure.com>
QA-Review: Drake Harper <drake.harper@instructure.com>
Product-Review: Drake Harper <drake.harper@instructure.com>
2021-10-25 18:14:49 +00:00
Drake Harper 23588d60a0 Fix unique key prop console error in ThreadActions
refs VICE-2075
flag=discussions_reporting

Test Plan:
 - load a discussion with redesign ff turned on
 > should not see a unique kep prop console error

Change-Id: Ia1e3242c6f46330c34fc1c5a17905cfabaf81b21
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276751
Reviewed-by: Omar Soto-Fortuño <omar.soto@instructure.com>
QA-Review: Omar Soto-Fortuño <omar.soto@instructure.com>
Product-Review: Omar Soto-Fortuño <omar.soto@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-10-25 18:11:27 +00:00
Aaron Ogata 5ec29f69d0 only spawn threads for files that will actually upload
refs DE-859

Change-Id: I625a36b823a3ed7d879e0e1da266c235c74a1f0a
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276752
Reviewed-by: Jacob Burroughs <jburroughs@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2021-10-25 18:03:14 +00:00
Chawn Neal 2dec8ef1ec Convert Delete message from flex to view
fixes VICE-1833
flag=react_discussion_post

This will fix the focus from being cut off.

Test Plan:
 1) Go to a discussion.
 2) create a root reply.
 3) create a child for that reply.
 4) delete that reply.
 5) Compare delete message with existing design.
  a) you can compare to cd.
  b) or a deleted post before my change.
 6) click on the screen above the message.
 7) use the tab to novigate to the deleted_message's replies.
 8) focus state should encapsulate the replies button

Change-Id: Ia788f878f6f0406be98f1af7ba768bdf10551de5
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276291
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Drake Harper <drake.harper@instructure.com>
Reviewed-by: Matthew Lemon <mlemon@instructure.com>
QA-Review: Drake Harper <drake.harper@instructure.com>
Product-Review: Drake Harper <drake.harper@instructure.com>
2021-10-25 17:57:07 +00:00
Matthew Lemon ddf60591dc improve UX for reporting profile pictures
fixes VICE-2049
flag=none

Test Plan:
- Enable profiles on the account settings

- As a teacher navigate to the people page on a course
- Click on a user with a profile picture and then click on their name
  in the tray that opens
- The avatar image should no longer be clickable and there should now
  be a link next to the avatar saying "Remove avatar picture"
- Clicking the link should open a "Confirm Removal" modal with the
  message "Are you sure you want to remove this user's profile picture?"
- Hitting confirm in the modal should result in a success alert saying
  "The profile picture has been removed." and the avatar image should
  be removed from the page.
- If you refresh the page, the avatar image should show the default
  avatar image.

- As a student follow the same steps as above to get to a different
  user's profile page
- As a student you should see a link with the text "Report inappropriate
  picture"
- Clicking the link should open a "Report Profile Picture" modal with
  the message "Reported profile pictures will be sent to administartors
  for review. You will not be able to undo this action."
- Hitting confirm in the modal should result in a success alert saying
  "The profile picture has been reported" and the link should no longer
  be a link and the text should update to "This image has been reported."
- Refreshing the page should show the text "This image has been reported."
  instead of a link

Change-Id: If8fed6939d27c610fb66c3f4b0491a3fa350ef02
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276261
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Davis Hyer <dhyer@instructure.com>
QA-Review: Davis Hyer <dhyer@instructure.com>
Product-Review: Davis Hyer <dhyer@instructure.com>
2021-10-25 17:57:04 +00:00
Matthew Lemon 0b5401fe42 allow querying conversation messages before a given date
When replying to an older message in a conversation we only
want to include older messages. This will allow us to exclude
newer messages when replying to a conversation message.

refs VICE-2141
flag=react_inbox

Test Plan:
- Have a conversation with a bunch of messages of varying ages
- Navigate to /graphiql
- Run the following query:

```
query MyQuery {
  legacyNode(_id: <conversation_id>, type: Conversation) {
    ... on Conversation {
      id
      conversationMessagesConnection(createdBefore: <iso8601_timestamp>) {
        nodes {
          createdAt
          body
          _id
        }
      }
    }
  }
}
```

- You should only get back messages created before the given
  timestamp

Change-Id: Ib32cb3224d6fbf469c78b4f35d1bc4726b0fa365
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276560
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Davis Hyer <dhyer@instructure.com>
QA-Review: Davis Hyer <dhyer@instructure.com>
Product-Review: Davis Hyer <dhyer@instructure.com>
2021-10-25 17:56:41 +00:00
Lindsey Reno f3fab56668 Add url to new analytics feature flag description
test plan:
 - Visit ff page
 - Should have a link to the community

fixes OREO-1113
flag=analytics_2

Change-Id: I6d058d0738612ef80d9a5c81a1138a45729c4447
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275521
Product-Review: Carly Curran <carly.curran@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Kwok Lam <klam@instructure.com>
Reviewed-by: Bryant Larsen <blarsen@instructure.com>
2021-10-25 17:52:19 +00:00
Kyle Rosenbaum 722512eaca adjust random number generation to spread over 100 for rspecq
Change-Id: I4b53f28ad9426a1453b4f7d8413868cdad59748b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276625
Reviewed-by: James Butters <jbutters@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Kyle Rosenbaum <krosenbaum@instructure.com>
Product-Review: Kyle Rosenbaum <krosenbaum@instructure.com>
2021-10-25 17:00:46 +00:00
Service Cloud Jenkins 3afbee9a19 Update parallel_runtime_rspec.log from build 264
Change-Id: Ib6f5e9da5cb58cdd11f5a66e441e41e9d8453e7c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276662
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
QA-Review: James Butters <jbutters@instructure.com>
Product-Review: James Butters <jbutters@instructure.com>
2021-10-25 16:59:25 +00:00
Evan Battaglia 07b7fef075 DRY up a couple constants by using JS ENV
Test plan:
- go to course settings integrations page
- make sure copy mentioning max number of users in a team still shows
  correct numbers (25,000 and 100)

refs INTEROP-6805
flag=microsoft_group_enrollments_syncing

Change-Id: I01c6839bd63d8f221159050a68c04b28da09fda8
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276585
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Xander Moffatt <xmoffatt@instructure.com>
QA-Review: Xander Moffatt <xmoffatt@instructure.com>
Product-Review: Evan Battaglia <ebattaglia@instructure.com>
2021-10-25 16:39:21 +00:00
Evan Battaglia 5bfb1572bd Don't restrict canvas_icon_class
We apparently we're restricting the values before
dbd8c466 fixed `"canvas_icon_class": { ... }` to
`"canvas_icon_class" => { ... }`

(Since that commit was ostensibly just a linting commit but changed
semantics, it might be worth revisiting other things in that commit.)

fixes INTEROP-7109

Test plan:
- Edit an LTI 1.3 dev key JSON in the Developer Keys UI
- Add "canvas_icon_class": "icon-pdf" to a placement in an LTI 1.3 dev key
- Make sure the dev key saves
- Observe that the dev key cannot be saved before this commit

Change-Id: Ibb22a8d5d9ebdb9b7afb99adf9ab2893be863165
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276645
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Xander Moffatt <xmoffatt@instructure.com>
QA-Review: Xander Moffatt <xmoffatt@instructure.com>
Product-Review: Karl Lloyd <karl@instructure.com>
2021-10-25 16:31:19 +00:00
Jacob Burroughs c4c8aed683 Fix services jwk rotation
Change-Id: Ia304051a03a0a311292b3730c0462d115b20d88a
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276712
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Jacob Burroughs <jburroughs@instructure.com>
Product-Review: Jacob Burroughs <jburroughs@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-10-25 15:14:12 +00:00
Jeff Largent a6f45b2482 Improve C4E sticky header overlapping element spec?
An attempt to make the spec for fixing keyboard navigation on pages
with the sticky C4E better before we just remove it.

refs LS-2729
flag = none

Test plan:
  - Passes Jenkins and is not flakey

Change-Id: I0a2ae5f97405969f7a6b9ca7120ffe058b1102de
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276705
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Jeff Largent <jeff.largent@instructure.com>
2021-10-25 14:03:41 +00:00
Luis Oliveira 186bdbac2e Update course favoriting course
closes: LS-2734
flag=none

test plan:
- Enable K5 mode
- Create 2 courses, A and B
- Enroll into course A as a student
- Check that you can't favorite/unfavorite course A
- Enroll into course B as a teacher
- Check that you now can indeed favorite course A
- Favorite course B, leave A unfavorited
- Check that your home show only course B

Change-Id: I20f4c63b00169f5ce2089be4b9a60e5d0766d939
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276536
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Luis Oliveira <luis.oliveira@instructure.com>
2021-10-25 03:02:49 +00:00
Jenkins 9933a4c3fe [i18n] Update package translations
Change-Id: Ia26d0d213494033b25cceb5b5c5aa550dbf89bf8
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276653
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-10-23 04:50:40 +00:00
Martin Yosifov 8a52bbb94b Add 'Individual Outcome Rating and Calculation Method Options' FF
closes OUT-4820
flag=individual_outcome_rating_and_calculation

Test plan:
-qa-cr-

Change-Id: I43aee6f1d00f806514cb1ccff4423faf4d93da4b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276541
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Brian Watson <bwatson@instructure.com>
Reviewed-by: Manoel Quirino <manoel.quirino@instructure.com>
QA-Review: Brian Watson <bwatson@instructure.com>
Product-Review: Kyle Rosenbaum <krosenbaum@instructure.com>
2021-10-22 21:43:21 +00:00
Weston Dransfield fc215fdd13 Add course image list to B&I tray
Closes MAT-167
flag=rce_buttons_and_icons

Test Plan:
- Start the RCS
- Navigate to an RCE instance in Canvas
- Open the "create" button and icons tray
- Scroll down to the "Image" section and
  select "Course Images"
> Verify the current course images load

Note that most of the functionality of
this image list is already covered in
automated tests. We will be adding more
as we add a click handler

Also note that for now this list of images
_will_ include previously created
buttons and icons. These will be filtered
out in the future.

Change-Id: I8ea6def5b92a0c7456ef29a20bb846db4f54e1db
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276508
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
2021-10-22 21:23:18 +00:00
Ed Schiebel 399f229aff Remove the rce_enhancements flag from canvas - FRD
closes LS-2655
flag=none

test plan: it passes jenkins

Change-Id: Id36b62a8f02bdcf3c164e492ad27830542028864
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275720
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2021-10-22 20:36:29 +00:00
Alex Slaughter 616edf086c Add $Canvas.externalTool.id to LTI launch params
Add support for LTI tools to consume the tool id
as defined in canvas for themselves.

Test Plan:
 - Specs pass

flag = none

Change-Id: I6765b907c14a79bad8e68b3b8037efc140bd7bf5
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276455
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
Reviewed-by: Mysti Lilla <mysti@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Alex Slaughter <aslaughter@instructure.com>
2021-10-22 20:27:31 +00:00
Davis Hyer b9cefa88aa don't allow concluded users edit/delete to their own entries
fixes VICE-1986
flag=none

test plan:
  - enable the discussion redesign flag
  - enroll a student in a course with a discussion topic
  - as that student, make a parent and child post
    - the edit/delete options should show up correctly
  - conclude that user's enrollement
    - Enrollment.find_by(user_id: <uid>, course_id: <cid>).conclude
  - refresh the page
    - the edit/delete options should no longer show up

qa risk: low

Change-Id: Ic1855517600023890211194d0ba86f04829c8f2e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276523
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Chawn Neal <chawn.neal@instructure.com>
QA-Review: Chawn Neal <chawn.neal@instructure.com>
Product-Review: Chawn Neal <chawn.neal@instructure.com>
2021-10-22 20:03:53 +00:00
Ed Schiebel 5258cb1b8e spec: Remove the rce_enhancements flag from canvas - Phase 5b
quizzes specs that have had trouble with flakey spec catcher

refs LS-2655
flag=none

test plan: it passes jenkins

Change-Id: I4193252df38e0997243454604876f65f477115e3
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275867
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-10-22 19:56:34 +00:00
Aaron Ogata b5e77f261f add verbose logging option to s3 uploader
refs DE-859

Change-Id: I4e4615cf57ec47afc0a405848eec6302a11c9702
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276609
Reviewed-by: Alex Slaughter <aslaughter@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2021-10-22 19:51:15 +00:00
Juan Chavez b55dad68da Remove rce_pretty_html_editor feature flag
fixes MAT-133

flag=none

test plan:
- Verify that there is no rce_pretty_html_editor
feature flag (site admin).
- Navigate to an RCE instance.
- Verify that pretty html editor is enabled by default.

Change-Id: Ibe76738577d0716e30f06815c9a072f41ca48103
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275197
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Juan Chavez <juan.chavez@instructure.com>
2021-10-22 19:03:08 +00:00
Jacob Burroughs 00d660ede5 Add missing vault_contents.yml.example
Change-Id: I849ba5568964e03391e7c868bcde4156df6c1b70
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276587
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2021-10-22 16:06:43 +00:00
Adrian Packel 762d7d41aa Distinguish between assessment attempts in GQL
When caching rubric assessments in GraphQL, add the artifact attempt as
an additional key to the field, since (like many versionable objects)
different assessments can be represented by the same type and ID. This
ensures that assessments for different attempts don't stomp on each
other.

closes EVAL-2020
flag=assignments_2_student

Test plan:
- Have a course with the new student view enabled
- Have an assignment with a rubric that accepts a submission
- As a student, submit to the assignment
- As a teacher, grade the submission and assess it using the rubric
- As a student, submit to the assignment again
- As a teacher, grade and assess it again with a different score
- As a student, open the page again
  - Switch back and forth between attempts multiple times, and check
    that each attempt displays the appropriate rubric assessment,
    instead of the same assessment appearing for all attempts

Change-Id: I3db6ce226eac24d218991469bd42fe9071665242
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275923
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Dustin Cowles <dustin.cowles@instructure.com>
Reviewed-by: Syed Hussain <shussain@instructure.com>
QA-Review: Kai Bjorkman <kbjorkman@instructure.com>
Product-Review: Syed Hussain <shussain@instructure.com>
2021-10-22 16:03:58 +00:00
Jeff Largent 02145018be Scroll focused elements into view if covered by C4E header
Checks if any focused elements are higher on the page than the bottom
edge of the C4E tabs, and automatically scrolls up enough to reveal
them if so. Fixes this issue on both the C4E course homepage and
user dashboard.

fixes LS-2729
flag = none

Test plan:
  - Create or use an existing course with a bunch of assignments and
    modules
  - Go to the course home page and click on "Grades"
  - Tab to the last assignment link and expect the page to scroll down
    at some point in the process
  - Shift-tab back up through the list of assignments until you reach
    one that is overlapped by the C4E course header
  - Expect the window to scroll to uncover hidden elements as you
    shift-tab to them
  - Do the same for the modules tab

Change-Id: I4dedd8e134de90e0e9858614a8976b455a602056
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276248
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Daniel Sasaki <dsasaki@instructure.com>
2021-10-22 14:52:30 +00:00
Jacob Burroughs b329523126 Migrate twilio to use rails creds
fixes FOO-1496

Change-Id: I26e329e09022aecca3f575667fe5ff8c377eb24d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276546
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Jacob Burroughs <jburroughs@instructure.com>
Product-Review: Jacob Burroughs <jburroughs@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-10-22 14:51:17 +00:00
Jacob Burroughs 21e7de523f Migrate twitter to use vault creds
fixes FOO-1497

Change-Id: Ib6ad2dbc98619b86ccd2bc523b204e60c6a73060
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276553
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
QA-Review: Jacob Burroughs <jburroughs@instructure.com>
Product-Review: Jacob Burroughs <jburroughs@instructure.com>
2021-10-22 14:50:58 +00:00
Jacob Burroughs 38566c51f2 Read credentials from rails credentials for access token
Change-Id: I2ad702b12fca205a5b6c0279832e40502f9c6454
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276552
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
QA-Review: Jacob Burroughs <jburroughs@instructure.com>
Product-Review: Jacob Burroughs <jburroughs@instructure.com>
2021-10-22 14:50:48 +00:00
Syed Hussain 873f88e270 Show first and last names columns in gradebook
Last name column has all the same fields as the original student
column. The first name column only shows the first name.

closes EVAL-1990
flag=gradebook_show_first_last_names

Test plan:
With the FF on and the account admin setting to show separate columns
enabled, as a teacher go to gradebook:

1. Select the "Split Student Names" view option
- See that the gradebook grid shows separate columns for student last and
first names
- Make sure all the column options in the last name column work "Sort by",
"Secondary Info" and "Show - Inactive/Concluded enrollments" and the
option to "Display as" is not there
- See that there are no column options for first name
- See that the assignment and student search work as before
2. Unselect the "Split Student Names" view option
- See that the grid shows the Student column as before

Change-Id: Ic3ffefcd2069eca84823d60bb993d98521c8861d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276013
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Adrian Packel <apackel@instructure.com>
QA-Review: Dustin Cowles <dustin.cowles@instructure.com>
Product-Review: Syed Hussain <shussain@instructure.com>
2021-10-22 13:37:33 +00:00
Jenkins ae7a2ad851 [i18n] Update package translations
Change-Id: Ifb0c06d880601b83f4b0090c387d33bd1bfbdd56
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276566
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-10-22 04:49:42 +00:00
Juan Chavez 137a782ee9 B&I: Add SVG paths for crop shapes and modal
closes MAT-422, MAT-426

flag=rce_buttons_and_icons

test plan:
- Navigate to a RCE instance
- Click Buttons & Icons button.
- In the tray, navigate to images section and
click crop button placeholder.
- Vefify that you can change the crop shapes
in dropdown and it changes in the preview.

Change-Id: Iba478fd3aef8c45a511e21f4c2025499ef7c4796
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276028
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Gary Mei <gmei@instructure.com>
QA-Review: Gary Mei <gmei@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
2021-10-22 00:54:21 +00:00
Eric Saupe 24af4eb0c3 Include unpublished module items in date calculator
fixes LS-2784
flag=pace_plans

test plan:
- Create a course with pace plans enabled
- Create a module and add a published and unpublished assignment
- Go to pace plans
- Make changes to dates and publish the pace plan
- Verify it was successful and all assignments have assignment overrides

Change-Id: I89461e437d643e0687aad4e2bc6742762cd0e9f8
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276532
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Eric Saupe <eric.saupe@instructure.com>
2021-10-21 20:50:25 +00:00
Ed Schiebel 19dc4a5ff7 Remove rce_enhancements flag from canvas - Phase 4c
the last spec/selenium/rcs test file

Because we've touched these files, we run flakey speck catcher
against them. For some reason I cannot fathom, sometimes
the tinymce pop-up toolbar for link options and image options
doesn't show up. The specs pass 90% of the time, and we know
that it works in the RCE in the real world, so I added a
rescue around the code that does that to keep the specs from
failing.

refs LS-2655
flag=none

test plan: passes jenkins

Change-Id: I1a46278b95f58fe269ab6144d38627b913af1a42
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275865
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2021-10-21 20:40:28 +00:00
Omar Gerardo Soto-Fortuño 8b222c54b8 Hook up report flow on IsolatedThreadsContainer
refs VICE-2075

flag=discussions_reporting

test plan:
  - Go to a Discussion Entry in the Isolated View.
  - Click on the kebab menu on a child.
  - Click on Report and select a type.
  - Click on Submit.
  - Click again on the kebab menu.
  - Should say Reported instead of Report.

qa risk: low

Change-Id: I58e2e4ec300398c5059ae6eda2cf4fd2f4069455
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276534
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Drake Harper <drake.harper@instructure.com>
QA-Review: Drake Harper <drake.harper@instructure.com>
Product-Review: Drake Harper <drake.harper@instructure.com>
2021-10-21 20:20:08 +00:00
Ahmad Amireh 5f976f9989 rename frontend_build -> ui-build
minor QOL mainly for me; put webpack-specific configuration in its own
folder, make it portable, and make room for esbuild

the __webpack_public_path__ initializer no longer sources the value from
the build module, instead it uses a pre-defined global that webpack
injects

~ test plan ~

build is OK

Change-Id: I4ba4a3c0cb9175f96096f2b78022e152c04fc75d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276183
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Charley Kline <ckline@instructure.com>
QA-Review: Charley Kline <ckline@instructure.com>
Product-Review: Charley Kline <ckline@instructure.com>
2021-10-21 19:13:02 +00:00
Jacob Burroughs 2890e4c33d Ensure we load credentials *before* passenger forks
Change-Id: Iebcfefb753746d526093e46e59c34a43095b9b96
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276531
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
QA-Review: Jacob Burroughs <jburroughs@instructure.com>
Product-Review: Jacob Burroughs <jburroughs@instructure.com>
2021-10-21 18:58:47 +00:00
Adrian Packel ac102ba9e8 Fix SpeedGrader keyboard navigation when menu open
Make SpeedGrader update the currently selected student in response to
keystrokes when the custom dropdown menu is open, and fix a couple of
the most salient issues, but do not attempt to fix everything.

closes EVAL-1610
flag=none

Test plan:

SpeedGrader provides a veritable bonanza of methods to select students
using the dropdown menu at the upper right:

1. Click on the dropdown to open it, navigate between students
   using the arrow keys or the Home/End keys, and hit Enter or Space to
   close the dropdown and select the last-focused student. As you
   navigate between students, the currently-selected item should have a
   distinct background. Avoid using both the mouse and the keyboard at
   once here, or the menu will get very confused.
2. Open the dropdown as described in (1), then close it. There should
   now be a focus rectangle around the dropdown, and you should be able
   to navigate between students using the arrow keys and Home/End.
3. Click somewhere on the header, tab until the left arrow is focused,
   then tab once more to focus the invisible browser-native select menu.
   Use the arrow keys to select a student.

Test that all three methods work to select students in SpeedGrader. Note
that methods 1 and 2 currently do not support switching sections using
the keyboard.

Change-Id: I3007324165ae7fa5b5cace1e2f5d7e0019e9ecc7
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275524
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Jody Sailor
QA-Review: Aaron Shafovaloff <ashafovaloff@instructure.com>
Reviewed-by: Dustin Cowles <dustin.cowles@instructure.com>
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
2021-10-21 17:55:02 +00:00
Ed Schiebel b9acc7ec3d Fix RCE/tinymce selenium helpers
- Restore the argument to selenium helper switch_editor_views
- Fix type_in_tiny (was broken w/ new rce + large inputs)
- tweak to some func parameter names to be clearer as to
  what's expected
- fix a couple specs

closes LS-2753
flag=none

test plan: passes jenkins

Change-Id: I18632ecb8dcb402714346ec147ca20b6401f3c40
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276046
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2021-10-21 17:52:12 +00:00