fixes an issue that arose with rails 3, where
module items that were not set with content (and thus
shouldn't have been saved) were being autosaved and
breaking the entire modules page
test plan:
* import the package(s) referenced in the ticket
* the modules page should still be functional
fixes #CNVS-14777
Change-Id: I82fe287a4db9492489461e971911a0f7c15fbcb0
Reviewed-on: https://gerrit.instructure.com/39404
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
Adjusts the element_toggler to use a span rather than a link.
Also adds a tabindex to the description so that screenreaders can
actually read the description.
fixes CNVS-14484
test plan:
- Using a screenreader go to account settings (/accounts/#/settings)
- Navigate to the Feature Options tab
- Navigate to the toggle feature details button
- Using either spacebar or enter should cause it to activate
- Tabbing through should read the details if they are expanded
Change-Id: I50295fdcee91f90884383a340911ed8b8778deae
Reviewed-on: https://gerrit.instructure.com/39297
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
Hide quiz answers for courses with concluded term and restrict_quiz_questions is true
Fixes CNVS-13075
Test Plan
- At the account level, check the option to restrict students from
viewing quiz questions after course end date.
- Set a term to end in the near future.
- Set a course to this term. (NOTE: Do not set course end date within
the course)
- Log into this course as the student and take at least one quiz.
- As the student, go to the completed quiz after the course has
concluded naturally by term end date passing.
- You should not see the quiz questions or answers
Change-Id: Ib06c0e2ab94b297ec0d50f0af5af9697bf2ee132
Reviewed-on: https://gerrit.instructure.com/39351
Reviewed-by: Derek DeVries <ddevries@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Brian Finney <bfinney@instructure.com>
this reverts part of b4840c75cc
fixes CNVS-14840
test plan:
- with differentiated assignments off, grading should work correctly
- in a course with many assignments, you should be able to download the
gradebook csv
- with differentiated assignments on, grading will not work correctly, this is
intentional.
Change-Id: Id910ff28763ba13c529a21d4c125a164e094aeac
Reviewed-on: https://gerrit.instructure.com/39436
Reviewed-by: Mike Nomitch <mnomitch@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
Closes CNVS-3856
TEST PLAN
---- ----
- create a quiz with 3 questions with points possible: 0.42, 0.23, 1
- preview the quiz and get all the questions correctly
- verify you see "1.65 out of 1.65"
- retry with failing some questions
- verify you get the correct score shown
Change-Id: Ib7e830adce26b2c2346eb3a4149e4bc0406a9d35
Reviewed-on: https://gerrit.instructure.com/39295
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Reviewed-by: Ryan Taylor <rtaylor@instructure.com>
Reviewed-by: Josh Simpson <jsimpson@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
This patch makes `i18n:check` and `i18n:generate_js` able to parse
source files that may contain more than one AMD module. Usage is
described in the gem's (newly added) README.md file.
Closes CNVS-14691
TEST PLAN
---- ----
- make sure `i18n:generate` and `i18n:check` rake tasks work
Change-Id: Ic1280c0b31fd274da2529ebeac7f72f72934f1ab
Reviewed-on: https://gerrit.instructure.com/39014
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jon Jensen <jon@instructure.com>
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
refs: CNVS-13987
Adds a parameter to event stream that allows us to add in a method to fix the
data before the event stream pulls the records. Once the fixup is complete we
should remove these changes.
Requres g/37541.
Test Plan:
- Corrupt some Audit log data for authentications, grade changes, and course
changes.
- Do not run the data fixup.
- Use the UI or API endpoints to query the corrupted records.
- Should fix the corrupted indexes for the corrupted records.
- Should return corrupted event type records in results just as if the data
fixup has ran on the records.
- Should behave normally on records that are not corrupted or have never been
corrupted.
Reference g/37605 for setting up corrupted event data.
Change-Id: Id0e1278c7d377ef836866e2e146e2b52887fdc68
Reviewed-on: https://gerrit.instructure.com/39089
Reviewed-by: Jacob Fugal <jacob@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Nick Cloward <ncloward@instructure.com>
refs: CNVS-14114
refs: CNVS-13987
Test Plan:
Reference: g/37503
Message in admin tools should be gone and drop down should be visible.
The funcionality should behave as it was before it was disabled.
Hit an Audit log api call and it should work as it was before we
disabled it.
Change-Id: I13eac39aece25dff28b403eb733060e8b3a7f338
Reviewed-on: https://gerrit.instructure.com/37541
Reviewed-by: Jacob Fugal <jacob@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Nick Cloward <ncloward@instructure.com>
fixes CNVS-14808
test plan:
Post a zip file to the sis import API, without specifying the content-type:
curl --data-binary "@zip_file_.zip" -H "Authorization: ..." 'http://canvas.dev/api/v1/accounts/self/sis_imports.json?import_type=instructure_csv'
The post should succeed, and the CSVs inside the zip should SIS process without error.
Change-Id: Ib97c3ba7475543fd03089400df4747b644645ca7
Reviewed-on: https://gerrit.instructure.com/39410
Reviewed-by: Cody Cutrer <cody@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Brian Palmer <brianp@instructure.com>
Tested-by: Brian Palmer <brianp@instructure.com>
this broke with the rails 3 upgrade
1. `render :collection` was not getting the correct scope (it just kept
the parent's)
2. `render :partial` was not getting the correct scope if the partial was
in the same directory as the main template, e.g.
`render :partial => 'courses_right_side'` would have courses_right_side
as its scope instead of the correct accounts.courses_right_side
test plan:
1. run canvas with RAILS_LOAD_ALL_LOCALES=true
2. change your language from english
3. go to the accounts show page
4. behold the translated strings (in particular the right sidebar, and the
various counts/stats for each course in the main content area)
5. confirm that i18n is working elsewhere
6. note: if you're regression testing i18n everywhere, you'll also need to
compile assets and run canvas with USE_OPTIMIZED_JS=true to get
translations working in javascript land. that's technically not needed
to verify this commit, but it'll eliminate any false positives
Change-Id: I594a403f7d4611e74c76ff05e9fb7542c6d3a80d
Reviewed-on: https://gerrit.instructure.com/39399
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Matt Fairbourn <mfairbourn@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Fixes CNVS-14490
Test plan:
- Create a new course, and an assignment within
- Enter student view to generate the test student enrollment
- Submit the assignment as the test student
- As a teacher, give the student a score for the assignment
- With the test student's submission graded, the course should
still be unpublishable
Change-Id: Ib11fb7a2baa834ddf0a7f39a8ac12542539ab1e4
Reviewed-on: https://gerrit.instructure.com/39009
Reviewed-by: Simon Williams <simon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
fixes CNVS-14765
test plan:
- have a course with multiple content exports
- /courses/X/content_exports should display them in order
by date, descending
Change-Id: I76356ab83b9631dd192dea18c331b425505a92d2
Reviewed-on: https://gerrit.instructure.com/39252
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: James Williams <jamesw@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
Fixes: CNVS-14596
Note: the CSS that determines the background color
of the unread message badge also controls the blue
badges for dashboard activity, so this change will
also affect those elements.
Test plan:
- Send a message to make the unread messages badge
appear in the user nav in the header
- Use the web inspector to get the HEX values for
the badges in both default and high-contrast mode,
and confirm they meet the WebAIM contrast standards
of 3:1 in default UI and 4.5:1 in high contrast UI.
Change-Id: Idf0002c3fcf6e5869583d63cded02b62cb871b93
Reviewed-on: https://gerrit.instructure.com/39145
Reviewed-by: Colleen Palmer <colleen@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Product-Review: Matt Fairbourn <mfairbourn@instructure.com>
...and print a message of what went wrong
test plan:
write some bad syntax in a sass file,
run `npm run compile-sass`
it should exit with non-zero status code
it should tell you what line of css caused the error
Change-Id: I0febb3286f6100993d5d2d53083d6a53719cbedf
Reviewed-on: https://gerrit.instructure.com/39385
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>
closes CNVS-11662
test plan:
- enable new files
- navigate to course files
- select a specific Folder
- click the '+ Files' button in top right
- select a files (or a few)
- files should be uploaded to the chosen Folder
- once uploaded files should appear in the UI
- refresh browswer to verify files are persisted
caveats:
- uploading progress UI will be handled in CNVS-12658
- prompt for renaming files coming in CNVS-12667
Change-Id: I685d0336b1794f5bddd66cd21cc88d99b30ac662
Reviewed-on: https://gerrit.instructure.com/38793
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Product-Review: Jason Madsen <jmadsen@instructure.com>
QA-Review: Jason Madsen <jmadsen@instructure.com>
closes CNVS-14678
This commit allows the quiz stats feature flag to be registered only when
within the beta environment (or development or test). It should not be available in production.
Test plan
- Deploy normally to your QA portal. The 'quiz stats' feature flag should
be available and operational.
- Remove the testcluster.yml file from your config/ directory (or move
/ back it up to a safe place)
- Restart your QA portal.
- The quiz stats feature flag should not be available or visible.
Change-Id: If51af6bae18b31fed8f7b2d666f59562ad0fb18e
Reviewed-on: https://gerrit.instructure.com/39330
Reviewed-by: Derek DeVries <ddevries@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Josh Simpson <jsimpson@instructure.com>
fixes CNVS-14507
This introduces the new color variables for Canvas.
Changes:
* renamed _variables.sass to _variables.scss
* moved _variables from /themes/ to /base/
* combined _canvas_colors into _variables
* removed _canvas_colors.scss (since it's now a part of _variables)
Test plan:
Nothing should look different in Canvas.
Change-Id: I1a94961c253a00b2a9c9710c726af036464198e0
Reviewed-on: https://gerrit.instructure.com/39113
Reviewed-by: Chris Hart <chart@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Matt Fairbourn <mfairbourn@instructure.com>
Product-Review: Colleen Palmer <colleen@instructure.com>
test plan:
* create an account role
* grant the account role the ability to "See the list
of users"
* as a user with that role, should be able to view the
course enrollments on a user's details page
closes #CNVS-14169
Change-Id: I7e5256af1e52118f14799c6a76603de61eb14f25
Reviewed-on: https://gerrit.instructure.com/39203
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
the marshalling to/from the child serialized delayed job isn't including
@last_progress_update, causing errors comparing a time to nil.
refs CNVS-14640
Change-Id: I6636335202921c0210edce2ebebd4eef4ec22dac
Reviewed-on: https://gerrit.instructure.com/39358
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Brian Palmer <brianp@instructure.com>
QA-Review: Brian Palmer <brianp@instructure.com>
fixes CNVS-14580
test plan:
1. create an eportfolio
2. click organize/manage pages
3. create a second page
4. open the eportfolio in a new tab
5. in one tab, delete the welcome page
6. in the second tab, delete the new page
7. refresh the eportfolio
8. it should still load the welcome page (having recreated it)
Change-Id: I400b2d4689773a8f48d8b3bfa577982492a4bfb4
Reviewed-on: https://gerrit.instructure.com/38847
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>
The source chooser exposes available video sources of different sizes
and qualities. This allows users to select the quality that best matches
their currently available bandwidth.
Test plan:
- With the "Prefer HTML5 for videos" feature option ON
- Visit a page with a video on it
- Click the starburst icon to see the list of available sources
- Choose sources and observe that the quality of the video changes
- Changing sources should preserve the play/pause state, timeline
position, and playback speed
- Multiple players on a page should not affect each other
- You should not see this control show up for audio players
- With the "Prefer HTML5 for videos" feature OFF:
- Same as above, except that changing sources should only preserve the
play/pause state (timeline and playback speed not available in the flash
player)
Change-Id: I1c99a8e784904eed687f827164eed7e9d7e8c26c
Reviewed-on: https://gerrit.instructure.com/38639
Reviewed-by: Zach Pendleton <zachp@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Steven Shepherd <sshepherd@instructure.com>
Product-Review: Paul Hinze <paulh@instructure.com>
fixes CNVS-12567, CNVS-14786
test plan:
* create discussion entries in a topic with multiple participants
* verify that topic unread counts and message unread statuses
are maintained correctly
* if possible, load test simultaneous entry creation
and verify that no deadlock occurs
Change-Id: I9c5ce430d9c7914648e5920bd317949fe15f22f3
Reviewed-on: https://gerrit.instructure.com/39318
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Braden Anderson <braden@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Fixes CNVS-14293
Test plan:
Visit the following pages and verify that each:
- has an unaltered visual appearance
- has exactly one level 1 heading which can be navigated to by screen readers
- When appropriate (I.E. when the length or organization of the page warrents
it) has lower level headings which can be navigated to by screen readers
- when lower level headings are present, heading levels proceed in order, and
logically
The following pages should be verified to confirm they meet the above criteria.
Note that the URL fragments provided may not be reachable on all installs,
and should be modified appropriately.
- /courses/1/assignments
- /courses/1/assignments/18
- /courses/1/discussion_topics (Sections should be level 2, individual
discussions level 3.)
- /courses/1/users/prior
- /courses/1/pages/front-page
- /courses/1/pages/front-page/revisions
- /courses/1/assignments/syllabus
- /courses/1/outcomes
- /courses/1/rubrics
- /courses/1/quizzes/11/take?preview=1
- /courses/1/quizzes/11/moderate
- /courses/1/question_banks
- /courses/1/modules
- /courses/1/statistics
- /courses/1/confirm_action?event=conclude
- /courses/1/copy
- /courses/1/content_migrations
- /courses/1/content_exports
- /courses/1/content_exports
- /profile/communication
- /users/2/user_notes
- /courses/1/users/1/usage
- /courses/1/announcements
- An additional heading can be seen by loading the page when no
announcements exist.
- /courses/1/pages
- /courses/1/files
- /courses/1/quizzes
- /courses/1/settings
- /dashboard/files
- /courses/1/outcomes/users/1
Change-Id: I26d7dba115105c36026758cf55644139116224ec
Reviewed-on: https://gerrit.instructure.com/37669
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Reviewed-by: Ryan Florence <ryanf@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
fixes CNVS-14790
test plan
- set up a custom 'From' name with a ':' in it
- cause an email to be sent from that account
- ensure that the email is sent
Change-Id: Id3a3179dd9b9f17a05c8cb4c7cf3fba57b59c87c
Reviewed-on: https://gerrit.instructure.com/39319
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
test plan:
- a site admin user should be able to see the hidden
lor_for_user feature in User settings
- a non-site admin user should not be able to see it,
unless a site admin user has already set it for the user
fixes CNVS-14779
Change-Id: If9a42546b209607b8728ecdb682ad0aeefe99136
Reviewed-on: https://gerrit.instructure.com/39292
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: James Williams <jamesw@instructure.com>
Product-Review: Bracken Mosbacker <bracken@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
test plan:
* modify an lti app xml to be configured
for the 'global_navigation' extension
* add the tool to a domain root account using
the modified xml
* should add a new link item to the global menu header
* edit the xml to add a property to the global_navigation
extension:
<lticm:property name="visibility">admins</lticm:property>
* configure another tool for the domain root account
* confirm that the new link item is only visible
for teachers and account admins
closes #CNVS-13815
Change-Id: I5ce42515ebc545d6f14bdc9dd628e1740b94d667
Reviewed-on: https://gerrit.instructure.com/39060
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
Product-Review: Bracken Mosbacker <bracken@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
fixes CNVS-14789
switchman does the whole shebang in a transaction, so slave
won't even have the tables yet
Change-Id: I009b0602647a34f1d5088bb64627466506bdffe5
Reviewed-on: https://gerrit.instructure.com/39310
Reviewed-by: Brian Palmer <brianp@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
fixes CNVS-6758
test plan:
- Go to the permissions page (/accounts/##/permissions)
- Click on account roles
- Add a custom role
- No tooltip should show for the custom account role
Change-Id: Icc60b0139b5b87309639c40530172e571e74e47f
Reviewed-on: https://gerrit.instructure.com/39244
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Cosme Salazar