comable_backend 0.2.3 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/MIT-LICENSE +1 -1
- data/Rakefile +16 -4
- data/app/assets/javascripts/comable/admin/application.coffee +88 -0
- data/app/assets/stylesheets/comable/admin/application.scss +590 -0
- data/app/controllers/comable/admin/application_controller.rb +28 -0
- data/app/controllers/comable/admin/categories_controller.rb +14 -0
- data/app/controllers/comable/admin/customers_controller.rb +36 -0
- data/app/controllers/comable/admin/dashboard_controller.rb +20 -0
- data/app/controllers/comable/admin/orders_controller.rb +14 -0
- data/app/controllers/comable/admin/payment_methods_controller.rb +52 -0
- data/app/controllers/comable/admin/products_controller.rb +50 -1
- data/app/controllers/comable/admin/shipment_methods_controller.rb +11 -27
- data/app/controllers/comable/admin/stocks_controller.rb +69 -0
- data/app/controllers/comable/admin/store_controller.rb +12 -29
- data/app/views/comable/admin/categories/index.slim +94 -0
- data/app/views/comable/admin/customers/edit.slim +94 -0
- data/app/views/comable/admin/customers/index.slim +68 -0
- data/app/views/comable/admin/customers/show.slim +93 -0
- data/app/views/comable/admin/dashboard/_widget.slim +13 -0
- data/app/views/comable/admin/dashboard/show.slim +63 -0
- data/app/views/comable/admin/orders/index.slim +79 -0
- data/app/views/comable/admin/orders/show.slim +116 -0
- data/app/views/comable/admin/payment_methods/_form.slim +46 -0
- data/app/views/comable/admin/payment_methods/edit.slim +28 -0
- data/app/views/comable/admin/payment_methods/index.slim +53 -0
- data/app/views/comable/admin/payment_methods/new.slim +17 -0
- data/app/views/comable/admin/products/_form.slim +130 -0
- data/app/views/comable/admin/products/edit.slim +40 -0
- data/app/views/comable/admin/products/index.slim +75 -5
- data/app/views/comable/admin/products/new.slim +17 -0
- data/app/views/comable/admin/shipment_methods/_form.slim +35 -19
- data/app/views/comable/admin/shipment_methods/edit.slim +26 -5
- data/app/views/comable/admin/shipment_methods/index.slim +46 -13
- data/app/views/comable/admin/shipment_methods/new.slim +15 -3
- data/app/views/comable/admin/stocks/_form.slim +40 -0
- data/app/views/comable/admin/stocks/edit.slim +46 -0
- data/app/views/comable/admin/stocks/index.slim +81 -0
- data/app/views/comable/admin/stocks/new.slim +17 -0
- data/app/views/comable/admin/store/_form.slim +43 -31
- data/app/views/comable/admin/store/edit.slim +11 -3
- data/app/views/kaminari/comable_backend/_first_page.html.slim +2 -0
- data/app/views/kaminari/comable_backend/_gap.html.slim +2 -0
- data/app/views/kaminari/comable_backend/_last_page.html.slim +2 -0
- data/app/views/kaminari/comable_backend/_next_page.html.slim +2 -0
- data/app/views/kaminari/comable_backend/_page.html.slim +3 -0
- data/app/views/kaminari/comable_backend/_paginator.html.slim +15 -0
- data/app/views/kaminari/comable_backend/_prev_page.html.slim +2 -0
- data/app/views/layouts/comable/admin/application.slim +103 -2
- data/config/routes.rb +14 -2
- data/lib/comable/backend/engine.rb +22 -0
- metadata +240 -9
- data/app/assets/javascripts/comable/admin/application.js +0 -13
- data/app/assets/stylesheets/comable/admin/application.css +0 -15
- data/app/views/comable/admin/shipment_methods/show.slim +0 -22
- data/app/views/comable/admin/store/new.slim +0 -3
- data/app/views/comable/admin/store/show.slim +0 -24
@@ -0,0 +1,46 @@
|
|
1
|
+
= form_for [comable, :admin, @payment_method] do |f|
|
2
|
+
/ TODO: Standardize
|
3
|
+
- if @payment_method.errors.any?
|
4
|
+
#error_explanation
|
5
|
+
h2
|
6
|
+
= pluralize(@payment_method.errors.count, 'error')
|
7
|
+
| prohibited this payment_method from being saved:
|
8
|
+
|
9
|
+
ul
|
10
|
+
- @payment_method.errors.full_messages.each do |message|
|
11
|
+
li = message
|
12
|
+
|
13
|
+
.panel.panel-inverse
|
14
|
+
.panel-heading
|
15
|
+
.panel-title
|
16
|
+
= Comable.t('admin.nav.payment_methods.edit')
|
17
|
+
|
18
|
+
.panel-body
|
19
|
+
.form-horizontal
|
20
|
+
fieldset
|
21
|
+
.form-group
|
22
|
+
.col-sm-3.control-label
|
23
|
+
= f.label :name
|
24
|
+
.col-sm-6
|
25
|
+
= f.text_field :name
|
26
|
+
|
27
|
+
.form-group
|
28
|
+
.col-sm-3.control-label
|
29
|
+
= f.label :payment_provider
|
30
|
+
.col-sm-3
|
31
|
+
= f.select :payment_provider_type, Comable::PaymentProvider.all.map { |provider_class| [provider_class.display_name, provider_class.name] }
|
32
|
+
.col-sm-3
|
33
|
+
= f.select :payment_provider_kind, Comable::PaymentProvider::General.kind.map.with_index { |(_, value), index| [value, index] }
|
34
|
+
|
35
|
+
.form-group
|
36
|
+
.col-sm-3.control-label
|
37
|
+
= f.label :enable_price
|
38
|
+
.col-sm-3
|
39
|
+
= f.text_field :enable_price_from
|
40
|
+
.col-sm-3
|
41
|
+
= f.text_field :enable_price_to
|
42
|
+
|
43
|
+
.panel-footer
|
44
|
+
= link_to Comable.t('admin.actions.cancel'), comable.admin_payment_methods_path, class: 'btn btn-default'
|
45
|
+
.pull-right
|
46
|
+
= f.submit
|
@@ -0,0 +1,28 @@
|
|
1
|
+
#comable-payment-method
|
2
|
+
ol.breadcrumb
|
3
|
+
li
|
4
|
+
= link_to Comable.t('admin.nav.dashboard'), comable.admin_root_path
|
5
|
+
li
|
6
|
+
= link_to Comable.t('admin.nav.payment_method'), comable.admin_payment_methods_path
|
7
|
+
li.active
|
8
|
+
= @payment_method.name
|
9
|
+
|
10
|
+
h1.page-header
|
11
|
+
= @payment_method.name
|
12
|
+
|
13
|
+
.row
|
14
|
+
section.col-sm-8
|
15
|
+
= render 'form'
|
16
|
+
hr
|
17
|
+
.panel.panel-danger
|
18
|
+
.panel-heading type="button" data-toggle="collapse" data-target="#comable-danger" aria-expanded="false" aria-controls="comable-danger"
|
19
|
+
strong
|
20
|
+
span.fa.fa-angle-down>
|
21
|
+
= Comable.t('admin.actions.destroy')
|
22
|
+
#comable-danger.collapse
|
23
|
+
.panel-body
|
24
|
+
p
|
25
|
+
= Comable.t('admin.confirmation_to_remove_product')
|
26
|
+
= link_to Comable.t('admin.actions.destroy'), comable.admin_payment_method_path(@payment_method), method: :delete, class: 'btn btn-danger'
|
27
|
+
|
28
|
+
nav.col-sm-4
|
@@ -0,0 +1,53 @@
|
|
1
|
+
#comable-payment-method
|
2
|
+
ol.breadcrumb
|
3
|
+
li
|
4
|
+
= link_to Comable.t('admin.nav.dashboard'), comable.admin_root_path
|
5
|
+
li.active
|
6
|
+
= Comable.t('admin.nav.payment_method')
|
7
|
+
|
8
|
+
h1.page-header
|
9
|
+
= Comable.t('admin.nav.payment_method')
|
10
|
+
small<
|
11
|
+
= @payment_methods.total_count
|
12
|
+
= Comable.t('admin.results')
|
13
|
+
|
14
|
+
.row
|
15
|
+
section.col-sm-8
|
16
|
+
- if @payment_methods.empty?
|
17
|
+
= Comable.t('admin.not_found')
|
18
|
+
- else
|
19
|
+
.panel.panel-inverse
|
20
|
+
.panel-heading
|
21
|
+
.panel-title
|
22
|
+
= Comable.t('admin.index')
|
23
|
+
table.table.table-striped
|
24
|
+
thead
|
25
|
+
th
|
26
|
+
= @payment_methods.klass.human_attribute_name(:name)
|
27
|
+
th
|
28
|
+
= @payment_methods.klass.human_attribute_name(:payment_provider)
|
29
|
+
th
|
30
|
+
= @payment_methods.klass.human_attribute_name(:enable_price)
|
31
|
+
tbody
|
32
|
+
- @payment_methods.each do |payment_method|
|
33
|
+
tr
|
34
|
+
td
|
35
|
+
= link_to payment_method.name, comable.admin_payment_method_path(payment_method)
|
36
|
+
/- unless payment_method.activate_flag
|
37
|
+
/ span.fa.fa-eye-slash.text-muted<
|
38
|
+
td
|
39
|
+
= payment_method.payment_provider.display_name
|
40
|
+
td
|
41
|
+
- if payment_method.enable_price_from || payment_method.enable_price_to
|
42
|
+
span = number_to_currency payment_method.enable_price_from
|
43
|
+
span>< ~
|
44
|
+
span = number_to_currency payment_method.enable_price_to
|
45
|
+
|
46
|
+
.text-center
|
47
|
+
= paginate @payment_methods, theme: :comable_backend
|
48
|
+
|
49
|
+
nav.col-sm-4
|
50
|
+
#comable-affix
|
51
|
+
.panel
|
52
|
+
.list-group
|
53
|
+
= link_to Comable.t('admin.actions.new'), comable.new_admin_payment_method_path, class: 'list-group-item'
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#comable-payment-method
|
2
|
+
ol.breadcrumb
|
3
|
+
li
|
4
|
+
= link_to Comable.t('admin.nav.dashboard'), comable.admin_root_path
|
5
|
+
li
|
6
|
+
= link_to Comable.t('admin.nav.payment_method'), comable.admin_payment_methods_path
|
7
|
+
li.active
|
8
|
+
= Comable.t('admin.actions.new')
|
9
|
+
|
10
|
+
h1.page-header
|
11
|
+
= Comable.t('admin.actions.new')
|
12
|
+
|
13
|
+
.row
|
14
|
+
section.col-sm-8
|
15
|
+
= render 'form'
|
16
|
+
|
17
|
+
nav.col-sm-4
|
@@ -0,0 +1,130 @@
|
|
1
|
+
- url = comable.admin_products_path if @product.new_record?
|
2
|
+
- url ||= comable.admin_product_path(@product)
|
3
|
+
= form_for @product, url: url, html: { multipart: true } do |f|
|
4
|
+
.panel.panel-inverse
|
5
|
+
.panel-heading
|
6
|
+
.panel-title
|
7
|
+
= Comable.t('admin.general')
|
8
|
+
.panel-body
|
9
|
+
.form-horizontal
|
10
|
+
.form-group
|
11
|
+
.col-sm-3.control-label
|
12
|
+
= f.label :code
|
13
|
+
.col-sm-6
|
14
|
+
= f.text_field :code
|
15
|
+
|
16
|
+
.form-group
|
17
|
+
.col-sm-3.control-label
|
18
|
+
= f.label :name
|
19
|
+
.col-sm-6
|
20
|
+
= f.text_field :name
|
21
|
+
|
22
|
+
.form-group
|
23
|
+
.col-sm-3.control-label
|
24
|
+
= f.label :caption
|
25
|
+
.col-sm-6
|
26
|
+
= f.text_field :caption
|
27
|
+
|
28
|
+
.form-group
|
29
|
+
.col-sm-3.control-label
|
30
|
+
= f.label :price
|
31
|
+
.col-sm-6
|
32
|
+
= f.text_field :price
|
33
|
+
|
34
|
+
= stylesheet_link_tag 'http://rawgithub.com/aehlke/tag-it/master/css/jquery.tagit.css', media: 'all'
|
35
|
+
= stylesheet_link_tag 'http://rawgithub.com/aehlke/tag-it/master/css/tagit.ui-zendesk.css', media: 'all'
|
36
|
+
= javascript_include_tag 'http://rawgithub.com/aehlke/tag-it/master/js/tag-it.min.js'
|
37
|
+
|
38
|
+
/ TODO: Refactoring
|
39
|
+
javascript:
|
40
|
+
comable_tagit_available_tags = #{raw Comable::Category.all.map(&:path).map { |path| path.map(&:name).join(' > ') }.sort.to_json};
|
41
|
+
coffee:
|
42
|
+
$(document).ready(->
|
43
|
+
$("#comable-tagit").tagit({
|
44
|
+
fieldName: 'product[category_path_names][]',
|
45
|
+
availableTags: comable_tagit_available_tags,
|
46
|
+
autocomplete: { delay: 0, minLength: 0 },
|
47
|
+
showAutocompleteOnFocus: true,
|
48
|
+
removeConfirmation: true,
|
49
|
+
# Only allow available tags
|
50
|
+
beforeTagAdded: (event, ui) -> (comable_tagit_available_tags.indexOf(ui.tagLabel) != -1)
|
51
|
+
})
|
52
|
+
)
|
53
|
+
|
54
|
+
.form-group
|
55
|
+
.col-sm-3.control-label
|
56
|
+
= f.label :categories
|
57
|
+
.col-sm-6
|
58
|
+
ul#comable-tagit
|
59
|
+
- @product.categories.each do |category|
|
60
|
+
li
|
61
|
+
= category.path.map(&:name).join(' > ')
|
62
|
+
|
63
|
+
fieldset
|
64
|
+
legend.text-center.text-muted
|
65
|
+
| SKU
|
66
|
+
|
67
|
+
.form-group
|
68
|
+
.col-sm-3.control-label
|
69
|
+
= f.label :sku_h_item_name
|
70
|
+
.col-sm-6
|
71
|
+
= f.text_field :sku_h_item_name
|
72
|
+
span.help-block
|
73
|
+
= Comable.t('admin.please_fill_when_using_sku')
|
74
|
+
|
75
|
+
.form-group
|
76
|
+
.col-sm-3.control-label
|
77
|
+
= f.label :sku_v_item_name
|
78
|
+
.col-sm-6
|
79
|
+
= f.text_field :sku_v_item_name
|
80
|
+
|
81
|
+
.panel-footer
|
82
|
+
= link_to Comable.t('admin.actions.cancel'), comable.admin_products_path, class: 'btn btn-default'
|
83
|
+
.pull-right
|
84
|
+
= f.submit
|
85
|
+
|
86
|
+
.panel.panel-inverse
|
87
|
+
.panel-heading
|
88
|
+
.panel-title
|
89
|
+
= Comable.t('admin.images')
|
90
|
+
.panel-body
|
91
|
+
- images = @product.images + [@product.images.build]
|
92
|
+
- main_image = images.first
|
93
|
+
- sub_images = images - [main_image]
|
94
|
+
|
95
|
+
.row
|
96
|
+
.col-sm-6
|
97
|
+
= f.fields_for :images, main_image do |ff|
|
98
|
+
label
|
99
|
+
= Comable.t('admin.main_image')
|
100
|
+
p
|
101
|
+
= ff.file_field :file
|
102
|
+
- if ff.object.url
|
103
|
+
.thumbnail
|
104
|
+
= image_tag ff.object.url
|
105
|
+
- if ff.object.persisted?
|
106
|
+
label.remove
|
107
|
+
span> = ff.check_box :_destroy
|
108
|
+
span> = Comable.t('admin.actions.destroy')
|
109
|
+
|
110
|
+
.col-sm-6
|
111
|
+
.row
|
112
|
+
- sub_images.each.with_index(1) do |image, index|
|
113
|
+
= f.fields_for :images, image do |ff|
|
114
|
+
.col-sm-6
|
115
|
+
label
|
116
|
+
| #{Comable.t('admin.sub_image')} ##{index}
|
117
|
+
p
|
118
|
+
= ff.file_field :file
|
119
|
+
- if ff.object.url
|
120
|
+
.thumbnail
|
121
|
+
= image_tag ff.object.url
|
122
|
+
- if ff.object.persisted?
|
123
|
+
label.remove
|
124
|
+
span> = ff.check_box :_destroy
|
125
|
+
span> = Comable.t('admin.actions.destroy')
|
126
|
+
|
127
|
+
.panel-footer
|
128
|
+
= link_to Comable.t('admin.actions.cancel'), comable.admin_products_path, class: 'btn btn-default'
|
129
|
+
.pull-right
|
130
|
+
= f.submit
|
@@ -0,0 +1,40 @@
|
|
1
|
+
#comable-product
|
2
|
+
ol.breadcrumb
|
3
|
+
li
|
4
|
+
= link_to Comable.t('admin.nav.dashboard'), comable.admin_root_path
|
5
|
+
li
|
6
|
+
= link_to Comable.t('admin.nav.product'), comable.admin_products_path
|
7
|
+
li.active
|
8
|
+
= @product.name
|
9
|
+
|
10
|
+
h1.page-header
|
11
|
+
= @product.name
|
12
|
+
small< = @product.code
|
13
|
+
|
14
|
+
.row
|
15
|
+
section.col-sm-8
|
16
|
+
= render 'form'
|
17
|
+
hr
|
18
|
+
.panel.panel-danger
|
19
|
+
.panel-heading type="button" data-toggle="collapse" data-target="#comable-danger" aria-expanded="false" aria-controls="comable-danger"
|
20
|
+
strong
|
21
|
+
span.fa.fa-angle-down>
|
22
|
+
= Comable.t('admin.actions.destroy')
|
23
|
+
#comable-danger.collapse
|
24
|
+
.panel-body
|
25
|
+
p
|
26
|
+
= Comable.t('admin.confirmation_to_remove_product')
|
27
|
+
= link_to Comable.t('admin.actions.destroy'), comable.admin_product_path(@product), method: :delete, class: 'btn btn-danger'
|
28
|
+
|
29
|
+
nav.col-sm-4
|
30
|
+
#comable-affix data-spy="affix"
|
31
|
+
.panel
|
32
|
+
.list-group
|
33
|
+
= link_to Comable.t('admin.nav.products.detail'), comable.admin_product_path(@product), class: 'list-group-item disabled'
|
34
|
+
= link_to Comable.t('admin.nav.products.stock'), comable.admin_product_stocks_path(@product), class: 'list-group-item'
|
35
|
+
|
36
|
+
.panel
|
37
|
+
.list-group
|
38
|
+
= link_to comable.product_path(@product), class: 'list-group-item' do
|
39
|
+
span.fa.fa-external-link>
|
40
|
+
= Comable.t('admin.check_this_product_in_frontend')
|
@@ -1,6 +1,76 @@
|
|
1
|
-
|
1
|
+
#comable-product
|
2
|
+
ol.breadcrumb
|
3
|
+
li
|
4
|
+
= link_to Comable.t('admin.nav.dashboard'), comable.admin_root_path
|
5
|
+
li.active
|
6
|
+
= Comable.t('admin.nav.product')
|
2
7
|
|
3
|
-
-
|
4
|
-
|
5
|
-
|
6
|
-
|
8
|
+
h1.page-header
|
9
|
+
= Comable.t('admin.nav.product')
|
10
|
+
small<
|
11
|
+
= @products.total_count
|
12
|
+
= Comable.t('admin.results')
|
13
|
+
|
14
|
+
.row
|
15
|
+
section.col-sm-8
|
16
|
+
.panel.panel-inverse
|
17
|
+
.panel-heading
|
18
|
+
.panel-title
|
19
|
+
= Comable.t('admin.index')
|
20
|
+
- if @products.empty?
|
21
|
+
.panel-body
|
22
|
+
= Comable.t('admin.not_found')
|
23
|
+
- else
|
24
|
+
table.table.table-striped
|
25
|
+
thead
|
26
|
+
th
|
27
|
+
th
|
28
|
+
= sort_link [:comable, @q], :code
|
29
|
+
th
|
30
|
+
= sort_link [:comable, @q], :name
|
31
|
+
th
|
32
|
+
= sort_link [:comable, @q], :price
|
33
|
+
th
|
34
|
+
= sort_link [:comable, @q], :stocks_quantity
|
35
|
+
tbody
|
36
|
+
- @products.each do |product|
|
37
|
+
- quantity = product.stocks.to_a.sum(&:quantity)
|
38
|
+
tr
|
39
|
+
td.comable-image
|
40
|
+
= link_to comable.admin_product_path(product), class: 'thumbnail' do
|
41
|
+
= image_tag product.image_url
|
42
|
+
td
|
43
|
+
= link_to product.code, comable.admin_product_path(product)
|
44
|
+
td
|
45
|
+
= product.name
|
46
|
+
td
|
47
|
+
= number_to_currency product.price
|
48
|
+
td
|
49
|
+
strong class="#{(quantity <= 0) ? 'text-danger' : (quantity <= 10) ? 'text-warning' : 'text-success'}"
|
50
|
+
= number_with_delimiter product.stocks.to_a.sum(&:quantity)
|
51
|
+
|
52
|
+
.text-center
|
53
|
+
= paginate @products, theme: :comable_backend
|
54
|
+
|
55
|
+
nav.col-sm-4
|
56
|
+
#comable-affix
|
57
|
+
.panel
|
58
|
+
.list-group
|
59
|
+
= link_to Comable.t('admin.actions.new'), comable.new_admin_product_path, class: 'list-group-item'
|
60
|
+
|
61
|
+
.panel
|
62
|
+
.panel-body
|
63
|
+
= search_form_for @q, url: comable.admin_products_path do |f|
|
64
|
+
.form-horizontal
|
65
|
+
.form-group
|
66
|
+
.col-sm-3.control-label
|
67
|
+
= f.label :code
|
68
|
+
.col-sm-9
|
69
|
+
= f.text_field :code_cont
|
70
|
+
.form-group
|
71
|
+
.col-sm-3.control-label
|
72
|
+
= f.label :name
|
73
|
+
.col-sm-9
|
74
|
+
= f.text_field :name_cont
|
75
|
+
.text-right
|
76
|
+
= f.submit Comable.t('admin.search'), class: 'btn btn-default'
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#comable-product
|
2
|
+
ol.breadcrumb
|
3
|
+
li
|
4
|
+
= link_to Comable.t('admin.nav.dashboard'), comable.admin_root_path
|
5
|
+
li.active
|
6
|
+
= link_to Comable.t('admin.nav.product'), comable.admin_products_path
|
7
|
+
li.active
|
8
|
+
= Comable.t('admin.actions.new')
|
9
|
+
|
10
|
+
h1.page-header
|
11
|
+
= Comable.t('admin.actions.new')
|
12
|
+
|
13
|
+
.row
|
14
|
+
section.col-sm-8
|
15
|
+
= render 'form'
|
16
|
+
|
17
|
+
nav.col-sm-4
|
@@ -1,4 +1,5 @@
|
|
1
|
-
= form_for
|
1
|
+
= form_for [comable, :admin, @shipment_method] do |f|
|
2
|
+
/ TODO: Standardize
|
2
3
|
- if @shipment_method.errors.any?
|
3
4
|
#error_explanation
|
4
5
|
h2
|
@@ -9,25 +10,40 @@
|
|
9
10
|
- @shipment_method.errors.full_messages.each do |message|
|
10
11
|
li = message
|
11
12
|
|
12
|
-
.
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
.panel.panel-inverse
|
14
|
+
.panel-heading
|
15
|
+
.panel-title
|
16
|
+
= Comable.t('admin.nav.shipment_methods.edit')
|
16
17
|
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
18
|
+
.panel-body
|
19
|
+
.form-horizontal
|
20
|
+
fieldset
|
21
|
+
.form-group
|
22
|
+
.col-sm-3.control-label
|
23
|
+
= f.label :name
|
24
|
+
.col-sm-6
|
25
|
+
= f.text_field :name
|
21
26
|
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
27
|
+
.form-group
|
28
|
+
.col-sm-3.control-label
|
29
|
+
= f.label :fee
|
30
|
+
.col-sm-6
|
31
|
+
= f.text_field :fee
|
26
32
|
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
33
|
+
.form-group
|
34
|
+
.col-sm-3.control-label
|
35
|
+
= f.label :traking_url
|
36
|
+
.col-sm-6
|
37
|
+
= f.text_field :traking_url, placeholder: 'http://'
|
31
38
|
|
32
|
-
|
33
|
-
|
39
|
+
.form-group
|
40
|
+
.col-sm-offset-3.col-sm-6
|
41
|
+
.checkbox
|
42
|
+
= f.label :activate_flag do
|
43
|
+
= f.check_box :activate_flag
|
44
|
+
= f.object.class.human_attribute_name(:activate_flag)
|
45
|
+
|
46
|
+
.panel-footer
|
47
|
+
= link_to Comable.t('admin.actions.cancel'), comable.admin_shipment_methods_path, class: 'btn btn-default'
|
48
|
+
.pull-right
|
49
|
+
= f.submit
|