After feedback, slightly modify how the easy student view buttons
are shown:
1. Include 'Student View' text in button and remove the tooltip
2. Remove old student view button from course settings
3. Add student view icon to mobile navigation
closes LS-1725
flag=easy_student_view
Test plan:
- Expect button to have text 'Student View' instead of just icon
- Expect student view toggle to be gone from course settings
sidebar
- Adjust screen width to something small - expect to see and be
able to use student view button on mobile nav
Change-Id: Ic5b499a1cd1132866b2030d81289d4441157a357
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257318
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: Jackson Howe <jackson.howe@instructure.com>
fixes FOO-1527
flag = none
test plan: you can install node modules and run webpack
Change-Id: I33347d791b0923f4471b555c6fac303b098b1ef4
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257333
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>
Hover over the checkmark/lock icon. You should get a tooltip.
fixes FOO-1514
Change-Id: Ia1e4c92c4372399e98c1ba2d7ebd805b11f3a656
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257067
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Charley Kline <ckline@instructure.com>
QA-Review: Charley Kline <ckline@instructure.com>
Product-Review: Charley Kline <ckline@instructure.com>
closes INTEROP-6436
flag=none
Test plan:
- make a bad grade passback request and check that logs output the
expected base string.
Change-Id: I0db7cb0adeb5fbf1b0e91a77693953f470385656
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257228
Reviewed-by: Wagner Goncalves <wagner.goncalves@instructure.com>
QA-Review: Wagner Goncalves <wagner.goncalves@instructure.com>
Product-Review: Evan Battaglia <ebattaglia@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Video, audio, and images in the rce have always been displayed
inline, allowing the user to stack more than one side-by-side. Up
until now, embedded iframes have been displayed as block elements,
which stands in stark constrast to other rce content and prevents
iframes from being placed side-by-side. It also made it difficult to
insert content below an iframe since it took up 100% width and hid
the caret.
This change displays embedded iframes as inline. Thus, they behave in
similar fashion to other content. Note that they are dispayed as
inline, not inline-block: as an inline element, if the user wants to
scale the iframe to 100% width, this is possible while an
inline-block styling would prevent the user from using percentage-
based styles - see LS-1228.
flag=rce_enhancements
fixes LS-1525
Test plan:
- Using the HTML editor, insert an iframe
- Switch back to WYSIWYG view
- Expect iframe content to display inline; the caret should flash
to the right of the frame
- In HTML view, add width="100%" to the iframe tag
- In WYSIWYG view, expect the iframe to span the whole width
- Expect to be able to place an embedded iframe next to a media
object
Change-Id: I1ff2817b988a9d563d4a8a69dcfae6d60e3aecba
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257233
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>
closes QUIZ-8085
flag=new_quizzes_modules_support
test plan:
- with the FF enabled:
- on the modules index page, open the
"add content to module" modal
- select "Quiz" from the dropdown and click [ Create Quiz ]
- if you have not opted for a particular engine yet
you should be presented with the choice between Classic
and New Quizzes (both should work)
- if you have opted for your quiz engine choice to be saved,
your choice should be used automatically, and you will
not have the option here
- with the FF disabled:
- creating a quiz by clicking [ Create Quiz ] should always
create a classic quiz, regardless of saved preference
Change-Id: Id53a95dd3e2f867167abbabefaf22e09b0bdfe89
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257075
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Stephen Kacsmark <skacsmark@instructure.com>
QA-Review: Mark McDermott <mmcdermott@instructure.com>
Product-Review: Susan Sorensen <susan.sorensen@instructure.com>
When setting a submission to late or missing manually, set the grader
on the submission object and create a new submission version if
needed.
closes EVAL-1319
flag=none
Test Plan
- Create an assignment.
- In a rails console, find a submission for that assignment.
- Grade the submission in Gradebook.
- Update the grader on the submission to be nil.
`sub.update!(grader: nil)`
- In Gradebook, set the submission manually to be late.
- Verify that the grader is the teacher and that there are now 2
submission versions.
`sub.reload.grader`
- Repeat, but set the submission manually to be missing this time.
- Verify that there are now 3 submission versions.
Change-Id: I109def58151feb8a33e6f83f756a097ca5f773b8
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256629
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: Kai Bjorkman <kbjorkman@instructure.com>
Product-Review: Jody Sailor
closes OUT-4194
flag=none
Test-plan: - yarn install
- yarn storybook
- Navigate to Outcomes components
- Press 'D' on the keyboard to bring up the controls
- Verify that string / bool / number props can be edited easily
- Verify all stories load (no red screens on a story)
- OutcomeManagement will need additional work to mock out
GraphQL requests. Some Failures on the story are anticipated
Change-Id: I7e5765c50c15ae1a5ea239946ebe12a72d73b614
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257144
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Michael Brewer-Davis <mbd@instructure.com>
Reviewed-by: Augusto Callejas <acallejas@instructure.com>
QA-Review: Pat Renner <prenner@instructure.com>
Product-Review: Michael Brewer-Davis <mbd@instructure.com>
fixes FOO-1166
so that the query for sub-accounts is not synchronous to the request
this should be api-compatible with the old method of one progress
object per sub account
note that sub-account themes are no longer generated in parallel,
so this may be a little bit slower than before. if it's an issue,
additional work may be required
test plan:
* have an account with lots of sub accounts
* edit and apply a theme
* progress bar shoould show correctly
* the theme should be applied to all sub accounts
Change-Id: I8c2fb4f38e72783052eaa0440072b6c8bd25bea8
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257004
Reviewed-by: Michael Ziwisky <mziwisky@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
closes QUIZ-8084
flag=new_quizzes_modules_support
test plan:
- with the FF enabled:
- in the "add content to module" modal,
when editing an assignment group, and
when finding a QO question to add to a group
[ New ... ] should now be [ Create ... ]
- also in the modal, the helper language below the dropdown should
be "Create" as well as the SR language when focusing the box
containing the options
- with the FF disabled, they should all still be [ New ... ]
- no regressions when the module_dnd FF is enabled/disabled
(Module File Upload Enhancements)
Change-Id: I3d3efe795dc7d1856aa37b8c7b38088533f678ad
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257008
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Stephen Kacsmark <skacsmark@instructure.com>
QA-Review: Mark McDermott <mmcdermott@instructure.com>
Product-Review: Susan Sorensen <susan.sorensen@instructure.com>
refs FOO-1511
also don't treat ANY invalid sql
as a timeout, and fix the case
where we might have a query with no values
Change-Id: Idc56bab38b1c8d7511f802a323754dc852730e86
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256195
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Rob Orton <rob@instructure.com>
QA-Review: Ethan Vizitei <evizitei@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>
closes LS-1819
flag=none
For some reason, fa is being renamed to fa.json translation file
is being renamed to fa_IR.json (see
https://livegrep.inseng.net/view/transifreq/Jenkinsfile.canvas-lms_community#L23) though when the user selects Persian as their language in canvas, our
lang is set to 'fa'. This caused planner to render in English and
the RCE to blow up.
With this change both planner and the rce will load the fa_IR file
when the language is set to 'fa'. Additionally I made a little
change in the RCE so it will always fall back to English if it
can't load the translations for the current language.
Ideally I'd like to stop renaming it, then mapping fa-* to 'fa', but
this change would still have to happen until translations made another
round-trip.
test plan:
- build canvas with all locals included:
bundle exec rake i18n:generate_js
yarn build:packages
RAILS_LOAD_ALL_LOCALES=1 yarn run webpack
- in /profile/settings, select another language
> expect the student planner and the new RCE to be in
the language (for the RCE you can look at tooltips on
the Bold, Italic etc. toolbar buttons.
- change the language to Persian (in the dropdown list,
it's 5th from the bottom)
> expect the planner and RCE to be in Persian
Change-Id: I85cbfddc1a4dad568e3ae28dc8760be1dc1cf280
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257231
QA-Review: Jeff Largent <jeff.largent@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jeff Largent <jeff.largent@instructure.com>
closes EVAL-1436
flag=view_ungraded_as_0
Test plan:
- Have the "View Ungraded as 0" feature flag enabled for the account
- Open gradebook for a course
- Toggle the "View Ungraded as 0" menu item on and off a few times
- Every time you enable it, you should get the confirmation modal
- As before, clicking OK should actually enable the option, while
cancelling out should not
- Every time you disable it, you should not get a modal
Change-Id: Ia8c38a8328ac21e6ad8fa9a80f4198cd4fc82593
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257176
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
QA-Review: Kai Bjorkman <kbjorkman@instructure.com>
Product-Review: Keith Garner <kgarner@instructure.com>
eportfolios has a bug where it won't use the new rce
closes LS-1424
flag=rce_auto_save
the rce_enhancements flag is a prereq
test plan:
- turn on the rce_auto_save flag
- type some stuff in the rce
- click cancel or submit/save/done/etc
> you should not be prompted about autosaved content
- refresh the page w/o cancelling or saving
> you should be prompted to restore autosaved content
- both create and edit
course syllabus
assignment
submit text entry assignment as a student
re-submit text entry assignment
course announcement
course discussion
edit discusion
reply to discussion
edit reply to discussion
outcome
pages
quiz
- quiz questions and answers never autosave since we only
autosave when there is only 1 RCE on the page and
the quiz description on the details tab is the 1st RCE
- account-level announcements do not autosave, so you should never
be prompted
- eportfolios will not use the new RCE. there's a ticket for that
Change-Id: I0639bcffc81de54073173da5325200d02f374321
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257005
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
closes LS-1811
flag=rce_pretty_html_editor
test plan:
- turn on the new rce and the "RCE Pretty HTML Editor" flag
- create a quiz, add a question, enter some text
- click the </> to open the pretty html editor
> expect the html to be left-aligned. (was centered before)
- change your canvas to be RTL
- repeat
> expect to still see the </> button icon (you couldn't in RTL before)
> expect the html to be right-aligned
Change-Id: Ia1205fbf625e95b251c8a557fb153880e9ad831e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257145
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>
Specs for switching between link options and other tray are still too
flakey. Skipping them for now.
refs LS-1814
flag = rce_enhancements
Change-Id: Ia5a32b810731cbd19ef340975c9eb23815a8b168
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257151
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Jeff Largent <jeff.largent@instructure.com>
Product-Review: Jeff Largent <jeff.largent@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Remove media query that hides assignment availability
within the home tab on screens smaller than 1280px.
It appears this hides relevant data without actually
solving a problem.
Closes: gh-1784
flag=none
Test plan:
- Specs Pass
Change-Id: I96b919a3a36052a7722e69576ce51d3c9b284573
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257095
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: Alex Slaughter <aslaughter@instructure.com>
test plan:
- render API documentation
- exercise the "Get user progress" endpoint under Courses
- caller must be an account admin, an observer of the user,
or a teacher in the course or a 401 will result
- target user must be enrolled in the course or a 404
will result
- the course must actually have modules with requirements
or a 400 will result
flag = none
fixes LS-1812
Change-Id: Ie0b648efb54046eccd80198359d65ee39501df60
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257140
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: Jeremy Stanley <jeremy@instructure.com>
closes QUIZ-8115
flag=none
test plan:
- for create/edit a NQ quiz
- Submission Attempts should be hidden
Change-Id: I1c9cde538f5a7d68e24dd1f2384f8edb11a4f6c4
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256988
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>
Updates LearningOutcomeGroupType to return the number of
nested subgroups and nested outcomes for a learning outcome
group.
closes OUT-4022
flag=improved_outcomes_management
Test plan:
- Create nested learning outcome groups
- For each nested learning outcome group create learning outcomes
- Make a query in /graphiql for an accout or a course and
retrieve the parent learning outcome group. e.g.
```
query MyQuery {
account(id: 1) {
rootOutcomeGroup {
id
_id
title
childGroupsCount
outcomesCount
}
}
}
```
- Compare the values at the fields childGroupsCount and
outcomesCount with the amount of nested subgroups and nested
outcomes respectively so they should match
Change-Id: Ie63a5b134d661832f5a22714b693dddc6887cec3
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/254149
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Pat Renner <prenner@instructure.com>
Reviewed-by: Michael Brewer-Davis <mbd@instructure.com>
QA-Review: Brian Watson <bwatson@instructure.com>
Product-Review: Michael Brewer-Davis <mbd@instructure.com>
fixes FOO-1518
test plan:
* enable MFA on the root account
* configure MFA for a user (profile page)
* scan the QR code with Google Authenticator
* the name for it should be "<account name> Canvas: <login id>"
Change-Id: Ib744082989b9eb6258abf5e705fea5968522af65
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257096
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Zac Watson <zac@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
the backend already supports CSV (and did even before the UI
was implemented); we might as well make it easier to get.
test plan:
- enable the bounced_emails_admin_tool feature
- perform a search for bounced emails (synthesize some data
first if needed; see
https://gerrit.instructure.com/c/canvas-lms/+/251572)
- along with the results table, there should be a
"Download these results as CSV" link
- which should do what it says
closes LS-1777
Change-Id: I43f0f657db13f0ccdf9118b666d858c5299af7e2
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257066
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: Peyton Craighill <pcraighill@instructure.com>
refs FOO-1409
flag = none
this is a regression of 46f8efd61f where we inadvertently removed the
dependency between 'i18n:generate_js' and 'js:yarn_install' tasks by
removing the former's dep on the removed client app task
== test plan
without node_modules/ present, running `rake canvas:compile_assets`
still works
Change-Id: Ie7d1f8b5f7b3f1a47056ec94d0fb5e994898823c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257123
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Xander Moffatt <xmoffatt@instructure.com>
QA-Review: Ahmad Amireh <ahmad@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
refs FOO-1426
flag=none
test plan:
- run some selenium specs that are currently failing under rails 6,
e.g. spec/selenium/login_logout_spec.rb, with `--options
spec/spec.opts` as outlined in the new docs. after starting up the
chrome selenium container (see the section of the docs preceding what
is added here), the full command is:
docker-compose run --rm -e CANVAS_RAILS6_0=1 web bundle exec rspec \
--options spec/spec.opts spec/selenium/login_logout_spec.rb
which, if you haven't run rails 6 specs lately, you'll probably find
needs to be preceded by:
docker-compose run --rm -e CANVAS_RAILS6_0=1 web bundle install
- follow the docs to pull the `spec_failures` out of the container and
verify that it exists with HTML formatted error reports
Change-Id: I52b39372f65ad76b859076af980133efe790bd45
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256737
QA-Review: August Thornton <august@instructure.com>
Product-Review: August Thornton <august@instructure.com>
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
closes QUIZ- 8089
flag=new_quizzes_modules_support
test plan:
- create a module as well as some Classic and New Quizzes
in a course
- on the modules page (and/or with the modules page set as the home page)
adding existing Classic and New Quizzes to a module should work
- test adding multiple quizzes at once
- creating a new Classic Quiz from the modal shold work
- creating a classic quiz at the same time as adding other
quizzes should work
- editing a quiz in a module should work (kebab menu)
- indenting a quiz in a module should work (kebab menu)
- with the FF disabled, there should be no regressions
Change-Id: I6e6b0a30860a90b2344450cdc202a6b96ad86fd2
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256471
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Stephen Kacsmark <skacsmark@instructure.com>
QA-Review: Mark McDermott <mmcdermott@instructure.com>
Product-Review: Susan Sorensen <susan.sorensen@instructure.com>
Upon click on Find button in the Outcomes tab, a modal should open
The modal’s title should be “Add Outcomes to %{context}” where
context is Account or Course. There should be a split view under
the border with a title on the left (‘Outcome Groups’) along with
image and helper text on the right
closes OUT-4036
flag=improved_outcomes_management
Test plan:
- Go to Account > Settings > Feature Options
- Enable Improved Outcomes Management FF
- With Improved Outcomes Management FF Enabled
- Go to Account > Outcomes
- click on Find button; a fullscreen modal should open
- modal title should say "Add Outcomes to Account"
- click on X button of modal; modal should close
- click on Done button of modal; modal should close
- Go to Courses and select a course, then select Outcomes
- click on Find button; a fullscreen modal should open
- modal title should say "Add Outcomes to Course"
- click on X button of modal; modal should close
- click on Done button of modal; modal should close
- verify that modal visualization is similar under
Chrome, Firefox and Safari
Change-Id: Ibfad684e6dbf0a62396d03c5932c10377676f20f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256572
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Michael Brewer-Davis <mbd@instructure.com>
Reviewed-by: Pat Renner <prenner@instructure.com>
QA-Review: Pat Renner <prenner@instructure.com>
Product-Review: Jody Sailor
closes gh-1594
closes VICE-1102
flag=none
test plan
- specs should pass
Change-Id: Ie7ed4af031b43f1edf527de6440e5f57aa2fd4b5
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/257087
Reviewed-by: Davis Hyer <dhyer@instructure.com>
Reviewed-by: Rob Orton <rob@instructure.com>
QA-Review: Davis Hyer <dhyer@instructure.com>
Product-Review: Davis Hyer <dhyer@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>