Commit Graph

50328 Commits

Author SHA1 Message Date
Jason Gillett e075ce961d Add field to expose viewable submissions that have comments
closes VICE-2655
flag=react_inbox

Test Plan
1. Test work
2. go to http://localhost:3000/graphiql
3. Verify that new field returns submission data correctly

Here is a graphiql Query to help with testing.

  legacyNode(_id: "5", type: User) {
    ... on User {
      id
      email
      viewableSubmissionsConnection {
        nodes {
          _id
          commentsConnection {
            nodes {
              comment
              author {
                name
              }
              _id
            }
          }
        }
      }
    }
  }

Change-Id: Ie7a152ba41c5a66f0ddcaa7dc54df1e8fb5dd92a
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288571
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Omar Soto-Fortuño <omar.soto@instructure.com>
Product-Review: Omar Soto-Fortuño <omar.soto@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
2022-04-01 15:51:15 +00:00
Caleb Guanzon 82113f7f40 spec: add ?embed=true test
fixes VICE-2598
flag=discussion_topics_post

I think this is a good place to close VICE-2598.
Since at the time of writing, the only
change of ?embed=true is the loss of
the headers

Change-Id: I3d95f759d2eb1f1d91d5eb0fd6b0500cbea3e506
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288712
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jeffrey Johnson <jeffrey.johnson@instructure.com>
Product-Review: Jeffrey Johnson <jeffrey.johnson@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
2022-04-01 15:48:59 +00:00
Ed Schiebel 4529300ee2 Compress course pace dates if projected end is after pace end
- we no longer require hard_end_dates to be part of the calculation.
- when a course ends at midnight, we end the pace at fancy midnight
  the day before

closes LS-3057
flag=course_pacing

test plan:
  - in a course with an end date
  - have a course pace
  - increase an assignment duration to push the last assignment's
    due date beyone the course end date
  > expect the dates to be compressed to fit
    - NOTE: it may be 1 day late, but that's coming from the api
  > expect the "weeks | days" to stop incrementing when we
    start compressing
  - switch to a student plan
  > expect the due dates to be the same (be sure to check with
    a compressed pace)
  - look at the last assignment in the pace
  > expect the due date for the course students to be the end of
    the day shown in the pace.

Change-Id: Ibb13e3f0d00b99da5d9dee5d0ebca52ad4e60ea7
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288309
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>
2022-04-01 15:06:12 +00:00
Jenkins bdcc3efb91 update hu translation
Change-Id: I1969469a32dc5e1da35b16c29d529d0ee1faf7f8
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288675
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2022-04-01 05:47:47 +00:00
Jenkins cba9bdfb10 update mi translation
Change-Id: I6e87f314990b7aeec27fc209f30f13aac5e283e6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288674
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2022-04-01 05:41:19 +00:00
Jenkins f64e03abc5 [i18n] Update RCE translations.
Change-Id: Ia402f3f28927b262931d4e3cffca76e7ef85294a
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288672
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2022-04-01 04:51:30 +00:00
Jenkins 58b5591f68 [i18n] Update package translations
Change-Id: I079a5ec65229630b1ad198d7020d81937e0fd267
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288671
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2022-04-01 04:51:22 +00:00
Aaron Ogata 1e06451833 only queue jobs for each job cluster instead of all app clusters in region
refs DE-1120

Change-Id: Ia3b9496ae8f780966d783cd0df0eed654f7e8389
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288647
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Alex Slaughter <aslaughter@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2022-03-31 22:45:11 +00:00
paulo.chaves 084f072249 Disallow students to skip a peer review
Closes EVAL-2167
flag=none

test plan:

- Have a course with at least two students
- Have an assignment set up with peer review
  and linked to a rubric
- As a student make a submission to the assignment for
  both students
- As a teacher, assign each student a peer review for
  the other student.
- As one of the students, click on the submission
  you are assigned to review.
- Open the rubric link and do not select any criteria
  the 'Save comment' button should be disabled
- Select any rating, the 'Save Comment' button should
  be enabled
- Unselect any rating and if there is no comment the
  'Save Comment' button should be enabled
- Add a comment, the 'Save Comment' button should be
  enabled

Change-Id: Ic1efafbde808cd8cafc5bc74852cd52a0bb8b868
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288120
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Eduardo Escobar <eduardo.escobar@instructure.com>
Reviewed-by: Aaron Shafovaloff <ashafovaloff@instructure.com>
QA-Review: Syed Hussain <shussain@instructure.com>
Product-Review: Jody Sailor
2022-03-31 21:39:15 +00:00
Drake Harper 09ed933074 Make react inbox full width
closes VICE-2546
flag=react_inbox

