Commit Graph

163 Commits

Author SHA1 Message Date
JT Olds f39c453cde cleaning up grade exchange
test plan:
 * set up an account with a course
 * start netcat in listening mode
 * enable the grade export plugin for the course to post to your netcat
   instance
 * visit the course as a teacher and set up some assignments with grades
 * publish the grades

Change-Id: I7f5b6b264b70ffe06c38f29ad52ee1d4694e5a8d
Reviewed-on: https://gerrit.instructure.com/7279
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
2011-12-09 13:45:19 -07:00
Cody Cutrer df55776d07 remove completely unused aborted workflow state
test plan: n/a

Change-Id: I85628abbc211d07ee1fb4abba028eea4b71e93be
Reviewed-on: https://gerrit.instructure.com/7041
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: JT Olds <jt@instructure.com>
2011-11-28 16:33:30 -07:00
Cody Cutrer a696880bf2 fix permissions for date-completed users fixes #6431
test plan: enroll a teacher in an active course; set the dates for
  the associated term in the past.  log in as the user,
  they should still be able to see the course settings page, but
  not change anything

Change-Id: I27cbdc961e977c1ae1c70ae5198b6f8478430f1a
Reviewed-on: https://gerrit.instructure.com/7077
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>
2011-11-28 14:39:27 -07:00
Cameron Matheson d315baa896 keep root_account_id in sync between course/enrollments
fixes #6142

test plan: Create a course and enroll some students.  Move the course to
  another root account.  The following SQL query should return 0:

    SELECT COUNT(e.id) FROM enrollments e
    INNER JOIN courses c ON e.course_id = c.id
    WHERE e.root_account_id != c.root_account_id

  To test the migration, mess up some of the enrollment
  root_account_ids:

    UPDATE enrollments SET root_account_id = 99

  Before migrating, the SELECT COUNT snippet above should return
  false, after migrating, it should return true.

Change-Id: I9b18dded8a763a8a05f5e631907f77b4e9a1bd49
Reviewed-on: https://gerrit.instructure.com/7081
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Jon Jensen <jon@instructure.com>
2011-11-28 14:29:58 -07:00
Cody Cutrer 0fb3b5a925 show invitations for temporary users to users that have the same e-mail
refs #5833

testplan: enable open registration, invite a user, have that user accept
  and create a new account.  Then invite with the same e-mail again,
  login as the old user, and the invitation should be visible in the UI.
  Accept the invitation, using the existing account, and the enrollment
  should not be duplicated in the UI.

Change-Id: I64c886617f87f64bad35593229ee18434163ca7b
Reviewed-on: https://gerrit.instructure.com/6778
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>
2011-11-18 13:38:19 -07:00
Bracken Mosbacker 6e4eab5f42 add api for copying course content
Test plan:
 * use the /api/v1/courses/:course_id/course_copy endpoint to start a course copy
 * use the returned status url to make sure the status works
 * when the copy is complete make sure the course has all expected data

closes #6250

Change-Id: I95c2567d0a566d97836579dd3b7b0a224328ec38
Reviewed-on: https://gerrit.instructure.com/7032
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>
2011-11-18 08:29:23 -07:00
Cody Cutrer 9b9fd331a2 fix permission check for TAs refs #5833
also add a checkbox for admins to only search for existing users
(i.e. ignore open registration)

Change-Id: I84d2ba7992339b37506e41a50c336325af0ac73b
testplan:
 * add a student to a course as a TA
 * add a user to an account or a course as an admin, with and without
   open registration, with and without manage_user_logins permission,
   with and without checking "search only existing users" (not all
   combinations applicable, each underlying condition is checked in
   specs)
Reviewed-on: https://gerrit.instructure.com/6969
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>
2011-11-16 10:28:51 -07:00
Bracken Mosbacker ba28a28d16 copy and export/import external tool assignments
External tools weren't copied when copying a course
so that is implemented here as well

test plan:
 Export/Import:
  * Create an external tool assignment
  * export the course
  * import the course into a new course
  * set the secrets on the external tool
  * make sure the assignment works in the new course
 Copy:
  * Copy a course into a new course
	* make sure the assignment works

refs #5892

Change-Id: I4aab8966b53ca2d144fddd71eefd0acbdb7c0bff
Reviewed-on: https://gerrit.instructure.com/6958
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>
2011-11-15 15:33:20 -07:00
JT Olds bf4bde1de1 order the gradebook csv assignment columns by due_date, then position
fixes #5824

testplan: for each sort criteria, make a number of assignments that
  differ in every field but the already matched sort criteria, and
  make sure the sort order is right in the csv.

  sort criteria are whether or not there is a due date, due date,
  assignment group, position, and title

