Commit Graph

290 Commits

Author SHA1 Message Date
Nathan Mills 28f2135f8c get the controller class name for scope gen
fixes PLAT-3608

test-plan:

-Add a scope to a dev key
-The quizzes scopes should be there

Change-Id: I4174109f50c9233c5ea717a9638c45cf48ba9a5f
Reviewed-on: https://gerrit.instructure.com/158068
Product-Review: Karl Lloyd <karl@instructure.com>
Tested-by: Jenkins
Reviewed-by: Marc Alan Phillips <mphillips@instructure.com>
QA-Review: Marc Alan Phillips <mphillips@instructure.com>
2018-07-19 20:53:45 +00:00
Nathan Mills 6079689a45 handle multiple controller resources for scope gen
fixes PLAT-3605

test plan:

-run the rake doc:api taks
-check that all the assignment scopes are present

Change-Id: I5197ab1db41f9bd0a4dba48c571873eb75fac999
Reviewed-on: https://gerrit.instructure.com/158026
Tested-by: Jenkins
Reviewed-by: August Thornton <august@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Nathan Mills <nathanm@instructure.com>
2018-07-19 19:02:19 +00:00
Erin Hallmark 715081cb42 Update API Change Log for 2018-08-04 release
closes DOC-808

Test plan:
- View API change log and look at new
words for 2018-08-04 release
- View API change log archive link and
make sure new addition looks good
- Ensure both pages look pretty

Change-Id: I9676099a12a1587174d1c55966c91e063cddde5f
Reviewed-on: https://gerrit.instructure.com/157800
Tested-by: Jenkins
Reviewed-by: Steven Burnett <sburnett@instructure.com>
Product-Review: Steven Burnett <sburnett@instructure.com>
QA-Review: Steven Burnett <sburnett@instructure.com>
2018-07-18 16:00:23 +00:00
Jeremy Stanley 0d460cbb90 fix array form parameters in live api docs
test plan:
 - go to /doc/api/live
 - enter an API token and click "Save token"
 - expand "Courses" and "Update courses"
 - enter an account_id and one or more course_ids
   separated by commas
 - click "Try it out"
 - the request should succeed

fixes ADMIN-1124

Change-Id: I6d796fd33d0d6da88a3975617b7e0956de56cd29
Reviewed-on: https://gerrit.instructure.com/156289
Reviewed-by: Mysti Sadler <mysti@instructure.com>
Reviewed-by: Carl Kibler <ckibler@instructure.com>
Tested-by: Jenkins
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
2018-07-16 16:53:06 +00:00
Erin Hallmark a1b758e0ed Update API Changelog for 2018-07-14
Refs DOC-802

Test plan:
- View new tables under 2018-07-14 heading
- Make sure links in Additions section work
- Check link for API Change Log archive
and view entry for 2018-04-21 release

Change-Id: Ie3a8967bdf16bc1b9c31f9a860d0515ca073fe02
Reviewed-on: https://gerrit.instructure.com/155508
Tested-by: Jenkins
Reviewed-by: Pam Hiett <phiett@instructure.com>
Product-Review: Steven Burnett <sburnett@instructure.com>
QA-Review: Steven Burnett <sburnett@instructure.com>
2018-06-29 16:56:24 +00:00
Michael Brewer-Davis 848d0bfad5 clarify reserved prefixes in outcomes import
closes OUT-2322

Test plan:
1. Generate docs
     docker-compose run --rm web bundle exec rake doc:api
2. View updated doc at
     http://canvas.docker/doc/api/file.outcomes_csv.html

Change-Id: I549f4d7035616098187b15f4e1138377e3590f9c
Reviewed-on: https://gerrit.instructure.com/154867
Tested-by: Jenkins
Reviewed-by: Augusto Callejas <acallejas@instructure.com>
Reviewed-by: Matt Berns <mberns@instructure.com>
QA-Review: Augusto Callejas <acallejas@instructure.com>
Product-Review: Sidharth Oberoi <soberoi@instructure.com>
2018-06-27 19:31:37 +00:00
Han Ngo f9a75654a1 Warm fix broken API Token Scopes file
Fixes PLAT-3550

