imagegallery2017 0.1.2 → 0.1.3

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: 29107fdce25855a5f8ce1db51c16cbe85a3e2ebc
4
- data.tar.gz: 585b92d6c8352b86a906d54c70e7309236910384
3
+ metadata.gz: 2108584d86763b92dac96ed5d2b165f708841ee1
4
+ data.tar.gz: 14f78f70f69a6e386abeb4b9cd837bf7f0a3ba1c
5
5
  SHA512:
6
- metadata.gz: dd20eca9e762dc3d524a980834bcec486ea365d3e84d6361f2531ece1de5e06101409c19e83842d3dbbff1de1d212edde1d72113287808ea754b6f4eccd79b3a
7
- data.tar.gz: a235bbbf12e296b916e52f4832d4a5e9cfb733ab93508d43b7c65bf71687f2d5446aa23505a1c026ca9fb311eabdadd2e22f9c797ff1032ac2d534f0af52e84b
6
+ metadata.gz: 2ae8ecd7704d76519c95eabf28e8a60fea097e18afee5834da4debbbd8c9ae8f584844353cfd414d84a3388d1fe70fc1164f3de5d2d2da1c526898f84ae43d85
7
+ data.tar.gz: bff5db9776767490798040abe916d0ffe19b104225fbd7b03f139071e8f260f79e660ae598dd84fdb4a5a901212da1a7817ce9425eb85eac6f48e1ecf5d50ed2
checksums.yaml.gz.sig CHANGED
Binary file
@@ -20,9 +20,10 @@ class ImageGallery2017
20
20
 
21
21
  def initialize(rsc, filepath: '.', xslfile: '../xsl/index.xslt',
22
22
  schema: 'images[title, folder]/image(original, desktop, preview, ' +
23
- 'folder, imgcount, title)', folder: nil)
23
+ 'folder, imgcount, title)', folder: nil, log: nil)
24
24
 
25
25
  @rsc, @wwwpath, @xslfile = [rsc, File.join(filepath, 'www'), xslfile]
26
+ @log = log
26
27
 
27
28
  a = [@wwwpath, 'images']
28
29
  a << folder if folder
@@ -45,11 +46,14 @@ class ImageGallery2017
45
46
  self.save dxfilepath
46
47
 
47
48
  end
49
+ @log.info 'Gallery/initialize: self.summary' + self.summary.inspect if @log
48
50
 
49
51
  end
50
52
 
51
53
  def add_image(uploaded=nil)
52
54
 
55
+ @log.info 'Gallery/add_image: active' if @log
56
+
53
57
  filename = uploaded[:filename]
54
58
  file = File.join(@imagespath, filename)
55
59
  File.write file, uploaded[:tempfile].read
@@ -62,13 +66,23 @@ class ImageGallery2017
62
66
 
63
67
  self.create(h)
64
68
  self.save
65
-
69
+ @log.info 'Gallery/add_image: saved' if @log
70
+
71
+ return preview_file
66
72
  end
67
73
 
68
74
  def render()
69
75
 
76
+ @log.info 'Gallery/render: active' if @log
77
+ @log.info 'Gallery/render: self.to_xml' + self.to_xml if @log
78
+
70
79
  doc = Nokogiri::XML(self.to_xml)
71
- xslt = Nokogiri::XSLT(File.read(File.join(@wwwpath, @xslt)))
80
+
81
+ if @log then
82
+ @log.info "Gallery/render: self.summary: %s" % [self.summary.inspect]
83
+ end
84
+
85
+ xslt = Nokogiri::XSLT(File.read(File.join(@imagespath, self.summary[:xslt])))
72
86
  xslt.transform(doc).to_s
73
87
 
74
88
  end
@@ -77,16 +91,18 @@ class ImageGallery2017
77
91
 
78
92
  class IndexGallery < Gallery
79
93
 
80
- def initialize(rsc, filepath: '.')
94
+ def initialize(rsc, filepath: '.', log: nil)
81
95
 
82
96
  FileUtils.mkdir_p File.join(filepath, 'www','images')
83
97
  FileUtils.mkdir_p File.join(filepath, 'www','xsl')
84
- super(rsc, filepath: filepath)
98
+ super(rsc, filepath: filepath, log: log)
85
99
 
86
100
  end
87
101
 
88
102
  def render()
89
103
 
104
+ @log.info 'IndexGallery/render: active' if @log
105
+
90
106
  File.write File.join(@wwwpath, 'index.html'), super()
91
107
 
92
108
  end
@@ -95,19 +111,24 @@ class ImageGallery2017
95
111
 
