diff --git a/utility-scripts/create_groups.py b/utility-scripts/create_groups.py index 0e3245bb4d..8108498cb8 100644 --- a/utility-scripts/create_groups.py +++ b/utility-scripts/create_groups.py @@ -9,17 +9,20 @@ import os, sys, string, re sys.path.append(os.path.abspath('.')) os.environ['DJANGO_SETTINGS_MODULE'] = 'lms.envs.dev' -try: - from lms.envs.dev import * -except Exception as err: - print "Run this script from the top-level mitx directory (mitx_all/mitx), not a subdirectory." - sys.exit(-1) +#try: +# from lms.envs.dev import * +#except Exception as err: +# print "Run this script from the top-level mitx directory (mitx_all/mitx), not a subdirectory." +# sys.exit(-1) from django.conf import settings from django.contrib.auth.models import User, Group from path import path from lxml import etree +print "configured=",settings.configured +print settings.SETTINGS_MODULE + data_dir = settings.DATA_DIR print "data_dir = %s" % data_dir diff --git a/utility-scripts/create_user.py b/utility-scripts/create_user.py index 3ce9ce0ecf..5a52baff34 100644 --- a/utility-scripts/create_user.py +++ b/utility-scripts/create_user.py @@ -13,11 +13,13 @@ import readline sys.path.append(os.path.abspath('.')) os.environ['DJANGO_SETTINGS_MODULE'] = 'lms.envs.dev' -try: - from lms.envs.dev import * -except Exception as err: - print "Run this script from the top-level mitx directory (mitx_all/mitx), not a subdirectory." - sys.exit(-1) +#try: +# from lms.envs.dev import * +#except Exception as err: +# print "Run this script from the top-level mitx directory (mitx_all/mitx), not a subdirectory." +# sys.exit(-1) + +sys.path.append(os.path.abspath('common/djangoapps')) from student.models import UserProfile, Registration from external_auth.models import ExternalAuthMap diff --git a/utility-scripts/manage_class_groups.py b/utility-scripts/manage_class_groups.py new file mode 100644 index 0000000000..a21ec9151e --- /dev/null +++ b/utility-scripts/manage_class_groups.py @@ -0,0 +1,74 @@ +#!/usr/bin/python +# +# File: manage_class_groups +# +# list and edit membership in class staff group + +import os, sys, string, re +import datetime +from getpass import getpass +import json +import readline + +sys.path.append(os.path.abspath('.')) +os.environ['DJANGO_SETTINGS_MODULE'] = 'lms.envs.dev' + +#try: +# from lms.envs.dev import * +#except Exception as err: +# print "Run this script from the top-level mitx directory (mitx_all/mitx), not a subdirectory." +# sys.exit(-1) + +from django.conf import settings +from django.contrib.auth.models import User, Group + +#----------------------------------------------------------------------------- +# get all staff groups + +gset = Group.objects.all() + +print "Groups:" +for cnt,g in zip(range(len(gset)), gset): + print "%d. %s" % (cnt,g) + +gnum = int(raw_input('Choose group to manage (enter #): ')) + +group = gset[gnum] + +#----------------------------------------------------------------------------- +# users in group + +uall = User.objects.all() +print "----" +print "List of All Users: %s" % [str(x.username) for x in uall] +print "----" + +while True: + + print "Users in the group:" + + uset = group.user_set.all() + for cnt, u in zip(range(len(uset)), uset): + print "%d. %s" % (cnt, u) + + action = raw_input('Choose user to delete (enter #) or enter usernames (comma delim) to add: ') + + m = re.match('^[0-9]+$',action) + if m: + unum = int(action) + u = uset[unum] + print "Deleting user %s" % u + u.groups.remove(group) + + else: + for uname in action.split(','): + try: + user = User.objects.get(username=action) + except Exception as err: + print "Error %s" % err + continue + print "adding %s to group %s" % (user, group) + user.groups.add(group) + + +