caboose-rets 0.1.172 → 0.1.173
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
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d696008a55d4db2c7e4355676577b1125127c58fbda6e18570f02db82b2d5c40
|
4
|
+
data.tar.gz: 8d87073dd33a633bc18ed370fdd5d7211fb7ad8918559062551955be50544a1c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7156982635d8c2588036a898809ac2101c975fcb69059b4047c2768186bdfc3d5beaeb2dd9294ed2a245460498bb3019a5531f71777bd2b97262e61f99646034
|
7
|
+
data.tar.gz: a3fafd917d276b72e04752df7c426ea939ad61408a52e26aafc81c0beca79467d8b63e238c06ec88eca5aa96090e1a790e99077f668eb11009f8a9f117f1878b
|
@@ -2,7 +2,6 @@ module CabooseRets
|
|
2
2
|
class PropertiesController < ApplicationController
|
3
3
|
|
4
4
|
# @route GET /properties/search-options
|
5
|
-
# q=rock quary
|
6
5
|
def search_options
|
7
6
|
count = params[:count_per_name] ? params[:count_per_name] : 10
|
8
7
|
arr = SearchOption.results(params[:q], count)
|
@@ -23,6 +22,7 @@ module CabooseRets
|
|
23
22
|
end
|
24
23
|
where = "(id is not null)"
|
25
24
|
search_options = []
|
25
|
+
searched_address = false
|
26
26
|
|
27
27
|
if (@site && @site.id == 558) || request.original_fullpath =~ /^\/tuscaloosa-condos-for-sale(.*?)$/
|
28
28
|
where = "(style ILIKE '%condo%' OR public_remarks ILIKE '%condo%' OR legal_description ILIKE '%unit%' OR res_style ILIKE '%condo%' OR property_subtype ILIKE '%condo%' OR property_subtype ILIKE '%townhouse%')"
|
@@ -33,8 +33,14 @@ module CabooseRets
|
|
33
33
|
if lc && lc.count > 0
|
34
34
|
lc.each do |lcid|
|
35
35
|
so = CabooseRets::SearchOption.where(:id => lcid).first
|
36
|
-
if so
|
36
|
+
if so && so.name == "Street Address"
|
37
|
+
search_options << "( CONCAT(CONCAT(CONCAT(CONCAT(street_number, ' '),street_name),' '),street_suffix) ILIKE '%#{so.value}%' )"
|
38
|
+
searched_address = true
|
39
|
+
elsif so && so.name == "Street Name"
|
40
|
+
search_options << "( CONCAT(CONCAT(street_name,' '),street_suffix) ILIKE '%#{so.value}%' )"
|
41
|
+
elsif so
|
37
42
|
search_options << "(#{so.field} = '#{so.value}')"
|
43
|
+
searched_address = true if so.name == 'MLS Number'
|
38
44
|
end
|
39
45
|
end
|
40
46
|
end
|
@@ -114,6 +120,13 @@ module CabooseRets
|
|
114
120
|
:saved_search => @saved_search,
|
115
121
|
:pager => @pager
|
116
122
|
}
|
123
|
+
|
124
|
+
if @properties && @properties.count == 1 && searched_address
|
125
|
+
only_property = @properties.first
|
126
|
+
redirect_to only_property.url and return
|
127
|
+
end
|
128
|
+
|
129
|
+
|
117
130
|
end
|
118
131
|
|
119
132
|
# @route GET /properties/:mls_number/details
|
@@ -724,7 +724,7 @@ class CabooseRets::RetsImporter # < ActiveRecord::Base
|
|
724
724
|
self.delay(:run_at => 20.minutes.from_now, :priority => 10, :queue => 'rets').update_rets
|
725
725
|
end
|
726
726
|
# Delete old logs
|
727
|
-
CabooseRets::Log.where("timestamp < ?",(DateTime.now -
|
727
|
+
CabooseRets::Log.where("timestamp < ?",(DateTime.now - 7.days)).destroy_all
|
728
728
|
# Update search options
|
729
729
|
CabooseRets::SearchOption.delay(:queue => "rets").update_search_options
|
730
730
|
end
|
@@ -16,6 +16,7 @@ class CabooseRets::SearchOption < ActiveRecord::Base
|
|
16
16
|
'MLS Area' => ['area'],
|
17
17
|
'Neighborhood' => ['subdivision'],
|
18
18
|
'Street Name' => ['street_name'],
|
19
|
+
'Street Address' => ['street_address'],
|
19
20
|
'Property Type' => ['property_type'],
|
20
21
|
'MLS Number' => ['mls_number']
|
21
22
|
}
|
@@ -25,20 +26,51 @@ class CabooseRets::SearchOption < ActiveRecord::Base
|
|
25
26
|
end
|
26
27
|
end
|
27
28
|
|
29
|
+
|
28
30
|
# Delete all flagged
|
29
31
|
self.where(:flag_for_delete => true).delete_all
|
30
32
|
end
|
31
33
|
|
32
34
|
def self.update_search_options_for_field(name, field)
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
self.
|
39
|
-
|
40
|
-
|
41
|
-
so
|
35
|
+
if field == 'street_name'
|
36
|
+
CabooseRets::Property.where(:status => "Active", :property_type => "Residential").where("street_name is not null").order(:id).all.each do |prop|
|
37
|
+
add = "#{prop.street_name} #{prop.street_suffix}"
|
38
|
+
val = add.blank? ? nil : add.strip
|
39
|
+
next if val.blank?
|
40
|
+
so = self.where(:name => name, :field => field, :value => val).first
|
41
|
+
if so.nil? && !field.blank?
|
42
|
+
self.create(:name => name, :field => field, :value => val)
|
43
|
+
elsif so
|
44
|
+
so.flag_for_delete = false
|
45
|
+
so.save
|
46
|
+
end
|
47
|
+
end
|
48
|
+
elsif field == 'street_address'
|
49
|
+
CabooseRets::Property.where(:status => "Active", :property_type => "Residential").where("street_name is not null and street_number is not null").order(:id).all.each do |prop|
|
50
|
+
add = "#{prop.street_number} #{prop.street_name} #{prop.street_suffix}"
|
51
|
+
val = add.blank? ? nil : add.strip
|
52
|
+
next if val.blank?
|
53
|
+
so = self.where(:name => name, :field => field, :value => val).first
|
54
|
+
if so.nil? && !field.blank?
|
55
|
+
self.create(:name => name, :field => field, :value => val)
|
56
|
+
elsif so
|
57
|
+
so.flag_for_delete = false
|
58
|
+
so.save
|
59
|
+
end
|
60
|
+
end
|
61
|
+
else
|
62
|
+
q = ["select distinct(#{field}) from rets_properties where status = ? and property_type = ?", 'Active', 'Residential']
|
63
|
+
rows = ActiveRecord::Base.connection.select_rows(ActiveRecord::Base.send(:sanitize_sql_array, q))
|
64
|
+
rows.each do |row|
|
65
|
+
val = row[0].blank? ? nil : row[0].titleize.strip
|
66
|
+
next if val.blank?
|
67
|
+
so = self.where(:name => name, :field => field, :value => val).first
|
68
|
+
if so.nil? && !field.blank?
|
69
|
+
self.create(:name => name, :field => field, :value => val)
|
70
|
+
elsif so
|
71
|
+
so.flag_for_delete = false
|
72
|
+
so.save
|
73
|
+
end
|
42
74
|
end
|
43
75
|
end
|
44
76
|
end
|
data/lib/caboose_rets/version.rb
CHANGED
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.173
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- William Barry
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-02-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: caboose-cms
|