96
112
  attr_reader :index, :gallery
97
113
 
98
- def initialize(rsc, basepath='.')
114
+ def initialize(rsc, basepath='.', log: nil)
99
115
 
100
- @basepath, @rsc = basepath, rsc
101
- @index = IndexGallery.new rsc, filepath: @basepath
116
+ log.info 'ImageGallery/initialize: active' if log
117
+ @basepath = basepath
118
+ @index = IndexGallery.new rsc, filepath: @basepath, log: log
102
119
  @gallery = {}
120
+ @default_folder = '../svg/folder.svg'
121
+ @log = log
103
122
 
104
123
  # load all the folders
105
124
 
125
+ log.info 'ImageGallery/initialize: loading galleries' if log
106
126
  @index.all.each do |x|
107
127
 
108
128
  if x.folder.length > 0 then
109
- @gallery[x.folder] = Gallery.new @rsc,
110
- filepath: basepath, folder: x.folder
129
+ @gallery[x.folder] = Gallery.new rsc,
130
+ filepath: basepath, folder: x.folder, log: log
131
+ log.info 'ImageGallery/initialize: loaded ' + x.folder if log
111
132
  end
112
133
 
113
134
  end
@@ -116,7 +137,50 @@ class ImageGallery2017
116
137
 
117
138
  def add_image(upload_obj, folder=nil)
118
139
 
119
- (folder ? @gallery[folder] : @index).add_image upload_obj
140
+ @log.info 'ImageGallery/add_image: active' if @log
141
+
142
+ if folder then
143
+
144
+ g = @gallery[folder]
145
+ preview_file = g.add_image upload_obj
146
+
147
+ rx = @index.find_by_folder folder
148
+ rx.preview = preview_file
149
+ rx.imgcount = g.all.length
150
+
151
+ @index.save
152
+
153
+ else
154
+ @index.add_image upload_obj
155
+ end
156
+
157
+ @index.render
158
+
159
+ end
160
+
161
+ def browse(folder)
162
+ (folder ? @gallery[folder] : @index).render
163
+ end
164
+
165
+ def delete_image(id, folder=nil)
166
+
167
+ if folder then
168
+
169
+ g = @gallery[folder]
170
+ g.delete_image id
171
+ preview_file = g.all.any? ? g.all.first.preview : @default_folder
172
+
173
+ rx = @index.find_by_folder folder
174
+ rx.preview = preview_file
175
+ rx.imgcount = g.all.length
176
+
177
+ @index.save
178
+
179
+ else
180
+ @index.delete_image id
181
+ end
182
+
183
+ @iondex.render
120
184
 
121
185
  end
122
186
 
@@ -131,8 +195,18 @@ class ImageGallery2017
131
195
  fg.save
132
196
 
133
197
  @gallery[folder] = fg
134
- @index.create preview: '../svg/folder.svg', folder: folder, title: title
198
+ @index.create preview: @default_folder, folder: folder, title: title
135
199
  @index.save
136
200
 
137
201
  end
202
+
203
+ def delete_folder(folder)
204
+
205
+ @gallery.delete folder
206
+
207
+ rx = @index.find_by_folder folder
208
+ rx.delete
209
+ @index.save
210
+
211
+ end
138
212
  end
data.tar.gz.sig CHANGED
@@ -1,3 +1 @@
1
- cl���h:���30�2��gF���$��+��2��7���M���j�/���ƪ�'D,qjvO�&�L�Mo���{p::O�$"R[�$�b�S�!� Ū۝�9��~غ����4
2
- �{�^�Sڇ�g'���6$��vÞ��_G�踰�
3
- l��U���h�N�� =�v�W��V�Iĺ ;l����Y6b$wP;?���,� ����v�2�r����_-)�X�[q
1
+ ���>�+����`b�snF�{w���L��'*a݄�=���8(���*�<u�A�&Q����-�q���'߿�p��6?�p�L*T4 yxX<�lM����s/[M)�iUx��9������Ȧ��h�;�1�|8�3�h������"�%Ô�΅��6b�����,� �@d�
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: imagegallery2017
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -31,7 +31,7 @@ cert_chain:
31
31
  VTkGIYZRz9NszbK5QM45fZIG1TtUO/QILU1lyb56RusdsPUAQy5qdHcWSkqbU1i4
32
32
  pVP5LTt/M0l+og==
33
33
  -----END CERTIFICATE-----
34
- date: 2017-11-28 00:00:00.000000000 Z
34
+ date: 2017-11-29 00:00:00.000000000 Z
35
35
  dependencies:
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: dynarex
metadata.gz.sig CHANGED
Binary file