caboose-cms 0.5.64 → 0.5.66
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +8 -8
- data/app/assets/javascripts/caboose/admin.js +1 -1
- data/app/assets/javascripts/caboose/admin_edit_order.js +724 -0
- data/app/assets/javascripts/caboose/cart2.js +4 -4
- data/app/assets/javascripts/caboose/model/index_table.js +122 -80
- data/app/assets/stylesheets/caboose/admin_main.css +8 -0
- data/app/controllers/caboose/application_controller.rb +1 -1
- data/app/controllers/caboose/block_type_sources_controller.rb +1 -1
- data/app/controllers/caboose/block_types_controller.rb +1 -1
- data/app/controllers/caboose/calendars_controller.rb +1 -1
- data/app/controllers/caboose/cart_controller.rb +8 -1
- data/app/controllers/caboose/checkout_controller.rb +17 -9
- data/app/controllers/caboose/line_items_controller.rb +135 -0
- data/app/controllers/caboose/order_packages_controller.rb +304 -0
- data/app/controllers/caboose/orders_controller.rb +31 -74
- data/app/controllers/caboose/pages_controller.rb +2 -1
- data/app/controllers/caboose/product_images_controller.rb +11 -0
- data/app/controllers/caboose/products_controller.rb +25 -8
- data/app/controllers/caboose/shipping_addresses_controller.rb +46 -0
- data/app/controllers/caboose/shipping_packages_controller.rb +125 -54
- data/app/controllers/caboose/sites_controller.rb +2 -79
- data/app/controllers/caboose/smtp_controller.rb +52 -0
- data/app/controllers/caboose/store_controller.rb +94 -0
- data/app/controllers/caboose/vendors_controller.rb +25 -4
- data/app/models/caboose/address.rb +1 -3
- data/app/models/caboose/caboose_plugin.rb +1 -1
- data/app/models/caboose/category.rb +18 -0
- data/app/models/caboose/core_plugin.rb +21 -19
- data/app/models/caboose/order.rb +12 -7
- data/app/models/caboose/order_package.rb +5 -2
- data/app/models/caboose/order_transaction.rb +25 -0
- data/app/models/caboose/page.rb +1 -1
- data/app/models/caboose/schema.rb +50 -22
- data/app/models/caboose/shipping_calculator.rb +26 -30
- data/app/models/caboose/shipping_package.rb +45 -5
- data/app/models/caboose/store_config.rb +18 -6
- data/app/models/caboose/tax_calculator.rb +6 -5
- data/app/views/caboose/blocks/admin_edit.html.erb +1 -1
- data/app/views/caboose/line_items/admin_new.html.erb +100 -0
- data/app/views/caboose/orders/admin_edit.html.erb +21 -247
- data/app/views/caboose/orders/admin_edit_old.html.erb +155 -0
- data/app/views/caboose/orders/admin_new.html.erb +8 -23
- data/app/views/caboose/products/#Untitled-1# +0 -0
- data/app/views/caboose/products/admin_edit_images.html.erb +20 -4
- data/app/views/caboose/products/admin_index.html.erb +9 -3
- data/app/views/caboose/products/admin_sort.html.erb +138 -142
- data/app/views/caboose/roles/index.html.erb +1 -1
- data/app/views/caboose/shipping_packages/admin_edit.html.erb +52 -137
- data/app/views/caboose/shipping_packages/admin_index.html.erb +56 -19
- data/app/views/caboose/sites/_admin_header.html.erb +3 -5
- data/app/views/caboose/sites/admin_edit.html.erb +5 -3
- data/app/views/caboose/smtp/admin_edit.html.erb +41 -0
- data/app/views/caboose/station/index.html.erb +1 -1
- data/app/views/caboose/store/admin_edit.html.erb +96 -0
- data/app/views/caboose/vendors/admin_edit.html.erb +7 -3
- data/app/views/layouts/caboose/_station.html.erb +1 -1
- data/config/routes.rb +67 -25
- data/lib/caboose/engine.rb +1 -1
- data/lib/caboose/version.rb +1 -1
- metadata +28 -5
- data/app/views/caboose/shipping_packages/admin_new.html.erb +0 -33
- data/app/views/caboose/sites/admin_edit_smtp_config.html.erb +0 -51
- data/app/views/caboose/sites/admin_edit_store_config.html.erb +0 -77
@@ -147,7 +147,8 @@ module Caboose
|
|
147
147
|
|
148
148
|
# GET /admin/pages/:id/edit
|
149
149
|
def admin_edit_general
|
150
|
-
return
|
150
|
+
return if !user_is_allowed('pages', 'edit')
|
151
|
+
#return if !Page.is_allowed(logged_in_user, params[:id], 'edit')
|
151
152
|
@page = Page.find(params[:id])
|
152
153
|
render :layout => 'caboose/admin'
|
153
154
|
end
|
@@ -33,6 +33,17 @@ module Caboose
|
|
33
33
|
img = var.product_images.first
|
34
34
|
render :json => img
|
35
35
|
end
|
36
|
+
|
37
|
+
# PUT /admin/products/:product_id/images/sort-order
|
38
|
+
def admin_update_sort_order
|
39
|
+
return if !user_is_allowed('products', 'edit')
|
40
|
+
|
41
|
+
ids = params[:product_image_ids]
|
42
|
+
ids.each_with_index do |id, i|
|
43
|
+
ProductImage.find(id).update_attribute(:position, i)
|
44
|
+
end
|
45
|
+
render :json => { :success => true }
|
46
|
+
end
|
36
47
|
|
37
48
|
end
|
38
49
|
end
|
@@ -130,10 +130,19 @@ module Caboose
|
|
130
130
|
params[:sort] = 'store_vendors.name' if params[:sort] == 'vendor'
|
131
131
|
|
132
132
|
@gen = Caboose::PageBarGenerator.new(params, {
|
133
|
-
'site_id'
|
134
|
-
'vendor_name'
|
135
|
-
'search_like'
|
136
|
-
'
|
133
|
+
'site_id' => @site.id,
|
134
|
+
'vendor_name' => '',
|
135
|
+
'search_like' => '',
|
136
|
+
'category_id' => '',
|
137
|
+
'category_name' => '',
|
138
|
+
'vendor_id' => '',
|
139
|
+
'vendor_name' => '',
|
140
|
+
'vendor_status' => '',
|
141
|
+
'price_gte' => '',
|
142
|
+
'price_lte' => '',
|
143
|
+
'price' => '',
|
144
|
+
'variant_status' => '',
|
145
|
+
'price' => params[:filters] && params[:filters][:missing_prices] ? 0 : ''
|
137
146
|
}, {
|
138
147
|
'model' => 'Caboose::Product',
|
139
148
|
'sort' => 'title',
|
@@ -146,9 +155,16 @@ module Caboose
|
|
146
155
|
'search_like' => 'store_products.title_concat_vendor_name_like'
|
147
156
|
},
|
148
157
|
|
149
|
-
'includes' => {
|
150
|
-
'
|
151
|
-
'
|
158
|
+
'includes' => {
|
159
|
+
'category_id' => [ 'categories' , 'id' ],
|
160
|
+
'category_name' => [ 'categories' , 'name' ],
|
161
|
+
'vendor_id' => [ 'vendor' , 'id' ],
|
162
|
+
'vendor_name' => [ 'vendor' , 'name' ],
|
163
|
+
'vendor_status' => [ 'vendor' , 'status' ],
|
164
|
+
'price_gte' => [ 'variants' , 'price' ],
|
165
|
+
'price_lte' => [ 'variants' , 'price' ],
|
166
|
+
'price' => [ 'variants' , 'price' ],
|
167
|
+
'variant_status' => [ 'variants' , 'status' ]
|
152
168
|
}
|
153
169
|
})
|
154
170
|
|
@@ -163,6 +179,7 @@ module Caboose
|
|
163
179
|
|
164
180
|
# Get the correct page of the results
|
165
181
|
@products = @all_products.limit(@gen.limit).offset(@gen.offset)
|
182
|
+
@category_options = Category.options(@site.id)
|
166
183
|
|
167
184
|
render :layout => 'caboose/admin'
|
168
185
|
end
|
@@ -337,7 +354,7 @@ module Caboose
|
|
337
354
|
resp.error = "Invalid date"
|
338
355
|
save = false
|
339
356
|
end
|
340
|
-
end
|
357
|
+
end
|
341
358
|
end
|
342
359
|
end
|
343
360
|
resp.success = save && product.save
|
@@ -0,0 +1,46 @@
|
|
1
|
+
module Caboose
|
2
|
+
class ShippingAddressesController < Caboose::ApplicationController
|
3
|
+
|
4
|
+
# GET /admin/orders/:order_id/shipping-address/json
|
5
|
+
def admin_json
|
6
|
+
return if !user_is_allowed('orders', 'edit')
|
7
|
+
order = Order.find(params[:order_id])
|
8
|
+
render :json => order.shipping_address
|
9
|
+
end
|
10
|
+
|
11
|
+
# PUT /admin/orders/:order_id/shipping-address
|
12
|
+
def admin_update
|
13
|
+
return if !user_is_allowed('orders', 'edit')
|
14
|
+
|
15
|
+
resp = Caboose::StdClass.new({'attributes' => {}})
|
16
|
+
order = Order.find(params[:order_id])
|
17
|
+
sa = order.shipping_address
|
18
|
+
Caboose.log(sa.first_name)
|
19
|
+
save = true
|
20
|
+
params.each do |name, value|
|
21
|
+
case name
|
22
|
+
when 'name' then sa.name = value
|
23
|
+
when 'first_name' then sa.first_name = value
|
24
|
+
when 'last_name' then sa.last_name = value
|
25
|
+
when 'street' then sa.street = value
|
26
|
+
when 'address1' then sa.address1 = value
|
27
|
+
when 'address2' then sa.address2 = value
|
28
|
+
when 'company' then sa.company = value
|
29
|
+
when 'city' then sa.city = value
|
30
|
+
when 'state' then sa.state = value
|
31
|
+
when 'province' then sa.province = value
|
32
|
+
when 'province_code' then sa.province_code = value
|
33
|
+
when 'zip' then sa.zip = value
|
34
|
+
when 'country' then sa.country = value
|
35
|
+
when 'country_code' then sa.country_code = value
|
36
|
+
when 'phone' then sa.phone = value
|
37
|
+
end
|
38
|
+
end
|
39
|
+
Caboose.log(sa.first_name)
|
40
|
+
resp.success = save && sa.save
|
41
|
+
Caboose.log(sa.first_name)
|
42
|
+
render :json => resp
|
43
|
+
end
|
44
|
+
|
45
|
+
end
|
46
|
+
end
|
@@ -8,12 +8,12 @@ module Caboose
|
|
8
8
|
@page = Page.page_with_uri(request.host_with_port, '/admin')
|
9
9
|
end
|
10
10
|
|
11
|
-
# GET /admin/
|
11
|
+
# GET /admin/shipping-packages
|
12
12
|
def admin_index
|
13
13
|
return if !user_is_allowed('sites', 'view')
|
14
14
|
end
|
15
15
|
|
16
|
-
# GET /admin/
|
16
|
+
# GET /admin/shipping-packages/json
|
17
17
|
def admin_json
|
18
18
|
return if !user_is_allowed('sites', 'view')
|
19
19
|
|
@@ -21,62 +21,61 @@ module Caboose
|
|
21
21
|
'site_id' => @site.id,
|
22
22
|
},{
|
23
23
|
'model' => 'Caboose::ShippingPackage',
|
24
|
-
'sort' => '
|
24
|
+
'sort' => 'name',
|
25
25
|
'desc' => false,
|
26
|
-
'base_url' => "/admin/
|
26
|
+
'base_url' => "/admin/shipping-packages",
|
27
27
|
'use_url_params' => false
|
28
28
|
})
|
29
29
|
render :json => {
|
30
30
|
:pages => pager,
|
31
|
-
:models => pager.items
|
31
|
+
:models => pager.items.as_json(:include => :shipping_methods)
|
32
32
|
}
|
33
33
|
end
|
34
34
|
|
35
|
-
# GET /admin/
|
35
|
+
# GET /admin/shipping-packages/new
|
36
36
|
def admin_new
|
37
37
|
return if !user_is_allowed('sites', 'add')
|
38
38
|
@shipping_package = ShippingPackage.new
|
39
39
|
end
|
40
40
|
|
41
|
-
# GET /admin/
|
41
|
+
# GET /admin/shipping-packages/:id
|
42
42
|
def admin_edit
|
43
43
|
return if !user_is_allowed('sites', 'edit')
|
44
44
|
@shipping_package = ShippingPackage.find(params[:id])
|
45
45
|
end
|
46
46
|
|
47
|
-
# GET /admin/
|
47
|
+
# GET /admin/shipping-packages/:id/json
|
48
48
|
def admin_json_single
|
49
49
|
return if !user_is_allowed('sites', 'edit')
|
50
50
|
sp = ShippingPackage.find(params[:id])
|
51
|
-
render :json => sp
|
52
|
-
end
|
53
|
-
|
54
|
-
# GET /admin/sites/:site_id/shipping-packages/:id/delete
|
55
|
-
def admin_delete_form
|
56
|
-
return if !user_is_allowed('sites', 'edit')
|
57
|
-
@shipping_package = ShippingPackage.find(params[:id])
|
51
|
+
render :json => sp.as_json(:include => :shipping_methods)
|
58
52
|
end
|
59
53
|
|
60
|
-
# POST /admin/
|
54
|
+
# POST /admin/shipping-packages
|
61
55
|
def admin_add
|
62
56
|
return if !user_is_allowed('sites', 'add')
|
63
57
|
|
64
58
|
resp = StdClass.new
|
65
|
-
|
66
|
-
if params[:
|
67
|
-
elsif params[:
|
68
|
-
elsif params[:
|
69
|
-
elsif params[:
|
59
|
+
|
60
|
+
if params[:inside_length].strip.length == 0 then resp.error = "Please enter a valid inside length."
|
61
|
+
elsif params[:inside_width ].strip.length == 0 then resp.error = "Please enter a valid inside width."
|
62
|
+
elsif params[:inside_height].strip.length == 0 then resp.error = "Please enter a valid inside height."
|
63
|
+
elsif params[:outside_length].strip.length == 0 then resp.error = "Please enter a valid outside length."
|
64
|
+
elsif params[:outside_width ].strip.length == 0 then resp.error = "Please enter a valid outside width."
|
65
|
+
elsif params[:outside_height].strip.length == 0 then resp.error = "Please enter a valid outside height."
|
70
66
|
else
|
71
67
|
|
72
68
|
sp = ShippingPackage.new(
|
73
|
-
:site_id
|
74
|
-
:
|
75
|
-
:
|
76
|
-
:
|
77
|
-
:
|
69
|
+
:site_id => @site.id,
|
70
|
+
:name => params[:name].strip,
|
71
|
+
:inside_length => params[:inside_length].to_f,
|
72
|
+
:inside_width => params[:inside_width ].to_f,
|
73
|
+
:inside_height => params[:inside_height].to_f,
|
74
|
+
:outside_length => params[:outside_length].to_f,
|
75
|
+
:outside_width => params[:outside_width ].to_f,
|
76
|
+
:outside_height => params[:outside_height].to_f
|
78
77
|
)
|
79
|
-
sp.volume = sp.
|
78
|
+
sp.volume = sp.inside_length * sp.inside_width * sp.inside_height
|
80
79
|
sp.save
|
81
80
|
resp.redirect = "/admin/sites/#{@site.id}/shipping-packages/#{sp.id}"
|
82
81
|
|
@@ -85,31 +84,37 @@ module Caboose
|
|
85
84
|
render :json => resp
|
86
85
|
end
|
87
86
|
|
88
|
-
# POST /admin/
|
87
|
+
# POST /admin/shipping-packages/bulk
|
89
88
|
def admin_bulk_add
|
90
89
|
return if !user_is_allowed('sites', 'add')
|
91
90
|
|
92
91
|
resp = Caboose::StdClass.new
|
93
92
|
|
94
93
|
i = 0
|
95
|
-
CSV.parse(params[:csv_data].strip).each do |row|
|
96
|
-
|
97
|
-
elsif row[
|
98
|
-
elsif row[
|
99
|
-
elsif row[
|
94
|
+
CSV.parse(params[:csv_data].strip).each do |row|
|
95
|
+
if row[1].nil? || row[0].strip.length == 0 then resp.error = "Inside Length not defined on row #{i+1}."
|
96
|
+
elsif row[2].nil? || row[1].strip.length == 0 then resp.error = "Inside Width not defined on row #{i+1}."
|
97
|
+
elsif row[3].nil? || row[2].strip.length == 0 then resp.error = "Inside Height not defined on row #{i+1}."
|
98
|
+
elsif row[4].nil? || row[3].strip.length == 0 then resp.error = "Outside Length not defined on row #{i+1}."
|
99
|
+
elsif row[5].nil? || row[4].strip.length == 0 then resp.error = "Outside Width not defined on row #{i+1}."
|
100
|
+
elsif row[6].nil? || row[5].strip.length == 0 then resp.error = "Outside Height not defined on row #{i+1}."
|
100
101
|
end
|
101
102
|
i = i + 1
|
102
103
|
end
|
103
104
|
|
104
105
|
if resp.error.nil?
|
105
106
|
CSV.parse(params[:csv_data]).each do |row|
|
106
|
-
sp = Caboose::
|
107
|
-
:site_id
|
108
|
-
:
|
109
|
-
:
|
110
|
-
:
|
111
|
-
:
|
107
|
+
sp = Caboose::ShippingPackage.new(
|
108
|
+
:site_id => @site.id,
|
109
|
+
:name => row[0].strip,
|
110
|
+
:inside_length => row[1].to_f,
|
111
|
+
:inside_width => row[2].to_f,
|
112
|
+
:inside_height => row[3].to_f,
|
113
|
+
:outside_length => row[4].to_f,
|
114
|
+
:outside_width => row[5].to_f,
|
115
|
+
:outside_height => row[6].to_f
|
112
116
|
)
|
117
|
+
sp.volume = sp.inside_length * sp.inside_width * sp.inside_height
|
113
118
|
sp.save
|
114
119
|
end
|
115
120
|
resp.success = true
|
@@ -118,7 +123,7 @@ module Caboose
|
|
118
123
|
render :json => resp
|
119
124
|
end
|
120
125
|
|
121
|
-
# PUT /admin/
|
126
|
+
# PUT /admin/shipping-packages/:id
|
122
127
|
def admin_update
|
123
128
|
return if !user_is_allowed('sites', 'edit')
|
124
129
|
|
@@ -128,31 +133,70 @@ module Caboose
|
|
128
133
|
save = true
|
129
134
|
params.each do |name,value|
|
130
135
|
case name
|
131
|
-
when 'site_id' then sp.site_id = value
|
132
|
-
when '
|
133
|
-
when '
|
134
|
-
when '
|
135
|
-
when '
|
136
|
-
|
136
|
+
when 'site_id' then sp.site_id = value
|
137
|
+
when 'name' then sp.name = value
|
138
|
+
when 'inside_length' then sp.inside_length = value.to_f
|
139
|
+
when 'inside_width' then sp.inside_width = value.to_f
|
140
|
+
when 'inside_height' then sp.inside_height = value.to_f
|
141
|
+
when 'outside_length' then sp.outside_length = value.to_f
|
142
|
+
when 'outside_width' then sp.outside_width = value.to_f
|
143
|
+
when 'outside_height' then sp.outside_height = value.to_f
|
144
|
+
when 'volume' then sp.height = value.to_f
|
145
|
+
when 'empty_weight' then sp.empty_weight = value.to_f
|
146
|
+
when 'cylinder' then sp.cylinder = value.to_i
|
147
|
+
when 'flat_rate_price' then sp.flat_rate_price = value.to_f
|
148
|
+
when 'priority' then sp.priority = value.to_i
|
149
|
+
when 'shipping_method_id' then sp.toggle_shipping_method(value[0], value[1])
|
150
|
+
end
|
137
151
|
end
|
138
152
|
|
139
153
|
resp.success = save && sp.save
|
140
154
|
render :json => resp
|
141
|
-
end
|
155
|
+
end
|
156
|
+
|
157
|
+
# PUT /admin/:shipping-packages/bulk
|
158
|
+
def admin_bulk_update
|
159
|
+
return unless user_is_allowed_to 'edit', 'sites'
|
160
|
+
|
161
|
+
resp = Caboose::StdClass.new
|
162
|
+
shipping_packages = params[:model_ids].collect{ |sp_id| ShippingPackage.find(sp_id) }
|
163
|
+
|
164
|
+
save = true
|
165
|
+
params.each do |k,v|
|
166
|
+
case k
|
167
|
+
when 'site_id' then shipping_packages.each{ |sp| sp.site_id = v }
|
168
|
+
when 'name' then shipping_packages.each{ |sp| sp.name = v }
|
169
|
+
when 'inside_length' then shipping_packages.each{ |sp| sp.inside_length = v.to_f }
|
170
|
+
when 'inside_width' then shipping_packages.each{ |sp| sp.inside_width = v.to_f }
|
171
|
+
when 'inside_height' then shipping_packages.each{ |sp| sp.inside_height = v.to_f }
|
172
|
+
when 'outside_length' then shipping_packages.each{ |sp| sp.outside_length = v.to_f }
|
173
|
+
when 'outside_width' then shipping_packages.each{ |sp| sp.outside_width = v.to_f }
|
174
|
+
when 'outside_height' then shipping_packages.each{ |sp| sp.outside_height = v.to_f }
|
175
|
+
when 'volume' then shipping_packages.each{ |sp| sp.height = v.to_f }
|
176
|
+
when 'empty_weight' then shipping_packages.each{ |sp| sp.empty_weight = v.to_f }
|
177
|
+
when 'cylinder' then shipping_packages.each{ |sp| sp.cylinder = v.to_i }
|
178
|
+
when 'flat_rate_price' then shipping_packages.each{ |sp| sp.flat_rate_price = v.to_f }
|
179
|
+
when 'priority' then shipping_packages.each{ |sp| sp.priority = v.to_i }
|
180
|
+
when 'shipping_method_id' then shipping_packages.each{ |sp| sp.toggle_shipping_method(v[0], v[1]) }
|
181
|
+
end
|
182
|
+
end
|
183
|
+
shipping_packages.each{ |sp| sp.save }
|
184
|
+
|
185
|
+
resp.success = true
|
186
|
+
render :json => resp
|
187
|
+
end
|
142
188
|
|
143
|
-
# DELETE /admin/
|
189
|
+
# DELETE /admin/shipping-packages/:id
|
144
190
|
def admin_delete
|
145
191
|
return if !user_is_allowed('sites', 'delete')
|
146
192
|
sp = ShippingPackage.find(params[:id])
|
147
193
|
sp.destroy
|
148
194
|
|
149
|
-
resp = StdClass.new({
|
150
|
-
'redirect' => "/admin/sites/#{@site.id}/shipping-packages"
|
151
|
-
})
|
195
|
+
resp = StdClass.new({ 'redirect' => "/admin/shipping-packages" })
|
152
196
|
render :json => resp
|
153
197
|
end
|
154
198
|
|
155
|
-
# DELETE /admin/
|
199
|
+
# DELETE /admin/shipping-packages/:id/bulk
|
156
200
|
def admin_bulk_delete
|
157
201
|
return if !user_is_allowed('sites', 'delete')
|
158
202
|
|
@@ -165,18 +209,45 @@ module Caboose
|
|
165
209
|
render :json => resp
|
166
210
|
end
|
167
211
|
|
168
|
-
# GET /admin/
|
212
|
+
# GET /admin/shipping-packages/options
|
169
213
|
def options
|
170
214
|
return if !user_is_allowed('sites', 'view')
|
171
215
|
options = ShippingPackage.where(:site_id => @site.id).reorder('service_name').all.collect { |sp| { 'value' => sp.id, 'text' => sp.service_name }}
|
172
216
|
render :json => options
|
173
217
|
end
|
174
218
|
|
175
|
-
# GET /admin/
|
219
|
+
# GET /admin/shipping-methods/options
|
220
|
+
# GET /admin/shipping-packages/shipping-method-options
|
176
221
|
def admin_shipping_method_options
|
177
222
|
options = ShippingMethod.reorder(:carrier, :service_name).all.collect { |sm| { :value => sm.id, :text => sm.service_name }}
|
178
223
|
render :json => options
|
179
224
|
end
|
225
|
+
|
226
|
+
# GET /admin/shipping-methods/options
|
227
|
+
# GET /admin/shipping-packages/:id/shipping-method-options
|
228
|
+
def admin_shipping_method_options
|
229
|
+
options = nil
|
230
|
+
if params[:id]
|
231
|
+
sp = ShippingPackage.find(params[:id])
|
232
|
+
options = sp.shipping_methods.reorder(:carrier, :service_name).all.collect { |sm| { :value => sm.id, :text => sm.service_name }}
|
233
|
+
else
|
234
|
+
options = ShippingMethod.reorder(:carrier, :service_name).all.collect { |sm| { :value => sm.id, :text => sm.service_name }}
|
235
|
+
end
|
236
|
+
render :json => options
|
237
|
+
end
|
238
|
+
|
239
|
+
# GET /admin/shipping-packages/package-method-options
|
240
|
+
def admin_package_method_options
|
241
|
+
return if !user_is_allowed('sites', 'view')
|
242
|
+
options = []
|
243
|
+
ShippingPackage.where(:site_id => @site.id).reorder('name').all.each do |sp|
|
244
|
+
prefix = sp.name ? sp.name : "#{sp.outside_length}x#{sp.outside_width}x#{sp.outside_height}"
|
245
|
+
sp.shipping_methods.each do |sm|
|
246
|
+
options << { 'value' => "#{sp.id}_#{sm.id}", 'text' => "#{prefix} - #{sm.carrier} - #{sm.service_name}" }
|
247
|
+
end
|
248
|
+
end
|
249
|
+
render :json => options
|
250
|
+
end
|
180
251
|
|
181
252
|
end
|
182
253
|
end
|
@@ -36,20 +36,6 @@ module Caboose
|
|
36
36
|
@site = Site.find(params[:id])
|
37
37
|
end
|
38
38
|
|
39
|
-
# GET /admin/sites/:id/store
|
40
|
-
def admin_edit_store_config
|
41
|
-
return if !user_is_allowed('sites', 'edit')
|
42
|
-
@site = Site.find(params[:id])
|
43
|
-
StoreConfig.create(:site_id => @site.id) if @site.store_config.nil?
|
44
|
-
end
|
45
|
-
|
46
|
-
# GET /admin/sites/:id/smtp
|
47
|
-
def admin_edit_smtp_config
|
48
|
-
return if !user_is_allowed('sites', 'edit')
|
49
|
-
@site = Site.find(params[:id])
|
50
|
-
SmtpConfig.create(:site_id => @site.id) if @site.smtp_config.nil?
|
51
|
-
end
|
52
|
-
|
53
39
|
# GET /admin/sites/:id/block-types
|
54
40
|
def admin_edit_block_types
|
55
41
|
return if !user_is_allowed('sites', 'edit')
|
@@ -95,6 +81,7 @@ module Caboose
|
|
95
81
|
when 'name' then site.name = value
|
96
82
|
when 'description' then site.description = value
|
97
83
|
when 'under_construction_html' then site.under_construction_html = value
|
84
|
+
when 'use_store' then site.use_store = value
|
98
85
|
end
|
99
86
|
end
|
100
87
|
|
@@ -102,7 +89,7 @@ module Caboose
|
|
102
89
|
render :json => resp
|
103
90
|
end
|
104
91
|
|
105
|
-
# DELETE /admin/sites
|
92
|
+
# DELETE /admin/sites/:id
|
106
93
|
def admin_delete
|
107
94
|
return if !user_is_allowed('sites', 'delete')
|
108
95
|
site = Site.find(params[:id])
|
@@ -131,49 +118,6 @@ module Caboose
|
|
131
118
|
render :json => true
|
132
119
|
end
|
133
120
|
|
134
|
-
# POST /admin/sites/:id/domains
|
135
|
-
#def admin_add_domain
|
136
|
-
# return if !user_is_allowed('sites', 'edit')
|
137
|
-
#
|
138
|
-
# resp = Caboose::StdClass.new
|
139
|
-
# d = Domain.where(:domain => params[:domain]).first
|
140
|
-
#
|
141
|
-
# if d && d.site_id != params[:id]
|
142
|
-
# resp.error = "That domain is already associated with another site."
|
143
|
-
# elsif d && d.site_id == params[:id]
|
144
|
-
# resp.refresh = true
|
145
|
-
# elsif d.nil?
|
146
|
-
# primary = Domain.where(:site_id => params[:id]).count == 0
|
147
|
-
# d = Domain.create(:site_id => params[:id], :domain => params[:domain], :primary => primary)
|
148
|
-
# resp.refresh = true
|
149
|
-
# end
|
150
|
-
# render :json => resp
|
151
|
-
#end
|
152
|
-
|
153
|
-
# PUT /admin/sites/:id/domains/:domain_id/set-primary
|
154
|
-
#def admin_set_primary_domain
|
155
|
-
# return if !user_is_allowed('sites', 'edit')
|
156
|
-
#
|
157
|
-
# domain_id = params[:domain_id].to_i
|
158
|
-
# Domain.where(:site_id => params[:id]).all.each do |d|
|
159
|
-
# d.primary = d.id == domain_id ? true : false
|
160
|
-
# d.save
|
161
|
-
# end
|
162
|
-
# render :json => true
|
163
|
-
#end
|
164
|
-
|
165
|
-
# DELETE /admin/sites/:id/domains/:domain_id
|
166
|
-
#def admin_remove_domain
|
167
|
-
# return if !user_is_allowed('sites', 'edit')
|
168
|
-
# Domain.find(params[:domain_id]).destroy
|
169
|
-
# if Domain.where(:site_id => params[:id]).count == 1
|
170
|
-
# d = Domain.where(:site_id => params[:id]).first
|
171
|
-
# d.primary = true
|
172
|
-
# d.save
|
173
|
-
# end
|
174
|
-
# render :json => { 'refresh' => true }
|
175
|
-
#end
|
176
|
-
|
177
121
|
# GET /admin/sites/options
|
178
122
|
def options
|
179
123
|
return if !user_is_allowed('sites', 'view')
|
@@ -181,26 +125,5 @@ module Caboose
|
|
181
125
|
render :json => options
|
182
126
|
end
|
183
127
|
|
184
|
-
# GET /admin/sites/payment-processor-options
|
185
|
-
def payment_processor_options
|
186
|
-
return if !user_is_allowed('sites', 'view')
|
187
|
-
options = [
|
188
|
-
{ 'value' => 'authorize.net' , 'text' => 'Authorize.net' },
|
189
|
-
{ 'value' => 'stripe' , 'text' => 'Stripe' }
|
190
|
-
]
|
191
|
-
render :json => options
|
192
|
-
end
|
193
|
-
|
194
|
-
# GET /admin/sites/smtp-auth-options
|
195
|
-
def smtp_auth_options
|
196
|
-
return if !user_is_allowed('sites', 'view')
|
197
|
-
options = [
|
198
|
-
{ 'value' => SmtpConfig::AUTH_PLAIN , 'text' => SmtpConfig::AUTH_PLAIN },
|
199
|
-
{ 'value' => SmtpConfig::AUTH_LOGIN , 'text' => SmtpConfig::AUTH_LOGIN },
|
200
|
-
{ 'value' => SmtpConfig::AUTH_MD5 , 'text' => SmtpConfig::AUTH_MD5 }
|
201
|
-
]
|
202
|
-
render :json => options
|
203
|
-
end
|
204
|
-
|
205
128
|
end
|
206
129
|
end
|