caboose-rets 0.1.173 → 0.1.178

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: d696008a55d4db2c7e4355676577b1125127c58fbda6e18570f02db82b2d5c40
4
- data.tar.gz: 8d87073dd33a633bc18ed370fdd5d7211fb7ad8918559062551955be50544a1c
3
+ metadata.gz: d1336b86c680261a9752197de165a1f305858cce9ca7f26f44a3ab3fba71c33a
4
+ data.tar.gz: 500e94bad563fbfc06ab78e248feeb8bd16c922512eee1afe3bcdb8c723c39c9
5
5
  SHA512:
6
- metadata.gz: 7156982635d8c2588036a898809ac2101c975fcb69059b4047c2768186bdfc3d5beaeb2dd9294ed2a245460498bb3019a5531f71777bd2b97262e61f99646034
7
- data.tar.gz: a3fafd917d276b72e04752df7c426ea939ad61408a52e26aafc81c0beca79467d8b63e238c06ec88eca5aa96090e1a790e99077f668eb11009f8a9f117f1878b
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/: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)
@@ -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
- # Delete old logs
727
- CabooseRets::Log.where("timestamp < ?",(DateTime.now - 7.days)).destroy_all
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}", "%#{str}%"]
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
@@ -1,3 +1,3 @@
1
1
  module CabooseRets
2
- VERSION = '0.1.173'
2
+ VERSION = '0.1.178'
3
3
  end
@@ -292,7 +292,6 @@ namespace :caboose_rets do
292
292
  ensure
293
293
  unlock_task_if_last_updated(task_started)
294
294
  end
295
- CabooseRets::SearchOption.delay(:queue => "rets").update_search_options
296
295
  end
297
296
 
298
297
  def last_updated
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.173
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-02-25 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