Test Plan:
- Verify there is no 'API Token Scopes' under OAuth2
- Verify there is only one link 'API Token Scopes' under Resources
- Verify there is no code left related to generating the 'API Token
Scopes' table under OAuth2

Change-Id: Ib00a4aeec102eafc22169ac5322b581fef797a0b
Reviewed-on: https://gerrit.instructure.com/155247
Tested-by: Jenkins
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Jesse Poulos <jpoulos@instructure.com>
2018-06-27 17:38:28 +00:00
Han Ngo f136f913c4 Move Plagiarism platform API docs to the External Tools section
Fixes PLAT-3463

Test Plan:
- Verify the Plagiarism platform API under Resources now got move
under the External Tools section

Change-Id: I8244f10aaa08fcc8cba0809b81aa603494c3ac22
Reviewed-on: https://gerrit.instructure.com/153650
Tested-by: Jenkins
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Jesse Poulos <jpoulos@instructure.com>
2018-06-14 19:31:56 +00:00
wdransfield c3cc2aaac8 Add plagiarism platform group assignment docs
Test Plan:
Verify docs generate

Change-Id: If3a225dfebd352e100d7b4a3f44e711e7699314c
Reviewed-on: https://gerrit.instructure.com/153246
Reviewed-by: August Thornton <august@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Tested-by: Jenkins
Reviewed-by: Marc Alan Phillips <mphillips@instructure.com>
Product-Review: Jesse Poulos <jpoulos@instructure.com>
2018-06-11 16:10:03 +00:00
Erin Hallmark 3e0849ecd2 update change log for 2018-06-23
Closes: DOC-793
Test plan:

- See new table for 2018-06-23 with info and make sure links work
- In description, make sure second bullet link works

Change-Id: Ib95669e9f15e600555c95919eaad724b2e438ef1
Reviewed-on: https://gerrit.instructure.com/152796
Tested-by: Jenkins
Reviewed-by: Simon Williams <simon@instructure.com>
Reviewed-by: Pam Hiett <phiett@instructure.com>
Product-Review: Robert Lamb <rlamb@instructure.com>
QA-Review: Robert Lamb <rlamb@instructure.com>
2018-06-07 21:23:02 +00:00
wdransfield 98df00b007 Additional developer key documentation
Closes PLAT-3439, PLAT-3437

Test Plan:
- Verify the doc:api rake task succeeds
- Verify additional documentation is clear and acurate
- Verify links function
- Verify developer key documentation is clearly marked as
  "beta."

Change-Id: Ib81ee3c3bc7bab0176948dc17ef3ad5a4965f933
Reviewed-on: https://gerrit.instructure.com/152254
Tested-by: Jenkins
Reviewed-by: Nathan Mills <nathanm@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Jesse Poulos <jpoulos@instructure.com>
2018-06-05 16:18:54 +00:00
Erin Hallmark 415301357f add files for api change log
Fixes DOC-794

Test Plan:
- compile api documentation - rake doc:api
- view new changelog and breaking api change files
- check that links to new files work in README doc
- check that CSS is okay and nothing is broken

Change-Id: I9f72f1b9fc056842b80c9ae0f45e17d51036449b
Reviewed-on: https://gerrit.instructure.com/152037
Reviewed-by: Pam Hiett <phiett@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2018-06-01 23:45:40 +00:00
Han Yan f9676125bb Qti import from Canvas to Quizzes.Next
refs QUIZ-4415

test plan:
- cr
- Quiz.Next CC import is not ready for test with only this patch
- regression on `Import Content`, to make sure:
  1) `Qti .zip file` import works
  2) `Common Catridge 1.x Package` import works

Change-Id: Iba2818a2b864020b6c59ef55e02f122b996e4c40
Reviewed-on: https://gerrit.instructure.com/149978
Reviewed-by: Andrew Butterfield <abutterfield@instructure.com>
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: David Tan <dtan@instructure.com>
Product-Review: Han Yan <hyan@instructure.com>
2018-05-31 16:57:32 +00:00
wdransfield 3acee04c47 Delete access tokens if dev key scopes are removed
Closes PLAT-3414

Test Plan:
- Create a developer key with scopes.
- request an access token for that key.
- Remove a scope from the developer key and verify the
  access token is destroyed.