Change-Id: Ia18f32de5ab2f44e3e64b582cca3df1bedd9553a
Reviewed-on: https://gerrit.instructure.com/6791
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
2011-11-11 10:07:07 -07:00
Brian Palmer ed275b3293 restrict submission actions to sections
teachers and TAs can be limited to a specific section, in which case we
need to enforce those limitations in the submissions api.

testplan: set up a course with 2+ sections, and a teacher who is only
allowed to access 1 of those sections. then verify:
  * GET /submissions should not list users in other sections
  * GET /submissions/:id for a user in another section should 404
  * PUT /submissions/:id for a user in another section should 404
  * GET for_students with user ids in other sections should not return those users
  * all of the above should return no submissions if the user attempts to access the api via /sections/:section_id of the other section

close #5859

Change-Id: I102b13d1462f588277ca559f418785452e58e816
Reviewed-on: https://gerrit.instructure.com/6796
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
2011-11-10 12:08:58 -07:00
Brian Whitmer 6b83b9227c basic lti navigation links
By properly configuring external tools (see
/spec/models/course_spec/rb:898 for examples) they can
be added as left-side navigation links to a course,
an account, or to the user profile section of Canvas.

testing notes:
- you have to manually set options on the external tool:
- for user navigation the tool needs to be created on the root account
  with the following settings:
  {:user_navigation => {:url => <url>, :text => <tab label>} }
  (there are also some optional language options you can set using
  the :labels attribute)
- for account navigation it's the same
- for course navigation it's the same, except with :course_navigation
  there's also some additional options:
  :visibility => <value> // public, members, admins
  :default => <value> // disabled, enabled

test plan:
- configure a user navigation tool at the root account level,
  make sure it shows up in the user's profile section

- configure a course navigation tool at the account level,
  make sure it shows up in the course's navigation

- configure a course navigation tool at the course level,
  make sure it shows up in the course's navigation

- make sure :default => 'disabled' course navigation tools don't
  appear by default in the navigation, but can be enabled on
  the course settings page

- make sure :visibility => 'members' only shows up for course members

- make sure :visibility => 'admins' only shows up for course admins

- configure an account navigation tool at the account level,
  make sure it shows up in the account's navigation, and
  any sub-account's navigation

Change-Id: I977da3c6b89a9e32b4cff4c2b6b221f8162782ff
Reviewed-on: https://gerrit.instructure.com/5427
Reviewed-by: Brian Whitmer <brian@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
2011-11-04 17:07:17 -06:00
Jacob Fugal 9e9040146a disable 'randomly assign students' for restricted self-signup groups
also, make the random assignment happen on the server via an ajax call.
before, it would make one ajax call per student assigned, which is
rather inefficient when there are many students to assign.

fixes #6099

Change-Id: I89e5059fa1bd42b1a25e5cb88d552841c426530a
Reviewed-on: https://gerrit.instructure.com/6576
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
2011-11-04 12:25:44 -06:00
Cody Cutrer 3f3f72637a expose sortable name to user, fixes #5317
* expose sortable name directly to the user
 * don't downcase it
 * use a LOWER(sortable_name) index for postgres
 * set sortable name as "last_name, first_name" explicitly for SIS imports
 * populate sortable name intelligently in the UI

Change-Id: I476641f4817e27a11b573d91f102c5a74d3eba26
Reviewed-on: https://gerrit.instructure.com/6512
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Jon Jensen <jon@instructure.com>
Reviewed-by: Ryan Florence <ryanf@instructure.com>
2011-10-31 12:22:08 -06:00
Cody Cutrer f99abb4e56 Revert "add distinct name part fields refs #5317"
This reverts commit 995110f555.

Change-Id: Ic00e7ced20ca9d912587e3440862ceb50e601d15
Reviewed-on: https://gerrit.instructure.com/6511
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Zach Wily <zach@instructure.com>
2011-10-27 10:17:29 -06:00
Cody Cutrer 2595707b6b fix self enrollments refs #5833
note that it's not strictly broken by #5833's changes, because it
didn't work for existing users before (it would ask you to login
if you weren't, and you put in an existing e-mail address, and then
it would ask you to login again if you were already logged in).

