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

« back to all changes in this revision

Viewing changes to www/apps/groups/__init__.py

  • Committer: William Grant
  • Date: 2009-01-19 03:31:53 UTC
  • mto: This revision was merged to the branch mainline in revision 1090.
  • Revision ID: grantw@unimelb.edu.au-20090119033153-yluen63v59xyibq6
www/apps/groups: Port most of show_subject_panel to storm.
ivle.db: Remove get_subjects; it's no longer used.

Show diffs side-by-side

added added

removed removed

Lines of Context:
49
49
            req.write("<p>Error: You are not currently enrolled in any subjects."
50
50
                      "</p>\n")
51
51
        for enrolment in enrolments:
52
 
            show_subject_panel(req, db, enrolment.offering.id,
53
 
                enrolment.offering.subject.name)
 
52
            show_subject_panel(req, db, enrolment.offering)
54
53
        if req.user.hasCap(caps.CAP_MANAGEGROUPS):
55
54
            show_groupadmin_panel(req)
56
55
        
76
75
        onclick=\"manage_subject()\" />\n")
77
76
    req.write("<div id=\"subject_div\"></div>")
78
77
 
79
 
def show_subject_panel(req, db, offeringid, subj_name):
 
78
def show_subject_panel(req, db, offering):
80
79
    """
81
80
    Show the group management panel for a particular subject.
82
81
    Prints to req.
83
82
    """
84
83
    # Get the groups this user is in, for this offering
85
 
    groups = db.get_groups_by_user(req.user.login, offeringid=offeringid)
86
 
    if len(groups) == 0:
 
84
    groups = req.user.get_groups(offering)
 
85
    if groups.count() == 0:
87
86
        return
88
87
 
89
 
    req.write("<div id=\"subject%d\"class=\"subject\">"%offeringid)
90
 
    req.write("<h1>%s</h1>\n" % cgi.escape(subj_name))
91
 
    for groupid, groupnm, group_nick, is_member in groups:
92
 
        if group_nick is None:
93
 
            group_nick = "";
 
88
    req.write("<div id=\"subject%d\"class=\"subject\">"%offering.id)
 
89
    req.write("<h1>%s</h1>\n" % cgi.escape(offering.subject.name))
 
90
    for group in groups:
94
91
        req.write("<h2>%s (%s)</h2>\n" %
95
 
            (cgi.escape(group_nick), cgi.escape(groupnm)))
96
 
        if is_member:
 
92
            (cgi.escape(group.nick if group.nick else ''),
 
93
             cgi.escape(group.name)))
 
94
        if True: # XXX - was is_member (whether real member or just invited)
97
95
            req.write('<p>You are a member of this group.</p>\n')
98
96
        else:
99
97
            req.write('<p>You have been invited to this group.</p>\n')
104
102
                '<input type="button" '
105
103
                'onclick="decline(&quot;%(groupnm)s&quot;)" '
106
104
                'value="Decline" />\n'
107
 
                '</p>\n' % {"groupnm": cgi.escape(groupnm)})
 
105
                '</p>\n' % {"groupnm": cgi.escape(group.name)})
108
106
        req.write("<h3>Members</h3>\n")
109
107
        req.write("<ul>\n")
110
 
        for user in db.get_projectgroup_members(groupid):
 
108
        for user in db.get_projectgroup_members(group.id):
111
109
            req.write("<li>%s (%s)</li>" %
112
110
                      (cgi.escape(user['fullname']),
113
111
                       cgi.escape(user['login'])))