Test Plan:
 - turn inbox redesign ff on
 - go to inbox
 > should be full page

Change-Id: Id051f7b21fcc48657323352e4bf95ed70d60e19b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288651
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Omar Soto-Fortuño <omar.soto@instructure.com>
Product-Review: Omar Soto-Fortuño <omar.soto@instructure.com>
QA-Review: Jason Gillett <jason.gillett@instructure.com>
2022-03-31 21:38:43 +00:00
Martin Yosifov 767583fbdc Form Validation in Outcome Modal
closes OUT-5017
flag=improved_outcomes_management

Test plan:
- Enable Improved Outcomes Management FF
- Enable Individual Outcome Rating and Calculation FF
- Disable Account Level Mastery Scales FF
- Go to Account > Outcomes
- Click on Create button
- In Create modal enter long string (>255 chars) for Friendly
Name, clear description from first rating, clear points from
second rating, clear mastery points, and enter 999 % weight
- Verify that Create button is enabled
- Click on Create button, verify that focus is placed on
the first field with error, then correct the error. Repeat
until there are no errors in form
- Click on Create button and verify outcome is created properly
- Select the outcome and click on kebab menu -> edit
- In Edit modal enter long string (>255 chars) for Friendly
Name, clear description from first rating, clear points from
second rating, clear mastery points, and enter 999 % weight
- Verify that Save button is enabled
- Click on Save button, verify that focus is placed on
the first field with error, then correct the error. Repeat
until there are no errors in form
- Click on Save button and verify outcome is updated properly
- Disable Individual Outcome Rating and Calculation FF
- Enable Account Level Mastery Scales FF
- Repeat the above tests and verify that results are the same

Change-Id: Id920c1a6932dbf9a14b55c2abd5a3370cf31bfa2
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/287496
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Brian Watson <bwatson@instructure.com>
Product-Review: Ben Friedman <ben.friedman@instructure.com>
Reviewed-by: Chrystal Langston <chrystal.langston@instructure.com>
2022-03-31 20:08:14 +00:00
Chrystal Langston 2a873fcb88 Feature Options: Filter by state & search enhancements
closes OUT-5031

flag=none

test plan:
- Go to Account -> Settings -> Feature Options
- Assert that the Filter by DDL selected option is All
- Assert Clear button
- Select Enabled from the Filter by DDL
- Assert that only the enabled Feature Flags are displayed
- Select Disabled from the Filter by DDL
- Assert that only the disabled Feature Flags are displayed
- Add text into the Search area
- Assert that the search is conducted after typing 3 or more
  letters
- Assert the results returned match the filter & the search
  criteria
- Click on the clear button
- Assert that all Feature Flags are displayed
- Repeat steps in Course -> Settings -> Feature Options

Change-Id: I034cf0e5adde3f5d20e02e95863a53f3613d0794
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/286080
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Ahmad Amireh <ahmad@instructure.com>
Reviewed-by: Fernando Marques <fernando.marques@instructure.com>
QA-Review: Fernando Marques <fernando.marques@instructure.com>
Product-Review: Ben Friedman <ben.friedman@instructure.com>
2022-03-31 20:07:54 +00:00
Juan Chavez 0f83df74b4 Fix tooltip in account app configurations
fixes MAT-808

flag=none

test plan:
- Navigate to /accounts/:id/settings/configurations#tab-tools
- Notice the icon next to "Add to RCE toolbar" text
> Verify that hovering the icon shows the tooltip
> Verfy that fucusing the icon shows the tooltip. You can do it
via keyboard navigation.

The tooltip was not changed, it should say:
"'There is a 2 app limit for placement within the RCE toolbar.'"

Note: I removed "click" event due I confirmed some issues
in InstUI <Tooltip> component, when using
on={['hover', 'click', 'focus']} it creates the microsecond flash.
Due it is a presentational object (no logic, just show info),
I removed click event and change it to hover event. What it's
the most common usage we have in Canvas UI for tooltip icons.

Change-Id: I360dbd73d9f069fe203dfa78e5c901b6d89bb811
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288559
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jake Oeding <jake.oeding@instructure.com>
QA-Review: Jake Oeding <jake.oeding@instructure.com>
Product-Review: Juan Chavez <juan.chavez@instructure.com>
2022-03-31 20:04:02 +00:00
Eduardo Escobar ad9856354b include submitted classic quizzes in what-if scores calcs
fixes EVAL-2165
flag=none

