caboose-rets 0.1.173 → 0.1.178
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 +4 -4
- data/app/controllers/caboose_rets/agents_controller.rb +3 -3
- data/app/controllers/caboose_rets/properties_controller.rb +5 -13
- data/app/models/caboose_rets/property.rb +7 -2
- data/app/models/caboose_rets/rets_importer.rb +7 -3
- data/app/models/caboose_rets/search_option.rb +5 -5
- data/lib/caboose_rets/version.rb +1 -1
- data/lib/tasks/caboose_rets.rake +0 -1
- 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: d1336b86c680261a9752197de165a1f305858cce9ca7f26f44a3ab3fba71c33a
|
4
|
+
data.tar.gz: 500e94bad563fbfc06ab78e248feeb8bd16c922512eee1afe3bcdb8c723c39c9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1e7bc97528befb03b32a1b135ed382da561178632e2c652521224daaa30a0325f755da8a3b2b0d6fa3173bcabb206dc3f5994031d449ff178962698f81a50cbb
|
7
|
+
data.tar.gz: 25a9f443649a6662354537ef68cb631dbd2a33362791784c9f393ece9fb16e90c1b50d3b4c5bd2136bd398925ac55db610dd8e4a6ea4a7a99e3742df89390a60
|
@@ -14,12 +14,12 @@ module CabooseRets
|
|
14
14
|
@agent = Agent.where(:mls_id => params[:mls_id]).where("office_mls_id ILIKE ?", @site.rets_office_id).first if !params[:mls_id].blank?
|
15
15
|
@agent = Agent.where(:slug => params[:slug]).where("office_mls_id ILIKE ?", @site.rets_office_id).first if !params[:slug].blank?
|
16
16
|
@listings = Property.where("list_agent_mls_id ILIKE ? OR co_list_agent_mls_id ILIKE ?", @agent.mls_id, @agent.mls_id).where(:status => 'Active').order('list_price desc').all
|
17
|
-
end
|
17
|
+
end
|
18
18
|
|
19
19
|
# @route GET /real-estate/agents/:slug/contact
|
20
|
-
# @route GET /agents/:
|
20
|
+
# @route GET /agents/:id/contact
|
21
21
|
def contact
|
22
|
-
@agent = Agent.where(:
|
22
|
+
@agent = Agent.where(:id => params[:id]).first if !params[:id].blank?
|
23
23
|
@agent = Agent.where(:slug => params[:slug]).where("office_mls_id ILIKE ?", @site.rets_office_id).first if !params[:slug].blank?
|
24
24
|
end
|
25
25
|
|
@@ -143,27 +143,19 @@ module CabooseRets
|
|
143
143
|
|
144
144
|
@related = Property.near("#{@property.latitude}, #{@property.longitude}", 50).where(:property_type => @property.property_type, :status => 'Active', :property_subtype => @property.property_subtype).where(price_where,price_min,price_max).where(beds_where,beds_min,beds_max).where("mls_number != ?",@property.mls_number).order('distance asc').limit(3) if @property
|
145
145
|
|
146
|
-
if @property.nil?
|
147
|
-
@mls_number = params[:mls_number]
|
148
|
-
# CabooseRets::RetsImporter.delay(:priority => 10, :queue => 'rets').import_property(@mls_number.to_i)
|
149
|
-
render 'caboose_rets/properties/property_not_exists'
|
150
|
-
return
|
151
|
-
end
|
146
|
+
render :file => "caboose/extras/error404", :layout => "caboose/application", :status => 404 and return if @property.nil?
|
152
147
|
|
153
148
|
@block_options = {
|
154
149
|
:mls_number => params[:mls_number],
|
155
150
|
:property => @property,
|
156
151
|
:saved => @saved,
|
157
|
-
# :agent => @property ? @property.where(:list_agent_mls_id => @property.list_agent_mls_id).first : nil,
|
158
152
|
:form_authenticity_token => form_authenticity_token
|
159
153
|
}
|
160
154
|
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
return
|
166
|
-
end
|
155
|
+
@page.title = @property.full_address
|
156
|
+
@page.meta_description = @property.meta_description(@site)
|
157
|
+
@page.uri = "properties/#{@property.mls_number}/details"
|
158
|
+
|
167
159
|
end
|
168
160
|
|
169
161
|
#=============================================================================
|
@@ -41,12 +41,17 @@ class CabooseRets::Property <ActiveRecord::Base
|
|
41
41
|
|
42
42
|
def full_address
|
43
43
|
address = "#{self.unit_number.blank? ? '' : 'Unit ' + self.unit_number + ', '}#{self.street_number} #{self.street_dir_prefix.blank? ? '' : self.street_dir_prefix + ' '}#{self.street_name.blank? ? '' : self.street_name.titleize}#{self.street_suffix.blank? ? '' : ' ' + self.street_suffix.titleize}#{self.street_dir_suffix.blank? ? '' : ' ' + self.street_dir_suffix}"
|
44
|
-
return address.blank? ? '' : address.gsub('Mc ','Mc')
|
44
|
+
return address.blank? ? '' : address.gsub('Mc ','Mc').gsub('Mlk',"MLK").gsub(" Us ", " US ").gsub(" Th ", "th ").gsub("Mcfarland","McFarland")
|
45
45
|
end
|
46
46
|
|
47
47
|
def full_address_city
|
48
48
|
address = "#{self.unit_number.blank? ? '' : 'Unit ' + self.unit_number + ', '}#{self.street_number} #{self.street_dir_prefix.blank? ? '' : self.street_dir_prefix + ' '}#{self.street_name.blank? ? '' : self.street_name.titleize}#{self.street_suffix.blank? ? '' : ' ' + self.street_suffix.titleize}#{self.street_dir_suffix.blank? ? '' : ' ' + self.street_dir_suffix}#{self.city.blank? ? '' : '<br />' + self.city.titleize + ', ' + self.state_or_province + ' ' + self.postal_code}"
|
49
|
-
return address.blank? ? '' : address.gsub('Mc ','Mc')
|
49
|
+
return address.blank? ? '' : address.gsub('Mc ','Mc').gsub('Mlk',"MLK").gsub(" Us ", " US ").gsub(" Th ", "th ").gsub("Mcfarland","McFarland")
|
50
|
+
end
|
51
|
+
|
52
|
+
def meta_description(site)
|
53
|
+
fa = self.full_address_city.blank? ? nil : self.full_address_city.gsub("<br />",", ")
|
54
|
+
return "View the property listed for sale at #{fa}. #{site.description}"
|
50
55
|
end
|
51
56
|
|
52
57
|
def parse(data)
|
@@ -723,10 +723,14 @@ class CabooseRets::RetsImporter # < ActiveRecord::Base
|
|
723
723
|
if count == 0 || (count == 1 && Delayed::Job.where(q).first.locked_at)
|
724
724
|
self.delay(:run_at => 20.minutes.from_now, :priority => 10, :queue => 'rets').update_rets
|
725
725
|
end
|
726
|
-
|
727
|
-
|
726
|
+
|
727
|
+
# Delete RETS logs over 7 days old
|
728
|
+
dt = DateTime.now - 7.days
|
729
|
+
sql = "delete from rets_logs where timestamp < '#{dt}';"
|
730
|
+
ActiveRecord::Base.connection.select_all(sql)
|
731
|
+
|
728
732
|
# Update search options
|
729
|
-
CabooseRets::SearchOption.delay(:queue => "rets").update_search_options
|
733
|
+
CabooseRets::SearchOption.delay(:queue => "rets", :priority => 15).update_search_options
|
730
734
|
end
|
731
735
|
|
732
736
|
def self.last_updated
|
@@ -25,9 +25,8 @@ class CabooseRets::SearchOption < ActiveRecord::Base
|
|
25
25
|
self.update_search_options_for_field(name, field)
|
26
26
|
end
|
27
27
|
end
|
28
|
-
|
29
|
-
|
30
|
-
# Delete all flagged
|
28
|
+
|
29
|
+
# Delete all flagged
|
31
30
|
self.where(:flag_for_delete => true).delete_all
|
32
31
|
end
|
33
32
|
|
@@ -75,12 +74,13 @@ class CabooseRets::SearchOption < ActiveRecord::Base
|
|
75
74
|
end
|
76
75
|
end
|
77
76
|
|
78
|
-
def self.results(str, count_per_name = 10)
|
77
|
+
def self.results(str, count_per_name = 10)
|
78
|
+
s = str.blank? ? '' : str.downcase.strip
|
79
79
|
q = ["select * from (
|
80
80
|
select id, name, field, value, row_number() over (partition by name order by field) as rownum
|
81
81
|
from rets_search_options
|
82
82
|
where lower(value) like ?
|
83
|
-
) tmp where rownum < #{count_per_name}", "%#{
|
83
|
+
) tmp where rownum < #{count_per_name}", "%#{s}%"]
|
84
84
|
rows = ActiveRecord::Base.connection.select_rows(ActiveRecord::Base.send(:sanitize_sql_array, q))
|
85
85
|
arr = rows.collect{ |row| { :id => row[0].to_i, :name => row[1], :field => row[2], :text => row[3] }}
|
86
86
|
return arr
|
data/lib/caboose_rets/version.rb
CHANGED
data/lib/tasks/caboose_rets.rake
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.178
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- William Barry
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-07-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: caboose-cms
|