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

« back to all changes in this revision

Viewing changes to www/dispatch/html.py

  • Committer: drtomc
  • Date: 2008-03-06 02:32:37 UTC
  • Revision ID: svn-v3-trunk0:2b9c9e99-6f39-0410-b283-7f802c844ae2:trunk:659
Add a little script for stuffing exercises into the database.

Add an identifier field to the problem table.

Show diffs side-by-side

added added

removed removed

Lines of Context:
24
24
# Does not include the login page. See login.py.
25
25
 
26
26
import cgi
 
27
import urllib
27
28
import os.path
28
29
 
29
30
import conf
61
62
    username = %s;
62
63
  </script>
63
64
""" % (repr(conf.root_dir), username))
64
 
    iconurl = get_icon_url(req.app)
 
65
    iconurl = get_icon_url(req.app, small=True)
65
66
    if iconurl:
66
67
        req.write("""  <link rel="shortcut icon" href="%s" />
67
68
""" % cgi.escape(iconurl))
89
90
    if req.user:
90
91
        # Get the user's nickname from the request session
91
92
        nickname = req.user.nick
92
 
        req.write('  <p class="userhello">%s (<span '
93
 
            'class="username">%s</span>) |\n'
 
93
        req.write('  <p class="userhello"><span id="usernick">%s</span> '
 
94
            '(<span class="username">%s</span>) |\n'
 
95
            '    <a href="%s">Settings</a> |\n'
94
96
            '    <a href="%s">Help</a> |\n'
95
 
            '    <a href="%s">Logout</a>\n'
 
97
            '    <a href="%s">Sign out</a>\n'
96
98
            '  </p>\n' %
97
99
            (cgi.escape(nickname), cgi.escape(req.user.login),
 
100
             cgi.escape(util.make_path('settings')),
98
101
             cgi.escape(get_help_url(req)),
99
102
             cgi.escape(util.make_path('logout'))))
100
103
    else:
106
109
    # If the "debuginfo" app is installed, display a warning to the admin to
107
110
    # make sure it is removed in production.
108
111
    if "debuginfo" in conf.apps.app_url:
109
 
        req.write("  <p><small>Warning: debuginfo is enabled. Remove this "
110
 
            "app from conf.apps.app_url when placed into production."
111
 
            "</small></p>\n")
 
112
        req.write("  <p><small>Warning: debuginfo is enabled. Set "
 
113
            "enable_debuginfo = False in lib/conf/apps.py, when placing IVLE "
 
114
            "into production.</small></p>\n")
112
115
 
113
116
    # If req has a "no_agreement" attribute, then it is because the user has
114
117
    # not signed the agreement; therefore we are displaying the TOS page.
143
146
    """Given an app's url name, gets the URL of the icon image for this app,
144
147
    relative to the site root. Returns None if the app has no icon."""
145
148
    if appurl is None: return None
146
 
    app = conf.apps.app_url[appurl]
 
149
    try:
 
150
        app = conf.apps.app_url[appurl]
 
151
    except KeyError:
 
152
        # Due to navigating to a bad app
 
153
        return None
147
154
    if small:
148
155
        icon_dir = conf.apps.app_icon_dir_small
149
156
    else:
169
176
        file.write('    <li%s>' % li_attr)
170
177
        if app.icon:
171
178
            file.write('<img src="%s" alt="" /> '
172
 
                % cgi.escape(get_icon_url(urlname)))
173
 
        file.write('<a href="%s">%s</a></li>\n'
174
 
            % (cgi.escape(util.make_path(urlname)), cgi.escape(app.name)))
 
179
                % urllib.quote(get_icon_url(urlname)))
 
180
        file.write('<a href="%s" title="%s">%s</a></li>\n'
 
181
            % (urllib.quote(util.make_path(urlname)), cgi.escape(app.desc),
 
182
                cgi.escape(app.name)))
175
183
 
176
184
    file.write('  </ul>\n')