test plan:
- have a course with atleast 1 student and 1 teacher.
- create a classic quiz assignment with a question that
  requires manual grading.
- as the student take the quiz.
- navigate to grades and try to enter a what-if grade.
- notice that the total does reflect the what-if grade.

Change-Id: I95d536e9f9336893896252d5ee562485c8e55e48
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/285863
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Kai Bjorkman <kbjorkman@instructure.com>
Product-Review: Jody Sailor
Reviewed-by: Dustin Cowles <dustin.cowles@instructure.com>
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
2022-03-31 19:52:19 +00:00
Aaron Shafovaloff 027167b69a Retry upon LazyLoad loading errors
Test plan:
  - As a teacher
    - Create a text entry assignment
  - As a student
    - Load and submit the assignment

flag=none

Refs EVAL-2053

Change-Id: Ide59e499220b0774199ad5d066d7e833c6bf8bfe
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288538
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Paulo Chaves <paulo.chaves@instructure.com>
Reviewed-by: Syed Hussain <shussain@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
QA-Review: Kai Bjorkman <kbjorkman@instructure.com>
Product-Review: Syed Hussain <shussain@instructure.com>
2022-03-31 19:39:58 +00:00
Robin Kuss bab8bee569 spec: fix up a course copy spec witha a new custom wait
Closes LS-3064

Test Plan: passes Jenkins

Change-Id: I6292719ee0e06f6622451f3aab747a80b755aa6d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288547
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Robin Kuss <rkuss@instructure.com>
2022-03-31 19:03:27 +00:00
Ed Schiebel ad00db2e4a Deal with no students in pace picker better
closes LS-3061
flag=course_paces

test plan:
  - create a course with no students enrolled
  - enable course pacing
  - create an assignment in a module
  - go to the course packing page
  > expect the course|student picker to be replaced by text

Change-Id: Icb5fdfe5b52eb4738fe01f2648708a7ce4334b52
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288624
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jackson Howe <jackson.howe@instructure.com>
QA-Review: Jackson Howe <jackson.howe@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2022-03-31 17:58:57 +00:00
Jonathan Guardado 77ab196b06 Disable mutating UI in student planner observer mode
Options to edit, create and dismiss content were remove from the
planner UI when the user is observing a student

refs: LS-2990
flag= none

Test plan:
- Create an observer user and link it to some students
- As one of the linked students create some events and to-dos
- As the observer, go to the classic canvas planner
- Select the cards view and expect not to see the X icon to
dismiss the items in the To-Do list
- Select the List View and expect not to see the icon to create a
To-do
- Click on the notifications bell icon, and expect not to see the X
to dismiss events
- Look for one of the To-do you created as a student and expect not
to see the edit icon in the planner item row
- Access as a student and expect to see the create, dismiss, and edit
actions as usual

Change-Id: I9258a11a7e6120091dd98bbcbc6f8c21f34909d7
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288567
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Jonathan Guardado <jonathan.guardado@instructure.com>
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
2022-03-31 17:41:31 +00:00
Xander Moffatt 54be1888b3 show new MC icon in assignment/module index
why:
* tweaking previous commit g/287726 to properly show the new icon based
on the FF

refs EVAL-2304, INTEROP-7308
flag=updated_mastery_connect_icon

test plan:
* with an LTI tool installed in a course and an
unpublished assignment of external_tool submission type
in that course
* enable the updated_mastery_connect_icon FF for site_admin
* in a rails console, make this assignment seem like it's for Mastery
Connect:
```
assignment.external_tool_tag.update!(external_data: {
"key"=>"https://canvas.instructure.com/lti/mastery_connect_assessment",
"objectives" => "6.RP.A.1"
})
```
* in the assignment index, this assignment should use the unpublished
MC icon (dark grey)
* in the modules index, add this assignment to a module. it should use
the unpublished MC icon
* publish the assignment
* in the assignment index, it should use the published MC icon (green)
* in the module index, publish it if needed - it should use the
published MC icon (green)

Change-Id: Ieb72565e0242e5064e7327319e7fcb4eed7f8007
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288631
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Xander Moffatt <xmoffatt@instructure.com>
Product-Review: Xander Moffatt <xmoffatt@instructure.com>
2022-03-31 17:30:48 +00:00
jake.oeding 0a49796d9a NEE: force advanced mode for certain commands
some commands either don't work, don't work well,
or don't look acceptable in the basic editor. this
patch adds a mechanism for forcing the user to
utilize the advanced editor if they are using these
commands

