Commit Graph

18 Commits

Author SHA1 Message Date
Farhaan Bukhsh
48ad7effb1 feat: grant course/library creation rights by organization (#26616)
Current State (before this commit):

  Studio, as of today doesn't have a way to restrict a user to
  create a course in a particular organization. What Studio
  provides right now is a CourseCreator permission which gives
  an Admin the power to grant a user the permission to create
  a course.

  For example: If the Admin has given a user Spiderman the
  permission to create courses, Spiderman can now create courses
  in any organization i.e Marvel as well as DC.
  There is no way to restrict Spiderman from creating courses
  under DC.

Purpose of this commit:

  The changes done here gives Admin the ability to restrict a
  user on an Organization level from creating courses via the
  Course Creators section of the Studio Django administration
  panel.

  For example: Now, the Admin can give the user Spiderman the
  privilege of creating courses only under Marvel organization.
  The moment Spiderman tries to create a course under some
  other organization(i.e DC), Studio will show an error message.

  This change is available to all Studio instances that
  enable the FEATURES['ENABLE_CREATOR_GROUP'] flag.
  Regardless of the flag, it will not affect any instances that choose
  not to use it.

BB-3622
2021-09-10 12:43:26 -04:00
Kyle McCormick
151bd13666 Use full names for common.djangoapps imports; warn when using old style (#25477)
* Generate common/djangoapps import shims for LMS
* Generate common/djangoapps import shims for Studio
* Stop appending project root to sys.path
* Stop appending common/djangoapps to sys.path
* Import from common.djangoapps.course_action_state instead of course_action_state
* Import from common.djangoapps.course_modes instead of course_modes
* Import from common.djangoapps.database_fixups instead of database_fixups
* Import from common.djangoapps.edxmako instead of edxmako
* Import from common.djangoapps.entitlements instead of entitlements
* Import from common.djangoapps.pipline_mako instead of pipeline_mako
* Import from common.djangoapps.static_replace instead of static_replace
* Import from common.djangoapps.student instead of student
* Import from common.djangoapps.terrain instead of terrain
* Import from common.djangoapps.third_party_auth instead of third_party_auth
* Import from common.djangoapps.track instead of track
* Import from common.djangoapps.util instead of util
* Import from common.djangoapps.xblock_django instead of xblock_django
* Add empty common/djangoapps/__init__.py to fix pytest collection
* Fix pylint formatting violations
* Exclude import_shims/ directory tree from linting
2020-11-10 07:02:01 -05:00
Kyle McCormick
538dbf696b Import CMS code using fully qualified module names
or, using proper the proper Python 3 relative imports
(e.g., 'from .views import x') which are standard and
unambiguous.
2020-10-19 09:34:31 -04:00
Feanil Patel
9cf2f9f298 Run 2to3 -f future . -w
This will remove imports from __future__ that are no longer needed.

https://docs.python.org/3.5/library/2to3.html#2to3fixer-future
2019-12-30 10:35:30 -05:00
Ayub khan
15a89ee0ce python 3 compatibility 2019-07-09 12:51:38 +05:00
Andy Armstrong
ebb04ca396 Reorder Studio imports using isort 2017-05-30 17:00:50 -04:00
Don Mitchell
3ebac80778 Replace authz fns with roles.py ones
STUD-1006
2014-01-14 17:04:44 -05:00
cahrens
5168a080ff Don't add users marked with is_staff to course creation table. 2013-07-22 14:45:22 -04:00
cahrens
4ecceb292e Add tests for changing table status without staff permissions. 2013-07-12 09:30:36 -04:00
cahrens
9b2c384666 Add post callback to request course creator status. 2013-07-11 13:53:56 -04:00
cahrens
f911c96dcb Pass course_creator_status to index.html. 2013-07-10 16:19:49 -04:00
cahrens
283e2b2e60 Don't store abbreviations for state. 2013-07-09 13:07:38 -04:00
cahrens
01557b26be Move call into authz methods out of model class. 2013-07-09 12:47:54 -04:00
cahrens
5cd90d58f5 Clarify documentation. 2013-07-09 10:33:37 -04:00
cahrens
5a3a03c0d4 Change user to foreign key (tracks deletions). 2013-07-09 10:23:38 -04:00
cahrens
5e8e3353ca Pylint/pep8 cleanup. 2013-07-08 16:07:02 -04:00
cahrens
f1f6acb5c7 Updates to admin table view.
Also hooks up the granted and deny events to the course creator group.
2013-07-03 17:07:06 -04:00
cahrens
2970f24245 Initial admin table view. 2013-07-03 09:24:02 -04:00