- Create another access token for the developer key.
- Add a scope to the developer key.
- Verify the access token is not destroyed.
- Make a change to the developer key that does not involve
  changeing scopes.
- Verify the access token is not destroyed.

Change-Id: I7393467a2c010636170792e3679f0652db7408d1
Reviewed-on: https://gerrit.instructure.com/151270
Tested-by: Jenkins
Reviewed-by: Stewie aka Nicholas Stewart <nstewart@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Jesse Poulos <jpoulos@instructure.com>
2018-05-30 20:42:41 +00:00
wdransfield 8b0740be29 Add API Token Scope Docs
Closes PLAT-3394

Test Plan:
- Run the `doc:api` rake task
- Navigate to /doc/api/index.html and verify there
  are two new links in the OAuth2 section ("Developer
  Keys" and "API Token Scopes")
- Verify both links work
- Verify the token scopes documentation has a table
  for each scope group and includes all Canvas
  scopes
- Verify "Resources" documentation pages now display
  the scope along with each API endpoint

Change-Id: I2fea0ff531744dbaf63d24619b3c0e9655a25a7a
Reviewed-on: https://gerrit.instructure.com/151010
QA-Review: August Thornton <august@instructure.com>
Reviewed-by: Nathan Mills <nathanm@instructure.com>
Tested-by: Jenkins
Product-Review: Jesse Poulos <jpoulos@instructure.com>
2018-05-29 18:21:57 +00:00
Nathan Mills ec4f61746f add lookup class for scope resource names
fixes PLAT-3311

test plan:

* run the rake task "doc:api"
* request the scopes from api/v1/accounts/:account_id/scopes
  - you should get back a json object that includes the localized name
* request the scopes from api/v1/accounts/:account_id/scopes passing
  the query param "group_by=resources_name"
  - you should get back a json object with the scopes grouped by
    localized resource_name

Change-Id: I2cab1822baef7cdda6471096153d60d4f7fe1e2b
Reviewed-on: https://gerrit.instructure.com/150233
Tested-by: Jenkins
Reviewed-by: Marc Alan Phillips <mphillips@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Jesse Poulos <jpoulos@instructure.com>
2018-05-23 16:09:12 +00:00
Matthew Buckett 8e783843ea canvas.docker is a development only hostname
When the documentation is published to http://api.instructure.com/ the
link to http://canvas.docker isn't valid, making it host relative means
it works in both places.

Closes gh-1288

Change-Id: Ifdaaf01435f739c16a08fcce8e1922b05df0e0ea
Reviewed-on: https://gerrit.instructure.com/149907
Tested-by: Jenkins
Reviewed-by: Derek Bender <djbender@instructure.com>
Product-Review: Omar Khan <okhan@instructure.com>
QA-Review: Omar Khan <okhan@instructure.com>
2018-05-10 21:56:07 +00:00
Frank Murphy 0063a5d065 Allow linking of outcomes with nil values.
Fixes OUT-2170

Test Plan:
- Create an account-level outcome and an API $TOKEN for your account.
- Find the $ID of the outcome via the UI or rails console.
- Fetch the outcome data:
  curl "https://web.canvas.docker/api/v1/outcomes/$ID.json" \
     -H "Authorization: Bearer $TOKEN" | jq . > outcome.json
- Edit outcome.json so that "description": null
- PUT the edited outcome back:
  curl "https://web.canvas.docker/api/v1/outcomes/$ID.json" \
     -H "Authorization: Bearer $TOKEN" \
     -X PUT \
     --data-binary @outcome.json \
     -H "Content-Type: application/json"
- Export outcomes from the account.
- Create a course under the prior account.
- Import the exported CSV into the course
- Verify that there are no errors and the outcome is properly imported.

Change-Id: If21a7d1068d5bf1ea7aa1de520df229a1688e691
Reviewed-on: https://gerrit.instructure.com/147995
Tested-by: Jenkins
Reviewed-by: Michael Brewer-Davis <mbd@instructure.com>
Reviewed-by: Augusto Callejas <acallejas@instructure.com>
QA-Review: Dariusz Dzien <ddzien@instructure.com>
Product-Review: Michael Brewer-Davis <mbd@instructure.com>
2018-04-30 15:20:22 +00:00
Cody Cutrer 41794a9383 rename AccountAuthorizationConfig* to AuthenticationProvider*
I couldn't take it anymore. it was driving me crazy

Change-Id: Ib40addff56e98a6e0a6d80f246c208e0ce0cb762
Reviewed-on: https://gerrit.instructure.com/148026
Tested-by: Jenkins
Reviewed-by: James Williams  <jamesw@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
2018-04-26 16:03:47 +00:00
wdransfield 6a41c8d45a Document display_type for external tools
Closes PLAT-3266

Test plan:
Verify docs compile and include descriptions of how the 'display_type'
LTI 1 configuration setting may be used.

Change-Id: Ib63b22b4d54da60ca965299450ad16485fdf4c48
Reviewed-on: https://gerrit.instructure.com/147308
Reviewed-by: Marc Alan Phillips <mphillips@instructure.com>
Tested-by: Jenkins
QA-Review: August Thornton <august@instructure.com>
Product-Review: Jesse Poulos <jpoulos@instructure.com>
2018-04-25 21:23:36 +00:00
Marc Phillips 4b3fb3aff9 Add submittedAt details to Basic Outcomes
A tool may now submit the submitted at timestamp for a submission
in the tool and Canvas will honor the timestamp submitted as
the submission time.

closes PLAT-2933

Test Plan
 - Submit a submission using the new submissionDetails node
   and the submittedAt subnode to submit an assignment
 - The submission timestamp should be the same as the
   timestamp submitted in the node
 - This timestamp should be honored whether a resultData
   is in the xml or not

Change-Id: I0dec6b326b0c3380f6a8ee19f78f34f5c943758a
Reviewed-on: https://gerrit.instructure.com/147421
Tested-by: Jenkins
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Karl Lloyd <karl@instructure.com>
2018-04-23 17:06:49 +00:00
Nate Collings 83a24b8a08 add Module and ModuleItem live events
Test plan:

- Merge and warmfix onto beta
- Configure our EventManager Kinesis stream
  to listen to the Module and ModuleItem
  live events
- Create a Module and a ModuleItem and
  validate that the events were sent
- Update a Module and a ModuleItem and
  validate that the events were sent

refs SKUNK-17, SKUNK-18

Change-Id: Ia047024b0f5d38e5c14a19194f75b131f9fc68cc
Reviewed-on: https://gerrit.instructure.com/146858
Reviewed-by: Andrew Butterfield <abutterfield@instructure.com>
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Tested-by: Jenkins
Product-Review: Nate Collings <ncollings@instructure.com>
QA-Review: Nate Collings <ncollings@instructure.com>
2018-04-23 15:12:55 +00:00
Brent Burgoyne ce3379a3ac add success include param for upload preflight
refs CORE-20

test plan:
- test file upload api with success_include[]=avatar on the preflight
  request
- the final response on success should include the avatar property
- test with local storage, s3, and InstFS

Change-Id: I974197944d0f84ad0b89a628ab8604f50cdec45e
Reviewed-on: https://gerrit.instructure.com/144456
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Tested-by: Jenkins
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Product-Review: Brent Burgoyne <bburgoyne@instructure.com>
2018-04-04 19:45:50 +00:00
Frank Murphy 2233d6f347 Remove canvas_id from export, use vendor_guid on import
Fixes OUT-2052

Test Plan:
- Create an outcomes tree under an account, with nested outcomes.
- Export the account outcomes.
- Create a new course under the prior account.
- Import outcomes into that account.
- The outcome tree should be fully imported.

Change-Id: Ifbf886a65a307b4c45f9c28ca92c19f0bcb16c06
Reviewed-on: https://gerrit.instructure.com/145408
Tested-by: Jenkins
Reviewed-by: Matt Berns <mberns@instructure.com>
Reviewed-by: Augusto Callejas <acallejas@instructure.com>
Reviewed-by: Michael Brewer-Davis <mbd@instructure.com>
QA-Review: Leo Abner <rabner@instructure.com>
Product-Review: Sidharth Oberoi <soberoi@instructure.com>
2018-04-02 15:33:34 +00:00
Rob Orton 336cd1af94 clarify start_date end_date documentation
Change-Id: I0c778bb555bd6bc5a3a993746a5af7e841e014c2
Reviewed-on: https://gerrit.instructure.com/144394
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Reviewed-by: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2018-03-21 21:11:49 +00:00
Stewie (Nicholas Stewart) 5fa6bb57b9 Add copyright message to remaining .rb files
Update: Copyright years now reflect the year that the file was first
committed.

Refs: PLAT-3200

Test Plan: jenkins is still happy and specs pass!!

Change-Id: Ic26463defe41fc52cf4da8020976394c641f51d5
Reviewed-on: https://gerrit.instructure.com/143545
Tested-by: Jenkins
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Stewie aka Nicholas Stewart <nstewart@instructure.com>
2018-03-19 13:38:50 +00:00
Tucker McKnight 48e0221073 Allow group category sis ids to be changed
fixes CORE-913

test plan:
- Generate documentation, make sure that the
  change_sis_id.csv parts about group_categories
  make sense.
- Upload a change_sis_id.csv and make sure you
  can change the SIS ID on a group category.

Change-Id: Id3e5813dd1cee371784d43cd9ba9dce90ef9fcd4
Reviewed-on: https://gerrit.instructure.com/139534
Reviewed-by: Rob Orton <rob@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2018-03-15 16:45:29 +00:00
Rob Orton 155ae11adb parent_account_id is a sticky field
fixes CORE-1134

test plan
 - rake doc:api should work

Change-Id: Ie6ec704489a96a803d0670105f8f1c76a72b0ffe
Reviewed-on: https://gerrit.instructure.com/143346
Reviewed-by: Tucker McKnight <tmcknight@instructure.com>
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
Tested-by: Jenkins
2018-03-12 22:25:33 +00:00
Jacob Fugal cfc4e74055 use api_attachment_preflight with /files/pending
fixes RECNVS-237

simplify FilesController#create_pending (which corresponds to the
POST /files/pending route) to do its preflight setup through
api_attachment_preflight. this makes it consistent with other preflight
endpoints, particularly so inst-fs gets used when enabled.

