<!DOCTYPE html>
<!--
Copyright (c) Jupyter Development Team.
Distributed under the terms of the Modified BSD License.
-->
<html>
<head>
<meta charset="utf-8">
<title>{% block title %}{{page_title}}{% endblock %}</title>
{% block stylesheet %}
{% for css_file in css_files %}
<link href="{{ css_file }}" rel="stylesheet">
{% endfor %}
{% endblock %}
<script id="jupyter-config-data" type="application/json">{
{% for key, value in page_config.items() -%}
"{{ key }}": "{{ value }}",
{% endfor -%}
"baseUrl": "{{ base_url }}",
"wsUrl": "{{ ws_url }}",
"publicUrl": "{{ public_url }}"
}</script>
{% block favicon %}<link rel="shortcut icon" type="image/x-icon" href="{{ base_url }}static/base/images/favicon.ico">{% endblock %}
{% for js_file in js_files %}
<script src="{{ js_file }}" type="text/javascript" charset="utf-8"></script>
{% endfor %}
{% block meta %}
{% endblock %}
</head>
<body>
<script type="text/javascript">
function _remove_token_from_url() {
if (window.location.search.length <= 1) {
return;
}
var search_parameters = window.location.search.slice(1).split('&');
for (var i = 0; i < search_parameters.length; i++) {
if (search_parameters[i].split('=')[0] === 'token') {
// remote token from search parameters
search_parameters.splice(i, 1);
var new_search = '';
if (search_parameters.length) {
new_search = '?' + search_parameters.join('&');
}
var new_url = window.location.origin +
window.location.pathname +
new_search +
window.location.hash;
window.history.replaceState({}, "", new_url);
return;
}
}
}
_remove_token_from_url();
</script>
</body>
</html>