closes MAT-784
flag=new_equation_editor

test plan:
-enable the ff and find an RCE
-do all of the following for a simple equation, and
 for an advanced only equation. for the advanced,
 the equation editor should immediately flip to the
 advanced editor. the basic should stay on basic.
 1. open EE while you have the equation highlighted
 2. open EE while your cursor is in the middle of the
    equation
 3. open EE from an image already embedded in the RCE
-open the EE in basic mode, and paste an advanced
 equation into the editor. the EE should flip to
 the advanced mode
-delete the advanced equation and observe you can
 flip back to the basic mode
-for all the steps above, when the advanced mode
 is forced, the mode toggle should be disabled and
 a tooltip should appear upon hovering on the toggle

Change-Id: Idee9452f661cbbfb5abe9485bc79462fdab9c0a4
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288129
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: David Lyons <lyons@instructure.com>
2022-03-31 17:21:13 +00:00
Chrystal Langston a16b0f41c2 Add jwt to connect to Outcome Service lmgb_results.show
closes OUT-5030

flag=none

test plan:
- Prereqs:
  - Pull and run outcomes-service
    - ensure that you have g/288002 & g/288420
  - Follow the instructions in g/28802 to create Outcome &
    AuthoritativeResult records via rails console
  - Canvas is provisioned with outcomes-service
    - Follow the below guide to provision, if you have not already
      https://instructure.atlassian.net/l/c/BDA1nXEX
- Testing jwt generation
  - Open Canvas rails console `mc run --rm web bundle exec rails c`
  - run the following:
    - account = Account.default
    - ap account.settings[:provision]
      - you should see outcomes listed in the provision object
      - if you do not, you have the wrong account
    - course = Course.find([insert id of an existing course])
    - Create the jwt & copy jwt value
      include CanvasOutcomesHelper
      jwt = get_lmgb_results_jwt(course, '1', 'canvas.assignment.quizzes')
      ap jwt
  - Open outcomes-service swagger docs:
    http://outcomes.docker/docs/index.html
  - Click on the red explanation point icon
  - paste the jwt and click Authorize
  - using the /authoritiative_results under Reporting swagger doc,
    - Enter:
      - associated_asset_id_list: 1
      - associated_asset_type: canvas.assignment.quizzes
    - Click Try it out! button
  - Results should appear
- Create another jwt with the below:
  jwt = get_lmgb_results_jwt(course, '1,2', 'canvas.assignment.quizzes')
  - update jwt in swagger docs
  - try another search that matches the criteria in the jwt
    - Enter:
      - associated_asset_id_list: 1,2
      - associated_asset_type: canvas.assignment.quizzes
  - assert that results for returned that match the criteria
- Create another jwt with sending (course, '', '') to get_lmgb_results_jwt
  - Assert that nil is returned for the jwt
- Create another jwt with sending (course, nil, nil) to get_lmgb_results_jwt
  - Assert that nil is returned for the jwt

Change-Id: If174510028713e3f17ad8ccf92bff76eb30ca9ca
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288368
Reviewed-by: Brian Watson <bwatson@instructure.com>
Reviewed-by: Martin Yosifov <martin.yosifov@instructure.com>
QA-Review: Marcus Pompeu <marcus.pompeu@instructure.com>
Product-Review: Kyle Rosenbaum <krosenbaum@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2022-03-31 17:05:05 +00:00
Aaron Ogata a5cb130154 add rails version to Gemfile.lock
refs DE-523

Previously, the current version would be represented by Gemfile.lock and the next version by Gemfile.lock.next. Replace both with a common format of Gemfile.rails<version>.lock to be able to iterate over the files in a cleaner way.

Change-Id: I35aef3a14e726eb35db8aebc808af4a925552c01
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288563
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob Burroughs <jburroughs@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2022-03-31 17:01:45 +00:00
Xander Moffatt c72cacb87b lti manual: document adding new placements
why:
* the process for configuring a placement for deep linking is already
documented but this process isn't

refs INTEROP-7294
flag=none

test plan:
* the information I wrote should be correct

