Commit Graph

1868 Commits

Author SHA1 Message Date
Jeremy Stanley a59d620f2c fix publish icon in collapsed modules
in filtering out invisible template modules, we
were also filtering out real collapsed modules
when initializing the broccoli clouds

test plan:
 - collapse a module with items
 - refresh the page
 - expand the module
 - the publish icons should be visible and functional

fixes CNVS-19986

Change-Id: Idb8fd21135e4adc6e9149f04a59b150b10ff796f
Reviewed-on: https://gerrit.instructure.com/52834
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
2015-04-27 18:34:55 +00:00
Strand McCutchen d804163c7d make tabbing through SlickGrid more accessible
This change makes it so you can tab out of the
SlickGrid when you are on the last cell.

This change also makes it so enter takes you to
the top of the next column.

fixes CNVS-18686
refs CNVS-17043

Test Plan:
- Import a CSV into the gradebook, regardless of which one.
- Get to the final results page, where it will ask you to save.
- You should be able to reach the submit/save/etc. buttons
  with only the keyboard.
- Please also check using the test plan for CNVS-17043 since
this commit actually adds this functionality into Canvas:
  - In the gradebook press the enter key while editing the
    bottom row of a column.
  - Focus should go to the top of the next column.

Change-Id: Ie9add59ccc1873708cfd45df7fdc7f8032aa7cb1
Reviewed-on: https://gerrit.instructure.com/52784
Tested-by: Jenkins
Reviewed-by: Jonathan Featherstone <jfeatherstone@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Product-Review: Strand McCutchen <smccutchen@instructure.com>
2015-04-24 21:52:23 +00:00
Alex Boyd 6e370c4a9f Add "Save & Publish" buttons (quizzes)
Fixes CNVS-18433

Test plan:
 - On the Quizzes page, hit "+ Quiz"
 - Enter a title for the quiz
 - Click the "Save & Publish" button and make sure that its text
   changes to "Saving", then to "Saved!"
 - Verify that the quiz has been published
 - Edit the quiz
 - Verify that the "Save & Publish" button no longer shows up
 - Unpublish the quiz, then edit it again
 - Verify that the "Save & Publish" button shows up again

Change-Id: Id19880cd619cd278950857c609bcee46aa0135ac
Reviewed-on: https://gerrit.instructure.com/48432
Tested-by: Jenkins
Reviewed-by: Ryan Taylor <rtaylor@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
2015-04-24 18:49:44 +00:00
Steven Burnett dd09d220d6 hide edit/delete for rubric criterion rows from outcomes
hides the edit and delete links on the rubrics page showing on an
imported outcome that cannot be edited

fixes CNVS-16829

test plan:
- make a course level outcome
- make a course level rubric
- click "find a outcome" on the rubric page
- import outcome into rubric
- notice no edit/delete links on the outcome section
  of the rubric
- save the rubric
- the links should still be hidden

Change-Id: I76859b664c224aaf13958a4a2529b3da48750398
Reviewed-on: https://gerrit.instructure.com/49722
Tested-by: Jenkins
Reviewed-by: Mike Nomitch <mnomitch@instructure.com>
QA-Review: Adam Stone <astone@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
2015-04-24 13:41:19 +00:00
Strand McCutchen ae115b2152 makes Google Doc tab more accessible
fixes CNVS-19813

When a user activates a tab either by clicking or tabbing
with arrow keys on their keyboard, Google Docs loads a list
of their documents.

When a user selects a document either by clicking or using
the spacebar, the document is selected, which is indicated
with a grey background.

When a user opens a folder either by clicking or using
the spacebar, the folder expands.

Test plan:

On an account with the Google Drive/Doc plugins setup, as
a student with Google Drive set up in their user settings.
For an assignment that requires a file upload submission…

1. Log in as a student with google drive registered in their
   services and navigate to the assignments page.
2. Select an assignment that requires a file upload.
3. Click the "Submit Assignment" button.
4. Use keyboard shortcuts (tab and arrows) to tab from
   File Upload to Google Doc.
6. Navigate down the list using tab.
7. Expand a folder with space.
8. Select a file with space.

Change-Id: Ia8148472c2405c58cdfded760d7ed547edd1630e
Reviewed-on: https://gerrit.instructure.com/52450
Tested-by: Jenkins
QA-Review: Nathan Rogowski <nathan@instructure.com>
Reviewed-by: Matt Berns <mberns@instructure.com>
Product-Review: Strand McCutchen <smccutchen@instructure.com>
2015-04-23 21:04:07 +00:00
Brian Palmer dc142ca33f switch to the speex codec for the flash recording widget
fixes CNVS-19888

The most recent version of Flash has a critical bug that causes the default
NellyMoser codec to play back at high speed
https://bugbase.adobe.com/index.cfm?event=selectBug&CFGRIDKEY=3970924

