dropzonejs-rails 0.3.0 → 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- 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
|