Change-Id: Idb84397ad90987076c8e717863be496fc825b77e
Reviewed-on: https://gerrit.instructure.com/6481
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
2011-10-26 16:01:16 -06:00
Cody Cutrer c59c0f593f refactor user creation/invitations closes #5833
fixes #5573, #5572, #5753

 * communication channels are now only unique within a single user
 * UserList changes
   * Always resolve pseudonym#unique_ids
   * Support looking up by SMS CCs
   * Option to either require e-mails match an existing CC,
     or e-mails that don't match a Pseudonym will always be
     returned unattached (relying on better merging behavior
     to not have a gazillion accounts created)
   * Method to return users, creating new ones (*without* a
     Pseudonym) if necessary. (can't create with a pseudonym,
     since Pseudonym#unique_id is still unique, I can't have
     multiple outstanding users with the same unique_id)
 * EnrollmentsFromUserList is mostly gutted, now using UserList's
   functionality directy.
 * Use UserList for adding account admins, removing the now
   unused Account#add_admin => User#find_by_email/User#assert_by_email
   codepath
 * Update UsersController#create to not worry about duplicate
   communication channels
 * Remove AccountsController#add_user, and just use
   UsersController#create
 * Change SIS::UserImporter to send out a merge opportunity
   e-mail if a conflicting CC is found (but still create the CC)
 * In /profile, don't worry about conflicting CCs (the CC confirmation
   process will now allow merging)
   * Remove CommunicationChannelsController#try_merge and #merge
 * For the non-simple case of CoursesController#enrollment_invitation
   redirect to /register (CommunicationsChannelController#confirm)
   * Remove CoursesController#transfer_enrollment
 * Move PseudonymsController#registration_confirmation to
   CommunicationChannelsController#confirm (have to be able to
   register an account without a Pseudonym yet)
   * Fold the old direct confirm functionality in, if there are
     no available merge opportunities
   * Allow merging the new account with the currently logged in user
   * Allow changing the Pseudonym#unique_id when registering a new
     account (since there might be conflicts)
   * Display a list of merge opportunities based on conflicting
     communication channels
     * Provide link(s) to log in as the other user,
       redirecting back to the registration page after login is
       complete (to complete the merge as the current user)
   * Remove several assert_* methods that are no longer needed
 * Update PseudonymSessionsController a bit to deal with the new
   way of dealing with conflicting CCs (especially CCs from LDAP),
   and to redirect back to the registration/confirmation page when
   attempting to do a merge
 * Expose the open_registration setting; use it to control if
   inviting users to a course is able to create new users

Change-Id: If2f38818a71af656854d3bf8431ddbf5dcb84691
Reviewed-on: https://gerrit.instructure.com/6149
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
2011-10-24 12:07:08 -06:00
Cody Cutrer 995110f555 add distinct name part fields refs #5317
Change-Id: I0d11c51d4e0e9be093b65cca2ea85ba18e99bce9
Reviewed-on: https://gerrit.instructure.com/6314
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Reviewed-by: Brian Whitmer <brian@instructure.com>
2011-10-24 12:06:59 -06:00
Cody Cutrer 2df7fceadb drop unused Enrollments#invitation_email
Change-Id: I4e80fda6312e4050c4316aceb8de07cfe4c6df51
Reviewed-on: https://gerrit.instructure.com/6287
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
2011-10-21 10:41:22 -06:00
Brian Palmer 7738123365 fix localjumperror in new html rewriter refactor; fixes #5964
Change-Id: I6d65c91f6cde58fedca7f739588ecf27bc395f09
Reviewed-on: https://gerrit.instructure.com/6217
Reviewed-by: Zach Wily <zach@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
2011-10-15 19:28:14 -06:00
JT Olds 9d4a4944b6 allow sis imports to make things sticky or clear stickiness altogether
* adds ui

Change-Id: Id8f3639457879d23125c0fb04ef5038d91826f21
Reviewed-on: https://gerrit.instructure.com/6050
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
2011-10-13 10:54:58 -06:00
Jon Jensen 56e9692b23 hide sections from students/observers in recipient finder
Change-Id: I805d05a356c99fe8dddb68f46c70d8d3ee02b4ca
Reviewed-on: https://gerrit.instructure.com/6157
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
2011-10-13 10:29:59 -06:00
Cody Cutrer d2a5328993 drop Pseudonym#sis_source_id closes #5897
Change-Id: I81f2df5324ae7f9747f5d72ac1f8686932c815ff
Reviewed-on: https://gerrit.instructure.com/6093
Reviewed-by: JT Olds <jt@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
2011-10-12 12:18:37 -06:00
JT Olds dab4973c64 show individual grade publishing status results on the course settings page
Change-Id: I81ddbc77fbc7ac5db4d1b26e88afa73477b2c26c
Reviewed-on: https://gerrit.instructure.com/5950
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
2011-10-11 13:18:59 -06:00
Brian Palmer 150491a217 refactor user content rewriters
One in course copy, and one in common cartridge export.