Change-Id: Icc9f4a21dadac7897d65407c3a52fca2af6393d0
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288620
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Alexandre Trindade <alexandre.trindade@instructure.com>
QA-Review: Alexandre Trindade <alexandre.trindade@instructure.com>
Product-Review: Xander Moffatt <xmoffatt@instructure.com>
2022-03-31 16:25:20 +00:00
Jared Crystal ba185bc3f0 add quiz_lti query param to url for New Quizzes assignments
fixes QUIZ-9136
flag=none

test plan:
 - when navigating to a New Quizzes Assignment Edit page from anywhere
   (clicking on a New Quiz from Assignments index, Quizzes index, or
   Modules index), quiz_lti should be in the url as a query parameter
 - clicking Cancel or Save from the assignment edit page should take
   you back to whichever index page you came from

NOTE: As a side effect, this makes it so that "Quizzes" will always be
  in the breadcrumb links, as well as the selected course sidebar
  item. Before this change, "Quizzes" was only in the breadcrumb link
  and selected sidebar item if navigated from the Quizzes index page,
  while "Assignments" would be in the breadcrumb link and selected
  sidebar item if navigated from the Assignments or Modules index.
Change-Id: Ic381324f84520bc11ed43dfd45ef2247d4ba3e0f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/286941
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Marissa Pio Roda <marissa.pioroda@instructure.com>
Reviewed-by: Stephen Kacsmark <skacsmark@instructure.com>
QA-Review: Mark McDermott <mmcdermott@instructure.com>
2022-03-31 16:18:51 +00:00
Juan Chavez 9045cb6a1c Fix discrepancies in Image Options tray
fixes MAT-778

flag=none

test plan:
- Navigate to RCE instance
- Add an image to RCE
- Click Image Options to open the tray
- Select Custom Size
> Verify that the label shoud say "Dimension Type"
instead of "Dimension type"
> Verify that the radio inputs (Pixels & Percentage)
don't have a left padding (they should be aligned to
other the other components)

Change-Id: Ic48de46e899f9ba34f1ffe5618d21799b29dc0b9
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288551
Reviewed-by: Jake Oeding <jake.oeding@instructure.com>
QA-Review: Jake Oeding <jake.oeding@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Juan Chavez <juan.chavez@instructure.com>
2022-03-31 14:59:25 +00:00
Eduardo Escobar 937cce26a4 fix file preview bug in message-attachments modal
fixes EVAL-2231
flag=none

test plan:
- enable the FF Update Inbox page to use react
  /instui".
- attach a file.
- remove the attachment by clicking X on the file
  preview icon.
- immediately attach the same file again.
- observe the file will not show up in preview.
- attach a different file
- attach original file again.
- observe it now shows up in the preview.

Change-Id: I9b1cacd7d79bca95be00ec1217c052eee6f62367
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/286837
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Shafovaloff <ashafovaloff@instructure.com>
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
Reviewed-by: Dustin Cowles <dustin.cowles@instructure.com>
Reviewed-by: Aaron Shafovaloff <ashafovaloff@instructure.com>
Product-Review: Jody Sailor
2022-03-31 14:46:33 +00:00
fernandorpm e615c389d0 Add friendly_description to Outcome Export
closes OUT-5025
flag=none

Test Plan:
- Navigate to Admin > Settings
- Click on the "?" button right next to the Outcome Export
- Observe that there is a new column called friendly_description
- Observe that there is the expected content in each of the rows

Change-Id: I6e9b736c477a8922f120cb5d5f97078173d5c278
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288402
Reviewed-by: Angela Gomba <angela.gomba@instructure.com>
Reviewed-by: Chrystal Langston <chrystal.langston@instructure.com>
QA-Review: Chrystal Langston <chrystal.langston@instructure.com>
Product-Review: Ben Friedman <ben.friedman@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2022-03-31 14:40:15 +00:00
Jenkins af43ea2c31 update mi translation
Change-Id: I2f23311c575db47c107c9883de893bacb5743408
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288576
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2022-03-31 05:40:38 +00:00
Jenkins e2d37fe286 [i18n] Update RCE translations.
Change-Id: If0331481c84c81790412af46faee9401ba79edb7
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288574
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2022-03-31 04:51:23 +00:00
Jenkins 4bde669455 [i18n] Update package translations
Change-Id: I4edc78ce5ac2bf4512987723623c53dab1e06744
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288573
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2022-03-31 04:51:07 +00:00
Jeremy Stanley 73a577499b jobs_v2: refresh job details when jobs list refreshes
note this will update the job if it's part of the refresh.
it will not clear the information if the job was deleted,
or queried manually

