aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcin Kuzminski <marcin@python-works.com>2010-09-28 02:31:10 +0200
committerMarcin Kuzminski <marcin@python-works.com>2010-09-28 02:31:10 +0200
commitc9c35a25ac0a879546a25b90d5fc7b76c58105b1 (patch)
tree02837ce5fa5f918561c7e03ebb434967380cbae7
parent1226cf584c34ff3cb2ed1ea583fd46ab3f9ca62d (diff)
fixes #35 hg-app does not respect SCRIPT_NAME
-rw-r--r--pylons_app/controllers/summary.py4
-rw-r--r--pylons_app/lib/auth.py9
2 files changed, 10 insertions, 3 deletions
diff --git a/pylons_app/controllers/summary.py b/pylons_app/controllers/summary.py
index ebe97c27..49132d7e 100644
--- a/pylons_app/controllers/summary.py
+++ b/pylons_app/controllers/summary.py
@@ -51,10 +51,12 @@ class SummaryController(BaseController):
c.repo_info = hg_model.get_repo(c.repo_name)
c.repo_changesets = Page(list(c.repo_info[:10]), page=1, items_per_page=20)
e = request.environ
- uri = u'%(protocol)s://%(user)s@%(host)s/%(repo_name)s' % {
+
+ uri = u'%(protocol)s://%(user)s@%(host)s%(prefix)s/%(repo_name)s' % {
'protocol': e.get('wsgi.url_scheme'),
'user':str(c.hg_app_user.username),
'host':e.get('HTTP_HOST'),
+ 'prefix':e.get('SCRIPT_NAME'),
'repo_name':c.repo_name, }
c.clone_repo_url = uri
c.repo_tags = OrderedDict()
diff --git a/pylons_app/lib/auth.py b/pylons_app/lib/auth.py
index 94c6b814..f9e3a81d 100644
--- a/pylons_app/lib/auth.py
+++ b/pylons_app/lib/auth.py
@@ -255,10 +255,15 @@ class LoginRequired(object):
return func(*fargs, **fkwargs)
else:
log.warn('user %s not authenticated', user.username)
-
- p = request.environ.get('PATH_INFO')
+
+ p = ''
+ if request.environ.get('SCRIPT_NAME') != '/':
+ p += request.environ.get('SCRIPT_NAME')
+
+ p += request.environ.get('PATH_INFO')
if request.environ.get('QUERY_STRING'):
p += '?' + request.environ.get('QUERY_STRING')
+
log.debug('redirecting to login page with %s', p)
return redirect(url('login_home', came_from=p))