@@ -28,6 +28,9 @@ const UploadFiles = (props) => {
2828 const [ allowedExtensions , setAllowedExtensions ] = useState ( [ ] )
2929 const [ files , setFiles ] = useState ( [ ] )
3030 const [ updateSize , setUpdateSize ] = useState ( 0 )
31+ const [ files2upload , setFiles2Upload ] = useState ( 0 )
32+ const [ filesUploaded , setFilesUploaded ] = useState ( 0 )
33+ let uploaded = 0
3134
3235 useEffect ( ( ) => {
3336 //get upload info
@@ -124,6 +127,8 @@ const UploadFiles = (props) => {
124127 }
125128
126129 //upload files
130+ setFiles2Upload ( files . length )
131+
127132 let promises = [ ]
128133 for ( var i = 0 ; i < files . length ; i ++ ) {
129134 let curr = files [ i ]
@@ -143,9 +148,13 @@ const UploadFiles = (props) => {
143148 } ,
144149 } )
145150 . then ( ( response ) => {
151+ uploaded += 1
152+ setFilesUploaded ( uploaded )
146153 resolve ( 'Upload ' + curr . meta . name + ' successfully!' )
147154 } )
148155 . catch ( ( error ) => {
156+ uploaded += 1
157+ setFilesUploaded ( uploaded )
149158 resolve ( 'Upload ' + curr . meta . name + ' failed! ' + error )
150159 } )
151160 } ) ,
@@ -155,13 +164,19 @@ const UploadFiles = (props) => {
155164 Promise . all ( promises )
156165 . then ( ( response ) => {
157166 allFiles . forEach ( ( f ) => f . remove ( ) )
167+ let errors = 0
158168 response . forEach ( ( e ) => {
159169 if ( e . includes ( 'failed' ) ) {
160170 notify ( 'error' , e )
171+ errors += 1
161172 } else {
162- notify ( 'success' , e )
173+ // notify('success', e)
163174 }
164175 } )
176+ if ( errors === 0 ) {
177+ notify ( 'success' , 'Files uploaded successfully!' , 2000 )
178+ //setTimeout(() => props.history.push("/user/files"), 2000);
179+ }
165180 setSubmitting ( false )
166181 props . reloadTableData ( )
167182 } )
@@ -173,7 +188,10 @@ const UploadFiles = (props) => {
173188
174189 return (
175190 < >
176- < LoaderDialog loading = { submitting } text = "Uploading..." />
191+ < LoaderDialog
192+ loading = { submitting }
193+ text = { 'Uploading...' + Math . round ( ( filesUploaded / files2upload ) * 100 ) + '%' }
194+ />
177195 < ToastContainer />
178196 < div className = "clearfix" >
179197 < h4 className = "pt-3" > Upload Files</ h4 >
0 commit comments