# HG changeset patch # User Marcin Kuzminski # Date 1285633870 -7200 # Node ID fdb78a140ae458cd27c72ee55d823ac556cc0668 # Parent f420e86db893c1b1aba675fffb22d726aeda19cc fixes #35 hg-app does not respect SCRIPT_NAME diff -r f420e86db893 -r fdb78a140ae4 pylons_app/controllers/summary.py --- a/pylons_app/controllers/summary.py Mon Sep 27 03:13:05 2010 +0200 +++ b/pylons_app/controllers/summary.py Tue Sep 28 02:31:10 2010 +0200 @@ -51,10 +51,12 @@ 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 -r f420e86db893 -r fdb78a140ae4 pylons_app/lib/auth.py --- a/pylons_app/lib/auth.py Mon Sep 27 03:13:05 2010 +0200 +++ b/pylons_app/lib/auth.py Tue Sep 28 02:31:10 2010 +0200 @@ -255,10 +255,15 @@ 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))