caboose-rets 0.1.88 → 0.1.89
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/models/caboose_rets/rets_importer.rb +77 -40
- data/lib/caboose_rets/version.rb +1 -1
- data/lib/tasks/caboose_rets.rake +4 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: aa9081255e9cd3873b90d251b27d550e1c383112ad9247bc3fe87ae60d66f4ec
|
4
|
+
data.tar.gz: b7f286eb071acef6e5fe3f07c990990ac6c3588b99d78b8f435c5b67a049dd59
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 705d2d222fa9fea221a9e836fc0a56b3e4436eba3a8ec62d029df8da93da6dd0378868001ec2709625d7488bdcac51387a6dbba8e5ead9c13e2cce76e1b5a58b
|
7
|
+
data.tar.gz: f6414868489eb6c11e23ae962c558ed7a93ac91473a04d8a9113c58260c27cb5eefc78729cae3de3c62f1e3b8de746145630bbee0278651b7ab54353da754377
|
@@ -273,51 +273,88 @@ class CabooseRets::RetsImporter # < ActiveRecord::Base
|
|
273
273
|
|
274
274
|
def self.download_property_images(p)
|
275
275
|
self.log3('Property',p.mls_number,"Downloading images for #{p.mls_number}...")
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
m.media_type = 'Photo'
|
288
|
-
cm = Caboose::Media.new
|
289
|
-
cm.image = File.open(tmp_path)
|
290
|
-
cm.name = "rets_media_#{headers['content-id']}_0"
|
291
|
-
cm.original_name = "rets_media_#{headers['content-id']}_0.jpeg"
|
292
|
-
cm.processed = true
|
293
|
-
cm.save
|
294
|
-
m.media_id = cm.id
|
295
|
-
m.save
|
296
|
-
`rm #{tmp_path}`
|
297
|
-
self.log("Image rets_media_#{headers['content-id']}_0 saved")
|
276
|
+
|
277
|
+
self.client.get_object(:resource => 'Property', :type => 'Photo', :location=> false, :id => "#{p.matrix_unique_id}:*") do |headers, content|
|
278
|
+
next if headers.blank?
|
279
|
+
ind = headers['orderhint'] ? headers['orderhint'].to_i : 0
|
280
|
+
self.log3('Media',p.mls_number,headers.to_s)
|
281
|
+
self.log3('Media',p.mls_number,"Downloading photo with content-id #{headers['content-id']}, index #{ind}")
|
282
|
+
m = CabooseRets::Media.where(:media_mui => headers['content-id'], :media_order => ind).first
|
283
|
+
m = CabooseRets::Media.new if m.nil?
|
284
|
+
tmp_path = "#{Rails.root}/tmp/rets_media_#{headers['content-id']}_#{ind}.jpeg"
|
285
|
+
File.open(tmp_path, "wb") do |f|
|
286
|
+
f.write(content)
|
298
287
|
end
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
cm = Caboose::Media.new
|
311
|
-
cm.image = File.open(tmp_path)
|
312
|
-
cm.name = "rets_media_#{headers['content-id']}_#{headers['object-id']}"
|
313
|
-
cm.original_name = "rets_media_#{headers['content-id']}_#{headers['object-id']}.jpeg"
|
314
|
-
cm.processed = true
|
315
|
-
cm.save
|
288
|
+
m.media_mui = headers['content-id']
|
289
|
+
m.media_order = ind
|
290
|
+
m.media_type = 'Photo'
|
291
|
+
cm = Caboose::Media.new
|
292
|
+
cm.image = File.open(tmp_path)
|
293
|
+
cm.name = "rets_media_#{headers['content-id']}_#{ind}"
|
294
|
+
cm.original_name = "rets_media_#{headers['content-id']}_#{ind}.jpeg"
|
295
|
+
cm.processed = true
|
296
|
+
cm.save
|
297
|
+
#puts cm
|
298
|
+
if cm
|
316
299
|
m.media_id = cm.id
|
317
300
|
m.save
|
301
|
+
self.log3("Media",p.mls_number,"Created new RetsMedia object #{m.id}, CabooseMedia object #{cm.id}")
|
318
302
|
`rm #{tmp_path}`
|
319
|
-
self.
|
303
|
+
self.log3("Media",p.mls_number,"Image rets_media_#{headers['content-id']}_#{ind} saved")
|
304
|
+
else
|
305
|
+
self.log3("Media",p.mls_number,"CabooseMedia was not created, not saving image")
|
320
306
|
end
|
307
|
+
end
|
308
|
+
|
309
|
+
|
310
|
+
# # Get first image
|
311
|
+
# self.client.get_object(:resource => 'Property', :type => 'Photo', :location=> false, :id => "#{p.matrix_unique_id}:0") do |headers, content|
|
312
|
+
# self.log3('Media',p.mls_number,"Downloading first photo with content-id #{headers['content-id']}, orderhint #{headers['orderhint']}, object-id #{headers['object-id']}")
|
313
|
+
# m = CabooseRets::Media.where(:media_mui => headers['content-id'], :media_order => 0).first
|
314
|
+
# m = CabooseRets::Media.new if m.nil?
|
315
|
+
# tmp_path = "#{Rails.root}/tmp/rets_media_#{headers['content-id']}:0.jpeg"
|
316
|
+
# File.open(tmp_path, "wb") do |f|
|
317
|
+
# f.write(content)
|
318
|
+
# end
|
319
|
+
# m.media_mui = headers['content-id']
|
320
|
+
# m.media_order = 0
|
321
|
+
# m.media_type = 'Photo'
|
322
|
+
# cm = Caboose::Media.new
|
323
|
+
# cm.image = File.open(tmp_path)
|
324
|
+
# cm.name = "rets_media_#{headers['content-id']}_0"
|
325
|
+
# cm.original_name = "rets_media_#{headers['content-id']}_0.jpeg"
|
326
|
+
# cm.processed = true
|
327
|
+
# cm.save
|
328
|
+
# m.media_id = cm.id
|
329
|
+
# m.save
|
330
|
+
# self.log3("Media",p.mls_number,"Created new RetsMedia object #{m.id}, CabooseMedia object #{cm.id}")
|
331
|
+
# `rm #{tmp_path}`
|
332
|
+
# self.log3("Media",p.mls_number,"Image rets_media_#{headers['content-id']}_0 saved")
|
333
|
+
# end
|
334
|
+
# # Get rest of images
|
335
|
+
# self.client.get_object(:resource => 'Property', :type => 'Photo', :location=> false, :id => "#{p.matrix_unique_id}:*") do |headers, content|
|
336
|
+
# self.log3('Media',p.mls_number,"Downloading subsequent photo with content-id #{headers['content-id']}, orderhint #{headers['orderhint']}, object-id #{headers['object-id']}")
|
337
|
+
# m = CabooseRets::Media.where(:media_mui => headers['content-id'], :media_order => headers['orderhint']).first
|
338
|
+
# m = CabooseRets::Media.new if m.nil?
|
339
|
+
# tmp_path = "#{Rails.root}/tmp/rets_media_#{headers['content-id']}:#{headers['object-id']}.jpeg"
|
340
|
+
# File.open(tmp_path, "wb") do |f|
|
341
|
+
# f.write(content)
|
342
|
+
# end
|
343
|
+
# m.media_mui = headers['content-id']
|
344
|
+
# m.media_order = headers['orderhint']
|
345
|
+
# m.media_type = 'Photo'
|
346
|
+
# cm = Caboose::Media.new
|
347
|
+
# cm.image = File.open(tmp_path)
|
348
|
+
# cm.name = "rets_media_#{headers['content-id']}_#{headers['object-id']}"
|
349
|
+
# cm.original_name = "rets_media_#{headers['content-id']}_#{headers['object-id']}.jpeg"
|
350
|
+
# cm.processed = true
|
351
|
+
# cm.save
|
352
|
+
# m.media_id = cm.id
|
353
|
+
# m.save
|
354
|
+
# self.log3("Media",p.mls_number,"Created new RetsMedia object #{m.id}, CabooseMedia object #{cm.id}")
|
355
|
+
# `rm #{tmp_path}`
|
356
|
+
# self.log3("Media",p.mls_number,"Image rets_media_#{headers['content-id']}_#{headers['object-id']} saved")
|
357
|
+
# end
|
321
358
|
# rescue RETS::APIError => err
|
322
359
|
# self.log "No image for #{p.mls_number}."
|
323
360
|
# self.log err
|
data/lib/caboose_rets/version.rb
CHANGED
data/lib/tasks/caboose_rets.rake
CHANGED
@@ -169,8 +169,10 @@ namespace :caboose_rets do
|
|
169
169
|
end
|
170
170
|
|
171
171
|
desc "Single Import Test"
|
172
|
-
task :import_one => :environment do
|
173
|
-
|
172
|
+
task :import_one, [:mls_number, :download_photos] => :environment do |t, args|
|
173
|
+
puts "Save images: #{args.download_photos}"
|
174
|
+
save_images = args.download_photos == true || args.download_photos == 'true'
|
175
|
+
CabooseRets::RetsImporter.import_properties(args.mls_number, save_images)
|
174
176
|
end
|
175
177
|
|
176
178
|
desc "Purge rets data"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: caboose-rets
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.89
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- William Barry
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-01-
|
11
|
+
date: 2019-01-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: caboose-cms
|