]> source.dussan.org Git - nextcloud-server.git/commitdiff
Fix deletion for browser that do not support onBeforeUnload, fixes oc-1534
authorArthur Schiwon <blizzz@owncloud.com>
Mon, 20 Aug 2012 15:04:57 +0000 (17:04 +0200)
committerJörn Friedrich Dreyer <jfd@butonic.de>
Fri, 24 Aug 2012 13:00:53 +0000 (15:00 +0200)
apps/files/js/filelist.js

index 3645258f98f0ae3a43211369a90477b4439e84f1..c3eb906f39e9bff043ac2b22499310d5f3dbabd4 100644 (file)
@@ -166,23 +166,15 @@ FileList={
        },
        do_delete:function(files){
                if(FileList.deleteFiles || !FileList.useUndo){//finish any ongoing deletes first
+                       if(!FileList.deleteFiles) {
+                               FileList.prepareDeletion(files);
+                       }
                        FileList.finishDelete(function(){
                                FileList.do_delete(files);
                        });
                        return;
                }
-               if(files.substr){
-                       files=[files];
-               }
-               $.each(files,function(index,file){
-                       var files = $('tr').filterAttr('data-file',file);
-                       files.hide();
-                       files.find('input[type="checkbox"]').removeAttr('checked');
-                       files.removeClass('selected');
-               });
-               procesSelection();
-               FileList.deleteCanceled=false;
-               FileList.deleteFiles=files;
+               FileList.prepareDeletion(files);
                $('#notification').text(t('files','undo deletion'));
                $('#notification').data('deletefile',true);
                $('#notification').fadeIn();
@@ -209,6 +201,20 @@ FileList={
                                }
                        });
                }
+       },
+       prepareDeletion:function(files){
+               if(files.substr){
+                       files=[files];
+               }
+               $.each(files,function(index,file){
+                       var files = $('tr').filterAttr('data-file',file);
+                       files.hide();
+                       files.find('input[type="checkbox"]').removeAttr('checked');
+                       files.removeClass('selected');
+               });
+               procesSelection();
+               FileList.deleteCanceled=false;
+               FileList.deleteFiles=files;
        }
 }