wheelhouse-forms 1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/LICENSE +22 -0
- data/README.md +39 -0
- data/app/assets/images/wheelhouse-forms/checkbox.png +0 -0
- data/app/assets/images/wheelhouse-forms/checkboxes.png +0 -0
- data/app/assets/images/wheelhouse-forms/content.png +0 -0
- data/app/assets/images/wheelhouse-forms/countries.png +0 -0
- data/app/assets/images/wheelhouse-forms/csv.png +0 -0
- data/app/assets/images/wheelhouse-forms/custom.png +0 -0
- data/app/assets/images/wheelhouse-forms/drag.png +0 -0
- data/app/assets/images/wheelhouse-forms/field-set.png +0 -0
- data/app/assets/images/wheelhouse-forms/form.png +0 -0
- data/app/assets/images/wheelhouse-forms/radio-buttons.png +0 -0
- data/app/assets/images/wheelhouse-forms/select.png +0 -0
- data/app/assets/images/wheelhouse-forms/states.png +0 -0
- data/app/assets/images/wheelhouse-forms/submit-button.png +0 -0
- data/app/assets/images/wheelhouse-forms/text-area.png +0 -0
- data/app/assets/images/wheelhouse-forms/text-field.png +0 -0
- data/app/assets/javascripts/wheelhouse-forms/admin.js +125 -0
- data/app/assets/javascripts/wheelhouse-forms/jquery.autogrow.js +50 -0
- data/app/assets/javascripts/wheelhouse-forms/jquery.options.js +24 -0
- data/app/assets/stylesheets/wheelhouse-forms/admin.css.sass +244 -0
- data/app/controllers/forms/forms_controller.rb +9 -0
- data/app/controllers/forms/submissions_controller.rb +19 -0
- data/app/handlers/forms/form_handler.rb +17 -0
- data/app/helpers/forms/forms_helper.rb +36 -0
- data/app/helpers/forms/mailer_helper.rb +67 -0
- data/app/helpers/forms/submissions_helper.rb +71 -0
- data/app/mailers/forms/mailer.rb +11 -0
- data/app/models/forms/field_collection.rb +21 -0
- data/app/models/forms/fields/checkbox.rb +8 -0
- data/app/models/forms/fields/checkboxes.rb +10 -0
- data/app/models/forms/fields/content_field.rb +7 -0
- data/app/models/forms/fields/countries_dropdown.rb +14 -0
- data/app/models/forms/fields/custom_field.rb +8 -0
- data/app/models/forms/fields/field.rb +28 -0
- data/app/models/forms/fields/field_set.rb +14 -0
- data/app/models/forms/fields/optioned_field.rb +17 -0
- data/app/models/forms/fields/radio_buttons.rb +10 -0
- data/app/models/forms/fields/select_field.rb +10 -0
- data/app/models/forms/fields/states_dropdown.rb +15 -0
- data/app/models/forms/fields/submit_button.rb +7 -0
- data/app/models/forms/fields/text_area.rb +8 -0
- data/app/models/forms/fields/text_field.rb +21 -0
- data/app/models/forms/form.rb +65 -0
- data/app/models/forms/submission.rb +53 -0
- data/app/renderers/forms/checkbox_renderer.rb +7 -0
- data/app/renderers/forms/checkboxes_renderer.rb +18 -0
- data/app/renderers/forms/content_field_renderer.rb +5 -0
- data/app/renderers/forms/custom_field_renderer.rb +5 -0
- data/app/renderers/forms/field_collection_renderer.rb +13 -0
- data/app/renderers/forms/field_renderer.rb +57 -0
- data/app/renderers/forms/field_set_renderer.rb +10 -0
- data/app/renderers/forms/form_renderer.rb +30 -0
- data/app/renderers/forms/labelled_field_renderer.rb +10 -0
- data/app/renderers/forms/radio_buttons_renderer.rb +18 -0
- data/app/renderers/forms/select_field_renderer.rb +9 -0
- data/app/renderers/forms/submit_button_renderer.rb +5 -0
- data/app/renderers/forms/text_area_renderer.rb +7 -0
- data/app/renderers/forms/text_field_renderer.rb +7 -0
- data/app/templates/form.html.haml +9 -0
- data/app/templates/form.xhr.haml +4 -0
- data/app/templates/form/submission.html.haml +15 -0
- data/app/views/forms/forms/_checkbox.haml +3 -0
- data/app/views/forms/forms/_checkboxes.haml +10 -0
- data/app/views/forms/forms/_content_field.haml +3 -0
- data/app/views/forms/forms/_countries_dropdown.haml +4 -0
- data/app/views/forms/forms/_custom_field.haml +4 -0
- data/app/views/forms/forms/_field_set.haml +16 -0
- data/app/views/forms/forms/_radio_buttons.haml +10 -0
- data/app/views/forms/forms/_select_field.haml +10 -0
- data/app/views/forms/forms/_states_dropdown.haml +4 -0
- data/app/views/forms/forms/_submissions.haml +20 -0
- data/app/views/forms/forms/_submit_button.haml +2 -0
- data/app/views/forms/forms/_text_area.haml +3 -0
- data/app/views/forms/forms/_text_field.haml +4 -0
- data/app/views/forms/forms/designer.haml +56 -0
- data/app/views/forms/forms/edit.html.haml +5 -0
- data/app/views/forms/forms/form.haml +22 -0
- data/app/views/forms/forms/new.html.haml +4 -0
- data/app/views/forms/forms/show.html.haml +4 -0
- data/app/views/forms/submissions/form.haml +16 -0
- data/app/views/forms/submissions/show.html.haml +4 -0
- data/config/countries.yml +245 -0
- data/config/locales/en.yml +7 -0
- data/config/routes.rb +7 -0
- data/config/states.yml +62 -0
- data/lib/forms/csv_exporter.rb +41 -0
- data/lib/wheelhouse-forms.rb +26 -0
- metadata +149 -0
@@ -0,0 +1,10 @@
|
|
1
|
+
= form_field(radio_buttons, :index => index, :prefix => prefix, :class => "radio-buttons") do |f|
|
2
|
+
= f.text_field :label, :title => "Radio Buttons Label", :placeholder => "Radio Buttons Label", :id => nil
|
3
|
+
= f.required_field_checkbox
|
4
|
+
|
5
|
+
%ul.options
|
6
|
+
%li
|
7
|
+
%label Options:
|
8
|
+
|
9
|
+
- radio_buttons.options(true).each do |option|
|
10
|
+
%li= text_field_tag "#{prefix}[options][]", option, :id => nil
|
@@ -0,0 +1,10 @@
|
|
1
|
+
= form_field(select_field, :index => index, :prefix => prefix, :class => "select-field", :icon => "select") do |f|
|
2
|
+
= f.text_field :label, :title => "Select Field Label", :placeholder => "Select Field Label", :id => nil
|
3
|
+
= f.required_field_checkbox
|
4
|
+
|
5
|
+
%ul.options
|
6
|
+
%li
|
7
|
+
%label Options:
|
8
|
+
|
9
|
+
- select_field.options(true).each do |option|
|
10
|
+
%li= text_field_tag "#{prefix}[options][]", option, :id => nil
|
@@ -0,0 +1,4 @@
|
|
1
|
+
= form_field(states_dropdown, :index => index, :prefix => prefix, :class => "states-dropdown", :icon => "states") do |f|
|
2
|
+
= f.text_field :label, :title => "States Dropdown Label", :placeholder => "States Dropdown Label", :id => nil
|
3
|
+
= f.select :country, [["US States", "US"], ["Australian States", "Australia"]], {}, :id => nil
|
4
|
+
= f.required_field_checkbox
|
@@ -0,0 +1,20 @@
|
|
1
|
+
- @submissions = resource.submissions.paginate(:page => params[:p])
|
2
|
+
|
3
|
+
%h2 Latest Submissions
|
4
|
+
|
5
|
+
= table_for Forms::Submission do |table|
|
6
|
+
- table.rows(@submissions) do |row, submission|
|
7
|
+
- row.resource = [@form, submission]
|
8
|
+
|
9
|
+
- if resource.first_content_field
|
10
|
+
= row.column(resource.first_content_field.label) { submission.value_for(resource.first_content_field) }
|
11
|
+
|
12
|
+
= row.column(:submitted_at) { submission.created_at.in_time_zone.to_s(:long) }
|
13
|
+
|
14
|
+
= row.controls do |c|
|
15
|
+
= c.delete
|
16
|
+
|
17
|
+
- table.empty do
|
18
|
+
No submissions have been posted.
|
19
|
+
|
20
|
+
= will_paginate @submissions
|
@@ -0,0 +1,4 @@
|
|
1
|
+
= form_field(text_field, :index => index, :prefix => prefix, :class => "text-field") do |f|
|
2
|
+
= f.text_field :label, :title => "Text Field Label", :placeholder => "Text Field Label", :id => nil
|
3
|
+
= f.select :input_type, Forms::Fields::TextField::INPUT_TYPES, {}, :id => nil
|
4
|
+
= f.required_field_checkbox
|
@@ -0,0 +1,56 @@
|
|
1
|
+
- tab :fields do
|
2
|
+
#fields{ "data-prefix" => "form[fields]" }
|
3
|
+
= render_fields(@form.fields, "form[fields]")
|
4
|
+
|
5
|
+
= field_template "field-set-template", Forms::Fields::FieldSet
|
6
|
+
= field_template "text-field-template", Forms::Fields::TextField
|
7
|
+
= field_template "text-area-template", Forms::Fields::TextArea
|
8
|
+
= field_template "select-field-template", Forms::Fields::SelectField
|
9
|
+
= field_template "checkbox-template", Forms::Fields::Checkbox
|
10
|
+
= field_template "checkboxes-template", Forms::Fields::Checkboxes
|
11
|
+
= field_template "radio-buttons-template", Forms::Fields::RadioButtons
|
12
|
+
= field_template "submit-button-template", Forms::Fields::SubmitButton
|
13
|
+
= field_template "states-dropdown-template", Forms::Fields::StatesDropdown
|
14
|
+
= field_template "countries-dropdown-template", Forms::Fields::CountriesDropdown
|
15
|
+
= field_template "content-field-template", Forms::Fields::ContentField
|
16
|
+
= field_template "custom-field-template", Forms::Fields::CustomField if Forms::Plugin.config.wheelhouse.forms.custom_fields
|
17
|
+
|
18
|
+
- tab :content do
|
19
|
+
= field :title do
|
20
|
+
= form.text_field :title, :title => true
|
21
|
+
= note "The form title will appear in the title bar of the user's browser window."
|
22
|
+
|
23
|
+
= content
|
24
|
+
|
25
|
+
- tab :email do
|
26
|
+
= field :recipients do
|
27
|
+
= form.text_field :recipients, :value => @form.recipients.join(', ')
|
28
|
+
= note "Separate email addresses with commas."
|
29
|
+
|
30
|
+
= field :subject do
|
31
|
+
= form.text_field :subject
|
32
|
+
|
33
|
+
- sidebar do
|
34
|
+
= render "wheelhouse/admin/resource/default_sidebar"
|
35
|
+
|
36
|
+
%ul#primary-tools.tools
|
37
|
+
%li.text-field= link_to "Add Text Field", "#"
|
38
|
+
%li.text-area= link_to "Add Text Area", "#"
|
39
|
+
%li.select-field= link_to "Add Select Field", "#"
|
40
|
+
%li.checkbox= link_to "Add Single Checkbox", "#"
|
41
|
+
%li.checkboxes= link_to "Add Checkboxes", "#"
|
42
|
+
%li.radio-buttons= link_to "Add Radio Buttons", "#"
|
43
|
+
%li.field-set= link_to "Add Field Set", "#"
|
44
|
+
%li.submit-button= link_to "Add Submit Button", "#"
|
45
|
+
|
46
|
+
%ul#extra-tools.tools
|
47
|
+
%li.states-dropdown= link_to "Add States Dropdown", "#"
|
48
|
+
%li.countries-dropdown= link_to "Add Countries Dropdown", "#"
|
49
|
+
%li.content-field= link_to "Add Content Field", "#"
|
50
|
+
%li.custom-field= link_to "Add Custom Field", "#" if Forms::Plugin.config.wheelhouse.forms.custom_fields
|
51
|
+
|
52
|
+
- content_for(:head) do
|
53
|
+
= stylesheet_link_tag "wheelhouse-forms/admin"
|
54
|
+
|
55
|
+
- content_for(:javascript) do
|
56
|
+
= javascript_include_tag "wheelhouse-forms/admin"
|
@@ -0,0 +1,22 @@
|
|
1
|
+
- tab :submissions => "submissions"
|
2
|
+
|
3
|
+
- sidebar do
|
4
|
+
.buttons
|
5
|
+
= button "Form Designer", :icon => :publish, :url => edit_form_path(@form)
|
6
|
+
|
7
|
+
%hr
|
8
|
+
|
9
|
+
%ul
|
10
|
+
%li= link_to "Export results as CSV", form_submissions_path(@form, :format => :csv), :class => "export-csv"
|
11
|
+
|
12
|
+
%hr
|
13
|
+
|
14
|
+
- if last_submission = @form.submissions.first
|
15
|
+
%p.owner Last submission: #{timestamp(last_submission.created_at)}
|
16
|
+
|
17
|
+
= owner
|
18
|
+
|
19
|
+
%hr
|
20
|
+
|
21
|
+
- content_for(:head) do
|
22
|
+
= stylesheet_link_tag "wheelhouse-forms/admin"
|
@@ -0,0 +1,16 @@
|
|
1
|
+
- form! [@form, @submission], :as => :submission, :url => @submission.admin_path
|
2
|
+
|
3
|
+
- tab :submission do
|
4
|
+
- @form.fields.each do |field|
|
5
|
+
= render_field(field)
|
6
|
+
|
7
|
+
- sidebar do
|
8
|
+
.buttons
|
9
|
+
= button "Back to list", :url => @form
|
10
|
+
|
11
|
+
%hr
|
12
|
+
|
13
|
+
%p.owner Submitted: #{timestamp(@submission.created_at)}
|
14
|
+
|
15
|
+
- content_for(:head) do
|
16
|
+
= stylesheet_link_tag "wheelhouse-forms/admin"
|
@@ -0,0 +1,245 @@
|
|
1
|
+
- Afghanistan
|
2
|
+
- Aland Islands
|
3
|
+
- Albania
|
4
|
+
- Algeria
|
5
|
+
- American Samoa
|
6
|
+
- Andorra
|
7
|
+
- Angola
|
8
|
+
- Anguilla
|
9
|
+
- Antarctica
|
10
|
+
- Antigua And Barbuda
|
11
|
+
- Argentina
|
12
|
+
- Armenia
|
13
|
+
- Aruba
|
14
|
+
- Australia
|
15
|
+
- Austria
|
16
|
+
- Azerbaijan
|
17
|
+
- Bahamas
|
18
|
+
- Bahrain
|
19
|
+
- Bangladesh
|
20
|
+
- Barbados
|
21
|
+
- Belarus
|
22
|
+
- Belgium
|
23
|
+
- Belize
|
24
|
+
- Benin
|
25
|
+
- Bermuda
|
26
|
+
- Bhutan
|
27
|
+
- Bolivia
|
28
|
+
- Bosnia and Herzegowina
|
29
|
+
- Botswana
|
30
|
+
- Bouvet Island
|
31
|
+
- Brazil
|
32
|
+
- British Indian Ocean Territory
|
33
|
+
- Brunei Darussalam
|
34
|
+
- Bulgaria
|
35
|
+
- Burkina Faso
|
36
|
+
- Burundi
|
37
|
+
- Cambodia
|
38
|
+
- Cameroon
|
39
|
+
- Canada
|
40
|
+
- Cape Verde
|
41
|
+
- Cayman Islands
|
42
|
+
- Central African Republic
|
43
|
+
- Chad
|
44
|
+
- Chile
|
45
|
+
- China
|
46
|
+
- Christmas Island
|
47
|
+
- Cocos (Keeling) Islands
|
48
|
+
- Colombia
|
49
|
+
- Comoros
|
50
|
+
- Congo
|
51
|
+
- Congo, the Democratic Republic of the
|
52
|
+
- Cook Islands
|
53
|
+
- Costa Rica
|
54
|
+
- Cote d'Ivoire
|
55
|
+
- Croatia
|
56
|
+
- Cuba
|
57
|
+
- Cyprus
|
58
|
+
- Czech Republic
|
59
|
+
- Denmark
|
60
|
+
- Djibouti
|
61
|
+
- Dominica
|
62
|
+
- Dominican Republic
|
63
|
+
- Ecuador
|
64
|
+
- Egypt
|
65
|
+
- El Salvador
|
66
|
+
- Equatorial Guinea
|
67
|
+
- Eritrea
|
68
|
+
- Estonia
|
69
|
+
- Ethiopia
|
70
|
+
- Falkland Islands (Malvinas)
|
71
|
+
- Faroe Islands
|
72
|
+
- Fiji
|
73
|
+
- Finland
|
74
|
+
- France
|
75
|
+
- French Guiana
|
76
|
+
- French Polynesia
|
77
|
+
- French Southern Territories
|
78
|
+
- Gabon
|
79
|
+
- Gambia
|
80
|
+
- Georgia
|
81
|
+
- Germany
|
82
|
+
- Ghana
|
83
|
+
- Gibraltar
|
84
|
+
- Greece
|
85
|
+
- Greenland
|
86
|
+
- Grenada
|
87
|
+
- Guadeloupe
|
88
|
+
- Guam
|
89
|
+
- Guatemala
|
90
|
+
- Guernsey
|
91
|
+
- Guinea
|
92
|
+
- Guinea-Bissau
|
93
|
+
- Guyana
|
94
|
+
- Haiti
|
95
|
+
- Heard and McDonald Islands
|
96
|
+
- Holy See (Vatican City State)
|
97
|
+
- Honduras
|
98
|
+
- Hong Kong
|
99
|
+
- Hungary
|
100
|
+
- Iceland
|
101
|
+
- India
|
102
|
+
- Indonesia
|
103
|
+
- Iran, Islamic Republic of
|
104
|
+
- Iraq
|
105
|
+
- Ireland
|
106
|
+
- Isle of Man
|
107
|
+
- Israel
|
108
|
+
- Italy
|
109
|
+
- Jamaica
|
110
|
+
- Japan
|
111
|
+
- Jersey
|
112
|
+
- Jordan
|
113
|
+
- Kazakhstan
|
114
|
+
- Kenya
|
115
|
+
- Kiribati
|
116
|
+
- Korea, Democratic People's Republic of
|
117
|
+
- Korea, Republic of
|
118
|
+
- Kuwait
|
119
|
+
- Kyrgyzstan
|
120
|
+
- Lao People's Democratic Republic
|
121
|
+
- Latvia
|
122
|
+
- Lebanon
|
123
|
+
- Lesotho
|
124
|
+
- Liberia
|
125
|
+
- Libyan Arab Jamahiriya
|
126
|
+
- Liechtenstein
|
127
|
+
- Lithuania
|
128
|
+
- Luxembourg
|
129
|
+
- Macao
|
130
|
+
- Macedonia, The Former Yugoslav Republic Of
|
131
|
+
- Madagascar
|
132
|
+
- Malawi
|
133
|
+
- Malaysia
|
134
|
+
- Maldives
|
135
|
+
- Mali
|
136
|
+
- Malta
|
137
|
+
- Marshall Islands
|
138
|
+
- Martinique
|
139
|
+
- Mauritania
|
140
|
+
- Mauritius
|
141
|
+
- Mayotte
|
142
|
+
- Mexico
|
143
|
+
- Micronesia, Federated States of
|
144
|
+
- Moldova, Republic of
|
145
|
+
- Monaco
|
146
|
+
- Mongolia
|
147
|
+
- Montenegro
|
148
|
+
- Montserrat
|
149
|
+
- Morocco
|
150
|
+
- Mozambique
|
151
|
+
- Myanmar
|
152
|
+
- Namibia
|
153
|
+
- Nauru
|
154
|
+
- Nepal
|
155
|
+
- Netherlands
|
156
|
+
- Netherlands Antilles
|
157
|
+
- New Caledonia
|
158
|
+
- New Zealand
|
159
|
+
- Nicaragua
|
160
|
+
- Niger
|
161
|
+
- Nigeria
|
162
|
+
- Niue
|
163
|
+
- Norfolk Island
|
164
|
+
- Northern Mariana Islands
|
165
|
+
- Norway
|
166
|
+
- Oman
|
167
|
+
- Pakistan
|
168
|
+
- Palau
|
169
|
+
- Palestinian Territory, Occupied
|
170
|
+
- Panama
|
171
|
+
- Papua New Guinea
|
172
|
+
- Paraguay
|
173
|
+
- Peru
|
174
|
+
- Philippines
|
175
|
+
- Pitcairn
|
176
|
+
- Poland
|
177
|
+
- Portugal
|
178
|
+
- Puerto Rico
|
179
|
+
- Qatar
|
180
|
+
- Reunion
|
181
|
+
- Romania
|
182
|
+
- Russian Federation
|
183
|
+
- Rwanda
|
184
|
+
- Saint Barthelemy
|
185
|
+
- Saint Helena
|
186
|
+
- Saint Kitts and Nevis
|
187
|
+
- Saint Lucia
|
188
|
+
- Saint Pierre and Miquelon
|
189
|
+
- Saint Vincent and the Grenadines
|
190
|
+
- Samoa
|
191
|
+
- San Marino
|
192
|
+
- Sao Tome and Principe
|
193
|
+
- Saudi Arabia
|
194
|
+
- Senegal
|
195
|
+
- Serbia
|
196
|
+
- Seychelles
|
197
|
+
- Sierra Leone
|
198
|
+
- Singapore
|
199
|
+
- Slovakia
|
200
|
+
- Slovenia
|
201
|
+
- Solomon Islands
|
202
|
+
- Somalia
|
203
|
+
- South Africa
|
204
|
+
- South Georgia and the South Sandwich Islands
|
205
|
+
- Spain
|
206
|
+
- Sri Lanka
|
207
|
+
- Sudan
|
208
|
+
- Suriname
|
209
|
+
- Svalbard and Jan Mayen
|
210
|
+
- Swaziland
|
211
|
+
- Sweden
|
212
|
+
- Switzerland
|
213
|
+
- Syrian Arab Republic
|
214
|
+
- Taiwan, Province of China
|
215
|
+
- Tajikistan
|
216
|
+
- Tanzania, United Republic of
|
217
|
+
- Thailand
|
218
|
+
- Timor-Leste
|
219
|
+
- Togo
|
220
|
+
- Tokelau
|
221
|
+
- Tonga
|
222
|
+
- Trinidad and Tobago
|
223
|
+
- Tunisia
|
224
|
+
- Turkey
|
225
|
+
- Turkmenistan
|
226
|
+
- Turks and Caicos Islands
|
227
|
+
- Tuvalu
|
228
|
+
- Uganda
|
229
|
+
- Ukraine
|
230
|
+
- United Arab Emirates
|
231
|
+
- United Kingdom
|
232
|
+
- United States
|
233
|
+
- United States Minor Outlying Islands
|
234
|
+
- Uruguay
|
235
|
+
- Uzbekistan
|
236
|
+
- Vanuatu
|
237
|
+
- Venezuela
|
238
|
+
- Viet Nam
|
239
|
+
- Virgin Islands, British
|
240
|
+
- Virgin Islands, U.S.
|
241
|
+
- Wallis and Futuna
|
242
|
+
- Western Sahara
|
243
|
+
- Yemen
|
244
|
+
- Zambia
|
245
|
+
- Zimbabwe
|