polygallery 0.3.2 → 0.3.3
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d5677a62369074c87bcb244a40524461ef19e0ff
|
4
|
+
data.tar.gz: cc56143ab682bc3d307573f4484c0b88e897370a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fa6d708ebf3b9be3852540dd193952016f102e56c88c423735fa770dbfd3c6b6ee52a5d7fc8e718dcfc274427fcea75f7324d6b6e796dd1968a3feef3d877c30
|
7
|
+
data.tar.gz: c1f82b8cf65bed7f766f1c9db488eae729c21fd25f8bb6ecdc2fecf00f191b49d4542bd95fd08c45005927773c0c18df5fb67eb7f9b107270a0fb42208b81cea
|
@@ -1,22 +1,51 @@
|
|
1
1
|
require 'polygallery/factories'
|
2
2
|
module Polygallery
|
3
3
|
module CapybaraHelpers
|
4
|
-
def
|
4
|
+
def select_polyphoto_tr(i=0, table_id='photos')
|
5
|
+
all(".polygallery-cocoon-table##{table_id} tbody tr").to_a[i] end
|
6
|
+
|
7
|
+
def add_photo_to_form(table_id='photos', attrs=nil)
|
8
|
+
unless table_id.is_a? String
|
9
|
+
attrs = table_id; table_id = 'photos' end
|
5
10
|
attrs ||= build :polygallery_photo
|
6
|
-
tr_selector = ".polygallery-cocoon-table##{table_id} tr"
|
7
|
-
|
8
|
-
|
11
|
+
tr_selector = ".polygallery-cocoon-table##{table_id} tbody tr"
|
12
|
+
trs = all(tr_selector); last_tr = trs.last
|
13
|
+
unless trs.length == 1 && last_tr.find('input[id$="_photo"]').value.blank?
|
9
14
|
page.execute_script <<-SCRIPT
|
10
|
-
$('.
|
15
|
+
$('.add_fields[data-association-insertion-node="##{table_id} .photo-receptacle"]').click();
|
11
16
|
SCRIPT
|
12
17
|
last_tr = all(tr_selector).last
|
13
18
|
end
|
14
19
|
within last_tr do
|
15
|
-
|
16
|
-
find('input[id$="_photo"]').set random_photo
|
20
|
+
find('input[id$="_photo"]').set get_random_photo
|
17
21
|
find('input[id$="_caption"]').set(attrs.caption)
|
18
22
|
yield if block_given?
|
19
23
|
end
|
20
24
|
end
|
25
|
+
|
26
|
+
def change_photo_in_form(photo_index=0, table_id='photos', file_to_use=nil)
|
27
|
+
if photo_index.is_a? File
|
28
|
+
file_to_use = photo_index; photo_index = 0 end
|
29
|
+
if table_id.is_a? File
|
30
|
+
file_to_use = table_id; table_id = 'photos' end
|
31
|
+
if photo_index.is_a? String
|
32
|
+
table_id = photo_index; photo_index = 0 end
|
33
|
+
file_to_use ||= get_random_photo
|
34
|
+
within select_polyphoto_tr(photo_index, table_id) do |tr|
|
35
|
+
file_input = find('input[id$="_photo"]')
|
36
|
+
file_input.set file_to_use
|
37
|
+
yield(tr) if block_given?
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
def remove_photo_from_form(photo_index=0, table_id='photos')
|
42
|
+
if photo_index.is_a? String
|
43
|
+
table_id = photo_index; photo_index = 0 end
|
44
|
+
tr_selector = ".polygallery-cocoon-table##{table_id} tbody tr:nth-child(#{photo_index + 1})"
|
45
|
+
page.execute_script <<-SCRIPT
|
46
|
+
$('#{tr_selector} .remove_fields').click();
|
47
|
+
SCRIPT
|
48
|
+
end
|
49
|
+
|
21
50
|
end
|
22
51
|
end
|
@@ -182,13 +182,14 @@ module Polygallery
|
|
182
182
|
build_gallery_associations.map(&:build_first_photo)
|
183
183
|
end
|
184
184
|
|
185
|
-
def first_polyphoto
|
185
|
+
def first_polyphoto(ga_name=nil)
|
186
186
|
return Photo.new unless gallery_associations.any?
|
187
|
-
|
188
|
-
|
189
|
-
|
187
|
+
ga = if ga_name.present? then send(ga_name)
|
188
|
+
else gallery_associations.to_a.find{|pg| pg.photos.any? } end
|
189
|
+
return Photo.new if ga.nil?
|
190
|
+
ga.first_photo
|
190
191
|
end
|
191
|
-
def first_photo; first_polyphoto.photo end
|
192
|
+
def first_photo(ga_name=nil); first_polyphoto(ga_name).photo end
|
192
193
|
|
193
194
|
def ensure_galleryable_set
|
194
195
|
gallery_associations.each do |ga|
|
@@ -110,8 +110,6 @@ module Polygallery
|
|
110
110
|
end
|
111
111
|
|
112
112
|
def build_polygallery_photos
|
113
|
-
# puts "BUILDING PHOTOS for #{title}"
|
114
|
-
# puts "PHOTO ATTRS: #{self.photos_attributes.inspect}"
|
115
113
|
# Convert attributes to array if in hash form
|
116
114
|
# self.photos_attributes =
|
117
115
|
# self.photos_attributes.map{|_, v| v
|
@@ -128,7 +126,7 @@ module Polygallery
|
|
128
126
|
|
129
127
|
attrs_for_photos.each_with_index do |attrs_for_photo, index|
|
130
128
|
attrs_for_photo[:polygallery_options] = self.polygallery_settings
|
131
|
-
should_destroy = attrs_for_photo.delete(:_destroy)
|
129
|
+
should_destroy = %w(true 1).include? attrs_for_photo.delete(:_destroy)
|
132
130
|
if attrs_for_photo.key? :id
|
133
131
|
existing_id = attrs_for_photo.delete(:id).to_i
|
134
132
|
existing_photo = self.polygallery_photos_class.find existing_id
|
@@ -138,15 +136,9 @@ module Polygallery
|
|
138
136
|
else
|
139
137
|
# puts 'Updating an existing photo'
|
140
138
|
existing_photo.update_attributes attrs_for_photo end
|
141
|
-
# elsif attrs_for_photo.key? :built
|
142
|
-
# puts 'Photo already built'
|
143
139
|
else
|
144
140
|
# puts 'Building a new photo'
|
145
|
-
# puts attrs_for_photo.inspect
|
146
|
-
# built_photo =
|
147
141
|
self.polygallery_photos.build attrs_for_photo
|
148
|
-
# set_nest built_photo
|
149
|
-
# self.polygallery_photos_attributes[index][:built] = true
|
150
142
|
end
|
151
143
|
end
|
152
144
|
self.photos_built = true
|
data/lib/polygallery/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: polygallery
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- MacKinley Smith
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-08-
|
11
|
+
date: 2015-08-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|