Class: Spree::Transit::AmenitiesController
- Inherits:
-
BaseController
- Object
- Admin::ResourceController
- BaseController
- Spree::Transit::AmenitiesController
show all
- Defined in:
- app/controllers/spree/transit/amenities_controller.rb
Instance Method Summary
collapse
#collection_url, #current_vendor, #edit_object_url, #page, #per_page, #required_vendor_user!, #vendors
Instance Method Details
#collection ⇒ Object
40
41
42
43
44
45
46
47
48
|
# File 'app/controllers/spree/transit/amenities_controller.rb', line 40
def collection
load_data
@objects = model_class.where(kind: :vehicle_type)
@search = @objects.ransack(params[:q])
@collection = @search.result
@collection
end
|
#load_data ⇒ Object
9
10
11
|
# File 'app/controllers/spree/transit/amenities_controller.rb', line 9
def load_data
@amenities = Spree::OptionType.all
end
|
#load_vendor ⇒ Object
50
51
52
|
# File 'app/controllers/spree/transit/amenities_controller.rb', line 50
def load_vendor
@vendor ||= vendors.find { |v| v[:slug] == session[:transit_current_vendor_slug] } || vendors.first
end
|
#location_after_save ⇒ Object
36
37
38
|
# File 'app/controllers/spree/transit/amenities_controller.rb', line 36
def location_after_save
edit_transit_amenity_path(@amenity)
end
|
#model_class ⇒ Object
54
55
56
|
# File 'app/controllers/spree/transit/amenities_controller.rb', line 54
def model_class
Spree::OptionType
end
|
#object_name ⇒ Object
58
59
60
|
# File 'app/controllers/spree/transit/amenities_controller.rb', line 58
def object_name
'option_type'
end
|
#setup_new_option_value ⇒ Object
62
63
64
|
# File 'app/controllers/spree/transit/amenities_controller.rb', line 62
def setup_new_option_value
@amenity.option_values.build if @amenity.option_values.empty?
end
|
#update ⇒ Object
26
27
28
29
30
31
32
33
34
|
# File 'app/controllers/spree/transit/amenities_controller.rb', line 26
def update
load_amenity
if @amenity.update(amenity_params)
flash[:success] = I18n.t('amenity.update_success')
else
flash[:error] = "Unable to update Option Type. Errors: #{@amenity.errors.full_messages.join(', ')}"
end
redirect_back(fallback_location: edit_transit_amenity_path(@amenity))
end
|
#update_values_positions ⇒ Object
13
14
15
16
17
18
19
20
21
22
23
24
|
# File 'app/controllers/spree/transit/amenities_controller.rb', line 13
def update_values_positions
ApplicationRecord.transaction do
params[:positions].each do |id, index|
Spree::OptionValue.where(id: id).update_all(position: index) end
end
respond_to do |format|
format.html { redirect_to spree.transit_routes_url }
format.js { render plain: 'Ok' }
end
end
|