I wasn't able to fix the issue by changing NellyMoser sample rate. Switching to
the (more modern) Speex codec fixes the issue. There might be a slight decrease
in sound quality, since Speex sampling is 16khz, vs the 22khz we were using for
NellyMoser. On the other hand, the Speex codec is more optimized for speech,
which is what most of our recorded video is.

This also pulls in a new build of our KRecord.swf widget which enables
soundcodec and soundrate options.

test plan: without this commit, recording webcam video/audio will play back the
preview at high speed. with this commit, it should play back at the correct
speed. the video/audio should also save and play back later as expected.

Change-Id: Ie16a3ca04e836da9c5fc3bdbcf1b699e9dccf193
Reviewed-on: https://gerrit.instructure.com/52615
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Cosme Salazar <cosme@instructure.com>
2015-04-23 16:36:30 +00:00
Brian Palmer 5d27722e9c promote the "alt" kaltura recorder widget to primary
refs CNVS-19888

All accounts now have the alt recorder enabled, so I've deleted the old recorder
and made the "alt" the only recorder. In other words, I renamed KRecord_alt.swf
to KRecord.swf and removed the setting.

test plan:

The "use alternative flash recording widget" kaltura plugin setting should be gone.

All accounts should now use the new, standard recording widget. the easiest
way to test this is to have multiple cameras plugged in, and check that the
recording widget shows a UI for selecting which camera to use.

Note that right now the preview when you record will play back at a higher speed
than expected. This isn't related to this change, it's a Flash Player bug that
CNVS-19888 is working toward addressing. Once you save the video, playback
should work at normal speed.

Change-Id: I899ff0e7eee887f442fe3d74a64764e43e293cf8
Reviewed-on: https://gerrit.instructure.com/52586
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
QA-Review: August Thornton <august@instructure.com>
Product-Review: Cosme Salazar <cosme@instructure.com>
2015-04-23 16:36:10 +00:00
James Williams 4fce85e497 don't allow negative quiz question point values
test plan:
* should not be able to create a quiz question
with a negative point value

* import the package referenced in the ticket
* should not have questions with negative point values

closes #CNVS-19877

Change-Id: I184bf4705af59bfddfe6bce09c7930e0957dccd6
Reviewed-on: https://gerrit.instructure.com/52611
Tested-by: Jenkins
Reviewed-by: Dan Minkevitch <dan@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
2015-04-23 16:19:40 +00:00
Matthew Berns ba906190ac fix browser-specific keyboard only navgation issues with tinymce
fixes CNVS-19827

test plan:
- go to any page that has a tinymce editor box

in chrome/safari
- use keyboard to navigate to HTML format button and hit enter/click
- focus should move to textarea, and you should be able to tab beyond it
- shift+tab back up and toggle the edit box formatting back to rich content
- focus should automatically be moved into the editor box
- there should be no changes in expected behavior/loss of information typed into
  the edit box

in firefox
- with the rich text editor active, attempt to tab beyond the edit box
- there should be no issues with kb only navigation in either direction

in all browsers
- with the rich text editor active, tab beyond the editbox
- shift+tab back to it, the focus should go to the editbox
- review CNVS-9789 and ensure there are no regressions concerning that issue

Change-Id: I0673b22a12809e36ad64d6c1d271deb22355513f
Reviewed-on: https://gerrit.instructure.com/52317
Tested-by: Jenkins
Reviewed-by: Jonathan Featherstone <jfeatherstone@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Product-Review: Aaron Cannon <acannon@instructure.com>
2015-04-22 19:41:36 +00:00
Simon Williams ddaede97b6 rubric should remember 'use for grading' setting before page refresh
fixes CNVS-15499

test plan:
- go to a course assignment page
- add a rubric and check 'use for grading'
- hit save, but don't refresh the page
- hit edit on the rubric
- the 'use for grading' check should still be there
- now refresh the page and edit again
- the 'use for grading' check should still be there

Change-Id: Idb43afa1d1974f26cec7b86adc317a64f7010185
Reviewed-on: https://gerrit.instructure.com/52038
Tested-by: Jenkins
Reviewed-by: Mike Nomitch <mnomitch@instructure.com>
QA-Review: Adam Stone <astone@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
2015-04-21 20:27:18 +00:00
Jeremy Stanley af2d7b6505 fix file chooser in add-module-item dialog
test plan: when adding a file to a module itme, the "Choose File"
button should not appear until "[ New File ]" is selected

fixes CNVS-19748

Change-Id: I4dea0e5c6f79dd81c090c58b810cfe9b032b2091
Reviewed-on: https://gerrit.instructure.com/52479
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Tested-by: Jenkins
Product-Review: Jeremy Stanley <jeremy@instructure.com>
2015-04-17 22:58:07 +00:00
Ethan Vizitei 029265e40f dont let tinymce strip span tags
closes CNVS-19814

adds "span" to the config string of valid elements, that's the fix.  To
make testing these easier in the future I created some integration-ish
tests for the config that actually stand up an instance and feed
an html string through it to see what it does with them.  That should
make testing these easier in the future.

