avatars_for_rails 1.0.3 → 1.0.4
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4ebebb8262563aef39e2d376b00a5d2f2839ef29
|
4
|
+
data.tar.gz: 6f0b38c248043d84f949d73d2d5307b3851abed9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0473b4237bdba0f6e32462b4b13fe98ddc0ae568d4878914ef9528e96986a94e48b9f34eb658fa0a1a1af362b2aeedfe94447453fd42de667ff7e4862d29a18c
|
7
|
+
data.tar.gz: f2fce31f7c0490717adbf2df9e42238b9b0c793386e68ebce7d39891a69e1acf841efea49f228f754b4a104583b1fc729e44d9261934ab7c2c6625b2df4c22c0
|
@@ -46,13 +46,20 @@ var AvatarForRails = AvatarForRails || (function($, undefined) {
|
|
46
46
|
};
|
47
47
|
|
48
48
|
var initCrop = function(data) {
|
49
|
-
var div = $('section.avatar .update')
|
49
|
+
var div = $('section.avatar .update'),
|
50
|
+
img,
|
51
|
+
ar;
|
52
|
+
|
50
53
|
div.html(data);
|
51
|
-
|
54
|
+
|
55
|
+
img = div.find('img.crop'),
|
56
|
+
ar = parseInt(img.attr('data-aspect_ratio'), 10);
|
57
|
+
|
58
|
+
img.Jcrop({
|
52
59
|
bgColor: 'clear',
|
53
60
|
bgOpacity: 0.6,
|
54
|
-
setSelect: [ 0, 0, 200, 200 ],
|
55
|
-
aspectRatio:
|
61
|
+
setSelect: [ 0, 0, 200, 200 / ar ],
|
62
|
+
aspectRatio: ar,
|
56
63
|
onSelect: updateCrop,
|
57
64
|
onChange: updateCrop
|
58
65
|
});
|
@@ -71,7 +78,6 @@ var AvatarForRails = AvatarForRails || (function($, undefined) {
|
|
71
78
|
$('input[name*="logo_crop_x"]').val(coords.x / iW);
|
72
79
|
$('input[name*="logo_crop_y"]').val(coords.y / iH);
|
73
80
|
$('input[name*="logo_crop_w"]').val(coords.w / iW);
|
74
|
-
$('input[name*="logo_crop_h"]').val(coords.h / iH);
|
75
81
|
};
|
76
82
|
|
77
83
|
addEditCallback(initFileUpload);
|
@@ -1,7 +1,7 @@
|
|
1
|
-
<%= image_tag avatarable.avatar_tmp_public_path(root_path), class: 'crop' %>
|
1
|
+
<%= image_tag avatarable.avatar_tmp_public_path(root_path), class: 'crop', "data-aspect_ratio" => avatarable.class.logo_aspect_ratio %>
|
2
2
|
|
3
3
|
<%= form_for avatarable, url: avatar_path, multipart: true do |f| %>
|
4
|
-
<% %w( x y w
|
4
|
+
<% %w( x y w ).each do |attr| %>
|
5
5
|
<%= f.hidden_field "logo_crop_#{ attr }" %>
|
6
6
|
<% end %>
|
7
7
|
<%= f.hidden_field :avatar_tmp_basename %>
|
@@ -3,6 +3,9 @@ module AvatarsForRails
|
|
3
3
|
extend ActiveSupport::Concern
|
4
4
|
|
5
5
|
included do
|
6
|
+
cattr_accessor :logo_aspect_ratio
|
7
|
+
self.logo_aspect_ratio = 1
|
8
|
+
|
6
9
|
attr_accessor :logo_crop, :logo_crop_x, :logo_crop_y, :logo_crop_w, :logo_crop_h,
|
7
10
|
:avatar_tmp_basename
|
8
11
|
|
@@ -43,7 +46,7 @@ module AvatarsForRails
|
|
43
46
|
def validate_crop_params
|
44
47
|
return if logo_crop_x.blank?
|
45
48
|
|
46
|
-
%w( x y w
|
49
|
+
%w( x y w ).each do |attr|
|
47
50
|
send "logo_crop_#{ attr }=", send("logo_crop_#{ attr }").to_f
|
48
51
|
end
|
49
52
|
|
@@ -57,10 +60,12 @@ module AvatarsForRails
|
|
57
60
|
|
58
61
|
width, height = avatar_tmp_file_dimensions
|
59
62
|
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
63
|
+
crop_x = (logo_crop_x * width).round
|
64
|
+
crop_y = (logo_crop_y * height).round
|
65
|
+
crop_w = (logo_crop_w * width).round
|
66
|
+
crop_h = crop_w / self.class.logo_aspect_ratio
|
67
|
+
|
68
|
+
avatar_magick_image.crop!(crop_x, crop_y, crop_w, crop_h)
|
64
69
|
|
65
70
|
avatar_magick_image.write(avatar_tmp_full_path)
|
66
71
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: avatars_for_rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jaime Castro Montero
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-04-09 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: jquery-rails
|