closes MAT-47
flag=expand_cc_languages
Update the list of closedCaptionLanguages to all those supported
in Canvas. How did I come up with the list?
1. load a page with an RCE
2. set a breakpoint at the bottom of closedCaptionLanguages and refresh
3. copy the result of `Object.keys(closedCaptionLanguages)`. This are the
old locales
4. open a rails console
5. run
cnvs_l = []
I18n.available_locales.each {|s| cnvs_s << s.to_s}
old_l = <paste result of #3 above>
the_missing_locales = cnvs_l - old_l
I added the missing locales to closedCaptionLanguages.
Then I removed zh_cn and zh_tw because those are not Simplified and
Traditional Chinese, but PRC and Taiwan Chinese.
I changed Hebrew from iw to he.
I left languages in the closedCaptionLanguages.js file that are
not in Canvas.
I did not use the *-x-k12 locales
test plan:
- put the user in English (Canada) and turn on the auto show
closed caption feature
- on a video in the RCE, open the Video Options tray
- click on the + subtitle button
> expect the full list of locales (like English (UK) and Armenian)
- add subtitles for English and English (UK)
a valid .srt file looks like:
1
00:00:00,000 --> 00:00:02,000
My first video
it will be helpful to edit the string a little for the different
languages so you can recognize what language file is being shown.
> expect generic english captions
- Delete the English subtitle and add any other language but English
> expect the subtitles to be in English (UK)
- add subtitles for English (Canada)
> expect subtitles to be in English (Canada)
Change-Id: I8f18d666482a67063a3b8101b7778e32cd440b45
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/262794
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Nate Armstrong <narmstrong@instructure.com>
QA-Review: Nate Armstrong <narmstrong@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
closes QO-737
flag=none
Test plan
1- Create a classic quiz with at least one essay item
2- As a student take the quiz in Firefox
3- Click on the RCE so it gets focused
4- Click outside the RCE
5- Repeat step 3 and step 4 a few times
6- Submit the quiz
7- "Stopped viewing the Canvas quiz[...]" should not
be tracked in the Action log page when the RCE
is focused
8- "Quiz resumed" should not be tracked in the Action
log page when clicking outside the RCE
Change-Id: I86cb6053e602f6edcc0a47d4c64baf0c60cf2a44
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/260565
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jared Crystal <jcrystal@instructure.com>
QA-Review: Mark McDermott <mmcdermott@instructure.com>
Product-Review: Susan Sorensen <susan.sorensen@instructure.com>
refs INTEROP-6575
flag=microsoft_group_enrollments_syncing
Test Plan
- Enable the MSFT enrollment syncing flag
- Navigate to course settings > integrations
- Enable MSFT sync integration and verify
a MicrosoftSync::Group is created in the
database
- Disable the MSFT sync integration and verify
the MicrosoftSync::Group record is soft-deleted
in the database
- Verify loading indicators and errors are displayed
at the proper times
- I18n check
- A11y check
Change-Id: Ic8ce90da36da74e41ed9d9f443f27d230bb05b50
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/262798
Reviewed-by: Ryan Hawkins <ryan.hawkins@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
closes OUT-4213
flag=improved_outcomes_management
test plan:
- Prereq: FF turned on and Account/Course with groups and
outcomes
- Navigate to Account with Outcomes
- Click on a root outcome group from the tree browser on the
left-hand side
- Click on Kebab Menu next to Outcome Group title
- Click on the Move option; this will open the Move Modal
- You should see the “+ Add new group” button displayed
below the Group Tree Browser
- Click on the “+ Add new group” button, a form will display
with a text input, a checkmark button and a X button. Note
that the checkmark button should remain disabled until a
group name is provided in the text area.
- Provide a new group name in the text area. Click the X button.
- This should close the form and revert back to displaying
“+ Add new group” button
- Click on the “+ Add new group” button again and the text area
Should be cleared of the text you entered previously.
- Provide a new group name that you want to create. Note that
the Checkmark button should enable.
- Click on the checkmark button to save the group. This should
revert back to showing “+ Add new group” button and once
saved, a flash alert will display showing that the group was added.
NOTE: The flash alert is only to verify that the group was saved.
This is not a part of the designs and will be removed later.
- Refresh the index page and you should see the new group was
added to the root.
- Repeat the same steps in a Course with outcomes
Change-Id: Ie82ff9b16615c496475dc44b90a6f61ad20ea424
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/261893
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Augusto Callejas <acallejas@instructure.com>
QA-Review: Martin Yosifov <martin.yosifov@instructure.com>
Product-Review: Jody Sailor
This change fixes a bug with the "due today" and "missing" links and
updates them so that they redirect to and focus on the correct
elements on the schedule tab when clicked.
closes LS-2072
flag = canvas_for_elementary
Test plan:
DUE TODAY:
- Acquire a subject course in a K-5 account
- Create an assignment in that course that with a due date of today
- Log in as a student enrolled in that course
- On the homeroom tab of the K-5 dashboard, expect to see a link
with the text "1 due today" on the card for that course
- Click the link, and expect the browser to switch to the schedule
tab, scroll to "Today" in the planner, and focus on the checkbox
for the first assignment due that day
MISSING:
- Acquire an assignment in a subject course in a K-5 account with a
due date in the past
- Log in as a student enrolled in that course
- On the homeroom tab of the K-5 dashboard, expect to see a link
with the text "1 missing" on the card for that course
- Click the link and expect the browser to switch to the schedule
tab, scroll to "Today" in the planner, and focus on the missing
items expand/collapse button
- Expect the missing items section to already be expanded when you
get there
Change-Id: Idd1d9ebc2bbe70ddc50019946db6f45e9cd0e250
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/262219
Product-Review: Peyton Craighill <pcraighill@instructure.com>
Reviewed-by: Nate Armstrong <narmstrong@instructure.com>
QA-Review: Nate Armstrong <narmstrong@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
closes OUT-4162
flag=improved_outcomes_management
Updates the GraphQL query by adding 2 args for matching the
context in order to determine if the outcomes were imported
on that context. Updates the UI in order to display the
imported outcomes as radio buttons enabled.
Test plan:
- Import outcomes from the account into a course, it can be
done on Rails console by running:
`course.root_outcome_group.add_outcome(outcome)`
- Access to Outcomes Management for that course
- Click the button: Find
- Navigate through the account's outcomes and look for the
outcomes that were imported into the course
- The radio buttons for those outcomes should be enabled
- Remove the outcomes from the group (you can delete the
ContentTags from: `group.child_outcome_links`)
- After navigating through the Find Outcomes Modal now the
outcomes should not be enabled
- Repeat the process for multiple contexts, testing on account
and course level
- You can also compare the test results by running the queries
on GraphiQL with the following format:
```
query MyQuery {
account(id: 1) {
rootOutcomeGroup {
outcomes {
nodes {
... on LearningOutcome {
title
description
isImported(targetContextType: "course", targetContextId: 1)
}
}
}
}
}
}
```
Change-Id: I5cd13d81c5cba4df2befd4091559ad41a5cc7816
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/262304
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Pat Renner <prenner@instructure.com>
Product-Review: Jody Sailor
Reviewed-by: Augusto Callejas <acallejas@instructure.com>
This loads the non-hidden, course nav apps for the k5 subject course
on the resources tab.
closes LS-2062
flag=canvas_for_elementary
Test plan:
- Open up a k5 subject course as a teacher or student
- Click the resources tab
- Expect to see whatever apps appear for that user on the classic
course nav
- Click an app, expect app to open in course context
- Reload page, expect to see loading spinner briefly
- Simulate network failure, expect to see error message when loading
apps
Change-Id: Ie483315d02feaeaeea835656dacf2739902ee2ef
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/262572
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jonathan Guardado <jonathan.guardado@instructure.com>
QA-Review: Jonathan Guardado <jonathan.guardado@instructure.com>
Product-Review: Peyton Craighill <pcraighill@instructure.com>
Test plan:
- No test in this first ticket. A test will be done
once the component is ready on VICE-1237.
flag=none
Refs VICE-1239
Change-Id: I91b34232488bef3f91330190f4b7fde694918f2a
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/262600
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jeffrey Johnson <jeffrey.johnson@instructure.com>
QA-Review: Jeffrey Johnson <jeffrey.johnson@instructure.com>
Product-Review: Jeffrey Johnson <jeffrey.johnson@instructure.com>
Includes a loading skeleton for k5 cards, homeroom announcements,
and for assignments and announcements on course cards.
A few other notes:
- The card data is cached in local storage, so the skeleton for
the cards themselves will only appear briefly if that data
exists
- We cache the number of cards that a user has server-side, and
send that number in an ENV variable so we can display the
correct number of card skeletons, however we don't wait for the
caching to complete before sending card data back, so the first
time a user ever logs in, we may default to 5 skeletons
- We always show 1 skeleton for announcements, regardless of
actual number
closes LS-2070
flag = canvas_for_elementary
Test plan:
- Enroll a teacher and student in a homeroom course with an
announcement and a subject course with an announcement and
assignment (or more than one)
- As student, load the dashboard; expect to see shimmer for the
homeroom announcement and 2 lines on the subject course card for
the assignment info and announcement - this either disappears or
is replaced by content
- There should also be brief shimmer for the cards themselves
- Repeat for teacher, except there will only be 1 line of shimmer
since teachers don't see assignment info
Change-Id: I56bd02d19bff2e7f2906e3c248ee482a21d933b6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/262255
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jeff Largent <jeff.largent@instructure.com>
QA-Review: Jeff Largent <jeff.largent@instructure.com>
Product-Review: Peyton Craighill <pcraighill@instructure.com>
- when tests need msw, they must provide their own handlers
TEST PLAN:
- passes jenkins
Change-Id: Ia23fd96e0a52ac083f4c2ee4913948b0b1087a2a
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/262585
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
closes EVAL-1577
flag=annotated_document_submissions
Test Plan:
1. Enable the "Annotated document submissions" release flag.
2. Go to create a new assignment. Select the "Annotated document" type.
Verify the upload button that shows up is enabled. Click it and
select a file to upload. Upon upload success, verify the file was
uploaded to the "Course files" folder in Canvas.
3. Re-do step 2, but instead of making a new assignment, edit an
existing assignment.
Change-Id: I1e7a30c2caf7481c993cf9689cd73693461026a0
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/262506
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Aaron Shafovaloff <ashafovaloff@instructure.com>
Reviewed-by: Adrian Packel <apackel@instructure.com>
QA-Review: Aaron Shafovaloff <ashafovaloff@instructure.com>
Product-Review: Jody Sailor
Remove the whole old backbone feature ui
fixes FOO-1826
Change-Id: I5151d4af96f3329b5654a360228e7b0db125080d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/255745
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
closes OUT-4316
flag=improved_outcomes_management
Test plan:
- Go to Account > Settings > Feature Options
- Enable Improved Outcomes Management FF
- Go to Account > Outcomes
- Click on +Create button in the header
- Modal should display with title "Create Outcome" and
the Create button within the modal should be disabled
- Enter outcome name, friendly name and description, then
select parent group for new outcome via TreeBrowser;
Create button should become enabled
- Click Create button; modal should close and you should see
flash message 'Outcome "%{name}" was successfully created'
- Refresh the page and confirm that the outcome was
created in the selected group
- Go to Course > Outcomes and repeat the above tests
Change-Id: Icbba0fba60522defb0ffc28f13795ca315a9fd1c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/262218
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Augusto Callejas <acallejas@instructure.com>
QA-Review: Chrystal Langston <chrystal.langston@instructure.com>
Product-Review: Jody Sailor
Always return an assignment's rubric association directly on the
assignment, rather than relying on an assessment object to look up the
association. This ensures that we always have access to settings
specified on the association (in particular the "hide points" setting),
rather than only having access to them when looking at an assessed
submission.
fixes EVAL-1528
flag=assignments_2_student
Test plan:
- Have an assignment with a rubric
- Enable the "hide points" option on the rubric association
- As a student, view the assignment page
- Rubric should not show point values, regardless of whether it's
currently graded or ungraded
Change-Id: Icea4c69c13fa4905e9141e267c2f7a5b78ff2e08
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/261786
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Syed Hussain <shussain@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
QA-Review: Syed Hussain <shussain@instructure.com>
Product-Review: Syed Hussain <shussain@instructure.com>
This commit fixes two issues, one with a11y and one with I18n:
1. The mini calendar would always start weeks on Sunday whenever
the user clicked to view a next or previous month. Now
the weeks always start on the correct day based on the current
locale.
2. The mini calendar days had the incorrect a11y label beyond the
first month. Now the days always read the correct date to
screenreader users.
fixes LS-423
flag=none
test plan: automated :)
Change-Id: Iff4fafbcc56c9bcb20efa4089b77fb13177f0757
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/262332
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: Nate Armstrong <narmstrong@instructure.com>
Closes INTEORP-6564
flag=microsoft_group_enrollments_syncing
Test Plan:
- Make sure the associated feature flag is turned
on in the root account
- Navigate to a course settings page
- Verify a new Integrations tab appears
- Verify this tab is only available to users
who can manage course enrollments
- Click the new integrations tab and verify a
'Microsoft Sync' integration appears in the list
- Expand the integration and verify a "sync now"
button is visable and clickable
- turn off the integration
- Verify an information-level alert is shown directing
the user to turn the integration back on to interact
with its settings.
- Verify the "Sync Now" button is now disabled
Note that that this UI has not yet been connected to
real data via an API. That portion will come in the next
ticket.
For now it's just rendering example data.
Change-Id: I3db8aed41d62b7835ec44c635652e5ee6b51d6b8
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/262182
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Mysti Lilla <mysti@instructure.com>
QA-Review: Mysti Lilla <mysti@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
closes: LS-2078
flag=canvas_for_elementary
test plan:
In general:
- when there are no more items in future weeks, the > button is disabled
- when there are no more items in past weeks, the < button is disabled
- when you navigate to a new week using < or >, the new week loads and
the first item is focused and scrolled into view... unless there is
nothing due that week, then it's scrolled to the top and focus
remains on the button you clicked
- when you navigate to this week using the Today button, this week loads,
Tday is scrolled into view, and the
- first item due today is focused, or
- the missing items is focused if nothing is due today, or
- focus remains on the Today button if nothing is due today and
there are no missing items
with a k5 student in a course:
- open the schedule
- with focus on the < Today or > button
> expect focus to move among the buttons using arrow keys
- TAB away from the buttons then shift-TAB back
> expect focus to return to whatever button had focus last
- with no assignments at all
> expect focus on the Today button
- with 1 assignment due the week after next
> expect focus on the Today button
- click > twice to get to the end
- with 1 assignmenet due the week before last
> expect focus on the Missing Items
- click < twice to get to the end
- with an assignment due this week today
> expect focus missing items
- with an assignment due today
> expect focus on the item
- with an assignment doe later this week
> expect focus on the item
Load the dashboard and go to the planner
- switch to one of the other dashboard tabs and back to the schedule
> expect whatever week was loaded to still be there
> expect focus to be on the first focusable item in the week or at
the top
> expect Today to scroll into view if the week is the current week
- refresh the page so it loads the Schedule from the get-go
> expect Today to scroll into view once the data is loaded
Change-Id: I7e859ddd01ef66019b568a75e02553a203d0a59d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/261718
Product-Review: Peyton Craighill <pcraighill@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jeff Largent <jeff.largent@instructure.com>
QA-Review: Jeff Largent <jeff.largent@instructure.com>
This update adds some configurability to the planner to scope the
items it retrieves from the planner API to only those courses in the
planner's store. This can then be used to filter items to just a
single course when on the schedule tab for a specific course.
closes LS-2023
flag = canvas_for_elementary
Test plan:
Subject Course:
- Go to a subject course in a K-5 account
- On the schedule tab for that course, expect only that course's
items to show up
- Expect only that course's missing items to show up
- Expect the course name and image to not show up anywhere in the
planner within the subject course's schedule tab
- Set up assignments in other courses that are due before and after
the first and last assignments from this course
- Expect to not be able to scroll earlier than the first assignment
or later than the last assignment in the subject course
Homeroom Dashboard:
- Create an announcement in a K-5 homeroom course (or find an
existing one)
- Expect that announcement to also show up in the schedule tab on
the K-5 dashboard
Classic Dashboard:
- Disable the canvas_for_elementary flag
- Go to the activity view on a student's dashboard
- Expect to see items from all courses (including the homeroom
course from earlier) in the planner
Change-Id: I252dba64fcbccf5bdfa92ecbd492af3c41e78da1
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/262002
Reviewed-by: Jackson Howe <jackson.howe@instructure.com>
QA-Review: Jackson Howe <jackson.howe@instructure.com>
Product-Review: Jeff Largent <jeff.largent@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>