summaryrefslogtreecommitdiff
path: root/js/file-selector.js
diff options
context:
space:
mode:
authormarktaiwan <mark.taiwan@gmail.com>2015-03-19 19:29:48 +0800
committerczaks <marcin@6irc.net>2015-03-31 05:57:26 +0200
commit4da073b6e85aae15b8eed227b3b3b16798d2a99e (patch)
tree3e77d8d552252219505daa38464522d54695dbcb /js/file-selector.js
parent0005f11098890ad76c1b9963792cd686493649a9 (diff)
Keep quick-reply and main form in sync
Use object-url instead of data-url due to shorter length
Diffstat (limited to 'js/file-selector.js')
-rw-r--r--js/file-selector.js23
1 files changed, 8 insertions, 15 deletions
diff --git a/js/file-selector.js b/js/file-selector.js
index b4589706..e5451f1a 100644
--- a/js/file-selector.js
+++ b/js/file-selector.js
@@ -26,7 +26,7 @@ $(document).ready(function () {
});
// disabled by user, or incompatible browser.
-if (localStorage.file_dragdrop == 'false' || !(window.FileReader && window.File))
+if (localStorage.file_dragdrop == 'false' || !(window.URL.createObjectURL && window.File))
return;
// multipost not enabled
@@ -59,9 +59,9 @@ function addThumb(file) {
var fileName = (file.name.length < 24) ? file.name : file.name.substr(0, 22) + '…';
var fileType = file.type.split('/')[0];
var fileExt = file.type.split('/')[1];
- var $fileThumb;
+ var $container = $('<div>');
- $('.file-thumbs').append($('<div>')
+ $container
.addClass('tmb-container')
.data('file-ref', file)
.append(
@@ -69,21 +69,14 @@ function addThumb(file) {
$('<div>').addClass('file-tmb'),
$('<div>').addClass('tmb-filename').html(fileName)
)
- );
+ .appendTo($('.file-thumbs'));
+ var $fileThumb = $container.find('.file-tmb');
if (fileType == 'image') {
// if image file, generate thumbnail
- var reader = new FileReader();
-
- reader.onloadend = function () {
- var dataURL = reader.result;
- var $fileThumb = getThumbElement(file).find('.file-tmb');
- $fileThumb.css('background-image', 'url('+ dataURL +')');
- };
-
- reader.readAsDataURL(file);
+ var objURL = window.URL.createObjectURL(file);
+ $fileThumb.css('background-image', 'url('+ objURL +')');
} else {
- $fileThumb = getThumbElement(file).find('.file-tmb');
$fileThumb.html('<span>' + fileExt.toUpperCase() + '</span>');
}
}
@@ -144,8 +137,8 @@ $(document).on(dropHandlers, '.dropzone');
$(document).on('click', '.dropzone .remove-btn', function (e) {
var file = $(e.target).parent().data('file-ref');
+ getThumbElement(file).remove();
removeFile(file);
- $(e.target).parent().remove();
});
$(document).on('click', '.dropzone .file-hint', function (e) {