CLOSES: LA-442
flag = none
Test plan:
- When restricted files is enabled in account/course settings,
the radio button to hide files to students should read
Only available to students with link
Change-Id: I6597160c1c26f99be00d3f643ea39f476b5144f3
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222658
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Carl Kibler <ckibler@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Erin Hallmark <erin@instructure.com>
refs OUT-1107
flag = none
Test plan:
Check the following operations in canvas:
- manually create outcomes, groups
- import outcomes, groups from csv
- import outcomes, groups from Academic Benchmarks
- course copy with outcomes, groups, and rubrics
- account reports with outcomes export and outcome
results reports
Change-Id: I15d20d216515d0a29d6a5812ac153dd65a15569b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/221528
Reviewed-by: Frank Murphy <fmurphy@instructure.com>
Reviewed-by: Augusto Callejas <acallejas@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Augusto Callejas <acallejas@instructure.com>
Product-Review: Michael Brewer-Davis <mbd@instructure.com>
closes QUIZ-7285
Test Plan
---------
- Test with canvas provisioned with quiz_lti/quiz_api
- With the new quizzes on quiz page FF enabled:
-- Navigate to the quizzes page and click the |+ Quiz| button
-- Ensure a modal is shown and is a11y compliant
-- Ensure canceling/submitting with either option works as expected
-- Ensure new quizzes created are shown on the quizzes page
- With the new quizzes on quiz page FF disabled:
-- Navigate to the quizzes page and click the |+ Quiz| button
-- Ensure you are taken to the quizzes old creation flow
-- Ensure new quizzes are not shown on the quizzes page
-- Navigate to the Assignments page and click the |+ Quiz/Test| button
-- Ensure you can create new quizzes and they are displayed only on the
assignments page
Change-Id: I022a0f857d74cf4d315a7c69e467c450889e4aad
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/223118
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jared Crystal <jcrystal@instructure.com>
QA-Review: Jared Crystal <jcrystal@instructure.com>
Product-Review: Kevin Dougherty <jdougherty@instructure.com>
closes LA-370
note per the comment this is captured into the md5 column. from here on
out, we're treating the md5 column as a more generic "digest" column,
but without the ideal rename.
Change-Id: I9ca75593470c5ba622529e17fb1cd2a95bfb61de
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222596
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Andrew Huff <ahuff@instructure.com>
QA-Review: Jacob Fugal <jacob@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
deleting a question in a quiz should mark it as an exception and
prevent syncs from upstream (as any other content change)
unless the quiz is locked for content
test plan:
* create a blueprint course with a quiz with two questions
* sync to an associated course
* in the associated course, delete one of the questions
* in the blueprint, make a change to a date on the quiz
(or something else to trigger a syncable change)
* re-sync
* it should not have restored the deleted question in the
associated course quiz
closes #LA-435
Change-Id: I5659b0500729186c95d29f7b252b197a8b960795
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/223128
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jeremy Stanley <jeremy@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
fixes LA-446
flag=discussion_topic_performance_enhancement
Test plan
- Create a group discussion that is linked to a large number
of groups
- Add students to the groups
- Verify that it doesn't take a long time to load the
first time for each student
- Verify that you can't see groups you shouldn't see
Change-Id: Iddfb88136c2ecd960f3cc92326e507aad49a690d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222694
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: Mysti Lilla <mysti@instructure.com>
Refs USERS-201
Closes USERS-202
flag=none
Test plan:
* Visit accounts/1/brand_configs (or whatever account you
want to use for testing)
* The page should work exactly as it used to
* Especially, the "+ Theme" button in the upper right
should work just as the old one did (it looks very slightly
different due to the use of InstUI)
* A11y keyboard nav and screenreader work appropriately
Change-Id: I48f16d72692242768114e2ae8c97d6cb5e57a64b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/221332
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Landon Gilbert-Bland <lbland@instructure.com>
QA-Review: Steve Shepherd <sshepherd@instructure.com>
Product-Review: Charley Kline <ckline@instructure.com>
Closes USERS-205
flag=none
Also had to make a slight tweak to a Canvas Planner file to reflect
a change in ui-forms -> ui-checkbox
In addition, several imports from InstUI had to be changed from
their legacy locations to their currently-documented ones, in
order for all the tests to pass. Using the old import sources
apparently causes two components of the same name to be rendered
which breaks assumptions in some tests that there will be only one.
Eventually we'll have to fix up all the imports which will be a
bit of a slog.
INST-UI changes notes for 6.16.0:
---------------------------------
Bug Fixes:
ui-a11y-utils: fix ui-a11y-utils dependencies
ui-docs-client:
remove unnecessary import of ScreenReaderContent
ui-modal: update deprecated lifecycles in modal
ui-tooltip: uncontrolled example broken
Features:
instui-cli,ui-scripts,ui-template-scripts:
add a new ui-template-scripts package
instui-cli,ui-upgrade-scripts:
add a new ui-upgrade-scripts package
ui-badge: add ui-badge package
ui-buttons: add a CondensedButton component
ui-buttons: add an IconButton component
ui-byline,ui-layout: add ui-byline package
ui-checkbox: add ui-checkbox package
ui-docs-client:
make content within docs pages navigable via linking
ui-docs-client: updates to compileMarkdown for id generation
ui-drawer-layout: add ui-drawer-layout package
ui-elements: add isWithinText prop to ui-element Link
ui-elements,ui-truncate-text: add ui-truncate-text package
ui-expandable: add ui-expandable package
ui-forms,ui-radio-input: add ui-radio-input package
ui-forms,ui-text-area: add ui-text-area package
ui-navigation: remove experimental pill from AppNav
ui-range-input: ui-range-input package
ui-responsive: add ui-responsive package
ui-spinner: ui-spinner and design updates
ui-themeable: update deprecated lifecycles in themeable
ui-tray: ui-tray package
Test plan:
* Review changelog above
* Test on master thoroughly.
Change-Id: I9f4552f18b2a48a626e7bb2102f8b3def46eb775
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/221466
Reviewed-by: Landon Gilbert-Bland <lbland@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Steve Shepherd <sshepherd@instructure.com>
Product-Review: Charley Kline <ckline@instructure.com>
closes OUT-3469
flag = none
Test plan:
- In docker-compose.override.yml, set
STUB_LIVE_EVENTS_KINESIS: "true"
in the jobs container's environment config.
- restart canvas
- watch logs of web and jobs containers
in the console:
dc logs -f web jobs | grep stubbed_kinesis_stream
- create a course called "Downstream"
- create a course called "Blueprint"
- in Blueprint's settings, enable as a blueprint
course
- Add course outcomes and groups to the Blueprint course
- In the blueprint sidebar, add Downstream
as an associated course
- wait a minute for course copy job to run
- verify that a live event is received
for the Downstream root outcome group
event_name: learning_outcome_group_created
title: 'Downstream'
parent_outcome_group_id: nil
Change-Id: Ie7a46472e68e6a3f054a0ba628d520bf8e106a6f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/223098
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Frank Murphy <fmurphy@instructure.com>
QA-Review: Brian Watson <bwatson@instructure.com>
Product-Review: Michael Brewer-Davis <mbd@instructure.com>
This dialog is large enough and complicated enough that it stinks when you're inputting
lots of data and happen to brush your trackpad or something causing it to close and lose
data. :(
closes#1560
Test Plan:
- Go to external apps and add an app
- When the modal to add the app opens, click outside of it.
- The modal should stay open.
Change-Id: I7878edf85d54e3882aa6729cf4089b828356bbaf
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/223133
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: Trevor Fullwood <tfullwood@instructure.com>
test plan:
* have google drive or another lti tool configured for
assignment file submission
* create a group assignment requiring file uploads
* as a student in a group, should be able to submit a file
through the tool and have it submit
closes #LA-201
Change-Id: I7c98882cc5bb7bcb5e4a585b9c686f3720368293
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/221108
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Anju Reddy <areddy@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
not just per missing blueprint id
test plan:
* import a courses.csv file with multiple rows having
a blueprint_course_id set to the same non-existent id
* the import should have a warning for each row
closes #LA-410
Change-Id: Id123c73ec27e949da7e0678bc2aa05dfd47b48b2
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/221870
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Carl Kibler <ckibler@instructure.com>
Reviewed-by: Rob Orton <rob@instructure.com>
QA-Review: Anju Reddy <areddy@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
Converts all the actions taken by our plugins into
ExecCommand calls, and then we close the floating toolbar
on('ExecCommand'). This works, and I actually like the plugins
executing execCommand to do stuff.
We also close the floating toolbar on('blur'), so it closes if
the user moves focus away from the rce.
closes LA-167
flag=rce_enhancements
test plan:
- enable "Assignment Enhancements - Student" in a course
- create a Text Entry assignment in the course
- navigate to the assignment as a student
- click "Edit" to create the RCE
- shrink your browser until the ... more button is in the toolbar
- click it to open the floating toolbar
- do anything in the rce
- try the Images > User Images
- try highlighting some text, then open the More toolbar,
then click "B"
> expect the floating toolbar to close
- try opening the floating toolbar, then click somewhere else
on the page
> expect the toolbar to close
- open the floating toolbar, then click on "Comments" tab
> expect the toolbar to close
- return to "Attempt 1" tab, open the editor and the toolbar
- click "Cancel" or "Save"
> expect the toolbar to close
Change-Id: Id588c0d744a1ef1301af1ac080c741c94de19937
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/221992
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
closes PLAT-5253
flag = none
Test Plan:
- verify that you can see courses and sub-accounts
under the main account type in /graphiql
Change-Id: I98db4a0e64c70c9886171fc3e27bd14cfdc16df7
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/221285
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Marc Phillips <mphillips@instructure.com>
QA-Review: Xander Moffatt <xmoffatt@instructure.com>
Product-Review: Clint Furse <cfurse@instructure.com>
closes LA-451
flag=rce_enhancements
flag=assignments_2_student
test plan:
- with Assignment Enhancements - Student feature on in a course,
create a text assignment, then navigate to it as a student.
- click the edit button
- click Documents > User Documents
> expect files to be listed, or if there are none, no error
Change-Id: I56fafefeae4d1b356915ce8cf28cfc537371774f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222949
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Reviewed-by: Carl Kibler <ckibler@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
The "allow_includes" field on the developer
key is used to control what access tokens
can use "include" parameters when making
API requests.
refs PLAT-5152
flag = developer_key_support_includes
Test Plan:
Verify you can set the "allow_includes" field
when creating a new developer key
Verify you can update the "allow_includes" field
when editing an existing developer key
Change-Id: Ibcfb7a2cdd06793483421b1ad6a8c0a8d7b99ed6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222617
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Reviewed-by: Clint Furse <cfurse@instructure.com>
QA-Review: Clint Furse <cfurse@instructure.com>
refs PLAT-5152
flag = developer_key_support_includes
Test Plan:
Verify the new "allow includes" checkbox is present when
the release flat is ON and the require scopes toggle is
ON.
Verify in all other cases the "allow includes" checkbox is not
rendered.
Change-Id: I1d32729a3c63bd6d51ae304d56631dc8a65ad99c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222611
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Trevor Fullwood <tfullwood@instructure.com>
Reviewed-by: Marc Phillips <mphillips@instructure.com>
Reviewed-by: Clint Furse <cfurse@instructure.com>
QA-Review: Clint Furse <cfurse@instructure.com>
fixes TALLY-60
flag=none
Test Plan
- Create a missing policy in the gradebook.
- Create an assignment.
- Manually mark a student's submission as missing via the gradebook.
- Verify that the missing policy's score appears for the submission.
- Open SpeedGrader to that student's submission.
- Verify that there is no "Use this same grade for the resubmission"
text/link in the sidebar.
Change-Id: Ib28b1cc1292f6b12ca0302a89d111495616a5740
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222271
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: Jeremy Neander <jneander@instructure.com>
Product-Review: Spencer Olson <solson@instructure.com>
This was introduced in
https://gerrit.instructure.com/c/canvas-lms/+/219146
where the code to do customizations was removed. Turns
out that the customization page saved the scopes on the
developer key. This makes it save the scopes from the
tool_configuration settings.
closes PLAT-5285
Test Plan:
- attempt to make a dev key in any manner
- check in the console that the newly created dev key
has scopes attached
Change-Id: I76cd42d15daf6f69bc04ad90768055254b5850b3
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222646
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Tucker Mcknight <tmcknight@instructure.com>
Reviewed-by: Xander Moffatt <xmoffatt@instructure.com>
Product-Review: Marc Phillips <mphillips@instructure.com>
it was used for two things:
- file_fixture_upload, which now comes from
ActionDispatch::TestProcess::FixtureFile
- Rack::Test::UploadedFile which comes from the rack-test gem
Change-Id: I27957b410fcf4677dac77aed1b00b04dfd1b012e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222555
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>
refs: UIDEV-292
flag=none
TEST PLAN:
- first things first, ensure navigation items that pass an href are
using the Link component from instui
- ensure ANY long title (more than 51 characters) works in any of the
navigation trays (Account, Admin, Course, Help)
- ensure the navigation links underline if user has 'HC' or 'underline
links' option turned on
Change-Id: I7dd185787e88130d77246685f4152c66e3ce361d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222465
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Landon Gilbert-Bland <lbland@instructure.com>
Reviewed-by: Charley Kline <ckline@instructure.com>
QA-Review: Steve Shepherd <sshepherd@instructure.com>
Product-Review: Pam Hiett <phiett@instructure.com>
we already make another targeted query on tool_settings later
so the preloaded data isn't even used, and in the meantime
it's possible to load a lot of rows into memory and eat
up a lot of time
test plan:
* specs run
closes #LA-438
Change-Id: I6ddfecedafd5602b68d49c65298b7e9c38cc992c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222575
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
fixes TALLY-158
flag=none
Generating PDF files using the built-in Helvetiva font would cause
prawn to raise an error if a UTF-8 character was present that
Windows-1252 did not support.
This change is a partial revert of
25bd35cf79, but the fonts are only used
in the context of prawn at the moment.
Test Plan
- Create an assignment.
- Leave a comment on one of the assignment's submission using a
UTF-8 character that Windows-1252 does not support, such as "ă".
- Verify that downloading submission comments generates a PDF, and
that the "ă" character is present.
Change-Id: Idc7bd1400fb337d384b38a76ebf83639bdc770cf
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222482
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: Gary Mei <gmei@instructure.com>
Product-Review: Spencer Olson <solson@instructure.com>
fixes TALLY-357
flag=none
When a manually posting assignment that has unposted grades for
submissions is changed to not be graded, the Totals column in the
Gradebook was still showing the icon indicating that the score is
affected by a hidden grade.
Test Plan
- Create a graded assignment.
- Create a manual posting policy for the assignment.
- Grade a student.
- Verify that the Totals column now has an eye icon next to that
student's grade.
- Change the assignment to "Not Graded".
- Verify that the Totals column no longer has an eye icon.
Change-Id: I9b734eca0d08e00003eba7aaa9992fb0c84e6893
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222345
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Jeremy Neander <jneander@instructure.com>
QA-Review: Gary Mei <gmei@instructure.com>
Product-Review: Jonathan Fenton <jfenton@instructure.com>
Change-Id: Ie137c1040260b363979160e1f0558883577ebebd
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222510
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
flag = none
fixes TALLY-322
test plan:
1. Create a course with two student groups
2. Divide students between the groups
* must have some students in only one group
3. Visit New Gradebook
4. Filter to all student groups
5. Verify "Set Default Grade" affects all students
6. Filter to one student group
7. Verify "Set Default Grade" affects only those students
8. Filter to a different student group
9. Verify "Set Default Grade" now affects only those students
10. Filter to all student groups
11. Verify "Set Default Grade" again affects all students
Change-Id: I44fa69ecfe7bc968c3711aa1aca9e7ede4050c74
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222234
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: Gary Mei <gmei@instructure.com>
Product-Review: Spencer Olson <solson@instructure.com>
With post policies, ignore submissions belonging to concluded or
inactive enrollments when considering whether an anonymously graded
assignment should anonymize students, rather than simply checking the
assignment's muted attribute (which does not take students' enrollment
states into consideration).
fixes TALLY-151
flag=none
Test plan:
- Have a course with New Gradebook and Post Policies enabled
- Enroll at least three students (S1, S2, S3)
- Set up an anonymous assignment (A1)
- Conclude S2's enrollment in the course
- Deactivate S3's enrollment in the course
- In Gradebook:
- Check that A1 appears as anonymous and grades are concealed
- Post grades for A1
- Reload the page
- Check that grades for A1 are unconcealed after reload, and that
"Hide grades" is now possible but posting grades isn't
- Repeat the above in SpeedGrader
Change-Id: I4ae69c088376fe6ba1acc5e8c04dc5abd1706c82
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222155
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Jeremy Neander <jneander@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Jonathan Fenton <jfenton@instructure.com>
test plan:
- enable new sis integrations feature flag
- check "sis syncing" and "default sis sync" in account settings
but do not check "require assignment due date"
- create a new assignment on the modules index
- edit the assignment and notice that sis syncing is enabled
- check the account setting to require due dates
- create another assignment on the modules index
- it should create successfully, but not use sis syncing
fixes LA-162
flag=new_sis_integrations
Change-Id: Ibcf4674f46475d00ab2683fd2c81171074d292d7
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222115
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: James Williams <jamesw@instructure.com>
QA-Review: Anju Reddy <areddy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
Test Plan:
- Create an account with a sub account
- Set immersive_reader_wiki_pages feature flag to 'allow' for
a root account
- Set immersive_reader_wiki_pages feature flag to 'on' for the
sub account
- Create a new wiki page for both a course in the root account
and for a course in the sub account
- Verify the sub account course wiki page has the immersive
reader button displayed
- Verify the root account course wiki page has the immersive
reader button hidden
fixes USERS-207
flag = immersive_reader_wiki_pages
Change-Id: I49e9fe72e786eb02fba2394febaa41d149dd1977
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222241
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Steve Shepherd <sshepherd@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
The Calendar event todo tab was displaying when users didn't have one of
their managed calendars selected. This would allow users to attempt to
create todo events but they would never actually get created. This
removes the todo tab correctly when a user managed calendar isn't
selected.
Test Plan:
- Enroll a student in a published course
- As the student, go to the Calendar page and de-select their personal
calendar and any user groups they are in
- Click on a calendar date or the plus button to open the "Edit Event"
popup window
- Note that the todo tab is no longer present
- re-select their personal calendar and open the "Edit Event" popup
window
- Note that the todo tab is now present
fixes KNO-28
flag=none
Change-Id: Ic1dbda14178c984e7b8952b74302c2d1fe514b59
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/221976
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Steven Burnett <sburnett@instructure.com>
QA-Review: Ben Nelson <bnelson@instructure.com>
Product-Review: Matthew Lemon <mlemon@instructure.com>
Test Plan:
- Create a course with a student and a teacher
- Conclude the course
- As both the student and teacher attempt to send a message to the other
user in the course
- Note that there is no option to select the concluded course in the
"select course" drop down.
fixes KNO-35
flag=none
Change-Id: Ifa6ba0c810829fd3b26f12acd70ca42523564759
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222116
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Steven Burnett <sburnett@instructure.com>
QA-Review: Steven Burnett <sburnett@instructure.com>
Product-Review: Steven Burnett <sburnett@instructure.com>
Announcements are not subscribe-able so we should not display
the Subscribe button immediately after replying.
Test Plan:
- Create an Announcement that allows replies
- As a student, reply to the Announcement
- The Subscribe button should not appear
- Refresh the page and the Subscribe button should still not appear.
closes KNO-37
flag=none
Change-Id: I130b73f4ca34e883ad0411dcc72e463fe1cc0370
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222296
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Matthew Lemon <mlemon@instructure.com>
QA-Review: Steven Burnett <sburnett@instructure.com>
Product-Review: Steven Burnett <sburnett@instructure.com>
and skip the search on `old_media_id`
test plan:
* specs run
(specifically graphql/types/submission_comment_type_spec.rb
'with no media object returns nil')
closes #LA-414
Change-Id: I5ae325a08c656d22b78e42b688cd4ace3a5d1b52
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/221968
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Anju Reddy <areddy@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
This commit adds the What it Does section for the
Users - moderate account role and adds entries
to the course content permission for assignments,
calendar, discussions, and pages. Also standardized
use of a/the user vs users and added missing entry
for Grades - view all grades permission
CLOSES: USERS-213
flag = none
Test plan:
- View permissions UI
- In Account Roles, click Users - moderate content
- View the What it Does section
- In both Account and Course Roles, click Course Content
add / edit / delete
- In the What it Does section, view additions for assignments,
calendar, discussions, and pages
- In Grades - view all grades, view the What it Does section
entry called Grades
Change-Id: Ibeaf1393bf0579c6e78594e8d7978738ce1a1f85
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222212
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Landon Gilbert-Bland <lbland@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Landon Gilbert-Bland <lbland@instructure.com>
QA-Review: Steve Shepherd <sshepherd@instructure.com>
Product-Review: Erin Hallmark <erin@instructure.com>
closes LA-431
flag=none
test plan:
- spec/models/media_object_spec.rb passes
Change-Id: I42b1138e9f6a89b2b7fda4b1749f70145c439c37
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222360
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: Ed Schiebel <eschiebel@instructure.com>
test plan:
* for a new course that (by default) already has
'apply_assignment_group_weights' as false,
an API update call that includes
'apply_assignment_group_weights=false' should not trigger
a notification since nothing (functionally) changed
(even though technically the db is saving an explicit value now)
closes #LA-412
Change-Id: I15e7288d98bfc910c43e0d5320d90658a24682c1
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222027
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Anju Reddy <areddy@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
When the permission to 'send messages to individual course members' is
disabled, students are no longer able to send Canvas Conversation
messages to group members within the same course-level group using the
group as the context
Test Plan
- In your account permissions, disable "Send messages to individual
course members" for the student role
- Enroll two students into a course and into the same course-level group
- As one of the students, select your group from the course selector in
the inbox
- Compose a message leaving the "Course" field as "Select Course"
- Click the "Contacts" icon and select the other student in the group
- Attempt to send the message and notice the red tooltip stating that
messages can't be sent to users in the selected group
fixes KNO-32
flag=none
Change-Id: Ifa1e8021573d3338a16c95795437576b2d4c32f6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/221912
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Steven Burnett <sburnett@instructure.com>
QA-Review: Ben Nelson <bnelson@instructure.com>
Product-Review: Matthew Lemon <mlemon@instructure.com>
quickfix for an underlying switchman bug with shard inference
test plan:
* in an environment with multiple db clusters
(i.e. production-like), a user whose original shard is
from a separate cluster should be able to search for users
using the direct shard modal on another cluster account
1) Have two Shards, Shard1 and Shard2
2) Create a Course1 with an Assignment in Shard2
3) Have User1 (Admin user whose is from Shard1), visit Course1 and launch SendTo dialog from Assignment1 and search for a user(enter 3 chars)
4) Should not throw an error
flag=direct_shard
closes #LA-422
Change-Id: I3c0b6d25183c9bb875ad6d1e543dca86cee67fb6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222204
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Anju Reddy <areddy@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
The old rce put a placeholder in the content where the media
was added. This change updates the css so it renders as expected
in the new rce too.
closes LA-107
flags=rce_enhancements
test plan:
- in a course with rce enhancements turned off
- edit something and include a video and audio
> expect to see placeholder images
- save
> expect to see placeholders
- turn rce enhancements feature on
- edit
> expect the placeholders to be rendered in the new
rce like they were in the old rce
- save
> expect the placeholders to be rendered
> expect to be able to click on the placeholder to play
the media
Change-Id: I491bc06c1e8eef0dcd3352d7dc9214829180554b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/221954
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Carl Kibler <ckibler@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Lauren Williams <lcwilliams@instructure.com>
test plan:
* create a wiki page with a broken canvas link
* set the page as the front page of course
* if a student follows the broken link from the
front page (e.g. /courses/X) it should still
send the broken link notification to the teacher
as if they had followed it from the page directly
(e.g. /courses/X/pages/URL)
closes #KNO-182
Change-Id: Ib4d561997084d7aa167f3a30cf30815f7221b8dc
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/221660
Reviewed-by: Carl Kibler <ckibler@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Carl Kibler <ckibler@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
Commit 39d77b5e added an "attempt" parameter so plagiarism platform
providers can reliably set and update scores for online_text_entry
submissions with multiple attempts. However Canvas also needs to provide
a way for the user to access the report for a given attempt number,
rather than always showing the report for the first submission attempt.
closes PLAT-5232
flag=none
Test plan:
- As in https://github.com/instructure/canvas-lms/commit/39d77b5e test
plan, make an assignment that accepts online_text_entry, and as a
student, submit to it twice (making two attempts).
- As before, make originality score for each attempt using the API, this
time also sending `resource_url`s
curl -H "Authorization: Bearer MYTOKEN" http://web.canvas-lms.docker/api/lti/assignments/39/submissions/27/originality_report --data 'originality_report[attempt]=1&originality_report[originality_score]=11&originality_report[tool_setting][resource_type_code]=originality_reports&originality_report[tool_setting][resource_url]=http://example.com/eleven'
(Note: if you comment out `raise Canvas::Security::TokenExpired` in
lib/canvas/security.rb, you can use an old token from your Plagiarism
Platform test tool)
- Go to the places in the UI where links to the report appear and make
sure all links now point to a URL with an `attempt=1` (etc.) query
param. Make sure the attempt number matches up. The four places are:
1. In speed grader on the right side
2. In speed grader on the left side of the page -- this is in a
partial which is shown in other places like when the student clicks
details for a submission
3. In student grades -- as an instructor, go to gradebook and click on
a student's name. In the table with assignments, on the right, there
will be a red or green bubble -- clicking that takes you to the
report. (You can only the last attempt's report here).
4. In old gradebook there is a link too. In new gradebook there is
not. (I didn't change gradebook stuff due to new gradebook
uncertainty)
- Click the link, which should forward to an LTI 2 launch URL. For me,
this page doesn't work (and didn't for me on Jesse's test account
either) but you can get the `resource/XXXXX/` parameter in the URL and
look up the URL by something like `Lti::Link.find_by(resource_link_id:
'ec2fa300-2c64-432f-83db-8af709059a7c').resource_url`. Make sure this
matches up to the correct URL you sent for that attempt.
- Optionally, resubmit originality reports using the API, using new
scores and report URLs. Again click a link in the UI and get the
resource_link_id (that shouldn't have changed) and check that the URL
`Lti::Link.find_by(resource_link_id: '...').resource_url` did change.
Change-Id: Ifc8828b4d4486adc2988b7b71cb712821b2b42c2
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/221399
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: Evan Battaglia <ebattaglia@instructure.com>
Test Plan:
- Run migrations
- Navigate to /profile/settings and create a new access token
- As a site admin, navigate to /users/:user_id/messages and verify
no notification has been sent
- As a site admin, navigate to /accounts/site_admin/settings and
enable the "Send notifications when manually created access tokens
are made" release flag
- Make another new access token for a user. Verify they get a message
saying that a new access token was created.
- Regenerate an access token. Notice that this should also send them
a new message
fixes USERS-115
flag = notify_for_manually_created_access_tokens
Change-Id: Ic2760ca20a9dfd40d5dd17339ab42c85c84511b6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/220464
Reviewed-by: Charley Kline <ckline@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Steve Shepherd <sshepherd@instructure.com>
Product-Review: Matt Meservey