Mercurial > hg > orthanc
view OrthancExplorer/file-upload.js @ 3103:81b58b549845
back to using 'var' instead of 'let' since let is not supported by many old browsers. All variables declaration have been moved to the top of the function to better show that their scope is the function
author | Alain Mazy <alain@mazy.be> |
---|---|
date | Thu, 10 Jan 2019 10:51:36 +0100 |
parents | 9b18c8d4d459 |
children | b311cff247ca |
line wrap: on
line source
var pendingUploads = []; var currentUpload = 0; var totalUpload = 0; $(document).ready(function() { // Initialize the jQuery File Upload widget: $('#fileupload').fileupload({ //dataType: 'json', //maxChunkSize: 500, //sequentialUploads: true, limitConcurrentUploads: 3, add: function (e, data) { pendingUploads.push(data); } }) .bind('fileuploadstop', function(e, data) { $('#upload-button').removeClass('ui-disabled'); //$('#upload-abort').addClass('ui-disabled'); $('#progress .bar').css('width', '100%'); if ($('#progress .label').text() != 'Failure') $('#progress .label').text('Done'); }) .bind('fileuploadfail', function(e, data) { $('#progress .bar') .css('width', '100%') .css('background-color', 'red'); $('#progress .label').text('Failure'); }) .bind('fileuploaddrop', function (e, data) { appendFilesToUploadList(data.files); }) .bind('fileuploadsend', function (e, data) { // Update the progress bar. Note: for some weird reason, the // "fileuploadprogressall" does not work under Firefox. var progress = parseInt(currentUpload / totalUploads * 100, 10); currentUpload += 1; $('#progress .label').text('Uploading: ' + progress + '%'); $('#progress .bar') .css('width', progress + '%') .css('background-color', 'green'); }); }); function appendFilesToUploadList(files) { var target = $('#upload-list'); $.each(files, function (index, file) { target.append('<li class="pending-file">' + file.name + '</li>'); }); target.listview('refresh'); } $('#fileupload').live('change', function (e) { appendFilesToUploadList(e.target.files); }) $('#upload').live('pageshow', function() { if (navigator.userAgent.toLowerCase().indexOf('firefox') == -1) { $("#issue-21-warning").css('display', 'none'); } // alert('WARNING - This page is currently affected by Orthanc issue #21: ' + // '"DICOM files might be missing after uploading with Mozilla Firefox." ' + // 'Do not use this upload feature for clinical uses, or carefully ' + // 'check that all instances have been properly received by Orthanc. ' + // 'Please use the command-line "ImportDicomFiles.py" script to circumvent this issue.'); $('#fileupload').fileupload('enable'); }); $('#upload').live('pagehide', function() { $('#fileupload').fileupload('disable'); }); $('#upload-button').live('click', function() { var pu = pendingUploads; pendingUploads = []; $('.pending-file').remove(); $('#upload-list').listview('refresh'); $('#progress .bar').css('width', '0%'); $('#progress .label').text(''); currentUpload = 1; totalUploads = pu.length + 1; if (pu.length > 0) { $('#upload-button').addClass('ui-disabled'); //$('#upload-abort').removeClass('ui-disabled'); } for (var i = 0; i < pu.length; i++) { pu[i].submit(); } }); $('#upload-clear').live('click', function() { pendingUploads = []; $('.pending-file').remove(); $('#upload-list').listview('refresh'); }); /*$('#upload-abort').live('click', function() { $('#fileupload').fileupload().abort(); });*/