From 077e98813606c07e35f73533f349a4f66f3c1e99 Mon Sep 17 00:00:00 2001 From: Thomas Mueller Date: Fri, 31 Aug 2012 00:45:03 +0200 Subject: [PATCH] oc-1548: prevent user from leaving the page while a file upload is in progress --- apps/files/js/files.js | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/apps/files/js/files.js b/apps/files/js/files.js index 5ecc5bc22c..6165da2283 100644 --- a/apps/files/js/files.js +++ b/apps/files/js/files.js @@ -389,6 +389,21 @@ $(document).ready(function() { }) }); + $.assocArraySize = function(obj) { + // http://stackoverflow.com/a/6700/11236 + var size = 0, key; + for (key in obj) { + if (obj.hasOwnProperty(key)) size++; + } + return size; + }; + + // warn user not to leave the page while upload is in progress + $(window).bind('beforeunload', function(e) { + if ($.assocArraySize(uploadingFiles) > 0) + return t('files','File upload is in progress. Leaving the page now will cancel the upload.'); + }); + //add multiply file upload attribute to all browsers except konqueror (which crashes when it's used) if(navigator.userAgent.search(/konqueror/i)==-1){ $('.file_upload_start').attr('multiple','multiple')