diff options
author | Arthur Schiwon <blizzz@arthur-schiwon.de> | 2011-04-19 02:51:59 +0200 |
---|---|---|
committer | Arthur Schiwon <blizzz@arthur-schiwon.de> | 2011-04-19 02:51:59 +0200 |
commit | 4a9fdd2918c3828b4c60e22eda4dc89a9228bc8e (patch) | |
tree | 7167ba395bb2a74d6d3d9168be46747436b4c5a1 /files/js | |
parent | 3113176ea04b206308de8180198f127744a34b8e (diff) | |
download | nextcloud-server-4a9fdd2918c3828b4c60e22eda4dc89a9228bc8e.tar.gz nextcloud-server-4a9fdd2918c3828b4c60e22eda4dc89a9228bc8e.zip |
fancy upload button. does work with firefox (at least 4) and chromium, but not with Konqueror, Rekonq, Opera.
Diffstat (limited to 'files/js')
-rw-r--r-- | files/js/files.js | 81 |
1 files changed, 53 insertions, 28 deletions
diff --git a/files/js/files.js b/files/js/files.js index edb57fc2c0e..c0905f4af9d 100644 --- a/files/js/files.js +++ b/files/js/files.js @@ -1,5 +1,6 @@ $(document).ready(function() { $('#file_action_panel').attr('activeAction', false); + $('#file_upload_start').attr('mode', 'menu'); // Sets browser table behaviour : $('.browser tr').hover( @@ -70,14 +71,35 @@ $(document).ready(function() { return false; }); - $('#file_upload_start').click(function() { - $('#file_upload_target').load(uploadFinished); + $('#file_upload_start').click(function() { + if($('#file_upload_start').attr('mode') == 'menu') { + $('#fileSelector').change(function() { +// alert("foo"); + + //Chromium prepends C:\fakepath.... + bspos = $('#fileSelector').val().lastIndexOf('\\')+1; + filename = $('#fileSelector').val().substr(bspos); + + $('#file_upload_start').val('Upload ' + filename); + $('#fileSelector').hide(); + $('#file_upload_cancel').slideDown(250); + $('#file_upload_start').attr('mode', 'action'); + }); + $('#fileSelector').show(); //needed for Chromium compatibility + $('#fileSelector').click(); + } else if($('#file_upload_start').attr('mode') == 'action') { + $('#file_upload_cancel').slideUp(250); + $('#file_upload_target').load(uploadFinished); + } }); $('#file_upload_cancel').click(function() { - $('#file_action_panel').attr('activeAction', 'false'); - $('#file_upload_form').hide(); - $('p.actions a.upload:first').show(); + $('#file_upload_start').val('Upload ' + $('.max_human_file_size:first').val()); + $('#file_upload_start').attr('mode', 'menu'); + $('#file_upload_cancel').hide; +// $('#file_action_panel').attr('activeAction', 'false'); +// $('#file_upload_form').hide(); +// $('p.actions a.upload:first').show(); }); $('#file_new_dir_submit').click(function() { @@ -88,26 +110,26 @@ $(document).ready(function() { }); }); - $('.upload').click(function(){ - if($('#file_action_panel').attr('activeAction') != 'upload') { - $('#file_action_panel').attr('activeAction', 'upload'); - $('#fileSelector').replaceWith('<input type="file" name="file" id="fileSelector">'); - $('#fileSelector').change(function() { - $('#file_upload_start').val('Upload ' + $('#fileSelector').val()); - $('p.actions a.upload:first').after($('#file_upload_form')); - $('#file_upload_form').css('display', 'inline'); - $('p.actions a.upload:first').hide(); - $('#fileSelector').hide(); - }); - $('#file_action_panel form').slideUp(250); -// $('#file_upload_form').slideDown(250); - $('#fileSelector').click(); - } else { - $('#file_action_panel').attr('activeAction', 'false'); - $('#file_upload_form').slideUp(250); - } - return false; - }); +// $('.upload').click(function(){ +// if($('#file_action_panel').attr('activeAction') != 'upload') { +// $('#file_action_panel').attr('activeAction', 'upload'); +// $('#fileSelector').replaceWith('<input type="file" name="file" id="fileSelector">'); +// $('#fileSelector').change(function() { +// $('#file_upload_start').val('Upload ' + $('#fileSelector').val()); +// $('p.actions a.upload:first').after($('#file_upload_form')); +// $('#file_upload_form').css('display', 'inline'); +// $('p.actions a.upload:first').hide(); +// $('#fileSelector').hide(); +// }); +// $('#file_action_panel form').slideUp(250); +// // $('#file_upload_form').slideDown(250); +// $('#fileSelector').click(); +// } else { +// $('#file_action_panel').attr('activeAction', 'false'); +// $('#file_upload_form').slideUp(250); +// } +// return false; +// }); @@ -169,9 +191,12 @@ function uploadFinished() { data: "dir="+dir, complete: function(data) { refreshContents(data); - $('#file_action_panel').prepend($('#file_upload_form')); - $('#file_upload_form').css('display', 'block').hide(); - $('p.actions a.upload:first').show(); +// $('#file_action_panel').prepend($('#file_upload_form')); +// $('#file_upload_form').css('display', 'block').hide(); +// $('p.actions a.upload:first').show(); + $('#file_upload_start').val('Upload ' + $('.max_human_file_size:first').val()); + $('#file_upload_start').attr('mode', 'menu'); +// $('#fileSelector').replaceWith('<input type="file" name="file" id="fileSelector">'); } }); } |