you now have to specify the data you pass down
from the controller
Change-Id: I7bc6f9557c43aeee5eeab10a9e6d460b0ca1f334
Reviewed-on: https://gerrit.instructure.com/38332
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jason Madsen <jmadsen@instructure.com>
Product-Review: Ryan Florence <ryanf@instructure.com>
QA-Review: Ryan Florence <ryanf@instructure.com>
Swagger fails to generate code for pandarus / live API docs
because assignment_visibility array does not specify a type.
This sets the type to 'integer'.
Fixes SIS-400
Change-Id: I0a675dc51907d1a64993a36bed94d022deae3dda
Reviewed-on: https://gerrit.instructure.com/38575
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ken Romney <kromney@instructure.com>
Product-Review: Duane Johnson <duane@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
test plan:
1. click the item row cog
2. choose “edit”
3. change the title
4. click save
- item indicates “saving..”
- item’s title updates
5. refresh the page
- changes persist
6. repeat 1-3
7. click cancel
- title does not update
Change-Id: Idcd52c580078ca60ec468a4c85832b385d63220c
Reviewed-on: https://gerrit.instructure.com/38487
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jason Madsen <jmadsen@instructure.com>
Product-Review: Ryan Florence <ryanf@instructure.com>
QA-Review: Ryan Florence <ryanf@instructure.com>
test plan:
* create a course with a question bank
* add a question to the bank
* create a quiz
* import the question from the bank into the quiz
* copy the course
* the copied course should have a question bank
matching the original name with the question
fixes #CNVS-14495
Change-Id: I8e56c5c59e88be5213a004d276aadd14b89ca0cd
Reviewed-on: https://gerrit.instructure.com/38610
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jon Willesen <jonw@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
fixes CNVS-5604
Test plan:
* set up an assignment that takes online_url and online_text_entry
submissions
* make a online_url submission for an assignment
* have the same student make an online_text_entry submission
* the api response should now *not* include the url anymore
Change-Id: I2389b0b3e8a565eed01f85ba2bed874c59585a2f
Reviewed-on: https://gerrit.instructure.com/37796
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Anna Koalenz <akoalenz@instructure.com>
Product-Review: Cameron Matheson <cameron@instructure.com>
Rather than running our script that stitches together mediaelement js
and css files and _then_ manually editing in our hacks, enhance the
build script to be able to pull specific customizations from local
files.
Use this new facility to stitch in our "upload subtitle" feature in
more cleanly.
Also normalize the whitespace in our hacks to match me.js tab style to
reduce the diff between our code and upstream.
Note that the diff when ignoring whitespace on
public/javascripts/vendor/mediaelement-and-player.js is only comments.
On the CSS side, we pull out the full screen subtitle font-size bump
into a separate file. We also update the target location for the
vendored CSS file in the build script.
Now `rake build_media_element_js` should be idempotent.
Test plan:
- Verify the media player works for video and audio.
- Verify that captions in full screen videos show with a large font
Change-Id: I698b0c3454c12bfa4efffc2d98ab9056d351220c
Reviewed-on: https://gerrit.instructure.com/38455
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Zach Pendleton <zachp@instructure.com>
QA-Review: Steven Shepherd <sshepherd@instructure.com>
Product-Review: Paul Hinze <paulh@instructure.com>
CNVS-13598 fixed some instances where last_authored_message_at was
not being set correctly. unfortunately, it caused regressions in
forwarding and reply-all. CNVS-14333 reverted CNVS-13598, but
left fragile last_authored_message_at checks.
this commit removes those checks. they should be put back when we
fix the original problem in CNVS-13598
Change-Id: Iaa04d8c3ee41e9753b9f8ea042e035b12cc619f6
Reviewed-on: https://gerrit.instructure.com/38680
Product-Review: Bryan Madsen <bryan@instructure.com>
QA-Review: Bryan Madsen <bryan@instructure.com>
Reviewed-by: Mark Severson <markse@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
test plan:
1. use the content exports api with export_type=zip
to export files from courses, groups, and users
a. confirm only users who have permission to
download files from these contexts can perform
the export
b. confirm that deleted files and folders do not show
up in the downloaded archive
c. confirm that students cannot download locked files
or folders from courses this way
d. check the progress endpoint and make sure
it increments sanely
2. perform selective content exports by passing an array
of ids in select[folders] and/or select[attachments].
for example,
?select[folders][]=123&select[folders][]=456
?select[attachments][]=345
etc.
a. any selected files, plus the full contents of any
selected folders (that the caller has permission
to see) should be included
- that means locked files and subfolders should
be excluded from the archive
b. if all selected files and folders are descendants
of the same subfolder X, the export should be named
"X_export.zip" and all paths inside the zip should be
relative to it. for example, if you are exporting A/B/1
and A/C/2, you should get "A_export.zip" containing
files "B/1" and "C/2".
3. use the index and show endpoints to list and view
content exports in courses, groups, and users
a. confirm students cannot view non-zip course exports
(such as common cartridge exports)
b. confirm students cannot view other users' file (zip)
exports, in course, group, and user context
c. confirm teachers cannot view other users' file (zip)
exports, in course, group, and user context
(but can still view course [cc] exports initiated by
other teachers)
4. look at /courses/X/content_exports (web, not API)
a. confirm teachers see file exports they performed
b. confirm teachers do not see file exports performed by
other teachers
c. confirm teachers see all non-zip course exports
(cc/qti) including those initiated by other teachers
5. as a site admin user, perform a zip export of another
user's files. then, as that other user, go to
/dashboard/data_exports and confirm that the export
performed by the site admin user is not shown.
fixes CNVS-12706
Change-Id: Ie9b58e44ac8006a9c9171b3ed23454bf135385b0
Reviewed-on: https://gerrit.instructure.com/34341
Reviewed-by: James Williams <jamesw@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Jon Willesen <jonw@instructure.com>
after many steps towards this moment, we're finally here
This yanks sass and compass out of canvas-lms
completely and instead uses the libsass based
node-sass to compile our SASS files.
wins:
It is WAYYY faster!
as in, < 10 seconds to recompile all css in canvas
(compared to the 5+ minutes it used to take)
It is all in JS, helping use move to a completely
nodeJS based fronted tooling workflow.
next steps:
remove jammit: we don't need an assets.yml file
since node-sass can output compressed css for us
and we use sass to do all of our @import'ing of other
files (@colleen calls those "compiler" sheets), this
would simplify and speed up fronted asset building
even more
use gulp/broccoli/whatev to do cached, incremental builds
test plan:
all outputted css should look exactly the
same as it used to.
run `npm run compile-sass`, make sure it works
and is way faster than `rake css:generate` used to be
Change-Id: I7d865ea6b3e374cdc27a883d2019a4c15746c0e2
Reviewed-on: https://gerrit.instructure.com/38416
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
to test, run:
https://gist.github.com/anonymous/bc9c74c7d2438c3f6375
from the /app/stylesheets directory
and see that it works
to re-render all sass in the app went from
294.39s user 21.77s system 273% cpu 1:55.41 total
to:
79.14s user 11.29s system 684% cpu 13.212 total
from 2 minutes down to thirteen seconds!!!
(with a bunch of stuff I can do to further optimize)
Change-Id: Ib239da39226f041d02cea4fb9d5e4f6fe3e18468
Reviewed-on: https://gerrit.instructure.com/38415
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
This is the hardest one, it was not too bad though.
Things I found you need to do:
1. You can't have a "//" comment on the same line in .sass syntax
so the following line:
.foo //a comment about foo
would need to be:
//a comment about #foo
.foo
2. in .sass, you have to use double quotes for @import
so: @import 'foo'
becomes: @import "foo"
things you do NOT have to do:
1. don't have to add the extension or the underscore
in front of filename for @import.
e.g, DON'T have to convert:
@import "foo"
to:
@import "_foo.scss"
2: don't have to convert the leading colon syntax
of super old sass to colon between syntax
e.g:
.foo
:width 100%
is just fine
(Hallelujah on not having to do those 2, it
makes this a lot smaller of a change)
test plan:
`npm install node-sass` then
within the /app/stylesheets directory,
run this command and see that it works:
../../node_modules/.bin/node-sass --include-path variants/new_styles_high_contrast base/c-common.scss
Change-Id: I73e382560e3dcbf55c32e97bb245b5ec262d4cb0
Reviewed-on: https://gerrit.instructure.com/38414
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
...so we don't get bugged by our input:placeholder
styles
the number 2 was just something arbitrary that I had picked
Change-Id: I256880f0c4e3b11084387dfabf1dffa3fdaf6688
Reviewed-on: https://gerrit.instructure.com/38484
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Colleen Palmer <colleen@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
it doesn't exist and is not used anyway
this fixes this warning:
Jammit Warning: No assets match 'public/stylesheets_compiled/k12_high_contrast/pages/calendar/calendar.css'
test plan:
run rake canvas:compile_assets and see that you
don't get that warning
Change-Id: I547b846e922139d3cd7580e6c121ca53f131a9b4
Reviewed-on: https://gerrit.instructure.com/38483
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Colleen Palmer <colleen@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Fixes CNVS-13971
Test plan:
- Visit a discussion with edit privileges
- Using a screen reader, verify that the edit button is reported as being a
button
Change-Id: Ie89a3595d33f14fbb990dc2f8140216d5a08bfe2
Reviewed-on: https://gerrit.instructure.com/38469
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jayce Higgins <jhiggins@instructure.com>
Product-Review: Matthew Wheeler <mwheeler@instructure.com>
QA-Review: David Josse <david@instructure.com>
1. add some :once's to reduce total runtime from 4:50 -> 3:50
2. split it out into multiple files so that it can be parallelized
(slowest one is course_copy_quizzes_spec.rb @ 0:50)
Change-Id: I5fd70d9d05f622180fa000e25e982e821ff36d82
Reviewed-on: https://gerrit.instructure.com/38605
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Landon Wilkins <lwilkins@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
Tested-by: Jon Jensen <jon@instructure.com>
Product-Review: Jon Jensen <jon@instructure.com>
fixes CNVS-14451
test plan:
* create a role in a root account
* grant a permission to that role, and add an admin to that role
* in a sub-account, revoke that permission from that role
* ensure that the admin still has the permission in both the root
account and a sub account (the sub account can't revoke permissions
that admins got from further up the chain)
* add an admin in that role to the sub account
* ensure this new admin does not have the permission
* and, sadly, permissions regression, cause we're messing with
low level permissions stuff again
Change-Id: I7ccc32f36e4476d5df77eaec765abcb1c7b89b3e
Reviewed-on: https://gerrit.instructure.com/38604
Reviewed-by: Nick Cloward <ncloward@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
fixes CNVS-14509
previously it didn't include a submissions's attachment (used for
screenshots on url submissions)
Test plan:
* make a url submission
* use the submissions api (for_students endpoint) to get the submission
* it should include an attachment for the screenshot of the submission
Change-Id: Ic4c2cfe693e0446bb48c811e8d2c5fd44e53d6a9
Reviewed-on: https://gerrit.instructure.com/37731
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Cameron Matheson <cameron@instructure.com>
Making it known that the default english locale is en_US
Fixes INTL-2
test plan:
- open up user settings
- click edit
- open the language dropdown
- make sure that "English" no longer shows up while "English (US)" does
- save your changes
- validate that the changes were made
- this will affect any place that renders the local name from i18n.available_locales
Change-Id: Ice1f00655be1f83293553e1875ab377ad9008f1a
Reviewed-on: https://gerrit.instructure.com/38281
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Mark Severson <markse@instructure.com>
Product-Review: Matthew Wheeler <mwheeler@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
two specs saved a page view with the same id, thus the count would not
change on the second one unless run in isolation
Change-Id: I04bdfd440fa1fd67e58f07df9c7e75cf854c7137
Reviewed-on: https://gerrit.instructure.com/38608
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Bryan Madsen <bryan@instructure.com>
Product-Review: Bryan Madsen <bryan@instructure.com>
QA-Review: Bryan Madsen <bryan@instructure.com>
cdn was giving 404s; this was causing a selenium spec failure and
preventing preview from working in the advanced editor. switch to
something more reliable.
from my limited testing, we can't easily host this ourselves, because it
dynamically loads other scripts.
test plan:
1. go to the equation editor
2. confirm there are no errors in the js console
3. confirm that the basic editor works
4. confirm that the advanced editor works (live preview too)
Change-Id: Id261740d848cdae8922c9cfd985c9c7e7f84236e
Reviewed-on: https://gerrit.instructure.com/38624
Reviewed-by: Jason Madsen <jmadsen@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Jon Jensen <jon@instructure.com>
fixes CNVS-14227
test plan:
- visit /doc/api/assignments.html
- should only see one instance of line 'API for accessing assignment information.'
Change-Id: Ia0c55d2aaea4f7eeaefd30ea0427be75b0719b6a
Reviewed-on: https://gerrit.instructure.com/38465
Reviewed-by: Simon Williams <simon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
fixes CNVS-14383
test plan
- create a discussion with "post before seeing replies" checked
- create a reply to the discussion
- as a user in the course who has not replied to the topic,
fetch the /api/v1/courses/:course_id/activity_stream/summary
- as the topic creator, edit the topic message (to queue a job
to recreate the materialized view)
- ensure that the reply is still present (the materialized view
must be regenerated before the bug would remove the entry)
- toggle the unread state on the entry, ensuring that no errors
appear in the debug console
Change-Id: Iaf8d15195c5c6fef8f1b22bf7dfc9110b05394f2
Reviewed-on: https://gerrit.instructure.com/38564
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Matthew Wheeler <mwheeler@instructure.com>
Reviewed-by: Mark Severson <markse@instructure.com>
Product-Review: Matthew Wheeler <mwheeler@instructure.com>
QA-Review: Steven Shepherd <sshepherd@instructure.com>
Test plan:
make sure canvadocs/crocodoc still work in speedgrader
Change-Id: Ie5a7b8759206b0293757a2c2d820f0e7f5af164d
Reviewed-on: https://gerrit.instructure.com/36201
Reviewed-by: Simon Williams <simon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Cameron Matheson <cameron@instructure.com>
Fixes CNVS-14483
Test plan:
- Add a link to an external site, such as Google, to a wiki page
- View the page with a screen reader and verify that the name of the external
link is read, and that the text informing the user that it is an external
link is appended to the link name.
- Verify that the visual appearance and opporation of the external link is
uneffected
Change-Id: I689045fa09191239637dc686352bf6a0728ead0e
Reviewed-on: https://gerrit.instructure.com/38499
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Product-Review: Aaron Cannon <acannon@instructure.com>
closes CNVS-14424
test plan:
- in a course with >10 assignments, list them with the api
- you should get 10 back by default
Change-Id: If671da72e1f6f85bce57635460306123addcaeb2
Reviewed-on: https://gerrit.instructure.com/38232
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Cameron Matheson <cameron@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
even if it hasn't had a full manual regression check on it
Change-Id: Ia9275c1fe95236b750b602e34727d7cd2caf2936
Reviewed-on: https://gerrit.instructure.com/38603
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
fixes CNVS-14071
test plan:
- set up differentiated assignments
- as a student go directly to an assignment url
(eg - courses/1/assignments/2)
- students without visibility should get a flash
message and get redirected to the assignment index
- students with visibility should see the normal page
- as a student go directly to a submission url
(eg - courses/1/assignments/2/submissions/3)
- students without visibility should get a flash
message and get redirected to the assignment index
- students with visibility should see the normal page
- as a teacher and TA these pages should work fine
- observers should have the same permissions as the
students they are observing (try hard to break)
Change-Id: I063fbd5ab3664d69754f01f5bdc740fb79048804
Reviewed-on: https://gerrit.instructure.com/37704
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Liz Abinante <labinante@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Mike Nomitch <mnomitch@instructure.com>
fixes CNVS-2684
fixes CNVS-2768
test plan:
- in the site admin account settings page:
- the notification tab should be gone
- updating settings should still work
- in the root account settings page:
- the notifications tab should still be present and functional
- in a sub-account settings page:
- the notification tab should be gone
- updating settings should still work
Change-Id: Ic6b016be8d0b7a00f4153870220dbb34388a350b
Reviewed-on: https://gerrit.instructure.com/38367
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Anna Koalenz <akoalenz@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
also add limits for byte size and file count to prevent
zip/tar "bombs"
test plan:
* import the package referenced in the ticket
* should import successfully
* content migration regressions
closes #CNVS-14303 #CNVS-14428
Change-Id: Ia424b5260e34f35b62ca47f7aafa77118c4f5b5b
Reviewed-on: https://gerrit.instructure.com/37881
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>