~azzar1/unity/add-show-desktop-key

« back to all changes in this revision

Viewing changes to bin/ivle-enrolallusers

  • Committer: David Coles
  • Date: 2010-07-27 04:52:14 UTC
  • Revision ID: coles.david@gmail.com-20100727045214-p32h1kc0gcv48dpr
Worksheets: Strip off whitespace from the end of exercise attempts.

This solves an issue where accidental whitespace in an attempt will cause 
"IndentationError" syntax error (which don't occur when run in console).

Show diffs side-by-side

added added

removed removed

Lines of Context:
42
42
p.add_option('--user', '-u', metavar="<login>",
43
43
             help="Just perform enrolment for user <login>")
44
44
p.add_option('--verbose', '-v', action='store_true')
45
 
p.add_option('--year', '-y', metavar="<year>",
46
 
             help="If specified, year to make enrolments for (default: "
47
 
                  "current year)")
48
45
options, arguments = p.parse_args()
49
46
 
50
47
if options.verbose:
55
52
    print >> sys.stderr, "%s must be run as root" % sys.argv[0]
56
53
    sys.exit(1)
57
54
 
58
 
store = ivle.database.get_store(ivle.config.Config())
 
55
config = ivle.config.Config()
 
56
store = ivle.database.get_store(config)
 
57
 
59
58
if options.user is None:
60
59
    users = store.find(ivle.database.User).order_by(ivle.database.User.login)
61
60
else:
66
65
else:
67
66
    logging.info("enrolment started for user %s" % options.user)
68
67
 
69
 
if options.year is not None and not options.year.isdigit():
70
 
    logging.error("Year must be numeric")
71
 
    sys.exit(1)
72
 
 
73
 
options.year = None if options.year is None else unicode(options.year)
74
 
 
75
68
for user in users:
76
69
    try:
77
70
        # Get all subjects this user is enrolled in, and add them to the DB if
78
71
        # they match one of our local subject codes
79
 
        res = ivle.pulldown_subj.enrol_user(store, user, options.year)
 
72
        res = ivle.pulldown_subj.enrol_user(config, store, user)
80
73
        logging.info("Enrolled user %s in %d subject%s." % (user.login, res,
81
74
                        '' if res == 1 else 's'))
82
75
    except Exception, message: