closes CNVS-13241
fix error where quiz moderate refresh button fails when no existing quiz
submissions listed.
test plan:
- create and publish a quiz
- don't have any submissions on it
- visit quiz moderate as instructor
- hit the refresh icon in top right of moderate table
- no errors should happen
- as student, take and submit quiz
- as instructor hit the refresh icon once quiz is submitted
- student row in table should be updated
Change-Id: Ifeb97a4b4094ea50ec38c529c721aa5f7467b693
Reviewed-on: https://gerrit.instructure.com/35342
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Reviewed-by: Derek DeVries <ddevries@instructure.com>
Product-Review: Derek DeVries <ddevries@instructure.com>
Adds a tiny ? icon next to discrimination index charts that, when
clicked, pops up a message dialog that reads a friendly helpful message
about the chart.
Closes CNVS-13200
TEST PLAN
---- ----
- create a quiz with MC/TF questions
- take it by enough students to render the discrimination index chart
- visit the ember stats page
- verify that you see a ? icon next to the DI chart, click it:
- you should see a dialog
- dialog should read the message specified in the JIRA ticket
- dialog should contain a link that takes you to the support article
- dialog should be accessible and closable just like the others
Change-Id: I95db931e65444d90c67a2dfb5d4fe29fdb026bed
Reviewed-on: https://gerrit.instructure.com/35321
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Derek DeVries <ddevries@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Derek DeVries <ddevries@instructure.com>
Test plan:
- As a teacher, you should be able to preview a quiz on fabulous
quizzes.
closes CNVS-12442
Change-Id: Iec3aa3735b47e4b71d3a92d7f0b479bc3bd3c475
Reviewed-on: https://gerrit.instructure.com/35206
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Derek DeVries <ddevries@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Stanley Stuart <stanley@instructure.com>
fixes CNVS-12188
When you are migrating a course and using voice over in safari it was
really confusing because when you selected 'copy course' and did a
course search or a course select, the results would be read we everything else on the
page. This fixes that.
Test Plan
As a teacher or someone who can run a migration
Given you are using safari with voice over
When you import content into a course
And you select the content type of 'Copy a Canvas Course'
And you search for a course by its name by using the field
Then voice over should tell you there are results
And when you use the arrow keys to select one of those results
Then only the selected result should be read by voice over
And the all of the form items should not be read
----------------------------------------------------
As a teacher or someone who can run a migration
Given you are using safari with voice over
When you import content into a course
And you select the content type of 'Copy a Canvas Course'
And you select a course in the course select dropdown
And when you use the arrow keys to select one of those results
Then only the selected result should be read by voice over
And the all of the form items should not be read
Change-Id: Id2c265d900ee9676094e221fa9dd38e8a61a843a
Reviewed-on: https://gerrit.instructure.com/35240
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
refs PS-1497
test plan:
1. valdate api documentation is updated with user_note
flag
2. create a new conversation with a single user adding
the user_note flag and make sure a faculty journal
entry is created for that user when the conversation
is created
3. create a new conversation with multiple student users
with the user_note flag and validate that faculty journal
entries were created for those student users
4. create a new conversation with non student users and
the user_note flag and validate faculty journal entries
were not created for those users
Change-Id: I177402c24bee15c8bc9cc56538d6769b8730b4ad
Reviewed-on: https://gerrit.instructure.com/35218
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
Product-Review: Adam Phillipps <adam@instructure.com>
QA-Review: Adam Phillipps <adam@instructure.com>
fixes CNVS-13179
As a teacher or admin
Given you have a module
And are on the modules page
Edit a module
Then you should see 'Lock module until a given date' is capitalized
And you should see 'Students must move through ...' is capitalized
Change-Id: Icfab7c67418baa65dd0b8b4b20fb28bc5fb8b3a4
Reviewed-on: https://gerrit.instructure.com/35246
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
they're not relevant to *a* User, and they're needed by things other than
User.reflections.
test plan:
n/a, just refactoring to a (hopefully) better spot. existing and new specs
should cover all of this
Change-Id: I66ab5314582113ac549af5662bcf08a8ca5df580
Reviewed-on: https://gerrit.instructure.com/35082
Reviewed-by: Dave Donahue <ddonahue@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Marc LeGendre <marc@instructure.com>
QA-Review: Marc LeGendre <marc@instructure.com>
refs CNVS-3134
test plan
- report extra text should be translated and work
Change-Id: Id4489f386c35f4df999e993306d64a7563573773
Reviewed-on: https://gerrit.instructure.com/34685
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Dave Jungst <dave@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
fixes CNVS-12474, CNVS-12477, CNVS-12478
this commit fleshes out the API endpoints for polling sessions and
submissions, and solidifies the other polling endpoints.
Test plan
- Full tests on the following endpoints:
- Polls are the basic data model of the polling app. They can take a
question attribute and a description attribute. They are only
creatable and modifiable by teachers.
- GET /api/v1/polls (index action)
- POST /api/v1/polls (create action)
- GET /api/v1/polls/:id (show action)
- PUT /api/v1/polls/:id (update action)
- DELETE /api/v1/polls/:id (destroy action)
- Poll choices belong to polls. They consist of the particular answers
a submitter can choose when participating in a poll session. They
have attributes of text (the answer text), their associated poll,
and an 'is_correct' boolean attribute. The 'is_correct' attribute
show not be accessible by students. Poll choices are only creatable
and modifiable by the creator of the poll.
- GET /api/v1/polls/:poll_id/poll_choices (index action)
- POST /api/v1/polls/:poll_id/poll_choices (create action)
- GET /api/v1/polls/:poll_id/poll_choices/:id (show action)
- PUT /api/v1/polls/:poll_id/poll_choices/:id (update action)
- DELETE /api/v1/polls/:poll_id/poll_choices/:id (destroy action)
- Poll sessions are for publishing a poll so that it can accept
submissions. They should only be createable / modifiable by
teachers. Only students that are enrolled in the associated course
of the poll session should be allowed to view them.
The show action of a poll session acts differently for a teacher.
They are able to see the results of the voting that has taken place
by students since the session was published.
- GET /api/v1/polls/:poll_id/poll_sessions (index action)
- POST /api/v1/polls/:poll_id/poll_sessions (create action)
- GET /api/v1/polls/:poll_id/poll_sessions/:id (show action)
- PUT /api/v1/polls/:poll_id/poll_sessions/:id (update action)
- DELETE /api/v1/polls/:poll_id/poll_sessions/:id (destroy action)
- GET /api/v1/polls/:poll_id/poll_sessions/:id/publish (publish action)
- GET /api/v1/polls/:poll_id/poll_sessions/:id/close (close action)
- Poll submissions are for submitting an answer for a particular poll
session. A student should only be allowed to submit a poll choice
for a session they're able to view, and they can only submit one
poll choice per poll session.
- GET /api/v1/polls/:poll_id/poll_sessions/:poll_session_id/poll_submissions/:id (show action)
- POST /api/v1/polls/:poll_id/poll_sessions/:poll_session_id/poll_submissions (create action)
Change-Id: Ifcfd72ec30597e37fc54c687fb7d61a644d7348c
Reviewed-on: https://gerrit.instructure.com/34605
Reviewed-by: Derek DeVries <ddevries@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Josh Simpson <jsimpson@instructure.com>
fixes CNVS-13259
test plan
- api docs should generate
Change-Id: I9d0a4cc5da86ef279ca4a4e30abbf43a70031788
Reviewed-on: https://gerrit.instructure.com/35349
Reviewed-by: Nick Cloward <ncloward@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
fixes CNVS-13180
When you edit a module item and click to add an unlocked_at date it was
acting a little weird. It would "persist" after you added an
unlocked_at date when editing another unlocked_at date in a different
module as well as it would loose the previously selected unlocked_at
date when checking/unchecking the checkbox. This fixes all of that.
Test Plan
-------------------
As a teacher
Given you have 2 modules that don't have a unlocked_at due date set
And you are on the modules page
When you click the gear icon and edit a module
And you check the 'lock module until a given date' checkbox
And you select an unlocked_at date
And you uncheck the 'lock module until a given date' checkbox
And you check 'lock module until a given date' again
Then you should see the unlocked_at date field should have the
previously selected due date. It should not be 'lost'
---------------------------------
Given you have 2 modules that don't have a unlocked_at due date set
And you are on the modules page
When you click the gear icon and edit a module
And you check the 'lock module until a given date' checkbox
And you close the module edit dialog window
And you edit a different module with no unlocked_at due date set
Then you should see that module's 'lock module until a given date'
checkbox is unchecked
And you don't see the 'unlocked_at' field.
---------------------------------------------------
Given you have a module with a due date
And you are on the modules page
When you click the gear icon and edit that module
Then you should see the 'lock module until a given date' checkbox
checked
And there should be a unlocked_at date set in the field
Change-Id: Ic70ebefaa2cadb684266cdd442b98751a6739cf7
Reviewed-on: https://gerrit.instructure.com/35278
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
fixes CNVS-12449
test plan:
- as a teacher
- enable fabulous quizzes
- enroll a few students in the course
- there is a new quizzes api attribute called 'quiz_extensions_url'
- check out the jsonapi quizzes api to make sure this attribute only shows
up for teachers (and not students)
- create a quiz with no time limit and unlimited attempts
- visit the quiz moderate page
- click the "edit" icon for a student
- the modal dialog should only allow you to "manually unlock"
- create a quiz with a time limit
- visit the quiz moderate page
- click the "edit" icon for a student
- the modal dialog should only allow you to "manually unlock"
- the modal dialog should only allow you to add "extra time"
- create a quiz with a limited number of attempts (1 or more)
- visit the quiz moderate page
- click the "edit" icon for a student
- the modal dialog should only allow you to "manually unlock"
- the modal dialog should only allow you to add "extra attempts"
- create a quiz with both a time limit and a limited number of attempts
- visit the quiz moderate page
- click the "edit" icon for a student
- the modal dialog should only allow you to "manually unlock"
- the modal dialog should only allow you to add "extra attempts"
- the modal dialog should only allow you to add "extra time"
- change the settings for extra attempts, extra time, and manually unlock
- hit submit
- it should save these new settings if you reopen the dialog
- it should show the extra minutes allowed on the attempt under the username
- it should add the extra attempts to the 'attempts left' column value
Change-Id: I0e10942ff7a3a80cec200468216ba0641decee2c
Reviewed-on: https://gerrit.instructure.com/35089
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Reviewed-by: Ahmad Amireh <ahmad@instructure.com>
Product-Review: Derek DeVries <ddevries@instructure.com>
refs: CNVS-12590
This just adds the reset event types to the documentation
for the api endpoint.
Test Plan: None, documentation change.
Change-Id: I119850466c58b61f785a74542de4bad02a743654
Reviewed-on: https://gerrit.instructure.com/35327
QA-Review: August Thornton <august@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Rob Orton <rob@instructure.com>
Product-Review: Nick Cloward <ncloward@instructure.com>
fixes CNVS-13178
There was no aria label on the text field. There is now
Test Plan
---------------
As a teacher
Given your course has a module
And you are editing that module from the modules page
And you are using a screen reader
When you check the 'lock module until a given date'
And you tab to the 'unlock_at' text field
Then it should read you the label for that text field
Change-Id: I4cce9b038d68917192205b908c1dee0ce6041e3c
Reviewed-on: https://gerrit.instructure.com/35282
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
fixes PS-1560
fixes CNVS-13221
test plan:
1. create a calendar event from the ui dialog
without a location
2. vaidate once the event is created and you click
on it that the location is not shown as null
Change-Id: Ib2946f62fd570d4f8f9bd097e04630fce26e154c
Reviewed-on: https://gerrit.instructure.com/35261
Reviewed-by: Dave Jungst <dave@instructure.com>
QA-Review: Adam Phillipps <adam@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Jake Sorce <jake@instructure.com>
Render question statistics for those question types similar to Essay.
File Upload should include a link to download all submissions too.
QuizSerializer was updated to include the submission ZIP download URL.
Closes CNVS-12988
TEST PLAN
---- ----
- using your data set from https://gerrit.instructure.com/#/c/35112/
- verify that the score chart renders with the student scores
- verify that you get a link to Download All Files for FUpload
questions
- verify that the "Attempts: x out of Y" reads correctly based on
the "responses" field and the total participant count,
respectively
- tooltips and chart interactivity like that for Essay
Change-Id: I4a77631491b169106e2eb677b21c1f30f3ca9440
Reviewed-on: https://gerrit.instructure.com/35113
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jason Madsen <jmadsen@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
Add support for generating stats for File Upload and Formula questions.
Similar to Essay metrics but adjusted to calculate properly.
Closes CNVS-13169
TEST PLAN
---- ----
- create a quiz with those question types
- take the quiz:
- answer both question types by at least one student, but leave it
unanswered by another so we can test the "responses" metric
- test the stats:
GET /api/v1/courses/:course_id/quizzes/:quiz_id/statistics
- the "responses" metric should count the number of students who
provided an answer
- the "graded" metric should read the number of students whose
answers you've graded so far
- the "full_credit" one should read 0 until you grade it and give
them a score higher than, or equal to, the maximum points possible
- "point_distribution" is similar to that of Essays; it is an array
of objects that track every score you gave the students and the
number of students who received those scores
- grade the scores and re-test to verify the metrics update correctly
- verify that the API documentation is updated to include those
question types
PS: the "responses" field will read "the number of students who uploaded
a file" for File Upload, and "the number of students who wrote any
answer" for Formula.
Change-Id: I890eafe018e000eef88de782bd7e86b5259df5d5
Reviewed-on: https://gerrit.instructure.com/35112
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jason Madsen <jmadsen@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
fixes: CNVS-12590
Adds a course content event type to the course audit logs.
Test Case:
- Create a course.
- Reset its content.
- The event and its data should be reflected for both
the source course and new course from resetting the
course data.
Change-Id: I473d2e237491d890c20aace57f9c7675d70d22c7
Reviewed-on: https://gerrit.instructure.com/33726
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Nick Cloward <ncloward@instructure.com>
test plan:
- tests pass
Change-Id: I56c1c7dfa3703d4f04c0b758d7723e85dbf9ad7e
Reviewed-on: https://gerrit.instructure.com/34910
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Mike Nomitch <mnomitch@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
closes CNVS-12609
test plan:
- make sure rake i18n:generate still works
- basic regression of i18n in canvas
Change-Id: I882c7b6f197d65aa673a22225ae6a87ee4431aa0
Reviewed-on: https://gerrit.instructure.com/33760
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jon Jensen <jon@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
fixes CNVS-13237
test plan:
- generate the documentation for the api
- the description for the endpoint to set extensions has been corrected
- the copyright block is no longer in the docs
- user_id is now correctly described as 'Required' instead of 'Optional'
- The attributes of the QuizExtension object description have been changed
to not show the extend_from_now and extend_from_end_at, and instead
reflect the actual object returned when you make updates - which instead
includes the end_at date
- fixed description of extra_attempts to be more clear
- The example response should now correctly show quiz_extensions and not
quiz_submissions
- updated the description of extra_time in quiz submissions api to correctly
describe it in 'minutes' instead of 'seconds'
- I have updated the behavior of the manually_locked attribute.
- Sending 1, '1', true, or 'true' will result in the attribute being
set to true. Every other value will set the value to false.
Change-Id: Id6071632a8eb9d01d61cf21287955fb5e44c2f3f
Reviewed-on: https://gerrit.instructure.com/35305
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Reviewed-by: Josh Simpson <jsimpson@instructure.com>
Product-Review: Derek DeVries <ddevries@instructure.com>
closes CNVS-12915
display estimated running time, or countdown for timed quizzes, and
clock icon within quiz moderate display when a quiz submission has
been started, but not finished. also auto refreshes the moderate data
after 1 minute, and then again every 3 minutes after that.
test plan:
- enable ember quizzes
- scenario 1
- as a student start, but do not complete a non-timed quiz
- as instructor navigate to ember quiz moderate for the quiz
- time column should display clock icon and estimated time
- estimated time should update, displaying time student has been
taking the quiz
- as student complete and submit the quiz
- as instructor refresh the page, or click refresh icon
- student row in moderate page should update, remove icon
- scenario 2
- repeat scenario 1, but for a timed quiz
- in moderate table, time should update
- time should be counting down with students remaining time
- if time reaches 0, it should:
- stop displaying clock icon
- stop counting down
- display amount of time taken on the timed quiz
- for due_at and locked_at quizzes, behavior should mimic
scenario 1. clock stopping for due at, lock at will be addressed
in CNVS-13151
Change-Id: If4b50f74a895f29ba89a56cecb04dca44ecc6c6f
Reviewed-on: https://gerrit.instructure.com/34845
Reviewed-by: Derek DeVries <ddevries@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Product-Review: Jason Madsen <jmadsen@instructure.com>
settings[file_url] was duplicated, as was source_course_id
Fixes SIS-279
Change-Id: Ied36085cfdb311c666a0d8c792ab475aa0452630
Reviewed-on: https://gerrit.instructure.com/34981
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Eric Adams <eadams@instructure.com>
Product-Review: Eric Adams <eadams@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
quiz submissions can have their time limit or number of attempts extended.
we can extend both existing quiz submissions, and also those that don't exist
yet. adding this functionality to the existing quiz submissions api would
muddle up responsibilities. So instead we post all extensions to a the
quiz extensions api which is specifically meant for adding extensions to a
submission whether it has been started yet or not.
Also add 'manually_unlocked' to the quiz submissions api. this field lets us
know if a student can take a quiz after it has been locked for everyone else.
fixes CNVS-13165
test plan
- There is a new attribute added to quiz_submissions objects in the api
called 'manually_unlocked'. This attribute will now show up when returning
results back from
- GET /api/v1/courses/:course_id/quizzes/:quiz_id/submissions (index)
- GET /api/v1/courses/:course_id/quizzes/:quiz_id/submissions/:id (show)
- There is a new endpoint to create quiz extensions. This should work to
create quiz extensions for users that both have existing quiz submissions
started, and users who have not yet started a quiz:
- POST /api/v1/courses/:course_id/quizzes/:quiz_id/extensions (create)
- Check Permissions on the new quiz extension endpoint. Only teachers should
be able to extend the quizzes.
- Check that all the documentation looks okay for quiz extensions.
Change-Id: Ie23113c1f30e139a1e376475fb35a2cf3ce0212c
Reviewed-on: https://gerrit.instructure.com/35111
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ahmad Amireh <ahmad@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Derek DeVries <ddevries@instructure.com>
fixes CNVS-13191
Test plan:
* Edit a wiki page in a course with some files that are supported by
scribd or canvadocs, and some files that aren't
* add those files to the page
* the previewable file types should have a working preview icon, the
unsupported file types shouldn't disappoint you with a non-working
preview icon
Change-Id: I8d7cce475a33b1b71c1d60f1e20ff256c54a7869
Reviewed-on: https://gerrit.instructure.com/35209
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-12161
test plan
- regression test CAS login and logout
- logout should now include service parameter
Change-Id: Ieab7d53021eaf8697bf1636a438a6da4556df905
Reviewed-on: https://gerrit.instructure.com/33498
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
fixes CNVS-13044
Previously we were comparing to a specific character code that wasn’t
subject to i18n so when the translators got into the translations the
shortcuts would have been all messed up. Now we’re comparing strings
instead so when the key changes so does what we’re looking for. To make
this a bit easier in the future I’ve started extracting some of the
key checking logic so we can easily apply this elsewhere.
Test Plan:
- As a teacher navigate to GB2
- Use the keyboard shortcuts
- They should still work
Change-Id: If23046c568d7a09b386c7ac8e1176192d2d96061
Reviewed-on: https://gerrit.instructure.com/35002
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Mike Nomitch <mnomitch@instructure.com>
Reviewed-by: Liz Abinante <labinante@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
this is a simple feature flag that will let us
toggle between:
a. trying html5 first then falling back to flash
if not enabled or trying flash first.
b. trying flash first, then falling back to html5
if unavailable.
test plan:
1. with feature flag not turned on, watch a video.
it should use flash to play it.
2. turn on the feature flag for domain_root_account
3. watch a video, it should use html5
Change-Id: I08aab043f89d049863dcbbd49aa1c4fcd8dc2895
Reviewed-on: https://gerrit.instructure.com/34248
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: David Julia <djulia@pivotallabs.com>
Reviewed-by: Paul Hinze <paulh@instructure.com>
Product-Review: Ben Hutchings <benh@instructure.com>
QA-Review: Steven Shepherd <sshepherd@instructure.com>
also,make subtitle text bigger when in fullscreen
fixes: CNVS-12293
videos should play back like they used to but this commit
switches back to using html5 by default instead of flash
because that is the only way that subtitles will show up in
fullscreen mode
test plan:
in all the browsers we support (in particular: ie10, android
and mobile safari):
* try playing a video that you have uploaded a subtitle track for.
* the playback should work
* the subtitles should show up when in normal-sized mode
* press the fullscreen button, the video should go into
fullscreen correctly and still show the subtitles
(and the subtitles should be bigger in fullscreen mode)
Change-Id: I5b77f58133fb9081909771d50bb8f0a91db23d63
Reviewed-on: https://gerrit.instructure.com/34016
QA-Review: Clare Strong <clare@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Steven Shepherd <sshepherd@instructure.com>
Reviewed-by: Paul Hinze <paulh@instructure.com>
Product-Review: Ben Hutchings <benh@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
test plan:
* create a user
* create another user on another shard
* upload a previewable file (such as an image) for a user
* merge the user with the file into the other user
* after jobs have run, the file should show up in the
final user's folder, and should still be previewable
fixes #CNVS-13059
Change-Id: I20eec5d8b9dac06a72dd3f7a7018cb5034426080
Reviewed-on: https://gerrit.instructure.com/35230
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
fixes #CNVS-12636
If you go to the modules page with draft state enabled and update the
title of a module item, when you hover over that text the title doesn't
update. It should.
Test Plan
As a user that can edit a module item
Given draft state is enabled
Given you have a module with module items in it
When you go to the modules page
And you edit a module items title
And you hover over the module item's title with your mouse
Then you should see the title correctly updates without having to
refresh the page.
And you should feel happy inside.
Change-Id: Ic3a90f09d8af430cbb3c751aa4770f6018b0d169
Reviewed-on: https://gerrit.instructure.com/34747
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
fixes CNVS-13113
test plan:
* enable Individual Gradebook View
* enable Learning Mastery Gradebook
* open SRGB within a course
* verify that you have an Outcomes tab presented
* disable Learning Mastery Gradebook
* open your browser's traffic log
* refresh SRGB
* verify that the tabs are hidden
* verify that no outcome-related API requests are made
Change-Id: Id432dec32c5f508ed10c6ae1beab84bd4da61588
Reviewed-on: https://gerrit.instructure.com/35163
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Product-Review: Braden Anderson <banderson@instructure.com>
refs CNVS-13024
Setting wasn't properly being initialized as unsharded because
it was loading before Switchman. The reason we need Setting before
switchman is just for yaml loading, so split that into its own
class.
Change-Id: I5456e103cb216dba2d5af4e9c20a697b468c923b
Reviewed-on: https://gerrit.instructure.com/35043
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
also clarify some facebook plugin config steps
fixes CNVS-13203
test plan:
- go to <canvas>/facebook/ and make sure the page renders
Change-Id: I5efdcbd16c497533e5aeee8b29ee59b57c8deb98
Reviewed-on: https://gerrit.instructure.com/35174
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Anna Koalenz <akoalenz@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
Add support to display the "No Answer" and "Other Answers" (FIMB-only)
in the answer bar chart for those question types, and make the bars
visible for answers with 0% responses.
Totally unrelated change: now using the icons Blake made for us.
Closes CNVS-13033, CNVS-13071, CNVS-12961
TEST PLAN
---- ----
- create a quiz with FIMB and MDropdowns questions
- take the quiz by a number of students and type in different answers
- make an API request to stats:
GET /api/v1/courses/:course_id/quizzes/:quiz_id/statistics
- verify you get the documented metrics and they have the proper
values
- visit the ember quizzes page and verify that:
- the charts are still working
- the bar chart now displays a bar for "No Answer" responses and
another bar for "Other answers" if your students provided any
(only applies to FIMB questions)
- new bar/tooltip improvement: answers that have 0% now take up at
least 5 pixels of the chart so that you can hover over them and get
the tooltip to show, earlier it was really difficult because they
were too tiny
Change-Id: Ie9a7ea6bb539fa9d120679997d4a20737f8ad03c
Reviewed-on: https://gerrit.instructure.com/34953
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Reviewed-by: Derek DeVries <ddevries@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
Closes CNVS-13161
TEST PLAN
---- ----
- create a quiz with multiple-dropdown questions
- take the quiz by a number of students and type in different answers
- make an API request to stats:
GET /api/v1/courses/:course_id/quizzes/:quiz_id/statistics
- verify you get the documented metrics and they have the proper
values
- visit the ember quizzes page and verify that:
- the charts are still working
Change-Id: I37ef48f22c3c16170034b6dd887b40ff20da4af5
Reviewed-on: https://gerrit.instructure.com/35104
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Reviewed-by: Derek DeVries <ddevries@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
Support for FIMB question statistics in the CanvasQuizStatistics gem.
Closes CNVS-13160
TEST PLAN
---- ----
- create a quiz with FIMB questions
- take the quiz by a number of students and type in different answers
- make an API request to stats:
GET /api/v1/courses/:course_id/quizzes/:quiz_id/statistics
- verify you get the documented metrics and they have the proper
values
- visit the ember quizzes page and verify that:
- the charts are still working
Change-Id: I2d82c708614c41e222aa24d65de64555d8056a9a
Reviewed-on: https://gerrit.instructure.com/35101
Reviewed-by: Jason Madsen <jmadsen@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
Closes CNVS-13159
TEST PLAN
---- ----
Only code changes. Test plan would be the same as
https://gerrit.instructure.com/#/c/35096/
Change-Id: I0f26a3df1278d555237c803cebbe80cde1559065
Reviewed-on: https://gerrit.instructure.com/35097
Reviewed-by: Jason Madsen <jmadsen@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
This patch makes it so that if you want to get the new stats from the
back-end, you'll have to explicitly pass a "legacy=false" parameter to
the report generator routine. Old code will use the old output, new code
will use the CanvasQuizStatistics gem for stats.
Closes CNVS-13198
TEST PLAN
---- ----
- create a quiz with a bunch of questions and take it by multiple
students
- visit the ERB stats page at
/courses/:course_id/quizzes/:quiz_id/statistics
- verify that the page renders and looks just like how it was before
the work on its ember counterpart
- visit the ember stats page at
/courses/:course_id/quizzes/fabulous_quizzes#:quiz_id/statistics
- verify the ember page is still functional
Change-Id: I0a9e8d69eacc64a8727f238fc0c2e2acd44c0451
Reviewed-on: https://gerrit.instructure.com/35167
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Reviewed-by: Derek DeVries <ddevries@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
fixes CNVS-12784
test plan:
* in srgb
* on an assignment with no submissions
- open the curve grades dialog
- click 'Curve Grades'
> a little error box should show up
> the page should not blow up
* in gb2
* do the same thing as above
> it should show the error box and not blow up
Change-Id: I8a60d37bcc424746497313f766a381be3a6b175a
Reviewed-on: https://gerrit.instructure.com/34803
Reviewed-by: Liz Abinante <labinante@instructure.com>
Product-Review: Cameron Sutter <csutter@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
test plan:
* qti migration regressions
Change-Id: I53587880a591d9ea70e7039d4216770cb1772880
Reviewed-on: https://gerrit.instructure.com/34407
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
fixes CNVS-12087
test plan:
- open speedgrader with some submissions
- in the student selector dropdown box:
> students without submissions should have no icon and be grayed out
> students with ungraded submissions should have an orange dot
- grade and ungrade a few submissions
> graded students should have a green check mark
> ungraded students should have an orange dot
> students with resubmissions should be the same
as students with ungraded submissions
Change-Id: Iaf60465c48e657c9154860561389d00c0f51eaa4
Reviewed-on: https://gerrit.instructure.com/34499
Reviewed-by: Mike Nomitch <mnomitch@instructure.com>
Product-Review: Cameron Sutter <csutter@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
also adds some new substitutions
fixes PLAT-497 PLAT-496
test-plan:
all current variable substitutions should work
new substitition: '$Canvas.account.name' should work as well
Change-Id: I9b4e71f816d777e17d3369bb907c7b72209da770
Reviewed-on: https://gerrit.instructure.com/34546
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Brad Humphrey <brad@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Product-Review: Nathan Mills <nathanm@instructure.com>