cascaded implications:
* FilesController#create for local uploads is removed in favor of
  FilesController#api_create + FilesController#api_create_success
* FilesController#s3_success for s3 uploads is removed in favor of
  FilesController#api_create_success
* FilesController#render_attachment_json is removed (was only used by
  the previous two removed methods) in favor of the attachment_json
  returned by #api_create_success
* JavaScript performing uploads through /files/pending now expects an
  {<attachment fields>} shaped response in line with
  attachment_json
* JavaScript performing uploads through /files/pending now expects a
  'content-type' field in the response instead of 'content_type', in
  line with attachment_json

as part of the cleanup, the duplicate_handling parameter was renamed to
on_duplicate to match other preflight endpoints, and the size parameter
was added to the request for quota checking

test-plan:
- generally, uploads that go through /files/pending:
  - still work
  - work with instfs
- specifically, the uploads that go through /files/pending are:
  - uploading an image as an avatar in the user profile
  - submitting an assignment via file upload
  - conversation messages with attached files
  - uploading a file to an eportfolio
  - upload image from wiki sidebar (w/o RCE enabled)
  - upload files from wiki sidebar (w/o RCE enabled)
- of particular interest to confirm beyond just "appears to work" are:
  - attachment(s) are associated with conversation message correctly
    after upload
  - attachment(s) are associated with submission correctly after upload
  - images uploaded to eportfolio are recognized as images
  - video files uploaded via wiki sidebar are recognized as video
  - image files uploaded via wiki sidebar are recognized as images