test plan:
 - in a console, run
   delay(max_attempts: 10).raise "something"
 - click the "raise" tag in future jobs
   (it should be rescheduled after the first failure)
 - click the job in the jobs table so it's loaded
   in details
 - enable auto-refresh
 - you should see the attempt increment in both the
   jobs table and the details table

flag=jobs_v2
refs DE-1044

Change-Id: I710ee1431cce825256bfb88d169dd1d5cfbf4f96
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288554
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
QA-Review: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
2022-03-30 22:48:42 +00:00
Aaron Ogata 682e2c54f2 automatically delete failed jobs after n months
refs DE-1120

Change-Id: I39aa0a1afa4c8aa505cddf101fe8d78a909374da
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288528
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2022-03-30 22:48:32 +00:00
Weston Dransfield 69ef6a236e Show proper heading on Icon tray
refs MAT-815
flag=buttons_and_icons_root_account

Test Plan
- Create an Icon Maker Icon
- Validate the create tray header says
  "Create Icon"
- Edit an Icon Maker Icon
- Validate the edit tray header says
  "Edit Icon"

Change-Id: I2cd720419fa98a723b72b7d981696752ada04ab0
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288543
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>
2022-03-30 22:33:58 +00:00
Weston Dransfield 80557fd3e1 Fix some editing issues
refs MAT-815
flag=buttons_and_icons_root_account

Test Plan:
- Rebuild canvas-rce and Canvas JS bundles
- Navigate to an RCE and create an Icon Maker
  Icon that contains text and alt text
- Embed the Icon
- Edit the icon and verify the alt text and
  text load in the edit tray
- Verify you can save changes to the text and
  alt text

Change-Id: I038cde730c4957c3b23ca65106f34813a9bb21e5
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288537
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2022-03-30 22:33:53 +00:00
paulo.chaves 6929846158 Ensure UI is consistent with design
closes EVAL-2320
flag=assignments_2_student

test plan:

- Enable the "Assignment Enhancements - Student" feature flag
- Create an assignment with "File Uploads" selected
- As a student go to that assignment to submit a file
- Verify the vertical divider has the same height as the
  drag file component and the `or` is in lowercase
- Verify that top and bottom borders are consistent
  with other types like Media, Text

Change-Id: I3f2431d152a230654e9b4aa61825ab7bd49f9a20
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288517
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Aaron Shafovaloff <ashafovaloff@instructure.com>
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
Reviewed-by: Syed Hussain <shussain@instructure.com>
QA-Review: Kai Bjorkman <kbjorkman@instructure.com>
Product-Review: Jody Sailor
2022-03-30 21:56:47 +00:00
Ahmad Amireh 15e0a25cf1 submit datepicker usage
fixes FOO-2280
flag = none

test plan:

1) assign endpoint in dynamic_settings.yml to point to the inseng one
2) go to assignment and edit a date
3) refresh the page and verify the endpoint is hit with PUT and the set
   of events

Change-Id: Ib7e62091cd16c3813534dfe29c1a5084e5f9755e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288429
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob Burroughs <jburroughs@instructure.com>
Reviewed-by: Charley Kline <ckline@instructure.com>
QA-Review: Ahmad Amireh <ahmad@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
2022-03-30 21:06:12 +00:00
Jeffrey Johnson 86d75c2c01 Introduce Layout for Discussion Redesign on Mobile
fixes VICE-2597
flag=react_discussions_post

Test Plan
1. Log into canvas
2. Find a discussion and observe the URL
3. Add `embed=true` to the URL to trigger mobile mode
3a. Feel free to press F12 and Click the phone icon in chrome dev tools
for mobile testing
4. Should not see chrome such as header, side bar, and other Canvas chrome
5. Should not have any broken functionality

Change-Id: Ic5103c74808227ab3993ba013d953f886d95a6f0
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/287991
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Jason Gillett <jason.gillett@instructure.com>
Reviewed-by: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Caleb Guanzon <cguanzon@instructure.com>
2022-03-30 20:55:12 +00:00
Kai Bjorkman 9b679fd5f8 disable plagiarism toggle after submissions in ui
patching the API endpoint in a subsequent ticket

flag=none
closes EVAL-2052

Test Plan:
- Create a course with an assignment that has no submissions
- Try to edit the assignment's plagiarism platform settings
  (Vericite and Turnitin)
- Ensure you are able to toggle it on/off
- Make a submission to the asssignment as one of the students
- Try to edit the assignment again and ensure that the plagiarism
  platform setting is disabled with a message similar to group assignment
  settings

