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

« back to all changes in this revision

Viewing changes to ivle/cgirequest.py

Add tabs to the new framework. Move the app icons into the apps themselves.

Show diffs side-by-side

added added

removed removed

Lines of Context:
25
25
# This allows CGI scripts to create request objects and then pass them to
26
26
# normal IVLE handlers.
27
27
 
 
28
# NOTE: This object does not support write_html_head_foot (simply because we
 
29
# do not need it in its intended application: fileservice).
 
30
 
28
31
import sys
29
32
import os
30
33
import cgi
152
155
        self.status = CGIRequest.HTTP_OK
153
156
        self.content_type = None        # Use Apache's default
154
157
        self.location = None
 
158
        self.title = None     # Will be set by dispatch before passing to app
155
159
        self.styles = []
156
160
        self.scripts = []
 
161
        self.write_html_head_foot = False
157
162
        self.got_common_vars = False
158
163
 
159
164
 
192
197
            if k != 'Content-Type' and k != 'Location':
193
198
                print "%s: %s" % (k, v)
194
199
 
 
200
        # XXX write_html_head_foot not supported
 
201
        #if self.write_html_head_foot:
 
202
        #    # Write the HTML header, pass "self" (request object)
 
203
        #    self.func_write_html_head(self)
195
204
        # Print a blank line to signal the start of output
196
205
        print
197
206
 
240
249
        else:
241
250
            return sys.stdin.read(len)
242
251
 
 
252
    def throw_error(self, httpcode, message):
 
253
        """Writes out an HTTP error of the specified code. Exits the process,
 
254
        so any code following this call will not be executed.
 
255
 
 
256
        (This is justified because of the nature of CGI, it is a single-script
 
257
        environment, there is no containing process which needs to catch an
 
258
        exception).
 
259
 
 
260
        httpcode: An HTTP response status code. Pass a constant from the
 
261
        Request class.
 
262
        """
 
263
        raise ivle.util.IVLEError(httpcode, message)
 
264
 
243
265
    def handle_unknown_exception(self, exc_type, exc_value, exc_tb):
244
266
        if exc_type is ivle.util.IVLEError:
245
267
            self.headers_out['X-IVLE-Error-Code'] = exc_value.httpcode