30 lines
862 B
Python
Executable File
30 lines
862 B
Python
Executable File
#!/usr/bin/python
|
|
|
|
import cgitb;cgitb.enable()
|
|
import path
|
|
import py
|
|
from py.__.apigen.source.browser import parse_path
|
|
from py.__.apigen.source.html import create_html, create_dir_html, \
|
|
create_unknown_html
|
|
|
|
BASE_URL='http://codespeak.net/svn/py/dist'
|
|
def cgi_main():
|
|
import os
|
|
reqpath = os.environ.get('PATH_INFO', '')
|
|
path = py.path.svnurl('%s%s' % (BASE_URL, reqpath))
|
|
if not path.check():
|
|
return create_unknown_html(path)
|
|
if path.check(file=True):
|
|
return unicode(create_html(parse_path(path)))
|
|
elif path.check(dir=True):
|
|
prefix = ''
|
|
if not reqpath:
|
|
prefix = 'index.cgi/'
|
|
return create_dir_html(path, href_prefix=prefix)
|
|
else:
|
|
return create_unknown_html(path)
|
|
|
|
print 'Content-Type: text/html; charset=UTF-8'
|
|
print
|
|
print cgi_main()
|