| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125 |
- {% extends "page.html" %}
- {% block stylesheet %}
- {{super()}}
- <link rel="stylesheet" href="{{ static_url("auth/css/override.css") }}" type="text/css" />
- {% endblock %}
- {% block login_widget %}
- {% endblock %}
- {% block site %}
- <div id="ipython-main-app" class="container">
- {% if login_available %}
- {# login_available means password-login is allowed. Show the form. #}
- <div class="row">
- <div class="navbar col-sm-8">
- <div class="navbar-inner">
- <div class="container">
- <div class="center-nav">
- <form action="{{base_url}}login?next={{next}}" method="post" class="navbar-form pull-left">
- {{ xsrf_form_html() | safe }}
- {% if token_available %}
- <label for="password_input"><strong>{% trans %}Password or token:{% endtrans %}</strong></label>
- {% else %}
- <label for="password_input"><strong>{% trans %}Password:{% endtrans %}</strong></label>
- {% endif %}
- <input type="password" name="password" id="password_input" class="form-control">
- <button type="submit" class="btn btn-default" id="login_submit">{% trans %}Log in{% endtrans %}</button>
- </form>
- </div>
- </div>
- </div>
- </div>
- </div>
- {% else %}
- <p>{% trans %}No login available, you shouldn't be seeing this page.{% endtrans %}</p>
- {% endif %}
- {% if message %}
- <div class="row">
- {% for key in message %}
- <div class="message {{key}}">
- {{message[key]}}
- </div>
- {% endfor %}
- </div>
- {% endif %}
- {% if token_available %}
- {% block token_message %}
- <div class="col-sm-6 col-sm-offset-3 text-left rendered_html">
- <h3>
- Token authentication is enabled
- </h3>
- <p>
- If no password has been configured, you need to open the notebook
- server with its login token in the URL, or paste it above.
- This requirement will be lifted if you
- <b><a href='https://jupyter-notebook.readthedocs.io/en/stable/public_server.html'>
- enable a password</a></b>.
- </p>
- <p>
- The command:
- <pre>jupyter notebook list</pre>
- will show you the URLs of running servers with their tokens,
- which you can copy and paste into your browser. For example:
- </p>
- <pre>Currently running servers:
- http://localhost:8888/?token=c8de56fa... :: /Users/you/notebooks
- </pre>
- <p>
- or you can paste just the token value into the password field on this
- page.
- </p>
- <p>
- See
- <b><a
- href='https://jupyter-notebook.readthedocs.io/en/stable/public_server.html'>
- the documentation on how to enable a password</a>
- </b>
- in place of token authentication,
- if you would like to avoid dealing with random tokens.
- </p>
- <p>
- Cookies are required for authenticated access to notebooks.
- </p>
- {% if allow_password_change %}
- <h3>{% trans %}Setup a Password{% endtrans %}</h3>
- <p> You can also setup a password by entering your token and a new password
- on the fields below:</p>
- <form action="{{base_url}}login?next={{next}}" method="post" class="">
- {{ xsrf_form_html() | safe }}
- <div class="form-group">
- <label for="token_input"><h4>Token</h4></label>
- <input type="password" name="password" id="token_input" class="form-control">
- </div>
- <div class="form-group">
- <label for="new_password_input"><h4>New Password</h4></label>
- <input type="password" name="new_password" id="new_password_input" class="form-control" required>
- </div>
- <div class="form-group">
- <button type="submit" class="btn btn-default" id="login_new_pass_submit">{% trans %}Log in and set new password{% endtrans %}</button>
- </div>
- </form>
- {% endif %}
- </div>
- {% endblock token_message %}
- {% endif %}
- </div>
- {% endblock %}
- {% block script %}
- {{super()}}
- <script type="text/javascript">
- require(["auth/js/main"], function (auth) {
- auth.login_main();
- });
- </script>
- {% endblock %}
|