Change-Id: I124dfbe44fb5f0fec4a9c8b87786535a5f74fc87
Reviewed-on: https://gerrit.instructure.com/52209
Tested-by: Jenkins
Reviewed-by: Jason Madsen <jmadsen@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
test plan:
* import a package with a page into a course
* edit the page
* re-import the package
* the revision history should not show the user
who last edited it as the author of the latest
revision (caused by the re-import)
closes #CNVS-19724
Change-Id: I525fe59295b8d9d266387045ef0f98a3d0154651
Reviewed-on: https://gerrit.instructure.com/52108
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
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>
fixes CNVS-18702
test plan:
1. On the Individual View Gradebook screen, navigate to the
"Set default grade" button using only the keyboard.
2. Enter a score and tab to the "Set Default Grade" button
at the bottom of the modal.
3. Press Enter. The focus should return to the "Set default
grade" button.
Change-Id: I4fa3de8721f339a5e2bb5e63cbc2feed7ea8b4cf
Reviewed-on: https://gerrit.instructure.com/51486
Tested-by: Jenkins
QA-Review: Nathan Rogowski <nathan@instructure.com>
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Strand McCutchen <smccutchen@instructure.com>
These are keys we don't want going to transifex (and actually in this specific
case break loading the yml into transifex, since rails uses symbols instead of
strings for these)
Change-Id: Ife2eb01998c8173f180fe9158525b2026964c7c5
Reviewed-on: https://gerrit.instructure.com/52126
Reviewed-by: Jon Jensen <jon@instructure.com>
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
Tested-by: Jenkins
This is very handy (and is used in a forth-coming patchset), and
provides symmetry with the rubric_criterion= method.
Refs CNVS-18658
Test Plan:
- From a rails console, create a learning outcome object
- Set some rubric_criterion data (you can use rubric_criterion=)
- Check that rubric_criterion() returns that data to you
- Check that it is the same data as returned by
data[:rubric_criterion]
Change-Id: I5677f33604cb7965c7b7113f58dd97472f7dd9fb
Reviewed-on: https://gerrit.instructure.com/50282
Tested-by: Jenkins
Reviewed-by: Mike Nomitch <mnomitch@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
we can't detect when a method is added from a module, so make immediate
detection work the same way
Change-Id: I8558e1fccf14a62d21efcc3108a1fca34f0c2ac4
Reviewed-on: https://gerrit.instructure.com/51799
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
Tested-by: Jenkins
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
closes CNVS-19046
Marketing is moving to take over the FFT form, which means
the user creation will occur via API, but they'll still need
to get the self-registration style emails to get passwords right
and such.
This provides a parameter to do so. It also pulls out a handful
of lines from the users_controller all related to how and which
notifications get sent, and moves them into a policy object, which
has some predicate methods for the controller to make decisions off
of, and also does the notification dispatching.
Change-Id: I0513062aedf4258b7d9f51a46b1d8e42b2a2582a
Reviewed-on: https://gerrit.instructure.com/51608
Tested-by: Jenkins
Reviewed-by: Jacob Fugal <jacob@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>
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>
Fixes CNVS-14107
Test plan:
- View a question bank with questions.
- Using a screen reader, navigate to each question title.
- Validate that it is read as a heading.
- Verify that you can navigate to that heading via the hotkey that takes you
specifically to level 2 headings.
Change-Id: I65c8ed136177b2a94a0a951d99e769c5b65d3667
Reviewed-on: https://gerrit.instructure.com/51791
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Tested-by: Jenkins
QA-Review: Nathan Rogowski <nathan@instructure.com>
Product-Review: Aaron Cannon <acannon@instructure.com>
test plan:
* import the package referenced in the ticket
* should be successful
fixes #CNVS-19788
Change-Id: I7b3bd193e9467a63e1f328bc3fcab321990d5462
Reviewed-on: https://gerrit.instructure.com/52066
Tested-by: Jenkins
Reviewed-by: Nathan Mills <nathanm@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
closes CNVS-6016
No more error reports! (soon)
this commit builds up sentry integration through the new
Canvas::Errors module, along with other things that need
to happen on every exception. ErrorReports
should now get pushed towards just being used for representing
a complaint a user filed via the get help form.
I fixed about half the things that got linted as well
while I was in here, but because this touches to much
I fear divergence from tackling too many (I think we
can safely say it's "better than we found it")
I left a lot of the infrastructure for error reports in place
until other commits for plugins can be merged
TEST PLAN:
1) setup your raven.yml config file with the dsn for our
sentry install
2) force an error to happen in a request response cycle.
3) see the error in sentry
4) force an error to happen in a job
5) see the error in sentry
6) statsd increments shoudl still fire
7) for the moment, an error report should still get created.
Change-Id: I5a9dc7214598f8d5083451fd15f0423f8f939034
Reviewed-on: https://gerrit.instructure.com/51621
Reviewed-by: Simon Williams <simon@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>
Tested-by: Jenkins
QA-Review: August Thornton <august@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>
fixes the sad spec
"chooses the student with turnitin data to represent"
in spec/models/assignment_spec.rb
turns out every submission has "not null" turnitin data
before, this spec seemed to pass/fail
randomly based on how the users were ordered
Change-Id: I0c2751ef72b022409020de535a19b0fd8b1801f7
Reviewed-on: https://gerrit.instructure.com/51828
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
so it doesn't have to load the base module if it's not used
Change-Id: I6a2c1ac169b1ac4a506dcdfae8b8e14eae1098f5
Reviewed-on: https://gerrit.instructure.com/51930
Tested-by: Jenkins
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
DOCS CHANGE ONLY, NO TEST PLAN
Change-Id: Iac0b289b4e7b7a553d959bd72f5e0e313a00c657
Reviewed-on: https://gerrit.instructure.com/51443
Tested-by: Jenkins
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>
QA-Review: Ethan Vizitei <evizitei@instructure.com>
test plan:
* create a regular assignment, and a quiz
* keep them unpublished
* copy them to another course
* publish the quiz and assignment
* enroll a student and submit to the
assignment and the quiz
* delete the assignment and quiz
* re-copy the assignment and quiz over
from the original course
* should restore them to a published state
closes #CNVS-14510
Change-Id: I4a97602882fdc2f88427892d92526bc21c57e0b2
Reviewed-on: https://gerrit.instructure.com/51862
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
Change-Id: I5e1cea86576ae1787b3c837d4594d0a7c3e687d8
Reviewed-on: https://gerrit.instructure.com/51991
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Dana Danger <dana@instructure.com>
closes CNVS-19751
By default, this body is only 20px, so right clicking in the editor
below that point doesn't let you paste.
TEST PLAN:
1) create a new assignment (or some other empty tinymce)
2) right click *more* than 20px from the top
3) you should be able to paste
Change-Id: I11618abe859ea34b582c181eef1a847fa013481e
Reviewed-on: https://gerrit.instructure.com/51944
Tested-by: Jenkins
Reviewed-by: Matthew Wheeler <mwheeler@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>
test plan:
* create a group for a course
* add an editor_button configured LTI tool to
the course or account (such as youtube embed)
* create or edit rce content in the group
(such as a discussion topic or wiki page)
* the editor button should show up and function
closes #CNVS-2866
Change-Id: Icad2258689565046d5a40d346e1968e8dad6cbdb
Reviewed-on: https://gerrit.instructure.com/51927
Tested-by: Jenkins
Reviewed-by: Nathan Mills <nathanm@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
lets rlint only run with local changeset unless you specify "--heavy"
Also checks for whether you actually touched a line
or not before deciding an INFO comment is relevant
Change-Id: I4a960c72644dfc46aca7a51d04321711cef0850c
Reviewed-on: https://gerrit.instructure.com/51992
Reviewed-by: Jon Jensen <jon@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>
QA-Review: Ethan Vizitei <evizitei@instructure.com>
Tested-by: Ethan Vizitei <evizitei@instructure.com>
on jenkins this was taking up to 9 minutes.
By removing the file I/O and batching
the georgich commits, this ran locally on my
sentry patch set in 15 seconds.
Change-Id: I23b0df9b9396829de4b8ff084f4f92df6e698da2
Reviewed-on: https://gerrit.instructure.com/51987
Reviewed-by: Jon Jensen <jon@instructure.com>
Tested-by: Jenkins
Product-Review: Ethan Vizitei <evizitei@instructure.com>
QA-Review: Ethan Vizitei <evizitei@instructure.com>
now when looking at the jenkins logs, it's more clear what's happening.
but more importantly, this will make it more easily gergichible, which
means you won't have to look at jenkins logs \o/
test plan:
1. try various problematic hbs things (mismatched blocks, syntax errors,
i18n probs)
2. run `rake jst:compile`
3. note that it now shows the filename, and the formatting is somewhat
consistent
Change-Id: I6ff9fc789e93929e5591fa2be3995410a1be2c2e
Reviewed-on: https://gerrit.instructure.com/51975
Tested-by: Jenkins
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
Adds a few newer course settings to the xsd file.
Fixes CNVS-19750
Test plan:
* Go to <your canvas instance>/xsd/cccv1p0.xsd
* Verify that the following elements are shown under the course element (should be the first section):
* lock_all_announcements
* public_syllabus
* hide_distribution_graphs
* allow_student_discussion_topics
* allow_student_discussion_editing
Change-Id: I09170c9cd421a9516c059958a347a2c4d4e97986
Reviewed-on: https://gerrit.instructure.com/51937
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
fixes CNVS-19739
test plan:
- go to calendar
- click on a date, then click "more options" in the event
creation dialog
- don't save, just go back to calendar and open undated events
- a new event should not have been created
Change-Id: I2eb2ae95f8a4137d450537f098eea2316066b82b
Reviewed-on: https://gerrit.instructure.com/51816
Tested-by: Jenkins
Reviewed-by: Mark Severson <markse@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: Jon Willesen <jonw@instructure.com>
Needed some better use of environment variables
to get the right SHA. also shouldn't care about
dirty working directory on jenkins.
Change-Id: I85d4b9468f629217adcdd25039e44f26fd20b1d5
Reviewed-on: https://gerrit.instructure.com/51907
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>
QA-Review: Ethan Vizitei <evizitei@instructure.com>
Adds the course_lock_all_announcements course attribute to course copy.
fixes CNVS-7289
Test plan:
* On course settings, select the option "Disable comments on announcements"
* Copy the course
* On the new course, verify that "Disable comments on announcements" is enabled
Change-Id: I4b7dee1adee2833b970cacc23971f9bb6fb3059e
Reviewed-on: https://gerrit.instructure.com/51881
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
so that a plugin can define settings on account before account
is fully loaded
Change-Id: I41b538d152136e3b48452e8f48046a9caa882c13
Reviewed-on: https://gerrit.instructure.com/51773
Tested-by: Jenkins
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
by referencing symbols, just loading Context doesn't immediately cause
all the other stuff (and their dependents) to be loaded
Change-Id: I90e939ea03b628435ba77e2dc9ea886bf3f837c4
Reviewed-on: https://gerrit.instructure.com/51801
Tested-by: Jenkins
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
test plan:
* should be able to use new files ui with folders
that have characters like "+", "?", and "#" in them
fixes #CNVS-19616
Change-Id: Ic8291ceedb96b582d425ed67a645f2388ea63626
Reviewed-on: https://gerrit.instructure.com/51901
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
test plan:
* enable redis
* watch your resposne headers - they should include
X-Request-Cost and X-Rate-Limit-Remaining, and make
sense (per-request cost, and remaining goes down
after each request, but goes back up the longer
you wait)
Change-Id: I15dd73d3e024a956fd908dad4f41c498fdad0514
Reviewed-on: https://gerrit.instructure.com/51529
Tested-by: Jenkins
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
QA-Review: Ethan Vizitei <evizitei@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>