caboose-rets 0.1.175 → 0.1.180
Sign up to get free protection for your applications and to get access to all the features.
- 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/search_option.rb +5 -4
- data/lib/caboose_rets/version.rb +1 -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: 2b2fe2e36e342c415299f45cc81d83b301ab00b4c9d7878211c8836626726a43
|
4
|
+
data.tar.gz: 4c481cd54cfcb3f5c96d58f25948fb1d99ead965380a29d413e8382ddf837cbc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 005a9205c08fc9e64a09a4e9e1fad9c975cdde0f038ab20d7466dc029fd6804e433d2eb022d7bb5e4f3546fd0167cf5802a03ce1e511aefe6c2cb152efc6ed1c
|
7
|
+
data.tar.gz: e120530752e605448eb07b0dc5c8e66ebd30f8b203091f85234bf8d42ade2da2a9878a6452188b550fd4c302804460056fbb25034a085656e4577e42c32f04a7
|
@@ -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)
|
@@ -27,7 +27,7 @@ class CabooseRets::SearchOption < ActiveRecord::Base
|
|
27
27
|
end
|
28
28
|
|
29
29
|
# Delete all flagged
|
30
|
-
self.where(:flag_for_delete => true).delete_all
|
30
|
+
self.where(:flag_for_delete => true).delete_all
|
31
31
|
end
|
32
32
|
|
33
33
|
def self.update_search_options_for_field(name, field)
|
@@ -44,7 +44,7 @@ class CabooseRets::SearchOption < ActiveRecord::Base
|
|
44
44
|
so.save
|
45
45
|
end
|
46
46
|
end
|
47
|
-
elsif field == 'street_address'
|
47
|
+
elsif field == 'street_address'
|
48
48
|
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|
|
49
49
|
add = "#{prop.street_number} #{prop.street_name} #{prop.street_suffix}"
|
50
50
|
val = add.blank? ? nil : add.strip
|
@@ -74,12 +74,13 @@ class CabooseRets::SearchOption < ActiveRecord::Base
|
|
74
74
|
end
|
75
75
|
end
|
76
76
|
|
77
|
-
def self.results(str, count_per_name = 10)
|
77
|
+
def self.results(str, count_per_name = 10)
|
78
|
+
s = str.blank? ? '' : str.downcase.strip
|
78
79
|
q = ["select * from (
|
79
80
|
select id, name, field, value, row_number() over (partition by name order by field) as rownum
|
80
81
|
from rets_search_options
|
81
82
|
where lower(value) like ?
|
82
|
-
) tmp where rownum < #{count_per_name}", "%#{
|
83
|
+
) tmp where rownum < #{count_per_name}", "%#{s}%"]
|
83
84
|
rows = ActiveRecord::Base.connection.select_rows(ActiveRecord::Base.send(:sanitize_sql_array, q))
|
84
85
|
arr = rows.collect{ |row| { :id => row[0].to_i, :name => row[1], :field => row[2], :text => row[3] }}
|
85
86
|
return arr
|
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.180
|
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
|