##// END OF EJS Templates
Use relative URL for redirect in NewTerminalHandler
Use relative URL for redirect in NewTerminalHandler

File last commit:

r18487:c4639809
r18487:c4639809
Show More
handlers.py
28 lines | 965 B | text/x-python | PythonLexer
Thomas Kluyver
Basic infrastructure for terminal page
r18480 """Tornado handlers for the terminal emulator."""
# Copyright (c) IPython Development Team.
# Distributed under the terms of the Modified BSD License.
from tornado import web
Thomas Kluyver
Terminal basically working...
r18481 import terminado
Thomas Kluyver
Basic infrastructure for terminal page
r18480 from ..base.handlers import IPythonHandler
class TerminalHandler(IPythonHandler):
Thomas Kluyver
Multiple terminals and conditional initialisation
r18482 """Render the terminal interface."""
Thomas Kluyver
Basic infrastructure for terminal page
r18480 @web.authenticated
Thomas Kluyver
Multiple terminals and conditional initialisation
r18482 def get(self, term_name):
self.write(self.render_template('terminal.html',
ws_path="terminals/websocket/%s" % term_name))
Thomas Kluyver
Basic infrastructure for terminal page
r18480
Thomas Kluyver
Multiple terminals and conditional initialisation
r18482 class NewTerminalHandler(IPythonHandler):
"""Redirect to a new terminal."""
@web.authenticated
def get(self):
name, _ = self.application.terminal_manager.new_named_terminal()
Thomas Kluyver
Use relative URL for redirect in NewTerminalHandler
r18487 self.redirect(name, permanent=False)
Thomas Kluyver
Basic infrastructure for terminal page
r18480
Thomas Kluyver
Add authentication for terminal websockets
r18484 class TermSocket(terminado.TermSocket, IPythonHandler):
def get(self, *args, **kwargs):
if not self.get_current_user():
raise web.HTTPError(403)
return super(TermSocket, self).get(*args, **kwargs)