Change-Id: I463b3746e8e99a5e503df302664122bf364771c1
Reviewed-on: https://gerrit.instructure.com/141859
Tested-by: Jenkins
QA-Review: Collin Parrish <cparrish@instructure.com>
Reviewed-by: Jonathan Featherstone <jfeatherstone@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
2018-03-09 23:16:14 +00:00
Augusto Callejas 412e49baee Outcome import creation/status endpoints
closes OUT-1534

Scheduling of outcome import jobs will occur in a separate PS,
after this merges and OUT-1997 is merged too.

test plan:
  - start up canvas
  - generate api docs:
    > docker-compose run --rm web bundle exec rake doc:api
  - load api docs in http://canvas.docker/doc/api/index.html
  - read over the "Outcomes CSV Format" and make sure it reads well
  - read over the "Outcomes Import" and make sure it reads well
  - obtain an access token:
    https://community.canvaslms.com/docs/DOC-10806-4214724194
  - request an outcome import, replace "canvas-path" and "token" values:
    curl -F attachment=@<canvas-path>/spec/lib/outcomes/fixtures/demo.csv \
         -F 'import_type=instructure_csv' \
         -H "Authorization: Bearer <token>" \
         http://canvas.docker/api/v1/accounts/1/outcome_imports
  - in a rails console, confirm that the import was accepted:
    > docker-compose run --rm web bin/rails console
    % pp OutcomeImport.last
    # confirm that the import is in the 'created' state, associated with
      your user and associated with an account context
    # note the "id" value for later use
    % pp OutcomeImport.last.attachment
    # confirm that the attachment is in the 'processed' state and has
      the filename "test_outcomes_1.csv" passed in above
  - request the status of the outcome import (should return a message
    saying "The specified resource does not exist"):
    curl -H "Authorization: Bearer <token>" \
         http://canvas.docker/api/v1/accounts/1/outcome_imports/latest
  - back in the rails console created above, manually transition
    the import to "importing":
    % OutcomeImport.last.job_started
  - run the above curl command again, and this time the latest outcome
    import should be returned, in the 'importing' state
  - run the above curl command again, replacing "latest" with the "id"
    value obtained above. it should return the same response as the
    previous step.

