formtastic 1.2.4 → 3.1.5
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 +7 -0
- data/.gitignore +17 -0
- data/.rspec +2 -0
- data/.travis.yml +46 -0
- data/.yardopts +1 -0
- data/Appraisals +43 -0
- data/CHANGELOG +54 -0
- data/DEPRECATIONS +52 -0
- data/Gemfile +3 -0
- data/README.md +629 -0
- data/RELEASE_PROCESS +6 -0
- data/Rakefile +35 -0
- data/app/assets/stylesheets/formtastic.css +289 -0
- data/app/assets/stylesheets/formtastic_ie6.css +33 -0
- data/app/assets/stylesheets/formtastic_ie7.css +23 -0
- data/formtastic.gemspec +42 -0
- data/gemfiles/rails_3.2.gemfile +9 -0
- data/gemfiles/rails_4.0.4.gemfile +8 -0
- data/gemfiles/rails_4.1.gemfile +8 -0
- data/gemfiles/rails_4.2.gemfile +8 -0
- data/gemfiles/rails_4.gemfile +8 -0
- data/gemfiles/rails_5.0.gemfile +8 -0
- data/gemfiles/rails_edge.gemfile +15 -0
- data/lib/formtastic.rb +40 -1945
- data/lib/formtastic/action_class_finder.rb +18 -0
- data/lib/formtastic/actions.rb +11 -0
- data/lib/formtastic/actions/base.rb +156 -0
- data/lib/formtastic/actions/button_action.rb +67 -0
- data/lib/formtastic/actions/buttonish.rb +17 -0
- data/lib/formtastic/actions/input_action.rb +70 -0
- data/lib/formtastic/actions/link_action.rb +88 -0
- data/lib/formtastic/deprecation.rb +42 -0
- data/lib/formtastic/engine.rb +11 -0
- data/lib/formtastic/form_builder.rb +124 -0
- data/lib/formtastic/helpers.rb +16 -0
- data/lib/formtastic/helpers/action_helper.rb +162 -0
- data/lib/formtastic/helpers/actions_helper.rb +168 -0
- data/lib/formtastic/helpers/enum.rb +13 -0
- data/lib/formtastic/helpers/errors_helper.rb +81 -0
- data/lib/formtastic/helpers/fieldset_wrapper.rb +80 -0
- data/lib/formtastic/helpers/file_column_detection.rb +16 -0
- data/lib/formtastic/helpers/form_helper.rb +203 -0
- data/lib/formtastic/helpers/input_helper.rb +407 -0
- data/lib/formtastic/helpers/inputs_helper.rb +411 -0
- data/lib/formtastic/helpers/reflection.rb +37 -0
- data/lib/formtastic/html_attributes.rb +32 -0
- data/lib/formtastic/i18n.rb +4 -2
- data/lib/formtastic/input_class_finder.rb +18 -0
- data/lib/formtastic/inputs.rb +39 -0
- data/lib/formtastic/inputs/base.rb +76 -0
- data/lib/formtastic/inputs/base/associations.rb +31 -0
- data/lib/formtastic/inputs/base/choices.rb +108 -0
- data/lib/formtastic/inputs/base/collections.rb +159 -0
- data/lib/formtastic/inputs/base/database.rb +22 -0
- data/lib/formtastic/inputs/base/datetime_pickerish.rb +85 -0
- data/lib/formtastic/inputs/base/errors.rb +58 -0
- data/lib/formtastic/inputs/base/fileish.rb +23 -0
- data/lib/formtastic/inputs/base/hints.rb +31 -0
- data/lib/formtastic/inputs/base/html.rb +53 -0
- data/lib/formtastic/inputs/base/labelling.rb +52 -0
- data/lib/formtastic/inputs/base/naming.rb +42 -0
- data/lib/formtastic/inputs/base/numeric.rb +50 -0
- data/lib/formtastic/inputs/base/options.rb +17 -0
- data/lib/formtastic/inputs/base/placeholder.rb +17 -0
- data/lib/formtastic/inputs/base/stringish.rb +38 -0
- data/lib/formtastic/inputs/base/timeish.rb +241 -0
- data/lib/formtastic/inputs/base/validations.rb +215 -0
- data/lib/formtastic/inputs/base/wrapping.rb +50 -0
- data/lib/formtastic/inputs/boolean_input.rb +118 -0
- data/lib/formtastic/inputs/check_boxes_input.rb +197 -0
- data/lib/formtastic/inputs/color_input.rb +42 -0
- data/lib/formtastic/inputs/country_input.rb +86 -0
- data/lib/formtastic/inputs/datalist_input.rb +41 -0
- data/lib/formtastic/inputs/date_picker_input.rb +93 -0
- data/lib/formtastic/inputs/date_select_input.rb +34 -0
- data/lib/formtastic/inputs/datetime_picker_input.rb +103 -0
- data/lib/formtastic/inputs/datetime_select_input.rb +12 -0
- data/lib/formtastic/inputs/email_input.rb +41 -0
- data/lib/formtastic/inputs/file_input.rb +42 -0
- data/lib/formtastic/inputs/hidden_input.rb +62 -0
- data/lib/formtastic/inputs/number_input.rb +88 -0
- data/lib/formtastic/inputs/password_input.rb +41 -0
- data/lib/formtastic/inputs/phone_input.rb +42 -0
- data/lib/formtastic/inputs/radio_input.rb +163 -0
- data/lib/formtastic/inputs/range_input.rb +95 -0
- data/lib/formtastic/inputs/search_input.rb +41 -0
- data/lib/formtastic/inputs/select_input.rb +235 -0
- data/lib/formtastic/inputs/string_input.rb +36 -0
- data/lib/formtastic/inputs/text_input.rb +48 -0
- data/lib/formtastic/inputs/time_picker_input.rb +99 -0
- data/lib/formtastic/inputs/time_select_input.rb +38 -0
- data/lib/formtastic/inputs/time_zone_input.rb +58 -0
- data/lib/formtastic/inputs/url_input.rb +41 -0
- data/lib/formtastic/localized_string.rb +17 -0
- data/lib/formtastic/localizer.rb +152 -0
- data/lib/formtastic/namespaced_class_finder.rb +99 -0
- data/lib/formtastic/util.rb +35 -16
- data/lib/formtastic/version.rb +3 -0
- data/lib/generators/formtastic/form/form_generator.rb +64 -37
- data/lib/generators/formtastic/input/input_generator.rb +46 -0
- data/lib/generators/formtastic/install/install_generator.rb +13 -5
- data/lib/generators/templates/_form.html.erb +10 -4
- data/lib/generators/templates/_form.html.haml +8 -4
- data/lib/generators/templates/_form.html.slim +8 -0
- data/lib/generators/templates/formtastic.rb +77 -44
- data/lib/generators/templates/input.rb +19 -0
- data/lib/locale/en.yml +3 -0
- data/sample/basic_inputs.html +224 -0
- data/sample/config.ru +69 -0
- data/sample/index.html +14 -0
- data/spec/action_class_finder_spec.rb +12 -0
- data/spec/actions/button_action_spec.rb +63 -0
- data/spec/actions/generic_action_spec.rb +521 -0
- data/spec/actions/input_action_spec.rb +59 -0
- data/spec/actions/link_action_spec.rb +92 -0
- data/spec/builder/custom_builder_spec.rb +116 -0
- data/spec/builder/error_proc_spec.rb +27 -0
- data/spec/builder/semantic_fields_for_spec.rb +142 -0
- data/spec/fast_spec_helper.rb +12 -0
- data/spec/generators/formtastic/form/form_generator_spec.rb +131 -0
- data/spec/generators/formtastic/input/input_generator_spec.rb +124 -0
- data/spec/generators/formtastic/install/install_generator_spec.rb +47 -0
- data/spec/helpers/action_helper_spec.rb +19 -0
- data/spec/helpers/actions_helper_spec.rb +143 -0
- data/spec/helpers/form_helper_spec.rb +218 -0
- data/spec/helpers/input_helper_spec.rb +6 -0
- data/spec/helpers/inputs_helper_spec.rb +655 -0
- data/spec/helpers/namespaced_action_helper_spec.rb +43 -0
- data/spec/helpers/namespaced_input_helper_spec.rb +36 -0
- data/spec/helpers/reflection_helper_spec.rb +32 -0
- data/spec/helpers/semantic_errors_helper_spec.rb +112 -0
- data/spec/i18n_spec.rb +210 -0
- data/spec/input_class_finder_spec.rb +10 -0
- data/spec/inputs/base/collections_spec.rb +76 -0
- data/spec/inputs/base/validations_spec.rb +342 -0
- data/spec/inputs/boolean_input_spec.rb +254 -0
- data/spec/inputs/check_boxes_input_spec.rb +546 -0
- data/spec/inputs/color_input_spec.rb +97 -0
- data/spec/inputs/country_input_spec.rb +133 -0
- data/spec/inputs/custom_input_spec.rb +55 -0
- data/spec/inputs/datalist_input_spec.rb +61 -0
- data/spec/inputs/date_picker_input_spec.rb +449 -0
- data/spec/inputs/date_select_input_spec.rb +235 -0
- data/spec/inputs/datetime_picker_input_spec.rb +490 -0
- data/spec/inputs/datetime_select_input_spec.rb +193 -0
- data/spec/inputs/email_input_spec.rb +85 -0
- data/spec/inputs/file_input_spec.rb +89 -0
- data/spec/inputs/hidden_input_spec.rb +135 -0
- data/spec/inputs/include_blank_spec.rb +78 -0
- data/spec/inputs/label_spec.rb +149 -0
- data/spec/inputs/number_input_spec.rb +815 -0
- data/spec/inputs/password_input_spec.rb +99 -0
- data/spec/inputs/phone_input_spec.rb +85 -0
- data/spec/inputs/placeholder_spec.rb +71 -0
- data/spec/inputs/radio_input_spec.rb +328 -0
- data/spec/inputs/range_input_spec.rb +505 -0
- data/spec/inputs/readonly_spec.rb +50 -0
- data/spec/inputs/search_input_spec.rb +84 -0
- data/spec/inputs/select_input_spec.rb +615 -0
- data/spec/inputs/string_input_spec.rb +260 -0
- data/spec/inputs/text_input_spec.rb +187 -0
- data/spec/inputs/time_picker_input_spec.rb +455 -0
- data/spec/inputs/time_select_input_spec.rb +248 -0
- data/spec/inputs/time_zone_input_spec.rb +143 -0
- data/spec/inputs/url_input_spec.rb +85 -0
- data/spec/inputs/with_options_spec.rb +43 -0
- data/spec/localizer_spec.rb +130 -0
- data/spec/namespaced_class_finder_spec.rb +79 -0
- data/spec/spec.opts +2 -0
- data/spec/spec_helper.rb +525 -0
- data/spec/support/custom_macros.rb +564 -0
- data/spec/support/deprecation.rb +6 -0
- data/spec/support/shared_examples.rb +1313 -0
- data/spec/support/specialized_class_finder_shared_example.rb +27 -0
- data/spec/support/test_environment.rb +31 -0
- data/spec/util_spec.rb +66 -0
- metadata +434 -161
- data/README.textile +0 -682
- data/generators/form/USAGE +0 -16
- data/generators/form/form_generator.rb +0 -111
- data/generators/formtastic/formtastic_generator.rb +0 -26
- data/init.rb +0 -5
- data/lib/formtastic/layout_helper.rb +0 -12
- data/lib/formtastic/railtie.rb +0 -14
- data/lib/generators/templates/formtastic.css +0 -145
- data/lib/generators/templates/formtastic_changes.css +0 -14
- data/lib/generators/templates/rails2/_form.html.erb +0 -5
- data/lib/generators/templates/rails2/_form.html.haml +0 -4
- data/rails/init.rb +0 -2
data/RELEASE_PROCESS
ADDED
data/Rakefile
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
require 'bundler/setup'
|
|
3
|
+
require 'appraisal'
|
|
4
|
+
require 'yard'
|
|
5
|
+
require 'rspec/core/rake_task'
|
|
6
|
+
|
|
7
|
+
Bundler::GemHelper.install_tasks
|
|
8
|
+
|
|
9
|
+
desc 'Default: run unit specs.'
|
|
10
|
+
if !ENV["APPRAISAL_INITIALIZED"] && !ENV["TRAVIS"]
|
|
11
|
+
task :default => :appraisal
|
|
12
|
+
else
|
|
13
|
+
task :default => :spec
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
desc 'Generate documentation for the formtastic plugin.'
|
|
17
|
+
YARD::Rake::YardocTask.new(:yard) do |t|
|
|
18
|
+
|
|
19
|
+
end
|
|
20
|
+
task doc: :yard
|
|
21
|
+
|
|
22
|
+
desc 'Test the formtastic plugin.'
|
|
23
|
+
RSpec::Core::RakeTask.new('spec') do |t|
|
|
24
|
+
t.pattern = FileList['spec/**/*_spec.rb']
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
desc 'Test the formtastic inputs.'
|
|
28
|
+
RSpec::Core::RakeTask.new('spec:inputs') do |t|
|
|
29
|
+
t.pattern = FileList['spec/inputs/*_spec.rb']
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
desc 'Test the formtastic plugin with specdoc formatting and colors'
|
|
33
|
+
RSpec::Core::RakeTask.new('specdoc') do |t|
|
|
34
|
+
t.pattern = FileList['spec/**/*_spec.rb']
|
|
35
|
+
end
|
|
@@ -0,0 +1,289 @@
|
|
|
1
|
+
/* -------------------------------------------------------------------------------------------------
|
|
2
|
+
|
|
3
|
+
It's *strongly* suggested that you don't modify this file. Instead, load a new stylesheet after
|
|
4
|
+
this one in your layouts (eg formtastic_changes.css) and override the styles to suit your needs.
|
|
5
|
+
This will allow you to update formtastic.css with new releases without clobbering your own changes.
|
|
6
|
+
|
|
7
|
+
This stylesheet forms part of the Formtastic Rails Plugin
|
|
8
|
+
(c) 2008-2011 Justin French
|
|
9
|
+
|
|
10
|
+
--------------------------------------------------------------------------------------------------*/
|
|
11
|
+
|
|
12
|
+
/* NORMALIZE AND RESET - obviously inspired by Yahoo's reset.css, but scoped to just .formtastic
|
|
13
|
+
--------------------------------------------------------------------------------------------------*/
|
|
14
|
+
.formtastic,
|
|
15
|
+
.formtastic ul,
|
|
16
|
+
.formtastic ol,
|
|
17
|
+
.formtastic li,
|
|
18
|
+
.formtastic fieldset,
|
|
19
|
+
.formtastic legend,
|
|
20
|
+
.formtastic input,
|
|
21
|
+
.formtastic button,
|
|
22
|
+
.formtastic textarea,
|
|
23
|
+
.formtastic select,
|
|
24
|
+
.formtastic p {
|
|
25
|
+
margin:0;
|
|
26
|
+
padding:0;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.formtastic fieldset {
|
|
30
|
+
border:0;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.formtastic em,
|
|
34
|
+
.formtastic strong {
|
|
35
|
+
font-style:normal;
|
|
36
|
+
font-weight:normal;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.formtastic ol,
|
|
40
|
+
.formtastic ul {
|
|
41
|
+
list-style:none;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.formtastic abbr,
|
|
45
|
+
.formtastic acronym {
|
|
46
|
+
border:0;
|
|
47
|
+
font-variant:normal;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.formtastic input,
|
|
51
|
+
.formtastic button,
|
|
52
|
+
.formtastic textarea {
|
|
53
|
+
font-family:sans-serif;
|
|
54
|
+
font-size:inherit;
|
|
55
|
+
font-weight:inherit;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.formtastic input,
|
|
59
|
+
.formtastic textarea,
|
|
60
|
+
.formtastic select {
|
|
61
|
+
font-size:100%;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.formtastic legend {
|
|
65
|
+
white-space:normal;
|
|
66
|
+
color:#000;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
/* SEMANTIC ERRORS
|
|
71
|
+
--------------------------------------------------------------------------------------------------*/
|
|
72
|
+
.formtastic .errors {
|
|
73
|
+
color:#cc0000;
|
|
74
|
+
margin:0.5em 0 1.5em 25%;
|
|
75
|
+
list-style:square;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.formtastic .errors li {
|
|
79
|
+
padding:0;
|
|
80
|
+
border:none;
|
|
81
|
+
display:list-item;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
/* BUTTONS & ACTIONS
|
|
86
|
+
--------------------------------------------------------------------------------------------------*/
|
|
87
|
+
.formtastic .buttons,
|
|
88
|
+
.formtastic .actions {
|
|
89
|
+
overflow:hidden; /* clear containing floats */
|
|
90
|
+
padding-left:25%;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.formtastic .button,
|
|
94
|
+
.formtastic .action {
|
|
95
|
+
float:left;
|
|
96
|
+
padding-right:0.5em;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.formtastic .button_action button {
|
|
100
|
+
padding:3px 8px;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
.formtastic .link_action a {
|
|
104
|
+
display:block;
|
|
105
|
+
padding:3px 0;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
/* INPUTS
|
|
110
|
+
--------------------------------------------------------------------------------------------------*/
|
|
111
|
+
.formtastic .inputs {
|
|
112
|
+
overflow:hidden; /* clear containing floats */
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.formtastic .input {
|
|
116
|
+
overflow:hidden; /* clear containing floats */
|
|
117
|
+
padding:0.5em 0; /* padding and negative margin juggling is for Firefox */
|
|
118
|
+
margin-top:-0.5em;
|
|
119
|
+
margin-bottom:1em;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
/* LEFT ALIGNED LABELS
|
|
124
|
+
--------------------------------------------------------------------------------------------------*/
|
|
125
|
+
.formtastic .input .label {
|
|
126
|
+
display:block;
|
|
127
|
+
width:25%;
|
|
128
|
+
float:left;
|
|
129
|
+
padding-top:.2em;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
.formtastic .fragments .label,
|
|
133
|
+
.formtastic .choices .label {
|
|
134
|
+
position:absolute;
|
|
135
|
+
width:95%;
|
|
136
|
+
left:0px;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
.formtastic .fragments .label label,
|
|
140
|
+
.formtastic .choices .label label {
|
|
141
|
+
position:absolute;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
/* NESTED FIELDSETS AND LEGENDS (radio, check boxes and date/time inputs use nested fieldsets)
|
|
145
|
+
--------------------------------------------------------------------------------------------------*/
|
|
146
|
+
.formtastic .choices {
|
|
147
|
+
position:relative;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
.formtastic .choices-group {
|
|
151
|
+
float:left;
|
|
152
|
+
width:74%;
|
|
153
|
+
margin:0;
|
|
154
|
+
padding:0 0 0 25%;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
.formtastic .choice {
|
|
158
|
+
padding:0;
|
|
159
|
+
border:0;
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
/* INLINE HINTS
|
|
164
|
+
--------------------------------------------------------------------------------------------------*/
|
|
165
|
+
.formtastic .input .inline-hints {
|
|
166
|
+
color:#666;
|
|
167
|
+
margin:0.5em 0 0 25%;
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
/* INLINE ERRORS
|
|
172
|
+
--------------------------------------------------------------------------------------------------*/
|
|
173
|
+
.formtastic .inline-errors {
|
|
174
|
+
color:#cc0000;
|
|
175
|
+
margin:0.5em 0 0 25%;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
.formtastic .errors {
|
|
179
|
+
color:#cc0000;
|
|
180
|
+
margin:0.5em 0 0 25%;
|
|
181
|
+
list-style:square;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
.formtastic .errors li {
|
|
185
|
+
padding:0;
|
|
186
|
+
border:none;
|
|
187
|
+
display:list-item;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
/* STRING, NUMERIC, PASSWORD, EMAIL, URL, PHONE, SEARCH (ETC) OVERRIDES
|
|
192
|
+
--------------------------------------------------------------------------------------------------*/
|
|
193
|
+
.formtastic .stringish input {
|
|
194
|
+
width:72%;
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
.formtastic .stringish input[size],
|
|
198
|
+
.formtastic .stringish input[max] {
|
|
199
|
+
width:auto;
|
|
200
|
+
max-width:72%;
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
/* TEXTAREA OVERRIDES
|
|
205
|
+
--------------------------------------------------------------------------------------------------*/
|
|
206
|
+
.formtastic .text textarea {
|
|
207
|
+
width:72%;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
.formtastic .text textarea[cols] {
|
|
211
|
+
width:auto;
|
|
212
|
+
max-width:72%;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
|
|
216
|
+
/* HIDDEN OVERRIDES
|
|
217
|
+
--------------------------------------------------------------------------------------------------*/
|
|
218
|
+
.formtastic .hidden {
|
|
219
|
+
display:none;
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
/* BOOLEAN LABELS
|
|
224
|
+
--------------------------------------------------------------------------------------------------*/
|
|
225
|
+
.formtastic .boolean label {
|
|
226
|
+
padding-left:25%;
|
|
227
|
+
display:block;
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
|
|
231
|
+
/* CHOICE GROUPS
|
|
232
|
+
--------------------------------------------------------------------------------------------------*/
|
|
233
|
+
.formtastic .choices-group {
|
|
234
|
+
margin-bottom:-0.5em;
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
.formtastic .choice {
|
|
238
|
+
margin:0.1em 0 0.5em 0;
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
.formtastic .choice label {
|
|
242
|
+
float:none;
|
|
243
|
+
width:100%;
|
|
244
|
+
line-height:100%;
|
|
245
|
+
padding-top:0;
|
|
246
|
+
margin-bottom:0.6em;
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
|
|
250
|
+
/* ADJUSTMENTS FOR INPUTS INSIDE LABELS (boolean input, radio input, check_boxes input)
|
|
251
|
+
--------------------------------------------------------------------------------------------------*/
|
|
252
|
+
.formtastic .choice label input,
|
|
253
|
+
.formtastic .boolean label input {
|
|
254
|
+
margin:0 0.3em 0 0.1em;
|
|
255
|
+
line-height:100%;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
|
|
259
|
+
/* FRAGMENTED INPUTS (DATE/TIME/DATETIME)
|
|
260
|
+
--------------------------------------------------------------------------------------------------*/
|
|
261
|
+
.formtastic .fragments {
|
|
262
|
+
position:relative;
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
.formtastic .fragments-group {
|
|
266
|
+
float:left;
|
|
267
|
+
width:74%;
|
|
268
|
+
margin:0;
|
|
269
|
+
padding:0 0 0 25%;
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
.formtastic .fragment {
|
|
273
|
+
float:left;
|
|
274
|
+
width:auto;
|
|
275
|
+
margin:0 .3em 0 0;
|
|
276
|
+
padding:0;
|
|
277
|
+
border:0;
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
.formtastic .fragment label {
|
|
281
|
+
display:none;
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
.formtastic .fragment label input {
|
|
285
|
+
display:inline;
|
|
286
|
+
margin:0;
|
|
287
|
+
padding:0;
|
|
288
|
+
}
|
|
289
|
+
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/* additional stylesheets only for IE6, if you wish to support it */
|
|
2
|
+
|
|
3
|
+
/* legend labels apper to have a left margin or padding I couldn't get rid of cleanly in main stylesheet */
|
|
4
|
+
.formtastic .input fieldset legend.label {
|
|
5
|
+
margin-left:-7px;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
/* checkbox and radio inputs appear to have a margin around them that I couldn't remove in main stylesheet */
|
|
9
|
+
.formtastic .choice label input,
|
|
10
|
+
.formtastic .boolean label input {
|
|
11
|
+
position:relative;
|
|
12
|
+
left:-1px;
|
|
13
|
+
size:15px;
|
|
14
|
+
margin-left:0;
|
|
15
|
+
margin-right:0;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/* inline hints and errors appear a few pixel too far over to the left */
|
|
19
|
+
.formtastic .inline-hints,
|
|
20
|
+
.formtastic .inline-errors {
|
|
21
|
+
padding-left:3px;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/* fragment (eg year, month, day) appear a few pixels too far to the left*/
|
|
25
|
+
.formtastic .fragment {
|
|
26
|
+
padding-left:3px;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.formtastic .buttons,
|
|
30
|
+
.formtastic .inputs,
|
|
31
|
+
.formtastic .input {
|
|
32
|
+
zoom:1;
|
|
33
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/* additional stylesheets only for IE7, if you wish to support it */
|
|
2
|
+
|
|
3
|
+
/* legend labels apper to have a left margin or padding I couldn't get rid of cleanly in main stylesheet */
|
|
4
|
+
.formtastic .input fieldset legend.label {
|
|
5
|
+
margin-left:-7px;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
/* checkbox and radio inputs appear to have a margin around them that I couldn't remove in main stylesheet */
|
|
9
|
+
.formtastic .choice label input,
|
|
10
|
+
.formtastic .boolean label input {
|
|
11
|
+
position:relative;
|
|
12
|
+
left:-4px;
|
|
13
|
+
right:-4px;
|
|
14
|
+
size:15px;
|
|
15
|
+
margin-left:0;
|
|
16
|
+
margin-right:0;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.formtastic .buttons,
|
|
20
|
+
.formtastic .inputs,
|
|
21
|
+
.formtastic .input {
|
|
22
|
+
zoom:1;
|
|
23
|
+
}
|
data/formtastic.gemspec
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
$:.push File.expand_path("../lib", __FILE__)
|
|
3
|
+
require "formtastic/version"
|
|
4
|
+
|
|
5
|
+
Gem::Specification.new do |s|
|
|
6
|
+
s.name = %q{formtastic}
|
|
7
|
+
s.version = Formtastic::VERSION
|
|
8
|
+
s.platform = Gem::Platform::RUBY
|
|
9
|
+
s.authors = [%q{Justin French}]
|
|
10
|
+
s.email = [%q{justin@indent.com.au}]
|
|
11
|
+
s.homepage = %q{http://github.com/justinfrench/formtastic}
|
|
12
|
+
s.summary = %q{A Rails form builder plugin/gem with semantically rich and accessible markup}
|
|
13
|
+
s.description = %q{A Rails form builder plugin/gem with semantically rich and accessible markup}
|
|
14
|
+
s.license = 'MIT'
|
|
15
|
+
|
|
16
|
+
s.files = `git ls-files`.split("\n")
|
|
17
|
+
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
|
18
|
+
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
|
19
|
+
s.require_paths = ["lib"]
|
|
20
|
+
|
|
21
|
+
s.rdoc_options = ["--charset=UTF-8"]
|
|
22
|
+
s.extra_rdoc_files = ["README.md"]
|
|
23
|
+
|
|
24
|
+
s.required_ruby_version = '>= 1.9.3'
|
|
25
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
|
26
|
+
s.rubygems_version = %q{1.3.6}
|
|
27
|
+
|
|
28
|
+
s.add_dependency(%q<actionpack>, [">= 3.2.13"])
|
|
29
|
+
|
|
30
|
+
s.add_development_dependency(%q<nokogiri>)
|
|
31
|
+
s.add_development_dependency(%q<rspec-rails>, ["~> 3.3.2"])
|
|
32
|
+
s.add_development_dependency(%q<rspec_tag_matchers>, ["~> 1.0"])
|
|
33
|
+
s.add_development_dependency(%q<hpricot>, ["~> 0.8.3"])
|
|
34
|
+
s.add_development_dependency(%q<RedCloth>, ["~> 4.2"]) # for YARD Textile formatting
|
|
35
|
+
s.add_development_dependency(%q<yard>, ["~> 0.8"])
|
|
36
|
+
s.add_development_dependency(%q<colored>, ["~> 1.2"])
|
|
37
|
+
s.add_development_dependency(%q<tzinfo>)
|
|
38
|
+
s.add_development_dependency(%q<ammeter>, ["~> 1.1.3"])
|
|
39
|
+
s.add_development_dependency(%q<appraisal>, ["~> 2.1"])
|
|
40
|
+
s.add_development_dependency(%q<rake>, ["< 12"])
|
|
41
|
+
s.add_development_dependency(%q<activemodel>, [">= 3.2.13"])
|
|
42
|
+
end
|