also cleaned up a few missing semicolons
and inconsistent key/val styles.

TEST PLAN:
 - Go to any tinymce editor
 - switch to the HTML editor
 - add some code with a span tag
 - toggle back and forth between RCE and html editor
 - the span should not get stripped out
 - then follow the acceptance plan on the ticket to make sure their
    specific code example works (all the way through saving the context)

Change-Id: I51ff6a6bf9d1f823fa581fbb92ac83e7ad5f3e3e
Reviewed-on: https://gerrit.instructure.com/52251
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
QA-Review: August Thornton <august@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>
2015-04-15 22:23:58 +00:00
James Williams 5e5cd7b79c add tinymce editor for quiz question comments
test plan:
* should be able to create and edit question and
 answer comments using the html rce editor
* should be able to edit previously uneditable
 comments imported by certain packages

closes #CNVS-15633 #CNVS-10161

Change-Id: I3879fa3a2bb71e3e0f4ceefd66da3dbba41b0549
Reviewed-on: https://gerrit.instructure.com/52075
Reviewed-by: Brian Finney <bfinney@instructure.com>
Tested-by: Jenkins
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
2015-04-14 20:29:42 +00:00
Matthew Berns ef7a7b474b set default focus to close button on 'other services' modal
fixes CNVS-19245

test plan:
- go to user settings page
- use keyboard nav to get to the buttons under 'other services'
- when opening the modal for a given service, focus should be on close button

Change-Id: Ie9dc206802642a96ec11217bc5e03331fc9f5229
Reviewed-on: https://gerrit.instructure.com/52095
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Product-Review: Matt Berns <mberns@instructure.com>
2015-04-14 17:00:05 +00:00
Jeremy Stanley 0463872031 fix linter warning
"regular expressions should be preceded by a left parenthesis,
assignment, colon, or comma"

Change-Id: Ic152f8fd34d0c17b1073b791832feac6f10ebb3d
Reviewed-on: https://gerrit.instructure.com/51609
Tested-by: Jenkins
Reviewed-by: Jon Jensen <jon@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jeremy Stanley <jeremy@instructure.com>
2015-04-09 14:29:53 +00:00
Ethan Vizitei 6c37916795 tinymce: fill empty p tags
closes #CNVS-19717

force tinymce with config parameter to replace
empty p tags with nbsp spaces. Tinymce makes some
decisions about how to replace "empty-ish" things
on html translation (br, nbsp, etc) and in some
cases we don't like the decisions it makes.

This configuration forces tinymce to always fill
in empty p tags with an nbsp, regardless of how it
decided to do it's empty element replacement.

TEST PLAN:
 - In the RCE, add a line of text; note in the
   HTML view it is all in one paragraph set
 - In the Rich Content view, at the end of the line,
   hit Enter/Return; note in the HTML view that it shows as
   <p>&nbsp;</p>, rather than an empty p tag

Change-Id: I7fc1903445f8b9f6ead3d7c1a7aead5a90f5f8c6
Reviewed-on: https://gerrit.instructure.com/51826
Reviewed-by: Cody Cutrer <cody@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Tested-by: Jenkins
QA-Review: August Thornton <august@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>
2015-04-08 19:18:21 +00:00
Dylan Ross 1a3590bb9d recalculate totals when grading period is changed
on the student grades page, the totals of the course
and each assignment group now update when the
grading period is changed

scope:
verify that grades are being calculated correctly
when mpg is enabled or disabled

closes CNVS-19672

Change-Id: Ic7ffc13acfb6eae054686229ea6e4da9859aea32
Reviewed-on: https://gerrit.instructure.com/51747
Tested-by: Jenkins
Reviewed-by: Cameron Matheson <cameron@instructure.com>
Reviewed-by: Derek Bender <dbender@instructure.com>
QA-Review: Robert Lamb <rlamb@instructure.com>
Product-Review: Dylan Ross <dross@instructure.com>
2015-04-07 21:48:21 +00:00
Jacob Fugal 2c7a691bf0 teach tz.format to recognize localization keys
refs CNVS-19516

so you can say e.g. tz.format(date, 'time.formats.tiny') and it will
choose the appropriate format string based on the locale.

at the same time, use localized format string (using this new
functionality) for $.dateString (and by extensions, datetimeString)
instead of hard-coded english-style format strings.

finally, refactor out I18nStubber javascript spec helper for testing
this.

test-plan:
 - change you profile locale to french
 - view a time formatted by $.datetimeString in the UI, e.g.
   due dates in a course's assignments page
 - should show with "<day> <month> <year> à <24-hour time>" rather than
   using "<month> <day>, <year>" and/or "<12-hour time with am/pm>"

Change-Id: Ic7779917d7af5e0fe9d4ef3cd99e6f12cf141c3c
Reviewed-on: https://gerrit.instructure.com/51447
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
2015-04-07 17:19:09 +00:00
Ethan Vizitei c5f77d76f4 Enable browser_spellcheck by default in tinymce
closes CNVS-19703

