closes MAT-700
flag=buttons_and_icons_root_account
Test Plan:
- Build canvas-rce and Canavs JS bundles
- Naviate to and RCE and open the Buttons &
Icons tray
- Create a button and icon and embed it in
the RCE
- Switch to the HTML view of the RCE and validate
the image has a data-download-url attribute
with a value that looks like this:
"http://canvas.docker/files/1578/
download?download_frd=1"
Especially note that the attribute value does not
contain "courses/:id".
- Switch back to the WYSIWYG view of RCE
- Open the saved buttons & icons tray and insert
a previously created button & icon
- Validate that the button and icon inserted this
way also has the data-download-url attribute
with a similar URL
- Save the content on the assignment/page/whatever
- Edit the assignment/page/whatever
- Switch to the HTML view of the RCE
- Note that both images "src" attributes have now
changed to include the course context
- Validate the "data-download-url" values have not
changed (meaning they don't have "courses/:id"
in them like the "src" attribute now does)
- Switch back to the WYSIWYG view of the RCE
- Open the browser's network inspector and/or
clear the network history in the inspector
- Select one of the buttons and icons and click "edit"
- Verify GET request is made to the URL found in the
"data-download-url" attribute
- Verify the edit tray opens and is pre-populated with
the SVGs data
- Verify you can make changes and save them
Change-Id: Ia509999cdc2ad9ffe53f803a84850e1d68a80275
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/285540
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Reviewed-by: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
QA-Review: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
closes MAT-697
flag=new_equation_editor
test plan:
-enable the ff
-open up an RCE
-navigate to equation editor
>notice there are 2 new buttons at the
end of the 'Basic' tab
>test inserting an equation using the
new buttons and ensure it works properly
Change-Id: I561922034bb25c3077a69627f1b71558867600ca
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/285465
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
It turns out the text input was not disabled
by design. Users should be able to enter custom
colors.
Closes MAT-695
flag=buttons_and_icons_root_account
Test Plan
- Re-build canvas-rce and canvas JS bundles
- Navigate to an RCE and open the buttons and
icons tray
- Verify you can enter custom colors (as hex)
in all color inputs.
- Verify those custom colors are reflectedin the preview
and the final button & icon
Change-Id: I863ef03a632c0b730858e6ef006da1e1c6647ef0
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/285413
Reviewed-by: Joe Hernandez <joe.hernandez@instructure.com>
QA-Review: Joe Hernandez <joe.hernandez@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
set attribute on equation images so that
the a11y checker does not falsely flag
them for a11y violations
fixes MAT-610
flag=none
test plan:
-go to a page with an RCE
-insert an equation that uses a number
with a decimal point
>run the a11y checker and ensure it
does not flag the equation image for
an alt text violation
Change-Id: I55685d64b20588156ef458ba03140678f2e38411
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/285268
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
This new version includes a fix to add consistency
to the header length check
Closes MAT-655
flag=none
Test Plan:
- Run a yarn install in Canvas and re-build JS
bundles
- Navigate to an RCE and insert a heading with length
121
- Verify the a11y checker notifies of the error
- Change the heading length to 120
- Verify the a11y checker does not complain about
the length
Change-Id: I0671fe7357a3bdd9f7fd327f57faaf13fec2cbe8
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/285220
Product-Review: David Lyons <lyons@instructure.com>
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Fixes FOO-2330
flag=none
Canvas supports locales that not all browsers support, so we have
to check for those cases and pull in a polyfilled version of the
Intl functions that we use (DateTimeFormat, NumberFormat, and
RelativeTimeFormat) when a locale is called for that the browser
does not support.
The first time the locale polyfiller was implemented, a lot of
tests had to be done to see if there was an available polyfill for
the given locale; this somehow broke Chrome after Version 92 so it
was disabled for Chrome. However, latest versions of the @formatjs
polyfillers are much smarter and can perform those checks and
fallbacks themselves, which makes the Canvas polyfiller code way
simpler and more stable.
An additional issue was uncovered: when the locale is being polyfilled,
NONE of the native locales can be accessed any more, so code relying on
being able to get at, say, 'en-US' to do date arithmetic was failing.
So when a polyfill loads, we save the browser's version as Native*
(so Intl.DateTimeFormat --> Intl.NativeDateTimeFormat) so it can
be accessed if needed (shouldn't be anywhere except in the ui/shared
datetime support code).
Another issue uncovered is that when a polyfill is necessary, it
seems to take a long time... it can be SECONDS before it is fully
loaded and its Promises resolve, at least in dev. Unfortunately a
lot of front-end code can start up and begin to use Intl functions
during that time, possibly with unpredictable results. The only real
answer is to make the execution of immediate bundles, and the call
to ready() to finish front-end initialization, wait pending the
resolution of the Promise indicating that the locales have loaded.
This is a bit unfortunate as it delays the execution of front-end
code, but will only be noticeable in locales that need polyfilling
because if a native locale is detected, the bundle loading and
call to ready() will happen immediately as before.
This commit does the following:
- changes the Rails js_env to include LOCALES instead of LOCALE.
LOCALES is a full list of locale strings in fallback order, so
that if `sv-SE-x-k12` isn't found, it will try `sv-SE` and
`sv-x-k12` and `sv` before finally falling back to `en`.
The front-end startup code backfills ENV.LOCALE to ENV.LOCALES[0]
for backward compatibility.
- up-revs @formatjs to a more recent version that implements the
check if a polyfill is available and leverages the LOCALES list
to find an available polyfill.
- Rewrites intl-polyfills to be smarter about detecting when a
polyfill is necessary and whether it is possible.
- Makes it easier to add new Intl subsystems to the polyfill code
should they start getting used in the Canvas code somewhere.
- Fixes up the helpers that relied upon the 'en-US' locale
specifically. They now specifically check for the Native version
of an Intl subsystem first.
- Fixes up the changeTimezone helpers in ui/shared/datetime because
they relied on the `en-US` locale always being available, which
is not true when the locale has been polyfilled. That was kind of
sketchy anyway because it relied on new Date() parsing a fairly
free-form English date and time string; it now constructs an
ISO8601 string which is much more supported as an argument to
new Date().
Test plan:
* Try some different locale scenarios and observe the behavior of
Canvas in that language in general, and also specifically how it
formats dates and times (this may be faster to do in console).
* Pay particular attention to places where datepickers are used,
specifically, create a new assignment and fiddle with the due
dates down near the bottom.
* Locale scenarios to try:
a native locale like de or es
-should just work
a native locale with an extension like sv-x-k12
-should just work
a polyfillable locale like cy or nn
-should work with a console message saying it is polyfilled
the one non-polyfillable locale: Kreyòl Ayisyen
-should work via a fallback all the way to 'en' on console
Change-Id: I93a1f2c3f0b3002747f564aba24c93d77244383e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284509
Reviewed-by: Ahmad Amireh <ahmad@instructure.com>
QA-Review: Charley Kline <ckline@instructure.com>
Product-Review: Charley Kline <ckline@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
closes MAT-170
flag=buttons_and_icons_root_account
test plan:
- Navigate to a RCE instance
- Click Buttons & Icons button.
- In the tray, navigate to images section
- Click Add Image button
- Select Single Color options
- Select an icon
> Verify that the image thumbnail has
the selected icon with black fill
- On the fill color chooser, select a valid
color (not white or none). Fe: green
> Verify that the image thumbnail changes
its fill color
Change-Id: I495458c378a133f0dac804d0dd24e562cc4a9a9b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/285091
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
closes MAT-676
flag=buttons_and_icons_root_account
Test Plan:
- Enable the listed feature flag ^
- Re-build canvas-rce and Canvas webpack
- Naviage to an RCE and open the create button
and icons tray
- Set every property using a multi-color image
for the embedded image
- Verify all options are reflected in the preview
- Create the button to embed it in the RCE
- Verify the options you selected are reflected in
the image embedded in the RCE
- Click the imagein the RCE and choose "Edit"
- Verify you can edit the button and persist changes.
Especially test changing the embedded image
Change-Id: I0d4af3eb7f083481bb1d81b71ebf8e8eb12dcad4
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284900
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
QA-Review: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
flag=buttons_and_icons_root_account
When the tray got turned into a form, the
small padding made it stop taking up the
full-with of the tray.
Test Plan:
- Before pulling down the code, note that
there is extra padding on the left and
right edges of the button & icons tray
- Pull down the code and rebuild canvas-rce
and canvas webpack
- Open the buttons & icons tray and node the
extra padding is gone
Change-Id: I22db1b51b755b0dd284a5c2a0a7fd819a2d9da61
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284969
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jake Oeding <jake.oeding@instructure.com>
QA-Review: Jake Oeding <jake.oeding@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Closes MAT-671
flag=buttons_and_icons_cropper,buttons_and_icons_root_account
This commit hides the cropper, image upload, and course images
features unless enabled.
Test Plan:
- re-build canvas-rce and canvas webpack
- Navigate to an RCE and open buttons and icons
- Validate course images, upload image, and cropper are
not shown.
- Navigate to site admin feature settings (on your dev Canvas)
- Enable "Cropper & Associated Features in Buttons & Icons" and
flush redis if needed
- Navigate back to the RCE and open buttons & icons
- Validate course images, upload images, and cropper are shown
Change-Id: I310ce6300cbda671fdc69f887ce80eb28520f961
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284787
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
QA-Review: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
closes MAT-502
flag=rce_buttons_and_icons
test plan:
- Navigate to a RCE instance
- Click Buttons & Icons button.
- In the tray, navigate to images section
- Select a course image
> Verify that the trash button is rendered
- Click trash button
> Verify that the image data is cleared
test plan 2 (cropper button):
- Navigate to a RCE instance
- Click Buttons & Icons button.
- In the tray, navigate to images section
- Select a course image
> Verify that the crop button is rendered
- Click trash button
- Select a multicolor image
> Verify that the crop icon is NOT rendered
Notes: This PS includes some changes in
the image section layout.
Change-Id: I94d7dd1a16657b23fed7429b1edd700c57352ba1
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284718
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob DeWar <jacob.dewar@instructure.com>
QA-Review: Jacob DeWar <jacob.dewar@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
refs MAT-502
flag=rce_buttons_and_icons
Test Plan:
- Re-build canvas rce and Canvas webpack
- Navigate to an RCE and open the buttons and
icons tray
- Scroll to the image section and select "coures image"
from the "add image" dropdown
- Click a course image
- Verify the preview is populated and the course image
list closes
Change-Id: I81fca4686c0db56340bac2bd71c3ff108e58d24a
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284678
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
flag=none
test plan
- jenkins passes
Change-Id: Iac2a3d9d0057e08da328de61cb2a74a08e06d468
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284788
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
replaces the previous text based button icons
with the new svg icons in the new equation
editor
fixes MAT-621
flag=new_equation_editor
test plan:
-enable the ff
-navigate to a page with an RCE
-open the equation editor
-ensure that the svg icons are rendering
properly
-try entering a few equations using the
buttons and ensure they function as
expected
Change-Id: I6a917e2fbce77708b86f49c030bc38b0d7fbea16
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284693
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
refs MAT-169
flag=rce_buttons_and_icons
This change will make it easier to implement sing-color
icons, which require setting a color.
By making the source a function, we can pass the chosen
color to retrieve the SVG source with the correct color set.
The user-specified color will likely be set in the ImageSection
state and controlled via the ImageSection reducer.
Test Plan:
- tests pass and no functionality of choosing a multi-color
image has changed
Change-Id: I038952246f78ae0383884b1553f8c01fa3c8c17a
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284645
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
closes MAT-169
flag=rce_buttons_and_icons
Test Plan
1. Re-build canvas-rce and Canvas webpack
2. Navigate to an RCE and open the tray to
create a new button and icon
3. Scroll to the image section and choose
"Multi Color Image"
4. Select a multi-color image and verify
the image preview is populated with the
chosen image
Change-Id: Id50bcff94dcecf9ea87d55a534ca27ec51da90c4
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284608
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
QA-Review: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
closes MAT-427, MAT-428
flag=rce_buttons_and_icons
test plan:
- Navigate to a RCE instance
- Click Buttons & Icons button.
- In the tray, navigate to images section
- Select a course image
- Wait until the preview is loaded
- Click crop button
> Verify zoom in/out buttons work as expected,
also consider zoom should not
exceed thresholds (1.0 - 2.0)
> Verify mouse wheel zooms in/out the image,
also consider zoom should not
exceed thresholds (1.0 - 2.0)
Change-Id: Iba5de5eddd621d5f794e5030a7838800344deb11
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284505
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob DeWar <jacob.dewar@instructure.com>
QA-Review: Jacob DeWar <jacob.dewar@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
Also made text input of color pickers readonly
refs MAT-466
flag=rce_buttons_and_icons
Test plan:
- Enable buttons and icons feature if not yet enabled
- Go to page that has RCE (e.g. Pages)
- Click on the B&I icon to bring up the sidetray
- Use keyboard to navigate through the sidetray
- E.g. TAB, SHIFT+TAB, SPACE
Change-Id: Ib34d02ce19fcc1658d715bdce2c4ea1897518308
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284683
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
remove unnecessary dependencies by handling
the mathjax interaction directly. this allows
us to get the unique path ids that we need
for each svg path
refs MAT-621
flag=new_equation_editor
test plan:
-navigate to packages/canvas-rce
-run the script with "yarn generate-svgs"
-ensure it completes without error
-enable the ff
-double check that the equation editor
has not been affected by the changes
Change-Id: I7177df28dde79a69780ca5a6b36969624d768c7a
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284591
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: Jake Oeding <jake.oeding@instructure.com>
Note that clicking the mutli-color icon
will do nothing yet, this just lists them
Refs MAT-169
flag=rce_buttons_and_icons
Test Plan
1. Re-build canvas-rce and Canvas webpack
2. Navigate to an RCE and open the create
buttons and icons tray
3. Scroll down to the "Image" section and choose
"Multi Color Image"
4. Verify a list of multi-color images is shown
Change-Id: I454b1726f2868ea08353cec9e5882509e66d3eed
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284474
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
from 'get-cookie', which yarn confuses with an npm package,
to '@instructure/get-cookie' where it gets resolved by our
packages/get-cookie
closes LS-2982
flag=none
test plan: jenkins passes
Change-Id: I73974d444e1877693c226979863de8e2d4efb731
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284555
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jon Scheiding <jon.scheiding@instructure.com>
QA-Review: Jon Scheiding <jon.scheiding@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
adds the script for generating the svgs
needed for the icons on the buttons of the
equation editor toolbar and other related
setup
refs MAT-621
flag=new_equation_editor
test plan:
for the script:
-open the web container and do the following
* run the build script in packages/canvas-rce
* run the generateSvgs script
-confirm the script ran without error
ensure the equation editor works as before:
-enable the ff
-open a page with the RCE
-open up the new equation editor
-make sure that you can still click buttons
and insert equations as before
Change-Id: I96b9c0d2a3b9c6004713d7f78182bd842750fd8f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284342
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
refs MAT-613
flag=rce_buttons_and_icons
Test Plan
- Build canvas-rce and Canvas webpack
- Navigate to an RCE and create a new button & icon
- Verify the "Text Color" property defaults to #000000
in the tray
Change-Id: I32bde74ab9fb9ef571ad88347bfb8d9591c00efe
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284332
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jake Oeding <jake.oeding@instructure.com>
QA-Review: Jake Oeding <jake.oeding@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
closes MAT-364
flag=rce_buttons_and_icons
Test Plan
- Re-build canvas-rce and canvas webpack
- Verify you have the latest canvas-rce-api
checked out and running
- Create a button and icon. Navigate to
course files and download it
- Delete that button and icon from course files
- In the RCE, choose use the toolbar to upload
an image. Choose the button & icon previously
downloaded
- Verify the image uploads and is inserted into RCE
- Open the "saved buttons & icons" tray
- Verify the image you just uploaded is now listed
as a button and icon
Change-Id: I379e53c05976511729faaf07b6a70c1dc2c4985e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284188
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob DeWar <jacob.dewar@instructure.com>
QA-Review: Jacob DeWar <jacob.dewar@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
refs MAT-364
flag=rce_buttons_and_icons
This commit causes the File upload UI to tag button and icons
that are uploaded as button and icons.
Note that this change does not yet apply the correct cateagory
if an image is uploaded via the "documents" tool in RCE
Test Plan:
Note that this test plan involves a fair amount of regression
testing because this change touches the upload code used in
/files
1. Rebuild canvas-rce JS and canvas-lms webpack. Run DB
migrations if it's been a bit
2. Make sure you've pulled down the latest canvas-rce-api
code and have it running
3. Enable buttons & icons in if you've not already
4. Create a button & icon
6. Navigate to to the course files and download the
buton and icon to your computer
7. Delete the button and icon from the "Buttons and Icons"
folder in the course files
8. In an RCE in the same course, open the "saved buttons & icons"
tray. Note that the button & icon you previously downloaded
and deleted is not listed.
9. Navigte to course files and create a new folder. It can
be named anything, just make sure not to nest it in the
"Buttons and Icons" folder.
10. Upload the image downloaded in step 6 into the new
folder
11. Navigate to an RCE and open the "saved buttons & icons"
tray
12. validate the image you uploaded in step 10 is listed \o/
13. Verify you can upload non-images to course files still
14. Verify you can upload a zipped file to course files still.
This should give the option of unzipping or leaving zipped.
make sure both paths work
15. Upload a file and then attempt to upload the same file. This
should result in a collision of names. Verify you can choose
the option to replace the file with success. Do the same thing
again, but verify you can rename the file with success
16. Verify you can upload files in batches with success
Change-Id: I0fc0ffa45f5b4757a347ebe631461eb3e00bb25e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284085
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob DeWar <jacob.dewar@instructure.com>
QA-Review: Jacob DeWar <jacob.dewar@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
flag=none
test plan
- next time new translations are committed, ensure we got a Slack message
Change-Id: Id644710c6b35d1dfc5a5e0de3bb579513c45e07d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284343
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Closes MAT-650
flag=rce_buttons_and_icons
Test Plan:
- Build canvas-rce and Canvas webpack
- Navigate to an RCE and create a button and
icon
- Open "Course Images" in the toolbar and verify
no buttons and icons are present, just regular
cousre images
Change-Id: I2644219c3ee6c7040eea7f3d2c2db183552a7c60
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284277
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob DeWar <jacob.dewar@instructure.com>
QA-Review: Jacob DeWar <jacob.dewar@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
refs MAT-364
flag=rce_buttons_and_icons
This new bit of metadata will be used on image upload
to detect if Canvas should apply the "buttons_and_icons"
category to the Attachment
Test Plan:
- Re-build canvas-rce and re-run canvas webpack
- Create a new button & icon
- Navigate to course files and find the new button &
icon. Download it to your machine
- Open the file with a text editor
> Verify the "metadata" contains a new "type" key set to
"images/svg+xml-buttons-and-icons"
Change-Id: Ief1aa9f7c65893b1f31190f4dc4bea9706df6226
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/284061
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob DeWar <jacob.dewar@instructure.com>
QA-Review: Jacob DeWar <jacob.dewar@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Closes MAT-633
flag=buttons_and_icons
Test Plan
- Enable buttons & icons in your site admin
account if needed
- Build packages/canvas-rce and re-bundle Canvas
JS with webpack
- In a course, create more than 50 buttons & icons.
this can be done programatically. Chat with Weston
if you would like directions.
- In that course, open the "Saved Buttons & Icons" tray
by clicking the small arrow next to the buttons and
icons tool.
- Verify buttons and icons are loaded (50) with an option
to load more at the bottom of the tray.
- Click "Load More" and verify the rest of the buttons and
icons are rendered.
- Click one of the buttons and icons and verify it is embedded
into the RCE
- Focus the embedded button and icon in the RCE. Verify an "Edit"
option appears in the floating toolbar. Verify you can edit the
button and icon
- Navigate to the files UI for the course and navigate to the
Buttons and Icons folder
- Select the menu button on one of the svg files (the vertical "...")
- Choose "Move" and move the button and icon svg to a new folder
in the course (not nested in the "Buttons and Icons" folder)
- Navigate to an RCE in the course and open the "Saved Buttons & Icons"
tray again.
- Verify the button that is no longer in the primary "Buttons and Icons"
folder still shows up and is embedable.
Change-Id: I583f32d59330b8e3bf067ab606eac348882173ee
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/283795
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Jacob DeWar <jacob.dewar@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
Reviewed-by: Jacob DeWar <jacob.dewar@instructure.com>
refs MAT-633
flag=buttons_and_icons
Test Plan
- Check out the associated RCS commit at g/283765
- Restart RCS if it's already running
- Rebuild canvas-rce + canvas webpack bundles
- In a course, create a button and icon
- In the same course, upload some images via the
"files" UI
- Open the buttons & icons tray and navigate to the
"Image" section
- Choose "Course Images"
> Verify the button and icon created ins tep 4 does
not appear on the list. Note you may see older buttons
and icons that were created previous to recent changes
> Verify the image uploaded in step 5 is listed
> Verify you can still list and insert course images
as expected via the images tool in the RCE toolbar
Change-Id: I3120712734f115985dfbb90d715d50939c693521
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/283766
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Jacob DeWar <jacob.dewar@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Reviewed-by: Jacob DeWar <jacob.dewar@instructure.com>
- Actually add the auto-submit parameter
- Handle Slack send failures
- Deal with Jenkins environment causing ignored files to get committed
- Add some parameters to make local testing simpler
flag=none
test plan
1. build the package-translations build Docker image
`docker build -f Dockerfile.package-translations -t package-translations .`
(this takes a WHILE ... sorry)
2. run the commitTranslations script
`docker run --rm package-translations \
yarn wsrun --exclude-missing commitTranslations`
3. review the output to ensure that nothing happened
(should contain "nothing to commit, working tree clean")
4. make a change to one of the files in
`packages/canvas-rce/src/translations/locales/`
5. repeat steps 1-2
6. review the output to ensure that a commit was created
(the push will fail because it attempts to auto-submit)
post-merge testing
- after merge, ensure that there is no more spurious commits with es/
- then just have to wait for new translations to show up
Change-Id: Ibd7ed2da53dee5ec20d9a4b0902c96de90c6b2a5
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/283887
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: Jon Scheiding <jon.scheiding@instructure.com>
fixes MAT-531
flag=none
test plan:
-open up the RCE
-type 5 characters of the same class (lowercase,
uppercase, or digits) followed by a period or
closing parenthesis, a space, and then arbitrary
text
-observe this is not flagged by the a11y checker
-remove one of the 5 initial characters
-observe this is now flagged by the a11y checker
Change-Id: I0758fb697333bbe3234d0074192e679df8496b8b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/283969
Product-Review: Jake Oeding <jake.oeding@instructure.com>
Reviewed-by: Joe Hernandez <joe.hernandez@instructure.com>
QA-Review: Joe Hernandez <joe.hernandez@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
refs MAT-339
flag=none
Test Plan:
- Use google sheet attached to JIRA ticket as reference
- ALLOWED: rows with light green backgrounds
- NOT ALLOWED: rows with light red backgrounds
- Navigate to location in canvas with RCE (e.g. Pages)
- Switch to the HTML editor in the RCE
- TEST 1:
- Enter html from allowed list and verify content preserved on save
- E.g. <p>Preserve me!</p>
- TEST 2:
- Enter html from not allowed list and verify content removed on save
- E.g. <form action="/action_page.php">...</form>
Change-Id: Idabca7798419e273615732712304cbba16bf2037
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/283851
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
This reverts commit ac2fb2a717.
Reason for revert: Somehow included es directory again
Change-Id: Iaa8a8cbad40ed0d67bf904665a673b80bc4a6099
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/283260
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Change-Id: I1411e6c751536056a5ac557a005ca95111a75501
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/283808
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Tested-by: Jon Scheiding <jon.scheiding@instructure.com>
Reviewed-by: Jon Scheiding <jon.scheiding@instructure.com>
QA-Review: Jon Scheiding <jon.scheiding@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
closes MAT-631
flag=rce_buttons_and_icons
Test Plan:
- Create a button and icon and observe the network
requests being made for the file upload
- Verify a category: "buttons_and_icons" param
is sent in the post request to the
"http://rce.canvas.docker/api/upload" endpoint
Change-Id: I5748cc8ea496eb3306a58e33feff0c88aebf55b8
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/283669
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Joe Hernandez <joe.hernandez@instructure.com>
QA-Review: Joe Hernandez <joe.hernandez@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
closes MAT-631
flag=rce_buttons_and_icons
Test Plan:
- Create a button and icon and observe the network
requests being made for the file upload
- Verify a category: "buttons_and_icons" param
is sent in the post request to the
"http://rce.canvas.docker/api/upload" endpoint
Change-Id: I21ee4d7af00f6b8642c44c4388497df62759674b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/283594
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Joe Hernandez <joe.hernandez@instructure.com>
QA-Review: Joe Hernandez <joe.hernandez@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
fixes MAT-586
flag=none
test plan
- Navigate to a RCE instance
- Embed a video and wait until it's loaded
- Click it and open Video Options
- Click on Size dropdown and select Custom
- Select Percentage radio button
> Verify that there is no error
- Change the number input to 5
> Verify that a error frame appears and
is says "Must be at least 10%"
Change-Id: I52d9a76629dae7168e936eaf38d63b1f7bb14d2f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/283488
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob DeWar <jacob.dewar@instructure.com>
QA-Review: Jacob DeWar <jacob.dewar@instructure.com>
Product-Review: Juan Chavez <juan.chavez@instructure.com>
refs MAT-168
flag=rce_buttons_and_icons
Test Plan:
- Navigate to a buttons and icons tray
- Navigate to the "Image" section and choose
"Upload Image"
- Click the "Upload Image" pane
> Validate only images are visible by default in
the system file exporer that opens
- Select an image in the file explorer and click
"open"
> Validate the modal closes
> Validate the chosen image is shown in the B&I
tray "Current Image" preview
> Validate the chosen image name is shown in the
B&I tray
Change-Id: I8b6817e5edcbda3b8930fe1697425edb70978c6b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/283343
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
refs MAT-168
flag=rce_buttons_and_icons
Test Plan
- Open a buttons and icons tray
- Navigate to the image section
- Click "Upload Image"
> Verify an image upload modal appears
> Verify pressing "escape" key closes
the modal
> Verify pressing the "x" in the top
right corner closes the modal
> Verify pressing the "Close" button in
the modal footer closes the modal
> Verify the modal can be re-opened after
being closed
Change-Id: I139885b1d693a910b22a4a2e64a9cf5170031596
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/283227
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Joe Hernandez <joe.hernandez@instructure.com>
QA-Review: Joe Hernandez <joe.hernandez@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
refs MAT-168
flag=rce_buttons_and_icons
Test plan:
- Open the buttons and icons tray
- Navigate to the "Image" section
- Click "Add Image" -> "Upload Image"
- Verify a modal to upload an image
pops up
Note that this modal does not quite function
yet. Image uploads will not work correctly and
the modal is not dismissable.
Change-Id: I45d0ed394e0a571ac5c67fa9da16d60d1ff01604
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/283154
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Joe Hernandez <joe.hernandez@instructure.com>
QA-Review: Joe Hernandez <joe.hernandez@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
closes MAT-424
flag=rce_buttons_and_icons
test plan
- Prerequisites: RCS running and course image
uploaded
- Navigate to a RCE instance
- Open buttons and icons tray
- Click Upload Course image
- Select an image
- Wait until the thumbnail is loaded
- Click crop button
> Verify that the image is loaded in
the cropping modal and you can still
change the crop shape
Change-Id: Ied4a1af3025748918c3166ab2ecedb2e7ff322bf
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/283311
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: Juan Chavez <juan.chavez@instructure.com>
stop automatically adding attributes to internal
links that make them behave as if they were
external when editing in 'Link Options' tray
fixes MAT-565
flag=none
test plan:
-open up a page in Canvas with an RCE
-add a course link to something like a Page
-click on the link in the RCE
-click on 'Link Options' to open the edit tray
-in the tray, update the link text or link and
click the 'Done' button
-observe no target='_blank' or class="inline_disabled"
is added to the <a> tag in the RCE's html view
-save your RCE edits and then click the link and
observe that your browser redirects to the linked
page and DOES NOT open in a new tab
-repeat the steps above this time using an external
link
-observe that the external link's target and class
attributes are preserved
-oberserve that following the external link opens
a new tab in your browser
Change-Id: I5b5e55b1b8409a401e8745d6c7883549cc7f17c2
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/283219
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
Also add a Slack notification about them
flag=none
test plan:
- jenkins passes
followup testing:
next time there are translations, PS is created and auto-submitted
Change-Id: Id7e39ba5d04ba47feac497622854d74816c92320
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/283326
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob DeWar <jacob.dewar@instructure.com>
QA-Review: Jacob DeWar <jacob.dewar@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
closes MAT-401
flag=rce_a11y_checker_notifications
Test Plan:
- Enable the rce_a11y_checker_notifications flag
in your root account
- Create a page in a course with an image that
has no alt text
- Verify the notification bubble on the A11y checker
button now matches the the InstUI "info" color
- Turn on high contrast mode for your Canvas user
- Repeat the above steps and verify the "info" color
matches still
Change-Id: I4dd342a88afc96e1d1c043edda77432649c405cd
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/283045
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob DeWar <jacob.dewar@instructure.com>
Reviewed-by: Jake Oeding <jake.oeding@instructure.com>
QA-Review: Jacob DeWar <jacob.dewar@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
Defer errors until the Canvas URL provided by the RCS is actually needed
See https://instructure.slack.com/archives/C01M74AT65A/p1642114749205300
flag=none
test plan
- Ensure you don't have an RCS running
- Go to a page that contains an RCE
- Validate that when the page loads, there are no RCE-related errors in
the console, and no "Something went wrong" message shown on the page
- Insert an equation
- Validate that some errors about RCS are displayed on the console, and
the "Something went wrong message" is shown on the page
- Validate that the equation still inserts
- Switch the RCE to HTML view
- Validate that the equation image URL is relative but otherwise valid
(i.e. `/equation_images/<LaTeX>`)
Change-Id: Ic52aaead39e44b58cf9dd1be24f4530336acbdca
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/282947
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Brian Watson <bwatson@instructure.com>
Reviewed-by: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
QA-Review: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
refs SEC-4437
flag = none
[pin-commit-respondus_lockdown_browser=8746ff2ccfd6e9ac1d7280687c88e9fa67c0f693]
[pin-commit-multiple_root_accounts=7b11533084764b3a34f390e9a75df26e9dd871f9]
rationale in the script file and more context in the accompanying ticket
~ test plan ~
edit package.json and modify one of the explicit workspace dependencies
such as @instructure/ready to have a specifier other than "*", run the
script and verify it exits with 1
yarn --silent workspaces info --json | \
node script/yarn-validate-workspace-deps.js 2>/dev/null
Change-Id: I6624ada67a21d433477a7ad4d36acf5801853b7a
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/282948
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Ben Rinaca <brinaca@instructure.com>
QA-Review: Ahmad Amireh <ahmad@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
This commit displays all dates in pace_plans in its course timezone.
It required a couple changes to some of our date-time handling
utilities so we could specify a timezone.
closes LS-2938
flag=pace_plans
test plan:
- put your course in different timezone
- in a course with a pace plan, do to /courses/:id/pace_plans
- open projected dates
- play around in the start date input
- type in a new date
- pick a new date in the calendar
> expect the date shown in the textbox to reflect
what you entered or picked
> expect the calendar to highlight the right date
when you pop it open
- try a couple timezones, some +hours, some -hours
> expect DateInputs elsewhere in canvas still work
- there's one in the student planner +todo item tray
Change-Id: I117b5553ffc8f076ef2143dd4d6d25f809eddb7f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/282536
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: Ed Schiebel <eschiebel@instructure.com>
refs MAT-393
the rce translations job had been failing to push the patches because of
a syntax error in the push command, see g/281732
~= test plan =~
the package-translations job is functional again (might need to merge
this first)
Change-Id: Id7e61fd965dd8c93db450b01ab1456a962ee5187
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/282477
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jon Scheiding <jon.scheiding@instructure.com>
QA-Review: Jon Scheiding <jon.scheiding@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
fixes MAT-542
flag=none
test plan considerations:
It's needed to use dates that could
change depending of timezones, so I suggest
to use 11:59 PM & Mountain Time (US & CA)
test plan 1:
- Create assignment with a due date
Ex. Jan 13, 2022, 11:59 PM ("2022-01-14T06:59:59Z")
- Navigate to RCE instance
- Click course links and open the tray
- Click assignments
> Verify that the created assignment
shows January 13, 2022
test plan 2:
- Upload a doc to course files
- Change its upload date via DB
Ex. Jan 13, 2022, 11:59 PM ("2022-01-14T06:59:59Z")
- Navigate to RCE instance
- Click course documents and open the tray
> Verify that the upload date
shows January 13, 2022
Change-Id: I477ab45c5830df496fcfeb3d44326e34f54c417e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/282236
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Joe Hernandez <joe.hernandez@instructure.com>
QA-Review: Joe Hernandez <joe.hernandez@instructure.com>
Product-Review: Juan Chavez <juan.chavez@instructure.com>
fixes MAT-327
flag=none
Test Plan:
- As a teacher, create a new quiz and
create a new question (any type)
- Once RCE loads, insert a new
equation and save the changes
on question and quiz
- When clicking on 'Preview' or
'Keep Editing this Quiz' (teacher)
there is the equation image with the
size assigned at first when creating
the question
- This also applies for the student when
taking the quiz
Change-Id: Ifcd84f1f9fc2f4c17c88e2a0192c5b63c91982f5
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/282121
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob DeWar <jacob.dewar@instructure.com>
QA-Review: Jacob DeWar <jacob.dewar@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
flag=none
Some tests were being skipped by the process.exit
in the RCEWrapper tests
Broken tests:
- sanitizePlugins FKA sanitizeEditorOptions
behavior changed when old RCE was removed
- normalizeProps
behavior changed when old RCE was removed
- RCE api tests
apparent behavior change with introduction of a search term option
- sidebar
mostly these tests were just wrong, one needed a mock
- equation insertion refactor
problems with async usage
test plan:
- jenkins passes
Change-Id: I68b08e468d21bdf8205e2089848ed7bc5e7e751d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/281981
Reviewed-by: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
QA-Review: Jon Scheiding <jon.scheiding@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Just a refactor to make the structure more sensible
flag=none
test plan
- jenkins passes
Change-Id: I23fba5b0383350f789085bc7a385539146b16dc3
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/281968
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Gonzalo Penaranda <gonzalo.penaranda@instructure.com>
QA-Review: Jon Scheiding <jon.scheiding@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
flag=none
test plan
- jenkins passes
Change-Id: I8c6fa144ba5bef0e91f4541cce0e3d60a6b5437c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/281953
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Joe Hernandez <joe.hernandez@instructure.com>
Reviewed-by: Jacob DeWar <jacob.dewar@instructure.com>
QA-Review: Joe Hernandez <joe.hernandez@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
- Refactor new math editor to use existing insertMathEquation method
- Copy mathml lib into RCE to support new math editor 😔
flag=none
Fixes MAT-471
test plan
Note: depends on RCS changes in
https://gerrit.instructure.com/c/canvas-rce-api/+/281790
- make sure you're using an RCS that includes the above changes
- find an RCE
- insert an equation
- switch to HTML view and verify that the equation image uses an
absolute URL
Change-Id: I132c3447060941f8a00d526d9d55543080952c51
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/281797
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: Jon Scheiding <jon.scheiding@instructure.com>
fixes MAT-525
flag=none
Test Plan 1:
- Click on 'Admin' option and click on the user
- Go to 'Themes' and select 'Minimalist'. It is possible
that you need to save it with an alias before applying
changes
- On 'Themes', right-click on the 'Current' card for the
applied theme. Check for the following property:
.ic-ThemeCard-status.ic-ThemeCard-status--is-active-theme
- The "background" value is #0B874B (one of the required
values)
NOTE: this also applies for the 'Apply theme' button
Test plan 2
- Click on 'Account'
- Right-click on the avatar element and check for the
property --Avatar__elMgc-Color. Value is #0374b5.
Changes apply as expected
** ADDITIONAL DETAILS **
- Considering the number of modified files, the
changes made may affect many different options
that aren't listed here, so the support and
validation from other teams related to the
nature of this fix is being requested.
Change-Id: I973a081d18fee74fa1e4f4b904760276e303b124
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/280894
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
Migration-Review: Jacob Burroughs <jburroughs@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
closes MAT-511
flag=rce_buttons_and_icons
test plan:
- Navigate to a RCE instance
- Open the B&I tray
- Set some props of the shape if wanted
(not necessary, but for verify that encoding still works)
- On image section, select course images in dropdown
- Select an image and wait until it appears on preview
- Save icon
- Wait until it is added to RCE
- Click icon and click Edit pop-up
> Verify that the selected image is loaded initially
in preview.
> Verify that the name of the selected image is loaded
initially next to image preview.
Change-Id: Ieb1db8f0ae9f853e2c9045d58d6632d38f053c69
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/281671
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
flag=none
refs MAT-393
test plan:
- jenkins passes
followup testing:
next time there are translations
- make sure the directory doesn't get committed
- confirm Gergich doesn't give a -2 LR
Change-Id: Id25b9a326666986ace352f70307402d56e26dba6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/281732
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: Jon Scheiding <jon.scheiding@instructure.com>
Closes MAT-137
flag=none
Test Plan:
- Navigate to the site admin account on your
local Canvas and verify the flag is gone
- Navigate to an RCE and upload a video
- Click the video and then click "Video Options"
- Verify you can upload closed captions from the
tray that opens
Change-Id: I4457585873a341d1b3944729a2407f9340a18328
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/280803
Reviewed-by: Jacob DeWar <jacob.dewar@instructure.com>
QA-Review: Jacob DeWar <jacob.dewar@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
closes VICE-2325
flag=none
test plan:
- Specs pass
- Go to a graded discussion topic.
- Click on the kebab menu, Add Rubric.
- On the dialog, click on the dialog Add Rubric button.
- Click on Find Outcome, it should open the dialog with it.
qa risk: low
Change-Id: I73a2518951822d16f6c7f08bea7b2e92bf5a049d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/281632
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>
After submitting, make sure to publish a new version of canvas-rce to NPM.
Change-Id: I0ce1e42fcdde5b571911cc468997836e06ea6eca
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/281667
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jon Scheiding <jon.scheiding@instructure.com>
QA-Review: Jon Scheiding <jon.scheiding@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
After submitting, make sure to publish a new version of canvas-rce to NPM.
Change-Id: I7779eabc3ad3816cdf4c54ffa41924ff8d66d97c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/281578
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Tested-by: Jon Scheiding <jon.scheiding@instructure.com>
Reviewed-by: Jon Scheiding <jon.scheiding@instructure.com>
QA-Review: Jon Scheiding <jon.scheiding@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
Closes MAT-132
flag=none
Test Plan:
- Create an assignment with title set to
$$ax^2 + by + c = 0$$
- Save the assignment and verify the title
is type set by mathjax
- Create an assignment with title set to
\(\sqrt{x}\)
- Save the assignment and verify the title
is once again type set by mathjax
Change-Id: I58269a2ccd5dfe902737a64f83018e4348f021de
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/281083
Reviewed-by: Jacob DeWar <jacob.dewar@instructure.com>
QA-Review: Jacob DeWar <jacob.dewar@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
closes MAT-470
flag=new_equation_editor
test plan:
- Navigate to RCE instance
- Open equation editor
- Click a toolbar button
> Verify that the equation is added to the text area
> Verify that the editor preserves the text from
initial and advanced views(use toggle button)
> Verify that modifying text from advanced view
updates the equation preview
test plan:
- Navigate to RCE instance
- Select an already created equation image
> Verify that the modal initializes with the selected
equation
Change-Id: I05255e9cc40441f5a060198a66ac151f63d14fd1
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/278860
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
closes ARC-8003
flag=none
Test Plan:
- Embed a video via LTI 1.1 content item
into an RCE in a discussion topic
- Save the discussion topic
- Validate the video is embedded in the
iframe
- validate the video can be played
- validate the iframe contains the proper
"allow" attribute values
- Edit the discussion topic and switch
to the HTML view of RCE
- Add a script tag with an alert:
<script>alert('test')</script>
- Save the discussion entry
- Verify the script does not execute and
is removed from the discussion topic
text
Change-Id: Ib40931044c07f0d76c7d563a598d01cca9bd7d47
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/281459
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Xander Moffatt <xmoffatt@instructure.com>
QA-Review: Xander Moffatt <xmoffatt@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
closes MAT-194
flag=rce_buttons_and_icons
Test Plan:
- Navigate to the "create page" view in a course
- Open the buttons and icons tray in RCE
- Scroll down and choose "Current Image"
section and choose "Course Images"
- Select an image
- Open the web console
- Click "Apply" at the bottom of the B&I
Tray
- Save the page
- View the page and downoad the embedded image
- Open the image with a text editor and verify
the metadata contains the selected image
base 64 encoded.
Change-Id: Id1af30a9e0d9b650b176a0b0b3629a36855e0165
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/277531
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
In the weekly planner (visible on the k5 dashboard and subject),
only include missing items that are in the current grading period
(if grading periods exist for the subject). This adds a param to
the missing_submissions endpoint to do the filtering.
closes LS-2853
flag = none
Test plan:
- Make sure you have a k5 student enrolled in a course with grading
periods and a course without grading periods. Make sure each
course has some assignments with due dates in the past and future
(which the student hasn't submitted).
- Visit the k5 dashboard as the student, switch to schedule tab
- Under missing items, expect to see only assignments that meet the
following criteria:
- due date in past
- student hasn't submitted
- course either has no grading periods or assignment is in current
period
- Make sure this works on the schedule tab within a subject as well
- As a classic canvas student, expect to see all missing items in the
planner, regardless of grading period
Change-Id: I6e26483963359284748efa0b2d335927de655fd0
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/280757
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: Jackson Howe <jackson.howe@instructure.com>
(specifically canvas-rce)
closes MAT-393
flag=none
Test Plan
- Check out commit 111b6aa
(this commit has translations which are not synced to canvas-rce)
- Manually run `yarn wsrun --exclude-missing installTranslations`
- Manually run `yarn wsrun --exclude-missing commitTranslations`
- Observe that a patchset was created in Gerrit
Make sure to abandon the patchset
Change-Id: I33654c064ff8a22b5d78588d9946e94bb5460d18
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/280766
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
flag=none
fixes MAT-533
test plan
- change your Canvas language to Thai (ไทย)
- find an RCE
- launch the a11y checker
- confirm that the a11y checker messages are in Thai
- repeat above steps for Castilian Spanish (Español (españa))
Change-Id: Ib0519bdec16f41672e4e6247f463c04595a94511
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/280185
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: Jon Scheiding <jon.scheiding@instructure.com>
- There were issues inferring what props PacePlanDateSelector should
send to PacePlanDateInput, so that component was deleted and
ProjectedDates now creates PacePlanDateInput directly.
- ProjectedDates now validates required end date against the course's
valid date range ignoring the projected start date
- updates the plan on changing the projected start date when
a required end date is specified
- updates the projected date labels, captions, and error messages
closes LS-2844
flag=pace_plans
test plan:
- with a pace plan and a few items
- show projections
> expect the show/hide projections animation to work
> expect the "Hypothetical..." hint below start date
> expect the "Required by..." hint below the end date
- "Required by course end date" if no specified end is set
- "Required by specified end date" if there is
> expect the end date to be the specified end or course end date
depending on state of specified end date.
- play with start date
> expect end date to remain the same and item dates to change accordingly
> expect dates before/after the course dates to be disabled in the popup
calendar
- set start date to be before the course start date
> expect an error message under the start date
- set start date to be after the course end date
> expect an error message
- set the start date to be after the specified end date
> expect an error message
- set the start date so there's not enough days left
before the course end date
> expect a "Not enough days..." message under the start date
- read the page with a screen reader
> expect the captions (not error essages) to be read as part
of the start/end date's label and not after the dates
- check skip weekends
> expect the projeted start date calendar picker to disable
weekends
- type a weekend date into the start date text box
> expect an error message
Change-Id: Ie17cd3b33cf546d3cc9676aa654a138c116b8d94
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/278831
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jonathan Guardado <jonathan.guardado@instructure.com>
Reviewed-by: Eric Saupe <eric.saupe@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Eric Saupe <eric.saupe@instructure.com>
Closes MAT-543
flag=none
Test Plan:
1. Create or edit a discussion topic
2. Switch to the pretty HTML editor
3. Type in something in a script tag:
<script>alert('hi!')</script>
4. Without switching back to the WYSIWYG
view, save the discussion topic
5. Verify the script is not executed
Change-Id: Id37d2f1b26f371bb0c6952c9abc19ab7cd843c5b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/280184
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
fixes MAT-413
flag=none
test plan:
- Navigate to a RCE instance
- Embed an audio media file to content
- Click audio frame
- Click "Audio Options"
> Verify it should open an Audio Options
tray where you can add cc tracks
- Add a subtitles file
- Submit tray
> Verify that an API query using the media
object and subtitles is done
- Click "Audio Options"
> Verify it should open an Audio Options
tray with the last subtitle
- Add another subtitles file
- Remove old subtitle
- Submit tray
> Verify that an API query using the media
object and subtitles is done
- Save page
> Verify on preview that audio player
contains the subtitles
test plan:
- Navigate to a RCE instance
- Click on Upload/Record Media button
- Add an audio file
- Click Captions checkbox
- Add a subtitles file
- Submit modal
- Save page
> Verify on preview that audio player
contains the subtitles
Change-Id: Iee6f342c3986161829ee04ab6a3584821d7b5d12
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/279135
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
This started out confirming that the planner supported Castilian
Spanish, but morphed into something a bit broader. The code
that loads the translation json files based on the user's locale
had a bug that it wouldn't map locales using '-' to their corresponding
file names uising '_' (e.g es-ES => es_ES.json).
Once that was fixed I noticed that the planner was only partially
translated until it updated/rerendered. This is because importing
the translation json is async and the code loading the planner wasn't
waiting on it or general planner initialization. Now that code
initializing the planner waits for it to complete, the planner is
translated on first render.
This exposed an issue where code calling initializePlanner wasn't
waiting for the returned promise to resolve before doing more work.
That's fixed too.
closes LS-2738
flag=none
test plan:
prereqs
1. build with the js with `RAILS_LOAD_ALL_LOCALES=1`
2. run your canvas server with `RAILS_LOAD_ALl_LOCALES=1`
- change your user's language to Espanol (espana)
- open the student planner
> expect it to be in Spanish.
- open a course page
> expect the To Do sidebar to load
- turn on Canvas for Elementary
> expect the Schedule tabs to work
Change-Id: I0da78e0c14000496044e37ea287a48218262bb0f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/279861
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jackson Howe <jackson.howe@instructure.com>
QA-Review: Jackson Howe <jackson.howe@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
closes MAT-71
flag=none
test plan:
- Open a RCE instance
- Embed an image to RCE
- Click image options
- In tray, notice that pixels radio button
is selected
- Select percentage radio button
- Put a text value (ex: "Infinity")
> Verify that ONLY the input field is wrapped
by an red border
> Verify that the message says "Percentage must be a number"
- Put a value lower than 10& (Ex: 5)
> Verify that ONLY the input field is wrapped
by an red border
> Verify that the message says "Must be at least 10%"
Change-Id: I6bdb63ca9d1f39de364aae58c47b2a18decf2e26
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/278787
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: Juan Chavez <juan.chavez@instructure.com>
The effect used to update the link of the missing items in the
SchedulePage component is now executed every time the observee picker
changes, even if the planner is not visible, we need to do this as
the link on the dashboards cards depends on the redux state in the
same way that the link in the planner does
closes LS-2824
flag= none
Test plan:
- As an observer with some linked students
- Go to the dashboard and expect to see the missing items link on the
dashboard cards showing the right information for the selected
student
- Change the selected student in the picker
- Expect to see a loading skeleton in the assignments row and the
right information in the missing items link when it finishes loading
Change-Id: I79464e1f3508b1ab98ed8bc814f1bfbddd0c1bbe
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/279472
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Nate Armstrong <narmstrong@instructure.com>
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
fixes MAT-517
flag=none
Test plan (copied from MAT-464):
- Navigate to an RCE instance
- Upload an image (jpg, png mainly) and assign an alt attribute
as a filename with spaces (i.e this image.jpg)
- After upload and preview, click the accesibility checker.
> Verify it must warn of a filename not allowed as an alt attribute
Change-Id: Id7fb911db5d1090c192be90cf9c5b2537942d5d9
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/279220
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: Juan Chavez <juan.chavez@instructure.com>
closes MAT-498
flag=none
Test Plan
- Delete locales/en.json.
- Run `yarn run i18n:extract` and verify it creates an en.json.
- Delete src/getTranslations.js
- Create a fake translation file in the translations package
directory by copying an existing file.
```
cp ${canvas_dir}/packages/translations/lib/canvas-rce/es.json \
packages/translations/lib/canvas-media/
```
- Run `yarn run installTranslations` from the canvas-media directory.
- If there's an error about a folder not existing, create the
folder and re-run.
- Verify that a new locale file was added to canvas-media with the
content from the fake translation file.
Change-Id: I09120fe3f386d29776b722abe999463a6ab89e30
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276873
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob DeWar <jacob.dewar@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
fixes MAT-506
flag=none
Test Plan:
- Go to 'Admin' on left sidebar and select user account.
- Click on 'Themes' and then click on '+ Theme' button.
(for this test, choose'Minimalist theme' from the list
of options displayed)
- On the left, pick a dark color for Primary
Brand Color and a light color for the Primary
Button.
- Click on 'Preview your changes'
- Save the created theme with any name you like and,
then, click on 'Apply theme'
- Click on 'Courses' and create a new course.
- Click on created course and click on 'Pages'.
- Create a new page.
- Once the RCE loads, insert a table of any size. Once the
table is created, click on 'Table properties'. The button
colour must be the same one chosen on the Themes setting.
- Additionally, you can type anything out of the table and,then,
click on 'Tools'>'Word count'. The button color must correspond
to the specified value as well.
Change-Id: Iff063b37171ae61c4c53f905e453436ef33ce822
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/278594
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
closes MAT-514
flag=rce_buttons_and_icons
test plan 1:
- Open a RCE instance
- Click buttons & icons button
- In tray, select diamond/pentagon shape type
> Verify that preview shows the selected shape
> Verify that user can continue using other features
with selected shape(ex: sizes, color, outline)
> Verify that saving the shape adds the shape to rce
test plan 2:
- Open a RCE instance
- Click buttons & icons button
- Click crop image button
- In modal, select diamond/pentagon shape type
> Verify that the shape is applied to the
crop mask
Change-Id: I4d9879f556c0cab76e02771726f6e591e2f9182e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/277578
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Juan Chavez <juan.chavez@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
closes MAT-71
flag=none
test plan:
- Open a RCE instance
- Embed an image to RCE
- Click image options
- In tray, notice that pixels radio button
is selected
- Select percetage radio button
- Put a value in the input ex. 50
- Click confirm
- Switch to html view
> Verify that width/height has the percentage
units ex: 50%
- Change manually the percentage units in html
ex. 75%
- Switch to wysiwyg view
- Click image options
> Verify that percentage radio button is
selected
> Verify that the changed percentage is set
Change-Id: I3608451e983b73a1707a7e0aca63c3f025ba9300
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/277577
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
fixes FOO-2493
flag = none
test plan:
• compile assets and ensure Rails and Webpack are ran with
the following ENV variable: RAILS_LOAD_ALL_LOCALES=1
• change your language via profile/course/account to:
• Thai (ไทย)
• verify _most_ strings are being translated properly
• see Thai within our Style Guide for verifications below
• https://instructure.atlassian.net/wiki/spaces/ENG/pages/134802178/ \
Style+Guide+-+Instructure#StyleGuide-Instructure-Thai
• verify the RCE is localized
• verify assignment edit date picker (JQuery) works as expected
• selecting specific days, hours/minutes, and typing
• verify we're formatting the numbers as expected by punching in a
large number into "Points"
• verify the assignment index date picker(React) is localized
• go to calendar and verify the month/day names look appropriate
for the Thai locale
Change-Id: I9de044775b3ee492b8cc96e6d1234d64462c94b6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276201
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Jesse Poulos <jpoulos@instructure.com>
Reviewed-by: Ahmad Amireh <ahmad@instructure.com>
QA-Review: Ahmad Amireh <ahmad@instructure.com>
It was previously a bit difficult to
see exactly what changes were being
made by babel --watch
flag=none
Test Plan:
Run build:watch in canvas-rce, make
a file chagne, and verify the name of
the updated file is printed in the
console
Change-Id: I29e9c7d93c660c8ca238d992bf81c22ef44635ce
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/278518
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jon Scheiding <jon.scheiding@instructure.com>
QA-Review: Jon Scheiding <jon.scheiding@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
closes LS-2845
flag=scale_equation_images
test plan:
- turn on site admin flag scale_equation_images
- in the rce, create some content with a large font
- with the text caret in the large font area (you can tell by
looking at the blinking cursor) insert a math equation
> expect the equation to be scaled to match the surrounding font size
- click on the equation image and change its font size using the rce toolbar
- edit equation and save. you don't have to change anything
> expect the equation to be in the new font size
(some day we'll detect the change in font size and automagically fix it)
Change-Id: I323bf4162521cf88d2a993b8e62ef697114f8959
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/278299
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: Ed Schiebel <eschiebel@instructure.com>
fixes FOO-2494
flag = none
test plan:
• compile assets and ensure Rails and Webpack are ran with
the following ENV variable: RAILS_LOAD_ALL_LOCALES=1
• change your language via profile/course/account to:
• Español (españa)
• verify _most_ strings are being translated properly
• see Spanish (Spain) in our Style Guide for verifications below
• https://instructure.atlassian.net/wiki/spaces/ENG/pages/134802178/ \
Style+Guide+-+Instructure#StyleGuide-Instructure-Spanish(Spain)
• verify the RCE is localized
• verify assignment edit date picker (JQuery) works as expected
• selecting specific days, hours/minutes, and typing
• verify we're formatting the numbers as expected by punching in a
large number into "Points"
• verify the assignment index date picker(React) is localized
• go to calendar and verify the month/day names look appropriate
for the Español (españa) es-ES locale
• please note that we fall back to es Spanish (Latin America) for
Moment and TinyMCE (canvas-rce)
Change-Id: I441d5c15fcfb55c8695d7b82c643ab74c68318b2
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276642
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Ahmad Amireh <ahmad@instructure.com>
QA-Review: Ahmad Amireh <ahmad@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
refs MAT-423
flag=rce_buttons_and_icons
Test Plan:
- Navigate to an RCE instance
- Open buttons and icons
- Choose "course images" in the image
section
- Click an image
> Verify the "current image" label updates
to show the selected image name
> Verify the preview icon updates to show
the image
> Inspect the preview icon. Verify the image
being displayed is a base-64 data URL
Change-Id: I6492b57c27860296ef5d53183282bcf3e72cb418
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276961
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
fixes EVAL-1439
flag=none
Test plan:
Attempt the following in Chrome, Safari and Firefox. Note that Safari
will not focus some elements like the previous/next buttons (this has
not changed).
- Open SpeedGrader
- Hit Tab repeatedly to move through the elements in the header
- When you tab to the student select menu, it should have a focus ring
with the browser's customary styling (a dashed outline in Firefox, a
bluish solid outline in Chrome/Safari)
- (note at this point hitting Space or Enter will access the invisible
UI-native select menu rather than the visible widget; this has not
changed)
- Click on the menu and select a student, or just click on the dropdown
again to close the menu
- Check that tab and shift-tab still take you forward/back now that the
menu is closed, rather than getting stuck
Change-Id: I23804980e1b842576e55228bfaefc7a4d997af9c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/277795
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Aaron Shafovaloff <ashafovaloff@instructure.com>
QA-Review: Aaron Shafovaloff <ashafovaloff@instructure.com>
Product-Review: Daniel Sasaki <dsasaki@instructure.com>
at least get them much closer.
1. typeset math using svg by default, which is how the image is generated
2. size the image so it matches the surrounding font-size
Also, still typeset math from images even if the image fails to load.
closes MAT-501
flag=new_math_equation_handling
SIZING MATH REQUIRES A COMPANION CHANGE TO MATHMAN (the other stuff doesn't)
- clone git clone ssh://<yourid>@gerrit.instructure.com:29418/mathman
and follow the instructions for building.
- checkout https://gerrit.instructure.com/c/mathman/+/277389
- build it (once built, you don't have to run in in docker)
- in a canvas rails console:
Setting.set(
'equation_image_url,
'http://localhost:8000/svg?tex='
)
http://localhost:8000 is where mathman is via `node app.js`
it's at http://mathman.docker if in docker (at least that's
what the README says, I don't really know)
- test mathman by requesting `http://<mathman-url>/svg?tex=17`
and expect an image of "17". now try with `request /svg?tex=17&scale=2`
and your "17" shoul be twice as large.
- restart your canvas server
test plan:
Updated typesetting:
- have a question_bank quetsion with math and answers with math
- include the question in a quiz
> verify that the question looks the same in the question bank
as it does when previewing/taking the quiz
- if your math includes a "g", it should look the same
- the size of the equation should be pretty close
Sizing to match:
- turn on scale_math_equations site admin feature
- put an equation w/in a paragraph with a large font, or
add an equation to the rce, select it, and change the font size
- click on the equation, edit equation, click insert equation
w/o changing anything
> expect the equation to match the larger font.
- extra credit: DO THIS WITH AND WITHOUT MATHMAN PLUGIN ENABLED
(yes, there are 2 paths canvas takes to mathman)
make sure to update dyanmic-settings.yml's math-man entry
math-man:
base_url: 'http://localhost:8000'
use_for_svg: 'true'
use_for_mml: 'false'
- at /plugins, enable mathman plugin and ensure use_for_svg istrue
Error handling:
- change the URL to mathman to a dead end
- load a page with math equation images
> expect the math to be typeset by mathjax
Change-Id: I354e98a0a0256740ce5b4937f5b4e3adc690fe51
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/277245
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
Most of the problem was solved passing the responsiveSize prop to the
MissingAssignment component, I just added some tweaks to make the
icon appear in order to match with the mockup
closes LS-2736
flag= none
Test Plan:
- Go to a course with some missing assignments
- Go to the Schedule tab
- Open the mobile view
Right-click, select inspect and click on the toggle device toolbar
option.
- Look for the show missing items link toggle on the planner
- Expect the missing items to look good as in the mockup
- Repeat the process with the k5 Dashboard
Change-Id: Icfdf7be24d8e5e1a7127de0ee5b0796145a1d14f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/277064
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>
mediumPadding will no longer work in InstUI 8
This noisy warning is polluting our test output.
Test plan:
- All tests pass
flag=none
Change-Id: I4db876745b643755ec907f9d591381de933f6359
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/277573
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Eszter Szabo <eszter.szabo@instructure.com>
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Syed Hussain <shussain@instructure.com>
The "error" value was deprecated.
This noisy warning is polluting our test output.
Test plan:
- All tests pass
flag=none
Change-Id: I2f9b2af706d242e75f4797c9609dc73f86eb91b5
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/277572
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Eszter Szabo <eszter.szabo@instructure.com>
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Syed Hussain <shussain@instructure.com>
Refs MAT-423
flag=rce_buttons_and_icons
Test Plan:
- Navigate to an RCE instance and open
the tray to create a button & icon
- Scroll down to the image section and
choose "coure images"
- Click an image
> Verify a base 64 data URL representing
the image is printed to the console
In the next commit this base 64 data url
will be used to populate the preview icon
Change-Id: Icb6c619c4078c0b18c9f5d5d5b9e6286ac1dc9a6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276942
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
Refs MAT-423
flag=none
Test Plan:
- Observe new test passing
- Verify the icon continues to show colors
and "empty" state as before
Future commits will set the image in the preview
icon
Change-Id: I2ecfb6f2193e2e3d5e017c3e4c31794a55b50e2c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276865
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
flag=none
Test Plan:
new strings are available in canvas-rce
Change-Id: I637892ba3c46c990ca1d9220758a38248def7013
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276817
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Gary Mei <gmei@instructure.com>
QA-Review: Gary Mei <gmei@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Closes MAT-167
flag=rce_buttons_and_icons
Test Plan:
- Start the RCS
- Navigate to an RCE instance in Canvas
- Open the "create" button and icons tray
- Scroll down to the "Image" section and
select "Course Images"
> Verify the current course images load
Note that most of the functionality of
this image list is already covered in
automated tests. We will be adding more
as we add a click handler
Also note that for now this list of images
_will_ include previously created
buttons and icons. These will be filtered
out in the future.
Change-Id: I8ea6def5b92a0c7456ef29a20bb846db4f54e1db
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276508
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
fixes MAT-133
flag=none
test plan:
- Verify that there is no rce_pretty_html_editor
feature flag (site admin).
- Navigate to an RCE instance.
- Verify that pretty html editor is enabled by default.
Change-Id: Ibe76738577d0716e30f06815c9a072f41ca48103
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275197
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: Juan Chavez <juan.chavez@instructure.com>
closes MAT-422, MAT-426
flag=rce_buttons_and_icons
test plan:
- Navigate to a RCE instance
- Click Buttons & Icons button.
- In the tray, navigate to images section and
click crop button placeholder.
- Vefify that you can change the crop shapes
in dropdown and it changes in the preview.
Change-Id: Iba478fd3aef8c45a511e21f4c2025499ef7c4796
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276028
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Gary Mei <gmei@instructure.com>
QA-Review: Gary Mei <gmei@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
Make SpeedGrader update the currently selected student in response to
keystrokes when the custom dropdown menu is open, and fix a couple of
the most salient issues, but do not attempt to fix everything.
closes EVAL-1610
flag=none
Test plan:
SpeedGrader provides a veritable bonanza of methods to select students
using the dropdown menu at the upper right:
1. Click on the dropdown to open it, navigate between students
using the arrow keys or the Home/End keys, and hit Enter or Space to
close the dropdown and select the last-focused student. As you
navigate between students, the currently-selected item should have a
distinct background. Avoid using both the mouse and the keyboard at
once here, or the menu will get very confused.
2. Open the dropdown as described in (1), then close it. There should
now be a focus rectangle around the dropdown, and you should be able
to navigate between students using the arrow keys and Home/End.
3. Click somewhere on the header, tab until the left arrow is focused,
then tab once more to focus the invisible browser-native select menu.
Use the arrow keys to select a student.
Test that all three methods work to select students in SpeedGrader. Note
that methods 1 and 2 currently do not support switching sections using
the keyboard.
Change-Id: I3007324165ae7fa5b5cace1e2f5d7e0019e9ecc7
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275524
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Jody Sailor
QA-Review: Aaron Shafovaloff <ashafovaloff@instructure.com>
Reviewed-by: Dustin Cowles <dustin.cowles@instructure.com>
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
refs MAT-465
flag=rce_buttons_and_icons
Test Plan:
- Navigate to an RCE instance
- Open the buttons and icons tray
to create a new button
- Verify the color pickers work as before
- Verify the bottom of the tray has an
empty image preview (red line through a box)
with text reading "None Selected"
Change-Id: If45027317902b8be7e529da69c2a51596134f839
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/274679
Product-Review: David Lyons <lyons@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Gary Mei <gmei@instructure.com>
QA-Review: Gary Mei <gmei@instructure.com>
Also make the planner overrides checkbox read-only for observers.
closes LS-2722
flag = k5_parent_support
Test plan:
- Open up the schedule tab on k5 dashboard as an observer with
several linked students
- Switch between students, expect to see one network request each
time for missing_submissions and expect the observed student's
missing assignments to appear
- As an obsever, expect to see the overrides checkbox reflect the
student's state, but read-only
- Expect the planner to still work for k5 and classic students
Change-Id: Ife22e5361c6c5516506db5c908c05fff0f65bfab
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276061
Reviewed-by: Jeff Largent <jeff.largent@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Peyton Craighill <pcraighill@instructure.com>
If you type at a specific cadence, you could trigger two api requests
for images and the second one would be for the stale search term, but
the images would still come be inserted into the content tray. This
ignores the stale queries when they resolve.
fixes MAT-400
flag=none
Test Plan
- Upload two files with at least the first six letters of their
filenames the same.
- Type in the search bar the first three letters, then at a slight
pause, type the other characters such that they would match both
files again.
- Do the above over and over again, verifying that the tray never
has duplicate results.
Change-Id: Ib41c1c16ec1f48aa118ddc4b0f4d658723c08d1e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/274943
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: Jon Scheiding <jon.scheiding@instructure.com>
Also update some tranlation strings
Closes MAT-241
flag=none
Test Plan:
1. Enable the custom locale "English (UK HE)"
via the i18n plugin
2. Set the english (uk he) locale as the language
on a course and save
3. Notice the modules tab now is labeled as units
and the "course code" field on the settings says
"module code"
4. Go to the pages tab of the course and make a new page
5. Verify clicking the arrow on the links button now says
"module link" and not "course links"
Change-Id: I93e67c7db48ad751c465f67f5be553033730c8a6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/276093
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
This is groundwork for subsequent filters work.
Test plan:
- Enable enhanced gradebook filters
- "Applied Filters: None" should show above grid
- Filters button should show above grid
- Click button
- Tray should expand
- Bonus: See FilterNav in Storybook
flag=enhanced_gradebook_filters
Closes EVAL-1891
Change-Id: I45e44415bcd39b420a962cb79face12b7d6eef54
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275899
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Kai Bjorkman <kbjorkman@instructure.com>
Product-Review: Syed Hussain <shussain@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Adrian Packel <apackel@instructure.com>
closes LS-2739
flag=none
test plan:
confirm that each language is in its own bundle
- rm -r public/dist/webpack-dev/*
- yarn build:packages && yarn build
- look into packages/translations/lib/canvas-planner/ar.json
for the first key. It will be something like
a_great_discussion_6526a6d9
- grep for it in the build output. for exmaple:
$ fgrep -Rl a_great_discussion_6526a6d9 public/dist/webpack-dev/*.js
> expect many files
Change-Id: Ibfafb4c2139a6d1e2991dd88d064b5ee0303a5f9
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275912
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: Ed Schiebel <eschiebel@instructure.com>
This commit will load the correct plannable items into the planner
when an observer is selected; a successive commit will filter missing
items and planner overrides.
closes LS-2700
flag = k5_parent_support
Test plan:
- Open k5 dashboard as an observer with multiple linked students
and student enrollments of their own
- Switch between students in the observer picker
- Expect to see items only from courses where the selected student
has enrollments
- Expect this to work the same way on the subject schedule tab
- Expect the planner to work as before with the flag off
Change-Id: I2612707c24e6c42110120c7cbdc26369539bb94d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275538
Reviewed-by: Jeff Largent <jeff.largent@instructure.com>
QA-Review: Jeff Largent <jeff.largent@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Nate Armstrong <narmstrong@instructure.com>
- redux's connect has to take a component with shouldComponentUpdate
which means no PureComponent and no functional component
- while updating snapshots for the specs, I decided to address the warnings
and errors getting spit out. This started to snowball, so I stopped
after fixing some missing required prop stuff and renaming instui
padding props. Forgive me.
closes LS-2725
flag=none
test plan: specs all pass
Change-Id: I2c9ac7ef45b3e5e40e0029d21905be79e458944b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275909
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
Fixes it so only the planner's translations for the user's
locale are loaded, not all of them.
closes LS-2717
flag=none
test plan:
- build canvas
- make note of a translation key by looking in
packages/translations/lib/canvas-planner/<anyfile>.json. The
first key looks something like "a_great_discussion_6526a6d9"
- grep public/dist/webpack-[dev|production] (which one depends on
what you built) for a translation key.
$ grep -Rl a_great_discussion_6526a6d9 public/dist/webpack-dev/
> expect there to be one file, and if you search it for the key
you'll find all the languages
- checkout this commit and repeat
> expect many files with the key, one for each language (or almost,
not all languages have all the strings and if it's missing the
key you're looking for the grep won't find the bundle)
If you _really_ want to account for all the bundles, try
fgrepping for "!*** ./packages/translations/lib/canvas-planner/"
- log into canvas as a user in a language other than 'en'
> expect the planner to be in the user's language
Change-Id: Ic7e64bf279cc3e2b175d89ba4aa71683440563f2
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275516
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
Reviewed-by: Jeff Largent <jeff.largent@instructure.com>
QA-Review: Jeff Largent <jeff.largent@instructure.com>
fixes MAT-405
flag=none
test plan:
- Verify that there is no rce_limit_init_render_on_page
feature flag (root account).
- Open a quiz with more than five question in the
same page.
- Verify that the max rendered RCEs are limited (5).
Change-Id: I9d4a51c2e1005ac4f8e38c5a18986c2707fcae48
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/274948
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Reviewed-by: Jon Scheiding <jon.scheiding@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Juan Chavez <juan.chavez@instructure.com>
Also refactor media_objects routes to all be in the same controller
Fixes MAT-440
flag=none
Test plan:
- Find an RCE
- Insert -> Media -> Upload/Record Media
- Upload an audio or video file
- Switch the RCE to HTML view
- Confirm that the iframe src URL is an absolute URL
including host and protocol
Change-Id: If7288562980ee49dd50f5796f82afbadb7d0a575
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275434
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
Support is acheived by mapping uk (Ukranian) to
uk_UA (Ukrainian (Ukraine)).
refs MAT-438
flag=none
Test Plan:
- Change your language to uk (український) OR
create a course with it's locale set to український.
- Load the RCE as that user or in that course
- Verify TinyMCE menu items are translated
- Verify custom plugin strings are translated
Change-Id: I7daebd71d8fff39a8280b160b4b721a444769533
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275352
Reviewed-by: Jon Scheiding <jon.scheiding@instructure.com>
QA-Review: Jon Scheiding <jon.scheiding@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
refs MAT-438
flag=none
Test Plan:
- Change your language to Russian (pу́сский) OR
create a course with it's locale set to pу́сский.
- Load the RCE as that user or in that course
- Verify TinyMCE menu items are translated
- Verify custom plugin strings are translated
Change-Id: Ie1600a16e690f0933f5dfa22fee6ac93bc6f63f5
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275355
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jon Scheiding <jon.scheiding@instructure.com>
QA-Review: Jon Scheiding <jon.scheiding@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
refs MAT-438
flag=none
Note: Tiny does not yet officially support Finnish.
This commit adds support for Finnish in RCE for Instructure-
owned strings only
Test Plan:
- Change your language to Finnish (Suomi) OR
create a course with it's locale set to Suomi.
- Load the RCE as that user or in that course
- Verify custom plugin strings are translated
Change-Id: Iabd5075b019e4047c4573b457d13d4fe9712d577
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275342
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jon Scheiding <jon.scheiding@instructure.com>
QA-Review: Jon Scheiding <jon.scheiding@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Closes MAT-465
flag=rce_buttons_and_icons
Test Plan:
- Navigate to an RCE and click and open the
"create" buttons and icons tray.
- Scroll to the bottom of the tray.
> Verify the "Image" group has a preview placeholder,
a "Current Image" label, and a "Add Image" button
- Click the "Add Image" button
> Verify the menu has four entries: Course Images,
Upload Images, Single Color Images, and Mutli
Color Images
- Click "Course Images"
> Verify a "Course Image" placeholder is shown
Note that only the course images mode has a
placeholder component. The other modes do nothing
when clicked.
Change-Id: I93cf8c6f16cb596ff27b80c16c2d48b96e89bfd9
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/274678
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jon Scheiding <jon.scheiding@instructure.com>
QA-Review: Jon Scheiding <jon.scheiding@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
refs MAT-438
flag=none
Test Plan:
- Change your language to Slovene (Slovenščina) OR
create a course with it's locale set to Slovenščina.
- Load the RCE as that user or in that course
- Verify TinyMCE menu items are translated
- Verify custom plugin strings are translated
Change-Id: Ie35e58d2b9bb053ab4814219600a743750c4d7a3
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275329
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jon Scheiding <jon.scheiding@instructure.com>
QA-Review: Jon Scheiding <jon.scheiding@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
refs MAT-438
flag=none
Test Plan:
- Review the new documentation for clarity and
grammar
Change-Id: I1befc09f96570f3e6a1bd4501845c904e7d231be
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275339
Reviewed-by: Jon Scheiding <jon.scheiding@instructure.com>
QA-Review: Jon Scheiding <jon.scheiding@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
refs LS-2655
flag=none
- this updates the files under ./ui, a few ancillary files and specs.
- Sadly the commit hook ran prettier and
fiddled with the formatting of a handful of files too.
- Also made a few changes to quiet lint errors
- Also updated OutcomeManagement.test.js. I don't understand why,
but 'renders ManagementHeader with lhsGroupId if selected a group in lhs'
started failing with this change, even though nothing obviously related
changed. The problem is that the modal isn't getting attached to the
document being tested. The spec changed to test that the modal contained
what it's supposed to contain.
test plan: jenkins passes and the RCE works
Change-Id: I48d85077bdbf7563cb07510d3e71d2b448c55e49
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275301
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: Ed Schiebel <eschiebel@instructure.com>
closes EVAL-1609
flag=none
Test plan:
- Have a course with multiple students and sections
- Open an assignment in SpeedGrader
- Focus the student dropdown in the upper right
- It has no visible focus, but a reliable way is to click on the
header, tab until the left arrow is focused, then tab once more
- Hit spacebar or the up/down arrows to bring up the options for the
native select menu (instead of the abominable jQuery widget)
- Using the keyboard, select a different student
- Check that the widget has updated to show the new student
- Repeat the above, but this time choose a different course section
- Note that you are taken to the new course section
Change-Id: I70f497850c2fc17ea1ca87c9d16b17993677c26d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/274924
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Jody Sailor
Reviewed-by: Syed Hussain <shussain@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
QA-Review: Dustin Cowles <dustin.cowles@instructure.com>
fixes LS-2694
flag=none
test plan:
1. Setup a course in an account using the elementary theme
2. Create an assignment with no due date
3. Manually mark a student as 'missing' in the gradebook
4. As the student navigate to the course home page
5. Click on 'Schedule' and then the missing notification
6. The missing assignment should load without a due date
Change-Id: Ie88673e6fd508d0d926322a3d5f4d1b226b9adbd
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275363
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Nate Armstrong <narmstrong@instructure.com>
fixes VICE-2101
fixes VICE-2102
fixes VICE-2103
fixes EVAL-1979
fixes EVAL-1980
fixes LS-2674
fixes QUIZ-8883
fixes MAT-462
fixes LS-2676
fixes MAT-463
fixes OUT-4789
fixes VICE-2104
fixes LS-2675
Test plan
1. Download patchset
2. Navigate to a Course -> Click People in sidebar
3. Open JAWS
4. Navigate using JAWS to the elipsis in the Table
5. Open menu using appripriate JAWS keys
6. Expect: Menu Items should read out loud in JAWS
Note: Only change is removing ARIA-owns from button, the rest is lint
rules that were auto run.
Note: This issue only reproduces in JAWS + Chrome
Note: This should be tested in other places that single test plan listed
Change-Id: I2d0b5c50c1ee1c72a9ce1038928d244c3073efb7
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275149
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Matthew Lemon <mlemon@instructure.com>
Product-Review: Matthew Lemon <mlemon@instructure.com>
QA-Review: Daniel Sasaki <dsasaki@instructure.com>
Removes the UI no longer needed as part of
the image mode selection redesign
refs MAT-465
flag=rce_buttons_and_icons
Test Plan:
- Open the button and icons create tray
> Verify the "Images" group now only has
a placeholder
Change-Id: I9ee2e74165539192a53d77e391f70d6c32502f20
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/274655
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Gary Mei <gmei@instructure.com>
QA-Review: Gary Mei <gmei@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Refs MAT-373
flag=none
Test Plan:
- Verify the latest RCS is pulled and running
- Start notorious
- Attempt to upload a CC file for a video
that exceeds 295kb
- Verify that an error message is shown indicating
the file size is too large
- Verify that you can still upload CC files < 295 kb
- Upload a another video. In the upload modal, choose
the option to also add captions.
- Attempt to add a caption file > 295 kb and upload
the video
- Verify a file size error is shown
- Verify you can upload captions for a video in the
upload modal if the caption file size < 295 kb
Change-Id: Ie089d273a0591b3e00f9d1ccc25ec227249d0256
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275118
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Gary Mei <gmei@instructure.com>
QA-Review: Gary Mei <gmei@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Refs FOO-2347
flag=none
There's still a sneak code path through the jquery
date-time picker that forces DatetimeField to use
tz.parse to guess at what the user selected. And as
is the theme through all of these picker fixes, tz.parse
very often can't handle the formatted output it is given.
So this tries to close that hole once and for all by
having the picker onSelect action recreate the inputdate
metadata that DatetimeField can use in lieu of trying to
parse.
This also changes the hasMeridiem() function in timezone
to use the browser Intl library rather than tz's locale
inferences.
Test plan:
* See original ticket steps to reproduce
* In particular, use the popup calendar date picker
to select dates in various months from now to the
middle of next year
* NOTE that some of the following locales do not have
Intl support on all browsers so the resulting display
may fall back to English, but the correct date should
still be selected in all cases.
* Locales of interest:
en English (United States)
en-AU English (Australian)
fr Français (French)
hu Magyar (Hungarian)
pl Polski (Polish)
nn Nynorsk (New Norwegian)
el Ελληνικά (Greek)
uk український (Ukrainian)
Change-Id: I2aa4bad55eb77b86e9158bc0f445301c0cb060e4
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275062
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Ahmad Amireh <ahmad@instructure.com>
QA-Review: Ahmad Amireh <ahmad@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
closes MAT-135
flag=rce_better_file_previewing
Test Plan
- Upload a file to a course.
- In the RCE, add a file to the body.
- After saving, click the link to the file.
- Verify that a preview opens up in an overlay.
- Edit the link options in the RCE to preview inline instead.
- Save and verify that a preview opens up inline.
- Edit the link options in the RCE to preview inline with it expanded
by default.
- Save and verify that a preview opens up inline without requiring
any clicking of the link.
Change-Id: I34f01d3bd4ae3d8a8f7e235721ea6b67b69d71ad
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275018
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: Gary Mei <gmei@instructure.com>
flag=none
Test Plan:
all tests in api.test.js pass in canvas-rce
Change-Id: I8b6e668209c4da6df56ed08fb743cf67b5175335
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/274930
Reviewed-by: Gary Mei <gmei@instructure.com>
QA-Review: Gary Mei <gmei@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Refs FOO-2347
flag=none
[fsc-max-nodes=18] [fsc-timeout=30]
The old jQuery-based date picker was relying on the ability
to parse what it formats, which is far, far from a safe bet in
non-English locales. One example is that in French, a date in
September will format as, say, "1 Sep 2021" but that does not
parse properly (it has to be "1 Sept 2021" which is the French
abbreviation for the month). This caused no end of trouble in
those date pickers.
This modifies the DatetimeField and the jQuery date picker
so that it always uses a stored ISO string date (which is
guaranteed to be able to be parsed by new Date()), thus
eliminating the parsing errors when the pickers are used.
The only exception is when the field is being typed into,
which still uses tz.parse and also includes a running value
underneath the field to help the user get the format right.
Test plan:
* Go to an assignment editor (/courses/:id/assignments/:id/edit)
* Scroll down to the dates at the bottom
* Those date and time pickers should all still work normally
* Try it in the fr locale, especially selecting a date in the
month of September and setting the time to 11:11
* It should still work!
* Try other locales, too.
Change-Id: Idd4ba1684dc4e3679ec2360ffa4f362924756103
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/273803
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Ahmad Amireh <ahmad@instructure.com>
Product-Review: Charley Kline <ckline@instructure.com>
QA-Review: Ahmad Amireh <ahmad@instructure.com>
fixes OUT-4764
flag=none
test plan:
- test using KO and VO
- from the account outcomes page, click +Create
to open the Create Outcome Modal
- TAB or VO navigate to the hidden keyboard shortcuts
modal trigger button
- click the button to open the keyboard shortcuts modal
- close the keyboard shortcuts modal
- focus should return to that same hidden button
- subsequent navigation via TAB/VO forwards or backwards
should proceed as expected (to the next/prev element)
Change-Id: Ied3835943f9d9eeba8a43f29324f7d211ad44708
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/273786
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Brian Watson <bwatson@instructure.com>
QA-Review: Marcus Pompeu <marcus.pompeu@instructure.com>
Reviewed-by: Jon Scheiding <jon.scheiding@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
This change adds an `embed` param to the K5 subject `show` action that,
when set to `true`, hides global nav, the K5 Hero header, and the K5
tab bar. Navigation between tabs is still possible by changing the hash
fragment at the end of the URL.
closes LS-2590
flag=none
test plan:
- browse to a k5 subject
- append `?embed=true` to the URL
- verify that the global nav and subject tabs disappear
- navigate between different subject tabs by modifying the hash fragment
at the end of the URL (#home, #grades, #modules, #resources, #groups,
#schedule)
- verify that the content changes appropriately
- remove `embed=true`, and click between the subject tabs
- verify that navigation in non-embed mode still works correctly
Change-Id: I9a3bbdf4e5d4fd4da5e98bd8c85133ff2498cefb
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/273352
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: Isaac Moore <isaac.moore@instructure.com>
See original PS at https://gerrit.instructure.com/c/canvas-lms/+/271227
Refs MAT-458
flag=none
Test plan:
* Be on Chrome 94
* Set your language to Icelandic (Íslenska)
* Find an RCE
* Confirm that it loads properly
Change-Id: I6f3daba6484c49c5fe43188fbfe65dfa894ed2ad
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/274374
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Reviewed-by: Charley Kline <ckline@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
This hides it when the SiteAdmin feature flag is not enabled.
closes MAT-452
flag=rce_buttons_and_icons
Test Plan
- Disable the flag.
- Open an RCE instance.
- Open a content tray, such as the Images one.
- Verify that in the dropdown of options for content subtypes,
Buttons and Icons is missing.
- Enable the flag.
- Verify that in the dropdown of options for content subtypes,
Buttons and Icons is present.
Change-Id: Iac81f32fef2f2b4fd9ded54bac85ddc6c8f9e2cf
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/274020
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Gary Mei <gmei@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
closes LS-2646 LS-2650
flag=conferencing_in_planner
test plan:
- in an account with "Canvas for Elementary" turned off
- create a calendar event in a course calendar with a zoom link
in the description or location
- as a student in the course, do to the List View dashboard
> expect no "Join" button
- in site admin > settings > features, enable
"Conferencing in plnner"
- refresh the student's planner
> expect to see the "Join" button
Change-Id: Iaf6024415f8effea8731a9a2722ba724e728dc08
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/273788
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Isaac Moore <isaac.moore@instructure.com>
QA-Review: Isaac Moore <isaac.moore@instructure.com>
Product-Review: Peyton Craighill <pcraighill@instructure.com>
fixes OUT-4764
flag=improved-outcomes-management
Temporary fix while #material and #outcomes keep investigating
Test plan:
- the test must be run in Safari
- assert that the problem with OUT-4764 does not occurr
- navigate to any other form with RCE (like Courses/Discussions):
- activate VoiceOver
- with TAB check that the keyboard shortcut button appears right above RCE when focused
- with VO + arrows do the same test
Change-Id: I9515583f94f6235355bcd0e210d43bb3568f6cdd
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/273780
Reviewed-by: Jon Scheiding <jon.scheiding@instructure.com>
QA-Review: Chrystal Langston <chrystal.langston@instructure.com>
Product-Review: Jon Scheiding <jon.scheiding@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
refs MAT-182
flag=rce_buttons_and_icons
Test Plan:
- Edit and button & icon
> Verify the "upload" request made to RCS
only includes one instance of "onDuplicate"
parameter
Change-Id: I961514a79eb947e26387ff7ddc8e0fd948f01285
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/273579
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jon Scheiding <jon.scheiding@instructure.com>
QA-Review: Jon Scheiding <jon.scheiding@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
refs FOO-2280
flag = none
monitor the use of date-picker widgets to learn more about the use of
the free-form/natural parsing feature.
I've opted to track the events at the innermost layer (DatetimeField
and DateInput) and shove them onto a localStorage buffer that gets
posted to the (TBD) backend on the subsequent page load. This feels like
a simple approach with downsides that we can live with.
The buffer is capped at 50 events, and each event will truncate values
that are longer than 32 characters. There's an ID attached to each event
that points to the widget it came from, which we can use to group
related events to analyze the larger interaction.
:: test plan ::
first, we test the monitoring of the jQuery widget. Create an assignment
and go to its edit page. Scroll down to the "Assign" section as we'll be
spending our time with the date fields there.
- type something like "aug 17" into a date field like Due
- wait for a second and verify the buffer gets filled with a new event
of method "type" (run this or just look at ur localStorage):
console.log(
JSON.stringify(
JSON.parse(
localStorage.getItem('dtnpi')
), null, 4
)
)
- now, pick a date from the Picker widget
- wait for a second and verify the event this time is of the
method "pick"
- now, paste some value into the field and verify the new event is of
method "paste" and that "value" actually points to the PASTED VALUE
and not to whatever the widget ended up translating it to
at this point, we will exercise the same steps but for the React
<DateInput /> widget. Go to the course Assignments page and click on
"..." then "Edit Assignment Dates". You will see many date fields, any
of them will suffice:
- verify typing generates the expected event
- verify picking generates the expected event
- verify pasting generates the expected event
Change-Id: I1f3a4e82a62fb19487516a324dcb0ea34236725e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/272364
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: August Thornton <august@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: August Thornton <august@instructure.com>
fixes MAT-367
flag=rce_a11y_checker_notifications
Test plan:
- Navigate to a RCE instance
- Create an a11y issue in content
- See the a11y notification badge errors count
- Open a11y tray
- Verify that the tray errors count matches
Change-Id: I1526a1d8ab533c985407c77a6d961dd0af3a9600
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/272303
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Gary Mei <gmei@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
Reviewed-by: Gary Mei <gmei@instructure.com>
refs MAT-181
flag=rce_buttons_and_icons
Test Plan
- Create a new Button & Icon
> Verify the create button tray has
functioning "save" and "cancel" buttons
- Edit the button
> Verify a new checkbox is at the bottom of the
tray reading "Apply changes to all instances of
this Button and Icon in the Course."
- Check the box and click "save"
> Verify all instances of that button/icon in the
course are updated
- Edit the button again. This time, don't check the
box before clicking "Save"
- Verify only that instanec of the button/icon is
updated
Change-Id: I30a1779d711d5409a9745860c0c5b907ff10635f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/273446
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
Closes MAT-182
flag=rce_buttons_and_icons
Test Plan
- Create a page and embed a button/icon
- Create a second page with the same button/icon.
Be sure to use the "saved button and icons"
tool bar item and select the same image from the
first step
- On the second page, edit the button/icon
- Make noticable changes and choose the option
to "save and replace"
- Save the second page
> Navigate to the first page and verify the changes
to the button/icon on the second page are present
on the first page
- Edit the button/icon on the fist page. Make noticable
changes and choose the option to "save as a copy"
> Navigate to the second page and verify the changes
from the previous step are only applied to the first
page
Change-Id: I253a683b9afd8f952d68a0deaf974e0241b5deb3
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/273434
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Closes MAT-181
flag=rce_buttons_and_icons
Test Plan:
- Create a button using buttons & icons
- Edit the button
> Verify Cancel, Save and Replace, and Save
buttons are present in the edit tray
Change-Id: Ibe398da56f1fc4be91652afb42effe6bf4ce7d8d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/273268
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
fixes: LS-2587
flag=none
test plan:
1. Have a published course, a published assignment and a student enrollment
2. Set the assignment or course grade posting policy to manual
3. As the student, submit the assignment
4. As yourself, enter a grade for the submission and ensure that the grade is hidden
5. As the student, choose 'list view' from the dashboard
6. Look at the assignment on that list and check the 'graded' stamp is not present
Change-Id: I67006d974d9cd1abcc98d61e666ba646753deb61
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/273295
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: Luis Oliveira <luis.oliveira@instructure.com>
fixes MAT-334
flag=none
test plan
- Navigate to a RCE intance
- Upload a media (video)
- Verify that the file name text input has
its label
Change-Id: Ie4287b1efda6cccdccf52229606fbe37a9aa66c6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/273197
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: Juan Chavez <juan.chavez@instructure.com>
flag=none
Test Plan:
Verify only translation files are updated and that
builds pass
Change-Id: If75fe658d53d726f642979b2b112e9ffececff07
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/273303
Reviewed-by: Robin Kuss <rkuss@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 MAT-180
flag=rce_buttons_and_icons
Test Plan:
- Navigate to an RCE instance
- Use the buttons and icons tool to create
a button/icon. Change each supported property
in the tray to a non-default value
- Insert the button/icon, save the content, and refresh
the page
- Edit the content with the button/icon previously
created
> Verify clicking the button/icon shows an "edit" inline
toolbar item
- Click "edit"
> Verify the buttons and icons tray is populated with
the correct properties
Note: A future ticket will handle saving the edits
Change-Id: I46b3b3a37f86bf1eb3e05667dbdc8337a33bca03
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/272614
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Gary Mei <gmei@instructure.com>
QA-Review: Gary Mei <gmei@instructure.com>
Product-Review: David Lyons <lyons@instructure.com>
fixes MAT-361
flag=none
Test Plan
- Specs pass.
Change-Id: I7f11ca091d70df869bb50604b2eaa94453b28af3
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/272756
Reviewed-by: Jon Scheiding <jon.scheiding@instructure.com>
QA-Review: Jon Scheiding <jon.scheiding@instructure.com>
Product-Review: Gary Mei <gmei@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
closes LS-2598
flag=none
test plan:
- it passes jenkins
- extra credit if it passes jenkins around 11:30pm
but let's not wait.
Change-Id: I2a5561f55b377e6e8e4cd70cba7e10642215742c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/272789
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
Reviewed-by: Pat Renner <prenner@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>