dropzonejs-rails 0.3.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +8 -8
- data/README.md +1 -1
- data/lib/dropzonejs-rails/version.rb +2 -2
- data/vendor/assets/javascripts/dropzone.js +69 -33
- data/vendor/assets/stylesheets/dropzone/dropzone.css.scss +0 -5
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
!binary "U0hBMQ==":
|
|
3
3
|
metadata.gz: !binary |-
|
|
4
|
-
|
|
4
|
+
YmRkMWIyNWYxMDJmZDQwYmMzZmE5ZjUzZTYwZjZhYTZkMDU1YmE0OQ==
|
|
5
5
|
data.tar.gz: !binary |-
|
|
6
|
-
|
|
6
|
+
NGU5NzM5MjUzZmFjODc1NTI2MDIyNzU1ZTk0ZjRiNWYwNWRhYWE3MQ==
|
|
7
7
|
!binary "U0hBNTEy":
|
|
8
8
|
metadata.gz: !binary |-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
NTA3OTAyNTc2NGVkMjk5NzNlYzNhYmRiZGRjZDhjNWIxYWZiNjRkMzA5ZTVj
|
|
10
|
+
NzMxZTlhOTQzOTZkM2NhY2Y0NjljNDcxNTAwNzExMWQ1MTFjZDZlMzc2ZGI5
|
|
11
|
+
MzgzMzUyZWMyZDg3MDFmYzIzNjVmM2E5OTAwMDZkZDY2ZDBiMjY=
|
|
12
12
|
data.tar.gz: !binary |-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
ZDUyNzFmZTg3ZjQ3MTA2MGQ4MzQ0N2Y2YmFlOTdlMDgwODhlZjdhMTgwYTVk
|
|
14
|
+
MmE5YmI4MTJhN2FhMmUwN2FjMmM1ZGY2MjBhNWY0OTAyNjJkZWY5MjM0Yzcx
|
|
15
|
+
OTY2ZjY5YzBkNzMyMTg4NWE5OWFiN2ZkNTQ5NjFkZmY1ODEwZTg=
|
data/README.md
CHANGED
|
@@ -472,6 +472,33 @@ require.register("dropzone/lib/dropzone.js", function(exports, require, module){
|
|
|
472
472
|
}
|
|
473
473
|
return this.element.appendChild(this.getFallbackForm());
|
|
474
474
|
},
|
|
475
|
+
resize: function(file) {
|
|
476
|
+
var info, srcRatio, trgRatio;
|
|
477
|
+
|
|
478
|
+
info = {
|
|
479
|
+
srcX: 0,
|
|
480
|
+
srcY: 0,
|
|
481
|
+
srcWidth: file.width,
|
|
482
|
+
srcHeight: file.height
|
|
483
|
+
};
|
|
484
|
+
srcRatio = file.width / file.height;
|
|
485
|
+
trgRatio = this.options.thumbnailWidth / this.options.thumbnailHeight;
|
|
486
|
+
if (file.height < this.options.thumbnailHeight || file.width < this.options.thumbnailWidth) {
|
|
487
|
+
info.trgHeight = info.srcHeight;
|
|
488
|
+
info.trgWidth = info.srcWidth;
|
|
489
|
+
} else {
|
|
490
|
+
if (srcRatio > trgRatio) {
|
|
491
|
+
info.srcHeight = file.height;
|
|
492
|
+
info.srcWidth = info.srcHeight * trgRatio;
|
|
493
|
+
} else {
|
|
494
|
+
info.srcWidth = file.width;
|
|
495
|
+
info.srcHeight = info.srcWidth / trgRatio;
|
|
496
|
+
}
|
|
497
|
+
}
|
|
498
|
+
info.srcX = (file.width - info.srcWidth) / 2;
|
|
499
|
+
info.srcY = (file.height - info.srcHeight) / 2;
|
|
500
|
+
return info;
|
|
501
|
+
},
|
|
475
502
|
/*
|
|
476
503
|
Those functions register themselves to the events on init and handle all
|
|
477
504
|
the user interface specific stuff. Overwriting them won't break the upload
|
|
@@ -670,6 +697,20 @@ require.register("dropzone/lib/dropzone.js", function(exports, require, module){
|
|
|
670
697
|
eventName = _ref1[_i];
|
|
671
698
|
this.on(eventName, this.options[eventName]);
|
|
672
699
|
}
|
|
700
|
+
this.on("uploadprogress", function(file) {
|
|
701
|
+
var totalBytes, totalBytesSent, totalUploadProgress, _j, _len1, _ref2;
|
|
702
|
+
|
|
703
|
+
totalBytesSent = 0;
|
|
704
|
+
totalBytes = 0;
|
|
705
|
+
_ref2 = _this.files;
|
|
706
|
+
for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) {
|
|
707
|
+
file = _ref2[_j];
|
|
708
|
+
totalBytesSent += file.upload.bytesSent;
|
|
709
|
+
totalBytes += file.upload.total;
|
|
710
|
+
}
|
|
711
|
+
totalUploadProgress = 100 * totalBytesSent / totalBytes;
|
|
712
|
+
return _this.emit("totaluploadprogress", totalUploadProgress, totalBytes, totalBytesSent);
|
|
713
|
+
});
|
|
673
714
|
noPropagation = function(e) {
|
|
674
715
|
e.stopPropagation();
|
|
675
716
|
if (e.preventDefault) {
|
|
@@ -886,6 +927,11 @@ require.register("dropzone/lib/dropzone.js", function(exports, require, module){
|
|
|
886
927
|
Dropzone.prototype.addFile = function(file) {
|
|
887
928
|
var _this = this;
|
|
888
929
|
|
|
930
|
+
file.upload = {
|
|
931
|
+
progress: 0,
|
|
932
|
+
total: file.size,
|
|
933
|
+
bytesSent: 0
|
|
934
|
+
};
|
|
889
935
|
this.files.push(file);
|
|
890
936
|
this.emit("addedfile", file);
|
|
891
937
|
if (this.options.createImageThumbnails && file.type.match(/image.*/) && file.size <= this.options.maxThumbnailFilesize * 1024 * 1024) {
|
|
@@ -938,39 +984,22 @@ require.register("dropzone/lib/dropzone.js", function(exports, require, module){
|
|
|
938
984
|
|
|
939
985
|
img = new Image;
|
|
940
986
|
img.onload = function() {
|
|
941
|
-
var canvas, ctx,
|
|
987
|
+
var canvas, ctx, resizeInfo, thumbnail, _ref, _ref1, _ref2, _ref3, _ref4, _ref5;
|
|
942
988
|
|
|
989
|
+
file.width = img.width;
|
|
990
|
+
file.height = img.height;
|
|
991
|
+
resizeInfo = _this.options.resize.call(_this, file);
|
|
992
|
+
if ((_ref = resizeInfo.trgWidth) == null) {
|
|
993
|
+
resizeInfo.trgWidth = _this.options.thumbnailWidth;
|
|
994
|
+
}
|
|
995
|
+
if ((_ref1 = resizeInfo.trgHeight) == null) {
|
|
996
|
+
resizeInfo.trgHeight = _this.options.thumbnailHeight;
|
|
997
|
+
}
|
|
943
998
|
canvas = document.createElement("canvas");
|
|
944
999
|
ctx = canvas.getContext("2d");
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
srcWidth =
|
|
948
|
-
srcHeight = img.height;
|
|
949
|
-
canvas.width = _this.options.thumbnailWidth;
|
|
950
|
-
canvas.height = _this.options.thumbnailHeight;
|
|
951
|
-
trgX = 0;
|
|
952
|
-
trgY = 0;
|
|
953
|
-
trgWidth = canvas.width;
|
|
954
|
-
trgHeight = canvas.height;
|
|
955
|
-
srcRatio = img.width / img.height;
|
|
956
|
-
trgRatio = canvas.width / canvas.height;
|
|
957
|
-
if (img.height < canvas.height || img.width < canvas.width) {
|
|
958
|
-
trgHeight = srcHeight;
|
|
959
|
-
trgWidth = srcWidth;
|
|
960
|
-
} else {
|
|
961
|
-
if (srcRatio > trgRatio) {
|
|
962
|
-
srcHeight = img.height;
|
|
963
|
-
srcWidth = srcHeight * trgRatio;
|
|
964
|
-
} else {
|
|
965
|
-
srcWidth = img.width;
|
|
966
|
-
srcHeight = srcWidth / trgRatio;
|
|
967
|
-
}
|
|
968
|
-
}
|
|
969
|
-
srcX = (img.width - srcWidth) / 2;
|
|
970
|
-
srcY = (img.height - srcHeight) / 2;
|
|
971
|
-
trgY = (canvas.height - trgHeight) / 2;
|
|
972
|
-
trgX = (canvas.width - trgWidth) / 2;
|
|
973
|
-
ctx.drawImage(img, srcX, srcY, srcWidth, srcHeight, trgX, trgY, trgWidth, trgHeight);
|
|
1000
|
+
canvas.width = resizeInfo.trgWidth;
|
|
1001
|
+
canvas.height = resizeInfo.trgHeight;
|
|
1002
|
+
ctx.drawImage(img, (_ref2 = resizeInfo.srcX) != null ? _ref2 : 0, (_ref3 = resizeInfo.srcY) != null ? _ref3 : 0, resizeInfo.srcWidth, resizeInfo.srcHeight, (_ref4 = resizeInfo.trgX) != null ? _ref4 : 0, (_ref5 = resizeInfo.trgY) != null ? _ref5 : 0, resizeInfo.trgWidth, resizeInfo.trgHeight);
|
|
974
1003
|
thumbnail = canvas.toDataURL("image/png");
|
|
975
1004
|
return _this.emit("thumbnail", file, thumbnail);
|
|
976
1005
|
};
|
|
@@ -1026,7 +1055,6 @@ require.register("dropzone/lib/dropzone.js", function(exports, require, module){
|
|
|
1026
1055
|
if (!((200 <= (_ref = xhr.status) && _ref < 300))) {
|
|
1027
1056
|
return handleError();
|
|
1028
1057
|
} else {
|
|
1029
|
-
_this.emit("uploadprogress", file, 100, file.size);
|
|
1030
1058
|
return _this.finished(file, response, e);
|
|
1031
1059
|
}
|
|
1032
1060
|
};
|
|
@@ -1035,7 +1063,15 @@ require.register("dropzone/lib/dropzone.js", function(exports, require, module){
|
|
|
1035
1063
|
};
|
|
1036
1064
|
progressObj = (_ref = xhr.upload) != null ? _ref : xhr;
|
|
1037
1065
|
progressObj.onprogress = function(e) {
|
|
1038
|
-
|
|
1066
|
+
var progress;
|
|
1067
|
+
|
|
1068
|
+
file.upload = {
|
|
1069
|
+
progress: progress,
|
|
1070
|
+
total: e.total,
|
|
1071
|
+
bytesSent: e.loaded
|
|
1072
|
+
};
|
|
1073
|
+
progress = 100 * e.loaded / e.total;
|
|
1074
|
+
return _this.emit("uploadprogress", file, progress, e.loaded);
|
|
1039
1075
|
};
|
|
1040
1076
|
xhr.setRequestHeader("Accept", "application/json");
|
|
1041
1077
|
xhr.setRequestHeader("Cache-Control", "no-cache");
|
|
@@ -1086,7 +1122,7 @@ require.register("dropzone/lib/dropzone.js", function(exports, require, module){
|
|
|
1086
1122
|
|
|
1087
1123
|
})(Em);
|
|
1088
1124
|
|
|
1089
|
-
Dropzone.version = "3.0
|
|
1125
|
+
Dropzone.version = "3.1.0";
|
|
1090
1126
|
|
|
1091
1127
|
Dropzone.options = {};
|
|
1092
1128
|
|
|
@@ -215,11 +215,6 @@
|
|
|
215
215
|
box-shadow: 1px 1px 4px rgba(0,0,0,0.16);
|
|
216
216
|
font-size: 14px;
|
|
217
217
|
}
|
|
218
|
-
.dropzone .dz-preview .dz-details img,
|
|
219
|
-
.dropzone-previews .dz-preview .dz-details img {
|
|
220
|
-
width: 100px;
|
|
221
|
-
height: 100px;
|
|
222
|
-
}
|
|
223
218
|
.dropzone .dz-preview.dz-image-preview:hover .dz-details img,
|
|
224
219
|
.dropzone-previews .dz-preview.dz-image-preview:hover .dz-details img {
|
|
225
220
|
display: block;
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: dropzonejs-rails
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.3.
|
|
4
|
+
version: 0.3.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- José Nahuel Cuesta Luengo
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2013-05-
|
|
11
|
+
date: 2013-05-23 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rails
|