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

« back to all changes in this revision

Viewing changes to bin/ivle-showenrolment

  • Committer: William Grant
  • Date: 2009-01-22 04:47:42 UTC
  • mfrom: (1080.1.93 storm)
  • Revision ID: grantw@unimelb.edu.au-20090122044742-sa8gnww0ma2bm2rv
Merge Storm branch. ivle.db is dead. Watch out for the schema change.

Show diffs side-by-side

added added

removed removed

Lines of Context:
25
25
import os
26
26
import sys
27
27
 
28
 
import ivle.db
 
28
import ivle.database
29
29
 
30
30
if len(sys.argv) != 2:
31
31
    print >> sys.stderr, "usage: %s <login>" % os.path.basename(sys.argv[0])
32
32
    sys.exit(1)
33
33
 
34
 
db = ivle.db.DB()
35
 
try:
36
 
    user = db.get_user(sys.argv[1])
37
 
except ivle.db.DBException:
38
 
    print >> sys.stderr, "cannot retrieve user - probably doesn't exist"
 
34
store = ivle.database.get_store()
 
35
user = ivle.database.User.get_by_login(store, sys.argv[1])
 
36
 
 
37
if not user:
 
38
    print>>sys.stderr, "%s: user does not exist"%os.path.basename(sys.argv[0])
39
39
    sys.exit(1)
40
 
enrols = db.get_enrolment(sys.argv[1])
41
 
db.close()
42
40
 
43
 
if len(enrols) > 0:
44
 
    print 'Showing enrolment for %s (%s):' % (sys.argv[1], user.fullname)
 
41
if user.enrolments.count() > 0:
 
42
    print 'IVLE enrolment for %s (%s):' % (user.login, user.fullname)
45
43
    print '    Code       Name Semester Year'
46
44
    print '-------- ---------- -------- ----'
47
 
    for enrol in enrols:
48
 
        print '%(subj_code)8s %(subj_short_name)10s %(semester)8s %(year)4s' % enrol
 
45
    for e in user.enrolments:
 
46
        print '%8s %10s %8s %4s' % (
 
47
                e.offering.subject.code, e.offering.subject.short_name,
 
48
                e.offering.semester.semester, e.offering.semester.year
 
49
                )
49
50
else:
50
 
    print '%s (%s) is not enrolled in any offerings' % (sys.argv[1], user.fullname)
 
51
    print '%s (%s) is not enrolled in any IVLE offerings' % (
 
52
                        user.login, user.fullname)