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

« back to all changes in this revision

Viewing changes to bin/ivle-showenrolment

  • Committer: Matt Giuca
  • Date: 2010-07-22 02:12:36 UTC
  • mfrom: (1812.1.13 late-submit)
  • Revision ID: matt.giuca@gmail.com-20100722021236-k8kt4cqdtywzpk24
Merge from trunk late-submit.
Students may now submit projects after the deadline, but they are warned that the submission is late.
Lecturers are now given data on which submissions were made late, and how many days.
(LP: #598346)

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.config
 
29
import ivle.database
29
30
 
30
31
if len(sys.argv) != 2:
31
32
    print >> sys.stderr, "usage: %s <login>" % os.path.basename(sys.argv[0])
32
33
    sys.exit(1)
33
34
 
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"
 
35
store = ivle.database.get_store(ivle.config.Config())
 
36
user = ivle.database.User.get_by_login(store, sys.argv[1])
 
37
 
 
38
if not user:
 
39
    print>>sys.stderr, "%s: user does not exist"%os.path.basename(sys.argv[0])
39
40
    sys.exit(1)
40
 
enrols = db.get_enrolment(sys.argv[1])
41
 
db.close()
42
41
 
43
 
if len(enrols) > 0:
44
 
    print 'Showing enrolment for %s (%s):' % (sys.argv[1], user.fullname)
45
 
    print '    Code       Name Semester Year'
46
 
    print '-------- ---------- -------- ----'
47
 
    for enrol in enrols:
48
 
        print '%(subj_code)8s %(subj_short_name)10s %(semester)8s %(year)4s' % enrol
 
42
if user.enrolments.count() > 0:
 
43
    print 'IVLE enrolment for %s (%s):' % (user.login, user.fullname)
 
44
    print '    Code       Name Year Semester     Role'
 
45
    print '-------- ---------- ---- -------- --------'
 
46
    for e in user.enrolments:
 
47
        print '%8s %10s %4s %8s %8s' % (
 
48
                e.offering.subject.code, e.offering.subject.short_name,
 
49
                e.offering.semester.year, e.offering.semester.semester,
 
50
                e.role
 
51
                )
49
52
else:
50
 
    print '%s (%s) is not enrolled in any offerings' % (sys.argv[1], user.fullname)
 
53
    print '%s (%s) is not enrolled in any IVLE offerings' % (
 
54
                        user.login, user.fullname)