caboose-rets 0.1.174 → 0.1.179

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: baf444eb0223fddad35c7f67352e84f1a4fb8cacd53b1abe8b0837d673ccd043
4
- data.tar.gz: a173545aee036e586a76493529d378e7d20248d534a1f7126166ea8e3dee4b6b
3
+ metadata.gz: 153c5b061caf36972cb829fa5bd3059daacdade6fc9841e75c5b14760b5b087e
4
+ data.tar.gz: 57d1bcde45bf5e180b93e33f5b649ad9cdb39966fb38bb0db418057464c23cc7
5
5
  SHA512:
6
- metadata.gz: 4955fe9863b5978a4829a1fb53fb1935104c78d82e98b8f3383dbbcdf84e7feb7f3ce116477c43540a4d0545bbe631e446d76fbc16c99df953e4138ee4c4e618
7
- data.tar.gz: 13726d625204a4a8655661dc90bc06b98f58f231809bdac4863582797fbeda97402679e69b0c369ca4a0223da3623a221c0e8745ff4dba09068cf0d965eabaaf
6
+ metadata.gz: 70da0fcdc60dff4f7879d0890cc4aa8fe46f537f9930bf4fbc4687d854208f2e745f68d44be586c7ff6be6c5591ab8893a4f934228e197e11161c84d4a1eacc3
7
+ data.tar.gz: 82a1c054feb766a3d8d832bf84fc28ce7fd85aa9b3d6114d6e660365b5d8fea37881c40ea77f24eabe57181cc16f63fb020f011d7926623f4107ef6108046acb
@@ -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
@@ -26,7 +26,7 @@ class CabooseRets::SearchOption < ActiveRecord::Base
26
26
  end
27
27
  end
28
28
 
29
- # Delete all flagged
29
+ # Delete all flagged
30
30
  self.where(:flag_for_delete => true).delete_all
31
31
  end
32
32
 
@@ -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.174'
2
+ VERSION = '0.1.179'
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.174
4
+ version: 0.1.179
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