Change-Id: Ied393a0318dd06022a15641c3e210eb01d6528bc
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/277715
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Aaron Shafovaloff <ashafovaloff@instructure.com>
QA-Review: Aaron Shafovaloff <ashafovaloff@instructure.com>
Product-Review: Jody Sailor
2022-03-30 20:21:53 +00:00
Jeremy Stanley a8e4ed88f1 jobs_v2 visual cleanup
- hide the h1 text, because it's big and it's redundant with the
  breadcrumb anyway
- make the vertial separators between header sections lighter
- put a little more space between horizontal sections
- remove the "Strand:"/"Singleton:" subheaders from the
  jobs table
- remove the tooltip and copy button when the strand or singleton
  is not present

refs DE-1114
flag=jobs_v2

Change-Id: I26ef3f44de836b0631e61e81c04f6fe383bb3739
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288534
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
QA-Review: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
2022-03-30 20:21:01 +00:00
Kai Bjorkman b45fdcc3f5 update mastery connect icon in assignments
closes EVAL-2304
flag=updated_mastery_connect_icon

Test Plan:
    - Turn FF OFF
    - Create a Mastery Connect Assignment
    - ensure the old icon is displayed in the assignments and modules
    list for students and teachers
    - Turn FF ON
    - ensure the new icon is displayed in the assignments and modules
    list forstudents and teachers

Change-Id: Ic8aba10592c0cba3fae393d00b8768355a83519f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/287726
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Syed Hussain <shussain@instructure.com>
QA-Review: Kai Bjorkman <kbjorkman@instructure.com>
Product-Review: Syed Hussain <shussain@instructure.com>
2022-03-30 20:20:51 +00:00
Chawn Neal c3dc47a263 Set Timezone based on parameters
fixes VICE-2600
flag=none

Sets TIMEZONE
Sets CONTEXT_TIMEZONE

both accessible via ENV.
Only works when:
 'session_timezone' param is set.

Test Plan:
 1) Go to a discussion and watch the Timestamp.
 2) Check ENV.TIMEZONE, CONTEXT_TIMEZONE

 3) For the url add:
   ?session_timezone=America/New_York
   ex:
   /courses/1/discussion_topics/2?session_timezone=America/New_York
 --
 other time_zones:

 America/Denver
 America/Detroit

Change-Id: I0fc49e33427ec9326fb6763dd4978944f690d4ce
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288514
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Omar Soto-Fortuño <omar.soto@instructure.com>
Product-Review: Omar Soto-Fortuño <omar.soto@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
2022-03-30 19:26:28 +00:00
Jeremy Stanley dc881fb6c4 auto-refresh jobs_v2
test plan:
 - click the play button in the top-right corner
 - the jobs tables should refresh every 5 seconds
 - the manual refresh buttons should disappear
 - click the pause button
 - auto refreshes should stop
 - manual refresh buttons should reappear and function
   as expected

flag=jobs_v2
closes DE-1044

Change-Id: I57cb3d29ebe2e55f4fa29d048ffe75b8e1e607e1
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288519
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
QA-Review: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
2022-03-30 17:59:43 +00:00
Aaron Ogata 407c307bd8 allow filtering jobs by account / shard / cluster
refs DE-1048

Change-Id: I0a090f01fa40265aed7c3353f685000453bc2bc2
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288424
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jeremy Stanley <jeremy@instructure.com>
Migration-Review: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2022-03-30 15:56:24 +00:00
Caleb Guanzon 4ca8c71cdc spec: introduce mobile screen helper
refs VICE-2598

no test plan

in the future:
- possibly investigate adding touchactions
- add embedded url param to discussions tests

Change-Id: I416b63edfb7372f85d1ed94383e92283657f871a
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288502
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Omar Soto-Fortuño <omar.soto@instructure.com>
QA-Review: Drake Harper <drake.harper@instructure.com>
Reviewed-by: Drake Harper <drake.harper@instructure.com>
Product-Review: Drake Harper <drake.harper@instructure.com>
2022-03-30 15:49:46 +00:00
Aaron Shafovaloff 40ab6e7f38 Improve error reports
Test plan:
  - /error_reports still loads

Refs EVAL-2053

flag=none

