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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 637b2123ba2412960a1763a4fcb8006166b5e1f7b507c98102afc47d01a45ea9
4
- data.tar.gz: 7cac84f99f66ac4ebc8d0818b4fb36af5ad327e6f10f96ed6d7164a49bba2174
3
+ metadata.gz: 2b2fe2e36e342c415299f45cc81d83b301ab00b4c9d7878211c8836626726a43
4
+ data.tar.gz: 4c481cd54cfcb3f5c96d58f25948fb1d99ead965380a29d413e8382ddf837cbc
5
5
  SHA512:
6
- metadata.gz: 86e921fa5cbb92297bce5af3fa3cdcc484c853d44ce0b2842c8d6f8ef47c99042beb0640aaca040a257d4af45560b0fdf7120424bd5d348329c119893c2d8597
7
- data.tar.gz: 1800b4c1d0bd0544662727bc7c49d11f43d724a5989263ab3b989b12396cde93de55a8f8e0706eb2a5def9a4c9aefd8ce52fe6a6a3dbb9aab7fd51f08081111d
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/:mls_id/contact
20
+ # @route GET /agents/:id/contact
21
21
  def contact
22
- @agent = Agent.where(:mls_id => params[:mls_id]).where("office_mls_id ILIKE ?", @site.rets_office_id).first if !params[:mls_id].blank?
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
- if @property.nil?
162
- @mls = params[:mls]
163
- # CabooseRets::RetsImporter.delay(:priority => 10, :queue => 'rets').import_property(@mls_number.to_i)
164
- render 'caboose_rets/properties/property_not_exists'
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}", "%#{str}%"]
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
@@ -1,3 +1,3 @@
1
1
  module CabooseRets
2
- VERSION = '0.1.175'
2
+ VERSION = '0.1.180'
3
3
  end
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.175
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-03-12 00:00:00.000000000 Z
11
+ date: 2021-07-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: caboose-cms