Without this setting you only get browser spellcheck if you
right click on a world and explicitly ask for spelling suggestions.

Change-Id: I9655b31ed5fac7a4bd4216a419b49ab9a0d667d2
Reviewed-on: https://gerrit.instructure.com/51622
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
QA-Review: August Thornton <august@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>
2015-04-07 16:16:49 +00:00
Clay Diffrient 0381100c13 Fixes SR issues on Editing Quiz, quiz restrictions section
Closes CNVS-19232

Test Plan:
  - Confirm that following three items have labels
    - Require Access Code text input box
    - Filter IP addresses text input box
    - Filter IP addresses filter button link (the magnifying glass)
  - Also confirm that VoiceOver can navigate to the
    input boxes after they appear for the access code and the
    ip address.
Change-Id: Ie0fa3104614b4088de48f562713a13120accb731
Reviewed-on: https://gerrit.instructure.com/50794
Tested-by: Jenkins
Reviewed-by: Ryan Taylor <rtaylor@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Product-Review: Aaron Cannon <acannon@instructure.com>
2015-04-03 16:52:16 +00:00
Jacob Fugal 49a26559f7 add date.formats.full localization key
refs CNVS-19516

basically $.datetime.defaultFormat (which will be removed soon) but
localizable.

Change-Id: I0b97ce6a86ee4b83e4b17f4a618c3b8b49fca15b
Reviewed-on: https://gerrit.instructure.com/51446
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
QA-Review: Jacob Fugal <jacob@instructure.com>
2015-04-03 15:37:42 +00:00
Josh Simpson 6821dfe030 gradebook csv upload: make parsing step async
Test plan:
  * uploading the gradebook should work like it used to (except it will
    even work for ridiculous-large courses)
  * try to break it by running multiple uploads in parallel / etc

Change-Id: I80dfe7babe320a1cee4021c59c5691d1df5382dd
Reviewed-on: https://gerrit.instructure.com/51499
Tested-by: Jenkins
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
Reviewed-by: Cameron Matheson <cameron@instructure.com>
Product-Review: Cameron Matheson <cameron@instructure.com>
QA-Review: Matt Fairbourn <mfairbourn@instructure.com>
QA-Review: Robert Lamb <rlamb@instructure.com>
2015-04-03 06:52:25 +00:00
Aaron Cannon 51043391ae A11y: Allow access to TinyMCE Menubar via the keyboard shortcut
Fixes CNVS-19167

Test plan:
- Open a page with a rich content editor.
- Verify that you don't see the menubar.
- Press ALT+F9.
- Verify that the menubar appears and that focus is placed there.
- Leave the menubar, and press ALT+F8 to open the help dialog.
- Verify that the keyboard shortcut for the menubar is mentioned.
- Verify that in all other respects the editor looks and acts the same.
- Perform the above tests in all supported browsers.

Change-Id: I89cfac5c647ae1e20199e83eba8b8bc46d64075a
Reviewed-on: https://gerrit.instructure.com/51285
Reviewed-by: Aaron Cannon <acannon@instructure.com>
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Aaron Cannon <acannon@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
2015-04-02 20:24:10 +00:00
Matthew Berns 9a5b825835 Upgrade MediaElement.js to 2.16 to address video player accessibility issues
fixes CNVS-19179

note: tab only navigation on submission details modal not fully functional,
issue is unrelated and being handled in another commit

test plan:
- create an assignment with media submissions and submit an audio/video reply
- as the teacher, go to speedgrader and make some audio/video comments
- use keyboard nav to get to the student media submission in speedgrader
- you should be able to open it and use keyboard controls
- you should be able to navigate away from the video and return to it and still
  have access to the video controls
- go to screenreader gradebook and select the student and assignment
- use keyboard nav to get to the teacher comments, you should be able to expand
  the video and navigate the controls
- you should be able to navigate away from the video within the modal, then
  navigate back and still have access to the video controls
- click the minimize video link below it, it should collapse as expected and
  return to the "click here to view" text.

Change-Id: Id7df89a26199d3c88eb8eb06e753e36476ba732b
Reviewed-on: https://gerrit.instructure.com/51252
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Product-Review: Aaron Cannon <acannon@instructure.com>
2015-04-02 18:48:24 +00:00
Cameron Matheson 34a716b554 handle gradebook uploads in the background
closes CNVS-4238
fixes CNVS-3718

Test plan:
  Gradebook uploads should work in large courses (and small courses)

Change-Id: I9b8bb2d859ca1545d382679cc39788246006e4d4
Reviewed-on: https://gerrit.instructure.com/50590
Tested-by: Jenkins
Reviewed-by: Josh Simpson <jsimpson@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Josh Simpson <jsimpson@instructure.com>
2015-04-01 21:46:13 +00:00
Colleen Palmer b57d3dbb9c The to-do list check marks on the dashboard are super small in IE
fixes: CNVS-18313

Test Plan:

