From d2d7c72e99d41950943fc17a9f63d0c814b38870 Mon Sep 17 00:00:00 2001 From: llj Date: Mon, 17 Nov 2014 13:29:11 +0800 Subject: [PATCH] [fileupload] redesigned 'add folder' --- media/css/seahub.css | 21 ++- seahub/base/templatetags/upload_tags.py | 12 +- seahub/templates/repo.html | 127 ++++++++++++++++++- seahub/templates/snippets/repo_dir_data.html | 14 +- 4 files changed, 165 insertions(+), 9 deletions(-) diff --git a/media/css/seahub.css b/media/css/seahub.css index 665a368486..6770aa76c0 100644 --- a/media/css/seahub.css +++ b/media/css/seahub.css @@ -1794,6 +1794,7 @@ textarea:-moz-placeholder {/* for FF */ } #repo-file-list .repo-file-list-topbar.fixed-hd { width:930px; + z-index:12; /* to make #upload-menu be on top of .repo-file-list tr.fixed-hd */ } .repo-file-list .fixed-hd th { background:#fff; @@ -1940,6 +1941,23 @@ textarea:-moz-placeholder {/* for FF */ position:relative; overflow:hidden; } +#upload-menu { + position:absolute; + left:0; + top:29px; + border:1px solid #c5c5c5; + border-radius:2px; + box-shadow: 0 0 2px #c5c5c5; + background:#fff; +} +#upload-menu .item { + position:relative; + text-align:left; + padding:0 10px; + height:27px; + line-height:27px; + overflow:hidden; /* for 'hover', as long 'input' in it. */ +} .fixed-upload-file-dialog { width: 540px; position: fixed; @@ -1982,7 +2000,8 @@ textarea:-moz-placeholder {/* for FF */ color:#333; } .fileinput-button input, -#upload-file input { +#upload-file input, +#upload-menu input { position: absolute; top: 0; right: 0; diff --git a/seahub/base/templatetags/upload_tags.py b/seahub/base/templatetags/upload_tags.py index 20f225c40b..69d035b8f0 100644 --- a/seahub/base/templatetags/upload_tags.py +++ b/seahub/base/templatetags/upload_tags.py @@ -10,12 +10,14 @@ def upload_js(): {% for (var i=0, file; file=o.files[i]; i++) { %} {% if (file.error) { %} - {%=file.name%} + + {%=file.webkitRelativePath || file.name%} + {%=o.formatFileSize(file.size)%} {%=locale.fileupload.error%} {%=locale.fileupload.errors[file.error] || file.error%} {% } else if (o.files.valid && !i) { %} - - {%=file.name%} + + {%=file.webkitRelativePath || file.name%}
{%=o.formatFileSize(file.size)%} @@ -41,7 +43,9 @@ def upload_js():