closes VICE-3011
flag=react_people_page
Test Plan:
- Tests pass
- Turn on 'People Page Upgrade' FF
- Visit a course people page as a user with the teacher role
- Ensure the Login ID table column is visible
- Click the student view button
- Ensure that the Login ID table column is no longer visible
Change-Id: I2285aba026b42895902f43efd5392d831ae45e84
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/298192
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>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Before, when a user was editing an event, changed the context,
clicked "More Options," and then saved the event, the context
change would not show up. Now, they should be able to see that
the event has moved over to the other calendar after they save
in this situation.
closes LS-3306
flag = none
Test Plan
- As a teacher, create an event on the calendar
- Click on that event to edit it
- From the modal, move the event to a different calendar
- Click "More Options"
- Click "Save"
- Notice that the event is now on the other calendar
- You could also try logging in as a student in the
teacher's course and testing that the event either
appears or disappears from the student's calendar
Change-Id: If57d453ad3e59baa14e000f91077b669c846f74b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/298216
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: Joshua Richardson <joshua.richardson@instructure.com>
fixes QO-878
flag=none
test plan:
- set a course late policy
- create a quiz with a due date in the past containing at least one
manually graded question and one automatically graded question
- as the student, take the quiz
- from Speedgrader, press the Update Scores button
- the submission should remain in "pending_review" since there
is at least one question which still requires grading
- updating just fudge points should keep it in "pending_review"
- once the question is graded, the submission should transition to
"complete"
- updates from the gradebook directly should update the submission
from "pending_review" to "complete"
Change-Id: I16645b63b2f999595840c225121233e5732039e0
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/296796
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Dustin Cowles <dustin.cowles@instructure.com>
Product-Review: Stephen Kacsmark <skacsmark@instructure.com>
Reviewed-by: Ricardo Oliveira <ricardo.oliveira@instructure.com>
Also prevents subaccounts from creating keys, which was unintentionally
previously possible via the API.
closes INTEROP-7568
flag=none
Test plan:
- With a CMC set up, set up a new dev key in site admin. Make it visible
and set to "allow". Do not set it in the parent account -- so, the new
key's only account binding will be for Site Admin
- Check in a same-shard and cross-shard CMC child account that the UI
does not allow you to turn the key on (it will be disabled)
- Try to turn the key on with the api binding, e.g.:
tok http://cmcchild.cmc.docker/api/v1/accounts/3/developer_keys/10000000000012/developer_key_account_bindings developer_key_account_binding[workflow_state]=on
That will fail with a 404
- In the UI check a CMC parent account that you can turn the key on and
off.
- Just to make sure your earlier API command was correctly formed you
can check that turning it on/off works thru the API too.
- Create a key in the CMC parent account and check that it cannot be
turned on/off in either child account, in the UI or API
- Check that the keys cannot be turned on/off in the API for a
subaccount.
- Check that you cannot access the developer keys page in the UI at all
for a subaccount.
Change-Id: I0b7a6978685520d1a35ff0744b7a98b1b6191543
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/296978
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Xander Moffatt <xmoffatt@instructure.com>
Product-Review: Alexis Nast <alexis.nast@instructure.com>
Reviewed-by: Xander Moffatt <xmoffatt@instructure.com>
refs VICE-3049
flag=discussion_grading_view
Test Plan:
- will be verified as corresponding components are created
- in graphiql copy and paste query/mutation
- adjust appropriately and replace variables with values
- queries should get desired info
- mutations should make desired change
Change-Id: Ie1d312d8f07de4e0f209608f7f82d380cff66970
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/298000
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Jeffrey Johnson <jeffrey.johnson@instructure.com>
Reviewed-by: Omar Soto-Fortuño <omar.soto@instructure.com>
Product-Review: Omar Soto-Fortuño <omar.soto@instructure.com>
refs VICE-3049
flag=none
Test Plan:
- go to graphiql
- set up a query for a discussion
- for discussionEntryConnection add parameter for userSearchId
> should get entries for specified user
Change-Id: I54ff5a401eaca4d7c4bfa4d6b58bd9ccc905ab64
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/297834
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>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
refs VICE-3049
flag=none
Test Plan:
- in graphiql
- set up a mutation to update a submission score by id
> should allow for updating score by submission id
Example:
mutation MyMutation {
__typename
updateSubmissionGrade(input: {submissionId: "37", score: "10"}) {
submission {
_id
id
grade
score
user {
_id
id
name
}
}
}
}
Change-Id: I0f405be21c54b5725e900b66ae3326ffa4418797
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/297998
Reviewed-by: 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>
QA-Review: Jason Gillett <jason.gillett@instructure.com>
closes VICE-3007
closes VICE-3009
flag=react_people_page
Test Plan:
- Tests pass
- With feature flag off, open course people page as a teacher
- Ensure course has a student that is inactive (deactivated)
- Ensure course has a student invitation that is pending
- Ensure course has a student with pronouns after their name
- Open a new tab and turn on 'People Page Upgrade' FF
- While still in new tab, navigate to the same course people page
- Compare legacy page against upgrade page
- Users with inactive or pending labels should now have pills
with 'inactive' or 'pending' after their names
- Users with pronouns should have pronouns after their names
To deactive a user, use the legacy page's roster row context menu.
To enable and set up pronouns, see the guides linked in VICE-3009.
Change-Id: I74c58c4b1b9d715296cb07ba71e513c0d5c1340c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/298058
Reviewed-by: 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>
QA-Review: Drake Harper <drake.harper@instructure.com>
QA-Review: Jason Gillett <jason.gillett@instructure.com>
refs VICE-3049
flag=discussion_grading_view
Test Plan:
- flag state is changeable from site admin feature option page
- flag state is available in ENV on discussion detail page
Change-Id: Ia91a0dd0267de06f11a6c06749e063abdb3cf1f5
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/297999
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: Nic Nolan <nic.nolan@instructure.com>
flag = none
closes VICE-2868
Test Plan
1. Specs Pass
2. Further testing will be done in deployed environment
Change-Id: I6d2fccd56b7c5a3c7d419290733a5c776220b85c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/298094
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: Drake Harper <drake.harper@instructure.com>
flag=react-inbox
closes VICE-2869
Test Plan
1. Test passes
2. Further testing will be done in Deployed environment
Change-Id: I716aa9e949a994f42a318f741264069f13853bd9
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/298095
Reviewed-by: Omar Soto-Fortuño <omar.soto@instructure.com>
Product-Review: Omar Soto-Fortuño <omar.soto@instructure.com>
QA-Review: Drake Harper <drake.harper@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Refs FOO-3043
flag=none
Recent front-end startup code changes make the JS entrypoint
load resources directly from the CDN without having Webpack
chunkify them... this means that we might be dynamically
importing something cross-origin and browser checks might
refuse to do that. So we should make the <script> tag that
loads the main bundle(s) flag them as crossOrigin "anonymous"
to allow that to work.
Test plan:
* Can only be tested in test or on CD
* Be in Chrome and set your locale to 'nn' or 'cy' which
are polyfilled locales
* Watch your console while you load Canvas
* You should get normal "locale polyfilled" messages and
the app should load normally, not CORS error messages
Change-Id: I246566dd2c6f3f2cc777699f7d29ff9866bd5523
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/298106
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob Burroughs <jburroughs@instructure.com>
QA-Review: Charley Kline <ckline@instructure.com>
Product-Review: Charley Kline <ckline@instructure.com>
closes VICE-2879
flag=none
Test Plan:
- spces make sense and pass
- will be validated post merge
Change-Id: I77a40e2fa192d42a1fc3ecb77249801183a1b88c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/298087
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jason Gillett <jason.gillett@instructure.com>
QA-Review: Jason Gillett <jason.gillett@instructure.com>
Product-Review: Jason Gillett <jason.gillett@instructure.com>
closes VICE-2880
flag=none
Test Plan:
- specs make sense and pass
- will validate metric gathering post merge
Change-Id: I7eff70d2629c94e8aa99dedab7911b66f95eaabf
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/298089
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jason Gillett <jason.gillett@instructure.com>
QA-Review: Jason Gillett <jason.gillett@instructure.com>
Product-Review: Jason Gillett <jason.gillett@instructure.com>
Passes on the placeholder prop in Canvas' DateInput component to the
instui placeholder. Also tweaks 2 prop types in Canvas' AsyncSelect to
match instui's type definition for the rendered Select component.
flag = none
closes LS-3338
Test plan:
- Check out a CanvasDateInput component (like in the bulk due date
editor) and expect it to still look/function normally
Change-Id: I11ba41b5a3f9eb116f4fe0b02b25b1fa3bf39bc3
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/297775
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Eric Saupe <eric.saupe@instructure.com>
QA-Review: Eric Saupe <eric.saupe@instructure.com>
Product-Review: Jackson Howe <jackson.howe@instructure.com>
refs LS-3318
flag=confetti_branding
test plan:
- navigate to confetti stories in storybook
- should now have an example when a single and multiple brand
colors are enabled
- enable the confetti_branding flag
- navigate to an on time submission to trigger confetti splash
- regular confetti should be displayed
- enable custom branding on your account, most notably primary
and navigation colors
- navigate back to your submission
- your confetti colors should match your brand config
- disable the confetti_branding flag
- navigate back to your submission
- confetti should be back to the standard colors
qa risk: low
Change-Id: I61e92dba18a0f3054abcf687f7d591810c66ede9
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/297914
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: Robin Kuss <rkuss@instructure.com>
Fixes FOO-3043
flag=none
Recent refactoring of the front-end capability loading
introduced an error where the completion of the I18n
capability was not waiting on locale data to actually
finish fetching before marking the capability as fully
up. Thus the front-end would continue booting since it
thought all the dependencies were loaded. And if the
locale polyfiller had not actually completed yet, the
first use of, say, Intl.NumberFormat() could explode.
Test plan
* Set your locale to a polyfilled one (Cymraeg, Íslenska,
or Nynorsk are good ones)
* Try to create a new assignment in a course by visiting
/courses/:id/assignments/new (where :id is the id of
a course you have created)
* The "polyfilled XX for locale XX" messages should show
up in the console indicating the the locale data is
being polyfilled
* The page should also load and function normally and not
throw any fatal errors
Change-Id: I7a7710c626906f43027f192eca70a9b56ed33554
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/298079
Reviewed-by: Jacob Burroughs <jburroughs@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Charley Kline <ckline@instructure.com>
Product-Review: Charley Kline <ckline@instructure.com>
closes VICE-3004
closes VICE-3008
flag=react_people_page
Test Plan:
- Tests pass
- With feature flag off, open a course people page as a teacher
- Open a new tab and turn on 'People Page Upgrade' FF
- While still in new tab, navigate to the same course people page
- Compare legacy page against upgrade page
- Last activity and total activity date/times should be the same
Change-Id: Id4ce92e43756df217659081e17835478ff3e6608
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/297957
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: Drake Harper <drake.harper@instructure.com>
closes VICE-2870
closes VICE-2881
flag=none
Test Plan:
- specs pass
- will be verified after deployment
Change-Id: I143c1804d502c08cf7f1b15ab43c09f91bfe568b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/297426
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jason Gillett <jason.gillett@instructure.com>
Product-Review: Jason Gillett <jason.gillett@instructure.com>
QA-Review: Jason Gillett <jason.gillett@instructure.com>
closes VICE-2867
flag=react-inbox
test plan
1. specs pass
2. Further verification will be done on deployed env
Change-Id: I019ab6e3b838d508bba0799023127e4bbeedc9c7
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/297420
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Drake Harper <drake.harper@instructure.com>
Product-Review: Drake Harper <drake.harper@instructure.com>
QA-Review: Nic Nolan <nic.nolan@instructure.com>
refs LS-3318
flag=none
test plan:
- visit the Confetti story
- wait for the animation to complete
- click the button
- enjoy your extra dopamine
qa risk: low
Change-Id: I8ef1a83eebdd9efc4e7430d9cac1be2cd0237bf6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/297813
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: Davis Hyer <dhyer@instructure.com>
refs LS-3318
flag=none
confetti-js is a great package, but unfortunately has a few issues for
upcoming work. The public repo hasn't responded to issues in ~2 years
so it is unlikely that our open PR will be accepted.
see https://github.com/Agezao/confetti-js/pull/38
Instead we have opted to create our own generator based on this
package's work. It has been significantly simplified for our usage, as
well as providing two new benefits:
1. Opacity on confetti particles is no longer applied
2. Image elements are now cached to prevent unnecessary requests on each
animation frame
test plan:
- navigate to the confetti storybook
- things should look very similar to before, the only visual
difference should be a lack of particle opacity
qa risk: low
Change-Id: Icb0232b3d3dec8580ff79a73637a3c8748a5c253
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/297779
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jeffrey Johnson <jeffrey.johnson@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Davis Hyer <dhyer@instructure.com>