function index_form_enter(event) { if (event.which || event.keyCode) { if ((event.which == 13) || (event.keyCode == 13)) { index_form_submit(); } }; } function index_form_submit() { window.location = window.location + "/list/" + document.getElementById("index_form_name").value; } function UploadFile(file) { var xhr = new XMLHttpRequest(); if (xhr.upload) { var o = document.getElementById("progress"); xhr.upload.addEventListener("progress", function(e) { var pc = parseInt((e.loaded / e.total * 100)); o.innerHTML = "Uploading: " + pc + "%"; // upload works, hide button document.getElementById("list_upload_button").hidden = true; }, false); // file received/failed xhr.onreadystatechange = function(e) { if (xhr.readyState == 4) { progress.className = (xhr.status == 200 ? "success" : "failure"); if (xhr.status == 200) { location = location; } else { o.innerHTML = xhr.response; } } }; // start upload xhr.open("POST", document.getElementById("upload_form").action, true); xhr.setRequestHeader("X-FILENAME", file.name); var formData = new FormData(); formData.append('name', document.getElementById("list_upload_name").value); formData.append('file', file); xhr.send(formData); } } // file selection function FileSelectHandler(e) { // fetch FileList object var files = e.target.files || e.dataTransfer.files; // process all File objects for (var i = 0, f; f = files[i]; i++) { UploadFile(f); } }