- Open up Canvas > make sure you have some to do items in dashboard
or course dashboard
- In IE the checkmark icons should now be bigger

Change-Id: I53f86413ee24b284b25ccc7ab70c30a06a1aecb3
Old: http://screencast.com/t/CyTDLfgrp
New: http://cl.ly/image/0t2W2T1x321i
Reviewed-on: https://gerrit.instructure.com/50951
Tested-by: Jenkins
Reviewed-by: Chris Hart <chart@instructure.com>
QA-Review: Derek Hansen <dhansen@instructure.com>
Product-Review: Colleen Palmer <colleen@instructure.com>
2015-04-01 17:21:00 +00:00
Clay Diffrient 5a05239c3e Upgrades react-modal to the latest version in bower
fixes PLAT-944

Test Plan:
  - Go to external apps
  - Add an app
  - The modal should appear
  - Press shift+tab
  - Focus should not leave the modal
  * Make sure the modal isn't borked in other places such as the
    course wizard and new files preview.

Change-Id: Ibeec9d6182086e4e542996e1c646bb49bef8fad0
Reviewed-on: https://gerrit.instructure.com/51312
Tested-by: Jenkins
Reviewed-by: Jonathan Featherstone <jfeatherstone@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
2015-04-01 16:51:11 +00:00
James Williams 566495a52f improve locked module item prerequisite fetching
test plan:
* create a module with two assignment or discussion items
* add them both as requirements
* require students to move in sequential order
* as a student, try to visit the second (locked) item
* the lock message should load smoothly
 (shouldn't show a link briefly and hide it)

closes #CNVS-19400

Change-Id: I2ef9946486371c95095be8516acb1ef381f000bd
Reviewed-on: https://gerrit.instructure.com/51306
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
2015-04-01 16:21:55 +00:00
Brad Horrocks 3afde74846 Google Drive speed grader previews
Ended up having to replace out encoding from the mime type when we save
the file

Fixes PLAT-980

Pre-conditions:
Set up Google Drive plugin on an account

Steps to Reproduce:
1. As a teacher, create an assignment with file uploads submission type
and publish it
2. Log in as a student and take the assignment, submitting a Google Doc
from the Google Doc tab.
3. Log back in as the teacher and head to the speedgrader to view the
student's submission.

Change-Id: I0a1663d09c44c43a484a3c87040a9502a42c2c97
Reviewed-on: https://gerrit.instructure.com/51299
Tested-by: Jenkins
Reviewed-by: Brad Humphrey <brad@instructure.com>
Product-Review: Brad Humphrey <brad@instructure.com>
QA-Review: Steven Shepherd <sshepherd@instructure.com>
2015-03-31 21:51:32 +00:00
Michael Nomitch 16131fb8de include react-tokeninput deps
fixes CNVS-19468

no test plan

Change-Id: Id10b6d4885d9b920098930227da03edb9f6b0bed
Reviewed-on: https://gerrit.instructure.com/50868
Reviewed-by: Simon Williams <simon@instructure.com>
Tested-by: Jenkins
Product-Review: Simon Williams <simon@instructure.com>
QA-Review: Mike Nomitch <mnomitch@instructure.com>
2015-03-30 21:52:28 +00:00
Simon Williams be458f05ae i18n: fix missing translation on rubric save dialog
fixes CNVS-19578

test plan:
- go to a course and create an assignment, with points possible
- add a rubric to the assignment
- mark the rubric for grading and have the rubric points add up to
  a different total than the assignment points possible
- save the rubric
- a dialog should pop up, asking if you want to change the assignment
  points possible or leave them different
- the dialog buttons "Change" and "Leave Different" should show up and
  work properly

Change-Id: Iebff1e7fd4793d259d1bf464bf4962fb9ced044d
Reviewed-on: https://gerrit.instructure.com/51144
Tested-by: Jenkins
Reviewed-by: Benjamin Porter <bporter@instructure.com>
QA-Review: Adam Stone <astone@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
2015-03-30 20:55:31 +00:00
Joel Hough 439e119492 delete facebook integration
fixes CNVS-18978

test plan
- regression test canvas, particularly:
notifications, and their preferences
communication channels
messages
user ouath (like linkedin and google docs use)
avatars
profile page
user services (like twitter)
feature settings
context roster

Change-Id: I2d53125f76c9daf912fdeabc621c90ac1bd070df
Reviewed-on: https://gerrit.instructure.com/49267
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
QA-Review: Steven Shepherd <sshepherd@instructure.com>
Product-Review: Joel Hough <joel@instructure.com>
2015-03-30 20:21:58 +00:00
Simon Williams 9b88791a15 hide buttons in rubric long description dialog when not editing
fixes CNVS-15284

test plan:
- create an assignment with a rubric
- as a teacher, edit the rubric on the assignment page and click on the
  "view long description" link
- the dialog should have 'update description' and 'cancel' buttons
- now stop editing the rubric and click the link
- the buttons should be hidden
- try reloading the page and viewing non-editing first, then editing
- try viewing the page as a student, and click the linke
- the buttons should be hidden

Change-Id: I35a340da41f5e2210b0fa81881029f277fd2e0d2
Reviewed-on: https://gerrit.instructure.com/50966
Tested-by: Jenkins
Reviewed-by: Mike Nomitch <mnomitch@instructure.com>
QA-Review: Adam Stone <astone@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
2015-03-30 19:49:02 +00:00
Dylan Ross debb7fc51b grades being erased by csv upload are highlighted
For grades that are chaning during csv upload,
the original grade and the new grade will be
displayed. New grades that are lower than the
current grade will be highlighted in red. If
an original grade was logged and a new grade
is not present, it will also be highlighted
red.

fixes CNVS-5197

scope
- Making sure the grades are highlighted in the
  correct scenario.

  Scenarios:
    - When a student's current grade is higher
      then the new grade

    - When a student's current grade has been
      logged, and the csv that's being uploaded
      doesn't have a grade for the student.

- Making sure the behavior of the new uploader
  is consistent with the old csv uploader. s

Change-Id: Id93413b07387f8caac184b3653c5adee282475e8
Reviewed-on: https://gerrit.instructure.com/50465
Tested-by: Jenkins
Reviewed-by: Josh Simpson <jsimpson@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Dylan Ross <dross@instructure.com>
2015-03-27 20:43:31 +00:00
Clay Diffrient ca8818b9e0 Modifies the way aria-expanded is handled with bs-dropdowns
This ensures that the aria-expanded is placed on the actual
button element which gets focused by screenreaders rather than
the "hidden" div parent.

closes CNVS-19238

Test Plan:
  - Go to /conversations
  - Screenreaders should read properly for the "All Courses" and
    "Inbox" dropdown/select menus.
  - They should indicated expanded/collapsed status properly.

Change-Id: Ic1388bb7e8146a88446a5b21f8b8d0b14f850e8f
Reviewed-on: https://gerrit.instructure.com/51046
Tested-by: Jenkins
Reviewed-by: Matt Berns <mberns@instructure.com>
Product-Review: Aaron Cannon <acannon@instructure.com>
Reviewed-by: Braden Anderson <braden@instructure.com>
QA-Review: Steven Shepherd <sshepherd@instructure.com>
Reviewed-by: Jonathan Featherstone <jfeatherstone@instructure.com>
2015-03-27 17:33:56 +00:00
Ryan Taylor f976fca795 Changes alt-text on quiz question edit load
Adds modification of image alt-text to the initial load of a quiz
question.  This prevents the alt-text from being wrong for a11y.

Closes CNVS-19235

Test Plan:
  - Edit a quiz question and observe that the first correct answer
    selection arrow has the "This is correct" alt-text and title.
  - Do the same ^^ for a multiple_answers question to confirm it works
    there.

Change-Id: I77e43199b5fd8f347f838beda2736bb7c3901a14
Reviewed-on: https://gerrit.instructure.com/51059
Tested-by: Jenkins
Reviewed-by: Cameron Sutter <csutter@instructure.com>
Product-Review: Cameron Sutter <csutter@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
2015-03-26 18:52:42 +00:00
Ethan Vizitei 5aa64a8e18 Upgrade Tinymce to 4.1.9
closes CNVS-19496

Minor upgrade from 4.1.7 to 4.1.9

TEST PLAN:
 - Use the tinymce editor in various contexts
 - there should be no significant behavior difference from 4.1.7
 - Styles should still look good

Change-Id: I5470efd61ab3bdc8cdece017ab5e0fce827d62d3
Reviewed-on: https://gerrit.instructure.com/50856
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
QA-Review: Matt Fairbourn <mfairbourn@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>
2015-03-26 18:17:59 +00:00
Brian Palmer 5e064c5d9b remove the js server error reporting
This data has proven to not be actionable or useful.

We are keeping in the window onerror handler, as the majority of
javascript errors are caused by third party scripts and integrations,
and we want canvas to continue operating when those occur. There was
code to try and detect third party errors based on script url, but that
hasn't worked in practice because the error url often ends up being on
the canvas domain, even when the error is in an external script.

I'll admit this feels a bit like turning a blind eye to potential
issues, and I'd love to revisit JS error reporting in the future, but
from a practical standpoint we just can't sift through these as they are
today, and they make building out a reasonable error reporting
infrastructure much more difficult.

Change-Id: Ib3f035358dd7e43c812724534c2fe80d9a5cc2c2
Reviewed-on: https://gerrit.instructure.com/50877
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Brian Palmer <brianp@instructure.com>
2015-03-25 22:44:11 +00:00
Brad Horrocks b4ec21af5d Google Drive speed grader preview
Fixes PLAT-929

Test plan

use beta :/
submit an assignment from google drive
make sure you can preview it in speed grader

Change-Id: I19545cde75a26cff34ff63506b69fba3d6a1363f
Reviewed-on: https://gerrit.instructure.com/50717
Tested-by: Jenkins
Reviewed-by: Nathan Mills <nathanm@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Brad Horrocks <bhorrocks@instructure.com>
2015-03-24 21:26:02 +00:00
Dylan Ross d83c033d97 allows user to add and update grading periods
closes CNVS-17851
closes CNVS-17852

test plan [create]
  a. simple add and save
    - click the '+ Add Grading Period' link
    - this should add a grading period form the the end of the
      grading period list
    - give it a name, a start date (before the end date) and
      end date
    - press the save button
    - the save button should now be disabled, and its text should be
      'Update'
    - a green flash message should say the grading period was saved

  b. start date before end date
    - add another grading period
    - give a tile and a start date that occurs after the end date
    - click save
    - and error message should say the start date must occur after the
      end date
    - fix the start date and save
    - error should be removed and the grading period should save

  c. removing an unsaved grading period
    - add a grading period
    - click the 'x' button.
    - the grading period should be removed from the dom

  d. save button shouldn't be enabled until all inputs are filled out,
     with valid date inputs

test plan[update]
  a. add some grading periods

  b. modify any field
    - after a field is changed, the update button should be blue,
      and it should be enabled IF 1) the data in the field and all
      other fields are valid and 2) none of the inputs are blank
      2) all fields have something in them. if 1) or 2) is not true,
      the update button should remain disabled.
    - press the update button
    - a green flash message should indicate the grading period was
      updated

