mega-safe-tool 0.0.1
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/formtastic-6.0.0/Appraisals +23 -0
- data/formtastic-6.0.0/CONTRIBUTING.md +27 -0
- data/formtastic-6.0.0/Gemfile +8 -0
- data/formtastic-6.0.0/MIT-LICENSE +20 -0
- data/formtastic-6.0.0/README.md +600 -0
- data/formtastic-6.0.0/RELEASE_PROCESS +7 -0
- data/formtastic-6.0.0/Rakefile +54 -0
- data/formtastic-6.0.0/bin/appraisal +8 -0
- data/formtastic-6.0.0/formtastic.gemspec +45 -0
- data/formtastic-6.0.0/gemfiles/rails_72.gemfile +9 -0
- data/formtastic-6.0.0/gemfiles/rails_80.gemfile +9 -0
- data/formtastic-6.0.0/gemfiles/rails_81.gemfile +9 -0
- data/formtastic-6.0.0/gemfiles/rails_edge.gemfile +9 -0
- data/formtastic-6.0.0/lib/formtastic/action_class_finder.rb +19 -0
- data/formtastic-6.0.0/lib/formtastic/actions/base.rb +157 -0
- data/formtastic-6.0.0/lib/formtastic/actions/button_action.rb +68 -0
- data/formtastic-6.0.0/lib/formtastic/actions/buttonish.rb +18 -0
- data/formtastic-6.0.0/lib/formtastic/actions/input_action.rb +71 -0
- data/formtastic-6.0.0/lib/formtastic/actions/link_action.rb +89 -0
- data/formtastic-6.0.0/lib/formtastic/actions.rb +15 -0
- data/formtastic-6.0.0/lib/formtastic/deprecation.rb +6 -0
- data/formtastic-6.0.0/lib/formtastic/form_builder.rb +109 -0
- data/formtastic-6.0.0/lib/formtastic/helpers/action_helper.rb +115 -0
- data/formtastic-6.0.0/lib/formtastic/helpers/actions_helper.rb +169 -0
- data/formtastic-6.0.0/lib/formtastic/helpers/enum.rb +14 -0
- data/formtastic-6.0.0/lib/formtastic/helpers/errors_helper.rb +139 -0
- data/formtastic-6.0.0/lib/formtastic/helpers/fieldset_wrapper.rb +85 -0
- data/formtastic-6.0.0/lib/formtastic/helpers/file_column_detection.rb +17 -0
- data/formtastic-6.0.0/lib/formtastic/helpers/form_helper.rb +204 -0
- data/formtastic-6.0.0/lib/formtastic/helpers/input_helper.rb +349 -0
- data/formtastic-6.0.0/lib/formtastic/helpers/inputs_helper.rb +421 -0
- data/formtastic-6.0.0/lib/formtastic/helpers/reflection.rb +38 -0
- data/formtastic-6.0.0/lib/formtastic/helpers.rb +16 -0
- data/formtastic-6.0.0/lib/formtastic/html_attributes.rb +33 -0
- data/formtastic-6.0.0/lib/formtastic/i18n.rb +33 -0
- data/formtastic-6.0.0/lib/formtastic/input_class_finder.rb +19 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/aria.rb +26 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/associations.rb +32 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/choices.rb +109 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/collections.rb +158 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/database.rb +20 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/datetime_pickerish.rb +86 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/errors.rb +59 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/fileish.rb +24 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/hints.rb +32 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/html.rb +54 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/labelling.rb +53 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/naming.rb +43 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/numeric.rb +51 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/options.rb +18 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/placeholder.rb +18 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/stringish.rb +39 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/timeish.rb +246 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/validations.rb +250 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base/wrapping.rb +51 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/base.rb +79 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/boolean_input.rb +119 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/check_boxes_input.rb +198 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/color_input.rb +42 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/country_input.rb +90 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/datalist_input.rb +42 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/date_picker_input.rb +94 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/date_select_input.rb +35 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/datetime_picker_input.rb +104 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/datetime_select_input.rb +13 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/email_input.rb +42 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/file_input.rb +43 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/hidden_input.rb +63 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/number_input.rb +89 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/password_input.rb +42 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/phone_input.rb +43 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/radio_input.rb +164 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/range_input.rb +96 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/search_input.rb +42 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/select_input.rb +236 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/string_input.rb +37 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/text_input.rb +49 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/time_picker_input.rb +100 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/time_select_input.rb +39 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/time_zone_input.rb +59 -0
- data/formtastic-6.0.0/lib/formtastic/inputs/url_input.rb +42 -0
- data/formtastic-6.0.0/lib/formtastic/inputs.rb +43 -0
- data/formtastic-6.0.0/lib/formtastic/localized_string.rb +18 -0
- data/formtastic-6.0.0/lib/formtastic/localizer.rb +151 -0
- data/formtastic-6.0.0/lib/formtastic/namespaced_class_finder.rb +98 -0
- data/formtastic-6.0.0/lib/formtastic/version.rb +4 -0
- data/formtastic-6.0.0/lib/formtastic.rb +48 -0
- data/formtastic-6.0.0/lib/generators/formtastic/form/form_generator.rb +111 -0
- data/formtastic-6.0.0/lib/generators/formtastic/input/input_generator.rb +47 -0
- data/formtastic-6.0.0/lib/generators/formtastic/install/install_generator.rb +23 -0
- data/formtastic-6.0.0/lib/generators/formtastic/stylesheets/stylesheets_generator.rb +15 -0
- data/formtastic-6.0.0/lib/generators/templates/_form.html.erb +11 -0
- data/formtastic-6.0.0/lib/generators/templates/_form.html.haml +8 -0
- data/formtastic-6.0.0/lib/generators/templates/_form.html.slim +8 -0
- data/formtastic-6.0.0/lib/generators/templates/formtastic.css +289 -0
- data/formtastic-6.0.0/lib/generators/templates/formtastic.rb +118 -0
- data/formtastic-6.0.0/lib/generators/templates/input.rb +19 -0
- data/formtastic-6.0.0/lib/locale/en.yml +10 -0
- data/formtastic-6.0.0/sample/basic_inputs.html +224 -0
- data/formtastic-6.0.0/sample/config.ru +69 -0
- data/formtastic-6.0.0/sample/index.html +14 -0
- data/formtastic-6.0.0/script/integration-template.rb +76 -0
- data/formtastic-6.0.0/script/integration.sh +32 -0
- data/formtastic-6.0.0/spec/action_class_finder_spec.rb +12 -0
- data/formtastic-6.0.0/spec/actions/button_action_spec.rb +63 -0
- data/formtastic-6.0.0/spec/actions/generic_action_spec.rb +521 -0
- data/formtastic-6.0.0/spec/actions/input_action_spec.rb +59 -0
- data/formtastic-6.0.0/spec/actions/link_action_spec.rb +92 -0
- data/formtastic-6.0.0/spec/builder/custom_builder_spec.rb +132 -0
- data/formtastic-6.0.0/spec/builder/error_proc_spec.rb +27 -0
- data/formtastic-6.0.0/spec/builder/semantic_fields_for_spec.rb +213 -0
- data/formtastic-6.0.0/spec/fast_spec_helper.rb +12 -0
- data/formtastic-6.0.0/spec/generators/formtastic/form/form_generator_spec.rb +132 -0
- data/formtastic-6.0.0/spec/generators/formtastic/input/input_generator_spec.rb +125 -0
- data/formtastic-6.0.0/spec/generators/formtastic/install/install_generator_spec.rb +48 -0
- data/formtastic-6.0.0/spec/generators/formtastic/stylesheets/stylesheets_generator_spec.rb +22 -0
- data/formtastic-6.0.0/spec/helpers/action_helper_spec.rb +338 -0
- data/formtastic-6.0.0/spec/helpers/actions_helper_spec.rb +143 -0
- data/formtastic-6.0.0/spec/helpers/form_helper_spec.rb +224 -0
- data/formtastic-6.0.0/spec/helpers/input_helper_spec.rb +991 -0
- data/formtastic-6.0.0/spec/helpers/inputs_helper_spec.rb +669 -0
- data/formtastic-6.0.0/spec/helpers/reflection_helper_spec.rb +32 -0
- data/formtastic-6.0.0/spec/helpers/semantic_errors_helper_spec.rb +220 -0
- data/formtastic-6.0.0/spec/i18n_spec.rb +210 -0
- data/formtastic-6.0.0/spec/input_class_finder_spec.rb +10 -0
- data/formtastic-6.0.0/spec/inputs/base/collections_spec.rb +119 -0
- data/formtastic-6.0.0/spec/inputs/base/validations_spec.rb +481 -0
- data/formtastic-6.0.0/spec/inputs/boolean_input_spec.rb +254 -0
- data/formtastic-6.0.0/spec/inputs/check_boxes_input_spec.rb +547 -0
- data/formtastic-6.0.0/spec/inputs/color_input_spec.rb +85 -0
- data/formtastic-6.0.0/spec/inputs/country_input_spec.rb +133 -0
- data/formtastic-6.0.0/spec/inputs/custom_input_spec.rb +51 -0
- data/formtastic-6.0.0/spec/inputs/datalist_input_spec.rb +61 -0
- data/formtastic-6.0.0/spec/inputs/date_picker_input_spec.rb +449 -0
- data/formtastic-6.0.0/spec/inputs/date_select_input_spec.rb +249 -0
- data/formtastic-6.0.0/spec/inputs/datetime_picker_input_spec.rb +490 -0
- data/formtastic-6.0.0/spec/inputs/datetime_select_input_spec.rb +209 -0
- data/formtastic-6.0.0/spec/inputs/email_input_spec.rb +85 -0
- data/formtastic-6.0.0/spec/inputs/file_input_spec.rb +89 -0
- data/formtastic-6.0.0/spec/inputs/hidden_input_spec.rb +135 -0
- data/formtastic-6.0.0/spec/inputs/include_blank_spec.rb +78 -0
- data/formtastic-6.0.0/spec/inputs/label_spec.rb +181 -0
- data/formtastic-6.0.0/spec/inputs/number_input_spec.rb +815 -0
- data/formtastic-6.0.0/spec/inputs/password_input_spec.rb +99 -0
- data/formtastic-6.0.0/spec/inputs/phone_input_spec.rb +85 -0
- data/formtastic-6.0.0/spec/inputs/placeholder_spec.rb +71 -0
- data/formtastic-6.0.0/spec/inputs/radio_input_spec.rb +326 -0
- data/formtastic-6.0.0/spec/inputs/range_input_spec.rb +505 -0
- data/formtastic-6.0.0/spec/inputs/readonly_spec.rb +50 -0
- data/formtastic-6.0.0/spec/inputs/search_input_spec.rb +84 -0
- data/formtastic-6.0.0/spec/inputs/select_input_spec.rb +661 -0
- data/formtastic-6.0.0/spec/inputs/string_input_spec.rb +326 -0
- data/formtastic-6.0.0/spec/inputs/text_input_spec.rb +187 -0
- data/formtastic-6.0.0/spec/inputs/time_picker_input_spec.rb +455 -0
- data/formtastic-6.0.0/spec/inputs/time_select_input_spec.rb +261 -0
- data/formtastic-6.0.0/spec/inputs/time_zone_input_spec.rb +143 -0
- data/formtastic-6.0.0/spec/inputs/url_input_spec.rb +85 -0
- data/formtastic-6.0.0/spec/inputs/with_options_spec.rb +43 -0
- data/formtastic-6.0.0/spec/localizer_spec.rb +130 -0
- data/formtastic-6.0.0/spec/namespaced_class_finder_spec.rb +90 -0
- data/formtastic-6.0.0/spec/schema.rb +22 -0
- data/formtastic-6.0.0/spec/spec.opts +2 -0
- data/formtastic-6.0.0/spec/spec_helper.rb +466 -0
- data/formtastic-6.0.0/spec/support/custom_macros.rb +570 -0
- data/formtastic-6.0.0/spec/support/deprecation.rb +7 -0
- data/formtastic-6.0.0/spec/support/shared_examples.rb +13 -0
- data/formtastic-6.0.0/spec/support/specialized_class_finder_shared_example.rb +27 -0
- data/formtastic-6.0.0/spec/support/test_environment.rb +46 -0
- data/mega-safe-tool.gemspec +11 -0
- metadata +209 -0
|
@@ -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 gem
|
|
8
|
+
(c) 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
|
+
margin-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,118 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Set the default text field size when input is a string. Default is nil.
|
|
4
|
+
# Formtastic::FormBuilder.default_text_field_size = 50
|
|
5
|
+
|
|
6
|
+
# Set the default text area height when input is a text. Default is 20.
|
|
7
|
+
# Formtastic::FormBuilder.default_text_area_height = 5
|
|
8
|
+
|
|
9
|
+
# Set the default text area width when input is a text. Default is nil.
|
|
10
|
+
# Formtastic::FormBuilder.default_text_area_width = 50
|
|
11
|
+
|
|
12
|
+
# Should all fields be considered "required" by default?
|
|
13
|
+
# Defaults to true.
|
|
14
|
+
# Formtastic::FormBuilder.all_fields_required_by_default = true
|
|
15
|
+
|
|
16
|
+
# Should select fields have a blank option/prompt by default?
|
|
17
|
+
# Defaults to true.
|
|
18
|
+
# Formtastic::FormBuilder.include_blank_for_select_by_default = true
|
|
19
|
+
|
|
20
|
+
# Set the string that will be appended to the labels/fieldsets which are required.
|
|
21
|
+
# It accepts string or procs and the default is a localized version of
|
|
22
|
+
# '<abbr title="required">*</abbr>'. In other words, if you configure formtastic.required
|
|
23
|
+
# in your locale, it will replace the abbr title properly. But if you don't want to use
|
|
24
|
+
# abbr tag, you can simply give a string as below.
|
|
25
|
+
# Formtastic::FormBuilder.required_string = "(required)"
|
|
26
|
+
|
|
27
|
+
# Set the string that will be appended to the labels/fieldsets which are optional.
|
|
28
|
+
# Defaults to an empty string ("") and also accepts procs (see required_string above).
|
|
29
|
+
# Formtastic::FormBuilder.optional_string = "(optional)"
|
|
30
|
+
|
|
31
|
+
# Set the way inline errors will be displayed.
|
|
32
|
+
# Defaults to :sentence, valid options are :sentence, :list, :first and :none
|
|
33
|
+
# Formtastic::FormBuilder.inline_errors = :sentence
|
|
34
|
+
# Formtastic uses the following classes as default for hints, inline_errors and error list
|
|
35
|
+
|
|
36
|
+
# If you override the class here, please ensure to override it in your stylesheets as well.
|
|
37
|
+
# Formtastic::FormBuilder.default_hint_class = "inline-hints"
|
|
38
|
+
# Formtastic::FormBuilder.default_inline_error_class = "inline-errors"
|
|
39
|
+
# Formtastic::FormBuilder.default_error_list_class = "errors"
|
|
40
|
+
|
|
41
|
+
# Set the method to call on label text to transform or format it for human-friendly
|
|
42
|
+
# reading when formtastic is used without object. Defaults to :humanize.
|
|
43
|
+
# Formtastic::FormBuilder.label_str_method = :humanize
|
|
44
|
+
|
|
45
|
+
# Set the array of methods to try calling on parent objects in :select and :radio inputs
|
|
46
|
+
# for the text inside each @<option>@ tag or alongside each radio @<input>@. The first method
|
|
47
|
+
# that is found on the object will be used.
|
|
48
|
+
# Defaults to ["to_label", "display_name", "full_name", "name", "title", "username", "login", "value", "to_s"]
|
|
49
|
+
# Formtastic::FormBuilder.collection_label_methods = [
|
|
50
|
+
# "to_label", "display_name", "full_name", "name", "title", "username", "login", "value", "to_s"]
|
|
51
|
+
|
|
52
|
+
# Specifies if labels/hints for input fields automatically be looked up using I18n.
|
|
53
|
+
# Default value: true. Overridden for specific fields by setting value to true,
|
|
54
|
+
# i.e. :label => true, or :hint => true (or opposite depending on initialized value)
|
|
55
|
+
# Formtastic::FormBuilder.i18n_lookups_by_default = false
|
|
56
|
+
|
|
57
|
+
# Specifies if I18n lookups of the default I18n Localizer should be cached to improve performance.
|
|
58
|
+
# Defaults to true.
|
|
59
|
+
# Formtastic::FormBuilder.i18n_cache_lookups = false
|
|
60
|
+
|
|
61
|
+
# Specifies the class to use for localization lookups. You can create your own
|
|
62
|
+
# class and use it instead by subclassing Formtastic::Localizer (which is the default).
|
|
63
|
+
# Formtastic::FormBuilder.i18n_localizer = MyOwnLocalizer
|
|
64
|
+
|
|
65
|
+
# You can add custom inputs or override parts of Formtastic by subclassing Formtastic::FormBuilder and
|
|
66
|
+
# specifying that class here. Defaults to Formtastic::FormBuilder.
|
|
67
|
+
# Formtastic::Helpers::FormHelper.builder = MyCustomBuilder
|
|
68
|
+
|
|
69
|
+
# All formtastic forms have a class that indicates that they are just that. You
|
|
70
|
+
# can change it to any class you want.
|
|
71
|
+
# Formtastic::Helpers::FormHelper.default_form_class = 'formtastic'
|
|
72
|
+
|
|
73
|
+
# Formtastic will infer a class name from the model, array, string or symbol you pass to the
|
|
74
|
+
# form builder. You can customize the way that class is presented by overriding
|
|
75
|
+
# this proc.
|
|
76
|
+
# Formtastic::Helpers::FormHelper.default_form_model_class_proc = proc { |model_class_name| model_class_name }
|
|
77
|
+
|
|
78
|
+
# Allows to set a custom field_error_proc wrapper. By default this wrapper
|
|
79
|
+
# is disabled since `formtastic` already adds an error class to the LI tag
|
|
80
|
+
# containing the input.
|
|
81
|
+
# Formtastic::Helpers::FormHelper.formtastic_field_error_proc = proc { |html_tag, instance_tag| html_tag }
|
|
82
|
+
|
|
83
|
+
# You can opt-in to Formtastic's use of the HTML5 `required` attribute on `<input>`, `<select>`
|
|
84
|
+
# and `<textarea>` tags by setting this to true (defaults to false).
|
|
85
|
+
# Formtastic::FormBuilder.use_required_attribute = false
|
|
86
|
+
|
|
87
|
+
# You can opt-in to new HTML5 browser validations (for things like email and url inputs) by setting
|
|
88
|
+
# this to true. Doing so will omit the `novalidate` attribute from the `<form>` tag.
|
|
89
|
+
# See http://diveintohtml5.org/forms.html#validation for more info.
|
|
90
|
+
# Formtastic::FormBuilder.perform_browser_validations = true
|
|
91
|
+
|
|
92
|
+
# By creating custom input class finder, you can change how input classes are looked up.
|
|
93
|
+
# For example you can make it to search for TextInputFilter instead of TextInput.
|
|
94
|
+
# See https://github.com/formtastic/formtastic/wiki/Custom-Class-Finders
|
|
95
|
+
# Formtastic::FormBuilder.input_class_finder = Formtastic::InputClassFinder
|
|
96
|
+
|
|
97
|
+
# Define custom namespaces in which to look up your Input classes. Default is
|
|
98
|
+
# to look up in the global scope and in Formtastic::Inputs.
|
|
99
|
+
# Formtastic::FormBuilder.input_namespaces = [ ::Object, ::MyInputsModule, ::Formtastic::Inputs ]
|
|
100
|
+
|
|
101
|
+
# By creating custom action class finder, you can change how action classes are looked up.
|
|
102
|
+
# For example you can make it to search for MyButtonAction instead of ButtonAction.
|
|
103
|
+
# See https://github.com/formtastic/formtastic/wiki/Custom-Class-Finders
|
|
104
|
+
# Formtastic::FormBuilder.action_class_finder = Formtastic::ActionClassFinder
|
|
105
|
+
|
|
106
|
+
# Define custom namespaces in which to look up your Action classes. Default is
|
|
107
|
+
# to look up in the global scope and in Formtastic::Actions.
|
|
108
|
+
# Formtastic::FormBuilder.action_namespaces = [ ::Object, ::MyActionsModule, ::Formtastic::Actions ]
|
|
109
|
+
|
|
110
|
+
# Which columns to skip when automatically rendering a form without any fields specified.
|
|
111
|
+
# Formtastic::FormBuilder.skipped_columns = [:created_at, :updated_at, :created_on, :updated_on, :lock_version, :version]
|
|
112
|
+
|
|
113
|
+
# You can opt-in to accessibility features for the `semantic_errors` helper by setting
|
|
114
|
+
# this to true. Doing so will render the attributes in the error summary list
|
|
115
|
+
# as `<li> <a>` links to the inputs that have errors. the inline error sentence's id is added to
|
|
116
|
+
# the errored input's aria-describedby. This ensures that the errored input is read out with
|
|
117
|
+
# the inline error sentence's error explanation, aria-invalid is set to true for errored inputs
|
|
118
|
+
# Formtastic::FormBuilder.semantic_errors_link_to_inputs = true
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
class <%= name.camelize %>Input <%= @extension_sentence %>
|
|
2
|
+
<%- if !options[:extend] -%>
|
|
3
|
+
include Formtastic::Inputs::Base
|
|
4
|
+
<%- end -%>
|
|
5
|
+
|
|
6
|
+
<%- if !options[:extend] || (options[:extend] == "extend") -%>
|
|
7
|
+
def to_html
|
|
8
|
+
# Add your custom input definition here.
|
|
9
|
+
<%- if options[:extend] == "extend" -%>
|
|
10
|
+
super
|
|
11
|
+
<%- end -%>
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
<%- else -%>
|
|
15
|
+
def input_html_options
|
|
16
|
+
# Add your custom input extension here.
|
|
17
|
+
end
|
|
18
|
+
<%- end -%>
|
|
19
|
+
end
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html>
|
|
3
|
+
<head>
|
|
4
|
+
<meta content="noindex,nofollow" name="robots">
|
|
5
|
+
<meta charset="utf-8">
|
|
6
|
+
<title>Formtastic</title>
|
|
7
|
+
|
|
8
|
+
<link href="/formtastic.css" rel="stylesheet" type="text/css" />
|
|
9
|
+
<!--[if IE 6]><link href="/formtastic_ie6.css" rel="stylesheet" type="text/css" /><![endif]-->
|
|
10
|
+
<!--[if IE 7]><link href="/formtastic_ie7.css" rel="stylesheet" type="text/css" /><![endif]-->
|
|
11
|
+
|
|
12
|
+
<style>
|
|
13
|
+
body {
|
|
14
|
+
font-family: helvetica, arial;
|
|
15
|
+
font-size: 12px;
|
|
16
|
+
}
|
|
17
|
+
</style>
|
|
18
|
+
</head>
|
|
19
|
+
</html>
|
|
20
|
+
<body>
|
|
21
|
+
<h1>Formtastic</h1>
|
|
22
|
+
|
|
23
|
+
<form action="basic_inputs.html" class="formtastic gem" id="new_gem" method="get">
|
|
24
|
+
<fieldset class="inputs">
|
|
25
|
+
<ol>
|
|
26
|
+
<li class="input string stringish optional" id="gem_summary_input">
|
|
27
|
+
<label class="label" for="gem_summary">Summary</label>
|
|
28
|
+
<input id="gem_summary" name="gem[summary]" type="text" value="A Rails form builder plugin/gem with semantically rich and accessible markup" maxlength="255">
|
|
29
|
+
</li>
|
|
30
|
+
|
|
31
|
+
<li class="input text optional" id="gem_description_input">
|
|
32
|
+
<label class="label" for="gem_description">Description</label>
|
|
33
|
+
<textarea id="gem_description" rows="5">A Rails form builder plugin/gem with semantically rich and accessible markup</textarea>
|
|
34
|
+
</li>
|
|
35
|
+
|
|
36
|
+
<li class="input url stringish optional" id="gem_url_input">
|
|
37
|
+
<label class="label" for="gem_url">URL</label>
|
|
38
|
+
<input id="gem_url" name="gem[url]" type="url">
|
|
39
|
+
<p class="inline-hints">Example: https://github.com/formtastic/formtastic</p>
|
|
40
|
+
</li>
|
|
41
|
+
|
|
42
|
+
<li class="input password stringish required" id="gem_password_input">
|
|
43
|
+
<label class="label" for="gem_password">Password<abbr title="required">*</abbr></label>
|
|
44
|
+
<input id="gem_password" name="gem[password]" type="password">
|
|
45
|
+
<p class="inline-errors">can't be blank</p>
|
|
46
|
+
</li>
|
|
47
|
+
|
|
48
|
+
<li class="input password stringish required" id="gem_password_input">
|
|
49
|
+
<label class="label" for="gem_password_confirmation">Password confirmation<abbr title="required">*</abbr></label>
|
|
50
|
+
<input id="gem_password_confirmation" name="gem[password_confirmation]" type="password">
|
|
51
|
+
<p class="inline-errors">can't be blank</p>
|
|
52
|
+
</li>
|
|
53
|
+
|
|
54
|
+
<li class="input numeric stringish optional" id="gem_downloads_input">
|
|
55
|
+
<label class="label" for="gem_downloads">Downloads</label>
|
|
56
|
+
<input id="gem_downloads" name="gem[downloads]" type="numeric" value="209,354">
|
|
57
|
+
</li>
|
|
58
|
+
|
|
59
|
+
<li class="input file optional" id="gem_file_input">
|
|
60
|
+
<label class="label" for="gem_file">File</label>
|
|
61
|
+
<input id="gem_file" name="gem[file]" type="file" value="value">
|
|
62
|
+
</li>
|
|
63
|
+
|
|
64
|
+
<li class="input email stringish optional" id="gem_email_input">
|
|
65
|
+
<label class="label" for="gem_email">Email</label>
|
|
66
|
+
<input id="gem_email" name="gem[email]" type="email">
|
|
67
|
+
</li>
|
|
68
|
+
|
|
69
|
+
<li class="input phone stringish optional" id="gem_phone_input">
|
|
70
|
+
<label class="label" for="gem_phone">Phone</label>
|
|
71
|
+
<input id="gem_phone" name="gem[phone]" type="phone">
|
|
72
|
+
</li>
|
|
73
|
+
|
|
74
|
+
<li class="input search stringish optional" id="gem_search_input">
|
|
75
|
+
<label class="label" for="gem_search">Search</label>
|
|
76
|
+
<input id="gem_search" name="gem[search]" type="search">
|
|
77
|
+
</li>
|
|
78
|
+
|
|
79
|
+
<li class="input date optional">
|
|
80
|
+
<fieldset class="fragments">
|
|
81
|
+
<legend class="label"><label>First release</label></legend>
|
|
82
|
+
<ol class="fragments-group">
|
|
83
|
+
<li class="fragment">
|
|
84
|
+
<label>Year</label>
|
|
85
|
+
<select id="gem_first_release_1i" name="gem[first_release][1i]">
|
|
86
|
+
<option>2009</option>
|
|
87
|
+
</select>
|
|
88
|
+
</li>
|
|
89
|
+
<li class="fragment">
|
|
90
|
+
<label>Month</label>
|
|
91
|
+
<select id="gem_first_release_2i" name="gem[first_release][2i]">
|
|
92
|
+
<option>October</option>
|
|
93
|
+
</select>
|
|
94
|
+
</li>
|
|
95
|
+
<li class="fragment">
|
|
96
|
+
<label>Day</label>
|
|
97
|
+
<select id="gem_first_release_3i" name="gem[first_release][3i]">
|
|
98
|
+
<option>15</option>
|
|
99
|
+
</select>
|
|
100
|
+
</li>
|
|
101
|
+
</ol>
|
|
102
|
+
</fieldset>
|
|
103
|
+
</li>
|
|
104
|
+
|
|
105
|
+
<li class="input date_picker optional">
|
|
106
|
+
<label class="label" for="gem_expiry">Expiry date</label>
|
|
107
|
+
<input id="gem_expiry" name="gem[gem_expiry]" type="date" size="10" maxlength="10" min="2012-01-01" max="2012-12-31" step="1" value="2012-01-01">
|
|
108
|
+
</li>
|
|
109
|
+
|
|
110
|
+
<li class="input datetime_picker optional">
|
|
111
|
+
<label class="label" for="gem_expiry">Expiry datetime-local</label>
|
|
112
|
+
<input id="gem_expiry" name="gem[gem_expiry]" type="datetime-local" size="16" maxlength="16" min="2012-01-01T00:00" max="2012-12-31T23:59" step="1800">
|
|
113
|
+
</li>
|
|
114
|
+
|
|
115
|
+
<li class="input datetime_picker optional">
|
|
116
|
+
<label class="label" for="gem_expiry">Expiry datetime</label>
|
|
117
|
+
<input id="gem_expiry" name="gem[gem_expiry]" type="datetime" size="16" maxlength="16" min="2012-01-01T00:00" max="2012-12-31T23:59" step="1800">
|
|
118
|
+
</li>
|
|
119
|
+
|
|
120
|
+
<li class="input time_picker optional">
|
|
121
|
+
<label class="label" for="gem_expiry">Expiry time</label>
|
|
122
|
+
<input id="gem_expiry" name="gem[gem_expiry]" type="time" size="5" maxlength="5" min="T00:00" max="23:59" step="60">
|
|
123
|
+
</li>
|
|
124
|
+
|
|
125
|
+
<li class="input string stringish optional autofocus" id="gem_autofocus_input">
|
|
126
|
+
<label class="label" for="gem_autofocus">Autofocus</label>
|
|
127
|
+
<input id="gem_autofocus" name="gem[autofocus]" type="text" value="The focus is set to this field" autofocus="autofocus">
|
|
128
|
+
</li>
|
|
129
|
+
|
|
130
|
+
<li class="input boolean optional" id="gem_terms_and_conditions_input">
|
|
131
|
+
<label for="gem_terms_and_conditions">
|
|
132
|
+
<input id="gem_terms_and_conditions" name="gem[terms_and_conditions]" type="checkbox" value="1" checked="checked">
|
|
133
|
+
I agree to your draconian terms of service even though I didn't read them
|
|
134
|
+
</label>
|
|
135
|
+
</li>
|
|
136
|
+
|
|
137
|
+
<li class="input select optional" id="gem_awesomeness_input">
|
|
138
|
+
<label class="label" for="gem_awesomeness">Select</label>
|
|
139
|
+
<select id="gem_awesomeness" name="gem[awesomeness]">
|
|
140
|
+
<option value="5">First choice</option>
|
|
141
|
+
<option value="4">Second choice</option>
|
|
142
|
+
</select>
|
|
143
|
+
</li>
|
|
144
|
+
|
|
145
|
+
<li class="input radio optional">
|
|
146
|
+
<fieldset class="choices">
|
|
147
|
+
<legend class="label"><label>Rate</label></legend>
|
|
148
|
+
<ol class="choices-group">
|
|
149
|
+
<li class="choice">
|
|
150
|
+
<label><input id="gem_rate_five" name="gem[rate]" type="radio" checked="checked"> Five</label></label>
|
|
151
|
+
</li>
|
|
152
|
+
<li class="choice">
|
|
153
|
+
<label><input id="gem_rate_four" name="gem[rate]" type="radio"> Four</label></label>
|
|
154
|
+
</li>
|
|
155
|
+
<li class="choice">
|
|
156
|
+
<label><input id="gem_rate_three" name="gem[rate]" type="radio"> Three</label></label>
|
|
157
|
+
</li>
|
|
158
|
+
<li class="choice">
|
|
159
|
+
<label><input id="gem_rate_two" name="gem[rate]" type="radio"> Two</label></label>
|
|
160
|
+
</li>
|
|
161
|
+
<li class="choice">
|
|
162
|
+
<label><input id="gem_rate_one" name="gem[rate]" type="radio"> One</label></label>
|
|
163
|
+
</li>
|
|
164
|
+
</ol>
|
|
165
|
+
</fieldset>
|
|
166
|
+
</li>
|
|
167
|
+
|
|
168
|
+
<li class="input check_boxes optional">
|
|
169
|
+
<fieldset class="choices">
|
|
170
|
+
<legend class="label"><label>Browsers</label></legend>
|
|
171
|
+
<ol class="choices-group">
|
|
172
|
+
<li class="choice">
|
|
173
|
+
<label><input id="gem_browser_google_chrome" name="gem[browser][]" type="checkbox"> Google Chrome</label></label>
|
|
174
|
+
</li>
|
|
175
|
+
<li class="choice">
|
|
176
|
+
<label><input id="gem_browser_apple_safari" name="gem[browser][]" type="checkbox"> Apple Safari</label></label>
|
|
177
|
+
</li>
|
|
178
|
+
<li class="choice">
|
|
179
|
+
<label><input id="gem_browser_mozilla_firefox" name="gem[browser][]" type="checkbox"> Mozilla Firefox</label></label>
|
|
180
|
+
</li>
|
|
181
|
+
<li class="choice">
|
|
182
|
+
<label><input id="gem_browser_opera" name="gem[browser][]" type="checkbox"> Opera</label></label>
|
|
183
|
+
</li>
|
|
184
|
+
<li class="choice">
|
|
185
|
+
<label><input id="gem_browser_internet_explorer" name="gem[browser][]" type="checkbox"> Internet Explorer (Although you really can't call it a browser can you? This is some long text to force wrapping.)</label></label>
|
|
186
|
+
</li>
|
|
187
|
+
</ol>
|
|
188
|
+
</fieldset>
|
|
189
|
+
</li>
|
|
190
|
+
</ol>
|
|
191
|
+
</fieldset>
|
|
192
|
+
|
|
193
|
+
<fieldset class="buttons">
|
|
194
|
+
<ol>
|
|
195
|
+
<li class="button commit">
|
|
196
|
+
<input class="create" id="gem_submit" type="submit">
|
|
197
|
+
</li>
|
|
198
|
+
</ol>
|
|
199
|
+
</fieldset>
|
|
200
|
+
|
|
201
|
+
<fieldset class="actions">
|
|
202
|
+
<ol>
|
|
203
|
+
<li class="action input_action">
|
|
204
|
+
<input id="gem_submit" type="submit" value="Create Thing">
|
|
205
|
+
</li>
|
|
206
|
+
</ol>
|
|
207
|
+
</fieldset>
|
|
208
|
+
|
|
209
|
+
<fieldset class="actions">
|
|
210
|
+
<ol>
|
|
211
|
+
<li class="action button_action">
|
|
212
|
+
<button id="gem_submit" type="submit">Create Thing</button>
|
|
213
|
+
</li>
|
|
214
|
+
<li class="action button_action">
|
|
215
|
+
<button id="gem_submit" type="reset">Reset</button>
|
|
216
|
+
</li>
|
|
217
|
+
<li class="action link_action">
|
|
218
|
+
<a href="#">Cancel</a>
|
|
219
|
+
</li>
|
|
220
|
+
</ol>
|
|
221
|
+
</fieldset>
|
|
222
|
+
</form>
|
|
223
|
+
</body>
|
|
224
|
+
</html>
|