Mercurial > hg > orthanc
annotate 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 |
rev | line source |
---|---|
0 | 1 var pendingUploads = []; |
2 var currentUpload = 0; | |
3 var totalUpload = 0; | |
4 | |
5 $(document).ready(function() { | |
6 // Initialize the jQuery File Upload widget: | |
7 $('#fileupload').fileupload({ | |
8 //dataType: 'json', | |
9 //maxChunkSize: 500, | |
10 //sequentialUploads: true, | |
11 limitConcurrentUploads: 3, | |
12 add: function (e, data) { | |
13 pendingUploads.push(data); | |
14 } | |
15 }) | |
16 .bind('fileuploadstop', function(e, data) { | |
17 $('#upload-button').removeClass('ui-disabled'); | |
18 //$('#upload-abort').addClass('ui-disabled'); | |
19 $('#progress .bar').css('width', '100%'); | |
20 if ($('#progress .label').text() != 'Failure') | |
21 $('#progress .label').text('Done'); | |
22 }) | |
23 .bind('fileuploadfail', function(e, data) { | |
24 $('#progress .bar') | |
25 .css('width', '100%') | |
26 .css('background-color', 'red'); | |
27 $('#progress .label').text('Failure'); | |
28 }) | |
29 .bind('fileuploaddrop', function (e, data) { | |
3102
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
30 appendFilesToUploadList(data.files); |
0 | 31 }) |
32 .bind('fileuploadsend', function (e, data) { | |
33 // Update the progress bar. Note: for some weird reason, the | |
34 // "fileuploadprogressall" does not work under Firefox. | |
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
Alain Mazy <alain@mazy.be>
parents:
3102
diff
changeset
|
35 var progress = parseInt(currentUpload / totalUploads * 100, 10); |
0 | 36 currentUpload += 1; |
37 $('#progress .label').text('Uploading: ' + progress + '%'); | |
38 $('#progress .bar') | |
39 .css('width', progress + '%') | |
40 .css('background-color', 'green'); | |
41 }); | |
42 }); | |
43 | |
3102
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
44 function appendFilesToUploadList(files) { |
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
Alain Mazy <alain@mazy.be>
parents:
3102
diff
changeset
|
45 var target = $('#upload-list'); |
3102
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
46 $.each(files, function (index, file) { |
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
47 target.append('<li class="pending-file">' + file.name + '</li>'); |
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
48 }); |
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
49 target.listview('refresh'); |
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
50 } |
0 | 51 |
3102
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
52 $('#fileupload').live('change', function (e) { |
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
53 appendFilesToUploadList(e.target.files); |
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
54 }) |
0 | 55 |
56 $('#upload').live('pageshow', function() { | |
3102
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
57 if (navigator.userAgent.toLowerCase().indexOf('firefox') == -1) { |
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
58 $("#issue-21-warning").css('display', 'none'); |
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
59 } |
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
60 |
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
61 // alert('WARNING - This page is currently affected by Orthanc issue #21: ' + |
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
62 // '"DICOM files might be missing after uploading with Mozilla Firefox." ' + |
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
63 // 'Do not use this upload feature for clinical uses, or carefully ' + |
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
64 // 'check that all instances have been properly received by Orthanc. ' + |
9b18c8d4d459
'fix' for Orthanc issue 21: added a select file button + a warning specific for Firefox users
Alain Mazy <alain@mazy.be>
parents:
3023
diff
changeset
|
65 // 'Please use the command-line "ImportDicomFiles.py" script to circumvent this issue.'); |
0 | 66 $('#fileupload').fileupload('enable'); |
67 }); | |
68 | |
69 $('#upload').live('pagehide', function() { | |
70 $('#fileupload').fileupload('disable'); | |
71 }); | |
72 | |
73 | |
74 $('#upload-button').live('click', function() { | |
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
Alain Mazy <alain@mazy.be>
parents:
3102
diff
changeset
|
75 var pu = pendingUploads; |
0 | 76 pendingUploads = []; |
77 | |
78 $('.pending-file').remove(); | |
79 $('#upload-list').listview('refresh'); | |
80 $('#progress .bar').css('width', '0%'); | |
81 $('#progress .label').text(''); | |
82 | |
83 currentUpload = 1; | |
84 totalUploads = pu.length + 1; | |
85 if (pu.length > 0) { | |
86 $('#upload-button').addClass('ui-disabled'); | |
87 //$('#upload-abort').removeClass('ui-disabled'); | |
88 } | |
89 | |
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
Alain Mazy <alain@mazy.be>
parents:
3102
diff
changeset
|
90 for (var i = 0; i < pu.length; i++) { |
0 | 91 pu[i].submit(); |
92 } | |
93 }); | |
94 | |
95 $('#upload-clear').live('click', function() { | |
96 pendingUploads = []; | |
97 $('.pending-file').remove(); | |
98 $('#upload-list').listview('refresh'); | |
99 }); | |
100 | |
101 /*$('#upload-abort').live('click', function() { | |
102 $('#fileupload').fileupload().abort(); | |
103 });*/ |