test plan[both]
  a. ensure adding and updating grading periods is accessible /
     keyboard friendly

things to try:
 - try entering in words for dates like 'Today', 'Tomorrow',
  'A week from now'. these should be valid date inputs! When
  you enter a word for a date field, it should convert to the
  actual date when you lose focus.
 - try entering invalid input for a date, like 'potato'. As
  long as any of the date inputs are invalid, the 'update' or
  'save' button should be disabled. When you enter an invalid
  word for a date field, it should NOT convert to a date when
  you lose focus.

Change-Id: I3e00925d3dc363bca4bb87fa9d5198ab1a43a982
Reviewed-on: https://gerrit.instructure.com/49066
Tested-by: Jenkins
Reviewed-by: Spencer Olson <solson@instructure.com>
QA-Review: Robert Lamb <rlamb@instructure.com>
Product-Review: Dylan Ross <dross@instructure.com>
2015-03-24 17:30:48 +00:00
Jeremy Stanley 9d6e680241 refine file publish/unpublish preloading on modules page
include information for all file module items. don't preload
content_details for other module item types, since this
information was not being used

test plan:
 - have a large module with more than 100 items
   (one is linked from CNVS-19403)
 - ensure that files and other objects in modules following
   the large one can be published and unpublished via the
   broccoli cloud icon

