X-Git-Url: http://www.dolda2000.com/gitweb/?p=ashd.git;a=blobdiff_plain;f=python3%2Fashd%2Fwsgiutil.py;h=896af6177e487b7c31641f0c01c639827ddea248;hp=5fe7535140eafc6ae08246126d0cb761656e995c;hb=d8509ee5370742b5c32e0f7fdb1ae42d7e6cc2fc;hpb=14640dcc58cd233916c07e9045b4f7a022b37025 diff --git a/python3/ashd/wsgiutil.py b/python3/ashd/wsgiutil.py index 5fe7535..896af61 100644 --- a/python3/ashd/wsgiutil.py +++ b/python3/ashd/wsgiutil.py @@ -1,3 +1,5 @@ +import time + def htmlquote(text): ret = "" for c in text: @@ -28,3 +30,15 @@ def simpleerror(env, startreq, code, title, msg): buf = buf.encode("ascii") 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