1 "Common WWW/CGI utilities"
7 def exception(str = ""):
8 if sys.exc_type == SystemExit: # pass exit() normally
11 print "Content-Type: text/html"
12 print # Terminate HTTP headers
15 print html.exception()
25 err_str = "Unknown error"
27 print "Content-Type: text/html"
28 print # Terminate HTTP headers
34 def get_redirect(_str = ""):
35 server_name = os.environ["SERVER_NAME"]
36 server_port = os.environ["SERVER_PORT"]
38 if server_port == "80":
41 server_port = ":" + server_port
43 return "http://" + server_name + server_port + _str
46 def convert_empty(estr):
54 def gen_html(title, body):
70 def mkexpires(hours=1, minutes=0, seconds=0):
71 from datetime import datetime, timedelta
72 expire = datetime.now() + timedelta(hours=hours, minutes=minutes, seconds=seconds)
73 return "Expires: %s" % expire.strftime("%a, %d %b %Y %H:%M:%S GMT")
78 for format in ("%a, %d %b %Y %H:%M:%S GMT", "%A, %d-%b-%y %H:%M:%S GMT", "%A, %d-%b-%Y %H:%M:%S GMT"):
80 return time.mktime(time.strptime(t, format)) - time.timezone
81 except (ValueError, OverflowError):