fixes CNVS-19403

Change-Id: I8ea77cb352351b5f81e3e6e4e9b116e11b8a9138
Reviewed-on: https://gerrit.instructure.com/50806
Tested-by: Jenkins
Reviewed-by: James Williams  <jamesw@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
2015-03-24 17:18:54 +00:00
Aaron Cannon 54c3c3ba6a Accessibility: Make Flag Question Toggle focusable for keyboard users
Fixes CNVS-19263

Test Plan:
- Take a quiz as a student.
- Using the keyboard, flag a question to return to it later.
- Verify that the flag option is focusable.
- Verify that it is visually apparent when it has focus.
- Verify that it still appears as a checkbox to screen reader users.
- Verify that the visual appearance of the toggle has been uneffected by
  this patch.

Change-Id: I29e8baaee8429c31af80ea8b1ed1cd21ef6c1f9d
Reviewed-on: https://gerrit.instructure.com/50666
Tested-by: Jenkins
Reviewed-by: Brian Finney <bfinney@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Aaron Cannon <acannon@instructure.com>
2015-03-24 14:58:17 +00:00
Jacob Fugal 6e228b07fd use format specified by locale for $.timeString
fixes CNVS-19285

for some locales, tz's locale files may implicitly translate %l:%M%P
(12-hour time) to %k:%M (24-hour time) for us by having %l act like %k,
and by having %P return blank. however, for other locales the tz locale
file doesn't do that, but the canvas locale file does explicitly mention
that "tiny" time should be %k:%M (e.g. en-GB). in those cases, we should
honor the canvas locale file by using the %k:%M format string it
provides directly.

additionally, we (should) never rely on the space padding behavior of %l
or %k over %-l or %-k, so always use the latter even when the former is
specified.

test-plan:
 - select en-GB as the locale for your user
 - navigate to a page using $.timeString formatted times (e.g. the
   assignments page, in the due date column)
 - time should show up in 24-hour format, not 12-hour + am/pm

Change-Id: Ic4ab93d7d554a9843da32bb91d568758885b8cc4
Reviewed-on: https://gerrit.instructure.com/50515
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
2015-03-23 21:55:22 +00:00
Strand McCutchen 7e61b49e74 Don't allow second click to submit upload form.
Fixes CNVS-3718

