* fix not working from rails root for both
* don't require write permissions to the fs if nothing needs to be done
for client_app_symlinks
Change-Id: I5bf9d194f33e432ca581a69b7e4b03b5be29296c
Reviewed-on: https://gerrit.instructure.com/60452
Reviewed-by: Rob Orton <rob@instructure.com>
Tested-by: Jenkins
QA-Review: August Thornton <august@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
Change-Id: Ib902f5f62c900364f0f1e4a64dc5686468bcf030
Reviewed-on: https://gerrit.instructure.com/60478
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Option 'Clone Group Set' added in the group set cog wheel.
When modifying group membership on a group that has submitted an
assignment, teacher is alerted and given option of cloning group set
or changing groups.
fixes CNVS-19746
test plan:
- as a teacher
- navigate to a course
- select 'People' and go to 'Groups'
- create a new group set with groups and memberships
- create a group assignment for that group set
- as a student who is a member of a group of that group set
- submit the assignment for their group
- as a teacher
- modify the memberships for that group set
- for groups that have submissions
- drag and drop a student
- out of group into another group
- out of group into 'Unassigned Students'
- into group from another group
- into group from 'Unassigned Students'
- remove student using 'Remove' option in cog wheel
- move student using 'Move To...' option in cog wheel
- add student from 'Unassigned Students' using '+' option
- when 'Clone Group Set' modal is displayed
- select 'New Group Set'
- memberships in original group set should not change
- within cloned group set
- should contain all groups, group leader, memberships,
and membership limits from original group set
- group membership modification should function as normal
- selecting 'Change Groups'
- group membership changes
- delete assignment created for group set
- group membership modification should function as normal
- select 'Clone Group Set' option from group set cog wheel
- should follow same expectations when 'New Group Set' is
selected from alert
- significant UI changes were made and should be tested
- accessibility has been considered and should be tested
- regression test on group
Change-Id: I59276eca93f86d370f8658f5bdd0e9464f3fa061
Reviewed-on: https://gerrit.instructure.com/58753
Tested-by: Jenkins
Reviewed-by: Andrew Butterfield <abutterfield@instructure.com>
QA-Review: Steven Shepherd <sshepherd@instructure.com>
Product-Review: Andraia Allsop <aallsop@instructure.com>
- Allows multiple preferences to be updated by category
- Fetch the categories that exist in the notification preferences
fixes CNVS-21902
Change-Id: I96f005dc981079ee0797beec75cdecde4d05e96c
Reviewed-on: https://gerrit.instructure.com/57829
Tested-by: Jenkins
Reviewed-by: Joel Hough <joel@instructure.com>
QA-Review: Adrian Russell <arussell@instructure.com>
Product-Review: Peyton Craighill <pcraighill@instructure.com>
fixes CNVS-20332
test plan:
- make quiz with an access code
- as a student, POST an api request to /api/v1/courses/:id/quizzes/:id/verify_access_code
with the correct access code in the access_code parameter
> the request should return 'true'
- send a request with the wrong access code
> the request should return 'false'
Change-Id: I910da2a715d121412fee62b9707de3986b1c762c
Reviewed-on: https://gerrit.instructure.com/55662
Reviewed-by: Brian Finney <bfinney@instructure.com>
Tested-by: Jenkins
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Brian Finney <bfinney@instructure.com>
should be able to switch seamlessly between rails 3 and rails 4
now with the same session
refs #CNVS-21596
Change-Id: Icfa64ba861a5309dadcd962ffbfa53c4e59f4c76
Reviewed-on: https://gerrit.instructure.com/59869
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
fixes CNVS-22252
to ameliorate race conditions between saving and re-filling of cache
Change-Id: I7cee9a447a444e1bd84fc0fa2c16d40b35db3e69
Reviewed-on: https://gerrit.instructure.com/59637
Tested-by: Jenkins
Reviewed-by: Jacob Fugal <jacob@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Nick Nelson <nick@instructure.com>
refs #CNVS-21596
Change-Id: I6163197b1aad43682fcc5e366d2733683c37d003
Reviewed-on: https://gerrit.instructure.com/59766
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Fixes: CNVS-21906
Test plan:
- Make sure the Use New Styles feature flag is
set to ON
- Open Theme Editor from your admin account
- Make sure Canvas iframe on right side now
opens on this page ...
http://cl.ly/image/2c3k1R3V3U0T
... instead of on the Dashboard
- Theme editor should work the same
as before this change
Change-Id: Ifa38134ba186bc49c12062ae914a004b3664d189
Reviewed-on: https://gerrit.instructure.com/59007
Reviewed-by: Jennifer Stern <jstern@instructure.com>
Product-Review: Jennifer Stern <jstern@instructure.com>
Tested-by: Jenkins
QA-Review: Myller de Araujo <myller@instructure.com>
closes: CNVS-22285
since we took out all usage of the $is-k12 sass variable
when we removed the legacy k12 stuff we did, there
is no actual difference between the new_styles
and k12 variants. so we don't need to generate
2 different files for now (since their output will
be exactly the same).
this will cut the css generation time in half
when deploying and when generating a preview in
theme editor since instead of outputting 2 css files
(1 for new_styles_normal_contrast and 1 for
k12_normal_contrast) for every css bundle for every
theme, we just make one (new_styles_normal_contrast)
In the future, ui/ux might want to reintroduce
a sass variable like $is-k12 to do different things
if they are a k12 school. But when/if we do that,
we can just save it as part of the variables saved
in the school's brand_config from the theme editor.
that will be possible because when you turn on the
k12 feature flag, it defaults to using the
predefined 'K12 Theme' brand_config so *all* k12
schools will have a brand_config
test plan:
make sure canvas looks the same as it did before if
you have the k12 feature flag turned on
Change-Id: I197c30b9c5ed5150a3683f836008cbdbce78b09d
Reviewed-on: https://gerrit.instructure.com/59743
Tested-by: Jenkins
Reviewed-by: Colleen Palmer <colleen@instructure.com>
Product-Review: Colleen Palmer <colleen@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
refs PFS-2327
test plan
* make api calls to the following and verify results:
* /api/v1/courses/:course_id/grading_standards
* /api/v1/accounts/:account_id/grading_standards
Change-Id: Iff552e1f30e7b812d77d7138f6ab2f2a142837cc
Reviewed-on: https://gerrit.instructure.com/59120
Reviewed-by: Mike Nomitch <mnomitch@instructure.com>
Tested-by: Jenkins
QA-Review: Jason Carter <jcarter@instructure.com>
Product-Review: Tyson Brown <tbrown@instructure.com>
fixes PLAT-1166
test-plan:
install the turnitin lti tool
create an assignment using both the turnitin lti tool and the turnitin plugin
create a submission through the lti tool
result: the plugin should be disabled for that assignment
Change-Id: I4e89e33c61e5ad91e3b0125692631750b5199be1
Reviewed-on: https://gerrit.instructure.com/59360
Tested-by: Jenkins
Reviewed-by: Brad Horrocks <bhorrocks@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Nathan Mills <nathanm@instructure.com>
use `.where().update_all` instead
refs #CNVS-21596
Change-Id: I4f3c578de70246d4410461587b268831996d4d0a
Reviewed-on: https://gerrit.instructure.com/59389
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
also changed active_record_base_spec to not
monkeypatch Account
refs #CNVS-21596
Change-Id: Ic9878bb2918ac6e7ea64ba9135ecbd3ea7437284
Reviewed-on: https://gerrit.instructure.com/59385
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
...because apparently "it's preloading. for
autoloading, CDN will look for cdn or c_d_n.
then in prod mode, it's somewhat different. like
autoloading is disabled? and it just pre-requires
everything in the autoload dirs"
test plan:
run `RAILS_ENV=production bundle exec rake canvas:cdn:upload_to_s3`
it should work
Change-Id: I5deed1cc2b9daa678465b174af320cf1724fea8c
Reviewed-on: https://gerrit.instructure.com/59341
Reviewed-by: James Williams <jamesw@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
fixes CNVS-21924
also completely removes the long-deprecated update_all form
test plan:
* create, update, delete an authentication provider via the UI
* delete all providers via the UI
* create, update, delete an auth provider via the API using both
old and new routes
Change-Id: Id75351b937baf7369928edca1f8e08729214ad99
Reviewed-on: https://gerrit.instructure.com/58652
QA-Review: August Thornton <august@instructure.com>
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
refs #CNVS-21596
Change-Id: Ib41c03782b1667d3876283fd99d8ccf7585e1fd6
Reviewed-on: https://gerrit.instructure.com/58651
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
refs #CNVS-21596
Change-Id: Ia2575bdbcc7b8326005169260c9cad3e70b66009
Reviewed-on: https://gerrit.instructure.com/58854
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
closes: CNVS-21013
when the user hits 'preview' in the theme editor,
it fires off a delayed job to create the css files
and push them to s3. we need to show the user the
the progress of that job as it is working and
then reload the page when it is done.
I made a screencast to show how it should work and
what to look for:
http://screencast.com/t/x6EeOBiQT6d
test plan:
* go to the theme editor,
* make some changes (be sure to test both colors
and images)
* press 'preview'
* notice the ProgressBar that comes up in a modal
* try exiting the theme editor, it should warn
you if you have unsaved changes
Change-Id: I3f14beefba227b5ba23b33acf84e04542f48954e
Reviewed-on: https://gerrit.instructure.com/57626
Reviewed-by: Rob Orton <rob@instructure.com>
Tested-by: Jenkins
QA-Review: Adrian Foong <afoong@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
since we removed all traces of the k12 legacy stuff
we were doing, we can now render a k12 new_styles
variant.
Change-Id: I79930c25ba2046dac3e35532690c8a1cc45faf1b
closes: CNVS-21770
Reviewed-on: https://gerrit.instructure.com/58020
Reviewed-by: Colleen Palmer <colleen@instructure.com>
Product-Review: Colleen Palmer <colleen@instructure.com>
Reviewed-by: Rob Orton <rob@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Tested-by: Jenkins
test plan:
The paginated sis_imports index should return headers with /api/v1 in them
Change-Id: I95cc140a7a376fc49ca0b801b450dc87b887ea01
Reviewed-on: https://gerrit.instructure.com/56628
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
QA-Review: Kausty Saxena <kausty@instructure.com>
Product-Review: Brad Humphrey <brad@instructure.com>
test plan:
- you should be able to create, edit, and view wiki pages named
"new", or whose names start with "new"
- when editing a wiki page, the "Link to a New Page" link in the
wiki sidebar should function properly
- if you go to /courses/35/pages/nonexistent-page-id, you should
see a message indicating the page doesn't exist but you can
create it, and sent to an editor for the page
fixes CNVS-1428
Change-Id: I306441e1f686a993885beeb066409c30f9e2528b
Reviewed-on: https://gerrit.instructure.com/58649
Reviewed-by: James Williams <jamesw@instructure.com>
Tested-by: Jenkins
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
in rails 4, apparently relations no longer retain
their proxy_association.owner when they're merged
into another non-association relation
better to use Relation#shard explicitly
refs #CNVS-21596
Change-Id: Iad34bbf626c17a3f0b1fc57ac685506199cc5f3d
Reviewed-on: https://gerrit.instructure.com/58151
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
refs #CNVS-21596
Change-Id: I14b5e0ba1f1d8863a21cf408842fcae778ed6b63
Reviewed-on: https://gerrit.instructure.com/58596
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
fixes PLAT-1158
test-plan:
*the lti2 registration message should include the tool proxy guid/reg_key in the launch_presentation_return_url
*lti2 tools should still register
Change-Id: I12f182d328718cf01c8098027a7235e4bdd4d038
Reviewed-on: https://gerrit.instructure.com/58309
Reviewed-by: Mark Severson <markse@instructure.com>
Tested-by: Jenkins
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Nathan Mills <nathanm@instructure.com>
refs #CNVS-21596
Change-Id: I7888abfd6b36a7b685b6d89859d64bc1af72725e
Reviewed-on: https://gerrit.instructure.com/58387
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Change-Id: I7fc2426b53b64abeb7a487d31f07f3eecbfbf60c
Reviewed-on: https://gerrit.instructure.com/58400
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
also revert "rails4: fix stale collection proxies"
refs #CNVS-21596
Change-Id: I7dd3d7d5e6ddb3c5fca17555b0e0ec347e6bfa75
Reviewed-on: https://gerrit.instructure.com/58381
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
fixes CNVS-21362
test plan:
* make sure you have pg_collkey installed
* test user search
* it shouldn't asplode
Change-Id: I911d57ea950679b3e26390c140149c528eae0a2d
Reviewed-on: https://gerrit.instructure.com/56969
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
refs #CNVS-21596
Change-Id: I28cfeb917e29562734542d201148ad636d23cba1
Reviewed-on: https://gerrit.instructure.com/58170
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
fixes a problem with appointment groups that
can cache a broken association scope in a before_save
refs #CNVS-21596
Change-Id: I8965999b80c26f8d303681c1cf2214c45f23f39d
Reviewed-on: https://gerrit.instructure.com/58050
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
also multi-column plucking
refs #CNVS-21596
Change-Id: I0cceae6bf95a25c32ef4957977d8ce2b4719d0ef
Reviewed-on: https://gerrit.instructure.com/58044
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
current_scope in rails4 is shared on base_class
refs #CNVS-21596
Change-Id: Ib4c8e61c2cbe7ef492988b90769930811a76761b
Reviewed-on: https://gerrit.instructure.com/57980
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Fixes CNVS-20436
This does two things:
1) Reports to StatsD each time a message
is processed
2) Every 5 minutes, reports the unprocessed size
of each incoming mailbox
Test Plan:
Regression test incoming mail processing. Will
want to check the basic cases of incoming messages
still being processed properly.
Smoke test the new Instrumentation delayed job.
1) Setup incoming mail processing by adding a
config/incoming_mail.yml with the right content
- Wheeler can tell you what the file
should contain. (not shown because passwords)
2) Start canvas jobs
`bundle exec script/delayed_job run`
3) Watch /error_reports for any new error reports.
You should see none.
Change-Id: Ia737906cedb67e183fec0f41571e002883c058c8
Reviewed-on: https://gerrit.instructure.com/57892
Reviewed-by: Joel Hough <joel@instructure.com>
Tested-by: Jenkins
QA-Review: Steven Shepherd <sshepherd@instructure.com>
Product-Review: Matthew Wheeler <mwheeler@instructure.com>
The content migrations for outcomes importing are not scoped to an account
or a course, since the academic benchmarks standards are imported globally
per shard.
Fixes CNVS-21782
Test Plan:
1. Kick off an outcomes import task
- curl -H 'Authorization: Bearer <api-key>'
--data 'guid=<some-guid>'
'http://<canv-domain>/api/v1/global/outcomes_import'
2. Query it through this endpoint and make sure it works
- curl -H 'Authorization: Bearer <api-key>'
'http://<canv-domain>/api/v1/global/outcomes_import/migration_status/<migration-id>'
Change-Id: I8ff3a5206bb7aa5f97d615912c60341fedcaf855
Reviewed-on: https://gerrit.instructure.com/58034
Tested-by: Jenkins
Reviewed-by: Cameron Sutter <csutter@instructure.com>
QA-Review: Michael Hargiss <mhargiss@instructure.com>
Product-Review: Benjamin Porter <bporter@instructure.com>
turn back; it's too late to change now
refs #CNVS-21596
Change-Id: Ia2ed649e9ee700219479cee7aab48c51fe4d6c4b
Reviewed-on: https://gerrit.instructure.com/58052
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Tested-by: Jenkins
refs: PFS-2071, PFS-2072, PFS-2073, PFS-2074
**Test Plan
PFS-2071
1. Create course with assignment, teacher and two students
2. setup peer reviews on assignment
3. As student 1 create a submission
4. As student 2 peer review submission, leave comments
5. execute the following api courses/:course_id/assignments/:assignment_id/peer_reviews
6. As account admin all information should be shown
7. As teacher all information should be shown
8. As student should see all information
9. Repeat above but set anonymous peer reviews on assignment
10. As account admin all information should be shown
11. As teacher all information should be shown
12. As student should see comments but all reviewer
information should not be shown
13. include the following include parameters, include[]=submission_comments,
include[]=user make sure additional information is shown according to parameter.
PFS-2072
1. Follow setup from PFS-2071
2. execute a get on the following api
/api/v1/courses/:course_id/assignments/:assignment_id/submissions/:submission_id/peer_reviews
3. validate that only peer reviews for the given submission are shown
PFS-2073
1. Follow setup from PFS-2071
2. execute a post on the following api, including a user_id parameter
/api/v1/courses/:course_id/assignments/:assignment1_id/submissions/:submission_id/peer_reviews
3. validate that user from user_id parameter is added as a reviwer on the submission
PFS-2074
1. follow setup from PFS-2071
2. execute a delete on the following api, including a user_id parameter
/api/v1/courses/:course_id/assignments/:assignment1_id/submissions/:submission_id/peer_reviews
3. validate that user from user_id parameter is removed as a reviewer on the submission
(cherry picked from commit 91744bbcd5a81be968139b1f68b65c3e9eaa7b4a)
Change-Id: Ic09a16956cddb2f113625ff61bc733503d713abb
Reviewed-on: https://gerrit.instructure.com/56936
Tested-by: Jenkins
QA-Review: Adam Stone <astone@instructure.com>
Reviewed-by: John Corrigan <jcorrigan@instructure.com>
Product-Review: Brandon Broschinsky <brandonbr@instructure.com>
with_exclusive_scope is deprecated
refs #CNVS-21596
Change-Id: I5f7d2744f8084a032100b54cf0d34118373e59ce
Reviewed-on: https://gerrit.instructure.com/57812
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
refs #CNVS-21596
Change-Id: Ic27fed7ce841b439476e65932dd52f8fec38e37b
Reviewed-on: https://gerrit.instructure.com/57814
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
refs #CNVS-21596
Change-Id: Ie7c46ac6d5f7bac068eeeb6ca7ec971b414ed8e2
Reviewed-on: https://gerrit.instructure.com/57856
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
test plan:
* create courses with assignments retrievable through the endpoint
created in g/54418
* should be able to use the start_at and end_at arguments
(should be in the API documentation)
to restrict the list of course_ids to courses that lie
within those dates
refs #SIS-1124
Change-Id: I8cce47beb062d52ce29e6728cc3e6170ad1e411a
Reviewed-on: https://gerrit.instructure.com/56370
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
fixes a circular dependency error trying to load
AccountAuthorizationConfig::CAS
refs #CNVS-21596
Change-Id: I65f92e2cc09228f19363b1964e063a2a5fcde037
Reviewed-on: https://gerrit.instructure.com/57645
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>