Change-Id: Ice7d67b625b443cec70f531f2e673face6d6fbeb
Reviewed-on: https://gerrit.instructure.com/142024
Reviewed-by: Neil Gupta <ngupta@instructure.com>
Reviewed-by: Frank Murphy <fmurphy@instructure.com>
Tested-by: Jenkins
QA-Review: Frank Murphy <fmurphy@instructure.com>
Product-Review: Neil Gupta <ngupta@instructure.com>
2018-03-05 19:22:03 +00:00
Jeremy Putnam e15207c87f document enrollment start and end dates in sis_csv
closes: CORE-584

test plan
 - rake doc:api should work

Change-Id: I1dd7527809347c04104f8648ca43d148c40f788c
Reviewed-on: https://gerrit.instructure.com/142459
Reviewed-by: Rob Orton <rob@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
Tested-by: Jenkins
2018-03-02 21:59:21 +00:00
wdransfield edb63589e9 Add com.instructure.Course.groupIds varaible expansion
Closes PLAT-3106

Test Plan:
- Create several groups in a course.
- Install a tool that uses the new $com.instructure.Course.groupIds
  variable expansion.
- Launch the tool from the coures nave and verify the
  param value is a list of Canvas ids for each group in the course.
- Launch the tool from an assignment and verify the same thing.
- Verify groups that are soft deleted are not included.

Change-Id: I36cc73525361c54505c5f0d4c4df57a549c97718
Reviewed-on: https://gerrit.instructure.com/140804
Tested-by: Jenkins
Reviewed-by: Andrew Butterfield <abutterfield@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Jesse Poulos <jpoulos@instructure.com>
2018-03-01 17:45:35 +00:00
Nathan Mills bde75c653d update ext_roles documentation
fixes PLAT-3154

test plan:
the updated documentation should make it clear how the
ext_roles and Canvas.xuser.allRoles variable expansion work.

Change-Id: I6482bf6c6b4e19cd61f36db0b9d34cf2ea94b978
Reviewed-on: https://gerrit.instructure.com/141781
Tested-by: Jenkins
Reviewed-by: Marc Alan Phillips <mphillips@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Karl Lloyd <karl@instructure.com>
2018-02-26 20:02:01 +00:00
wdransfield bc20165672 Update membership expansion documentation
Refs CNVS-41279

Test Plan:
Verify the new documentation is clear that
Canvas.xuser.allRoles does not scope roles
to the launch context.