Change-Id: Ib087c7a3754b5556422d4f955ec521c94357a3c8
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/287975
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Shafovaloff <ashafovaloff@instructure.com>
Product-Review: Jody Sailor
Reviewed-by: Dustin Cowles <dustin.cowles@instructure.com>
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
2022-03-30 15:41:27 +00:00
Syed Hussain 533a2d236e Close filters tray on outside click
closes EVAL-2347
flag=enhanced_gradebook_filters

Test Plan:
With a gradebook with some students and assignment and the FF ON,
as a teacher:
1. Go to gradebook and click on "Filters"
2. See that the filters tray opens and then click outside of the tray
3. Make sure that the tray closes
4. Repeat step 2 and 3 after adding some filter conditions. Make sure
that the conditions still show in the tray.

Change-Id: Ieb828b3be3a169fdb0c60733ba486fb9b8c46e51
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288491
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Dustin Cowles <dustin.cowles@instructure.com>
Reviewed-by: Aaron Shafovaloff <ashafovaloff@instructure.com>
QA-Review: Aaron Shafovaloff <ashafovaloff@instructure.com>
Product-Review: Jody Sailor
2022-03-30 15:37:37 +00:00
Weston Dransfield 37f6097854 Don't decorate links with no href
Closes MAT-805
flag=none

Test Plan:
- Create a new page in a course
- Add the following HTML to the page and save it:
  <p>
    <a class="instructure_file_link instructure_scribd_file"
      href="http://canvas.docker/courses/1/files/1"
      data-api-endpoint="http://canvas.docker/api/v1/courses/1/files/1"
      data-api-returntype="File"
    >file</a>
    <a class="instructure_file_link instructure_scribd_file">
      file no href
    </a>
  </p>
- Save the page and view it
- Verify a download arrow is rendered next to the first link
- Verify a download arrow is not rendered next to the second
- Verify an invalid URL error is not show in the browser console

Change-Id: I74744ec471d8503354b22eb058c7cd8d184a12b4
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288318
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
QA-Review: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
2022-03-30 15:25:31 +00:00
Weston Dransfield 9572f66e62 Don't use ENV in Icon Maker
closes MAT-813
flag=buttons_and_icons_root_account

Test Plan:
- Automated tests pass
- Verify you can still create and edit
  Icon Maker Icons

Change-Id: I5ebdc5789926197028e6de441c94853dd34b7719
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288364
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Reviewed-by: Joe Hernandez <joe.hernandez@instructure.com>
QA-Review: Joe Hernandez <joe.hernandez@instructure.com>
2022-03-30 15:10:41 +00:00
Weston Dransfield f2499b46ec Add replacement chain context to file request
refs MAT-804
flag=buttons_and_icons_root_account

Test Plan:
1. Checkout g/288281 in canvas-rce-api
2. Build canvas JS bundles and canvas-rce
4. Navigate to a Canvas course
5. Create an assignment: "Assignment A"
6. In Assignment A, embed an Icon Maker Icon
7. Create another assignment: "Assignment B"
8. Embed the same Icon Maker Icon in Assignment B
9. Navigatge to Assignment A and edit the Icon
   Maker Icon. Make some notable change, check the
   "Apply changes to all instances of this..." box,
   and save the change
10. Navigate to Assignment B
11. Verify the change made in step 9 is applied to
    the Icon Maker Icon in Assignment B
12. Verify you can now edit the Icon Maker Icon in
    Assignment B without issue

Change-Id: I5627f0ae158bd01313a185fd665d12880e3009b3
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288280
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
QA-Review: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
2022-03-30 15:10:29 +00:00
Weston Dransfield 27448cb655 Allow following replacement chain in files API
refs MAT-804
flag=none

Test Plan:
1. Navigate to a course and upload a file
2. Make a request to
    /api/v1/courses/<cousre id>/files/<file id>
3. Note that JSON describing the file is sent in
   the response
4. In the same course, upload the same file again.
   Choose "replace" when prompted on how to resolve
   name conflicts
5. Make the exact same request as in step 2. This
   includes using the same file id as you did in
   step 2
6. Note that Canvas responds with a 404 because that
   file was replaced
7.  Append the following query string to the exact same
    request: "?replacement_chain_context_type=course&
      replacement_chain_context_id=<course id>"
8. Make the request with the new query string. Again,
   the file id should be the one used in step 2
9. Verify Canvas responds with the replacement file
   represented as JSON

Change-Id: Ib257690aef4d512a8fd1659992f72d78c8d901a9
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288277
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
Reviewed-by: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
QA-Review: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
2022-03-30 15:10:23 +00:00