X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=python%2Fashd%2Fwsgiutil.py;h=711435f525f1d701936e3a2e5990d086a0874239;hb=d8509ee5370742b5c32e0f7fdb1ae42d7e6cc2fc;hp=b947407a675c0b8b252416b1004285b2acaf77c2;hpb=14640dcc58cd233916c07e9045b4f7a022b37025;p=ashd.git diff --git a/python/ashd/wsgiutil.py b/python/ashd/wsgiutil.py index b947407..711435f 100644 --- a/python/ashd/wsgiutil.py +++ b/python/ashd/wsgiutil.py @@ -1,3 +1,5 @@ +import time + def htmlquote(text): ret = "" for c in text: @@ -27,3 +29,15 @@ def simpleerror(env, startreq, code, title, msg): """ % (title, title, htmlquote(msg)) startreq("%i %s" % (code, title), [("Content-Type", "text/html"), ("Content-Length", str(len(buf)))]) return [buf] + +def httpdate(ts): + return time.strftime("%a, %d %b %Y %H:%M:%S +0000", time.gmtime(ts)) + +def phttpdate(dstr): + tz = dstr[-6:] + dstr = dstr[:-6] + if tz[0] != " " or (tz[1] != "+" and tz[1] != "-") or not tz[2:].isdigit(): + return None + tz = int(tz[1:]) + tz = (((tz / 100) * 60) + (tz % 100)) * 60 + return time.mktime(time.strptime(dstr, "%a, %d %b %Y %H:%M:%S")) - tz - time.altzone