Verify that the Canvas.membership.roles
expansion now has a default name
(not required to address this issue,
just more convenient for the TP).

Change-Id: I182b2dbd51e47063b959c4568f9d1880d044d7ae
Reviewed-on: https://gerrit.instructure.com/140784
Reviewed-by: Andrew Butterfield <abutterfield@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Tested-by: Jenkins
Product-Review: Jesse Poulos <jpoulos@instructure.com>
2018-02-13 21:45:55 +00:00
wdransfield 9dfbb56af1 Add group id variable substitution
Closes PLAT-3036

Test Plan:
- Create an assignment that uses a plagiarism tool and is a group
  assignment. The tool should use both new variable expansions.
- Verify all originality report launches show the correct
  group id and name for the current user.

Change-Id: Id2908ff649e4e931f6a76992871ebebe7558d88b
Reviewed-on: https://gerrit.instructure.com/139504
Tested-by: Jenkins
Reviewed-by: Marc Alan Phillips <mphillips@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
2018-02-09 20:20:24 +00:00
Marc Alan Phillips bfc4d1b50b Add external_tools user_navigation documentation
refs PLAT-2827

Test Plan:
 n/a

Change-Id: I9981b29902d51b22f08048b3f020a035b1941f94
Reviewed-on: https://gerrit.instructure.com/140007
Tested-by: Jenkins
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Marc Alan Phillips <mphillips@instructure.com>
2018-02-06 17:38:35 +00:00
Tucker McKnight bc05557e32 Remove user_integration_id from list of types in docs
test plan:
- rake doc:api
- Go to SIS CSV Format docs page
- Under change_sis_id.csv, the "type" part of the table should not include
  user_integration_id

fixes CORE-914

Change-Id: I73a395bd7a721329ac64b73558e20635043c9c2a
Reviewed-on: https://gerrit.instructure.com/139037
Reviewed-by: Rob Orton <rob@instructure.com>
Product-Review: Tucker McKnight <tmcknight@instructure.com>
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Tested-by: Jenkins
2018-01-25 22:16:51 +00:00
Rob Orton d623f2e94f support for course_id on group category imports
fixes CORE-909

test plan
 - sis import for group category with course_id

Change-Id: Ib47ae2cd802a59a0b6d08e1a1fa0871d196e5cf6
Reviewed-on: https://gerrit.instructure.com/138981
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2018-01-25 20:33:55 +00:00
Rob Orton 3820096c95 add support for course_id on groups
fixes CORE-898

test plan
 - sis import for groups into courses should work

Change-Id: I59c9e88c265edd19cd280645cffd27d9b184ca54
Reviewed-on: https://gerrit.instructure.com/138966
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2018-01-25 19:31:05 +00:00
Rob Orton bdf0345b8e add group_category_id to group importer
fixes CORE-655

test plan
 - should be able to set group_category_id in
   groups importer
 - rake doc:api should work

Change-Id: I183143c319cdb5aa0f79ff2923c76b6fbec4d598
Reviewed-on: https://gerrit.instructure.com/137886
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Tested-by: Jenkins
Product-Review: Rob Orton <rob@instructure.com>
2018-01-23 19:21:33 +00:00
Rob Orton c0aa33d989 add group_category importer
fixes CORE-654

test plan
 - rake doc:api
 - sis docs should generate
 - group category importer should work

Change-Id: I015692ae5795f1dec5da291fe84330185bd7b3c7
Reviewed-on: https://gerrit.instructure.com/137878
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2018-01-23 19:21:27 +00:00
Rob Orton 42978c94a5 allow group_categories to be looked up by sis_id
fixes CORE-651

test plan 
 - use sis_group_category_id:sis_id in a path
 - it should work

Change-Id: I1a0b2cc769389bd19c594796e0e8218497612d55
Reviewed-on: https://gerrit.instructure.com/136853
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2018-01-16 18:29:50 +00:00
James Williams 32fab83fa7 fix file upload documentation typo
closes #CORE-860

