|
|
//----------------------------------------------------------------------------
|
|
|
// Copyright (C) 2008-2011 The IPython Development Team
|
|
|
//
|
|
|
// Distributed under the terms of the BSD License. The full license is in
|
|
|
// the file COPYING, distributed as part of this software.
|
|
|
//----------------------------------------------------------------------------
|
|
|
|
|
|
//============================================================================
|
|
|
// On document ready
|
|
|
//============================================================================
|
|
|
|
|
|
|
|
|
$(document).ready(function () {
|
|
|
|
|
|
IPython.page = new IPython.Page();
|
|
|
|
|
|
$('div#tabs').tabs();
|
|
|
$('div#tabs').on('tabsselect', function (event, ui) {
|
|
|
var new_url = $('body').data('baseProjectUrl') + '#' + ui.panel.id;
|
|
|
window.history.replaceState({}, '', new_url);
|
|
|
});
|
|
|
$('div#main_app').addClass('border-box-sizing ui-widget');
|
|
|
$('div#notebooks_toolbar').addClass('ui-widget ui-helper-clearfix');
|
|
|
$('#new_notebook').button().click(function (e) {
|
|
|
window.open($('body').data('baseProjectUrl')+'new');
|
|
|
});
|
|
|
|
|
|
IPython.read_only = $('body').data('readOnly') === 'True';
|
|
|
IPython.notebook_list = new IPython.NotebookList('div#notebook_list');
|
|
|
IPython.cluster_list = new IPython.ClusterList('div#cluster_list');
|
|
|
IPython.login_widget = new IPython.LoginWidget('span#login_widget');
|
|
|
|
|
|
var interval_id=0;
|
|
|
// auto refresh every xx secondes, no need to be fast,
|
|
|
// update is done at least when page get focus
|
|
|
var time_refresh = 60; // in sec
|
|
|
|
|
|
var enable_autorefresh = function(){
|
|
|
//refresh immediately , then start interval
|
|
|
if($('.upload_button').length == 0)
|
|
|
{
|
|
|
IPython.notebook_list.load_list();
|
|
|
IPython.cluster_list.load_list();
|
|
|
}
|
|
|
if (!interval_id){
|
|
|
interval_id = setInterval(function(){
|
|
|
if($('.upload_button').length == 0)
|
|
|
{
|
|
|
IPython.notebook_list.load_list();
|
|
|
IPython.cluster_list.load_list();
|
|
|
}
|
|
|
}, time_refresh*1000);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
var disable_autorefresh = function(){
|
|
|
clearInterval(interval_id);
|
|
|
interval_id = 0;
|
|
|
}
|
|
|
|
|
|
// stop autorefresh when page lose focus
|
|
|
$(window).blur(function() {
|
|
|
disable_autorefresh();
|
|
|
})
|
|
|
|
|
|
//re-enable when page get focus back
|
|
|
$(window).focus(function() {
|
|
|
enable_autorefresh();
|
|
|
});
|
|
|
|
|
|
// finally start it, it will refresh immediately
|
|
|
enable_autorefresh();
|
|
|
|
|
|
IPython.page.show();
|
|
|
|
|
|
// bound the upload method to the on change of the file select list
|
|
|
$("#alternate_upload").change(function (event){
|
|
|
IPython.notebook_list.handelFilesUpload(event,'form');
|
|
|
});
|
|
|
|
|
|
});
|
|
|
|
|
|
|