|
|
|
|
@ -19,7 +19,7 @@ import os
|
|
|
|
|
|
|
|
|
|
from tornado import web
|
|
|
|
|
from ..base.handlers import IPythonHandler
|
|
|
|
|
from ..utils import url_path_join, path2url, url2path
|
|
|
|
|
from ..utils import url_path_join, path2url, url2path, url_escape
|
|
|
|
|
from ..services.notebooks.handlers import _notebook_path_regex, _path_regex
|
|
|
|
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
@ -36,7 +36,10 @@ class TreeHandler(IPythonHandler):
|
|
|
|
|
nbm = self.notebook_manager
|
|
|
|
|
if name is not None:
|
|
|
|
|
# is a notebook, redirect to notebook handler
|
|
|
|
|
url = url_path_join(self.base_project_url, 'notebooks', path, name)
|
|
|
|
|
url = url_escape(url_path_join(
|
|
|
|
|
self.base_project_url, 'notebooks', path, name
|
|
|
|
|
))
|
|
|
|
|
self.log.debug("Redirecting %s to %s", self.request.path, url)
|
|
|
|
|
self.redirect(url)
|
|
|
|
|
else:
|
|
|
|
|
if not nbm.path_exists(path=path):
|
|
|
|
|
@ -54,8 +57,10 @@ class TreeRedirectHandler(IPythonHandler):
|
|
|
|
|
|
|
|
|
|
@web.authenticated
|
|
|
|
|
def get(self, path=''):
|
|
|
|
|
url = url_path_join(self.base_project_url, 'tree', path).rstrip('/')
|
|
|
|
|
self.log.debug("Redirecting %s to %s", self.request.uri, url)
|
|
|
|
|
url = url_escape(url_path_join(
|
|
|
|
|
self.base_project_url, 'tree', path.strip('/')
|
|
|
|
|
))
|
|
|
|
|
self.log.debug("Redirecting %s to %s", self.request.path, url)
|
|
|
|
|
self.redirect(url)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|