When a user submits the gradebook upload form and double-clicks the
"save changes" button, it can cause server-side issues. To prevent
issues from occurring when a form is submitted twice, an event
listener disables the submit button the first time it is clicked.

Test plan:
1. Export the gradebook from a large course.
2. Change a grade on one or two of the assignments.
3. Import the gradebook.
4. Choose the file and click "upload data".
5. Review the changes and **double-click** "save changes."

As the button is disabled on the first click, the second click
should have no effect. No duplicate key value violates unique
constraint error should arise. Note that the button is disabled
for only one half a second.

See also: http://screencast.com/t/gNewKyi1

Change-Id: I274bd5cf4e316178e5e65de7d37ed6dee8e88735
Reviewed-on: https://gerrit.instructure.com/50263
Reviewed-by: Josh Simpson <jsimpson@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Tested-by: Jenkins
Product-Review: Strand McCutchen <smccutchen@instructure.com>
2015-03-23 21:08:08 +00:00
Clay Diffrient 5c5baf1113 Fix a11y with the ignore feature of the To Do list
fixes CNVS-19205

Test Plan:
   - Add a submission to a course that needs grading.
   - As a teacher of the course go to your dashboard
   - In the to do list, use a SR to access the menu that
     pops up with the Ignore "X".
   - You should be able to navigate it without problem
   - The same behavior should occur from the course
     home page.
   - For keyboard only, focus should go to the previous
     ignore "X" if it is there.
   - If a previous ignore "X" isn't available, it should
     go to the view calendar link.

Change-Id: I8e8297dc41ac8af69131ef748f25f169541c2958
Reviewed-on: https://gerrit.instructure.com/50278
Reviewed-by: Dan Minkevitch <dan@instructure.com>
Tested-by: Jenkins
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
2015-03-23 20:43:31 +00:00
Cody Cutrer 6aa62cfce6 update bigeasy/timezone to 0.0.40
updated with a new script - `script/update_timezone_js.sh v0.0.40`

Change-Id: Iac76910d97ed639798804a3024f7c10fe0821d9d
Reviewed-on: https://gerrit.instructure.com/50062
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Tested-by: Jenkins
QA-Review: August Thornton <august@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2015-03-23 19:30:48 +00:00
Jeremy Stanley bd3d187e5c fix adding external tool items to modules
test plan: ensure that, when adding external tool items to
  a module, and before refreshing the page,
   (1) external tool items use the "link" (chain link) icon, not
       the document icon;
   (2) completion requirements can be set on an external tool
       module item added to an empty module;
   (3) the item appears in the "External Tools" header in the
       add-requirement dialog

fixes CNVS-19398
fixes CNVS-19401

Change-Id: Ie16c017430b180ff64418f28a0c03fbfcde9eb49
Reviewed-on: https://gerrit.instructure.com/50669
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Reviewed-by: Nathan Mills <nathanm@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
2015-03-23 15:30:02 +00:00
Cameron Matheson 0313c94ba0 remove js_block in gradebook_uploads/show
Test plan:
  gradebook upload should still work

Change-Id: Ifc9ec49c40f76a9a0b5f0ec32b43497c26cf26ad
Reviewed-on: https://gerrit.instructure.com/50589
Tested-by: Jenkins
Reviewed-by: Strand McCutchen <smccutchen@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Cameron Matheson <cameron@instructure.com>
2015-03-21 05:15:00 +00:00
Ethan Vizitei 3f706051c4 Add the directionality plugin for tinymce
closes CNVS-19413

folks have been requesting RTL support.  This uses
tinymce's core plugin to provide it.  Unfortunately that adds
another two buttons to the toolbar.  :(

wraps the directionality plugin in an AMD wrapper, and adds it
to our default configuration

Also prevents canvas from stripping out the "dir" element
when HTML scrubbing

TEST PLAN:
 - go to any RCE
 - see the two new buttons for RTL and LTR
 - use them to change back and forth, make sure it doesn't break
 - ensure that our custom plugins don't interact badly with it. (I've
   done a cursory code read and some clicking around, but that would
   be my biggest concern)

Change-Id: I0884b65a99ec0e1db8c6abd82711a35799a062dd
Reviewed-on: https://gerrit.instructure.com/50672
QA-Review: August Thornton <august@instructure.com>
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>
2015-03-20 21:32:29 +00:00
Brad Horrocks 47ab951dca Fix popup issues in safari
opener isnt set on modals, just removed showModalDialog since there wasn't
a huge need for it.

Fixes PLAT-941

Make sure you can auth on the submissions page from firefox, chrome, IE, and safari

Change-Id: I3b32319347b80951122f5625749eb6de21921172
Reviewed-on: https://gerrit.instructure.com/50187
QA-Review: August Thornton <august@instructure.com>
Reviewed-by: Nathan Mills <nathanm@instructure.com>
Tested-by: Jenkins
Product-Review: Brad Horrocks <bhorrocks@instructure.com>
2015-03-19 17:01:02 +00:00