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

« back to all changes in this revision

Viewing changes to www/dispatch/html.py

  • Committer: mattgiuca
  • Date: 2008-02-19 06:37:34 UTC
  • Revision ID: svn-v3-trunk0:2b9c9e99-6f39-0410-b283-7f802c844ae2:trunk:504
Warning: Broken build, but rather unavoidable or this commit will spiral out
of control.

dispatch.login: Removed all the misc user values from session. Replaced with
"user" which is a User object. All the code which looks up values in session
can just look up user and read fields from it; but they don't at the moment so
they break.

dispatch: All the rest of dispatch system updated to read from user instead,
and have no dependency on the other fields in session. So the top level works
(the apps don't).

user.py: Added __iter__ method, allowing dict() to be called on a user object.

debuginfo: Added a special print table for the user fields.

Show diffs side-by-side

added added

removed removed

Lines of Context:
52
52
""" % (cgi.escape(titlepart), cgi.escape(req.content_type)))
53
53
    # Write inline JavaScript which gives the client code access to certain
54
54
    # server-side variables.
55
 
    if req.username:
56
 
        username = repr(req.username)
 
55
    if req.user:
 
56
        username = repr(req.user.login)
57
57
    else:
58
58
        username = "null"
59
59
    req.write("""  <script type="text/javascript">
86
86
  <h2>Informatics Virtual Learning Environment</h2>
87
87
""")
88
88
 
89
 
    if req.username:
 
89
    if req.user:
90
90
        # Get the user's nickname from the request session
91
 
        nickname = req.get_session()['nick']
 
91
        nickname = req.user.nick
92
92
        req.write('  <p class="userhello">%s (<span '
93
93
            'class="username">%s</span>) |\n'
94
94
            '    <a href="%s">Help</a> |\n'
113
113
    # If req has a "no_agreement" attribute, then it is because the user has
114
114
    # not signed the agreement; therefore we are displaying the TOS page.
115
115
    # Do not show apps (see dispatch.login).
116
 
    if req.username and not hasattr(req, 'no_agreement'):
 
116
    if req.user and not req.user.state == 'no_agreement':
117
117
        # Only print app tabs if logged in
118
118
        print_apps_list(req, req.app)
119
119
    req.write('</div>\n<div id="ivlebody">\n')