refs #5739

Change-Id: I4ba016f643a22f0cf3f6dbbe6b00dcd7d228a10a
Reviewed-on: https://gerrit.instructure.com/5979
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
2011-10-10 15:05:15 -06:00
Jon Jensen 71a650d382 revised address book, fixes #5639
added/changed functionality:

 * search for course sections
 * browse and select groups/sections/enrollment types (e.g. all
   teachers) within a course
 * browse and select enrollment types within a section
 * changed toggle vs. drilldown input handling (e.g. clicking on an
   expandable element now always expands it, unless you click on the
   checkbox)
 * "Select All" checkbox within groups and enrollment types

Change-Id: I13baa9e8b98abc5b5ec6dfb4cfbd1021160f65cc
Reviewed-on: https://gerrit.instructure.com/5955
Tested-by: Hudson <hudson@instructure.com>
Tested-by: Jon Jensen <jon@instructure.com>
Reviewed-by: Zach Wily <zach@instructure.com>
Reviewed-by: Zach Pendleton <zachp@instructure.com>
2011-10-10 09:58:44 -06:00
Jacob Fugal 5c8406bd35 GroupCategory model
Group#group_category_name (groups.category) and
Assignment#group_category_name (assignments.group_category) are now
deprecated.

refs #4624

Change-Id: I8fc5d03a75e962c3f649305986f77ad242d3a694
Reviewed-on: https://gerrit.instructure.com/5765
Reviewed-by: Brian Palmer <brianp@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
2011-10-10 09:36:06 -06:00
Brian Palmer 2a710b2d86 course copy with replaced files, fixes #5536
Change-Id: Ie64cadffbaf801e4c28e538e503c415095865908
Reviewed-on: https://gerrit.instructure.com/5903
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Reviewed-by: Zach Wily <zach@instructure.com>
2011-10-07 16:52:03 -06:00
Jacob Fugal 1dc8f60691 don't cross outcome groups and outcomes
a course will have content tags for both learning outcomes and learning
outcome groups. the latter still use a tag_type of
'learning_outcome_association' (maybe a bug?). course.learning_outcomes
could then choose one of these content_tags, and pull in a completely
unrelated outcome that happened to have the same id as the group from
the content_tag row.

fixes #5831

Change-Id: I1be7e579147331165fbfb7c241c224a255561715
Reviewed-on: https://gerrit.instructure.com/5977
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>
2011-10-05 11:01:15 -06:00
JT Olds b61354b3c4 order assignments in gradebooks csv. fixes #5824
Change-Id: I0129fdf15d302e28375a6401f5b48f92781dea1e
Reviewed-on: https://gerrit.instructure.com/5971
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
2011-10-04 17:45:21 -06:00
Brian Whitmer ab1fddba77 basic lti tweaks for certification
fixes #5812

Change-Id: I34bd12bace487280d5531c4d84b1d8395059c716
Reviewed-on: https://gerrit.instructure.com/5597
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
2011-10-04 10:59:21 -06:00
Jon Jensen 051f9195d1 enforce section visibility in speedgrader, fixes #5337
Change-Id: I9647f4956482281154f059f8e982286f36aa245c
Reviewed-on: https://gerrit.instructure.com/5921
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Zach Pendleton <zachp@instructure.com>
Reviewed-by: Ryan Shaw <ryan@instructure.com>
2011-10-03 09:08:33 -06:00
JT Olds cb5d048c77 store grade publishing messages
Change-Id: Icfb13244dd46cdeb54b07ef4426d3ba14825b591
Reviewed-on: https://gerrit.instructure.com/5939
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
2011-09-30 13:46:59 -06:00
JT Olds 858b33549f make course terms sticky
refs #5407

Change-Id: I3b8fc96198e6dd583619b078294874dc7cfba19c
Reviewed-on: https://gerrit.instructure.com/5878
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
2011-09-30 11:00:27 -06:00
JT Olds 8ac681f201 adding start and end date stickiness
Change-Id: Ifd23b2731725619009884ee56f0c8b1964c6a996
Reviewed-on: https://gerrit.instructure.com/5875
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
2011-09-30 11:00:09 -06:00
JT Olds 02e4132107 refactor sticky sis fields
Change-Id: I1cddc633b11b8937f8a3b36c2fa0a00d4d75b513
Reviewed-on: https://gerrit.instructure.com/5745
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
2011-09-27 16:34:37 -06:00
Brian Palmer 0432c66a24 remove deprecated ruby syntax
these are syntax errors in 1.9.x

