/* Values: * Servlet url(String) = SERVLET_URL * Background upload(boolean) = BGUPLOAD * Queue item HTML(String) = PROGHTML */ var upload_index = 0; var upload_update = false; // Autostart jQuery(document).ready(function(){ initUpload(); updateUploadStatus() }); /* Initiates a new upload */ function initUpload(){ var name = "uploadFrame_"+upload_index; // Add iframe jQuery("body").append(""); // Init form settings var form = jQuery("#AjaxFileUpload"); //form.attr("encoding", "multipart/form-data"); form.attr("enctype", "multipart/form-data"); form.attr("method", "post"); form.attr("target", name); form.attr("action", "{SERVLET_URL}"); form.bind('submit', startUpload ); //form.attr("onSubmit", "startUpload()"); // reset the form jQuery("#AjaxFileUpload").each(function(){ this.reset(); }); upload_index++; } function startUpload(){ if(!upload_update) setTimeout("updateUploadStatus()", 500); // Init new upload setTimeout("initUpload()", 500); } function updateUploadStatus(){ jQuery.ajax({ url: "{SERVLET_URL}", cache: false, dataType: 'json', success: function(data){ // Update upload_update = true; if(data == null || data.length == 0){ upload_update = false; } else setTimeout("updateUploadStatus()", 1000); // Request upload info jQuery.each(data, function(index,item){ // add new list item if needed if( jQuery("#UploadQueue #"+item.id).size() == 0){ $("#UploadQueue").append("