summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ipsilon/util/page.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/ipsilon/util/page.py b/ipsilon/util/page.py
index f4e53d6..50585ca 100644
--- a/ipsilon/util/page.py
+++ b/ipsilon/util/page.py
@@ -138,9 +138,15 @@ class Page(Endpoint):
# Try with kwargs first
tid = t.find_tid(kwargs)
if not tid:
- # If no TID yet See if we have it in a referer
+ # If no TID yet See if we have it in a referer or in the
+ # environment in the REDIRECT_URL
+ url = None
if 'referer' in cherrypy.request.headers:
- r = urlparse(unquote(cherrypy.request.headers['referer']))
+ url = cherrypy.request.headers['referer']
+ elif 'REQUEST_URI' in cherrypy.request.wsgi_environ:
+ url = cherrypy.request.wsgi_environ['REQUEST_URI']
+ if url:
+ r = urlparse(unquote(url))
if r.query:
tid = t.find_tid(parse_qs(r.query))
if not tid: