Class: CabooseRets::SavedPropertiesController

Inherits:
ApplicationController show all
Defined in:
app/controllers/caboose_rets/saved_properties_controller.rb

Instance Method Summary collapse

Instance Method Details

#addObject

POST /saved-properties



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'app/controllers/caboose_rets/saved_properties_controller.rb', line 11

def add
  return if !verify_logged_in

  resp = Caboose::StdClass.new

  if SavedProperty.exists?(:user_id => logged_in_user.id, :mls => params[:mls])
    resp.success = true
  else
    p = SavedProperty.new(
      :user_id  => logged_in_user.id,
      :mls => params[:mls]
    )
    if p.save
      resp.success = true
    else
      resp.error = "There was an error saving your property."
    end
  end
  render :json => resp
end

#deleteObject

DELETE /saved-properties/:mls



33
34
35
36
37
# File 'app/controllers/caboose_rets/saved_properties_controller.rb', line 33

def delete
  return if !verify_logged_in
  SavedProperty.where(:user_id => logged_in_user.id, :mls => params[:mls]).destroy_all
  render :json => Caboose::StdClass.new('success' => true)
end

#indexObject

GET /saved-properties



5
6
7
8
# File 'app/controllers/caboose_rets/saved_properties_controller.rb', line 5

def index
  return if !verify_logged_in
  @properties = SavedProperty.where(:user_id => logged_in_user.id).all
end

#statusObject

GET /saved-properties/:mls/status



81
82
83
84
85
86
87
# File 'app/controllers/caboose_rets/saved_properties_controller.rb', line 81

def status
  return if !verify_logged_in

  resp = Caboose::StdClass.new
  resp.saved = SavedProperty.where(:user_id => logged_in_user.id, :mls => params[:mls]).exists?
  render :json => resp
end

#toggle_saveObject

GET /saved-properties/:mls/toggle



62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# File 'app/controllers/caboose_rets/saved_properties_controller.rb', line 62

def toggle_save
  return if !verify_logged_in

  resp = Caboose::StdClass.new
  if SavedProperty.where(:user_id => logged_in_user.id, :mls => params[:mls]).exists?
    SavedProperty.where(:user_id => logged_in_user.id, :mls => params[:mls]).destroy_all
    resp.saved = false
  else
    p = SavedProperty.new
    p.user_id = logged_in_user.id
    p.mls = params[:mls]
    p.save
    resp.saved = true
  end

  render :json => resp
end