summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArthur Schiwon <blizzz@arthur-schiwon.de>2011-04-19 02:51:59 +0200
committerArthur Schiwon <blizzz@arthur-schiwon.de>2011-04-19 02:51:59 +0200
commit4a9fdd2918c3828b4c60e22eda4dc89a9228bc8e (patch)
tree7167ba395bb2a74d6d3d9168be46747436b4c5a1
parent3113176ea04b206308de8180198f127744a34b8e (diff)
downloadnextcloud-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.
-rw-r--r--css/styles.css14
-rw-r--r--files/css/files.css4
-rw-r--r--files/js/files.js81
-rw-r--r--files/templates/index.php16
4 files changed, 68 insertions, 47 deletions
diff --git a/css/styles.css b/css/styles.css
index 6a4e7d8f897..6b866843541 100644
--- a/css/styles.css
+++ b/css/styles.css
@@ -106,13 +106,13 @@ p.nav a { padding:0.5em 1.5em 0.5em 0.5em; background-position:right center; bac
p.nav a img { height:16px; vertical-align:text-top; }
/* ACTIONS BAR */
-p.actions { padding:0; }
-p.actions a { padding:0.5em 0.5em 0.5em 3em; background-position:1em center; background-repeat:no-repeat; background-image:url('../img/action.png'); border-right:1px solid #eee; text-decoration:none; color:#333; }
-p.actions a:hover, p.actions a:focus { background-color:#eee; color:#000; outline:0; }
-p.actions a:active { outline:0; }
-p.actions a.new-dir { background-image:url('../img/folder-new.png'); }
-p.actions a.download { background-image:url('../img/download.png'); }
-p.actions a.delete { background-image:url('../img/delete.png'); }
+p.actions, div.actions { padding:0; }
+p.actions a, div.actions a { padding:0.5em 0.5em 0.5em 3em; background-position:1em center; background-repeat:no-repeat; background-image:url('../img/action.png'); border-right:1px solid #eee; text-decoration:none; color:#333; }
+p.actions a:hover, p.actions a:focus, div.actions a:hover, div.actions a:focus { background-color:#eee; color:#000; outline:0; }
+p.actions a:active, div.actions a:active { outline:0; }
+p.actions a.new-dir, div.actions a.new-dir { background-image:url('../img/folder-new.png'); }
+p.actions a.download, div.actions a.download { background-image:url('../img/download.png'); }
+p.actions a.delete, div.actions a.delete { background-image:url('../img/delete.png'); }
/* USER SETTINGS ------------------------------------------------------------ */
#quota_indicator { margin:0 4em 1em 0; padding:0; border:1px solid #ddd; border-radius:10px; -webkit-border-radius:10px; -moz-border-radius:10px; }
diff --git a/files/css/files.css b/files/css/files.css
index 806582da213..6313e6d1ca6 100644
--- a/files/css/files.css
+++ b/files/css/files.css
@@ -20,6 +20,10 @@
}
#file_upload_form {
+ display: inline;
+}
+
+#fileSelector, #file_upload_cancel {
display: none;
}
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">');
}
});
}
diff --git a/files/templates/index.php b/files/templates/index.php
index 54de41c594a..e794bad300c 100644
--- a/files/templates/index.php
+++ b/files/templates/index.php
@@ -1,19 +1,11 @@
<div class="controls">
- <p class="actions">
- <a href="" title="" class="upload" id="file_upload_button" style="background-image:url(<?php echo mimetype_icon('file'); ?>)">Upload (max <?php echo $_["uploadMaxHumanFilesize"];?>)</a><a
-href="" title="" class="new-dir">New folder</a><a href="" title=""
-class="download">Download</a><a href="" title="" class="share">Share</a><a
-href="" title="" class="delete">Delete</a>
- </p>
- <div id="file_action_panel">
+ <div class="actions">
<form id="file_upload_form" action="ajax/upload.php"
method="post" enctype="multipart/form-data" target="file_upload_target"><input
type="hidden" name="MAX_FILE_SIZE" value="<?php echo $_["uploadMaxFilesize"] ?>" id="max_upload"><input
-type="hidden" name="dir" value="<?php echo $_["dir"] ?>" id="dir"><input class="prettybutton" type="submit"
-id="file_upload_start" value="Upload" />&nbsp;<input class="prettybutton" type="button"
-id="file_upload_cancel" value="X" /><input
-type="file" name="file" id="fileSelector"><iframe id="file_upload_target"
-name="file_upload_target" src=""></iframe></form>
+type="hidden" class="max_human_file_size" value="(max <?php echo $_["uploadMaxHumanFilesize"]; ?>)"><input type="hidden" name="dir" value="<?php echo $_["dir"] ?>" id="dir"><input class="prettybutton" type="submit" id="file_upload_start" value="Upload (max <?php echo $_["uploadMaxHumanFilesize"];?>)" />&nbsp;<input class="prettybutton" type="button" id="file_upload_cancel" value="X" /><input type="file" name="file" id="fileSelector"><iframe id="file_upload_target" name="file_upload_target" src=""></iframe></form><a href="" title="" class="new-dir">New folder</a><a href="" title="" class="download">Download</a><a href="" title="" class="share">Share</a><a href="" title="" class="delete">Delete</a>
+ </div>
+ <div id="file_action_panel">
<form id="file_newfolder_form"><input type="text" name="file_new_dir_name" id="file_new_dir_name" />&nbsp;<input class="prettybutton" type="button" id="file_new_dir_submit" name="file_new_dir_submit" value="OK" /></form>
</div>
</div>