81 lines
2.1 KiB
JavaScript
81 lines
2.1 KiB
JavaScript
// warn the user when leaving
|
|
window.onbeforeunload = function(){
|
|
return "Make sure to save your graph locally before leaving";
|
|
};
|
|
|
|
var socket = io();
|
|
|
|
socket.on('connect', () => {
|
|
$("#session_id").text(socket.id);
|
|
window.id = socket.id
|
|
console.log('Session Id: ', socket.id); // an alphanumeric id...
|
|
});
|
|
|
|
socket.on('users_count', (clients) => {
|
|
$("#user_counts").text(clients);
|
|
});
|
|
|
|
socket.on('start', () => {
|
|
console.log('Building start');
|
|
});
|
|
|
|
$(document).ready( () => {
|
|
$("#btnSubmit").click((event) => {
|
|
//stop submit the form, we will post it manually.
|
|
event.preventDefault();
|
|
doAjax();
|
|
});
|
|
|
|
$('#uploadfile').change(function(e){
|
|
if(e.target.files[0])
|
|
{
|
|
var fileName = e.target.files[0].name;
|
|
if(fileName !== "my_model.py")
|
|
{
|
|
alert('Please upload my_model.py');
|
|
$('#btnSubmit').prop('disabled', true);
|
|
}
|
|
else
|
|
{
|
|
$('#btnSubmit').prop('disabled', false);
|
|
}
|
|
}
|
|
});
|
|
});
|
|
|
|
function doAjax() {
|
|
|
|
// Get form
|
|
var form = $('#fileUploadForm')[0];
|
|
|
|
var data = new FormData(form);
|
|
var file = data.get('uploadfile');
|
|
|
|
var renameFile =new File([file], window.id + '.py' ,{type:file.type});
|
|
var formdata = new FormData();
|
|
formdata.append('uploadfile', renameFile);
|
|
// console.log(formdata.get('uploadfile'))
|
|
if(window.id) {
|
|
$.ajax({
|
|
type: "POST",
|
|
enctype: 'multipart/form-data',
|
|
url: "/api/files/upload",
|
|
data: formdata,
|
|
processData: false, //prevent jQuery from automatically transforming the data into a query string
|
|
contentType: false,
|
|
cache: false,
|
|
success: (data) => {
|
|
// $("#listFiles").text(data);
|
|
console.log('Emit build request')
|
|
socket.emit('build', {});
|
|
},
|
|
error: (e) => {
|
|
$("#listFiles").text(e.responseText);
|
|
}
|
|
});
|
|
}
|
|
else
|
|
{
|
|
alert('Failed to connect to server');
|
|
}
|
|
} |