Change-Id: I7cbd66643cb371e4be9f8da0365bf1e988ee5de8
Reviewed-on: https://gerrit.instructure.com/5833
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Jon Jensen <jon@instructure.com>
2011-09-27 10:28:22 -06:00
Bracken Mosbacker 169e54d87b added blti links to cc importer
Also had to change the export/importing of blti links
from canvas

refs #4153

Change-Id: Iae2d6e9c677d310d7e824fa78885c8aca2c1af83
Reviewed-on: https://gerrit.instructure.com/5703
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
2011-09-23 13:27:54 -06:00
Bracken Mosbacker 58dcf16c92 add links and discussions to cc importer
This also fixed some problems with the web content
part of the importer and made the spec run the full
migration from a cc package

refs #4153

Change-Id: I1700043b578fe79586104cf13b260c78c3166194
Reviewed-on: https://gerrit.instructure.com/5702
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
2011-09-23 13:27:47 -06:00
Bracken Mosbacker 81a10db574 moved migration classes into a proper namespace
refs #4153

Change-Id: I08035c5e6439d46c8ca61fb9409b1c2972567933
Reviewed-on: https://gerrit.instructure.com/5700
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
2011-09-23 13:27:16 -06:00
Cody Cutrer 973b04c084 update_account_associations immediately for new objects
fixes #5359

Change-Id: I4f19c26939e38bb02c2e730629298c2a5937bce4
Reviewed-on: https://gerrit.instructure.com/5219
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: JT Olds <jt@instructure.com>
2011-09-14 15:41:55 -06:00
Cody Cutrer 18440ed810 remove never-used column and index
Change-Id: I6ba75de79e35e5b7789aac76c45768d312226646
Reviewed-on: https://gerrit.instructure.com/5392
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>
2011-09-14 09:15:11 -06:00
Cody Cutrer 24485249b1 remove unused columns from courses
Change-Id: I064fbde82894820bacc8604779a75c8aeb060092
Reviewed-on: https://gerrit.instructure.com/5633
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
2011-09-13 12:53:03 -06:00
Cody Cutrer 28e34154d6 fix course reset for content on course object itself
refs #4583

Change-Id: Ic9be9b437d3012c8a085ce27d811f42a30e8a358
Reviewed-on: https://gerrit.instructure.com/5632
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
2011-09-13 12:52:51 -06:00
Cody Cutrer 5dbdd72456 fix points possible row in exported grades csv fixes #5603
Change-Id: Ia04222e7f12426c5a19e021981b1c7b656f71183
Reviewed-on: https://gerrit.instructure.com/5625
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
2011-09-12 15:09:03 -06:00
Cody Cutrer 5d39e39b5c fix typo breaking day substitions fixes #5590
Change-Id: I9f03bf3c1bcf0965a9bd70230be95b8f567c7870
Reviewed-on: https://gerrit.instructure.com/5617
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: JT Olds <jt@instructure.com>
2011-09-12 12:34:24 -06:00
Zach Wily 53b731a079 run course copy asynchronously in a job; fixes #5422
Change-Id: Ie75a95203b8187c3a7cf37966f84179ce4110118
Reviewed-on: https://gerrit.instructure.com/5461
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>
2011-09-08 08:23:47 -06:00
Cody Cutrer 0682887ee1 don't remove tabs for content that is specifically manageable fixes #5537
Change-Id: I224d66950d0c811a69cabbcf9e7f2dcc685d635b
Reviewed-on: https://gerrit.instructure.com/5468
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>
2011-09-07 16:13:34 -06:00
Cody Cutrer a36d570b37 s/course_details/settings/g closes #5458
leave the old route in as well

Change-Id: Ifdbc4bdf9d23d866d941fac0b33cff456514e89f
Reviewed-on: https://gerrit.instructure.com/5345
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
2011-09-07 12:57:41 -06:00
Cody Cutrer da6426b5fb change the permissions necessary to delete a course
requires :manage_courses, or :manage_sis and the course is a SIS
course, or :update (teachers) and the course is not a SIS course.

Change-Id: I198897164c5fb024fad4bc594500296200eaf4a0
Reviewed-on: https://gerrit.instructure.com/5371
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: JT Olds <jt@instructure.com>
2011-09-06 09:20:30 -06:00
Brian Palmer 58de9d86dc touch user after adding enrollment, fixes #5481
Change-Id: I5b45f628d1af276f563ccd5a6b0bbbf8e807f44b
Reviewed-on: https://gerrit.instructure.com/5383
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
2011-09-01 16:16:16 -06:00