Change-Id: I0770ec5a6b54672fd78f363dcdd05a0d6ec20245
Reviewed-on: https://gerrit.instructure.com/137916
Reviewed-by: Rob Orton <rob@instructure.com>
Tested-by: Jenkins
Product-Review: James Williams  <jamesw@instructure.com>
QA-Review: James Williams  <jamesw@instructure.com>
2018-01-15 18:12:42 +00:00
James Williams 299e7b15c0 allow setting enrollment-specific term dates via SIS
test plan:
* refer to the documentation for the new
date_override_enrollment_type column in terms.csv
* should be able to use it to set enrollment-
specific date overrides for an existing term

closes #CORE-583

Change-Id: I04b766e70b82a007c1e17df8545d5dd05802ef61
Reviewed-on: https://gerrit.instructure.com/136014
Reviewed-by: Rob Orton <rob@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
2018-01-03 15:05:39 +00:00
Jeremy Stanley 1d6f61d4d1 SIS import: ensure imported users have a name
also, don't remove an existing name if the import doesn't
specify one

test plan:
 - if a SIS import creates a new user and all of the
   following columns are missing or blank, the login_id
   should be used as the name.
   * full_name
   * first_name
   * last_name
   * sortable_name
   * short_name
 - if a SIS import updates an existing user and does not
   specify any of the above columns, the user's name
   should remain unchanged (not blanked out!)

fixes ADMIN-579

Change-Id: Id6297bdac3cf13c7561c713b3cd983af3d1ed3c3
Reviewed-on: https://gerrit.instructure.com/136307
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Tested-by: Jenkins
Product-Review: Jeremy Stanley <jeremy@instructure.com>
2017-12-28 23:51:26 +00:00
Andrew Butterfield f9d1e029a0 Revert previousCourseId variable substitution change
fixes PLAT-2961

Reverts d3d4cc58e0 but also adds
functionality with new variable expansion

Test plan:
* Ensure $Canvas.course.previousContextIds works as it did before
* Ensure $Canvas.course.previousContextIds.recursive works the way the
  new changed intended

Change-Id: I737c2bdca2936e092fb6a929adb009cdc79b89d5
Reviewed-on: https://gerrit.instructure.com/136245
Tested-by: Jenkins
QA-Review: August Thornton <august@instructure.com>
Reviewed-by: August Thornton <august@instructure.com>
Product-Review: Andrew Butterfield <abutterfield@instructure.com>
2017-12-21 17:37:05 +00:00
wdransfield 400ef026b6 Update plagiarism platform documentation
Closes PLAT-2938

Test Plan:
Verify documentation generates successfully and contains accurate
information.

Verify new links work

Change-Id: Idd3a48e9f1e346a07bc990039346d3dad6fe4d22
Reviewed-on: https://gerrit.instructure.com/134945
Tested-by: Jenkins
Reviewed-by: Andrew Butterfield <abutterfield@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Jesse Poulos <jpoulos@instructure.com>
2017-12-11 18:41:16 +00:00
Rob Orton f10473ee1f allow changing integrations_ids with sis_import
fixes CORE-659

test plan
 - docs should generate
 - should allow removing integration_ids via sis

Change-Id: Ib7aaf4a5901f7e29f2f1330bf5ae50f99c416f52
Reviewed-on: https://gerrit.instructure.com/134457
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2017-12-06 22:18:15 +00:00
Marc Alan Phillips 08b1df3440 Enable Person.name.display as an option
Allows for lti launch where you can expand the display name of
a user in lti tools for use.

closes PLAT-2776

Test Plan:
 - Create an lti config that uses Person.name.display
 - Do an lti launch and verify that the expanded value as a param
 - For LTI 2, create a tool proxy that includes the Personl.name.display
  capability
 - Repeat step 2

Change-Id: I7f919bb9af2bb1efb42d8a3bd76cfb3b69378152
Reviewed-on: https://gerrit.instructure.com/134518
Tested-by: Jenkins
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Marc Alan Phillips <mphillips@instructure.com>
2017-12-04 21:07:03 +00:00
Andrew Gardener 7a4b4d82b8
Add term name to tools variable substitutions
test plan:
* add a new custom field, `term_name=$Canvas.term.name`, to an external tool
* open launch link to external tool
* verify that `custom_term_name` was part of the launch request and is correct
2017-11-22 13:03:32 -08:00