mirror of
https://github.com/jupyter/notebook.git
synced 2025-02-17 12:39:54 +08:00
Merge pull request #2218 from Carreau/new_redirect
Use redirect for new notebooks
This commit is contained in:
commit
bb4009b178
@ -123,6 +123,14 @@ def authenticate_unless_readonly(f, self, *args, **kwargs):
|
||||
else:
|
||||
return auth_f(self, *args, **kwargs)
|
||||
|
||||
def urljoin(*pieces):
|
||||
"""Join componenet of url into a relative url
|
||||
|
||||
Use to prevent double slash when joining subpath
|
||||
"""
|
||||
striped = [s.strip('/') for s in pieces]
|
||||
return '/'.join(s for s in striped if s)
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# Top-level handlers
|
||||
#-----------------------------------------------------------------------------
|
||||
@ -267,17 +275,7 @@ class NewHandler(AuthenticatedHandler):
|
||||
nbm = self.application.notebook_manager
|
||||
project = nbm.notebook_dir
|
||||
notebook_id = nbm.new_notebook()
|
||||
self.render(
|
||||
'notebook.html', project=project,
|
||||
notebook_id=notebook_id,
|
||||
base_project_url=self.application.ipython_app.base_project_url,
|
||||
base_kernel_url=self.application.ipython_app.base_kernel_url,
|
||||
kill_kernel=False,
|
||||
read_only=False,
|
||||
logged_in=self.logged_in,
|
||||
login_available=self.login_available,
|
||||
mathjax_url=self.application.ipython_app.mathjax_url,
|
||||
)
|
||||
self.redirect('/'+urljoin(self.application.ipython_app.base_project_url, notebook_id))
|
||||
|
||||
|
||||
class NamedNotebookHandler(AuthenticatedHandler):
|
||||
@ -663,17 +661,7 @@ class NotebookCopyHandler(AuthenticatedHandler):
|
||||
nbm = self.application.notebook_manager
|
||||
project = nbm.notebook_dir
|
||||
notebook_id = nbm.copy_notebook(notebook_id)
|
||||
self.render(
|
||||
'notebook.html', project=project,
|
||||
notebook_id=notebook_id,
|
||||
base_project_url=self.application.ipython_app.base_project_url,
|
||||
base_kernel_url=self.application.ipython_app.base_kernel_url,
|
||||
kill_kernel=False,
|
||||
read_only=False,
|
||||
logged_in=self.logged_in,
|
||||
login_available=self.login_available,
|
||||
mathjax_url=self.application.ipython_app.mathjax_url,
|
||||
)
|
||||
self.redirect('/'+urljoin(self.application.ipython_app.base_project_url, notebook_id))
|
||||
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
|
@ -60,7 +60,6 @@ $(document).ready(function () {
|
||||
IPython.layout_manager.do_resize();
|
||||
$([IPython.events]).on('notebook_loaded.Notebook', function () {
|
||||
IPython.layout_manager.do_resize();
|
||||
IPython.save_widget.update_url();
|
||||
})
|
||||
IPython.notebook.load_notebook($('body').data('notebookId'));
|
||||
|
||||
|
@ -120,15 +120,6 @@ var IPython = (function (IPython) {
|
||||
};
|
||||
|
||||
|
||||
SaveWidget.prototype.update_url = function () {
|
||||
var notebook_id = IPython.notebook.get_notebook_id();
|
||||
if (notebook_id !== null) {
|
||||
var new_url = $('body').data('baseProjectUrl') + notebook_id;
|
||||
window.history.replaceState({}, '', new_url);
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
SaveWidget.prototype.set_save_status = function (msg) {
|
||||
this.element.find('span#save_status').html(msg);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user