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

« back to all changes in this revision

Viewing changes to ivle/cgirequest.py

  • Committer: David Coles
  • Date: 2010-07-28 10:52:48 UTC
  • mfrom: (1791.2.10 mediahandlers)
  • Revision ID: coles.david@gmail.com-20100728105248-zvbn9g72v1nsskvd
A series of HTML5 based media handlers using the <audio> and <video> tags.  
This replaces the previous page that just showed a download link (which is 
already available on the menu).

Also solves issue where media files were downloaded by the client twice (once 
in an AJAX request intended only for text).

Known issues:
    * Bug #588285: External BHO will not be able to play media due to not
      having IVLE cookie.
    * Bug #610745: Does not correctly preview revisions
    * Bug #610780: Ogg media does not work in Chromium

Show diffs side-by-side

added added

removed removed

Lines of Context:
27
27
 
28
28
import sys
29
29
import os
 
30
import os.path
30
31
import cgi
31
32
import urllib
32
33
import traceback
137
138
        self.uri = os.environ['SCRIPT_NAME'] + os.environ['PATH_INFO']
138
139
        # Split the given path into the app (top-level dir) and sub-path
139
140
        # (after first stripping away the root directory)
140
 
        path = ivle.util.unmake_path(self.uri)
141
141
        if self.publicmode:
142
142
            self.app = None
143
 
            (_, self.path) = (ivle.util.split_path(path))
 
143
            (_, self.path) = (ivle.util.split_path(self.uri))
144
144
        else:
145
 
            (self.app, self.path) = (ivle.util.split_path(path))
 
145
            (self.app, self.path) = (ivle.util.split_path(self.uri))
146
146
        self.user = None
147
147
        self.hostname = os.environ['SERVER_NAME']
148
148
        self.headers_in = _http_headers_in_from_cgi()
241
241
            return sys.stdin.read(len)
242
242
 
243
243
    def handle_unknown_exception(self, exc_type, exc_value, exc_tb):
244
 
        if exc_type is ivle.util.IVLEError:
245
 
            self.headers_out['X-IVLE-Error-Code'] = exc_value.httpcode
246
 
 
247
244
        self.headers_out['X-IVLE-Error-Type'] = exc_type.__name__
248
245
 
249
246
        try: