]> source.dussan.org Git - nextcloud-server.git/commitdiff
show error when trying to upload to large files
authorRobin Appelman <icewind1991@gmail.com>
Fri, 22 Jul 2011 13:48:30 +0000 (15:48 +0200)
committerRobin Appelman <icewind1991@gmail.com>
Fri, 22 Jul 2011 13:48:30 +0000 (15:48 +0200)
files/css/files.css
files/js/files.js
files/templates/index.php

index a886958f13714ac2d94d6b23252a26f0be342ba0..d45d93441deb856e4cf9257cfc3a244dcbc2ffd5 100644 (file)
@@ -157,4 +157,5 @@ table td.delete { background-image:url('../img/delete.png'); }
 #selectedActions{
        float:right;
        display:none;
-}
\ No newline at end of file
+}
+#uploadsize-message{display:none}
\ No newline at end of file
index f1c00650d0a233f744b6e08232ad7c92ccd1df89..dc59dda57e0a7680be6166d6f1447f47596af466 100644 (file)
@@ -153,40 +153,55 @@ $(document).ready(function() {
                var uploadId=form.attr('data-upload-id');
                var files=this.files;
                var target=form.children('iframe');
-               target.load(function(){
-                       var response=jQuery.parseJSON(target.contents().find('body').text());
-                       //set mimetype and if needed filesize
-                       if(response){
-                               for(var i=0;i<response.length;i++){
-                                       var file=response[i];
-                                       $('tr[data-file="'+file.name+'"]').attr('data-mime',file.mime);
-                                       if(size=='Pending'){
-                                               $('tr[data-file='+file.name+'] td.filesize').text(file.size);
+               var totalSize=0;
+               for(var i=0;i<files.length;i++){
+                       totalSize+=files[i].size;
+               }
+               if(totalSize>$('#max_upload').val()){
+                       $( "#uploadsize-message" ).dialog({
+                               modal: true,
+                               buttons: {
+                                       Close: function() {
+                                               $( this ).dialog( "close" );
                                        }
-                                       FileList.loadingDone(file.name);
                                }
+                       });
+               }else{
+                       target.load(function(){
+                               var response=jQuery.parseJSON(target.contents().find('body').text());
+                               //set mimetype and if needed filesize
+                               if(response){
+                                       for(var i=0;i<response.length;i++){
+                                               var file=response[i];
+                                               $('tr[data-file="'+file.name+'"]').attr('data-mime',file.mime);
+                                               if(size=='Pending'){
+                                                       $('tr[data-file='+file.name+'] td.filesize').text(file.size);
+                                               }
+                                               FileList.loadingDone(file.name);
+                                       }
+                               }
+                       });
+                       form.submit();
+                       var date=new Date();
+                       var uploadTime=formatDate(date);
+                       for(var i=0;i<files.length;i++){
+                               if(files[i].size>0){
+                                       var size=simpleFileSize(files[i].size);
+                               }else{
+                                       var size='Pending';
+                               }
+                               FileList.addFile(files[i].name,size,uploadTime,true);
                        }
-               });
-               form.submit();
-               var date=new Date();
-               var uploadTime=formatDate(date);
-               for(var i=0;i<files.length;i++){
-                       if(files[i].size>0){
-                               var size=simpleFileSize(files[i].size);
-                       }else{
-                               var size='Pending';
-                       }
-                       FileList.addFile(files[i].name,size,uploadTime,true);
+
+                       //clone the upload form and hide the new one to allow users to start a new upload while the old one is still uploading
+                       var clone=form.clone();
+                       uploadId++;
+                       clone.attr('data-upload-id',uploadId);
+                       clone.attr('target','file_upload_target_'+uploadId);
+                       clone.children('iframe').attr('name','file_upload_target_'+uploadId)
+                       clone.insertBefore(form);
+                       form.hide();
                }
-               
-               //clone the upload form and hide the new one to allow users to start a new upload while the old one is still uploading
-               var clone=form.clone();
-               uploadId++;
-               clone.attr('data-upload-id',uploadId);
-               clone.attr('target','file_upload_target_'+uploadId);
-               clone.children('iframe').attr('name','file_upload_target_'+uploadId)
-               clone.insertBefore(form);
-               form.hide();
        });
        
        //add multiply file upload attribute to all browsers except konqueror (which crashes when it's used)
index 18b805529a93072eca62bca4b1a746ce74e90303..b0d4f556f4a9bd18312cefec4be54ec523fd5399 100644 (file)
        </tbody>
 </table>
 
+<div id="uploadsize-message" title="Upload to large">
+       <p>
+               <?php echo $l->t( 'The files you are trying to upload exceed the maximum size for file uploads on this server.' ); ?>
+       </p>
+</div>
+
 <span id="file_menu"/>