handcart 0.0.3 → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/app/assets/javascripts/handcart/application.js +1 -1
- data/app/assets/stylesheets/handcart/{application.css → application.css.scss} +1 -2
- data/app/assets/stylesheets/handcart/layout.css.scss +9 -1
- data/app/controllers/handcart/application_controller.rb +0 -1
- data/app/controllers/handcart/ip_addresses_controller.rb +4 -4
- data/app/controllers/handcart/subdomains_controller.rb +2 -2
- data/app/helpers/handcart/bootstrap_flash_helper.rb +26 -0
- data/app/models/handcart/concerns/handcarts.rb +1 -1
- data/app/models/handcart/ip_address.rb +1 -0
- data/app/models/handcart/subdomain.rb +1 -0
- data/app/views/handcart/ip_addresses/_form.html.haml +9 -9
- data/app/views/handcart/ip_addresses/index.html.haml +15 -9
- data/app/views/handcart/ip_addresses/show.html.haml +37 -19
- data/app/views/handcart/subdomains/_form.html.haml +6 -6
- data/app/views/handcart/subdomains/index.html.haml +10 -8
- data/app/views/handcart/subdomains/show.html.haml +30 -19
- data/app/views/layouts/handcart/_navbar.html.haml +16 -15
- data/app/views/layouts/handcart/application.html.haml +12 -12
- data/config/locales/en.yml +2 -1
- data/lib/handcart.rb +2 -1
- data/lib/handcart/simple_form.rb +45 -16
- data/lib/handcart/simple_form_bootstrap.rb +86 -0
- data/lib/handcart/version.rb +1 -1
- data/spec/dummy/app/assets/javascripts/application.js +1 -1
- data/spec/dummy/app/assets/stylesheets/{application.css → application.css.scss} +1 -2
- data/spec/dummy/app/assets/stylesheets/layout.css.scss +1 -1
- data/spec/dummy/app/controllers/application_controller.rb +1 -0
- data/spec/dummy/app/controllers/master/companies_controller.rb +1 -1
- data/spec/dummy/app/views/kaminari/_first_page.html.haml +2 -0
- data/spec/dummy/app/views/kaminari/_gap.html.haml +2 -0
- data/spec/dummy/app/views/kaminari/_last_page.html.haml +2 -0
- data/spec/dummy/app/views/kaminari/_next_page.html.haml +2 -0
- data/spec/dummy/app/views/kaminari/_page.html.haml +2 -0
- data/spec/dummy/app/views/kaminari/_paginator.html.haml +11 -0
- data/spec/dummy/app/views/kaminari/_prev_page.html.haml +2 -0
- data/spec/dummy/app/views/layouts/_navbar.html.haml +7 -6
- data/spec/dummy/app/views/layouts/application.html.haml +13 -11
- data/spec/dummy/app/views/layouts/master.html.haml +12 -11
- data/spec/dummy/app/views/layouts/master/_navbar.html.haml +11 -9
- data/spec/dummy/app/views/layouts/public.html.haml +9 -8
- data/spec/dummy/app/views/master/companies/_form.html.haml +8 -8
- data/spec/dummy/app/views/master/companies/index.html.haml +6 -6
- data/spec/dummy/app/views/master/companies/show.html.haml +2 -2
- data/spec/dummy/log/development.log +13453 -0
- data/spec/dummy/log/test.log +18192 -0
- data/spec/dummy/spec/models/company_spec.rb +6 -0
- data/spec/dummy/tmp/cache/assets/development/sass/27d34b7cbcb5b92ab03220c4d4b91379cc64c2c0/layout.css.scssc +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/02ed06263710ce2efa1e60127f70b6c4 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/0458ed7d0bd5ee8539da486da8f5991f +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/090db6be066f75d69551b3a136a9d6a3 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/0a3f5e60a5dc08f80e83efe09ac998c7 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/0d76367ded60510a66afc3dea891e76a +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/0f5003ddb4834b15069be849f782c9a3 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/1060e80761812d7822e2da74c334dc4a +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/106c3f4e1fc71e9dc70abae55d432886 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/18c826ba1d6dac1633cae2da25c0402a +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/2095ec690033cb1ebeb9a75f5d74005f +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/250f17d9e4ac44072b6f5a236fa8f532 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/26e64189696f84c742152094a4784b64 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/2860df473a6cf4c483cd6f251fea3ae0 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/28ed8badf249567725127a10da4e24c2 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/2f36066abfa51ffebd7981ba91d7047a +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/332b53959e1614821a9dc7237b1567d0 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/350c8c72b1dbd7a84f85424b5cd4def1 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/3521f0b3655f1332b216d6d3f2e49865 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/3b1656b46a35a6120c3407b930d468ba +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/3bd3ea6a5530c1221765984d64fb7e76 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/3d2dc454ff19bb6aa33d0495820578a5 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/3fa878a57cb0b42be266336564609b18 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/493ec40401d9f806f43e0cd72894205a +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/4a168813f7a26f6ba3b217833f53d99d +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/4b05c7ca81ce80200d0768e10b8de7a9 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/4c17c77b444339bb3ab293047da0ff0d +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/4d770d1f61e86e7c8912f8b87e05354c +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/5d22162d2a10fcd9bf398f058fff6eb5 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/5d650352320298b4007cec860189a5e9 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/6051db87a0894bbf1adae79d3191b027 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/60b75d9635ed84e08a0b9a245d8a3202 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/646c9911e2f7dd2a16daeccc138b4352 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/6e9d2e7aafa45c939731291fa453b8c2 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/72bfe5ba0e1aa85b4a2ae83a28cd9edd +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/74131e27a9b7033cbda45ad068053a4e +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/793509e1419de327d1f96aa92521ab80 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/806adcbf228e622f7d8dd5635da28bcc +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/8102cf6724f489a310fe3a6b764bb2e9 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/8174fc2596c9877f60153bf482170c3b +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/85d3ba9967443e5dc18cc8e9ae5c2a67 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/89985f1bd1ce408bbb842b5e6714d344 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/8aaac397ee93bf3a99ebbc8afa4ba8ba +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/8ab512c9b33ac90e699b73469d71f061 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/903350b384a3ba2f4dab81256fe4a038 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/91b6a90bb461c0699041890b68172f24 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/9384399605ca755bddc0e0c50de99e75 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/94a101a9134135c0b64ffb79d71a7961 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/9d31c08f7c2f9ea416313d439fbb90c6 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/a7cf87387fa408a88cd78b7ea037bf3a +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/a9e19eb45005fa24bc8b90b6a374089f +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/aef2ed28dee632a906030c7d063ba481 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/af718c632887ccb6c1c35c4b65c61293 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/b559f2694561fc6c44e3319f507de1e7 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/b78a1c1624e2aadfb2076a966c4f2708 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/b7c36a1c00d7804d9e827d704c0dd811 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/bcca522c6302f184f12fe0e8a7d7e71a +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/bd14e8a9bb4e8b09a327cc6fb637a4c9 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/c13fc73ceafa45876a901b3e775b83ae +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/c353816e1fa79580ecc2109ac87f6484 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/c39832e77dfdde1759066bd4a2fd9df6 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/c6dbb1be1e4b05a06fc6d87bf007884b +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/cfc86dc4f1549fbc409ccbb7f29bf17f +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/d30e829917dfb45f19a36b8d71edaa7a +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/d32fc7356f764b22ecbcebbcb9b47ee1 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/d379e86e6d88f4cd26a4a52e4dd0ef8b +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/d776667bae72eb3d582da5803fc931ca +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/e2bd103827e58881b0255df62c988c8a +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/e32ea0ebfd8befc578a5a8043b866754 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/e7178f39a89e69212b764b69dac69528 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/f2348b747b81ca6e3a24d5bd0b7023c4 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/fbd7d96603edf8045193c8378a7913ce +0 -0
- data/spec/dummy/tmp/pids/server.pid +1 -0
- metadata +144 -6
data/config/locales/en.yml
CHANGED
data/lib/handcart.rb
CHANGED
data/lib/handcart/simple_form.rb
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
# lib/my-engine/simple-form.rb
|
2
2
|
require 'simple_form'
|
3
3
|
|
4
|
+
# https://gist.github.com/tokenvolt/6599141
|
5
|
+
|
4
6
|
# Use this setup block to configure all options available in SimpleForm.
|
5
7
|
SimpleForm.setup do |config|
|
6
8
|
# Wrappers are used by the form builder to generate a
|
@@ -48,22 +50,37 @@ SimpleForm.setup do |config|
|
|
48
50
|
b.use :error, wrap_with: { tag: :span, class: :error }
|
49
51
|
end
|
50
52
|
|
51
|
-
config.wrappers :bootstrap, tag: 'div', class: '
|
53
|
+
config.wrappers :bootstrap, tag: 'div', class: 'form-group', error_class: 'has-error',
|
54
|
+
defaults: { input_html: { class: 'default_class' } } do |b|
|
55
|
+
|
56
|
+
b.use :html5
|
57
|
+
b.use :placeholder
|
58
|
+
b.use :label
|
59
|
+
b.wrapper tag: 'div', class: 'col-sm-3' do |ba|
|
60
|
+
ba.use :input
|
61
|
+
end
|
62
|
+
b.use :hint, wrap_with: { tag: 'span', class: 'help-block' }
|
63
|
+
b.use :error, wrap_with: { tag: 'span', class: 'help-block has-error' }
|
64
|
+
end
|
65
|
+
|
66
|
+
config.wrappers :nested, tag: 'div', class: 'form-group', error_class: 'has-error',
|
67
|
+
defaults: { input_html: { class: 'default_class' } } do |b|
|
68
|
+
|
52
69
|
b.use :html5
|
53
70
|
b.use :placeholder
|
54
71
|
b.use :label
|
55
|
-
b.wrapper tag: 'div', class: '
|
72
|
+
b.wrapper tag: 'div', class: 'col-lg-10' do |ba|
|
56
73
|
ba.use :input
|
57
|
-
ba.use :error, wrap_with: { tag: 'span', class: 'help-inline' }
|
58
|
-
ba.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
|
59
74
|
end
|
75
|
+
b.use :hint, wrap_with: { tag: 'span', class: 'help-block' }
|
76
|
+
b.use :error, wrap_with: { tag: 'span', class: 'help-block has-error' }
|
60
77
|
end
|
61
78
|
|
62
|
-
config.wrappers :prepend, tag: 'div', class: "
|
79
|
+
config.wrappers :prepend, tag: 'div', class: "form-group", error_class: 'has-error' do |b|
|
63
80
|
b.use :html5
|
64
81
|
b.use :placeholder
|
65
82
|
b.use :label
|
66
|
-
b.wrapper tag: 'div', class: '
|
83
|
+
b.wrapper tag: 'div', class: 'col-sm-4' do |input|
|
67
84
|
input.wrapper tag: 'div', class: 'input-prepend' do |prepend|
|
68
85
|
prepend.use :input
|
69
86
|
end
|
@@ -72,11 +89,11 @@ SimpleForm.setup do |config|
|
|
72
89
|
end
|
73
90
|
end
|
74
91
|
|
75
|
-
config.wrappers :append, tag: 'div', class: "
|
92
|
+
config.wrappers :append, tag: 'div', class: "form-group", error_class: 'has-error' do |b|
|
76
93
|
b.use :html5
|
77
94
|
b.use :placeholder
|
78
95
|
b.use :label
|
79
|
-
b.wrapper tag: 'div', class: '
|
96
|
+
b.wrapper tag: 'div', class: 'col-sm-4' do |input|
|
80
97
|
input.wrapper tag: 'div', class: 'input-append' do |append|
|
81
98
|
append.use :input
|
82
99
|
end
|
@@ -91,6 +108,9 @@ SimpleForm.setup do |config|
|
|
91
108
|
# buttons and other elements.
|
92
109
|
config.default_wrapper = :bootstrap
|
93
110
|
|
111
|
+
# The default wrapper to be used by the FormBuilder.
|
112
|
+
# config.default_wrapper = :default
|
113
|
+
|
94
114
|
# Define the way to render check boxes / radio buttons with labels.
|
95
115
|
# Defaults to :nested for bootstrap config.
|
96
116
|
# inline: input + label
|
@@ -100,7 +120,9 @@ SimpleForm.setup do |config|
|
|
100
120
|
# Default class for buttons
|
101
121
|
config.button_class = 'btn'
|
102
122
|
|
103
|
-
# Method used to tidy up errors.
|
123
|
+
# Method used to tidy up errors. Specify any Rails Array method.
|
124
|
+
# :first lists the first message for each field.
|
125
|
+
# Use :to_sentence to list all errors for each field.
|
104
126
|
# config.error_method = :first
|
105
127
|
|
106
128
|
# Default tag used for error notification helper.
|
@@ -136,10 +158,10 @@ SimpleForm.setup do |config|
|
|
136
158
|
# config.label_text = lambda { |label, required| "#{required} #{label}" }
|
137
159
|
|
138
160
|
# You can define the class to use on all labels. Default is nil.
|
139
|
-
config.label_class = '
|
161
|
+
config.label_class = 'col-sm-2'
|
140
162
|
|
141
163
|
# You can define the class to use on all forms. Default is simple_form.
|
142
|
-
|
164
|
+
config.form_class = "simple_form form-horizontal"
|
143
165
|
|
144
166
|
# You can define which elements should obtain additional classes
|
145
167
|
# config.generate_additional_classes_for = [:wrapper, :label, :input]
|
@@ -147,8 +169,11 @@ SimpleForm.setup do |config|
|
|
147
169
|
# Whether attributes are required by default (or not). Default is true.
|
148
170
|
# config.required_by_default = true
|
149
171
|
|
150
|
-
# Tell browsers whether to use
|
151
|
-
#
|
172
|
+
# Tell browsers whether to use the native HTML5 validations (novalidate form option).
|
173
|
+
# These validations are enabled in SimpleForm's internal config but disabled by default
|
174
|
+
# in this configuration, which is recommended due to some quirks from different browsers.
|
175
|
+
# To stop SimpleForm from generating the novalidate option, enabling the HTML5 validations,
|
176
|
+
# change this configuration to true.
|
152
177
|
config.browser_validations = false
|
153
178
|
|
154
179
|
# Collection of methods to detect if a file type was given.
|
@@ -159,15 +184,16 @@ SimpleForm.setup do |config|
|
|
159
184
|
# matches the regexp as value.
|
160
185
|
# config.input_mappings = { /count/ => :integer }
|
161
186
|
|
187
|
+
# Custom wrappers for input types. This should be a hash containing an input
|
188
|
+
# type as key and the wrapper that will be used for all inputs with specified type.
|
189
|
+
# config.wrapper_mappings = { string: :prepend }
|
190
|
+
|
162
191
|
# Default priority for time_zone inputs.
|
163
192
|
# config.time_zone_priority = nil
|
164
193
|
|
165
194
|
# Default priority for country inputs.
|
166
195
|
# config.country_priority = nil
|
167
196
|
|
168
|
-
# Default size for text inputs.
|
169
|
-
# config.default_input_size = 50
|
170
|
-
|
171
197
|
# When false, do not use translations for labels.
|
172
198
|
# config.translate_labels = true
|
173
199
|
|
@@ -176,4 +202,7 @@ SimpleForm.setup do |config|
|
|
176
202
|
|
177
203
|
# Cache SimpleForm inputs discovery
|
178
204
|
# config.cache_discovery = !Rails.env.development?
|
205
|
+
|
206
|
+
# Default class for inputs
|
207
|
+
config.input_class = 'form-control'
|
179
208
|
end
|
@@ -0,0 +1,86 @@
|
|
1
|
+
# https://gist.github.com/tokenvolt/6599141
|
2
|
+
inputs = %w[
|
3
|
+
CollectionSelectInput
|
4
|
+
DateTimeInput
|
5
|
+
FileInput
|
6
|
+
GroupedCollectionSelectInput
|
7
|
+
NumericInput
|
8
|
+
PasswordInput
|
9
|
+
RangeInput
|
10
|
+
StringInput
|
11
|
+
TextInput
|
12
|
+
]
|
13
|
+
|
14
|
+
inputs.each do |input_type|
|
15
|
+
superclass = "SimpleForm::Inputs::#{input_type}".constantize
|
16
|
+
|
17
|
+
new_class = Class.new(superclass) do
|
18
|
+
def input_html_classes
|
19
|
+
super.push('form-control')
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
Object.const_set(input_type, new_class)
|
24
|
+
end
|
25
|
+
|
26
|
+
# Use this setup block to configure all options available in SimpleForm.
|
27
|
+
SimpleForm.setup do |config|
|
28
|
+
|
29
|
+
config.wrappers :bootstrap, tag: 'div', class: 'form-group', error_class: 'has-error',
|
30
|
+
defaults: { input_html: { class: 'default_class' } } do |b|
|
31
|
+
|
32
|
+
b.use :html5
|
33
|
+
b.use :placeholder
|
34
|
+
b.use :label
|
35
|
+
b.wrapper tag: 'div', class: 'col-sm-3' do |ba|
|
36
|
+
ba.use :input
|
37
|
+
end
|
38
|
+
b.use :hint, wrap_with: { tag: 'span', class: 'help-block' }
|
39
|
+
b.use :error, wrap_with: { tag: 'span', class: 'help-block has-error' }
|
40
|
+
end
|
41
|
+
|
42
|
+
config.wrappers :nested, tag: 'div', class: 'form-group', error_class: 'has-error',
|
43
|
+
defaults: { input_html: { class: 'default_class' } } do |b|
|
44
|
+
|
45
|
+
b.use :html5
|
46
|
+
b.use :placeholder
|
47
|
+
b.use :label
|
48
|
+
b.wrapper tag: 'div', class: 'col-lg-10' do |ba|
|
49
|
+
ba.use :input
|
50
|
+
end
|
51
|
+
b.use :hint, wrap_with: { tag: 'span', class: 'help-block' }
|
52
|
+
b.use :error, wrap_with: { tag: 'span', class: 'help-block has-error' }
|
53
|
+
end
|
54
|
+
|
55
|
+
config.wrappers :prepend, tag: 'div', class: "form-group", error_class: 'has-error' do |b|
|
56
|
+
b.use :html5
|
57
|
+
b.use :placeholder
|
58
|
+
b.use :label
|
59
|
+
b.wrapper tag: 'div', class: 'col-sm-4' do |input|
|
60
|
+
input.wrapper tag: 'div', class: 'input-prepend' do |prepend|
|
61
|
+
prepend.use :input
|
62
|
+
end
|
63
|
+
input.use :hint, wrap_with: { tag: 'span', class: 'help-block' }
|
64
|
+
input.use :error, wrap_with: { tag: 'span', class: 'help-inline' }
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
config.wrappers :append, tag: 'div', class: "form-group", error_class: 'has-error' do |b|
|
69
|
+
b.use :html5
|
70
|
+
b.use :placeholder
|
71
|
+
b.use :label
|
72
|
+
b.wrapper tag: 'div', class: 'col-sm-4' do |input|
|
73
|
+
input.wrapper tag: 'div', class: 'input-append' do |append|
|
74
|
+
append.use :input
|
75
|
+
end
|
76
|
+
input.use :hint, wrap_with: { tag: 'span', class: 'help-block' }
|
77
|
+
input.use :error, wrap_with: { tag: 'span', class: 'help-inline' }
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
# Wrappers for forms and inputs using the Twitter Bootstrap toolkit.
|
82
|
+
# Check the Bootstrap docs (http://twitter.github.com/bootstrap)
|
83
|
+
# to learn about the different styles for forms and inputs,
|
84
|
+
# buttons and other elements.
|
85
|
+
config.default_wrapper = :bootstrap
|
86
|
+
end
|
data/lib/handcart/version.rb
CHANGED
@@ -35,7 +35,7 @@ class Master::CompaniesController < MasterController
|
|
35
35
|
|
36
36
|
def destroy
|
37
37
|
@company.destroy
|
38
|
-
redirect_to companies_url, notice: 'Company was successfully
|
38
|
+
redirect_to companies_url, notice: 'Company was successfully removed.'
|
39
39
|
end
|
40
40
|
|
41
41
|
private
|
@@ -0,0 +1,11 @@
|
|
1
|
+
= paginator.render do
|
2
|
+
%ul.pagination
|
3
|
+
= first_page_tag unless current_page.first?
|
4
|
+
= prev_page_tag unless current_page.first?
|
5
|
+
- each_page do |page|
|
6
|
+
- if page.left_outer? || page.right_outer? || page.inside_window?
|
7
|
+
= page_tag page
|
8
|
+
- elsif !page.was_truncated?
|
9
|
+
= gap_tag
|
10
|
+
= next_page_tag unless current_page.last?
|
11
|
+
= last_page_tag unless current_page.last?
|
@@ -1,7 +1,8 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
1
|
+
#navbar-collapse-1.collapse.navbar-collapse
|
2
|
+
%ul.nav.navbar-nav
|
3
|
+
- unless (Handcart.ip_authorization.ip_authorization_strategy == :none)
|
4
|
+
%li{class: (params[:controller] == "ip_addresses") ? "active" : nil}
|
5
|
+
= link_to main_app.ip_addresses_path do
|
6
|
+
%span.glyphicon.glyphicon-screenshot
|
7
|
+
My IP Addresses
|
7
8
|
|
@@ -17,31 +17,33 @@
|
|
17
17
|
= javascript_include_tag "application"
|
18
18
|
|
19
19
|
%body
|
20
|
-
.navbar.navbar-
|
21
|
-
.
|
22
|
-
.
|
23
|
-
%
|
20
|
+
%nav.navbar.navbar-default{role: "navigation"}
|
21
|
+
.container-fluid
|
22
|
+
.navbar-header
|
23
|
+
%button.navbar-toggle{"data-target" => "#navbar-collapse-1", "data-toggle" => "collapse", type: "button"}
|
24
24
|
%span.icon-bar
|
25
25
|
%span.icon-bar
|
26
26
|
%span.icon-bar
|
27
|
-
%a.brand
|
28
|
-
|
27
|
+
%a.navbar-brand{href: subdomain_root_path}
|
28
|
+
%span.glyphicon.glyphicon-home
|
29
|
+
Dummy
|
30
|
+
= render "layouts/navbar"
|
29
31
|
|
30
|
-
.container
|
31
|
-
.row
|
32
|
+
.container
|
33
|
+
.row
|
32
34
|
- if content_for?(:sidebar)
|
33
|
-
.
|
35
|
+
.col-lg-9
|
34
36
|
%div.flash-message
|
35
37
|
= bootstrap_flash
|
36
38
|
- if content_for?(:sub_title)
|
37
39
|
.page-header
|
38
40
|
%h3.sub-title.inline= content_for?(:sub_title) ? yield(:sub_title) : t('.default_sub_title')
|
39
41
|
%div= yield
|
40
|
-
.
|
42
|
+
.col-lg-3
|
41
43
|
.well.sidebar-nav
|
42
44
|
%ul.nav.nav-list= yield(:sidebar)
|
43
45
|
- else
|
44
|
-
.
|
46
|
+
.col-lg-12
|
45
47
|
%div.flash-message
|
46
48
|
= bootstrap_flash
|
47
49
|
- if content_for?(:sub_title)
|
@@ -17,32 +17,33 @@
|
|
17
17
|
= javascript_include_tag "application"
|
18
18
|
|
19
19
|
%body
|
20
|
-
.navbar.navbar-
|
21
|
-
.
|
22
|
-
.
|
23
|
-
%
|
20
|
+
%nav.navbar.navbar-inverse{role: "navigation"}
|
21
|
+
.container-fluid
|
22
|
+
.navbar-header
|
23
|
+
%button.navbar-toggle{"data-target" => "#navbar-collapse-1", "data-toggle" => "collapse", type: "button"}
|
24
24
|
%span.icon-bar
|
25
25
|
%span.icon-bar
|
26
26
|
%span.icon-bar
|
27
|
-
%a.brand
|
27
|
+
%a.navbar-brand{href: master_root_path}
|
28
|
+
%span.glyphicon.glyphicon-home
|
28
29
|
Master Dummy Backend
|
29
|
-
|
30
|
+
= render "layouts/master/navbar"
|
30
31
|
|
31
|
-
.container
|
32
|
-
.row
|
32
|
+
.container
|
33
|
+
.row
|
33
34
|
- if content_for?(:sidebar)
|
34
|
-
.
|
35
|
+
.col-lg-9
|
35
36
|
%div.flash-message
|
36
37
|
= bootstrap_flash
|
37
38
|
- if content_for?(:sub_title)
|
38
39
|
.page-header
|
39
40
|
%h3.sub-title.inline= content_for?(:sub_title) ? yield(:sub_title) : t('.default_sub_title')
|
40
41
|
%div= yield
|
41
|
-
.
|
42
|
+
.col-lg-3
|
42
43
|
.well.sidebar-nav
|
43
44
|
%ul.nav.nav-list= yield(:sidebar)
|
44
45
|
- else
|
45
|
-
.
|
46
|
+
.col-lg-12
|
46
47
|
%div.flash-message
|
47
48
|
= bootstrap_flash
|
48
49
|
- if content_for?(:sub_title)
|
@@ -1,9 +1,11 @@
|
|
1
|
-
|
2
|
-
%
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
1
|
+
#navbar-collapse-1.collapse.navbar-collapse
|
2
|
+
%ul.nav.navbar-nav
|
3
|
+
%li
|
4
|
+
= link_to handcart_path do
|
5
|
+
%span.glyphicon.glyphicon-heart
|
6
|
+
Handcart
|
7
|
+
%li{class: (params[:controller] == "companies") ? "active" : nil}
|
8
|
+
= link_to main_app.companies_path do
|
9
|
+
%span.glyphicon.glyphicon-briefcase
|
10
|
+
Companies
|
11
|
+
|