Form builder to get in touch with visitors, grow your email list and collect payments — Happyforms - Version 1.9.0

Version Description

  • New feature: Date filter on All Forms screen now allows you to filter forms by date added.
  • Improvement: Email controls are now grouped in a dedicated step.
  • Improvement: Additional email controls for sender and reply-to addresses.
  • Improvement: Various improvements to UI styles, wording, and default values of parts.
Download this release

Release Info

Developer thethemefoundry
Plugin Icon 128x128 Form builder to get in touch with visitors, grow your email list and collect payments — Happyforms
Version 1.9.0
Comparing to
See all releases

Code changes from version 1.8.22 to 1.9.0

Files changed (56) hide show
  1. core/assets/css/admin.css +5 -12
  2. core/assets/css/customize.css +173 -166
  3. core/assets/css/layout.css +4 -4
  4. core/assets/js/parts/part-email.js +1 -1
  5. core/assets/js/parts/part-number.js +2 -2
  6. core/classes/class-form-admin.php +8 -18
  7. core/classes/class-form-controller.php +6 -1
  8. core/classes/class-form-email.php +189 -0
  9. core/classes/class-form-setup.php +12 -118
  10. core/classes/class-form-styles.php +2 -5
  11. core/classes/class-happyforms-core.php +6 -14
  12. core/classes/class-tracking.php +2 -2
  13. core/classes/class-wp-customize-form-manager.php +2 -6
  14. core/classes/parts/class-part-checkbox.php +1 -1
  15. core/classes/parts/class-part-email.php +2 -2
  16. core/classes/parts/class-part-multi-line-text.php +1 -1
  17. core/classes/parts/class-part-number.php +2 -2
  18. core/classes/parts/class-part-radio.php +1 -1
  19. core/classes/parts/class-part-select.php +2 -2
  20. core/classes/parts/class-part-single-line-text.php +1 -1
  21. core/helpers/helper-form-templates.php +5 -1
  22. core/helpers/helper-misc.php +2 -2
  23. core/templates/admin-tracking.php +1 -1
  24. core/templates/customize-controls/setup/alert-email-subject.php +2 -2
  25. core/templates/customize-controls/setup/checkbox.php +2 -2
  26. core/templates/customize-controls/setup/editor.php +1 -1
  27. core/templates/customize-controls/setup/group_end.php +1 -0
  28. core/templates/customize-controls/setup/group_start.php +1 -0
  29. core/templates/customize-controls/setup/number.php +2 -2
  30. core/templates/customize-controls/setup/select.php +1 -1
  31. core/templates/customize-controls/setup/text.php +1 -1
  32. core/templates/customize-controls/setup/textarea.php +1 -1
  33. core/templates/customize-controls/style/buttonset.php +6 -6
  34. core/templates/customize-controls/style/divider.php +1 -1
  35. core/templates/customize-controls/style/range.php +19 -10
  36. core/templates/customize-controls/style/text.php +2 -2
  37. core/templates/customize-form-build.php +3 -12
  38. core/templates/customize-form-email.php +22 -0
  39. core/templates/customize-form-steps.php +6 -29
  40. core/templates/customize-header-actions.php +20 -1
  41. core/templates/parts/customize-checkbox.php +7 -12
  42. core/templates/parts/customize-email.php +21 -25
  43. core/templates/parts/customize-multi-line-text.php +13 -21
  44. core/templates/parts/customize-number.php +22 -26
  45. core/templates/parts/customize-radio.php +6 -11
  46. core/templates/parts/customize-select.php +4 -10
  47. core/templates/parts/customize-single-line-text.php +5 -16
  48. core/templates/parts/frontend-number.php +2 -2
  49. happyforms.php +2 -2
  50. inc/assets/js/admin/dashboard.js +1 -2
  51. inc/assets/js/customize.js +208 -276
  52. inc/classes/class-happyforms.php +73 -81
  53. inc/classes/class-message-controller.php +6 -4
  54. inc/classes/parts/class-part-website-url-dummy.php +4 -4
  55. languages/happyforms.pot +844 -866
  56. readme.txt +10 -1
core/assets/css/admin.css CHANGED
@@ -168,32 +168,25 @@ form.happyforms-updater-credentials {
168
 
169
  .happyforms-welcome-panel .welcome-panel-content input[type="email"],
170
  .happyforms-welcome-panel .welcome-panel-content input[type="password"],
171
- .happyforms-welcome-panel .welcome-panel-content input[type="text"],
172
- form.happyforms-updater-credentials input[type="email"],
173
- form.happyforms-updater-credentials input[type="password"],
174
- form.happyforms-updater-credentials input[type="text"] {
175
  width: 96%;
176
  padding: 8px;
177
  margin-bottom: 15px;
178
  }
179
 
180
- .happyforms-welcome-panel .welcome-panel-content .button.button-hero,
181
- form.happyforms-updater-credentials .button.button-hero {
182
  margin: 0;
183
  }
184
 
185
- .happyforms-welcome-panel .welcome-panel-content .button-hero,
186
- form.happyforms-updater-credentials .button-hero {
187
  text-align: center;
188
  }
189
 
190
- .happyforms-welcome-panel .welcome-panel-content .button-hero.button-block,
191
- form.happyforms-updater-credentials .button-hero.button-block {
192
  width: 96%;
193
  }
194
 
195
- .happyforms-welcome-panel .welcome-panel-content .button.button-hero svg,
196
- form.happyforms-updater-credentials .button.button-hero svg {
197
  height: 12px;
198
  vertical-align: middle;
199
  }
168
 
169
  .happyforms-welcome-panel .welcome-panel-content input[type="email"],
170
  .happyforms-welcome-panel .welcome-panel-content input[type="password"],
171
+ .happyforms-welcome-panel .welcome-panel-content input[type="text"] {
 
 
 
172
  width: 96%;
173
  padding: 8px;
174
  margin-bottom: 15px;
175
  }
176
 
177
+ .happyforms-welcome-panel .welcome-panel-content .button.button-hero {
 
178
  margin: 0;
179
  }
180
 
181
+ .happyforms-welcome-panel .welcome-panel-content .button-hero {
 
182
  text-align: center;
183
  }
184
 
185
+ .happyforms-welcome-panel .welcome-panel-content .button-hero.button-block {
 
186
  width: 96%;
187
  }
188
 
189
+ .happyforms-welcome-panel .welcome-panel-content .button.button-hero svg {
 
190
  height: 12px;
191
  vertical-align: middle;
192
  }
core/assets/css/customize.css CHANGED
@@ -7,6 +7,21 @@
7
  z-index: 1000;
8
  }
9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10
  /**
11
  *
12
  * Header actions
@@ -15,7 +30,9 @@
15
  #happyforms-save-button-wrapper {
16
  transition: .18s margin ease-in-out;
17
  float: right;
 
18
  margin-top: 8px;
 
19
  }
20
 
21
  #happyforms-sidebar-controls {
@@ -61,14 +78,21 @@
61
  box-shadow: none;
62
  }
63
 
 
 
 
 
 
 
 
 
 
 
64
  /**
65
  *
66
  * Sidebar stacked view
67
  *
68
  */
69
- #customize-controls .wp-full-overlay-sidebar-content {
70
- bottom: 130px;
71
- }
72
 
73
  .happyforms-stack-view {
74
  position: absolute;
@@ -99,6 +123,10 @@ p.description a {
99
  font-style: normal;
100
  }
101
 
 
 
 
 
102
  .happyforms-step-description p.description {
103
  margin: 0 0 30px;
104
  }
@@ -123,6 +151,10 @@ p.description a {
123
  float: none;
124
  }
125
 
 
 
 
 
126
  .customize-control.customize-control-checkbox_dummy label span,
127
  .customize-control.customize-control-checkbox_dummy label i {
128
  opacity: 0.5;
@@ -177,10 +209,11 @@ p.description a {
177
  *
178
  */
179
  #customize-footer-actions {
180
- height: 120px;
181
- padding: 12px;
182
- box-sizing: border-box;
183
- display: none;
 
184
  }
185
 
186
  .happyforms-action-buttons {
@@ -201,6 +234,12 @@ p.description a {
201
  width: 100%;
202
  }
203
 
 
 
 
 
 
 
204
  .button-wide {
205
  width: 100%;
206
  text-align: center;
@@ -283,8 +322,10 @@ p.happyforms-step-progress-counter {
283
 
284
  .happyforms-part-advanced-settings-wrap {
285
  display: none;
286
- overflow: hidden;
287
- border-top: 1px solid #eee;
 
 
288
  }
289
 
290
  a.happyforms-form-part-advanced-settings {
@@ -297,6 +338,14 @@ a.happyforms-form-part-advanced-settings {
297
  clear: both;
298
  }
299
 
 
 
 
 
 
 
 
 
300
  a.happyforms-form-part-logic {
301
  float: right;
302
  margin-right: 10px;
@@ -405,69 +454,31 @@ a.happyforms-form-part-remove:hover {
405
  color: #555d66;
406
  }
407
 
 
 
 
 
408
  /**
409
  *
410
  * Form edit
411
  *
412
  */
413
- #customize-control-email_recipient,
414
- #customize-control-email_bccs,
415
- #customize-control-alert_email_subject,
416
- #customize-control-confirmation_email_from_name,
417
- #customize-control-confirmation_email_subject,
418
- #customize-control-confirmation_email_content,
419
- #customize-control-confirmation_email_include_values,
420
- #customize-control-email_mark_and_reply,
421
- #customize-control-alert_email_attachment_links,
422
- #customize-control-alert_email_hide_placeholder_parts,
423
- #customize-control-alert_email_include_referral_url,
424
- #customize-control-captcha_site_key,
425
- #customize-control-captcha_secret_key,
426
- #customize-control-captcha_label,
427
- #customize-control-review_button_label,
428
- #customize-control-redirect_url,
429
- #customize-control-redirect_blank,
430
- #customize-control-optional_part_label,
431
- #customize-control-html_id {
432
  display: none;
433
  }
434
 
435
- #customize-control-receive_email_alerts.checked ~ #customize-control-email_recipient,
436
- #customize-control-receive_email_alerts.checked ~ #customize-control-email_bccs,
437
- #customize-control-receive_email_alerts.checked ~ #customize-control-alert_email_subject,
438
- #customize-control-receive_email_alerts.checked ~ #customize-control-email_mark_and_reply,
439
- #customize-control-receive_email_alerts.checked ~ #customize-control-alert_email_attachment_links,
440
- #customize-control-receive_email_alerts.checked ~ #customize-control-alert_email_hide_placeholder_links,
441
- #customize-control-receive_email_alerts.checked ~ #customize-control-alert_email_include_referral_url,
442
- #customize-control-send_confirmation_email.checked ~ #customize-control-confirmation_email_from_name,
443
- #customize-control-send_confirmation_email.checked ~ #customize-control-confirmation_email_subject,
444
- #customize-control-send_confirmation_email.checked ~ #customize-control-confirmation_email_content,
445
- #customize-control-send_confirmation_email.checked ~ #customize-control-confirmation_email_include_values,
446
- #customize-control-captcha.checked ~ #customize-control-captcha_site_key,
447
- #customize-control-captcha.checked ~ #customize-control-captcha_secret_key,
448
- #customize-control-captcha.checked ~ #customize-control-captcha_label,
449
- #customize-control-preview_before_submit.checked ~ #customize-control-review_button_label,
450
- #customize-control-redirect_on_complete.checked ~ #customize-control-redirect_url,
451
- #customize-control-redirect_on_complete.checked ~ #customize-control-redirect_blank,
452
- #customize-control-use_html_id.checked ~ #customize-control-html_id {
453
- display: block;
454
  }
455
 
456
- .happyforms-setup-view .customize-control {
457
- margin-bottom: 12px;
458
- padding-bottom: 12px;
459
- border-bottom: 1px solid #ddd;
460
  }
461
 
462
- .happyforms-setup-view #customize-control-receive_email_alerts.checked,
463
- .happyforms-setup-view #customize-control-send_confirmation_email.checked,
464
- .happyforms-setup-view #customize-control-use_html_id.checked,
465
- .happyforms-setup-view #customize-control-redirect_on_complete.checked,
466
- .happyforms-setup-view #customize-control-has_goal_page.checked,
467
- .happyforms-setup-view #customize-control-captcha.checked,
468
- .happyforms-setup-view #customize-control-preview_before_submit.checked {
469
- margin-bottom: 0;
470
- border-bottom: 0;
471
  }
472
 
473
  .happyforms-setup-view #customize-control-email_recipient,
@@ -482,15 +493,36 @@ a.happyforms-form-part-remove:hover {
482
  border-bottom: 0;
483
  }
484
 
485
- .happyforms-setup-view .customize-control .customize-inside-control-row {
 
 
486
  padding: 0;
487
  }
488
 
489
- .happyforms-setup-view .customize-control .customize-inside-control-row h4 {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
490
  margin: 0.5em 0;
491
  }
492
 
493
- .happyforms-setup-view .customize-control-title {
 
494
  line-height: 1;
495
  padding-bottom: 5px;
496
  }
@@ -502,15 +534,24 @@ a.happyforms-form-part-remove:hover {
502
  */
503
  .happyforms-parts-placeholder {
504
  display: block;
505
- border: 1px dashed #b4b9be;
506
- padding: 30px 30px 40px;
507
  box-sizing: border-box;
508
- text-align: center;
509
- background-color: #edeff0;
510
  }
511
 
512
- .happyforms-stack-view.has-parts .happyforms-parts-placeholder {
513
- display: none;
 
 
 
 
 
 
 
 
 
 
 
 
 
514
  }
515
 
516
  .happyforms-parts-placeholder img {
@@ -519,21 +560,13 @@ a.happyforms-form-part-remove:hover {
519
  }
520
 
521
  .happyforms-parts-placeholder p {
522
- line-height: 1.6;
523
  font-size: 13px;
524
- color: #32373c;
525
- margin: 0;
526
- font-style: italic;
527
- }
528
-
529
- .happyforms-parts-placeholder p:first-of-type {
530
- margin-bottom: 10px;
531
- font-size: 14px;
532
- font-style: normal;
533
  }
534
 
535
  .happyforms-parts-placeholder p:last-of-type {
536
- margin-bottom: 30px;
537
  }
538
 
539
  .happyforms-parts-placeholder__placeholder {
@@ -547,7 +580,6 @@ a.happyforms-form-part-remove:hover {
547
  }
548
 
549
  .happyforms-form-widgets {
550
- margin-top: 10px;
551
  overflow-x: hidden;
552
  }
553
 
@@ -783,9 +815,16 @@ textarea.option-import-area {
783
 
784
  div.character-limit-settings {
785
  display: flex;
 
786
  justify-content: space-between;
787
  }
788
 
 
 
 
 
 
 
789
  div.character-limit-settings input[type=number] {
790
  width: 35%;
791
  }
@@ -799,8 +838,13 @@ div.character-limit-settings select {
799
  * Form parts drawer
800
  *
801
  */
 
 
 
 
802
  body.adding-happyforms-parts .wp-full-overlay-main {
803
  left: 300px;
 
804
  }
805
 
806
  #happyforms-parts-drawer {
@@ -815,6 +859,11 @@ body.adding-happyforms-parts .wp-full-overlay-main {
815
  z-index: 4;
816
  background: #eee;
817
  border-right: 1px solid #ddd;
 
 
 
 
 
818
  }
819
 
820
  .happyforms-parts-drawer-header-search {
@@ -1129,6 +1178,8 @@ ul.happyforms-style-controls .customize-control {
1129
  .happyforms-customize-controls-wrap--side-by-side {
1130
  display: flex;
1131
  justify-content: space-between;
 
 
1132
  }
1133
 
1134
  .happyforms-customize-controls-wrap--side-by-side > * {
@@ -1170,13 +1221,16 @@ ul.happyforms-style-controls .customize-control.happyforms-divider-control h3 {
1170
 
1171
  .happyforms-style-controls-group {
1172
  position: absolute;
1173
- top: 0;
1174
  left: 0;
1175
  z-index: 9999;
1176
  height: 0;
1177
  overflow: hidden;
1178
  width: 100%;
1179
  background-color: #eee;
 
 
 
1180
  transform: translateX(100%);
1181
  transition: .18s transform cubic-bezier(.645, .045, .355, 1),
1182
  .18s -webkit-transform cubic-bezier(.645, .045, .355, 1)
@@ -1252,98 +1306,23 @@ li.customize-control.happyforms-range-control label {
1252
  display: block;
1253
  }
1254
 
1255
- li.customize-control.happyforms-range-control input {
1256
- float: left;
1257
- width: 20%;
 
1258
  }
1259
 
1260
- li.customize-control.happyforms-range-control .happyforms-range-slider {
1261
- float: right;
1262
- width: 75%;
1263
- margin-top: 11px;
1264
  }
1265
 
1266
  li.customize-control.happyforms-range-control select.happyforms-unit-switch {
1267
- position: relative;
1268
- top: -1px;
1269
- float: left;
1270
- width: 40px;
1271
  height: 30px;
1272
  }
1273
 
1274
- li.customize-control#customize-control-form_width .happyforms-range-slider {
1275
- width: 55%;
1276
- margin-right: 15px;
1277
- }
1278
-
1279
- li.customize-control.happyforms-range-control input[type=number] {
1280
- padding-right: 2px;
1281
- }
1282
-
1283
- @media screen and (max-width: 782px) {
1284
- li.customize-control.happyforms-range-control input[type=number] {
1285
- height: auto;
1286
- line-height: 1;
1287
- font-size: 12px;
1288
- }
1289
- }
1290
-
1291
- li.customize-control.happyforms-range-control .ui-slider-handle {
1292
- position: absolute;
1293
- z-index: 2;
1294
- top: -.3em;
1295
- border-color: #777;
1296
- background: #777;
1297
- }
1298
-
1299
- li.customize-control.happyforms-range-control .ui-slider-horizontal {
1300
- position: relative;
1301
- height: .6em;
1302
- border-color: #fff;
1303
- background: #fff;
1304
- }
1305
-
1306
- li.customize-control.happyforms-range-control .ui-slider-handle {
1307
- width: 1.2em;
1308
- height: 1.2em;
1309
- border-radius: 100%;
1310
- }
1311
-
1312
- li.customize-control.happyforms-range-control .ui-slider-handle:hover {
1313
- cursor: pointer;
1314
- }
1315
-
1316
- /* Button set */
1317
-
1318
- li.customize-control .happyforms-buttonset-container label {
1319
- padding: 5px 10px;
1320
- line-height: 28px;
1321
- outline: 1px solid #fff;
1322
- border: none;
1323
- font-size: 13px;
1324
- color: #555555;
1325
- background: #eee;
1326
- }
1327
-
1328
- li.customize-control .happyforms-buttonset-container label:last-child {
1329
- border-right-width: 1px;
1330
- }
1331
-
1332
- li.customize-control .happyforms-buttonset-container .ui-state-hover {
1333
- color: #0073aa;
1334
- background-color: rgba(255, 255, 255, .25);
1335
- }
1336
-
1337
- li.customize-control .happyforms-buttonset-container .ui-state-active,
1338
- li.customize-control .happyforms-buttonset-container .ui-state-active.ui-state-hover {
1339
- color: #212121;
1340
- background-color: #fff;
1341
- }
1342
-
1343
- li.customize-control.happyforms-buttonset-control + .customize-control h2 {
1344
- margin-top: 1.8rem;
1345
- }
1346
-
1347
  .happyforms-parts-expand-collapse-wrap {
1348
  float: right;
1349
  font-weight: normal;
@@ -1406,3 +1385,31 @@ i.mce-i-happyforms_narrative_input:after {
1406
  .happyforms-widget-form .mce-btn.mce-active:hover i {
1407
  color: inherit;
1408
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7
  z-index: 1000;
8
  }
9
 
10
+ .wp-full-overlay-sidebar .wp-full-overlay-header {
11
+ position: relative;
12
+ z-index: 9999;
13
+ height: auto;
14
+ padding: 0;
15
+ }
16
+
17
+ #customize-controls .wp-full-overlay-sidebar-content {
18
+ top: 90px;
19
+ }
20
+
21
+ #customize-header-actions {
22
+ border-bottom: 0;
23
+ }
24
+
25
  /**
26
  *
27
  * Header actions
30
  #happyforms-save-button-wrapper {
31
  transition: .18s margin ease-in-out;
32
  float: right;
33
+ height: 37px;
34
  margin-top: 8px;
35
+ margin-right: 15px;
36
  }
37
 
38
  #happyforms-sidebar-controls {
78
  box-shadow: none;
79
  }
80
 
81
+ #happyforms-steps-nav {
82
+ clear: both;
83
+ padding-top: 10px;
84
+ border-top: 1px solid #ddd;
85
+ }
86
+
87
+ #happyforms-steps-nav .nav-tab-wrapper {
88
+ padding-top: 0;
89
+ }
90
+
91
  /**
92
  *
93
  * Sidebar stacked view
94
  *
95
  */
 
 
 
96
 
97
  .happyforms-stack-view {
98
  position: absolute;
123
  font-style: normal;
124
  }
125
 
126
+ .customize-control p.description:last-child {
127
+ margin-bottom: 0;
128
+ }
129
+
130
  .happyforms-step-description p.description {
131
  margin: 0 0 30px;
132
  }
151
  float: none;
152
  }
153
 
154
+ .customize-control select {
155
+ max-width: 100%;
156
+ }
157
+
158
  .customize-control.customize-control-checkbox_dummy label span,
159
  .customize-control.customize-control-checkbox_dummy label i {
160
  opacity: 0.5;
209
  *
210
  */
211
  #customize-footer-actions {
212
+ z-index: 9999;
213
+ }
214
+
215
+ #customize-footer-actions .devices button {
216
+ vertical-align: top;
217
  }
218
 
219
  .happyforms-action-buttons {
234
  width: 100%;
235
  }
236
 
237
+ .happyforms-action-buttons .dashicons {
238
+ line-height: 1.3;
239
+ font-size: 15px;
240
+ vertical-align: middle;
241
+ }
242
+
243
  .button-wide {
244
  width: 100%;
245
  text-align: center;
322
 
323
  .happyforms-part-advanced-settings-wrap {
324
  display: none;
325
+ }
326
+
327
+ .happyforms-part-advanced-settings-wrap > p:first-child {
328
+ margin-top: 0;
329
  }
330
 
331
  a.happyforms-form-part-advanced-settings {
338
  clear: both;
339
  }
340
 
341
+ .happyforms-part-control-wrap {
342
+ margin: 1em 0;
343
+ }
344
+
345
+ .happyforms-part-control-wrap label {
346
+ line-height: 1.5;
347
+ }
348
+
349
  a.happyforms-form-part-logic {
350
  float: right;
351
  margin-right: 10px;
454
  color: #555d66;
455
  }
456
 
457
+ .customize-control-title .dashicons {
458
+ vertical-align: middle;
459
+ }
460
+
461
  /**
462
  *
463
  * Form edit
464
  *
465
  */
466
+ #customize-control-optional_part_label {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
467
  display: none;
468
  }
469
 
470
+ .customize-control-group.happyforms-nested-settings {
471
+ display: none;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
472
  }
473
 
474
+ #customize-control-receive_email_alerts.checked ~ .happyforms-nested-settings[data-trigger=receive_email_alerts],
475
+ #customize-control-send_confirmation_email.checked ~ .happyforms-nested-settings[data-trigger=send_confirmation_email] {
476
+ display: block;
 
477
  }
478
 
479
+ .happyforms-setup-view .customize-control,
480
+ .happyforms-email-view .customize-control {
481
+ margin-bottom: 15px;
 
 
 
 
 
 
482
  }
483
 
484
  .happyforms-setup-view #customize-control-email_recipient,
493
  border-bottom: 0;
494
  }
495
 
496
+ .happyforms-setup-view .customize-control .customize-inside-control-row,
497
+ .happyforms-email-view .customize-control .customize-inside-control-row {
498
+ margin-left: 0;
499
  padding: 0;
500
  }
501
 
502
+ .happyforms-setup-view .customize-control-radio .customize-inside-control-row,
503
+ .happyforms-email-view .customize-control-radio .customize-inside-control-row {
504
+ padding: inherit;
505
+ }
506
+
507
+ .happyforms-style-view .customize-control .customize-inside-control-row {
508
+ margin-left: 0;
509
+ }
510
+
511
+ .customize-control-radio input[type="radio"] {
512
+ margin-left: 0;
513
+ }
514
+
515
+ .happyforms-style-view .customize-control .customize-inside-control-row label {
516
+ vertical-align: top;
517
+ }
518
+
519
+ .happyforms-setup-view .customize-control .customize-inside-control-row h4,
520
+ .happyforms-email-view .customize-control .customize-inside-control-row h4 {
521
  margin: 0.5em 0;
522
  }
523
 
524
+ .happyforms-setup-view .customize-control-title,
525
+ .happyforms-email-view .customize-control-title {
526
  line-height: 1;
527
  padding-bottom: 5px;
528
  }
534
  */
535
  .happyforms-parts-placeholder {
536
  display: block;
 
 
537
  box-sizing: border-box;
 
 
538
  }
539
 
540
+ .happyforms-add-new-part {
541
+ float: right;
542
+ }
543
+
544
+ body.adding-happyforms-parts .happyforms-add-new-part,
545
+ body.adding-happyforms-parts .happyforms-add-new-part:hover,
546
+ body.adding-happyforms-parts .happyforms-add-new-part:focus {
547
+ background: #eee;
548
+ border-color: #929793;
549
+ color: #32373c;
550
+ box-shadow: inset 0 2px 5px -3px rgba(0, 0, 0, 0.5);
551
+ }
552
+
553
+ body.adding-happyforms-parts .happyforms-add-new-part:before {
554
+ transform: rotate(45deg);
555
  }
556
 
557
  .happyforms-parts-placeholder img {
560
  }
561
 
562
  .happyforms-parts-placeholder p {
 
563
  font-size: 13px;
564
+ color: #555d66;
565
+ margin: 5px 0 0;
 
 
 
 
 
 
 
566
  }
567
 
568
  .happyforms-parts-placeholder p:last-of-type {
569
+ margin-bottom: 10px;
570
  }
571
 
572
  .happyforms-parts-placeholder__placeholder {
580
  }
581
 
582
  .happyforms-form-widgets {
 
583
  overflow-x: hidden;
584
  }
585
 
815
 
816
  div.character-limit-settings {
817
  display: flex;
818
+ flex-flow: row wrap;
819
  justify-content: space-between;
820
  }
821
 
822
+ div.character-limit-settings label {
823
+ flex: 1 1 100%;
824
+ width: 100%;
825
+ margin-bottom: 2px;
826
+ }
827
+
828
  div.character-limit-settings input[type=number] {
829
  width: 35%;
830
  }
838
  * Form parts drawer
839
  *
840
  */
841
+ .wp-full-overlay-main {
842
+ transition: left .18s;
843
+ }
844
+
845
  body.adding-happyforms-parts .wp-full-overlay-main {
846
  left: 300px;
847
+ opacity: 0.4;
848
  }
849
 
850
  #happyforms-parts-drawer {
859
  z-index: 4;
860
  background: #eee;
861
  border-right: 1px solid #ddd;
862
+ transition: left .18s;
863
+ }
864
+
865
+ #happyforms-parts-drawer.expanded {
866
+ left: 0;
867
  }
868
 
869
  .happyforms-parts-drawer-header-search {
1178
  .happyforms-customize-controls-wrap--side-by-side {
1179
  display: flex;
1180
  justify-content: space-between;
1181
+ margin-top: -1em;
1182
+ margin-bottom: -1em;
1183
  }
1184
 
1185
  .happyforms-customize-controls-wrap--side-by-side > * {
1221
 
1222
  .happyforms-style-controls-group {
1223
  position: absolute;
1224
+ top: 2px;
1225
  left: 0;
1226
  z-index: 9999;
1227
  height: 0;
1228
  overflow: hidden;
1229
  width: 100%;
1230
  background-color: #eee;
1231
+ }
1232
+
1233
+ .happyforms-style-controls-group.animate {
1234
  transform: translateX(100%);
1235
  transition: .18s transform cubic-bezier(.645, .045, .355, 1),
1236
  .18s -webkit-transform cubic-bezier(.645, .045, .355, 1)
1306
  display: block;
1307
  }
1308
 
1309
+ .happyforms-range-control-wrap {
1310
+ display: flex;
1311
+ flex-flow: row wrap;
1312
+ align-items: center;
1313
  }
1314
 
1315
+ .happyforms-range-control-wrap.has-unit-switch input[type=range] {
1316
+ position: relative;
1317
+ top: 10px;
1318
+ margin-left: 10px;
1319
  }
1320
 
1321
  li.customize-control.happyforms-range-control select.happyforms-unit-switch {
1322
+ width: 50px;
 
 
 
1323
  height: 30px;
1324
  }
1325
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1326
  .happyforms-parts-expand-collapse-wrap {
1327
  float: right;
1328
  font-weight: normal;
1385
  .happyforms-widget-form .mce-btn.mce-active:hover i {
1386
  color: inherit;
1387
  }
1388
+
1389
+ /**
1390
+ *
1391
+ * Nested settings
1392
+ *
1393
+ */
1394
+ .happyforms-nested-settings {
1395
+ margin-left: 8px;
1396
+ padding-left: 16px;
1397
+ border-left: 1px solid #eee;
1398
+ }
1399
+ .happyforms-setup-view .happyforms-nested-settings,
1400
+ .happyforms-email-view .happyforms-nested-settings {
1401
+ margin-top: -5px;
1402
+ margin-bottom: 12px;
1403
+ padding-top: 5px;
1404
+ border-left-color: #ddd;
1405
+ }
1406
+ .happyforms-nested-settings .customize-control:last-of-type {
1407
+ margin-bottom: 0;
1408
+ padding-bottom: 0;
1409
+ border-bottom: 0;
1410
+ }
1411
+ .happyforms-nested-settings > .happyforms-customize-controls-wrap--side-by-side,
1412
+ .happyforms-nested-settings > .happyforms-customize-controls-wrap--side-by-side p {
1413
+ margin-top: 0;
1414
+ margin-bottom: 0;
1415
+ }
core/assets/css/layout.css CHANGED
@@ -338,7 +338,7 @@ h3.happyforms-form__title {
338
  }
339
 
340
  @media screen and (min-width: 800px) {
341
- .happyforms-part--label-left .happyforms-part__label {
342
  float: none;
343
  width: 25%;
344
  margin-bottom: 0;
@@ -346,7 +346,7 @@ h3.happyforms-form__title {
346
  }
347
  }
348
 
349
- .happyforms-part--label-left .happyforms-part-wrap>.happyforms-part__el {
350
  width: 75%;
351
  }
352
 
@@ -359,7 +359,7 @@ h3.happyforms-form__title {
359
  flex-flow: column;
360
  }
361
 
362
- .happyforms-part--label-left .happyforms-part__label {
363
  align-self: flex-start;
364
  }
365
 
@@ -730,7 +730,7 @@ h3.happyforms-form__title {
730
  width: 100%;
731
  }
732
 
733
- .happyforms-part--label-hidden .happyforms-part__label {
734
  display: none !important;
735
  }
736
 
338
  }
339
 
340
  @media screen and (min-width: 800px) {
341
+ .happyforms-part--label-left .happyforms-part-wrap > .happyforms-part__label {
342
  float: none;
343
  width: 25%;
344
  margin-bottom: 0;
346
  }
347
  }
348
 
349
+ .happyforms-part--label-left .happyforms-part-wrap > .happyforms-part__el {
350
  width: 75%;
351
  }
352
 
359
  flex-flow: column;
360
  }
361
 
362
+ .happyforms-part--label-left .happyforms-part-wrap > .happyforms-part__label {
363
  align-self: flex-start;
364
  }
365
 
730
  width: 100%;
731
  }
732
 
733
+ .happyforms-part--label-hidden .happyforms-part-wrap > .happyforms-part__label {
734
  display: none !important;
735
  }
736
 
core/assets/js/parts/part-email.js CHANGED
@@ -32,7 +32,7 @@
32
  * @return void
33
  */
34
  onConfirmationChange: function( e ) {
35
- $confirmationSettings = $( '.confirmation-field-setting', this.$el );
36
 
37
  if ( this.model.get( 'confirmation_field' ) ) {
38
  $confirmationSettings.show();
32
  * @return void
33
  */
34
  onConfirmationChange: function( e ) {
35
+ $confirmationSettings = $( '.happyforms-nested-settings[data-trigger="confirmation_field"]', this.$el );
36
 
37
  if ( this.model.get( 'confirmation_field' ) ) {
38
  $confirmationSettings.show();
core/assets/js/parts/part-number.js CHANGED
@@ -28,7 +28,7 @@
28
  },
29
 
30
  onConfirmationChange: function( e ) {
31
- $confirmationSettings = $( '.confirmation-field-setting', this.$el );
32
 
33
  if ( this.model.get( 'confirmation_field' ) ) {
34
  $confirmationSettings.show();
@@ -60,7 +60,7 @@
60
  onMaskedChange: function(e) {
61
  var $input = $( e.target );
62
  var attribute = $input.data( 'bind' );
63
- var $maskWrapper = this.$el.find( '.mask-wrapper' );
64
 
65
  if ( $input.is( ':checked' ) ) {
66
  this.model.set( attribute, 1 );
28
  },
29
 
30
  onConfirmationChange: function( e ) {
31
+ $confirmationSettings = $( '.happyforms-nested-settings[data-trigger="confirmation_field"]', this.$el );
32
 
33
  if ( this.model.get( 'confirmation_field' ) ) {
34
  $confirmationSettings.show();
60
  onMaskedChange: function(e) {
61
  var $input = $( e.target );
62
  var attribute = $input.data( 'bind' );
63
+ var $maskWrapper = this.$el.find( '.happyforms-nested-settings[data-trigger="masked"]' );
64
 
65
  if ( $input.is( ':checked' ) ) {
66
  this.model.set( attribute, 1 );
core/classes/class-form-admin.php CHANGED
@@ -46,7 +46,6 @@ class HappyForms_Form_Admin {
46
  add_filter( "bulk_actions-edit-{$post_type}", array( $this, 'bulk_actions' ) );
47
  add_filter( 'bulk_post_updated_messages', array( $this, 'bulk_post_updated_messages' ), 10, 2 );
48
  add_action( 'load-edit.php', array( $this, 'define_screen_settings' ) );
49
- add_action( 'restrict_manage_posts', array( $this, 'restrict_manage_posts' ) );
50
  add_filter( "manage_{$post_type}_posts_columns", array( $this, 'column_headers' ), PHP_INT_MAX );
51
  add_action( "manage_{$post_type}_posts_custom_column", array( $this, 'column_content' ), 10, 2 );
52
  add_filter( 'post_row_actions', array( $this, 'row_actions' ), 10, 2 );
@@ -223,22 +222,6 @@ class HappyForms_Form_Admin {
223
  $screen = get_current_screen();
224
  }
225
 
226
- /**
227
- * Action: silence output of core filters
228
- * above the All Form admin screen table.
229
- *
230
- * @since 1.0
231
- *
232
- * @hooked action restrict_manage_posts
233
- *
234
- * @return void
235
- */
236
- public function restrict_manage_posts( $post_type ) {
237
- if ( happyforms_get_form_controller()->post_type === $post_type ) {
238
- ob_clean();
239
- }
240
- }
241
-
242
  /**
243
  * Filter: filter the column headers for the
244
  * All Forms admin screen table.
@@ -387,10 +370,17 @@ class HappyForms_Form_Admin {
387
  admin_url( 'edit.php' )
388
  );
389
 
 
 
 
 
 
 
 
390
  $admin_notices = happyforms_get_admin_notices();
391
  $admin_notices->register(
392
  'happyforms_form_duplicated',
393
- __( 'Form duplicated succesfully.', HAPPYFORMS_TEXT_DOMAIN ),
394
  array(
395
  'type' => 'success',
396
  'screen' => array( 'edit-happyform' ),
46
  add_filter( "bulk_actions-edit-{$post_type}", array( $this, 'bulk_actions' ) );
47
  add_filter( 'bulk_post_updated_messages', array( $this, 'bulk_post_updated_messages' ), 10, 2 );
48
  add_action( 'load-edit.php', array( $this, 'define_screen_settings' ) );
 
49
  add_filter( "manage_{$post_type}_posts_columns", array( $this, 'column_headers' ), PHP_INT_MAX );
50
  add_action( "manage_{$post_type}_posts_custom_column", array( $this, 'column_content' ), 10, 2 );
51
  add_filter( 'post_row_actions', array( $this, 'row_actions' ), 10, 2 );
222
  $screen = get_current_screen();
223
  }
224
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
225
  /**
226
  * Filter: filter the column headers for the
227
  * All Forms admin screen table.
370
  admin_url( 'edit.php' )
371
  );
372
 
373
+ $notice = sprintf(
374
+ '%s <a href="%s">%s</a>',
375
+ __( '1 form duplicated.', HAPPYFORMS_TEXT_DOMAIN ),
376
+ get_delete_post_link( $new_form_id, '', true ),
377
+ __( 'Undo', HAPPYFORMS_TEXT_DOMAIN )
378
+ );
379
+
380
  $admin_notices = happyforms_get_admin_notices();
381
  $admin_notices->register(
382
  'happyforms_form_duplicated',
383
+ $notice,
384
  array(
385
  'type' => 'success',
386
  'screen' => array( 'edit-happyform' ),
core/classes/class-form-controller.php CHANGED
@@ -73,6 +73,7 @@ class HappyForms_Form_Controller {
73
  $labels = array(
74
  'name' => __( 'Forms', HAPPYFORMS_TEXT_DOMAIN ),
75
  'singular_name' => __( 'Form', HAPPYFORMS_TEXT_DOMAIN ),
 
76
  'add_new_item' => __( 'Build form', HAPPYFORMS_TEXT_DOMAIN ),
77
  'edit_item' => __( 'Edit form', HAPPYFORMS_TEXT_DOMAIN ),
78
  'new_item' => __( 'Build form', HAPPYFORMS_TEXT_DOMAIN ),
@@ -181,7 +182,7 @@ class HappyForms_Form_Controller {
181
  'sanitize' => 'intval',
182
  ),
183
  'post_title' => array(
184
- 'default' => __( 'Untitled form', HAPPYFORMS_TEXT_DOMAIN ),
185
  'sanitize' => 'sanitize_text_field',
186
  ),
187
  'post_status' => array(
@@ -526,6 +527,10 @@ class HappyForms_Form_Controller {
526
  * @return array
527
  */
528
  public function update( $form_data = array() ) {
 
 
 
 
529
  $validated_data = $this->validate_fields( $form_data );
530
 
531
  if ( isset( $validated_data['ID'] ) && 0 === $validated_data['ID'] ) {
73
  $labels = array(
74
  'name' => __( 'Forms', HAPPYFORMS_TEXT_DOMAIN ),
75
  'singular_name' => __( 'Form', HAPPYFORMS_TEXT_DOMAIN ),
76
+ 'add_new' => __( 'Add New', $this->post_type, HAPPYFORMS_TEXT_DOMAIN ),
77
  'add_new_item' => __( 'Build form', HAPPYFORMS_TEXT_DOMAIN ),
78
  'edit_item' => __( 'Edit form', HAPPYFORMS_TEXT_DOMAIN ),
79
  'new_item' => __( 'Build form', HAPPYFORMS_TEXT_DOMAIN ),
182
  'sanitize' => 'intval',
183
  ),
184
  'post_title' => array(
185
+ 'default' => '',
186
  'sanitize' => 'sanitize_text_field',
187
  ),
188
  'post_status' => array(
527
  * @return array
528
  */
529
  public function update( $form_data = array() ) {
530
+ if ( empty( $form_data['post_title'] ) ) {
531
+ $form_data['post_title'] = __( '(no title)', HAPPYFORMS_TEXT_DOMAIN );
532
+ }
533
+
534
  $validated_data = $this->validate_fields( $form_data );
535
 
536
  if ( isset( $validated_data['ID'] ) && 0 === $validated_data['ID'] ) {
core/classes/class-form-email.php ADDED
@@ -0,0 +1,189 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class HappyForms_Form_Email {
4
+
5
+ private static $instance;
6
+
7
+ public static function instance() {
8
+ if ( is_null( self::$instance ) ) {
9
+ self::$instance = new self();
10
+ }
11
+
12
+ self::$instance->hook();
13
+
14
+ return self::$instance;
15
+ }
16
+
17
+ public function hook() {
18
+ add_filter( 'happyforms_meta_fields', array( $this, 'meta_fields' ) );
19
+ add_action( 'happyforms_do_email_control', array( happyforms_get_setup(), 'do_control' ), 10, 3 );
20
+ }
21
+
22
+ public function get_fields() {
23
+ global $current_user;
24
+
25
+ $fields = array(
26
+ 'receive_email_alerts' => array(
27
+ 'default' => 1,
28
+ 'sanitize' => 'happyforms_sanitize_checkbox'
29
+ ),
30
+ 'email_recipient' => array(
31
+ 'default' => ( $current_user->user_email ) ? $current_user->user_email : '',
32
+ 'sanitize' => 'happyforms_sanitize_emails',
33
+ ),
34
+ 'email_bccs' => array(
35
+ 'default' => '',
36
+ 'sanitize' => 'happyforms_sanitize_emails',
37
+ ),
38
+ 'email_mark_and_reply' => array(
39
+ 'default' => 0,
40
+ 'sanitize' => 'happyforms_sanitize_checkbox',
41
+ ),
42
+ 'alert_email_subject' => array(
43
+ 'default' => __( 'You received a new message', HAPPYFORMS_TEXT_DOMAIN ),
44
+ 'sanitize' => 'sanitize_text_field',
45
+ ),
46
+ 'send_confirmation_email' => array(
47
+ 'default' => 1,
48
+ 'sanitize' => 'happyforms_sanitize_checkbox'
49
+ ),
50
+ 'confirmation_email_sender_address' => array(
51
+ 'default' => ( $current_user->user_email ) ? $current_user->user_email : '',
52
+ 'sanitize' => 'happyforms_sanitize_emails',
53
+ ),
54
+ 'confirmation_email_reply_to' => array(
55
+ 'default' => ( $current_user->user_email ) ? $current_user->user_email : '',
56
+ 'sanitize' => 'happyforms_sanitize_emails',
57
+ ),
58
+ 'confirmation_email_from_name' => array(
59
+ 'default' => get_bloginfo( 'name' ),
60
+ 'sanitize' => 'sanitize_text_field',
61
+ ),
62
+ 'confirmation_email_subject' => array(
63
+ 'default' => __( 'We received your message', HAPPYFORMS_TEXT_DOMAIN ),
64
+ 'sanitize' => 'sanitize_text_field',
65
+ ),
66
+ 'confirmation_email_content' => array(
67
+ 'default' => __( 'Your message has been successfully sent. We appreciate you contacting us and we’ll be in touch soon.', HAPPYFORMS_TEXT_DOMAIN ),
68
+ 'sanitize' => 'esc_html',
69
+ ),
70
+ 'confirmation_email_include_values' => array(
71
+ 'default' => 0,
72
+ 'sanitize' => 'happyforms_sanitize_checkbox'
73
+ ),
74
+ );
75
+
76
+ return $fields;
77
+ }
78
+
79
+ public function get_controls() {
80
+ $controls = array(
81
+ 200 => array(
82
+ 'type' => 'checkbox',
83
+ 'label' => __( 'Receive submission alerts', HAPPYFORMS_TEXT_DOMAIN ),
84
+ 'field' => 'receive_email_alerts',
85
+ ),
86
+ 201 => array(
87
+ 'type' => 'group_start',
88
+ 'trigger' => 'receive_email_alerts'
89
+ ),
90
+ 300 => array(
91
+ 'type' => 'text',
92
+ 'label' => __( 'Email address', HAPPYFORMS_TEXT_DOMAIN ),
93
+ 'tooltip' => __( 'Add your email address here to receive a confirmation email for each form response. You can add multiple email addresses by separating each address with a comma.', HAPPYFORMS_TEXT_DOMAIN ),
94
+ 'field' => 'email_recipient',
95
+ ),
96
+ 310 => array(
97
+ 'type' => 'text',
98
+ 'label' => __( 'Email Bcc address', HAPPYFORMS_TEXT_DOMAIN ),
99
+ 'tooltip' => __( 'Add your Bcc email address here to receive a confirmation email for each form response without appearing in the received message header. You can add multiple email addresses by separating each address with a comma.', HAPPYFORMS_TEXT_DOMAIN ),
100
+ 'field' => 'email_bccs',
101
+ ),
102
+ 400 => array(
103
+ 'type' => 'text',
104
+ 'label' => __( 'Email subject', HAPPYFORMS_TEXT_DOMAIN ),
105
+ 'tooltip' => __( 'Each time a user submits a message, you\'ll receive an email with this subject.', HAPPYFORMS_TEXT_DOMAIN ),
106
+ 'field' => 'alert_email_subject',
107
+ ),
108
+ 490 => array(
109
+ 'type' => 'group_end'
110
+ ),
111
+ 500 => array(
112
+ 'type' => 'checkbox',
113
+ 'label' => __( 'Send confirmation email', HAPPYFORMS_TEXT_DOMAIN ),
114
+ 'field' => 'send_confirmation_email',
115
+ ),
116
+ 501 => array(
117
+ 'type' => 'group_start',
118
+ 'trigger' => 'send_confirmation_email'
119
+ ),
120
+ 580 => array(
121
+ 'type' => 'text',
122
+ 'label' => __( 'Email address', HAPPYFORMS_TEXT_DOMAIN ),
123
+ 'field' => 'confirmation_email_sender_address',
124
+ ),
125
+ 590 => array(
126
+ 'type' => 'text',
127
+ 'label' => __( 'Reply email address', HAPPYFORMS_TEXT_DOMAIN ),
128
+ 'field' => 'confirmation_email_reply_to',
129
+ ),
130
+ 600 => array(
131
+ 'type' => 'text',
132
+ 'label' => __( 'Email display name', HAPPYFORMS_TEXT_DOMAIN ),
133
+ 'tooltip' => __( 'If your form contains an email field, recipients will receive an email with this sender name.', HAPPYFORMS_TEXT_DOMAIN ),
134
+ 'field' => 'confirmation_email_from_name',
135
+ ),
136
+ 700 => array(
137
+ 'type' => 'text',
138
+ 'label' => __( 'Email subject', HAPPYFORMS_TEXT_DOMAIN ),
139
+ 'tooltip' => __( 'If your form contains an email field, recipients will receive an email with this subject.', HAPPYFORMS_TEXT_DOMAIN ),
140
+ 'field' => 'confirmation_email_subject',
141
+ ),
142
+ 800 => array(
143
+ 'type' => 'editor',
144
+ 'label' => __( 'Email content', HAPPYFORMS_TEXT_DOMAIN ),
145
+ 'tooltip' => __( 'If your form contains an email field, recipients will receive an email with this content.', HAPPYFORMS_TEXT_DOMAIN ),
146
+ 'field' => 'confirmation_email_content',
147
+ ),
148
+ 810 => array(
149
+ 'type' => 'checkbox',
150
+ 'label' => __( 'Include submitted values', HAPPYFORMS_TEXT_DOMAIN ),
151
+ 'field' => 'confirmation_email_include_values'
152
+ ),
153
+ 820 => array(
154
+ 'type' => 'group_end'
155
+ )
156
+ );
157
+
158
+ $controls = apply_filters( 'happyforms_email_controls', $controls );
159
+ ksort( $controls, SORT_NUMERIC );
160
+
161
+ return $controls;
162
+ }
163
+
164
+ /**
165
+ * Filter: add fields to form meta.
166
+ *
167
+ * @hooked filter happyforms_meta_fields
168
+ *
169
+ * @param array $fields Current form meta fields.
170
+ *
171
+ * @return array
172
+ */
173
+ public function meta_fields( $fields ) {
174
+ $fields = array_merge( $fields, $this->get_fields() );
175
+
176
+ return $fields;
177
+ }
178
+
179
+ }
180
+
181
+ if ( ! function_exists( 'happyforms_get_email' ) ):
182
+
183
+ function happyforms_get_email() {
184
+ return HappyForms_Form_Email::instance();
185
+ }
186
+
187
+ endif;
188
+
189
+ happyforms_get_email();
core/classes/class-form-setup.php CHANGED
@@ -55,46 +55,6 @@ class HappyForms_Form_Setup {
55
  'default' => __( 'Oops! Your response is invalid — please review your message.', HAPPYFORMS_TEXT_DOMAIN ),
56
  'sanitize' => 'esc_html'
57
  ),
58
- 'receive_email_alerts' => array(
59
- 'default' => 1,
60
- 'sanitize' => 'happyforms_sanitize_checkbox'
61
- ),
62
- 'email_recipient' => array(
63
- 'default' => ( $current_user->user_email ) ? $current_user->user_email : '',
64
- 'sanitize' => 'happyforms_sanitize_emails',
65
- ),
66
- 'email_bccs' => array(
67
- 'default' => '',
68
- 'sanitize' => 'happyforms_sanitize_emails',
69
- ),
70
- 'email_mark_and_reply' => array(
71
- 'default' => 0,
72
- 'sanitize' => 'happyforms_sanitize_checkbox',
73
- ),
74
- 'alert_email_subject' => array(
75
- 'default' => __( 'You received a new message', HAPPYFORMS_TEXT_DOMAIN ),
76
- 'sanitize' => 'sanitize_text_field',
77
- ),
78
- 'send_confirmation_email' => array(
79
- 'default' => 1,
80
- 'sanitize' => 'happyforms_sanitize_checkbox'
81
- ),
82
- 'confirmation_email_from_name' => array(
83
- 'default' => get_bloginfo( 'name' ),
84
- 'sanitize' => 'sanitize_text_field',
85
- ),
86
- 'confirmation_email_subject' => array(
87
- 'default' => __( 'We received your message', HAPPYFORMS_TEXT_DOMAIN ),
88
- 'sanitize' => 'sanitize_text_field',
89
- ),
90
- 'confirmation_email_content' => array(
91
- 'default' => __( 'Your message has been successfully sent. We appreciate you contacting us and we’ll be in touch soon.', HAPPYFORMS_TEXT_DOMAIN ),
92
- 'sanitize' => 'esc_html',
93
- ),
94
- 'confirmation_email_include_values' => array(
95
- 'default' => 0,
96
- 'sanitize' => 'happyforms_sanitize_checkbox'
97
- ),
98
  'redirect_on_complete' => array(
99
  'default' => 0,
100
  'sanitize' => 'happyforms_sanitize_checkbox',
@@ -120,7 +80,7 @@ class HappyForms_Form_Setup {
120
  'sanitize' => 'sanitize_text_field',
121
  ),
122
  'submit_button_label' => array(
123
- 'default' => __( 'Submit Form', HAPPYFORMS_TEXT_DOMAIN ),
124
  'sanitize' => 'sanitize_text_field',
125
  ),
126
  'form_expiration_datetime' => array(
@@ -210,91 +170,39 @@ class HappyForms_Form_Setup {
210
  'tooltip' => __( 'This is the message your users will see when there are form errors preventing submission.', HAPPYFORMS_TEXT_DOMAIN ),
211
  'field' => 'error_message',
212
  ),
213
- 200 => array(
214
- 'type' => 'checkbox',
215
- 'label' => __( 'Receive submission alerts', HAPPYFORMS_TEXT_DOMAIN ),
216
- 'field' => 'receive_email_alerts',
217
- ),
218
- 300 => array(
219
- 'type' => 'text',
220
- 'label' => __( 'Email address', HAPPYFORMS_TEXT_DOMAIN ),
221
- 'tooltip' => __( 'Add your email address here to receive a confirmation email for each form response. You can add multiple email addresses by separating each address with a comma.', HAPPYFORMS_TEXT_DOMAIN ),
222
- 'field' => 'email_recipient',
223
- ),
224
- 310 => array(
225
- 'type' => 'text',
226
- 'label' => __( 'Email Bcc address', HAPPYFORMS_TEXT_DOMAIN ),
227
- 'tooltip' => __( 'Add your Bcc email address here to receive a confirmation email for each form response without appearing in the received message header. You can add multiple email addresses by separating each address with a comma.', HAPPYFORMS_TEXT_DOMAIN ),
228
- 'field' => 'email_bccs',
229
- ),
230
- 400 => array(
231
- 'type' => 'text',
232
- 'label' => __( 'Email subject', HAPPYFORMS_TEXT_DOMAIN ),
233
- 'tooltip' => __( 'Each time a user submits a message, you\'ll receive an email with this subject.', 'happyforms' ),
234
- 'field' => 'alert_email_subject',
235
- ),
236
- 500 => array(
237
- 'type' => 'checkbox',
238
- 'label' => __( 'Send confirmation email', HAPPYFORMS_TEXT_DOMAIN ),
239
- 'field' => 'send_confirmation_email',
240
- ),
241
- 600 => array(
242
- 'type' => 'text',
243
- 'label' => __( 'Email display name', HAPPYFORMS_TEXT_DOMAIN ),
244
- 'tooltip' => __( 'If your form contains an email field, recipients will receive an email with this sender name.', HAPPYFORMS_TEXT_DOMAIN ),
245
- 'field' => 'confirmation_email_from_name',
246
- ),
247
- 700 => array(
248
- 'type' => 'text',
249
- 'label' => __( 'Email subject', HAPPYFORMS_TEXT_DOMAIN ),
250
- 'tooltip' => __( 'If your form contains an email field, recipients will receive an email with this subject.', HAPPYFORMS_TEXT_DOMAIN ),
251
- 'field' => 'confirmation_email_subject',
252
- ),
253
- 800 => array(
254
- 'type' => 'editor',
255
- 'label' => __( 'Email content', HAPPYFORMS_TEXT_DOMAIN ),
256
- 'tooltip' => __( 'If your form contains an email field, recipients will receive an email with this content.', HAPPYFORMS_TEXT_DOMAIN ),
257
- 'field' => 'confirmation_email_content',
258
- ),
259
- 810 => array(
260
- 'type' => 'checkbox',
261
- 'label' => __( 'Include submitted values', HAPPYFORMS_TEXT_DOMAIN ),
262
- 'field' => 'confirmation_email_include_values'
263
- ),
264
  899 => array(
265
  'type' => 'text',
266
  'label' => __( 'Required part label', HAPPYFORMS_TEXT_DOMAIN ),
267
- 'field' => 'required_part_label'
 
268
  ),
269
  900 => array(
270
  'type' => 'text',
271
  'label' => __( 'Optional part label', HAPPYFORMS_TEXT_DOMAIN ),
 
272
  'field' => 'optional_part_label',
273
  ),
274
  1000 => array(
275
  'type' => 'text',
276
  'label' => __( 'Submit button label', HAPPYFORMS_TEXT_DOMAIN ),
 
277
  'field' => 'submit_button_label',
278
  ),
279
  1100 => array(
280
  'type' => 'text',
281
- 'label' => __( 'Submit button HTML class', HAPPYFORMS_TEXT_DOMAIN ),
 
282
  'field' => 'submit_button_html_class'
283
  ),
284
- 1200 => array(
285
- 'type' => 'checkbox',
286
- 'label' => __( 'Set custom form HTML ID', HAPPYFORMS_TEXT_DOMAIN ),
287
- 'field' => 'use_html_id',
288
- 'tooltip' => __( 'Add a unique HTML ID to your form. Write without a hash (#) character.', HAPPYFORMS_TEXT_DOMAIN ),
289
- ),
290
  1201 => array(
291
  'type' => 'text',
292
  'label' => __( 'Form HTML ID', HAPPYFORMS_TEXT_DOMAIN ),
293
  'field' => 'html_id',
 
294
  ),
295
  1202 => array(
296
  'type' => 'checkbox',
297
- 'label' => __( 'Hide form after submission', HAPPYFORMS_TEXT_DOMAIN ),
298
  'tooltip' => __( 'Hide all form parts and display just title and confirmation message on submit.', HAPPYFORMS_TEXT_DOMAIN ),
299
  'field' => 'form_hide_on_submit'
300
  ),
@@ -312,22 +220,6 @@ class HappyForms_Form_Setup {
312
  return $controls;
313
  }
314
 
315
- public function get_control_index_by_field( $field = '' ) {
316
- if ( empty( $field ) ) {
317
- return;
318
- }
319
-
320
- $controls = $this->get_controls();
321
-
322
- foreach ( $controls as $key => $control ) {
323
- if ( isset( $control['field'] ) && $control['field'] === $field ) {
324
- return $key;
325
- }
326
- }
327
-
328
- return;
329
- }
330
-
331
  public function do_control( $control, $field, $index ) {
332
  $type = $control['type'];
333
  $path = happyforms_get_core_folder() . '/templates/customize-controls/setup';
@@ -340,6 +232,8 @@ class HappyForms_Form_Setup {
340
  case 'radio':
341
  case 'select':
342
  case 'textarea':
 
 
343
  require( "{$path}/{$type}.php" );
344
  break;
345
  default:
@@ -392,7 +286,7 @@ class HappyForms_Form_Setup {
392
  }
393
 
394
  public function form_html_id( $id, $form ) {
395
- if ( 1 === intval( happyforms_get_form_property( $form, 'use_html_id' ) ) && ! empty( $form['html_id'] ) ) {
396
  $id = $form['html_id'];
397
  }
398
 
55
  'default' => __( 'Oops! Your response is invalid — please review your message.', HAPPYFORMS_TEXT_DOMAIN ),
56
  'sanitize' => 'esc_html'
57
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
58
  'redirect_on_complete' => array(
59
  'default' => 0,
60
  'sanitize' => 'happyforms_sanitize_checkbox',
80
  'sanitize' => 'sanitize_text_field',
81
  ),
82
  'submit_button_label' => array(
83
+ 'default' => __( 'Send', HAPPYFORMS_TEXT_DOMAIN ),
84
  'sanitize' => 'sanitize_text_field',
85
  ),
86
  'form_expiration_datetime' => array(
170
  'tooltip' => __( 'This is the message your users will see when there are form errors preventing submission.', HAPPYFORMS_TEXT_DOMAIN ),
171
  'field' => 'error_message',
172
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
173
  899 => array(
174
  'type' => 'text',
175
  'label' => __( 'Required part label', HAPPYFORMS_TEXT_DOMAIN ),
176
+ 'tooltip' => __( 'This is the message your users will see when the required field is left empty.', HAPPYFORMS_TEXT_DOMAIN ),
177
+ 'field' => 'required_part_label',
178
  ),
179
  900 => array(
180
  'type' => 'text',
181
  'label' => __( 'Optional part label', HAPPYFORMS_TEXT_DOMAIN ),
182
+ 'tooltip' => __( 'Mark optional parts in your form to let your users distinguish them from required parts.', HAPPYFORMS_TEXT_DOMAIN ),
183
  'field' => 'optional_part_label',
184
  ),
185
  1000 => array(
186
  'type' => 'text',
187
  'label' => __( 'Submit button label', HAPPYFORMS_TEXT_DOMAIN ),
188
+ 'tooltip' => __( 'Change text of submit button to describe an action your form performs.', HAPPYFORMS_TEXT_DOMAIN ),
189
  'field' => 'submit_button_label',
190
  ),
191
  1100 => array(
192
  'type' => 'text',
193
+ 'label' => __( 'Submit button CSS classes', HAPPYFORMS_TEXT_DOMAIN ),
194
+ 'tooltip' => __( 'Add custom CSS classes separated by space for targeting a button in your stylesheet.', HAPPYFORMS_TEXT_DOMAIN ),
195
  'field' => 'submit_button_html_class'
196
  ),
 
 
 
 
 
 
197
  1201 => array(
198
  'type' => 'text',
199
  'label' => __( 'Form HTML ID', HAPPYFORMS_TEXT_DOMAIN ),
200
  'field' => 'html_id',
201
+ 'tooltip' => __( 'Add a unique HTML ID to your form. Write without a hash (#) character.', HAPPYFORMS_TEXT_DOMAIN ),
202
  ),
203
  1202 => array(
204
  'type' => 'checkbox',
205
+ 'label' => __( 'Hide form after completion', HAPPYFORMS_TEXT_DOMAIN ),
206
  'tooltip' => __( 'Hide all form parts and display just title and confirmation message on submit.', HAPPYFORMS_TEXT_DOMAIN ),
207
  'field' => 'form_hide_on_submit'
208
  ),
220
  return $controls;
221
  }
222
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
223
  public function do_control( $control, $field, $index ) {
224
  $type = $control['type'];
225
  $path = happyforms_get_core_folder() . '/templates/customize-controls/setup';
232
  case 'radio':
233
  case 'select':
234
  case 'textarea':
235
+ case 'group_start':
236
+ case 'group_end':
237
  require( "{$path}/{$type}.php" );
238
  break;
239
  default:
286
  }
287
 
288
  public function form_html_id( $id, $form ) {
289
+ if ( ! empty( $form['html_id'] ) ) {
290
  $id = $form['html_id'];
291
  }
292
 
core/classes/class-form-styles.php CHANGED
@@ -54,15 +54,12 @@ class HappyForms_Form_Styles {
54
  ),
55
  'form_width' => array(
56
  'default' => 100,
57
- 'unit' => '',
58
- 'include_unit_switch' => true,
59
- 'units' => array( '%', 'px' ),
60
- 'min' => 0,
61
  'max' => 100,
62
  'step' => 10,
63
  'target' => 'css_var',
64
  'variable' => '--happyforms-form-width',
65
- 'extra_class' => 'form-width-control',
66
  'sanitize' => 'sanitize_text_field'
67
  ),
68
  'form_padding' => array(
54
  ),
55
  'form_width' => array(
56
  'default' => 100,
57
+ 'unit' => '%',
58
+ 'min' => 10,
 
 
59
  'max' => 100,
60
  'step' => 10,
61
  'target' => 'css_var',
62
  'variable' => '--happyforms-form-width',
 
63
  'sanitize' => 'sanitize_text_field'
64
  ),
65
  'form_padding' => array(
core/classes/class-happyforms-core.php CHANGED
@@ -73,6 +73,7 @@ class HappyForms_Core {
73
  require_once( happyforms_get_core_folder() . '/classes/class-form-part-library.php' );
74
  require_once( happyforms_get_core_folder() . '/classes/class-form-styles.php' );
75
  require_once( happyforms_get_core_folder() . '/classes/class-form-setup.php' );
 
76
  require_once( happyforms_get_core_folder() . '/classes/class-session.php' );
77
  require_once( happyforms_get_core_folder() . '/classes/class-happyforms-widget.php' );
78
  require_once( happyforms_get_core_folder() . '/helpers/helper-form-templates.php' );
@@ -195,20 +196,11 @@ class HappyForms_Core {
195
 
196
  add_submenu_page(
197
  'happyforms',
198
- __( 'Integrations', HAPPYFORMS_TEXT_DOMAIN ),
199
- __( 'Integrations', HAPPYFORMS_TEXT_DOMAIN ),
200
- apply_filters( 'happyforms_integrations_page_capabilities', 'manage_options' ),
201
- apply_filters( 'happyforms_integrations_page_url', '#integrations' ),
202
- apply_filters( 'happyforms_integrations_page_method', '' )
203
- );
204
-
205
- add_submenu_page(
206
- 'happyforms',
207
- __( 'Import/Export', HAPPYFORMS_TEXT_DOMAIN ),
208
- __( 'Import/Export', HAPPYFORMS_TEXT_DOMAIN ),
209
- apply_filters( 'happyforms_export_page_capabilities', 'manage_options' ),
210
- apply_filters( 'happyforms_export_page_url', '#import-export' ),
211
- apply_filters( 'happyforms_export_page_method', '' )
212
  );
213
 
214
  add_submenu_page(
73
  require_once( happyforms_get_core_folder() . '/classes/class-form-part-library.php' );
74
  require_once( happyforms_get_core_folder() . '/classes/class-form-styles.php' );
75
  require_once( happyforms_get_core_folder() . '/classes/class-form-setup.php' );
76
+ require_once( happyforms_get_core_folder() . '/classes/class-form-email.php' );
77
  require_once( happyforms_get_core_folder() . '/classes/class-session.php' );
78
  require_once( happyforms_get_core_folder() . '/classes/class-happyforms-widget.php' );
79
  require_once( happyforms_get_core_folder() . '/helpers/helper-form-templates.php' );
196
 
197
  add_submenu_page(
198
  'happyforms',
199
+ __( 'Settings', HAPPYFORMS_TEXT_DOMAIN ),
200
+ __( 'Settings', HAPPYFORMS_TEXT_DOMAIN ) . apply_filters( 'happyforms_settings_page_menu_badge', '' ),
201
+ apply_filters( 'happyforms_settings_page_capabilities', 'manage_options' ),
202
+ apply_filters( 'happyforms_settings_page_url', '#settings' ),
203
+ apply_filters( 'happyforms_settings_page_method', '' )
 
 
 
 
 
 
 
 
 
204
  );
205
 
206
  add_submenu_page(
core/classes/class-tracking.php CHANGED
@@ -202,8 +202,8 @@ class HappyForms_Tracking {
202
  public function print_template( $template ) {
203
  if ( 'success' === $template ): ?>
204
  <h2><?php _e( 'Thank you!', HAPPYFORMS_TEXT_DOMAIN ); ?></h2>
205
- <p class="about-description"><?php _e( 'Now let\'s go enjoy HappyForms.', 'happyforms' ); ?></p>
206
- <p><?php _e( 'You\'ve set up notifications and helped us to improve HappyForms. You\'re ready to get started with your first form.', 'happyforms' ); ?></p>
207
  <a href="<?php echo happyforms_get_form_edit_link( 0, happyforms_get_all_form_link() ); ?>" class="button button-primary button-hero" id="happyforms-tracking-proceed"><?php _e( 'Create your first form', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
208
  <?php elseif ( 'error' === $template ): ?>
209
  <p class="about-description"><?php _e( 'Aw snap! Something went wrong.', HAPPYFORMS_TEXT_DOMAIN ); ?></p>
202
  public function print_template( $template ) {
203
  if ( 'success' === $template ): ?>
204
  <h2><?php _e( 'Thank you!', HAPPYFORMS_TEXT_DOMAIN ); ?></h2>
205
+ <p class="about-description"><?php _e( 'Now let\'s go enjoy HappyForms.', HAPPYFORMS_TEXT_DOMAIN ); ?></p>
206
+ <p><?php _e( 'You\'ve set up notifications and helped us to improve HappyForms. You\'re ready to get started with your first form.', HAPPYFORMS_TEXT_DOMAIN ); ?></p>
207
  <a href="<?php echo happyforms_get_form_edit_link( 0, happyforms_get_all_form_link() ); ?>" class="button button-primary button-hero" id="happyforms-tracking-proceed"><?php _e( 'Create your first form', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
208
  <?php elseif ( 'error' === $template ): ?>
209
  <p class="about-description"><?php _e( 'Aw snap! Something went wrong.', HAPPYFORMS_TEXT_DOMAIN ); ?></p>
core/classes/class-wp-customize-form-manager.php CHANGED
@@ -273,12 +273,6 @@ class HappyForms_WP_Customize_Form_Manager {
273
  array( 'wp-color-picker', 'wp-pointer' ), HAPPYFORMS_VERSION
274
  );
275
 
276
- wp_enqueue_style(
277
- 'happyforms-font-awesome',
278
- happyforms_get_plugin_url() . 'core/assets/css/font-awesome.min.css',
279
- array(), HAPPYFORMS_VERSION
280
- );
281
-
282
  $customize_deps = apply_filters(
283
  'happyforms_customize_dependencies',
284
  array(
@@ -287,6 +281,7 @@ class HappyForms_WP_Customize_Form_Manager {
287
  'jquery',
288
  'jquery-ui-core',
289
  'jquery-effects-core',
 
290
  'jquery-ui-sortable',
291
  'jquery-ui-slider',
292
  'jquery-ui-button',
@@ -378,6 +373,7 @@ class HappyForms_WP_Customize_Form_Manager {
378
  require_once( happyforms_get_core_folder() . '/templates/customize-form-build.php' );
379
  require_once( happyforms_get_core_folder() . '/templates/customize-form-parts-drawer.php' );
380
  require_once( happyforms_get_core_folder() . '/templates/customize-form-style.php' );
 
381
 
382
  _WP_Editors::print_default_editor_scripts();
383
  }
273
  array( 'wp-color-picker', 'wp-pointer' ), HAPPYFORMS_VERSION
274
  );
275
 
 
 
 
 
 
 
276
  $customize_deps = apply_filters(
277
  'happyforms_customize_dependencies',
278
  array(
281
  'jquery',
282
  'jquery-ui-core',
283
  'jquery-effects-core',
284
+ 'jquery-ui-accordion',
285
  'jquery-ui-sortable',
286
  'jquery-ui-slider',
287
  'jquery-ui-button',
373
  require_once( happyforms_get_core_folder() . '/templates/customize-form-build.php' );
374
  require_once( happyforms_get_core_folder() . '/templates/customize-form-parts-drawer.php' );
375
  require_once( happyforms_get_core_folder() . '/templates/customize-form-style.php' );
376
+ require_once( happyforms_get_core_folder() . '/templates/customize-form-email.php' );
377
 
378
  _WP_Editors::print_default_editor_scripts();
379
  }
core/classes/parts/class-part-checkbox.php CHANGED
@@ -36,7 +36,7 @@ class HappyForms_Part_Checkbox extends HappyForms_Form_Part {
36
  'sanitize' => 'sanitize_text_field',
37
  ),
38
  'label' => array(
39
- 'default' => __( 'Choices', HAPPYFORMS_TEXT_DOMAIN ),
40
  'sanitize' => 'sanitize_text_field',
41
  ),
42
  'label_placement' => array(
36
  'sanitize' => 'sanitize_text_field',
37
  ),
38
  'label' => array(
39
+ 'default' => __( 'Untitled', HAPPYFORMS_TEXT_DOMAIN ),
40
  'sanitize' => 'sanitize_text_field',
41
  ),
42
  'label_placement' => array(
core/classes/parts/class-part-email.php CHANGED
@@ -28,7 +28,7 @@ class HappyForms_Part_Email extends HappyForms_Form_Part {
28
  'sanitize' => 'sanitize_text_field',
29
  ),
30
  'label' => array(
31
- 'default' => __( 'Email', HAPPYFORMS_TEXT_DOMAIN ),
32
  'sanitize' => 'sanitize_text_field',
33
  ),
34
  'label_placement' => array(
@@ -52,7 +52,7 @@ class HappyForms_Part_Email extends HappyForms_Form_Part {
52
  'sanitize' => 'intval'
53
  ),
54
  'confirmation_field_label' => array(
55
- 'default' => __( 'Confirm Email', HAPPYFORMS_TEXT_DOMAIN ),
56
  'sanitize' => 'sanitize_text_field'
57
  ),
58
  'placeholder' => array(
28
  'sanitize' => 'sanitize_text_field',
29
  ),
30
  'label' => array(
31
+ 'default' => __( 'Untitled', HAPPYFORMS_TEXT_DOMAIN ),
32
  'sanitize' => 'sanitize_text_field',
33
  ),
34
  'label_placement' => array(
52
  'sanitize' => 'intval'
53
  ),
54
  'confirmation_field_label' => array(
55
+ 'default' => __( 'Untitled', HAPPYFORMS_TEXT_DOMAIN ),
56
  'sanitize' => 'sanitize_text_field'
57
  ),
58
  'placeholder' => array(
core/classes/parts/class-part-multi-line-text.php CHANGED
@@ -31,7 +31,7 @@ class HappyForms_Part_MultiLineText extends HappyForms_Form_Part {
31
  'sanitize' => 'sanitize_text_field',
32
  ),
33
  'label' => array(
34
- 'default' => __( 'Text', HAPPYFORMS_TEXT_DOMAIN ),
35
  'sanitize' => 'sanitize_text_field',
36
  ),
37
  'label_placement' => array(
31
  'sanitize' => 'sanitize_text_field',
32
  ),
33
  'label' => array(
34
+ 'default' => __( 'Untitled', HAPPYFORMS_TEXT_DOMAIN ),
35
  'sanitize' => 'sanitize_text_field',
36
  ),
37
  'label_placement' => array(
core/classes/parts/class-part-number.php CHANGED
@@ -27,7 +27,7 @@ class HappyForms_Part_Number extends HappyForms_Form_Part {
27
  'sanitize' => 'sanitize_text_field',
28
  ),
29
  'label' => array(
30
- 'default' => __( 'Number', HAPPYFORMS_TEXT_DOMAIN ),
31
  'sanitize' => 'sanitize_text_field',
32
  ),
33
  'label_placement' => array(
@@ -83,7 +83,7 @@ class HappyForms_Part_Number extends HappyForms_Form_Part {
83
  'sanitize' => 'intval'
84
  ),
85
  'confirmation_field_label' => array(
86
- 'default' => __( 'Confirm Number', HAPPYFORMS_TEXT_DOMAIN ),
87
  'sanitize' => 'sanitize_text_field'
88
  ),
89
  'required' => array(
27
  'sanitize' => 'sanitize_text_field',
28
  ),
29
  'label' => array(
30
+ 'default' => __( 'Untitled', HAPPYFORMS_TEXT_DOMAIN ),
31
  'sanitize' => 'sanitize_text_field',
32
  ),
33
  'label_placement' => array(
83
  'sanitize' => 'intval'
84
  ),
85
  'confirmation_field_label' => array(
86
+ 'default' => __( 'Untitled', HAPPYFORMS_TEXT_DOMAIN ),
87
  'sanitize' => 'sanitize_text_field'
88
  ),
89
  'required' => array(
core/classes/parts/class-part-radio.php CHANGED
@@ -37,7 +37,7 @@ class HappyForms_Part_Radio extends HappyForms_Form_Part {
37
  'sanitize' => 'sanitize_text_field',
38
  ),
39
  'label' => array(
40
- 'default' => __( 'Choices', HAPPYFORMS_TEXT_DOMAIN ),
41
  'sanitize' => 'sanitize_text_field',
42
  ),
43
  'label_placement' => array(
37
  'sanitize' => 'sanitize_text_field',
38
  ),
39
  'label' => array(
40
+ 'default' => __( 'Untitled', HAPPYFORMS_TEXT_DOMAIN ),
41
  'sanitize' => 'sanitize_text_field',
42
  ),
43
  'label_placement' => array(
core/classes/parts/class-part-select.php CHANGED
@@ -28,7 +28,7 @@ class HappyForms_Part_Select extends HappyForms_Form_Part {
28
  'sanitize' => 'sanitize_text_field',
29
  ),
30
  'label' => array(
31
- 'default' => __( 'Dropdown', HAPPYFORMS_TEXT_DOMAIN ),
32
  'sanitize' => 'sanitize_text_field',
33
  ),
34
  'label_placement' => array(
@@ -44,7 +44,7 @@ class HappyForms_Part_Select extends HappyForms_Form_Part {
44
  'sanitize' => 'sanitize_text_field'
45
  ),
46
  'placeholder' => array(
47
- 'default' => '',
48
  'sanitize' => 'sanitize_text_field',
49
  ),
50
  'width' => array(
28
  'sanitize' => 'sanitize_text_field',
29
  ),
30
  'label' => array(
31
+ 'default' => __( 'Untitled', HAPPYFORMS_TEXT_DOMAIN ),
32
  'sanitize' => 'sanitize_text_field',
33
  ),
34
  'label_placement' => array(
44
  'sanitize' => 'sanitize_text_field'
45
  ),
46
  'placeholder' => array(
47
+ 'default' => __( 'Select', HAPPYFORMS_TEXT_DOMAIN ),
48
  'sanitize' => 'sanitize_text_field',
49
  ),
50
  'width' => array(
core/classes/parts/class-part-single-line-text.php CHANGED
@@ -26,7 +26,7 @@ class HappyForms_Part_SingleLineText extends HappyForms_Form_Part {
26
  'sanitize' => 'sanitize_text_field',
27
  ),
28
  'label' => array(
29
- 'default' => __( 'Text', HAPPYFORMS_TEXT_DOMAIN ),
30
  'sanitize' => 'sanitize_text_field',
31
  ),
32
  'label_placement' => array(
26
  'sanitize' => 'sanitize_text_field',
27
  ),
28
  'label' => array(
29
+ 'default' => __( 'Untitled', HAPPYFORMS_TEXT_DOMAIN ),
30
  'sanitize' => 'sanitize_text_field',
31
  ),
32
  'label_placement' => array(
core/helpers/helper-form-templates.php CHANGED
@@ -156,7 +156,11 @@ endif;
156
  if ( ! function_exists( 'happyforms_part_has_tooltip' ) ) :
157
 
158
  function happyforms_part_has_tooltip( $part ) {
159
- if ( 'tooltip' === $part['description_mode'] || ( isset( $part['tooltip_description'] ) && 1 === intval( $part['tooltip_description'] ) ) ) {
 
 
 
 
160
  return true;
161
  }
162
 
156
  if ( ! function_exists( 'happyforms_part_has_tooltip' ) ) :
157
 
158
  function happyforms_part_has_tooltip( $part ) {
159
+ if ( ( isset( $part['description_mode'] )
160
+ && 'tooltip' === $part['description_mode'] )
161
+ || ( isset( $part['tooltip_description'] )
162
+ && 1 === intval( $part['tooltip_description'] ) ) ) {
163
+
164
  return true;
165
  }
166
 
core/helpers/helper-misc.php CHANGED
@@ -324,11 +324,11 @@ function happyforms_get_countries() {
324
  __( 'Kazakhstan', HAPPYFORMS_TEXT_DOMAIN ),
325
  __( 'Kenya', HAPPYFORMS_TEXT_DOMAIN ),
326
  __( 'Kiribati', HAPPYFORMS_TEXT_DOMAIN ),
327
- __( 'Korea, Democratic People\'s Republic of', 'happyforms' ),
328
  __( 'Korea, Republic of', HAPPYFORMS_TEXT_DOMAIN ),
329
  __( 'Kuwait', HAPPYFORMS_TEXT_DOMAIN ),
330
  __( 'Kyrgyzstan', HAPPYFORMS_TEXT_DOMAIN ),
331
- __( 'Lao, People\'s Democratic Republic', 'happyforms' ),
332
  __( 'Latvia', HAPPYFORMS_TEXT_DOMAIN ),
333
  __( 'Lebanon', HAPPYFORMS_TEXT_DOMAIN ),
334
  __( 'Lesotho', HAPPYFORMS_TEXT_DOMAIN ),
324
  __( 'Kazakhstan', HAPPYFORMS_TEXT_DOMAIN ),
325
  __( 'Kenya', HAPPYFORMS_TEXT_DOMAIN ),
326
  __( 'Kiribati', HAPPYFORMS_TEXT_DOMAIN ),
327
+ __( 'Korea, Democratic People\'s Republic of', HAPPYFORMS_TEXT_DOMAIN ),
328
  __( 'Korea, Republic of', HAPPYFORMS_TEXT_DOMAIN ),
329
  __( 'Kuwait', HAPPYFORMS_TEXT_DOMAIN ),
330
  __( 'Kyrgyzstan', HAPPYFORMS_TEXT_DOMAIN ),
331
+ __( 'Lao, People\'s Democratic Republic', HAPPYFORMS_TEXT_DOMAIN ),
332
  __( 'Latvia', HAPPYFORMS_TEXT_DOMAIN ),
333
  __( 'Lebanon', HAPPYFORMS_TEXT_DOMAIN ),
334
  __( 'Lesotho', HAPPYFORMS_TEXT_DOMAIN ),
core/templates/admin-tracking.php CHANGED
@@ -10,7 +10,7 @@ $status = $tracking->get_status();
10
  $tracking->print_template( 'success' );
11
  } else { ?>
12
  <h1><?php _e( 'Add your email to complete setup', HAPPYFORMS_TEXT_DOMAIN ); ?>&hellip;</h1>
13
- <p class="description"><?php _e( 'Let\'s set up HappyForms! Enter your email below to agree to notification and to share some data about your usage with', 'happyforms' ); ?> <a href="https://thethemefoundry.com" target="_blank">thethemefoundry.com</a>.</p>
14
  <form action="<?php echo esc_attr( $tracking->monitor_action ); ?>" method="post" id="happyforms-tracking">
15
  <input name="<?php echo esc_attr( $tracking->monitor_email_field ); ?>" type="email" placeholder="<?php _e( 'Email address', HAPPYFORMS_TEXT_DOMAIN ); ?>" required >
16
  <input name="<?php echo esc_attr( $tracking->monitor_status_field ); ?>" type="hidden" value="active" />
10
  $tracking->print_template( 'success' );
11
  } else { ?>
12
  <h1><?php _e( 'Add your email to complete setup', HAPPYFORMS_TEXT_DOMAIN ); ?>&hellip;</h1>
13
+ <p class="description"><?php _e( 'Let\'s set up HappyForms! Enter your email below to agree to notification and to share some data about your usage with', HAPPYFORMS_TEXT_DOMAIN ); ?> <a href="https://thethemefoundry.com" target="_blank">thethemefoundry.com</a>.</p>
14
  <form action="<?php echo esc_attr( $tracking->monitor_action ); ?>" method="post" id="happyforms-tracking">
15
  <input name="<?php echo esc_attr( $tracking->monitor_email_field ); ?>" type="email" placeholder="<?php _e( 'Email address', HAPPYFORMS_TEXT_DOMAIN ); ?>" required >
16
  <input name="<?php echo esc_attr( $tracking->monitor_status_field ); ?>" type="hidden" value="active" />
core/templates/customize-controls/setup/alert-email-subject.php CHANGED
@@ -1,5 +1,5 @@
1
  <div class="customize-control" id="customize-control-<?php echo $control['field']; ?>">
2
- <label for="<?php echo $control['field']; ?>" class="customize-control-title"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="fa fa-question-circle" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
3
  <input type="text" id="<?php echo $control['field']; ?>" value="<%= <?php echo $control['field']; ?> %>" data-attribute="<?php echo $control['field']; ?>" data-pointer-target />
4
  <p class="description"><span></span> <?php _e( 'part value is currently used as subject', HAPPYFORMS_TEXT_DOMAIN ); ?>
5
- </div>
1
  <div class="customize-control" id="customize-control-<?php echo $control['field']; ?>">
2
+ <label for="<?php echo $control['field']; ?>" class="customize-control-title"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="dashicons dashicons-editor-help" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
3
  <input type="text" id="<?php echo $control['field']; ?>" value="<%= <?php echo $control['field']; ?> %>" data-attribute="<?php echo $control['field']; ?>" data-pointer-target />
4
  <p class="description"><span></span> <?php _e( 'part value is currently used as subject', HAPPYFORMS_TEXT_DOMAIN ); ?>
5
+ </div>
core/templates/customize-controls/setup/checkbox.php CHANGED
@@ -1,6 +1,6 @@
1
  <div class="customize-control customize-control-checkbox <% if ( <?php echo $control['field']; ?> ) { %>checked<% } %>" id="customize-control-<?php echo $control['field']; ?>">
2
  <div class="customize-inside-control-row" data-pointer-target>
3
  <input type="checkbox" id="<?php echo $control['field']; ?>" value="1" <% if ( <?php echo $control['field']; ?> ) { %>checked="checked"<% } %> data-attribute="<?php echo $control['field']; ?>" />
4
- <label for="<?php echo $control['field']; ?>"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="fa fa-question-circle" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
5
  </div>
6
- </div>
1
  <div class="customize-control customize-control-checkbox <% if ( <?php echo $control['field']; ?> ) { %>checked<% } %>" id="customize-control-<?php echo $control['field']; ?>">
2
  <div class="customize-inside-control-row" data-pointer-target>
3
  <input type="checkbox" id="<?php echo $control['field']; ?>" value="1" <% if ( <?php echo $control['field']; ?> ) { %>checked="checked"<% } %> data-attribute="<?php echo $control['field']; ?>" />
4
+ <label for="<?php echo $control['field']; ?>"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="dashicons dashicons-editor-help" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
5
  </div>
6
+ </div>
core/templates/customize-controls/setup/editor.php CHANGED
@@ -1,5 +1,5 @@
1
  <div class="customize-control" id="customize-control-<?php echo $control['field']; ?>">
2
- <label for="<?php echo $control['field']; ?>" class="customize-control-title"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="fa fa-question-circle" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
3
  <div data-pointer-target>
4
  <textarea name="" id="<?php echo $control['field']; ?>" cols="34" rows="3" data-attribute="<?php echo $control['field']; ?>"><%= <?php echo $control['field']; ?> %></textarea>
5
  </div>
1
  <div class="customize-control" id="customize-control-<?php echo $control['field']; ?>">
2
+ <label for="<?php echo $control['field']; ?>" class="customize-control-title"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="dashicons dashicons-editor-help" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
3
  <div data-pointer-target>
4
  <textarea name="" id="<?php echo $control['field']; ?>" cols="34" rows="3" data-attribute="<?php echo $control['field']; ?>"><%= <?php echo $control['field']; ?> %></textarea>
5
  </div>
core/templates/customize-controls/setup/group_end.php ADDED
@@ -0,0 +1 @@
 
1
+ </section>
core/templates/customize-controls/setup/group_start.php ADDED
@@ -0,0 +1 @@
 
1
+ <section class="customize-control-group happyforms-nested-settings" data-trigger="<?php echo $control['trigger']; ?>">
core/templates/customize-controls/setup/number.php CHANGED
@@ -1,7 +1,7 @@
1
  <div class="customize-control" id="customize-control-<?php echo $control['field']; ?>">
2
- <label for="<?php echo $control['field']; ?>" class="customize-control-title"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="fa fa-question-circle" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
3
  <input type="number" id="<?php echo $control['field']; ?>" value="<%= <?php echo $control['field']; ?> %>" data-attribute="<?php echo $control['field']; ?>" min="<?php echo ( isset( $control['min'] ) ) ? $control['min'] : 0; ?>" <?php echo ( isset( $control['max'] ) ) ? ' max="'. $control['max'] .'"' : ''; ?> data-pointer-target />
4
  <?php if ( isset( $control['description'] ) ): ?>
5
  <p class="description"><?php echo $control['description']; ?></p>
6
  <?php endif; ?>
7
- </div>
1
  <div class="customize-control" id="customize-control-<?php echo $control['field']; ?>">
2
+ <label for="<?php echo $control['field']; ?>" class="customize-control-title"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="dashicons dashicons-editor-help" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
3
  <input type="number" id="<?php echo $control['field']; ?>" value="<%= <?php echo $control['field']; ?> %>" data-attribute="<?php echo $control['field']; ?>" min="<?php echo ( isset( $control['min'] ) ) ? $control['min'] : 0; ?>" <?php echo ( isset( $control['max'] ) ) ? ' max="'. $control['max'] .'"' : ''; ?> data-pointer-target />
4
  <?php if ( isset( $control['description'] ) ): ?>
5
  <p class="description"><?php echo $control['description']; ?></p>
6
  <?php endif; ?>
7
+ </div>
core/templates/customize-controls/setup/select.php CHANGED
@@ -1,7 +1,7 @@
1
  <div class="customize-control customize-control-select" id="customize-control-<?php echo $control['field']; ?>">
2
  <?php do_action( "happyforms_setup_control_{$control['field']}_before", $control ); ?>
3
 
4
- <label for="<?php echo $control['field']; ?>" class="customize-control-title"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="fa fa-question-circle" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
5
  <select name="<?php echo $control['field']; ?>" id="<?php echo $control['field']; ?>" data-attribute="<?php echo $control['field']; ?>" data-pointer-target>
6
  <?php if ( isset( $control['placeholder'] ) ) : ?>
7
  <option value="" disabled selected><?php echo $control['placeholder']; ?></option>
1
  <div class="customize-control customize-control-select" id="customize-control-<?php echo $control['field']; ?>">
2
  <?php do_action( "happyforms_setup_control_{$control['field']}_before", $control ); ?>
3
 
4
+ <label for="<?php echo $control['field']; ?>" class="customize-control-title"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="dashicons dashicons-editor-help" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
5
  <select name="<?php echo $control['field']; ?>" id="<?php echo $control['field']; ?>" data-attribute="<?php echo $control['field']; ?>" data-pointer-target>
6
  <?php if ( isset( $control['placeholder'] ) ) : ?>
7
  <option value="" disabled selected><?php echo $control['placeholder']; ?></option>
core/templates/customize-controls/setup/text.php CHANGED
@@ -1,7 +1,7 @@
1
  <div class="customize-control" id="customize-control-<?php echo $control['field']; ?>">
2
  <?php do_action( "happyforms_setup_control_{$control['field']}_before", $control ); ?>
3
 
4
- <label for="<?php echo $control['field']; ?>" class="customize-control-title"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="fa fa-question-circle" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
5
  <input type="text" id="<?php echo $control['field']; ?>" value="<%= <?php echo $control['field']; ?> %>" data-attribute="<?php echo $control['field']; ?>" placeholder="<?php echo ( isset( $control['placeholder'] ) ) ? $control['placeholder'] : ''; ?>" data-pointer-target />
6
 
7
  <?php do_action( "happyforms_setup_control_{$control['field']}_after", $control ); ?>
1
  <div class="customize-control" id="customize-control-<?php echo $control['field']; ?>">
2
  <?php do_action( "happyforms_setup_control_{$control['field']}_before", $control ); ?>
3
 
4
+ <label for="<?php echo $control['field']; ?>" class="customize-control-title"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="dashicons dashicons-editor-help" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
5
  <input type="text" id="<?php echo $control['field']; ?>" value="<%= <?php echo $control['field']; ?> %>" data-attribute="<?php echo $control['field']; ?>" placeholder="<?php echo ( isset( $control['placeholder'] ) ) ? $control['placeholder'] : ''; ?>" data-pointer-target />
6
 
7
  <?php do_action( "happyforms_setup_control_{$control['field']}_after", $control ); ?>
core/templates/customize-controls/setup/textarea.php CHANGED
@@ -1,5 +1,5 @@
1
  <div class="customize-control" id="customize-control-<?php echo $control['field']; ?>">
2
- <label for="<?php echo $control['field']; ?>" class="customize-control-title"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="fa fa-question-circle" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
3
  <div data-pointer-target>
4
  <textarea name="" id="<?php echo $control['field']; ?>" cols="34" rows="4" data-attribute="<?php echo $control['field']; ?>"><%= <?php echo $control['field']; ?> %></textarea>
5
  </div>
1
  <div class="customize-control" id="customize-control-<?php echo $control['field']; ?>">
2
+ <label for="<?php echo $control['field']; ?>" class="customize-control-title"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?><i class="dashicons dashicons-editor-help" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
3
  <div data-pointer-target>
4
  <textarea name="" id="<?php echo $control['field']; ?>" cols="34" rows="4" data-attribute="<?php echo $control['field']; ?>"><%= <?php echo $control['field']; ?> %></textarea>
5
  </div>
core/templates/customize-controls/style/buttonset.php CHANGED
@@ -1,13 +1,13 @@
1
  <li class="customize-control <?php echo esc_attr( 'happyforms-' . $control['type'] . '-control' ); ?>" data-target="<?php echo esc_attr( $field['target'] ); ?>" data-variable="<?php echo ( isset( $field['variable'] ) ) ? esc_attr( $field['variable'] ) : ''; ?>" id="customize-control-<?php echo $control['field']; ?>">
2
  <div class="customize-control-content">
3
  <label class="customize-control-title" for="<?php echo $control['field']; ?>"><?php echo $control['label']; ?></label>
4
- <div class="happyforms-buttonset-container">
5
- <?php foreach ( $field[ 'options' ] as $option_key => $option ) : ?>
6
- <input type="radio" class="happyforms-buttonset" name="<?php echo $control['field']; ?>" id="<?php echo $control['field']; ?>_<?php echo esc_attr( $option_key ); ?>" value="<?php echo esc_attr( $option_key ); ?>" data-attribute="<?php echo $control['field']; ?>" <?php echo ( isset( $field['target_control_class'] ) ) ? ' data-target-control-class="'. $field['target_control_class'] .'" ' : ''; ?><% if (<?php echo $control['field']; ?> === '<?php echo esc_attr( $option_key ); ?>') { %>checked="checked"<% } %>>
7
  <label for="<?php echo $control['field']; ?>_<?php echo esc_attr( $option_key ); ?>">
8
  <span class="ui-button-text"></span><?php echo esc_attr( $option ); ?></span>
9
  </label>
10
- <?php endforeach; ?>
11
- </div>
12
  </div>
13
- </li>
1
  <li class="customize-control <?php echo esc_attr( 'happyforms-' . $control['type'] . '-control' ); ?>" data-target="<?php echo esc_attr( $field['target'] ); ?>" data-variable="<?php echo ( isset( $field['variable'] ) ) ? esc_attr( $field['variable'] ) : ''; ?>" id="customize-control-<?php echo $control['field']; ?>">
2
  <div class="customize-control-content">
3
  <label class="customize-control-title" for="<?php echo $control['field']; ?>"><?php echo $control['label']; ?></label>
4
+ <?php foreach ( $field[ 'options' ] as $option_key => $option ) : ?>
5
+ <span class="customize-inside-control-row">
6
+ <input type="radio" name="<?php echo $control['field']; ?>" id="<?php echo $control['field']; ?>_<?php echo esc_attr( $option_key ); ?>" value="<?php echo esc_attr( $option_key ); ?>" data-attribute="<?php echo $control['field']; ?>" <?php echo ( isset( $field['target_control_class'] ) ) ? ' data-target-control-class="'. $field['target_control_class'] .'" ' : ''; ?><% if (<?php echo $control['field']; ?> === '<?php echo esc_attr( $option_key ); ?>') { %>checked="checked"<% } %>>
7
  <label for="<?php echo $control['field']; ?>_<?php echo esc_attr( $option_key ); ?>">
8
  <span class="ui-button-text"></span><?php echo esc_attr( $option ); ?></span>
9
  </label>
10
+ </span>
11
+ <?php endforeach; ?>
12
  </div>
13
+ </li>
core/templates/customize-controls/style/divider.php CHANGED
@@ -12,4 +12,4 @@
12
  <div class="accordion-section-title">
13
  <span class="preview-notice"><?php _e( 'You are customizing', HAPPYFORMS_TEXT_DOMAIN ); ?> <strong class="panel-title"><?php echo $control['label']; ?></strong></span>
14
  </div>
15
- </li>
12
  <div class="accordion-section-title">
13
  <span class="preview-notice"><?php _e( 'You are customizing', HAPPYFORMS_TEXT_DOMAIN ); ?> <strong class="panel-title"><?php echo $control['label']; ?></strong></span>
14
  </div>
15
+ </li>
core/templates/customize-controls/style/range.php CHANGED
@@ -1,15 +1,24 @@
1
  <li class="customize-control <?php echo esc_attr( 'happyforms-' . $control['type'] . '-control' ); ?>" data-target="<?php echo esc_attr( $field['target'] ); ?>" data-variable="<?php echo $field['variable']; ?>" data-unit="<?php echo $field['unit']; ?>" id="customize-control-<?php echo $control['field']; ?>">
2
  <label class="customize-control-title" for="<?php echo $control['field']; ?>"><?php echo $control['label']; ?></label>
3
- <input type="number" name="<?php echo $control['field']; ?>" id="<?php echo $control['field']; ?>" min="<?php echo $field[ 'min' ]; ?>" max="<?php echo $field[ 'max' ]; ?>" step="<?php echo $field[ 'step' ]; ?>" value="<%= <?php echo $control['field']; ?> %>" data-attribute="<?php echo $control['field']; ?>">
4
- <?php if ( isset( $field['include_unit_switch'] ) ) : ?>
5
- <select name="<?php echo $control['field']; ?>_unit" class="happyforms-unit-switch">
6
- <?php if ( is_array( $field['units'] ) ) :
7
- foreach ( $field['units'] as $unit ) : ?>
8
- <option value="<?php echo $unit; ?>"><?php echo $unit; ?></option>
9
- <?php endforeach; endif; ?>
10
- </select>
11
- <?php endif; ?>
12
  <div class="customize-control-content">
13
  <div class="happyforms-range-slider" data-slider-id="<?php echo $control['field']; ?>"></div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14
  </div>
15
- </li>
1
  <li class="customize-control <?php echo esc_attr( 'happyforms-' . $control['type'] . '-control' ); ?>" data-target="<?php echo esc_attr( $field['target'] ); ?>" data-variable="<?php echo $field['variable']; ?>" data-unit="<?php echo $field['unit']; ?>" id="customize-control-<?php echo $control['field']; ?>">
2
  <label class="customize-control-title" for="<?php echo $control['field']; ?>"><?php echo $control['label']; ?></label>
3
+ <?php
4
+ /*<input type="number" name="<?php echo $control['field']; ?>" id="<?php echo $control['field']; ?>" min="<?php echo $field[ 'min' ]; ?>" max="<?php echo $field[ 'max' ]; ?>" step="<?php echo $field[ 'step' ]; ?>" value="<%= <?php echo $control['field']; ?> %>" data-attribute="<?php echo $control['field']; ?>">
5
+
 
 
 
 
 
 
6
  <div class="customize-control-content">
7
  <div class="happyforms-range-slider" data-slider-id="<?php echo $control['field']; ?>"></div>
8
+ </div>*/
9
+ ?>
10
+ <div class="happyforms-range-control-wrap<?php echo ( isset( $field['include_unit_switch'] ) ) ? ' has-unit-switch': ''; ?>">
11
+ <?php if ( isset( $field['include_unit_switch'] ) ) : ?>
12
+ <div class="happyforms-range-control__unit">
13
+ <label for="<?php echo $control['field']; ?>_unit"><?php _e( 'Unit', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
14
+ <select name="<?php echo $control['field']; ?>_unit" id="<?php echo $control['field']; ?>_unit" class="happyforms-unit-switch">
15
+ <?php if ( is_array( $field['units'] ) ) :
16
+ foreach ( $field['units'] as $unit ) : ?>
17
+ <option value="<?php echo $unit; ?>"><?php echo $unit; ?></option>
18
+ <?php endforeach; endif; ?>
19
+ </select>
20
+ </div>
21
+ <?php endif; ?>
22
+ <input type="range" name="<?php echo $control['field']; ?>" id="<?php echo $control['field']; ?>" min="<?php echo $field['min']; ?>" max="<?php echo $field['max']; ?>" step="<?php echo $field['step']; ?>" value="<%= <?php echo $control['field']; ?> %>" data-attribute="<?php echo $control['field']; ?>">
23
  </div>
24
+ </li>
core/templates/customize-controls/style/text.php CHANGED
@@ -1,6 +1,6 @@
1
  <li class="customize-control <?php echo esc_attr( 'happyforms-' . $control['type'] . '-control' ); ?>" data-target="<?php echo esc_attr( $field['target'] ); ?>" id="customize-control-<?php echo $control['field']; ?>">
2
- <label class="customize-control-title" for="<?php echo $control['field']; ?>"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?> <i class="fa fa-question-circle" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
3
  <div class="customize-control-content" data-pointer-target>
4
  <input type="text" name="<?php echo $control['field']; ?>" id="<?php echo $control['field']; ?>" data-attribute="<?php echo $control['field']; ?>" value="<%= <?php echo $control['field']; ?> %>">
5
  </div>
6
- </li>
1
  <li class="customize-control <?php echo esc_attr( 'happyforms-' . $control['type'] . '-control' ); ?>" data-target="<?php echo esc_attr( $field['target'] ); ?>" id="customize-control-<?php echo $control['field']; ?>">
2
+ <label class="customize-control-title" for="<?php echo $control['field']; ?>"><?php echo $control['label']; ?> <?php if ( isset( $control['tooltip'] ) ) : ?> <i class="dashicons dashicons-editor-help" aria-hidden="true" data-pointer><span><?php echo $control['tooltip']; ?></span></i><?php endif; ?></label>
3
  <div class="customize-control-content" data-pointer-target>
4
  <input type="text" name="<?php echo $control['field']; ?>" id="<?php echo $control['field']; ?>" data-attribute="<?php echo $control['field']; ?>" value="<%= <?php echo $control['field']; ?> %>">
5
  </div>
6
+ </li>
core/templates/customize-form-build.php CHANGED
@@ -2,24 +2,15 @@
2
  <div class="happyforms-stack-view">
3
  <div class="customize-control">
4
  <label for="" class="customize-control-title"><?php _e( 'Title', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
5
- <input type="text" name="post_title" value="<%= post_title %>" id="happyforms-form-name">
6
  </div>
7
 
8
  <div class="customize-control">
9
- <label class="customize-control-title">
10
- <?php _e( 'Form builder', HAPPYFORMS_TEXT_DOMAIN ); ?>
11
- <span class="happyforms-parts-expand-collapse-wrap">
12
- <a href="#" class="button expand-collapse-all <%= ( parts.length > 0 ) ? 'expand' : 'collapse' %>" data-collapse-text="<?php _e( 'Collapse all', HAPPYFORMS_TEXT_DOMAIN ); ?>" data-expand-text="<?php _e( 'Expand all', HAPPYFORMS_TEXT_DOMAIN ); ?>"><%= ( parts.length > 0 ) ? '<?php _e( 'Expand all', HAPPYFORMS_TEXT_DOMAIN ); ?>' : '<?php _e( 'Collapse all', HAPPYFORMS_TEXT_DOMAIN ); ?>' %></a>
13
- </span>
14
- </label>
15
  <div class="happyforms-parts-placeholder">
16
- <p><b><?php _e( 'Ready to get started?', HAPPYFORMS_TEXT_DOMAIN ); ?></b></p>
17
- <p><?php _e( 'Click any part from the sidebar to add it to your new form. Then, drag parts into order.', HAPPYFORMS_TEXT_DOMAIN ); ?></p>
18
- <div class="happyforms-parts-placeholder__placeholder"></div>
19
- <div class="happyforms-parts-placeholder__placeholder"></div>
20
- <div class="happyforms-parts-placeholder__placeholder"></div>
21
  </div>
22
  <div class="happyforms-form-widgets"></div>
 
23
  </div>
24
  </div>
25
  </script>
2
  <div class="happyforms-stack-view">
3
  <div class="customize-control">
4
  <label for="" class="customize-control-title"><?php _e( 'Title', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
5
+ <input type="text" name="post_title" value="<%= post_title %>" id="happyforms-form-name" placeholder="<?php _e( 'Add title', HAPPYFORMS_TEXT_DOMAIN ); ?>">
6
  </div>
7
 
8
  <div class="customize-control">
 
 
 
 
 
 
9
  <div class="happyforms-parts-placeholder">
10
+ <p><?php _e( 'Add parts here to appear in your form.', HAPPYFORMS_TEXT_DOMAIN ); ?></p>
 
 
 
 
11
  </div>
12
  <div class="happyforms-form-widgets"></div>
13
+ <button type="button" class="button add-new-widget happyforms-add-new-part"><?php _e( 'Add a Part', HAPPYFORMS_TEXT_DOMAIN ); ?></button>
14
  </div>
15
  </div>
16
  </script>
core/templates/customize-form-email.php ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $controller = happyforms_get_form_controller();
3
+ $controls = happyforms_get_email()->get_controls();
4
+ ?>
5
+
6
+ <script type="text/template" id="happyforms-form-email-template">
7
+ <div class="happyforms-stack-view happyforms-email-view">
8
+ <?php
9
+ $c = 0;
10
+ foreach( $controls as $control ) {
11
+ $field = false;
12
+
13
+ if ( isset( $control['field'] ) ) {
14
+ $field = $controller->get_field( $control['field'] );
15
+ }
16
+
17
+ do_action( 'happyforms_do_email_control', $control, $field, $c );
18
+ $c ++;
19
+ }
20
+ ?>
21
+ </div>
22
+ </script>
core/templates/customize-form-steps.php CHANGED
@@ -1,31 +1,8 @@
1
  <script type="text/template" id="happyforms-form-steps-template">
2
- <div class="happyforms-action-buttons">
3
- <% if ( step.index > 1 ) { %>
4
- <%
5
- var previousStepTitle = '<?php _e( 'Build', HAPPYFORMS_TEXT_DOMAIN ); ?>';
6
-
7
- if ( 3 === step.index ) {
8
- previousStepTitle = '<?php _e( 'Setup', HAPPYFORMS_TEXT_DOMAIN ); ?>';
9
- }
10
- %>
11
- <button class="button button-secondary button-hero happyforms-step-previous"><i class="fa fa-lg fa-arrow-circle-o-left" aria-hidden="true"></i> <%= previousStepTitle %></button>
12
- <% } %>
13
- <% if ( step.index < step.count ) { %>
14
- <%
15
- var nextStepTitle = '<?php _e( 'Setup', HAPPYFORMS_TEXT_DOMAIN ); ?>';
16
-
17
- if ( 2 === step.index ) {
18
- nextStepTitle = '<?php _e( 'Style', HAPPYFORMS_TEXT_DOMAIN ); ?>';
19
- }
20
- %>
21
- <button class="button button-primary button-hero button-forwards happyforms-step-next"><%= nextStepTitle %> <i class="fa fa-lg fa-arrow-circle-o-right" aria-hidden="true"></i></button>
22
- <% } else { %>
23
- <button class="button button-primary button-hero button-forwards happyforms-step-save"><?php _e( 'Save & Close', HAPPYFORMS_TEXT_DOMAIN ); ?></button>
24
- <% } %>
25
- </div>
26
-
27
- <div class="happyforms-step-progress">
28
- <div class="happyforms-step-progress-bar" style="width: <%= step.progress %>%;"></div>
29
- </div>
30
- <p class="happyforms-step-progress-counter"><?php _e( 'Step', HAPPYFORMS_TEXT_DOMAIN ) ?> <%= step.index %> <?php _e( 'of', HAPPYFORMS_TEXT_DOMAIN ) ?> <%= step.count %></p>
31
  </script>
1
  <script type="text/template" id="happyforms-form-steps-template">
2
+ <nav class="nav-tab-wrapper">
3
+ <a href="#" class="nav-tab<%= ( 'build' === happyForms.currentRoute ) ? ' nav-tab-active' : '' %>" data-step="build"><?php _e( 'Build', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
4
+ <a href="#" class="nav-tab<%= ( 'setup' === happyForms.currentRoute ) ? ' nav-tab-active' : '' %>" data-step="setup"><?php _e( 'Setup', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
5
+ <a href="#" class="nav-tab<%= ( 'email' === happyForms.currentRoute ) ? ' nav-tab-active' : '' %>" data-step="email"><?php _e( 'Email', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
6
+ <a href="#" class="nav-tab<%= ( 'style' === happyForms.currentRoute ) ? ' nav-tab-active' : '' %>" data-step="style"><?php _e( 'Style', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
7
+ </nav>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8
  </script>
core/templates/customize-header-actions.php CHANGED
@@ -1,8 +1,27 @@
1
  <script type="text/template" id="happyforms-customize-header-actions">
2
  <div id="happyforms-save-button-wrapper" class="customize-save-button-wrapper">
3
- <button id="happyforms-save-button" class="button-primary button" aria-label="<?php _e( 'Save Form', HAPPYFORMS_TEXT_DOMAIN ); ?>" aria-expanded="false" disabled="disabled" data-text-saved="<?php _e( 'Saved', HAPPYFORMS_TEXT_DOMAIN ); ?>" data-text-default="<?php _e( 'Save Form', HAPPYFORMS_TEXT_DOMAIN ); ?>"><?php _e( 'Save Form', HAPPYFORMS_TEXT_DOMAIN ); ?></button>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
  </div>
5
  <a href="<?php echo esc_url( $wp_customize->get_return_url() ); ?>" id="happyforms-close-link" data-message="<?php _e( 'The changes you made will be lost if you navigate away from this page.', HAPPYFORMS_TEXT_DOMAIN ); ?>">
6
  <span class="screen-reader-text"><?php _e( 'Close', HAPPYFORMS_TEXT_DOMAIN ); ?></span>
7
  </a>
 
 
 
8
  </script>
1
  <script type="text/template" id="happyforms-customize-header-actions">
2
  <div id="happyforms-save-button-wrapper" class="customize-save-button-wrapper">
3
+ <%
4
+ var buttonLabels = {
5
+ "saveNew" : "<?php _e( 'Save', HAPPYFORMS_TEXT_DOMAIN ); ?>",
6
+ "saveExisting" : "<?php _e( 'Update', HAPPYFORMS_TEXT_DOMAIN ); ?>",
7
+ "savedNew" : "<?php _e( 'Saved', HAPPYFORMS_TEXT_DOMAIN ); ?>",
8
+ "savedExisting" : "<?php _e( 'Updated', HAPPYFORMS_TEXT_DOMAIN ); ?>"
9
+ };
10
+
11
+ var saveLabel = buttonLabels.saveNew;
12
+ var savedLabel = buttonLabels.savedNew;
13
+
14
+ if ( ! isNewForm ) {
15
+ saveLabel = buttonLabels.saveExisting;
16
+ savedLabel = buttonLabels.savedExisting;
17
+ }
18
+ %>
19
+ <button id="happyforms-save-button" class="button-primary button" aria-label="<%= saveLabel %>" aria-expanded="false" disabled="disabled" data-text-saved="<%= savedLabel %>" data-text-default="<%= saveLabel %>"><%= saveLabel %></button>
20
  </div>
21
  <a href="<?php echo esc_url( $wp_customize->get_return_url() ); ?>" id="happyforms-close-link" data-message="<?php _e( 'The changes you made will be lost if you navigate away from this page.', HAPPYFORMS_TEXT_DOMAIN ); ?>">
22
  <span class="screen-reader-text"><?php _e( 'Close', HAPPYFORMS_TEXT_DOMAIN ); ?></span>
23
  </a>
24
+
25
+ <div id="happyforms-steps-nav">
26
+ </div>
27
  </script>
core/templates/parts/customize-checkbox.php CHANGED
@@ -1,23 +1,18 @@
1
  <script type="text/template" id="customize-happyforms-checkbox-template">
2
  <?php include( happyforms_get_core_folder() . '/templates/customize-form-part-header.php' ); ?>
3
  <p>
4
- <label for="<%= instance.id %>_title"><?php _e( 'Title', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
5
  <input type="text" id="<%= instance.id %>_title" class="widefat title" value="<%= instance.label %>" data-bind="label" />
6
  </p>
7
  <p>
8
- <label for="<%= instance.id %>_label_placement"><?php _e( 'Title placement', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
9
  <select id="<%= instance.id %>_label_placement" data-bind="label_placement">
10
  <option value="above"<%= (instance.label_placement == 'above') ? ' selected' : '' %>><?php _e( 'Above', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
11
- <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
12
  <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
 
13
  <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
14
  </select>
15
  </p>
16
- <p class="label_placement-options" style="display: none">
17
- <label>
18
- <input type="checkbox" class="checkbox apply-all-check" value="" /> <?php _e( 'Apply to all parts', HAPPYFORMS_TEXT_DOMAIN ); ?>
19
- </label>
20
- </p>
21
  <p>
22
  <label for="<%= instance.id %>_description"><?php _e( 'Description', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
23
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
@@ -66,11 +61,11 @@
66
 
67
  <p>
68
  <label>
69
- <input type="checkbox" class="checkbox" value="1" <% if ( instance.show_select_all ) { %>checked="checked"<% } %> data-bind="show_select_all" /> <?php _e( 'Show select all option', HAPPYFORMS_TEXT_DOMAIN ); ?>
70
  </label>
71
  </p>
72
  <p>
73
- <label for="<%= instance.id %>_display_type"><?php _e( 'Align choices', 'happyforms-upgrade' ); ?></label>
74
  <select id="<%= instance.id %>_display_type" name="display_type" data-bind="display_type" class="widefat">
75
  <option value="inline"<%= (instance.display_type == 'inline') ? ' selected' : '' %>><?php _e( 'Horizontal', 'happyforms-upgrade' ); ?></option>
76
  <option value="block"<%= (instance.display_type == 'block') ? ' selected' : '' %>><?php _e( 'Vertical', 'happyforms-upgrade' ); ?></option>
@@ -103,7 +98,7 @@
103
  <?php do_action( 'happyforms_part_customize_checkbox_after_advanced_options' ); ?>
104
 
105
  <p>
106
- <label for="<%= instance.id %>_css_class"><?php _e( 'Custom CSS class', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
107
  <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
108
  </p>
109
  </div>
@@ -135,7 +130,7 @@
135
  </div>
136
  <div class="option-actions">
137
  <a href="#" class="delete-option"><?php _e( 'Delete', HAPPYFORMS_TEXT_DOMAIN ); ?></a> |
138
- <a href="#" class="advanced-option"><?php _e( 'Advanced', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
139
  </div>
140
  </div>
141
  </li>
1
  <script type="text/template" id="customize-happyforms-checkbox-template">
2
  <?php include( happyforms_get_core_folder() . '/templates/customize-form-part-header.php' ); ?>
3
  <p>
4
+ <label for="<%= instance.id %>_title"><?php _e( 'Label', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
5
  <input type="text" id="<%= instance.id %>_title" class="widefat title" value="<%= instance.label %>" data-bind="label" />
6
  </p>
7
  <p>
8
+ <label for="<%= instance.id %>_label_placement"><?php _e( 'Label display', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
9
  <select id="<%= instance.id %>_label_placement" data-bind="label_placement">
10
  <option value="above"<%= (instance.label_placement == 'above') ? ' selected' : '' %>><?php _e( 'Above', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
 
11
  <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
12
+ <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
13
  <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
14
  </select>
15
  </p>
 
 
 
 
 
16
  <p>
17
  <label for="<%= instance.id %>_description"><?php _e( 'Description', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
18
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
61
 
62
  <p>
63
  <label>
64
+ <input type="checkbox" class="checkbox" value="1" <% if ( instance.show_select_all ) { %>checked="checked"<% } %> data-bind="show_select_all" /> <?php _e( 'Add \'select all\' choice', HAPPYFORMS_TEXT_DOMAIN ); ?>
65
  </label>
66
  </p>
67
  <p>
68
+ <label for="<%= instance.id %>_display_type"><?php _e( 'Choices display', 'happyforms-upgrade' ); ?></label>
69
  <select id="<%= instance.id %>_display_type" name="display_type" data-bind="display_type" class="widefat">
70
  <option value="inline"<%= (instance.display_type == 'inline') ? ' selected' : '' %>><?php _e( 'Horizontal', 'happyforms-upgrade' ); ?></option>
71
  <option value="block"<%= (instance.display_type == 'block') ? ' selected' : '' %>><?php _e( 'Vertical', 'happyforms-upgrade' ); ?></option>
98
  <?php do_action( 'happyforms_part_customize_checkbox_after_advanced_options' ); ?>
99
 
100
  <p>
101
+ <label for="<%= instance.id %>_css_class"><?php _e( 'CSS classes', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
102
  <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
103
  </p>
104
  </div>
130
  </div>
131
  <div class="option-actions">
132
  <a href="#" class="delete-option"><?php _e( 'Delete', HAPPYFORMS_TEXT_DOMAIN ); ?></a> |
133
+ <a href="#" class="advanced-option"><?php _e( 'More', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
134
  </div>
135
  </div>
136
  </li>
core/templates/parts/customize-email.php CHANGED
@@ -1,25 +1,19 @@
1
  <script type="text/template" id="customize-happyforms-email-template">
2
  <?php include( happyforms_get_core_folder() . '/templates/customize-form-part-header.php' ); ?>
3
  <p>
4
- <label for="<%= instance.id %>_title"><?php _e( 'Title', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
5
  <input type="text" id="<%= instance.id %>_title" class="widefat title" value="<%= instance.label %>" data-bind="label" />
6
  </p>
7
  <p>
8
- <label for="<%= instance.id %>_label_placement"><?php _e( 'Title placement', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
9
  <select id="<%= instance.id %>_label_placement" data-bind="label_placement">
10
  <option value="above"<%= (instance.label_placement == 'above') ? ' selected' : '' %>><?php _e( 'Above', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
11
- <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
12
  <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
13
- <option value="inside"<%= (instance.label_placement == 'inside') ? ' selected' : '' %>><?php _e( 'Inside input', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
14
- <option value="as_placeholder"<%= (instance.label_placement == 'as_placeholder') ? ' selected' : '' %>><?php _e( 'Display as placeholder', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
15
  <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
16
  </select>
17
  </p>
18
- <p class="label_placement-options" style="display: none">
19
- <label>
20
- <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="label_placement" /> <?php _e( 'Apply to all parts', HAPPYFORMS_TEXT_DOMAIN ); ?>
21
- </label>
22
- </p>
23
  <p>
24
  <label for="<%= instance.id %>_description"><?php _e( 'Description', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
25
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
@@ -50,6 +44,22 @@
50
  <div class="happyforms-part-advanced-settings-wrap">
51
  <?php do_action( 'happyforms_part_customize_email_before_advanced_options' ); ?>
52
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
53
  <p>
54
  <label for="<%= instance.id %>_width"><?php _e( 'Width', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
55
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
@@ -64,25 +74,11 @@
64
  <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="width" /> <?php _e( 'Apply to all parts', HAPPYFORMS_TEXT_DOMAIN ); ?>
65
  </label>
66
  </p>
67
- <p>
68
- <label>
69
- <input type="checkbox" class="checkbox" value="1" <% if ( instance.autocomplete_domains ) { %>checked="checked"<% } %> data-bind="autocomplete_domains" /> <?php _e( 'Suggest common email domains', HAPPYFORMS_TEXT_DOMAIN ); ?>
70
- </label>
71
- </p>
72
- <p>
73
- <label>
74
- <input type="checkbox" class="checkbox confirmation-checkbox" value="1" <% if ( instance.confirmation_field ) { %>checked="checked"<% } %> data-bind="confirmation_field" /> <?php _e( 'Require confirmation of the value', HAPPYFORMS_TEXT_DOMAIN ); ?>
75
- </label>
76
- </p>
77
- <p class="confirmation-field-setting" style="display: <%= (instance.confirmation_field == 1) ? 'block' : 'none' %>">
78
- <label for="<%= instance.id %>_confirmation_field_label"><?php _e( 'Confirmation field title', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
79
- <input type="text" id="<%= instance.id %>_confirmation_field_label" class="widefat title" value="<%= instance.confirmation_field_label %>" data-bind="confirmation_field_label" />
80
- </p>
81
 
82
  <?php do_action( 'happyforms_part_customize_email_after_advanced_options' ); ?>
83
 
84
  <p>
85
- <label for="<%= instance.id %>_css_class"><?php _e( 'Custom CSS class', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
86
  <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
87
  </p>
88
  </div>
1
  <script type="text/template" id="customize-happyforms-email-template">
2
  <?php include( happyforms_get_core_folder() . '/templates/customize-form-part-header.php' ); ?>
3
  <p>
4
+ <label for="<%= instance.id %>_title"><?php _e( 'Label', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
5
  <input type="text" id="<%= instance.id %>_title" class="widefat title" value="<%= instance.label %>" data-bind="label" />
6
  </p>
7
  <p>
8
+ <label for="<%= instance.id %>_label_placement"><?php _e( 'Lable display', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
9
  <select id="<%= instance.id %>_label_placement" data-bind="label_placement">
10
  <option value="above"<%= (instance.label_placement == 'above') ? ' selected' : '' %>><?php _e( 'Above', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
 
11
  <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
12
+ <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
13
+ <option value="inside"<%= (instance.label_placement == 'inside') ? ' selected' : '' %>><?php _e( 'Inside', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
14
  <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
15
  </select>
16
  </p>
 
 
 
 
 
17
  <p>
18
  <label for="<%= instance.id %>_description"><?php _e( 'Description', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
19
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
44
  <div class="happyforms-part-advanced-settings-wrap">
45
  <?php do_action( 'happyforms_part_customize_email_before_advanced_options' ); ?>
46
 
47
+ <p>
48
+ <label>
49
+ <input type="checkbox" class="checkbox" value="1" <% if ( instance.autocomplete_domains ) { %>checked="checked"<% } %> data-bind="autocomplete_domains" /> <?php _e( 'Suggest common email domains', HAPPYFORMS_TEXT_DOMAIN ); ?>
50
+ </label>
51
+ </p>
52
+ <p>
53
+ <label>
54
+ <input type="checkbox" class="checkbox confirmation-checkbox" value="1" <% if ( instance.confirmation_field ) { %>checked="checked"<% } %> data-bind="confirmation_field" /> <?php _e( 'Require confirmation', HAPPYFORMS_TEXT_DOMAIN ); ?>
55
+ </label>
56
+ </p>
57
+ <div class="happyforms-nested-settings" data-trigger="confirmation_field" style="display: <%= (instance.confirmation_field == 1) ? 'block' : 'none' %>">
58
+ <p>
59
+ <label for="<%= instance.id %>_confirmation_field_label"><?php _e( 'Label', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
60
+ <input type="text" id="<%= instance.id %>_confirmation_field_label" class="widefat title" value="<%= instance.confirmation_field_label %>" data-bind="confirmation_field_label" />
61
+ </p>
62
+ </div>
63
  <p>
64
  <label for="<%= instance.id %>_width"><?php _e( 'Width', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
65
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
74
  <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="width" /> <?php _e( 'Apply to all parts', HAPPYFORMS_TEXT_DOMAIN ); ?>
75
  </label>
76
  </p>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
77
 
78
  <?php do_action( 'happyforms_part_customize_email_after_advanced_options' ); ?>
79
 
80
  <p>
81
+ <label for="<%= instance.id %>_css_class"><?php _e( 'CSS classes', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
82
  <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
83
  </p>
84
  </div>
core/templates/parts/customize-multi-line-text.php CHANGED
@@ -1,25 +1,19 @@
1
  <script type="text/template" id="customize-happyforms-multi-line-text-template">
2
  <?php include( happyforms_get_core_folder() . '/templates/customize-form-part-header.php' ); ?>
3
  <p>
4
- <label for="<%= instance.id %>_title"><?php _e( 'Title', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
5
  <input type="text" id="<%= instance.id %>_title" class="widefat title" value="<%= instance.label %>" data-bind="label" />
6
  </p>
7
  <p>
8
- <label for="<%= instance.id %>_label_placement"><?php _e( 'Title placement', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
9
  <select id="<%= instance.id %>_label_placement" data-bind="label_placement">
10
  <option value="above"<%= (instance.label_placement == 'above') ? ' selected' : '' %>><?php _e( 'Above', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
11
- <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
12
  <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
 
13
  <option value="inside"<%= (instance.label_placement == 'inside') ? ' selected' : '' %>><?php _e( 'Inside', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
14
- <option value="as_placeholder"<%= (instance.label_placement == 'as_placeholder') ? ' selected' : '' %>><?php _e( 'Display as placeholder', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
15
  <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
16
  </select>
17
  </p>
18
- <p class="label_placement-options" style="display: none">
19
- <label>
20
- <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="label_placement" /> <?php _e( 'Apply to all parts', HAPPYFORMS_TEXT_DOMAIN ); ?>
21
- </label>
22
- </p>
23
  <p>
24
  <label for="<%= instance.id %>_description"><?php _e( 'Description', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
25
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
@@ -50,18 +44,16 @@
50
  <div class="happyforms-part-advanced-settings-wrap">
51
  <?php do_action( 'happyforms_part_customize_multi_line_text_before_advanced_options' ); ?>
52
 
53
- <p>
54
  <label for="<%= instance.id %>_character_limit"><?php _e( 'Limit words/characters', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
55
- <div class="character-limit-settings">
56
- <input type="number" id="<%= instance.id %>_character_limit" class="widefat title" step="1" value="<%= instance.character_limit %>" data-bind="character_limit" />
57
- <select id="<%= instance.id %>_character_limit_mode" data-bind="character_limit_mode">
58
- <option value="word_max"<%= (instance.character_limit_mode == 'word_max') ? ' selected' : '' %>><?php _e( 'Words (max)', 'happyforms' ); ?></option>
59
- <option value="word_min"<%= (instance.character_limit_mode == 'word_min') ? ' selected' : '' %>><?php _e( 'Words (min)', 'happyforms' ); ?></option>
60
- <option value="character_max"<%= (instance.character_limit_mode == 'character_max') ? ' selected' : '' %>><?php _e( 'Characters (max)', 'happyforms' ); ?></option>
61
- <option value="character_min"<%= (instance.character_limit_mode == 'character_min') ? ' selected' : '' %>><?php _e( 'Characters (min)', 'happyforms' ); ?></option>
62
- </select>
63
- </div>
64
- </p>
65
  <p>
66
  <label for="<%= instance.id %>_width"><?php _e( 'Width', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
67
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
@@ -80,7 +72,7 @@
80
  <?php do_action( 'happyforms_part_customize_multi_line_text_after_advanced_options' ); ?>
81
 
82
  <p>
83
- <label for="<%= instance.id %>_css_class"><?php _e( 'Custom CSS class', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
84
  <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
85
  </p>
86
  </div>
1
  <script type="text/template" id="customize-happyforms-multi-line-text-template">
2
  <?php include( happyforms_get_core_folder() . '/templates/customize-form-part-header.php' ); ?>
3
  <p>
4
+ <label for="<%= instance.id %>_title"><?php _e( 'Label', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
5
  <input type="text" id="<%= instance.id %>_title" class="widefat title" value="<%= instance.label %>" data-bind="label" />
6
  </p>
7
  <p>
8
+ <label for="<%= instance.id %>_label_placement"><?php _e( 'Label display', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
9
  <select id="<%= instance.id %>_label_placement" data-bind="label_placement">
10
  <option value="above"<%= (instance.label_placement == 'above') ? ' selected' : '' %>><?php _e( 'Above', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
 
11
  <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
12
+ <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
13
  <option value="inside"<%= (instance.label_placement == 'inside') ? ' selected' : '' %>><?php _e( 'Inside', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
 
14
  <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
15
  </select>
16
  </p>
 
 
 
 
 
17
  <p>
18
  <label for="<%= instance.id %>_description"><?php _e( 'Description', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
19
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
44
  <div class="happyforms-part-advanced-settings-wrap">
45
  <?php do_action( 'happyforms_part_customize_multi_line_text_before_advanced_options' ); ?>
46
 
47
+ <div class="character-limit-settings">
48
  <label for="<%= instance.id %>_character_limit"><?php _e( 'Limit words/characters', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
49
+ <input type="number" id="<%= instance.id %>_character_limit" class="widefat title" step="1" min="1" value="<%= instance.character_limit %>" data-bind="character_limit" />
50
+ <select id="<%= instance.id %>_character_limit_mode" data-bind="character_limit_mode">
51
+ <option value="word_max"<%= (instance.character_limit_mode == 'word_max') ? ' selected' : '' %>><?php _e( 'Words (max)', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
52
+ <option value="word_min"<%= (instance.character_limit_mode == 'word_min') ? ' selected' : '' %>><?php _e( 'Words (min)', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
53
+ <option value="character_max"<%= (instance.character_limit_mode == 'character_max') ? ' selected' : '' %>><?php _e( 'Characters (max)', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
54
+ <option value="character_min"<%= (instance.character_limit_mode == 'character_min') ? ' selected' : '' %>><?php _e( 'Characters (min)', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
55
+ </select>
56
+ </div>
 
 
57
  <p>
58
  <label for="<%= instance.id %>_width"><?php _e( 'Width', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
59
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
72
  <?php do_action( 'happyforms_part_customize_multi_line_text_after_advanced_options' ); ?>
73
 
74
  <p>
75
+ <label for="<%= instance.id %>_css_class"><?php _e( 'CSS classes', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
76
  <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
77
  </p>
78
  </div>
core/templates/parts/customize-number.php CHANGED
@@ -1,25 +1,19 @@
1
  <script type="text/template" id="happyforms-customize-number-template">
2
  <?php include( happyforms_get_core_folder() . '/templates/customize-form-part-header.php' ); ?>
3
  <p>
4
- <label for="<%= instance.id %>_title"><?php _e( 'Title', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
5
  <input type="text" id="<%= instance.id %>_title" class="widefat title" value="<%= instance.label %>" data-bind="label" />
6
  </p>
7
  <p>
8
- <label for="<%= instance.id %>_label_placement"><?php _e( 'Title placement', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
9
  <select id="<%= instance.id %>_label_placement" data-bind="label_placement">
10
  <option value="above"<%= (instance.label_placement == 'above') ? ' selected' : '' %>><?php _e( 'Above', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
11
- <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
12
  <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
13
- <option value="inside"<%= (instance.label_placement == 'inside') ? ' selected' : '' %>><?php _e( 'Inside input', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
14
- <option value="as_placeholder"<%= (instance.label_placement == 'as_placeholder') ? ' selected' : '' %>><?php _e( 'Display as placeholder', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
15
  <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
16
  </select>
17
  </p>
18
- <p class="label_placement-options" style="display: none">
19
- <label>
20
- <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="label_placement" /> <?php _e( 'Apply to all parts', HAPPYFORMS_TEXT_DOMAIN ); ?>
21
- </label>
22
- </p>
23
  <p>
24
  <label for="<%= instance.id %>_description"><?php _e( 'Description', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
25
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
@@ -42,11 +36,11 @@
42
  <div class="min-max-wrapper happyforms-customize-controls-wrap--side-by-side">
43
  <p>
44
  <label for="<%= instance.id %>_min_value"><?php _e( 'Min value', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
45
- <input type="text" id="<%= instance.id %>_min_value" class="widefat title" value="<%= instance.min_value %>" data-bind="min_value" />
46
  </p>
47
  <p>
48
  <label for="<%= instance.id %>_max_value"><?php _e( 'Max value', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
49
- <input type="text" id="<%= instance.id %>_max_value" class="widefat title" value="<%= instance.max_value %>" data-bind="max_value" />
50
  </p>
51
  </div>
52
  <p>
@@ -62,16 +56,16 @@
62
 
63
  <p>
64
  <label>
65
- <input type="checkbox" name="masked" class="checkbox" value="1" <% if ( instance.masked ) { %>checked="checked"<% } %> data-bind="masked" /> <?php _e( 'Format', HAPPYFORMS_TEXT_DOMAIN ); ?>
66
  </label>
67
  </p>
68
- <div class="mask-wrapper number-options number-options--numeric happyforms-customize-controls-wrap--side-by-side" style="display: <%= (instance.masked == 1) ? 'flex' : 'none' %>">
69
  <p>
70
- <label for="<%= instance.id %>_mask_numeric_thousands_delimiter"><?php _e( 'Thousands separator', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
71
  <input type="text" id="<%= instance.id %>_mask_numeric_thousands_delimiter" class="widefat title" value="<%= instance.mask_numeric_thousands_delimiter %>" data-bind="mask_numeric_thousands_delimiter" />
72
  </p>
73
  <p>
74
- <label for="<%= instance.id %>_mask_numeric_decimal_mark"><?php _e( 'Decimal<br>separator', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
75
  <input type="text" id="<%= instance.id %>_mask_numeric_decimal_mark" class="widefat title" value="<%= instance.mask_numeric_decimal_mark %>" data-bind="mask_numeric_decimal_mark" />
76
  </p>
77
  </div>
@@ -81,6 +75,17 @@
81
  <input type="text" id="<%= instance.id %>_mask_numeric_prefix" class="widefat title" value="<%= instance.mask_numeric_prefix %>" data-bind="mask_numeric_prefix" />
82
  </p>
83
  </div>
 
 
 
 
 
 
 
 
 
 
 
84
  <p>
85
  <label for="<%= instance.id %>_width"><?php _e( 'Width', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
86
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
@@ -96,18 +101,9 @@
96
  </label>
97
  </p>
98
  <p>
99
- <label for="<%= instance.id %>_css_class"><?php _e( 'Custom CSS class', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
100
  <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
101
  </p>
102
- <p>
103
- <label>
104
- <input type="checkbox" class="checkbox confirmation-checkbox" value="1" <% if ( instance.confirmation_field ) { %>checked="checked"<% } %> data-bind="confirmation_field" /> <?php _e( 'Require confirmation of the value', HAPPYFORMS_TEXT_DOMAIN ); ?>
105
- </label>
106
- </p>
107
- <p class="confirmation-field-setting" style="display: <%= (instance.confirmation_field == 1) ? 'block' : 'none' %>">
108
- <label for="<%= instance.id %>_confirmation_field_label"><?php _e( 'Confirmation field title', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
109
- <input type="text" id="<%= instance.id %>_confirmation_field_label" class="widefat title" value="<%= instance.confirmation_field_label %>" data-bind="confirmation_field_label" />
110
- </p>
111
 
112
  <?php do_action( 'happyforms_part_customize_number_after_advanced_options' ); ?>
113
  </div>
1
  <script type="text/template" id="happyforms-customize-number-template">
2
  <?php include( happyforms_get_core_folder() . '/templates/customize-form-part-header.php' ); ?>
3
  <p>
4
+ <label for="<%= instance.id %>_title"><?php _e( 'Label', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
5
  <input type="text" id="<%= instance.id %>_title" class="widefat title" value="<%= instance.label %>" data-bind="label" />
6
  </p>
7
  <p>
8
+ <label for="<%= instance.id %>_label_placement"><?php _e( 'Label display', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
9
  <select id="<%= instance.id %>_label_placement" data-bind="label_placement">
10
  <option value="above"<%= (instance.label_placement == 'above') ? ' selected' : '' %>><?php _e( 'Above', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
 
11
  <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
12
+ <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
13
+ <option value="inside"<%= (instance.label_placement == 'inside') ? ' selected' : '' %>><?php _e( 'Inside', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
14
  <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
15
  </select>
16
  </p>
 
 
 
 
 
17
  <p>
18
  <label for="<%= instance.id %>_description"><?php _e( 'Description', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
19
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
36
  <div class="min-max-wrapper happyforms-customize-controls-wrap--side-by-side">
37
  <p>
38
  <label for="<%= instance.id %>_min_value"><?php _e( 'Min value', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
39
+ <input type="number" id="<%= instance.id %>_min_value" class="widefat title" value="<%= instance.min_value %>" data-bind="min_value" />
40
  </p>
41
  <p>
42
  <label for="<%= instance.id %>_max_value"><?php _e( 'Max value', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
43
+ <input type="number" id="<%= instance.id %>_max_value" class="widefat title" value="<%= instance.max_value %>" data-bind="max_value" />
44
  </p>
45
  </div>
46
  <p>
56
 
57
  <p>
58
  <label>
59
+ <input type="checkbox" name="masked" class="checkbox" value="1" <% if ( instance.masked ) { %>checked="checked"<% } %> data-bind="masked" /> <?php _e( 'Use number separators', HAPPYFORMS_TEXT_DOMAIN ); ?>
60
  </label>
61
  </p>
62
+ <div class="happyforms-nested-settings mask-wrapper number-options number-options--numeric happyforms-customize-controls-wrap--side-by-side" data-trigger="masked" style="display: <%= (instance.masked == 1) ? 'flex' : 'none' %>">
63
  <p>
64
+ <label for="<%= instance.id %>_mask_numeric_thousands_delimiter"><?php _e( 'Grouping', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
65
  <input type="text" id="<%= instance.id %>_mask_numeric_thousands_delimiter" class="widefat title" value="<%= instance.mask_numeric_thousands_delimiter %>" data-bind="mask_numeric_thousands_delimiter" />
66
  </p>
67
  <p>
68
+ <label for="<%= instance.id %>_mask_numeric_decimal_mark"><?php _e( 'Decimal', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
69
  <input type="text" id="<%= instance.id %>_mask_numeric_decimal_mark" class="widefat title" value="<%= instance.mask_numeric_decimal_mark %>" data-bind="mask_numeric_decimal_mark" />
70
  </p>
71
  </div>
75
  <input type="text" id="<%= instance.id %>_mask_numeric_prefix" class="widefat title" value="<%= instance.mask_numeric_prefix %>" data-bind="mask_numeric_prefix" />
76
  </p>
77
  </div>
78
+ <p>
79
+ <label>
80
+ <input type="checkbox" class="checkbox confirmation-checkbox" value="1" <% if ( instance.confirmation_field ) { %>checked="checked"<% } %> data-bind="confirmation_field" /> <?php _e( 'Require confirmation', HAPPYFORMS_TEXT_DOMAIN ); ?>
81
+ </label>
82
+ </p>
83
+ <div class="happyforms-nested-settings" data-trigger="confirmation_field" style="display: <%= (instance.confirmation_field == 1) ? 'block' : 'none' %>">
84
+ <p>
85
+ <label for="<%= instance.id %>_confirmation_field_label"><?php _e( 'Label', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
86
+ <input type="text" id="<%= instance.id %>_confirmation_field_label" class="widefat title" value="<%= instance.confirmation_field_label %>" data-bind="confirmation_field_label" />
87
+ </p>
88
+ </div>
89
  <p>
90
  <label for="<%= instance.id %>_width"><?php _e( 'Width', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
91
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
101
  </label>
102
  </p>
103
  <p>
104
+ <label for="<%= instance.id %>_css_class"><?php _e( 'CSS classes', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
105
  <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
106
  </p>
 
 
 
 
 
 
 
 
 
107
 
108
  <?php do_action( 'happyforms_part_customize_number_after_advanced_options' ); ?>
109
  </div>
core/templates/parts/customize-radio.php CHANGED
@@ -1,23 +1,18 @@
1
  <script type="text/template" id="customize-happyforms-radio-template">
2
  <?php include( happyforms_get_core_folder() . '/templates/customize-form-part-header.php' ); ?>
3
  <p>
4
- <label for="<%= instance.id %>_title"><?php _e( 'Title', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
5
  <input type="text" id="<%= instance.id %>_title" class="widefat title" value="<%= instance.label %>" data-bind="label" />
6
  </p>
7
  <p>
8
- <label for="<%= instance.id %>_label_placement"><?php _e( 'Title placement', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
9
  <select id="<%= instance.id %>_label_placement" data-bind="label_placement">
10
  <option value="above"<%= (instance.label_placement == 'above') ? ' selected' : '' %>><?php _e( 'Above', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
11
- <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
12
  <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
 
13
  <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
14
  </select>
15
  </p>
16
- <p class="label_placement-options" style="display: none">
17
- <label>
18
- <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="label_placement" /> <?php _e( 'Apply to all parts', HAPPYFORMS_TEXT_DOMAIN ); ?>
19
- </label>
20
- </p>
21
  <p>
22
  <label for="<%= instance.id %>_description"><?php _e( 'Description', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
23
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
@@ -65,7 +60,7 @@
65
  <?php do_action( 'happyforms_part_customize_radio_before_advanced_options' ); ?>
66
 
67
  <p>
68
- <label for="<%= instance.id %>_display_type"><?php _e( 'Align choices', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
69
  <select id="<%= instance.id %>_display_type" name="display_type" data-bind="display_type" class="widefat">
70
  <option value="inline"<%= (instance.display_type == 'inline') ? ' selected' : '' %>><?php _e( 'Horizontal', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
71
  <option value="block"<%= (instance.display_type == 'block') ? ' selected' : '' %>><?php _e( 'Vertical', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
@@ -95,7 +90,7 @@
95
  </label>
96
  </p>
97
  <p>
98
- <label for="<%= instance.id %>_css_class"><?php _e( 'Custom CSS class', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
99
  <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
100
  </p>
101
 
@@ -129,7 +124,7 @@
129
  </div>
130
  <div class="option-actions">
131
  <a href="#" class="delete-option"><?php _e( 'Delete', HAPPYFORMS_TEXT_DOMAIN ); ?></a> |
132
- <a href="#" class="advanced-option"><?php _e( 'Advanced', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
133
  </div>
134
  </div>
135
  </li>
1
  <script type="text/template" id="customize-happyforms-radio-template">
2
  <?php include( happyforms_get_core_folder() . '/templates/customize-form-part-header.php' ); ?>
3
  <p>
4
+ <label for="<%= instance.id %>_title"><?php _e( 'Label', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
5
  <input type="text" id="<%= instance.id %>_title" class="widefat title" value="<%= instance.label %>" data-bind="label" />
6
  </p>
7
  <p>
8
+ <label for="<%= instance.id %>_label_placement"><?php _e( 'Label display', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
9
  <select id="<%= instance.id %>_label_placement" data-bind="label_placement">
10
  <option value="above"<%= (instance.label_placement == 'above') ? ' selected' : '' %>><?php _e( 'Above', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
 
11
  <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
12
+ <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
13
  <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
14
  </select>
15
  </p>
 
 
 
 
 
16
  <p>
17
  <label for="<%= instance.id %>_description"><?php _e( 'Description', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
18
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
60
  <?php do_action( 'happyforms_part_customize_radio_before_advanced_options' ); ?>
61
 
62
  <p>
63
+ <label for="<%= instance.id %>_display_type"><?php _e( 'Choices display', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
64
  <select id="<%= instance.id %>_display_type" name="display_type" data-bind="display_type" class="widefat">
65
  <option value="inline"<%= (instance.display_type == 'inline') ? ' selected' : '' %>><?php _e( 'Horizontal', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
66
  <option value="block"<%= (instance.display_type == 'block') ? ' selected' : '' %>><?php _e( 'Vertical', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
90
  </label>
91
  </p>
92
  <p>
93
+ <label for="<%= instance.id %>_css_class"><?php _e( 'CSS classes', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
94
  <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
95
  </p>
96
 
124
  </div>
125
  <div class="option-actions">
126
  <a href="#" class="delete-option"><?php _e( 'Delete', HAPPYFORMS_TEXT_DOMAIN ); ?></a> |
127
+ <a href="#" class="advanced-option"><?php _e( 'More', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
128
  </div>
129
  </div>
130
  </li>
core/templates/parts/customize-select.php CHANGED
@@ -1,24 +1,18 @@
1
  <script type="text/template" id="customize-happyforms-select-template">
2
  <?php include( happyforms_get_core_folder() . '/templates/customize-form-part-header.php' ); ?>
3
  <p>
4
- <label for="<%= instance.id %>_title"><?php _e( 'Title', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
5
  <input type="text" id="<%= instance.id %>_title" class="widefat title" value="<%= instance.label %>" data-bind="label" />
6
  </p>
7
  <p>
8
- <label for="<%= instance.id %>_label_placement"><?php _e( 'Title placement', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
9
  <select id="<%= instance.id %>_label_placement" data-bind="label_placement">
10
  <option value="above"<%= (instance.label_placement == 'above') ? ' selected' : '' %>><?php _e( 'Above', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
11
- <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
12
  <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
13
- <option value="as_placeholder"<%= (instance.label_placement == 'as_placeholder') ? ' selected' : '' %>><?php _e( 'Display as placeholder', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
14
  <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
15
  </select>
16
  </p>
17
- <p class="label_placement-options" style="display: none">
18
- <label>
19
- <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="label_placement" /> <?php _e( 'Apply to all parts', HAPPYFORMS_TEXT_DOMAIN ); ?>
20
- </label>
21
- </p>
22
  <p>
23
  <label for="<%= instance.id %>_description"><?php _e( 'Description', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
24
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
@@ -92,7 +86,7 @@
92
  <?php do_action( 'happyforms_part_customize_select_after_advanced_options' ); ?>
93
 
94
  <p>
95
- <label for="<%= instance.id %>_css_class"><?php _e( 'Custom CSS class', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
96
  <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
97
  </p>
98
  </div>
1
  <script type="text/template" id="customize-happyforms-select-template">
2
  <?php include( happyforms_get_core_folder() . '/templates/customize-form-part-header.php' ); ?>
3
  <p>
4
+ <label for="<%= instance.id %>_title"><?php _e( 'Label', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
5
  <input type="text" id="<%= instance.id %>_title" class="widefat title" value="<%= instance.label %>" data-bind="label" />
6
  </p>
7
  <p>
8
+ <label for="<%= instance.id %>_label_placement"><?php _e( 'Label display', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
9
  <select id="<%= instance.id %>_label_placement" data-bind="label_placement">
10
  <option value="above"<%= (instance.label_placement == 'above') ? ' selected' : '' %>><?php _e( 'Above', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
 
11
  <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
12
+ <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
13
  <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
14
  </select>
15
  </p>
 
 
 
 
 
16
  <p>
17
  <label for="<%= instance.id %>_description"><?php _e( 'Description', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
18
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
86
  <?php do_action( 'happyforms_part_customize_select_after_advanced_options' ); ?>
87
 
88
  <p>
89
+ <label for="<%= instance.id %>_css_class"><?php _e( 'CSS classes', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
90
  <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
91
  </p>
92
  </div>
core/templates/parts/customize-single-line-text.php CHANGED
@@ -1,25 +1,19 @@
1
  <script type="text/template" id="customize-happyforms-single-line-text-template">
2
  <?php include( happyforms_get_core_folder() . '/templates/customize-form-part-header.php' ); ?>
3
  <p>
4
- <label for="<%= instance.id %>_title"><?php _e( 'Title', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
5
  <input type="text" id="<%= instance.id %>_title" class="widefat title" value="<%= instance.label %>" data-bind="label" />
6
  </p>
7
  <p>
8
- <label for="<%= instance.id %>_label_placement"><?php _e( 'Title placement', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
9
  <select id="<%= instance.id %>_label_placement" data-bind="label_placement">
10
  <option value="above"<%= (instance.label_placement == 'above') ? ' selected' : '' %>><?php _e( 'Above', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
11
- <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
12
  <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
13
- <option value="inside"<%= (instance.label_placement == 'inside') ? ' selected' : '' %>><?php _e( 'Inside input', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
14
- <option value="as_placeholder"<%= (instance.label_placement == 'as_placeholder') ? ' selected' : '' %>><?php _e( 'Display as placeholder', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
15
  <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
16
  </select>
17
  </p>
18
- <p class="label_placement-options" style="display: none">
19
- <label>
20
- <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="label_placement" /> <?php _e( 'Apply to all parts', HAPPYFORMS_TEXT_DOMAIN ); ?>
21
- </label>
22
- </p>
23
  <p>
24
  <label for="<%= instance.id %>_description"><?php _e( 'Description', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
25
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
@@ -50,11 +44,6 @@
50
  <div class="happyforms-part-advanced-settings-wrap">
51
  <?php do_action( 'happyforms_part_customize_single_line_text_before_advanced_options' ); ?>
52
 
53
- <p>
54
- <label>
55
- <input type="checkbox" class="checkbox" value="1" <% if ( instance.use_as_subject ) { %>checked="checked"<% } %> data-bind="use_as_subject" /> <?php _e( 'Use value as email subject', HAPPYFORMS_TEXT_DOMAIN ); ?>
56
- </label>
57
- </p>
58
  <p>
59
  <label for="<%= instance.id %>_width"><?php _e( 'Width', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
60
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
@@ -73,7 +62,7 @@
73
  <?php do_action( 'happyforms_part_customize_single_line_text_after_advanced_options' ); ?>
74
 
75
  <p>
76
- <label for="<%= instance.id %>_css_class"><?php _e( 'Custom CSS class', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
77
  <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
78
  </p>
79
  </div>
1
  <script type="text/template" id="customize-happyforms-single-line-text-template">
2
  <?php include( happyforms_get_core_folder() . '/templates/customize-form-part-header.php' ); ?>
3
  <p>
4
+ <label for="<%= instance.id %>_title"><?php _e( 'Label', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
5
  <input type="text" id="<%= instance.id %>_title" class="widefat title" value="<%= instance.label %>" data-bind="label" />
6
  </p>
7
  <p>
8
+ <label for="<%= instance.id %>_label_placement"><?php _e( 'Label display', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
9
  <select id="<%= instance.id %>_label_placement" data-bind="label_placement">
10
  <option value="above"<%= (instance.label_placement == 'above') ? ' selected' : '' %>><?php _e( 'Above', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
 
11
  <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
12
+ <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
13
+ <option value="inside"<%= (instance.label_placement == 'inside') ? ' selected' : '' %>><?php _e( 'Inside', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
14
  <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
15
  </select>
16
  </p>
 
 
 
 
 
17
  <p>
18
  <label for="<%= instance.id %>_description"><?php _e( 'Description', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
19
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
44
  <div class="happyforms-part-advanced-settings-wrap">
45
  <?php do_action( 'happyforms_part_customize_single_line_text_before_advanced_options' ); ?>
46
 
 
 
 
 
 
47
  <p>
48
  <label for="<%= instance.id %>_width"><?php _e( 'Width', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
49
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
62
  <?php do_action( 'happyforms_part_customize_single_line_text_after_advanced_options' ); ?>
63
 
64
  <p>
65
+ <label for="<%= instance.id %>_css_class"><?php _e( 'CSS classes', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
66
  <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
67
  </p>
68
  </div>
core/templates/parts/frontend-number.php CHANGED
@@ -8,7 +8,7 @@
8
  <?php do_action( 'happyforms_part_input_before', $part, $form ); ?>
9
 
10
  <?php if ( ! $part['masked'] ) : ?>
11
- <input id="<?php happyforms_the_part_id( $part, $form ); ?>" type="number" value="<?php happyforms_the_part_value( $part, $form, 0 ); ?>" name="<?php happyforms_the_part_name( $part, $form ); ?>" placeholder="<?php echo esc_attr( $part['placeholder'] ); ?>" min="<?php echo esc_attr( $part['min_value'] ); ?>" max="<?php echo esc_attr( $part['max_value'] ); ?>" value="<?php echo esc_attr( $part['min_value'] ); ?>" <?php happyforms_the_part_attributes( $part, $form, 0 ); ?> />
12
  <?php else: ?>
13
  <input id="<?php happyforms_the_part_id( $part, $form ); ?>" class="happyforms-masked-input" type="text" value="<?php happyforms_the_part_value( $part, $form, 0 ); ?>" name="<?php happyforms_the_part_name( $part, $form ); ?>" placeholder="<?php echo esc_attr( $part['placeholder'] ); ?>" <?php happyforms_the_part_attributes( $part, $form, 0 ); ?> />
14
  <?php endif; ?>
@@ -40,4 +40,4 @@
40
  </div>
41
  </div>
42
  <?php endif; ?>
43
- </div>
8
  <?php do_action( 'happyforms_part_input_before', $part, $form ); ?>
9
 
10
  <?php if ( ! $part['masked'] ) : ?>
11
+ <input id="<?php happyforms_the_part_id( $part, $form ); ?>" type="number" value="<?php happyforms_the_part_value( $part, $form, 0 ); ?>" step="any" name="<?php happyforms_the_part_name( $part, $form ); ?>" placeholder="<?php echo esc_attr( $part['placeholder'] ); ?>" min="<?php echo esc_attr( $part['min_value'] ); ?>" max="<?php echo esc_attr( $part['max_value'] ); ?>" value="<?php echo esc_attr( $part['min_value'] ); ?>" <?php happyforms_the_part_attributes( $part, $form, 0 ); ?> />
12
  <?php else: ?>
13
  <input id="<?php happyforms_the_part_id( $part, $form ); ?>" class="happyforms-masked-input" type="text" value="<?php happyforms_the_part_value( $part, $form, 0 ); ?>" name="<?php happyforms_the_part_name( $part, $form ); ?>" placeholder="<?php echo esc_attr( $part['placeholder'] ); ?>" <?php happyforms_the_part_attributes( $part, $form, 0 ); ?> />
14
  <?php endif; ?>
40
  </div>
41
  </div>
42
  <?php endif; ?>
43
+ </div>
happyforms.php CHANGED
@@ -5,7 +5,7 @@
5
  * Plugin URI: https://happyforms.me
6
  * Description: Your friendly drag and drop contact form builder for creating contact forms, lead generation forms, feedback forms, quote forms, survey forms and more!
7
  * Author: The Theme Foundry
8
- * Version: 1.8.22
9
  * Author URI: https://thethemefoundry.com
10
  * Upgrade URI: https://thethemefoundry.com
11
  */
@@ -13,7 +13,7 @@
13
  /**
14
  * The current version of the plugin.
15
  */
16
- define( 'HAPPYFORMS_VERSION', '1.8.22' );
17
  define( 'HAPPYFORMS_TEXT_DOMAIN', 'happyforms' );
18
 
19
  if ( ! function_exists( 'happyforms_plugin_file' ) ):
5
  * Plugin URI: https://happyforms.me
6
  * Description: Your friendly drag and drop contact form builder for creating contact forms, lead generation forms, feedback forms, quote forms, survey forms and more!
7
  * Author: The Theme Foundry
8
+ * Version: 1.9.0
9
  * Author URI: https://thethemefoundry.com
10
  * Upgrade URI: https://thethemefoundry.com
11
  */
13
  /**
14
  * The current version of the plugin.
15
  */
16
+ define( 'HAPPYFORMS_VERSION', '1.9.0' );
17
  define( 'HAPPYFORMS_TEXT_DOMAIN', 'happyforms' );
18
 
19
  if ( ! function_exists( 'happyforms_plugin_file' ) ):
inc/assets/js/admin/dashboard.js CHANGED
@@ -7,8 +7,7 @@
7
  init: function() {
8
  $( document ).on( 'click', '#adminmenu #toplevel_page_happyforms li:last-child a', this.onUpgradeClick.bind(this) );
9
  $( document ).on( 'click', '#adminmenu #toplevel_page_happyforms a[href="#responses"]', this.onModalTriggerClick.bind(this) );
10
- $( document ).on( 'click', '#adminmenu #toplevel_page_happyforms a[href="#import-export"]', this.onModalTriggerClick.bind(this) );
11
- $( document ).on( 'click', '#adminmenu #toplevel_page_happyforms a[href="#integrations"]', this.onModalTriggerClick.bind(this) );
12
  $( document ).on( 'click', '.happyforms-upgrade-modal .happyforms-continue-link', this.onContinueClick.bind(this) );
13
  $( document ).on( 'click', '.happyforms-upgrade-modal .happyforms-export-button', this.onExportButtonClick.bind(this) );
14
  $( document ).on( 'click', '.happyforms-upgrade-modal .happyforms-upgrade-modal__close', this.onCloseClick.bind(this) );
7
  init: function() {
8
  $( document ).on( 'click', '#adminmenu #toplevel_page_happyforms li:last-child a', this.onUpgradeClick.bind(this) );
9
  $( document ).on( 'click', '#adminmenu #toplevel_page_happyforms a[href="#responses"]', this.onModalTriggerClick.bind(this) );
10
+ $( document ).on( 'click', '#adminmenu #toplevel_page_happyforms a[href="#settings"]', this.onModalTriggerClick.bind(this) );
 
11
  $( document ).on( 'click', '.happyforms-upgrade-modal .happyforms-continue-link', this.onContinueClick.bind(this) );
12
  $( document ).on( 'click', '.happyforms-upgrade-modal .happyforms-export-button', this.onExportButtonClick.bind(this) );
13
  $( document ).on( 'click', '.happyforms-upgrade-modal .happyforms-upgrade-modal__close', this.onCloseClick.bind(this) );
inc/assets/js/customize.js CHANGED
@@ -77,14 +77,15 @@
77
  },
78
 
79
  changeDocumentTitle: function() {
80
- var title = $( 'title' ).text();
81
- var newTitle = '';
 
82
 
83
- newTitle = title.replace( title.substring( 0, title.indexOf( ':' ) ), 'HappyForms' );
84
- $( 'title' ).text( newTitle );
 
85
 
86
- // change template
87
- _wpCustomizeSettings.documentTitleTmpl = 'HappyForms: %s';
88
  }
89
  } );
90
 
@@ -145,11 +146,28 @@
145
  routes: {
146
  'build': 'build',
147
  'setup': 'setup',
 
148
  'style': 'style',
149
  },
150
 
151
- steps: [ 'build', 'setup', 'style' ],
152
  currentRoute: 'build',
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
153
  form: false,
154
  previewLoaded: false,
155
  buffer: [],
@@ -208,13 +226,21 @@
208
  case 'build':
209
  childView = new classes.views.FormBuild( { model: this.form } );
210
  break;
 
 
 
211
  case 'style':
212
  childView = new classes.views.FormStyle( { model: this.form } );
213
  break;
214
  }
215
 
 
216
  this.currentRoute = segment;
217
 
 
 
 
 
218
  this.sidebar.doStep( {
219
  step: {
220
  slug: segment,
@@ -225,6 +251,8 @@
225
  direction: direction,
226
  child: childView,
227
  } );
 
 
228
  },
229
 
230
  forward: function() {
@@ -376,11 +404,9 @@
376
  },
377
 
378
  render: function() {
379
- this.$el.html( this.template( {} ) );
380
-
381
- if ( this.model.isNew() ) {
382
- this.enableSave();
383
- }
384
 
385
  return this;
386
  },
@@ -464,36 +490,35 @@
464
  this.previous = this.current;
465
  this.current = child;
466
 
467
- this.current.$el.css( 'left', options.direction > 0 ? '300px': '-300px' );
468
- this.current.$el.animate( {
469
- left: '0px',
470
- }, 200 );
471
-
472
- this.previous.$el.animate( {
473
- left: options.direction > 0 ? '-300px': '300px',
474
- }, 200, $.proxy( this.onStepComplete, this, options ) );
475
  } else {
476
  this.current = child;
477
- this.current.$el.css( 'left', '0px' );
478
  this.steps.render( options );
479
  }
480
  },
481
 
482
  onStepComplete: function( options ) {
483
  this.previous.remove();
484
- $( '.wp-full-overlay-sidebar-content' ).scrollTop( 0 );
485
  this.steps.render( options );
 
486
  }
487
  } );
488
 
489
  classes.views.Steps = classes.views.Base.extend( {
490
- el: '#customize-footer-actions',
491
  template: '#happyforms-form-steps-template',
492
 
493
  events: {
494
- 'click .happyforms-step-previous': 'onPreviousStepClick',
495
- 'click .happyforms-step-next': 'onNextStepClick',
496
- 'click .happyforms-step-save': 'onSaveStepClick',
 
 
 
 
497
  },
498
 
499
  render: function( options ) {
@@ -502,35 +527,30 @@
502
  this.$el.show();
503
  },
504
 
505
- enable: function() {
506
- $( 'button', this.$el ).removeAttr( 'disabled' );
507
- },
508
 
509
- disable: function() {
510
- $( 'button', this.$el ).attr( 'disabled', 'disabled' );
511
- },
512
 
513
- onNextStepClick: function( e ) {
514
- e.preventDefault();
515
- happyForms.forward();
516
- },
517
 
518
- onPreviousStepClick: function( e ) {
519
- e.preventDefault();
520
- happyForms.back();
521
- },
522
 
523
- onSaveStepClick: function( e ) {
524
- e.preventDefault();
525
 
526
- this.model.save( {
527
- success: function() {
528
- happyForms.actions.disableSave();
529
- window.location.href = $( '#happyforms-close-link' ).attr( 'href' );
530
- }
531
- } );
532
  },
533
 
 
 
 
 
534
  } );
535
 
536
  classes.views.FormBuild = classes.views.Base.extend( {
@@ -539,6 +559,7 @@
539
  events: {
540
  'keyup #happyforms-form-name': 'onNameChange',
541
  'click #happyforms-form-name': 'onNameInputClick',
 
542
  'change #happyforms-form-name': 'onNameChange',
543
  'click .expand-collapse-all': 'onExpandCollapseAllClick',
544
  'global-attribute-set': 'onSetGlobalAttribute',
@@ -560,7 +581,6 @@
560
  this.listenTo( this.model.get( 'parts' ), 'remove', this.onPartModelRemove );
561
  this.listenTo( this.model.get( 'parts' ), 'change', this.onPartModelChange );
562
  this.listenTo( this.model.get( 'parts' ), 'reset', this.onPartModelsSorted );
563
- this.listenTo( this.model.get( 'parts' ), 'widget-toggle', this.onWidgetToggle );
564
  this.listenTo( this.partViews, 'add', this.onPartViewAdd );
565
  this.listenTo( this.partViews, 'remove', this.onPartViewRemove );
566
  this.listenTo( this.partViews, 'reset', this.onPartViewsSorted );
@@ -573,24 +593,30 @@
573
  return this;
574
  },
575
 
576
- onWidgetToggle: function() {
577
- var $expandCollapseButton = $( '.expand-collapse-all', this.$el );
578
-
579
- if ( 0 === $( '.happyforms-widget-expanded', this.$el ).length ) {
580
- $expandCollapseButton.text($expandCollapseButton.data('expand-text')).removeClass('collapse').addClass('expand');
581
- }
582
-
583
- if ( 0 === $( '.happyforms-widget:not(.happyforms-widget-expanded)', this.$el ).length ) {
584
- $expandCollapseButton.text($expandCollapseButton.data('collapse-text')).removeClass('expand').addClass('collapse');
585
- }
586
- },
587
-
588
  ready: function() {
589
  this.model.get( 'parts' ).each( function( partModel ) {
590
  this.addViewPart( partModel );
591
  }, this );
592
 
593
- $( '.happyforms-form-widgets', this.$el ).sortable( {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
594
  items: '.happyforms-widget:not(.no-sortable)',
595
  handle: '.happyforms-part-widget-top',
596
 
@@ -599,15 +625,22 @@
599
  }.bind( this ),
600
  } );
601
 
 
 
602
  this.drawer = new classes.views.PartsDrawer();
603
  $( '.wp-full-overlay' ).append( this.drawer.render().$el );
604
- $( 'body' ).addClass( 'adding-happyforms-parts' );
605
 
606
- this.drawer.$el.animate( {
607
- 'left': '0px',
608
- }, 200 );
 
609
 
610
- $( '#happyforms-form-name', this.$el ).focus().select();
 
 
 
 
 
611
  },
612
 
613
  onNameInputClick: function( e ) {
@@ -624,32 +657,10 @@
624
  happyForms.previewSend( 'happyforms-form-title-update', value );
625
  },
626
 
627
- onExpandCollapseAllClick: function(e) {
628
  e.preventDefault();
629
 
630
- var $button = $(e.target);
631
-
632
- this.partViews.each(function (model) {
633
- if ($button.hasClass('expand')) {
634
- model.get('view').trigger('widget-expand');
635
- } else {
636
- model.get('view').trigger('widget-collapse');
637
- }
638
- });
639
-
640
- if ($button.hasClass('expand')) {
641
- $button.text($button.data('collapse-text')).removeClass('expand').addClass('collapse');
642
- } else {
643
- $button.text($button.data('expand-text')).removeClass('collapse').addClass('expand');
644
- }
645
- },
646
-
647
- showExpandCollapseButton: function() {
648
- this.$el.find('.expand-collapse-all').addClass( 'show' );
649
- },
650
-
651
- hideExpandCollapseButton: function () {
652
- this.$el.find('.expand-collapse-all').removeClass( 'show' );
653
  },
654
 
655
  onPartAdd: function( type, options ) {
@@ -668,6 +679,8 @@
668
 
669
  happyForms.previewSend( 'happyforms-form-part-add', data );
670
  } );
 
 
671
  },
672
 
673
  onPartDuplicate: function( part, options ) {
@@ -698,6 +711,8 @@
698
 
699
  happyForms.previewSend( 'happyforms-form-part-add', data );
700
  } );
 
 
701
  },
702
 
703
  onPartModelAdd: function( partModel, partsCollection, options ) {
@@ -773,17 +788,11 @@
773
  scrollTop: partView.$el.position().top
774
  }, 400 );
775
  }
776
-
777
- this.showExpandCollapseButton();
778
  },
779
 
780
  onPartViewRemove: function( viewModel ) {
781
  var partView = viewModel.get( 'view' );
782
  partView.remove();
783
-
784
- if (!this.partViews.length) {
785
- this.hideExpandCollapseButton();
786
- }
787
  },
788
 
789
  onPartSortStop: function( e, ui ) {
@@ -854,14 +863,8 @@
854
  this.partViews.remove( partView );
855
  };
856
 
857
- var drawer = this.drawer;
858
- this.drawer.$el.animate( {
859
- 'left': '-300px',
860
- }, 200, function() {
861
- drawer.remove();
862
- } );
863
-
864
- $( 'body' ).removeClass( 'adding-happyforms-parts' );
865
 
866
  classes.views.Base.prototype.remove.apply( this, arguments );
867
  },
@@ -877,14 +880,24 @@
877
  'click .happyforms-clear-search': 'onClearSearchClick'
878
  },
879
 
 
 
 
 
 
 
880
  render: function() {
881
  this.setElement( this.template( { parts: happyForms.parts.toJSON() } ) );
882
  return this;
883
  },
884
 
885
  onListItemClick: function( e ) {
 
 
886
  var type = $( e.currentTarget ).data( 'part-type' );
887
  happyForms.trigger( 'part-add', type, { expand: true } );
 
 
888
  },
889
 
890
  onPartSearch: function( e ) {
@@ -915,6 +928,32 @@
915
 
916
  onClearSearchClick: function( e ) {
917
  $( '#part-search', this.$el ).val( '' ).trigger( 'change' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
918
  }
919
  } );
920
 
@@ -950,13 +989,6 @@
950
  this.listenTo( this.model, 'change:label_placement', this.onLabelPlacementChange );
951
  this.listenTo( this.model, 'change:css_class', this.onCSSClassChange );
952
  this.listenTo( this.model, 'change:focus_reveal_description', this.onFocusRevealDescriptionChange );
953
-
954
- this.listenTo( this, 'widget-expand', this.expand );
955
- this.listenTo( this, 'widget-collapse', this.collapse );
956
-
957
- if ( options.expand ) {
958
- this.listenTo( this, 'ready', this.expandToggle );
959
- }
960
  },
961
 
962
  render: function() {
@@ -1050,66 +1082,6 @@
1050
  happyForms.previewSend( 'happyforms-part-dom-update', data );
1051
  },
1052
 
1053
- /**
1054
- * Slide toggle part view in the customize pane.
1055
- *
1056
- * @since 1.0.0.
1057
- *
1058
- * @return void
1059
- */
1060
- expandToggle: function() {
1061
- var $el = this.$el;
1062
- var self = this;
1063
-
1064
- $( '.happyforms-widget-content', this.$el ).slideToggle( function() {
1065
- $el.toggleClass('happyforms-widget-expanded');
1066
-
1067
- self.model.collection.trigger('widget-toggle');
1068
- } );
1069
- },
1070
-
1071
- /**
1072
- * Expand part view.
1073
- *
1074
- * @since 1.1.0.
1075
- *
1076
- * @return void
1077
- */
1078
- expand: function() {
1079
- var $el = this.$el;
1080
-
1081
- $el.find('.happyforms-widget-content').slideDown(function() {
1082
- $el.addClass('happyforms-widget-expanded');
1083
- });
1084
- },
1085
-
1086
- /**
1087
- * Collapse part view.
1088
- *
1089
- * @since 1.1.0.
1090
- *
1091
- * @return void
1092
- */
1093
- collapse: function() {
1094
- var $el = this.$el;
1095
-
1096
- $el.find('.happyforms-widget-content').slideUp(function () {
1097
- $el.removeClass('happyforms-widget-expanded');
1098
- });
1099
- },
1100
-
1101
- /**
1102
- * Call expandToggle method on toggle indicator click or 'Close' button click of the part view in Customize pane.
1103
- *
1104
- * @since 1.0.0.
1105
- *
1106
- * @return void
1107
- */
1108
- onWidgetToggle: function( e ) {
1109
- e.preventDefault();
1110
- this.expandToggle();
1111
- },
1112
-
1113
  /**
1114
  * Remove part model from collection on "Delete" button click.
1115
  *
@@ -1120,7 +1092,13 @@
1120
  onPartRemoveClick: function( e ) {
1121
  e.preventDefault();
1122
 
1123
- this.model.collection.remove( this.model );
 
 
 
 
 
 
1124
  },
1125
 
1126
  onPartDuplicateClick: function( e ) {
@@ -1234,14 +1212,6 @@
1234
  if ( $('option[value='+value+']', $select).length > 0 ) {
1235
  $select.val( value );
1236
 
1237
- if ( ! options.skipGlobalReveal ) {
1238
- var $globalWrap = this.$( '.label_placement-options', this.$el );
1239
- // reset global checkbox
1240
- this.$( 'input', $globalWrap ).prop( 'checked', false );
1241
- // fade in the global checkbox wrapper
1242
- $globalWrap.fadeIn();
1243
- }
1244
-
1245
  if ( 'as_placeholder' === value ) {
1246
  $( '.happyforms-placeholder-option', this.$el ).hide();
1247
  } else {
@@ -1377,7 +1347,6 @@
1377
  editorIds: [
1378
  'confirmation_message',
1379
  'error_message',
1380
- 'confirmation_email_content'
1381
  ],
1382
 
1383
  initialize: function() {
@@ -1398,7 +1367,6 @@
1398
  tinymce: {
1399
  toolbar1: 'bold,italic,bullist,numlist,link,hr',
1400
  setup: this.onEditorInit.bind( this ),
1401
- content_style: 'body { font-family: sans-serif; }'
1402
  },
1403
  };
1404
 
@@ -1488,6 +1456,26 @@
1488
  }
1489
  } );
1490
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1491
  classes.views.FormStyle = classes.views.Base.extend( {
1492
  template: '#happyforms-form-style-template',
1493
 
@@ -1497,7 +1485,7 @@
1497
  'change [data-target="form_class"] input': 'onFormClassChange',
1498
  'change [data-target="form_class"] select': 'onFormClassChange',
1499
  'change [data-target="form_class"] input[type="checkbox"]': 'onFormClassCheckboxChange',
1500
- 'change [data-target="css_var"] input[type=radio]': 'onButtonSetCssVarChange',
1501
  'keyup [data-target="attribute"] input[type=text]': 'onAttributeChange',
1502
  'navigate-to-group': 'navigateToGroup',
1503
  } ),
@@ -1585,9 +1573,19 @@
1585
  ready: function() {
1586
  this.initColorPickers();
1587
  this.initUISliders();
1588
- this.initButtonSet();
1589
- this.initFormWidthSlider();
1590
  this.setupHelpPointers();
 
 
 
 
 
 
 
 
 
 
 
 
1591
  },
1592
 
1593
  onFormClassChange: function( e ) {
@@ -1628,7 +1626,7 @@
1628
  happyForms.previewSend( 'happyforms-form-class-update', data );
1629
  },
1630
 
1631
- onButtonSetCssVarChange: function( e ) {
1632
  e.preventDefault();
1633
 
1634
  var $target = $( e.target );
@@ -1660,13 +1658,23 @@
1660
  onGroupClick: function( e ) {
1661
  e.preventDefault();
1662
 
1663
- $( '.happyforms-style-controls-group', this.$el ).removeClass( 'open' );
1664
 
1665
- $( '.happyforms-divider-control', this.$el )
1666
- .removeClass( 'active' )
1667
- .addClass( 'inactive' );
 
 
 
1668
 
1669
- $( e.target ).parent().next().addClass( 'open' );
 
 
 
 
 
 
 
1670
  },
1671
 
1672
  onGroupBackClick: function( e ) {
@@ -1683,14 +1691,17 @@
1683
  setTimeout(function () {
1684
  $section.removeClass('closing open');
1685
  }, 200);
 
 
 
1686
  },
1687
 
1688
- navigateToGroup: function( e, options ) {
1689
- if ( ! options.group ) {
1690
  return;
1691
  }
1692
 
1693
- var $group = $( '#customize-control-' +options.group, this.$el );
1694
 
1695
  if ( ! $group.length ) {
1696
  return;
@@ -1702,11 +1713,9 @@
1702
  .removeClass( 'active' )
1703
  .addClass( 'inactive' );
1704
 
1705
- $group.next().addClass( 'open' );
1706
- },
1707
 
1708
- initButtonSet: function() {
1709
- $('.happyforms-buttonset-container').buttonset();
1710
  },
1711
 
1712
  initColorPickers: function() {
@@ -1791,83 +1800,6 @@
1791
  } );
1792
  } );
1793
  },
1794
-
1795
- initFormWidthSlider: function(reInit) {
1796
- var self = this;
1797
-
1798
- var $container = this.$el.find( '.happyforms-range-control#customize-control-form_width' );
1799
- var $slider = $( '.happyforms-range-slider', $container );
1800
- var $input = $( 'input', $container );
1801
- var $unitSwitch = $( '.happyforms-unit-switch', $container );
1802
-
1803
- var stringValue = this.model.get('form_width').toString();
1804
- var numericValue = (stringValue) ? parseFloat(stringValue.replace(/px|%/gi, '')) : 100;
1805
- var unit = $unitSwitch.val();
1806
-
1807
- if ( ! reInit ) {
1808
- if ( -1 !== stringValue.indexOf('%') ) {
1809
- unit = '%';
1810
- } else if ( -1 !== stringValue.indexOf('px') ) {
1811
- unit = 'px';
1812
- } else {
1813
- unit = '%';
1814
- }
1815
-
1816
- $unitSwitch.val(unit);
1817
- }
1818
-
1819
- var min = ('px' === unit) ? 360 : 0;
1820
- var max = ('px' === unit) ? 1440 : 100;
1821
- var step = ('px' === unit) ? 10 : 5;
1822
-
1823
- $input.attr('min', min);
1824
- $input.attr('max', max);
1825
- $input.attr('step', step);
1826
-
1827
- $unitSwitch.on('change', function () {
1828
- self.initFormWidthSlider(true);
1829
- });
1830
-
1831
- if ( reInit ) {
1832
- numericValue = ('%' === unit) ? 100 : 900;
1833
-
1834
- self.updateFormWidth(numericValue, unit, $slider);
1835
- }
1836
-
1837
- $input.val(numericValue);
1838
-
1839
- $input.on('keyup change mouseup', function () {
1840
- var $this = $(this);
1841
-
1842
- self.updateFormWidth($this.val(), unit, $slider);
1843
- });
1844
-
1845
- $slider.slider({
1846
- value: numericValue,
1847
- min: min,
1848
- max: max,
1849
- step: step,
1850
-
1851
- stop: function (e, ui) {
1852
- $input.val(ui.value);
1853
-
1854
- self.updateFormWidth(ui.value, unit, $slider);
1855
- }
1856
- });
1857
- },
1858
-
1859
- updateFormWidth: function( value, unit, $slider ) {
1860
- $slider.slider('value', value);
1861
-
1862
- this.model.set('form_width', value + unit);
1863
-
1864
- var data = {
1865
- variable: '--happyforms-form-width',
1866
- value: value + unit,
1867
- };
1868
-
1869
- happyForms.previewSend('happyforms-css-variable-update', data);
1870
- },
1871
  } );
1872
 
1873
  Previewer = {
77
  },
78
 
79
  changeDocumentTitle: function() {
80
+ var formTitle = this.get( 'post_title' );
81
+ _wpCustomizeSettings.documentTitleTmpl = 'HappyForms: %s';
82
+ var titleTemplate = 'HappyForms';
83
 
84
+ if ( formTitle ) {
85
+ titleTemplate = titleTemplate + ': ' + formTitle;
86
+ }
87
 
88
+ _wpCustomizeSettings.documentTitleTmpl = titleTemplate;
 
89
  }
90
  } );
91
 
146
  routes: {
147
  'build': 'build',
148
  'setup': 'setup',
149
+ 'email': 'email',
150
  'style': 'style',
151
  },
152
 
153
+ steps: [ 'build', 'setup', 'email', 'style' ],
154
  currentRoute: 'build',
155
+ savedStates: {
156
+ 'build': {
157
+ 'scrollTop': 0,
158
+ 'activePartIndex': -1
159
+ },
160
+ 'setup': {
161
+ 'scrollTop': 0,
162
+ },
163
+ 'email': {
164
+ 'scrollTop': 0,
165
+ },
166
+ 'style': {
167
+ 'scrollTop': 0,
168
+ 'activeSection': ''
169
+ }
170
+ },
171
  form: false,
172
  previewLoaded: false,
173
  buffer: [],
226
  case 'build':
227
  childView = new classes.views.FormBuild( { model: this.form } );
228
  break;
229
+ case 'email':
230
+ childView = new classes.views.FormEmail( { model: this.form } );
231
+ break;
232
  case 'style':
233
  childView = new classes.views.FormStyle( { model: this.form } );
234
  break;
235
  }
236
 
237
+ this.previousRoute = this.currentRoute;
238
  this.currentRoute = segment;
239
 
240
+ if ( 'style' !== this.previousRoute ) {
241
+ this.savedStates[this.previousRoute]['scrollTop'] = this.sidebar.$el.scrollTop();
242
+ }
243
+
244
  this.sidebar.doStep( {
245
  step: {
246
  slug: segment,
251
  direction: direction,
252
  child: childView,
253
  } );
254
+
255
+ this.sidebar.steps.enable();
256
  },
257
 
258
  forward: function() {
404
  },
405
 
406
  render: function() {
407
+ this.$el.html( this.template( {
408
+ isNewForm: this.model.isNew()
409
+ } ) );
 
 
410
 
411
  return this;
412
  },
490
  this.previous = this.current;
491
  this.current = child;
492
 
493
+ this.current.$el.show();
494
+ this.previous.$el.hide();
495
+ this.onStepComplete();
 
 
 
 
 
496
  } else {
497
  this.current = child;
498
+ this.current.$el.show();
499
  this.steps.render( options );
500
  }
501
  },
502
 
503
  onStepComplete: function( options ) {
504
  this.previous.remove();
 
505
  this.steps.render( options );
506
+ this.$el.scrollTop( happyForms.savedStates[happyForms.currentRoute]['scrollTop'] );
507
  }
508
  } );
509
 
510
  classes.views.Steps = classes.views.Base.extend( {
511
+ el: '#happyforms-steps-nav',
512
  template: '#happyforms-form-steps-template',
513
 
514
  events: {
515
+ 'click .nav-tab': 'onStepClick'
516
+ },
517
+
518
+ initialize: function() {
519
+ classes.views.Base.prototype.initialize.apply( this, arguments );
520
+
521
+ this.disabled = false;
522
  },
523
 
524
  render: function( options ) {
527
  this.$el.show();
528
  },
529
 
530
+ onStepClick: function( e ) {
531
+ e.preventDefault();
 
532
 
533
+ if ( this.disabled ) {
534
+ return;
535
+ }
536
 
537
+ var $link = $( e.target );
538
+ var stepID = $link.attr( 'data-step' );
 
 
539
 
540
+ $( '.nav-tab', this.$el ).removeClass( 'nav-tab-active' );
541
+ $link.addClass( 'nav-tab-active' );
 
 
542
 
543
+ happyForms.navigate( stepID, { trigger: true } );
544
+ },
545
 
546
+ disable: function() {
547
+ this.disabled = true;
 
 
 
 
548
  },
549
 
550
+ enable: function() {
551
+ this.disabled = false;
552
+ }
553
+
554
  } );
555
 
556
  classes.views.FormBuild = classes.views.Base.extend( {
559
  events: {
560
  'keyup #happyforms-form-name': 'onNameChange',
561
  'click #happyforms-form-name': 'onNameInputClick',
562
+ 'click .happyforms-add-new-part': 'onPartAddButtonClick',
563
  'change #happyforms-form-name': 'onNameChange',
564
  'click .expand-collapse-all': 'onExpandCollapseAllClick',
565
  'global-attribute-set': 'onSetGlobalAttribute',
581
  this.listenTo( this.model.get( 'parts' ), 'remove', this.onPartModelRemove );
582
  this.listenTo( this.model.get( 'parts' ), 'change', this.onPartModelChange );
583
  this.listenTo( this.model.get( 'parts' ), 'reset', this.onPartModelsSorted );
 
584
  this.listenTo( this.partViews, 'add', this.onPartViewAdd );
585
  this.listenTo( this.partViews, 'remove', this.onPartViewRemove );
586
  this.listenTo( this.partViews, 'reset', this.onPartViewsSorted );
593
  return this;
594
  },
595
 
 
 
 
 
 
 
 
 
 
 
 
 
596
  ready: function() {
597
  this.model.get( 'parts' ).each( function( partModel ) {
598
  this.addViewPart( partModel );
599
  }, this );
600
 
601
+ $( '.happyforms-form-widgets', this.$el ).accordion( {
602
+ header: '> div > .happyforms-widget-top',
603
+ active: ( -1 !== happyForms.savedStates.build.activePartIndex ) ? happyForms.savedStates.build.activePartIndex : false,
604
+ collapsible: true,
605
+ animate: 300,
606
+ heightStyle: 'content',
607
+ activate: function( e, ui ) {
608
+ if ( ui.oldHeader ) {
609
+ $( ui.oldHeader ).removeClass( 'happyforms-widget-expanded' );
610
+ }
611
+
612
+ if ( ui.newHeader ) {
613
+ $( ui.newHeader ).addClass( 'happyforms-widget-expanded' );
614
+ }
615
+
616
+ $( ui.newPanel ).find( 'input[data-bind=label]' ).focus();
617
+ happyForms.savedStates.build.activePartIndex = $( ui.newHeader ).parent().index();
618
+ }
619
+ } ).sortable( {
620
  items: '.happyforms-widget:not(.no-sortable)',
621
  handle: '.happyforms-part-widget-top',
622
 
625
  }.bind( this ),
626
  } );
627
 
628
+ $( '.ui-accordion-content-active input[data-bind=label]', this.$el ).focus();
629
+
630
  this.drawer = new classes.views.PartsDrawer();
631
  $( '.wp-full-overlay' ).append( this.drawer.render().$el );
 
632
 
633
+ if ( -1 === happyForms.savedStates.build.activePartIndex ) {
634
+ $( '#happyforms-form-name', this.$el ).focus().select();
635
+ }
636
+ },
637
 
638
+ refreshPartsAccordion: function() {
639
+ var $widgetsWrap = $( '.happyforms-form-widgets', this.$el );
640
+ var newItemIndex = $( '.happyforms-part-widget', $widgetsWrap ).length - 1;
641
+
642
+ $widgetsWrap.accordion( 'refresh' );
643
+ $widgetsWrap.accordion( 'option', 'active', newItemIndex );
644
  },
645
 
646
  onNameInputClick: function( e ) {
657
  happyForms.previewSend( 'happyforms-form-title-update', value );
658
  },
659
 
660
+ onPartAddButtonClick: function( e ) {
661
  e.preventDefault();
662
 
663
+ this.drawer.toggle();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
664
  },
665
 
666
  onPartAdd: function( type, options ) {
679
 
680
  happyForms.previewSend( 'happyforms-form-part-add', data );
681
  } );
682
+
683
+ this.refreshPartsAccordion();
684
  },
685
 
686
  onPartDuplicate: function( part, options ) {
711
 
712
  happyForms.previewSend( 'happyforms-form-part-add', data );
713
  } );
714
+
715
+ this.refreshPartsAccordion();
716
  },
717
 
718
  onPartModelAdd: function( partModel, partsCollection, options ) {
788
  scrollTop: partView.$el.position().top
789
  }, 400 );
790
  }
 
 
791
  },
792
 
793
  onPartViewRemove: function( viewModel ) {
794
  var partView = viewModel.get( 'view' );
795
  partView.remove();
 
 
 
 
796
  },
797
 
798
  onPartSortStop: function( e, ui ) {
863
  this.partViews.remove( partView );
864
  };
865
 
866
+ this.drawer.close();
867
+ this.drawer.remove();
 
 
 
 
 
 
868
 
869
  classes.views.Base.prototype.remove.apply( this, arguments );
870
  },
880
  'click .happyforms-clear-search': 'onClearSearchClick'
881
  },
882
 
883
+ initialize: function() {
884
+ classes.views.Base.prototype.initialize.apply( this, arguments );
885
+
886
+ $( '.wp-full-overlay-sidebar' ).on( 'click', this.onSidebarClick.bind( this ) );
887
+ },
888
+
889
  render: function() {
890
  this.setElement( this.template( { parts: happyForms.parts.toJSON() } ) );
891
  return this;
892
  },
893
 
894
  onListItemClick: function( e ) {
895
+ e.stopPropagation();
896
+
897
  var type = $( e.currentTarget ).data( 'part-type' );
898
  happyForms.trigger( 'part-add', type, { expand: true } );
899
+
900
+ this.close();
901
  },
902
 
903
  onPartSearch: function( e ) {
928
 
929
  onClearSearchClick: function( e ) {
930
  $( '#part-search', this.$el ).val( '' ).trigger( 'change' );
931
+ },
932
+
933
+ onSidebarClick: function( e ) {
934
+ e.stopPropagation();
935
+
936
+ var $element = $( e.target );
937
+
938
+ if ( $element.is( '.happyforms-add-new-part' ) ) {
939
+ return;
940
+ }
941
+
942
+ this.close();
943
+ },
944
+
945
+ toggle: function() {
946
+ this.$el.toggleClass( 'expanded' );
947
+ $( 'body' ).toggleClass( 'adding-happyforms-parts' );
948
+
949
+ if ( this.$el.hasClass( 'expanded') ) {
950
+ $( '#part-search' ).focus();
951
+ }
952
+ },
953
+
954
+ close: function() {
955
+ this.$el.removeClass( 'expanded' );
956
+ $( 'body' ).removeClass( 'adding-happyforms-parts' );
957
  }
958
  } );
959
 
989
  this.listenTo( this.model, 'change:label_placement', this.onLabelPlacementChange );
990
  this.listenTo( this.model, 'change:css_class', this.onCSSClassChange );
991
  this.listenTo( this.model, 'change:focus_reveal_description', this.onFocusRevealDescriptionChange );
 
 
 
 
 
 
 
992
  },
993
 
994
  render: function() {
1082
  happyForms.previewSend( 'happyforms-part-dom-update', data );
1083
  },
1084
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1085
  /**
1086
  * Remove part model from collection on "Delete" button click.
1087
  *
1092
  onPartRemoveClick: function( e ) {
1093
  e.preventDefault();
1094
 
1095
+ var self = this;
1096
+
1097
+ $( '.happyforms-widget-content', this.$el ).slideUp( 'fast', function() {
1098
+ $( this ).removeClass( 'happyforms-widget-expanded' );
1099
+
1100
+ self.model.collection.remove( self.model );
1101
+ } );
1102
  },
1103
 
1104
  onPartDuplicateClick: function( e ) {
1212
  if ( $('option[value='+value+']', $select).length > 0 ) {
1213
  $select.val( value );
1214
 
 
 
 
 
 
 
 
 
1215
  if ( 'as_placeholder' === value ) {
1216
  $( '.happyforms-placeholder-option', this.$el ).hide();
1217
  } else {
1347
  editorIds: [
1348
  'confirmation_message',
1349
  'error_message',
 
1350
  ],
1351
 
1352
  initialize: function() {
1367
  tinymce: {
1368
  toolbar1: 'bold,italic,bullist,numlist,link,hr',
1369
  setup: this.onEditorInit.bind( this ),
 
1370
  },
1371
  };
1372
 
1456
  }
1457
  } );
1458
 
1459
+ classes.views.FormEmail = classes.views.FormSetup.extend( {
1460
+ template: '#happyforms-form-email-template',
1461
+
1462
+ editorIds: [
1463
+ 'confirmation_email_content',
1464
+ 'abandoned_resume_email_content'
1465
+ ],
1466
+
1467
+ render: function() {
1468
+ classes.views.FormSetup.prototype.render.apply( this, arguments );
1469
+
1470
+ if ( this.model.get( 'save_entries' )
1471
+ && this.model.get( 'allow_abandoned_resume' ) ) {
1472
+ this.$el.addClass( 'allow-abandoned-resume' );
1473
+ }
1474
+
1475
+ return this;
1476
+ },
1477
+ } );
1478
+
1479
  classes.views.FormStyle = classes.views.Base.extend( {
1480
  template: '#happyforms-form-style-template',
1481
 
1485
  'change [data-target="form_class"] input': 'onFormClassChange',
1486
  'change [data-target="form_class"] select': 'onFormClassChange',
1487
  'change [data-target="form_class"] input[type="checkbox"]': 'onFormClassCheckboxChange',
1488
+ 'change [data-target="css_var"] input[type=radio]': 'onRadioChange',
1489
  'keyup [data-target="attribute"] input[type=text]': 'onAttributeChange',
1490
  'navigate-to-group': 'navigateToGroup',
1491
  } ),
1573
  ready: function() {
1574
  this.initColorPickers();
1575
  this.initUISliders();
 
 
1576
  this.setupHelpPointers();
1577
+
1578
+ if ( happyForms.savedStates.style.activeSection ) {
1579
+ this.navigateToGroup( happyForms.savedStates.style.activeSection );
1580
+ }
1581
+
1582
+ $( '.happyforms-style-controls-group' ).on( 'scroll', function() {
1583
+ happyForms.savedStates.style.scrollTop = $( this ).scrollTop();
1584
+ } );
1585
+ },
1586
+
1587
+ setScrollPosition: function() {
1588
+ $( '.happyforms-style-controls-group.open', this.$el ).scrollTop( happyForms.savedStates.style.scrollTop );
1589
  },
1590
 
1591
  onFormClassChange: function( e ) {
1626
  happyForms.previewSend( 'happyforms-form-class-update', data );
1627
  },
1628
 
1629
+ onRadioChange: function( e ) {
1630
  e.preventDefault();
1631
 
1632
  var $target = $( e.target );
1658
  onGroupClick: function( e ) {
1659
  e.preventDefault();
1660
 
1661
+ var self = this;
1662
 
1663
+ $( '.happyforms-style-controls-group', this.$el ).removeClass( 'open' ).addClass( 'animate' );
1664
+
1665
+ setTimeout( function() {
1666
+ $( '.happyforms-divider-control', this.$el )
1667
+ .removeClass( 'active' )
1668
+ .addClass( 'inactive' );
1669
 
1670
+ var $linkTab = $( e.target ).parent();
1671
+ var $group = $linkTab.next();
1672
+
1673
+ $group.addClass( 'open' );
1674
+ self.setScrollPosition();
1675
+
1676
+ happyForms.savedStates.style.activeSection = $linkTab.attr( 'id' );
1677
+ }, 200 );
1678
  },
1679
 
1680
  onGroupBackClick: function( e ) {
1691
  setTimeout(function () {
1692
  $section.removeClass('closing open');
1693
  }, 200);
1694
+
1695
+ happyForms.savedStates.style.activeSection = '';
1696
+ happyForms.savedStates.style.scrollTop = 0;
1697
  },
1698
 
1699
+ navigateToGroup: function( groupID ) {
1700
+ if ( ! groupID ) {
1701
  return;
1702
  }
1703
 
1704
+ var $group = $( '#' + groupID, this.$el );
1705
 
1706
  if ( ! $group.length ) {
1707
  return;
1713
  .removeClass( 'active' )
1714
  .addClass( 'inactive' );
1715
 
1716
+ $group.next().removeClass( 'animate' ).addClass( 'open' );
 
1717
 
1718
+ this.setScrollPosition();
 
1719
  },
1720
 
1721
  initColorPickers: function() {
1800
  } );
1801
  } );
1802
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1803
  } );
1804
 
1805
  Previewer = {
inc/classes/class-happyforms.php CHANGED
@@ -9,7 +9,9 @@ class HappyForms extends HappyForms_Core {
9
 
10
  add_action( 'admin_menu', array( $this, 'admin_menu' ) );
11
  add_action( 'happyforms_do_setup_control', array( $this, 'do_control' ), 10, 3 );
 
12
  add_filter( 'happyforms_setup_controls', array( $this, 'add_dummy_setup_controls' ) );
 
13
  add_action( 'admin_print_footer_scripts', array( $this, 'print_upgrade_modals' ) );
14
  add_action( 'parse_request', array( $this, 'parse_archive_request' ) );
15
  add_action( 'admin_notices', array( $this, 'display_notices' ) );
@@ -77,133 +79,141 @@ class HappyForms extends HappyForms_Core {
77
  }
78
 
79
  public function add_dummy_setup_controls( $controls ) {
80
- $controls[450] = array(
81
- 'type' => 'checkbox_dummy',
82
- 'dummy_id' => 'email_mark_and_reply',
83
- 'label' => __( 'Include mark and reply link', 'happyforms' ),
84
- 'tooltip' => __( 'Reply to your users and mark their submission as read in one click.', 'happyforms' ),
85
- );
86
-
87
- $controls[451] = array(
88
- 'type' => 'checkbox_dummy',
89
- 'dummy_id' => 'alert_email_attachment_links',
90
- 'label' => __( 'Link to attachments in email', 'happyforms' ),
91
- 'tooltip' => __( 'Show attachments as links instead of a simple counter.', 'happyforms' ),
92
- );
93
-
94
- $controls[452] = array(
95
- 'type' => 'checkbox_dummy',
96
- 'dummy_id' => 'alert_email_hide_placeholder_parts',
97
- 'label' => __( 'Hide Placeholder parts in email', 'happyforms' )
98
- );
99
-
100
- $controls[453] = array(
101
- 'type' => 'checkbox_dummy',
102
- 'dummy_id' => 'alert_email_include_referral_url',
103
- 'label' => __( 'Include referral link', 'happyforms' ),
104
- 'tooltip' => __( 'Include the page link your form was submitted from.', 'happyforms' ),
105
- );
106
-
107
  $controls[1300] = array(
108
  'type' => 'checkbox_dummy',
109
  'dummy_id' => 'redirect_on_complete',
110
- 'label' => __( 'Redirect on complete', 'happyforms' ),
111
- 'tooltip' => __( 'By default, recipients will be redirected to the post or page displaying this form. To set a custom redirect webpage, add a link here.', 'happyforms' ),
112
- );
113
-
114
- $controls[1310] = array(
115
- 'type' => 'checkbox_dummy',
116
- 'dummy_id' => 'track_goal_link',
117
- 'label' => __( 'Track goal link', 'happyforms' ),
118
- 'tooltip' => __( 'Track recipients landing on this internal page after successfully submitting this form.', 'happyforms' ),
119
  );
120
 
121
  $controls[1320] = array(
122
  'type' => 'checkbox_dummy',
123
  'dummy_id' => 'use_theme_styles',
124
- 'label' => __( 'Use theme styles', 'happyforms' ),
125
- 'tooltip' => __( 'Inherit theme default styles instead of using HappyForms styles.', 'happyforms' ),
126
  );
127
 
128
  $controls[1450] = array(
129
  'type' => 'checkbox_dummy',
130
  'dummy_id' => 'shuffle_parts',
131
- 'label' => __( 'Shuffle parts', 'happyforms' ),
132
- 'tooltip' => __( 'Shuffle the order of all form parts to avoid biases in your responses.', 'happyforms' ),
133
  );
134
 
135
  $controls[1500] = array(
136
  'type' => 'checkbox_dummy',
137
  'dummy_id' => 'captcha',
138
- 'label' => sprintf(
139
- __( 'Use <a href="%s" target="_blank" class="external"> Google ReCaptcha</a>', 'happyforms' ),
140
- 'https://www.google.com/recaptcha'
141
- ),
142
- 'tooltip' => __( 'Protect your form against bots using your Google ReCaptcha credentials.', 'happyforms' ),
143
  );
144
 
145
  $controls[1550] = array(
146
  'type' => 'checkbox_dummy',
147
  'dummy_id' => 'require_password',
148
- 'label' => __( 'Require password', 'happyforms' ),
149
- 'tooltip' => __( 'Only users with password will be able to view and submit the form.', 'happyforms' ),
150
  );
151
 
152
  $controls[1590] = array(
153
  'type' => 'checkbox_dummy',
154
  'dummy_id' => 'open_in_overlay_window',
155
- 'label' => __( 'Open in overlay window', 'happyforms' ),
156
- 'tooltip' => __( 'Generate a link that can be clicked to open an overlay window for this form.', 'happyforms' ),
157
  );
158
 
159
  $controls[1600] = array(
160
  'type' => 'checkbox_dummy',
161
  'dummy_id' => 'save_responses',
162
- 'label' => __( 'Save responses', 'happyforms' ),
163
- 'tooltip' => __( 'Keep recipients responses stored in your WordPress database.', 'happyforms' ),
164
  'field' => 'save_entries',
165
  );
166
 
167
  $controls[1660] = array(
168
  'type' => 'checkbox_dummy',
169
  'dummy_id' => 'save_abandoned_responses',
170
- 'label' => __( 'Save abandoned responses', 'happyforms' ),
171
- 'tooltip' => __( 'Keep incomplete recipients responses stored in your WordPress database.', 'happyforms' ),
172
  );
173
 
174
  $controls[1690] = array(
175
  'type' => 'checkbox_dummy',
176
  'dummy_id' => 'unique_id',
177
- 'label' => __( 'Give each response an ID number', 'happyforms' ),
178
- 'tooltip' => __( 'Tag responses with a unique, incremental identifier.', 'happyforms' ),
179
  );
180
 
181
  $controls[1800] = array(
182
  'type' => 'checkbox_dummy',
183
  'dummy_id' => 'preview_before_submit',
184
- 'label' => __( 'Preview values before submission', 'happyforms' ),
185
- 'tooltip' => __( 'Let your users review their submission before confirming it.', 'happyforms' ),
186
  );
187
 
188
  $controls[1900] = array(
189
  'type' => 'checkbox_dummy',
190
  'dummy_id' => 'disable_submit_until_valid',
191
- 'label' => __( 'Fade submit button until valid', 'happyforms' ),
192
- 'tooltip' => __( 'Reduce the opacity of the submit button until all required form parts are valid.', 'happyforms' )
193
  );
194
 
195
  $controls[2300] = array(
196
  'type' => 'checkbox_dummy',
197
  'dummy_id' => 'limit_responses',
198
- 'label' => __( 'Limit responses', 'happyforms' ),
199
- 'tooltip' => __( 'Set limit on number of allowed form submission in general or per user.', 'happyforms' ),
200
  );
201
 
202
  $controls[3000] = array(
203
  'type' => 'checkbox_dummy',
204
  'dummy_id' => 'schedule_visibility',
205
- 'label' => __( 'Schedule visibility', 'happyforms' ),
206
- 'tooltip' => __( 'Show or hide this form during a chosen time and day. Go to Settings > Timezone to set your city offset.', 'happyforms' ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
207
  );
208
 
209
  return $controls;
@@ -317,10 +327,6 @@ class HappyForms extends HappyForms_Core {
317
  return;
318
  }
319
 
320
- if ( ! $this->is_new_user( $forms ) ) {
321
- $this->display_removal_notice( $forms );
322
- }
323
-
324
  $this->display_review_notice( $forms );
325
  }
326
 
@@ -338,20 +344,6 @@ class HappyForms extends HappyForms_Core {
338
  return false;
339
  }
340
 
341
- public function display_removal_notice( $forms ) {
342
- $upgrade_link = 'https://happyforms.me/upgrade';
343
-
344
- happyforms_get_admin_notices()->register(
345
- 'happyforms_feature_removal',
346
- __( '<p><strong>Important changes to HappyForms</strong></p><p>We want to continue developing the free HappyForms plugin, but we can\'t do this without the support of more paying customers. So, starting with HappyForms 1.8.11, we\'ve transitioned the following features to the paid plugin: Scale, Rating, Story, Website Link, Table, Phone, Date & Time, Address, Title, Legal, Placeholder and Text Editor form parts along with redirects, submit button fade, reCAPTCHA and response reviews.</p><p>If you\'re using these parts and features in your forms, they will be removed from the free plugin with this release. Please review all your existing forms for changes.</p>', 'happyforms' ),
347
- array(
348
- 'type' => 'error',
349
- 'screen' => array( 'dashboard', 'edit-post', 'edit-page', 'edit-happyform', 'plugins' ),
350
- 'dismissible' => true,
351
- )
352
- );
353
- }
354
-
355
  public function display_review_notice( $forms ) {
356
  $last_form_index = count( $forms ) - 1;
357
  $form = $forms[$last_form_index];
9
 
10
  add_action( 'admin_menu', array( $this, 'admin_menu' ) );
11
  add_action( 'happyforms_do_setup_control', array( $this, 'do_control' ), 10, 3 );
12
+ add_action( 'happyforms_do_email_control', array( $this, 'do_control' ), 10, 3 );
13
  add_filter( 'happyforms_setup_controls', array( $this, 'add_dummy_setup_controls' ) );
14
+ add_filter( 'happyforms_email_controls', array( $this, 'add_dummy_email_controls' ) );
15
  add_action( 'admin_print_footer_scripts', array( $this, 'print_upgrade_modals' ) );
16
  add_action( 'parse_request', array( $this, 'parse_archive_request' ) );
17
  add_action( 'admin_notices', array( $this, 'display_notices' ) );
79
  }
80
 
81
  public function add_dummy_setup_controls( $controls ) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
82
  $controls[1300] = array(
83
  'type' => 'checkbox_dummy',
84
  'dummy_id' => 'redirect_on_complete',
85
+ 'label' => __( 'Redirect on complete', HAPPYFORMS_TEXT_DOMAIN ),
86
+ 'tooltip' => __( 'By default, recipients will be redirected to the post or page displaying this form. To set a custom redirect webpage, add a link here.', HAPPYFORMS_TEXT_DOMAIN ),
 
 
 
 
 
 
 
87
  );
88
 
89
  $controls[1320] = array(
90
  'type' => 'checkbox_dummy',
91
  'dummy_id' => 'use_theme_styles',
92
+ 'label' => __( 'Use theme styles', HAPPYFORMS_TEXT_DOMAIN ),
93
+ 'tooltip' => __( 'Inherit theme default styles instead of using HappyForms styles.', HAPPYFORMS_TEXT_DOMAIN ),
94
  );
95
 
96
  $controls[1450] = array(
97
  'type' => 'checkbox_dummy',
98
  'dummy_id' => 'shuffle_parts',
99
+ 'label' => __( 'Shuffle parts', HAPPYFORMS_TEXT_DOMAIN ),
100
+ 'tooltip' => __( 'Shuffle the order of all form parts to avoid biases in your responses.', HAPPYFORMS_TEXT_DOMAIN ),
101
  );
102
 
103
  $controls[1500] = array(
104
  'type' => 'checkbox_dummy',
105
  'dummy_id' => 'captcha',
106
+ 'label' => __( 'Use reCAPTCHA', HAPPYFORMS_TEXT_DOMAIN ),
107
+ 'tooltip' => __( 'Protect your form against bots using your Google ReCaptcha credentials.', HAPPYFORMS_TEXT_DOMAIN ),
 
 
 
108
  );
109
 
110
  $controls[1550] = array(
111
  'type' => 'checkbox_dummy',
112
  'dummy_id' => 'require_password',
113
+ 'label' => __( 'Require password', HAPPYFORMS_TEXT_DOMAIN ),
114
+ 'tooltip' => __( 'Only users with password will be able to view and submit the form.', HAPPYFORMS_TEXT_DOMAIN ),
115
  );
116
 
117
  $controls[1590] = array(
118
  'type' => 'checkbox_dummy',
119
  'dummy_id' => 'open_in_overlay_window',
120
+ 'label' => __( 'Open in overlay window', HAPPYFORMS_TEXT_DOMAIN ),
121
+ 'tooltip' => __( 'Generate a link that can be clicked to open an overlay window for this form.', HAPPYFORMS_TEXT_DOMAIN ),
122
  );
123
 
124
  $controls[1600] = array(
125
  'type' => 'checkbox_dummy',
126
  'dummy_id' => 'save_responses',
127
+ 'label' => __( 'Save submissions', HAPPYFORMS_TEXT_DOMAIN ),
128
+ 'tooltip' => __( 'Keep recipients responses stored in your WordPress database.', HAPPYFORMS_TEXT_DOMAIN ),
129
  'field' => 'save_entries',
130
  );
131
 
132
  $controls[1660] = array(
133
  'type' => 'checkbox_dummy',
134
  'dummy_id' => 'save_abandoned_responses',
135
+ 'label' => __( 'Save abandoned submission', HAPPYFORMS_TEXT_DOMAIN ),
136
+ 'tooltip' => __( 'Keep incomplete recipients responses stored in your WordPress database.', HAPPYFORMS_TEXT_DOMAIN ),
137
  );
138
 
139
  $controls[1690] = array(
140
  'type' => 'checkbox_dummy',
141
  'dummy_id' => 'unique_id',
142
+ 'label' => __( 'Give each submission an ID number', HAPPYFORMS_TEXT_DOMAIN ),
143
+ 'tooltip' => __( 'Tag responses with a unique, incremental identifier.', HAPPYFORMS_TEXT_DOMAIN ),
144
  );
145
 
146
  $controls[1800] = array(
147
  'type' => 'checkbox_dummy',
148
  'dummy_id' => 'preview_before_submit',
149
+ 'label' => __( 'Preview values before submission', HAPPYFORMS_TEXT_DOMAIN ),
150
+ 'tooltip' => __( 'Let your users review their submission before confirming it.', HAPPYFORMS_TEXT_DOMAIN ),
151
  );
152
 
153
  $controls[1900] = array(
154
  'type' => 'checkbox_dummy',
155
  'dummy_id' => 'disable_submit_until_valid',
156
+ 'label' => __( 'Fade submit button until valid', HAPPYFORMS_TEXT_DOMAIN ),
157
+ 'tooltip' => __( 'Reduce the opacity of the submit button until all required form parts are valid.', HAPPYFORMS_TEXT_DOMAIN )
158
  );
159
 
160
  $controls[2300] = array(
161
  'type' => 'checkbox_dummy',
162
  'dummy_id' => 'limit_responses',
163
+ 'label' => __( 'Limit submissions', HAPPYFORMS_TEXT_DOMAIN ),
164
+ 'tooltip' => __( 'Set limit on number of allowed form submission in general or per user.', HAPPYFORMS_TEXT_DOMAIN ),
165
  );
166
 
167
  $controls[3000] = array(
168
  'type' => 'checkbox_dummy',
169
  'dummy_id' => 'schedule_visibility',
170
+ 'label' => __( 'Schedule visibility', HAPPYFORMS_TEXT_DOMAIN ),
171
+ 'tooltip' => __( 'Show or hide this form during a chosen time and day. Go to Settings > Timezone to set your city offset.', HAPPYFORMS_TEXT_DOMAIN ),
172
+ );
173
+
174
+ return $controls;
175
+ }
176
+
177
+ public function add_dummy_email_controls( $controls ) {
178
+ $controls[450] = array(
179
+ 'type' => 'checkbox_dummy',
180
+ 'dummy_id' => 'email_mark_and_reply',
181
+ 'label' => __( 'Include mark and reply link', HAPPYFORMS_TEXT_DOMAIN ),
182
+ 'tooltip' => __( 'Reply to your users and mark their submission as read in one click.', HAPPYFORMS_TEXT_DOMAIN ),
183
+ );
184
+
185
+ $controls[451] = array(
186
+ 'type' => 'checkbox_dummy',
187
+ 'dummy_id' => 'alert_email_attachment_links',
188
+ 'label' => __( 'Link to attachments in email', HAPPYFORMS_TEXT_DOMAIN ),
189
+ 'tooltip' => __( 'Show attachments as links instead of a simple counter.', HAPPYFORMS_TEXT_DOMAIN ),
190
+ );
191
+
192
+ $controls[452] = array(
193
+ 'type' => 'checkbox_dummy',
194
+ 'dummy_id' => 'alert_email_hide_placeholder_parts',
195
+ 'label' => __( 'Hide Placeholder parts in email', HAPPYFORMS_TEXT_DOMAIN )
196
+ );
197
+
198
+ $controls[453] = array(
199
+ 'type' => 'checkbox_dummy',
200
+ 'dummy_id' => 'alert_email_include_referral_url',
201
+ 'label' => __( 'Include referral link', HAPPYFORMS_TEXT_DOMAIN ),
202
+ 'tooltip' => __( 'Include the page link your form was submitted from.', HAPPYFORMS_TEXT_DOMAIN ),
203
+ );
204
+
205
+ $controls[819] = array(
206
+ 'type' => 'checkbox_dummy',
207
+ 'dummy_id' => 'attach_pdf',
208
+ 'label' => __( 'Attach PDF to confirmation email', 'happyforms' ),
209
+ 'tooltip' => __( 'Attach a PDF to the recipient\'s confirmation email.', 'happyforms' ),
210
+ );
211
+
212
+ $controls[1660] = array(
213
+ 'type' => 'checkbox_dummy',
214
+ 'dummy_id' => 'abandoned_resume_send_alert_email',
215
+ 'label' => __( 'Send abandonment email', 'happyforms' ),
216
+ 'tooltip' => __( 'Notify recipients when they abandon your form before submitting it.', 'happyforms' ),
217
  );
218
 
219
  return $controls;
327
  return;
328
  }
329
 
 
 
 
 
330
  $this->display_review_notice( $forms );
331
  }
332
 
344
  return false;
345
  }
346
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
347
  public function display_review_notice( $forms ) {
348
  $last_form_index = count( $forms ) - 1;
349
  $form = $forms[$last_form_index];
inc/classes/class-message-controller.php CHANGED
@@ -527,14 +527,16 @@ class HappyForms_Message_Controller {
527
  if ( false !== $email_part
528
  && ! empty( $form['confirmation_email_subject'] )
529
  && ! empty( $form['confirmation_email_content'] )
530
- && ! empty( $form['email_recipient'] ) ) {
531
 
532
  // Compose an email message
533
  $email_message = new HappyForms_Email_Message( $message );
534
- $senders = explode( ',', $form['email_recipient'] );
535
- $name = $form['confirmation_email_from_name'];
 
536
  $from = $senders[0];
537
- $reply_to = $senders[0];
 
538
 
539
  $email_message->set_from( $from );
540
  $email_message->set_from_name( $name );
527
  if ( false !== $email_part
528
  && ! empty( $form['confirmation_email_subject'] )
529
  && ! empty( $form['confirmation_email_content'] )
530
+ && ! empty( $form['confirmation_email_sender_address'] ) ) {
531
 
532
  // Compose an email message
533
  $email_message = new HappyForms_Email_Message( $message );
534
+ $senders = happyforms_get_form_property( $form, 'confirmation_email_sender_address' );
535
+ $senders = explode( ',', $senders );
536
+ $name = happyforms_get_form_property( $form, 'confirmation_email_from_name' );
537
  $from = $senders[0];
538
+ $reply_to = happyforms_get_form_property( $form, 'confirmation_email_reply_to' );
539
+ $reply_to = empty( $reply_to ) ? $from : $reply_to;
540
 
541
  $email_message->set_from( $from );
542
  $email_message->set_from_name( $name );
inc/classes/parts/class-part-website-url-dummy.php CHANGED
@@ -3,10 +3,10 @@
3
  class HappyForms_Part_WebsiteUrl_Dummy extends HappyForms_Form_Part {
4
 
5
  public $type = 'website_url_dummy';
6
-
7
  public function __construct() {
8
- $this->label = __( 'Website Link', 'happyforms' );
9
  $this->description = __( 'For formatted website URLs.', 'happyforms' );
10
  }
11
-
12
- }
3
  class HappyForms_Part_WebsiteUrl_Dummy extends HappyForms_Form_Part {
4
 
5
  public $type = 'website_url_dummy';
6
+
7
  public function __construct() {
8
+ $this->label = __( 'Site Address', 'happyforms' );
9
  $this->description = __( 'For formatted website URLs.', 'happyforms' );
10
  }
11
+
12
+ }
languages/happyforms.pot CHANGED
@@ -2,9 +2,9 @@
2
  # This file is distributed under the same license as the HappyForms package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: HappyForms 1.8.22\n"
6
  "Report-Msgid-Bugs-To: https://thethemefoundry.com/support/\n"
7
- "POT-Creation-Date: 2019-12-03 15:01:23+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -29,7 +29,7 @@ msgstr ""
29
  msgid "Discover HappyForms Upgrade"
30
  msgstr ""
31
 
32
- #: core/classes/class-block.php:107
33
  msgid "Select"
34
  msgstr ""
35
 
@@ -45,109 +45,113 @@ msgstr ""
45
  msgid "Edit Form"
46
  msgstr ""
47
 
48
- #: core/classes/class-form-admin.php:155
49
- #: core/classes/class-form-controller.php:79
50
  msgid "View form"
51
  msgstr ""
52
 
53
- #: core/classes/class-form-admin.php:160
54
  msgid "Preview form"
55
  msgstr ""
56
 
57
- #: core/classes/class-form-admin.php:165 core/classes/class-form-admin.php:168
58
  msgid "Form updated."
59
  msgstr ""
60
 
61
- #: core/classes/class-form-admin.php:166
62
  msgid "Custom field updated."
63
  msgstr ""
64
 
65
- #: core/classes/class-form-admin.php:167
66
  msgid "Custom field deleted."
67
  msgstr ""
68
 
69
- #: core/classes/class-form-admin.php:169
70
  msgid "Form restored to revision from %s."
71
  msgstr ""
72
 
73
- #: core/classes/class-form-admin.php:170
74
  msgid "Form published."
75
  msgstr ""
76
 
77
- #: core/classes/class-form-admin.php:171
78
  msgid "Form saved."
79
  msgstr ""
80
 
81
- #: core/classes/class-form-admin.php:172
82
  msgid "Form submitted."
83
  msgstr ""
84
 
85
- #: core/classes/class-form-admin.php:173
86
  msgid "Form scheduled."
87
  msgstr ""
88
 
89
- #: core/classes/class-form-admin.php:174
90
  msgid "Form draft updated."
91
  msgstr ""
92
 
93
- #: core/classes/class-form-admin.php:197
94
  msgid "%s form updated."
95
  msgid_plural "%s forms updated."
96
  msgstr[0] ""
97
  msgstr[1] ""
98
 
99
- #: core/classes/class-form-admin.php:198
100
  msgid "%s form not updated, somebody is editing it."
101
  msgid_plural "%s forms not updated, somebody is editing them."
102
  msgstr[0] ""
103
  msgstr[1] ""
104
 
105
- #: core/classes/class-form-admin.php:199
106
  msgid "%s form permanently deleted."
107
  msgid_plural "%s forms permanently deleted."
108
  msgstr[0] ""
109
  msgstr[1] ""
110
 
111
- #: core/classes/class-form-admin.php:200
112
  msgid "%s form moved to the Trash."
113
  msgid_plural "%s forms moved to the Trash."
114
  msgstr[0] ""
115
  msgstr[1] ""
116
 
117
- #: core/classes/class-form-admin.php:201
118
  msgid "%s form restored from the Trash."
119
  msgid_plural "%s forms restored from the Trash."
120
  msgstr[0] ""
121
  msgstr[1] ""
122
 
123
- #: core/classes/class-form-admin.php:260
124
  msgid "Shortcode"
125
  msgstr ""
126
 
127
- #: core/classes/class-form-admin.php:261
128
  msgid "Author"
129
  msgstr ""
130
 
131
- #: core/classes/class-form-admin.php:299
132
  msgid "Copy to clipboard"
133
  msgstr ""
134
 
135
- #: core/classes/class-form-admin.php:340
136
  msgid "Edit"
137
  msgstr ""
138
 
139
- #: core/classes/class-form-admin.php:344
140
  #: core/templates/customize-form-item.php:27
141
  #: core/templates/customize-form-part-footer.php:4
142
  msgid "Duplicate"
143
  msgstr ""
144
 
145
- #: core/classes/class-form-admin.php:348
146
  msgid "Trash"
147
  msgstr ""
148
 
149
- #: core/classes/class-form-admin.php:393
150
- msgid "Form duplicated succesfully."
 
 
 
 
151
  msgstr ""
152
 
153
  #: core/classes/class-form-controller.php:74
@@ -159,232 +163,261 @@ msgid "Form"
159
  msgstr ""
160
 
161
  #: core/classes/class-form-controller.php:76
162
- #: core/classes/class-form-controller.php:78
163
- msgid "Build form"
 
164
  msgstr ""
165
 
166
  #: core/classes/class-form-controller.php:77
 
 
 
 
 
167
  msgid "Edit form"
168
  msgstr ""
169
 
170
- #: core/classes/class-form-controller.php:80
171
  msgid "View forms"
172
  msgstr ""
173
 
174
- #: core/classes/class-form-controller.php:81
175
  msgid "Search Forms"
176
  msgstr ""
177
 
178
- #: core/classes/class-form-controller.php:82
179
  msgid "No forms found."
180
  msgstr ""
181
 
182
- #: core/classes/class-form-controller.php:83
183
  msgid "No forms found in Trash"
184
  msgstr ""
185
 
186
- #: core/classes/class-form-controller.php:84
187
  #: core/classes/class-form-controller.php:85
188
- #: core/classes/class-happyforms-core.php:173
189
  #: core/classes/class-happyforms-core.php:174
 
190
  msgid "All Forms"
191
  msgstr ""
192
 
193
- #: core/classes/class-form-controller.php:184
194
- msgid "Untitled form"
195
  msgstr ""
196
 
197
- #: core/classes/class-form-controller.php:614
198
  msgid " Copy"
199
  msgstr ""
200
 
201
- #: core/classes/class-form-part-library.php:185
202
- msgid "Invalid data"
203
- msgstr ""
204
-
205
- #: core/classes/class-form-part-library.php:192
206
- msgid "Part definition not found"
207
- msgstr ""
208
-
209
- #: core/classes/class-form-part-library.php:223
210
- msgid "Missing validation callback for field %s"
211
- msgstr ""
212
-
213
- #: core/classes/class-form-setup.php:51
214
- msgid "Thank you! Your response has been successfully submitted."
215
- msgstr ""
216
-
217
- #: core/classes/class-form-setup.php:55
218
- msgid "Oops! Your response is invalid — please review your message."
219
- msgstr ""
220
-
221
- #: core/classes/class-form-setup.php:75
222
  msgid "You received a new message"
223
  msgstr ""
224
 
225
- #: core/classes/class-form-setup.php:87
226
  msgid "We received your message"
227
  msgstr ""
228
 
229
- #: core/classes/class-form-setup.php:91
230
  msgid ""
231
  "Your message has been successfully sent. We appreciate you contacting us "
232
  "and we’ll be in touch soon."
233
  msgstr ""
234
 
235
- #: core/classes/class-form-setup.php:115
236
- msgid "This field is required."
237
- msgstr ""
238
-
239
- #: core/classes/class-form-setup.php:119
240
- msgid "(optional)"
241
- msgstr ""
242
-
243
- #: core/classes/class-form-setup.php:123
244
- msgid "Submit Form"
245
- msgstr ""
246
-
247
- #: core/classes/class-form-setup.php:147
248
- msgid "Validate your submission"
249
- msgstr ""
250
-
251
- #: core/classes/class-form-setup.php:155
252
- msgid "Review submission"
253
- msgstr ""
254
-
255
- #: core/classes/class-form-setup.php:203
256
- msgid "Confirmation message"
257
- msgstr ""
258
-
259
- #: core/classes/class-form-setup.php:204
260
- msgid ""
261
- "This is the message your users will see after succesfully submitting your "
262
- "form."
263
- msgstr ""
264
-
265
- #: core/classes/class-form-setup.php:209
266
- msgid "Error message"
267
- msgstr ""
268
-
269
- #: core/classes/class-form-setup.php:210
270
- msgid ""
271
- "This is the message your users will see when there are form errors "
272
- "preventing submission."
273
- msgstr ""
274
-
275
- #: core/classes/class-form-setup.php:215
276
  msgid "Receive submission alerts"
277
  msgstr ""
278
 
279
- #: core/classes/class-form-setup.php:220 core/templates/admin-tracking.php:15
 
280
  msgid "Email address"
281
  msgstr ""
282
 
283
- #: core/classes/class-form-setup.php:221
284
  msgid ""
285
  "Add your email address here to receive a confirmation email for each form "
286
  "response. You can add multiple email addresses by separating each address "
287
  "with a comma."
288
  msgstr ""
289
 
290
- #: core/classes/class-form-setup.php:226
291
  msgid "Email Bcc address"
292
  msgstr ""
293
 
294
- #: core/classes/class-form-setup.php:227
295
  msgid ""
296
  "Add your Bcc email address here to receive a confirmation email for each "
297
  "form response without appearing in the received message header. You can "
298
  "add multiple email addresses by separating each address with a comma."
299
  msgstr ""
300
 
301
- #: core/classes/class-form-setup.php:232 core/classes/class-form-setup.php:249
302
  msgid "Email subject"
303
  msgstr ""
304
 
305
- #: core/classes/class-form-setup.php:233
306
  msgid ""
307
  "Each time a user submits a message, you'll receive an email with this "
308
  "subject."
309
  msgstr ""
310
 
311
- #: core/classes/class-form-setup.php:238
312
  msgid "Send confirmation email"
313
  msgstr ""
314
 
315
- #: core/classes/class-form-setup.php:243
 
 
 
 
316
  msgid "Email display name"
317
  msgstr ""
318
 
319
- #: core/classes/class-form-setup.php:244
320
  msgid ""
321
  "If your form contains an email field, recipients will receive an email with "
322
  "this sender name."
323
  msgstr ""
324
 
325
- #: core/classes/class-form-setup.php:250
326
  msgid ""
327
  "If your form contains an email field, recipients will receive an email with "
328
  "this subject."
329
  msgstr ""
330
 
331
- #: core/classes/class-form-setup.php:255
332
  msgid "Email content"
333
  msgstr ""
334
 
335
- #: core/classes/class-form-setup.php:256
336
  msgid ""
337
  "If your form contains an email field, recipients will receive an email with "
338
  "this content."
339
  msgstr ""
340
 
341
- #: core/classes/class-form-setup.php:261
342
  msgid "Include submitted values"
343
  msgstr ""
344
 
345
- #: core/classes/class-form-setup.php:266
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
346
  msgid "Required part label"
347
  msgstr ""
348
 
349
- #: core/classes/class-form-setup.php:271
 
 
 
 
 
 
350
  msgid "Optional part label"
351
  msgstr ""
352
 
353
- #: core/classes/class-form-setup.php:276
 
 
 
 
 
 
354
  msgid "Submit button label"
355
  msgstr ""
356
 
357
- #: core/classes/class-form-setup.php:281
358
- msgid "Submit button HTML class"
359
  msgstr ""
360
 
361
- #: core/classes/class-form-setup.php:286
362
- msgid "Set custom form HTML ID"
363
  msgstr ""
364
 
365
- #: core/classes/class-form-setup.php:288
366
- msgid "Add a unique HTML ID to your form. Write without a hash (#) character."
 
 
367
  msgstr ""
368
 
369
- #: core/classes/class-form-setup.php:292
370
  msgid "Form HTML ID"
371
  msgstr ""
372
 
373
- #: core/classes/class-form-setup.php:297
374
- msgid "Hide form after submission"
 
 
 
 
375
  msgstr ""
376
 
377
- #: core/classes/class-form-setup.php:298
378
  msgid ""
379
  "Hide all form parts and display just title and confirmation message on "
380
  "submit."
381
  msgstr ""
382
 
383
- #: core/classes/class-form-setup.php:303
384
  msgid "Spam prevention"
385
  msgstr ""
386
 
387
- #: core/classes/class-form-setup.php:304
388
  msgid "Protect your form against bots by using HoneyPot security."
389
  msgstr ""
390
 
@@ -396,430 +429,411 @@ msgstr ""
396
  msgid "Right-to-left"
397
  msgstr ""
398
 
399
- #: core/classes/class-form-styles.php:71 core/classes/class-form-styles.php:145
400
- #: core/classes/class-form-styles.php:155
401
- #: core/classes/class-form-styles.php:258
402
- #: core/classes/class-form-styles.php:268
403
  msgid "Default"
404
  msgstr ""
405
 
406
- #: core/classes/class-form-styles.php:72 core/classes/class-form-styles.php:144
407
- #: core/classes/class-form-styles.php:154
408
- #: core/classes/class-form-styles.php:267
409
  msgid "Narrow"
410
  msgstr ""
411
 
412
- #: core/classes/class-form-styles.php:73 core/classes/class-form-styles.php:146
413
- #: core/classes/class-form-styles.php:156
414
- #: core/classes/class-form-styles.php:269
415
  msgid "Wide"
416
  msgstr ""
417
 
418
- #: core/classes/class-form-styles.php:87 core/classes/class-form-styles.php:116
419
- #: core/classes/class-form-styles.php:239
420
  msgid "Show"
421
  msgstr ""
422
 
423
- #: core/classes/class-form-styles.php:88 core/classes/class-form-styles.php:117
424
- #: core/classes/class-form-styles.php:240
425
  msgid "Hide"
426
  msgstr ""
427
 
428
- #: core/classes/class-form-styles.php:96 core/classes/class-form-styles.php:170
429
- #: core/classes/class-form-styles.php:199
430
- #: core/classes/class-form-styles.php:219
431
- #: core/classes/class-form-styles.php:296
432
- #: core/templates/parts/customize-checkbox.php:11
433
- #: core/templates/parts/customize-email.php:11
434
- #: core/templates/parts/customize-multi-line-text.php:11
435
- #: core/templates/parts/customize-number.php:11
436
- #: core/templates/parts/customize-radio.php:11
437
- #: core/templates/parts/customize-select.php:11
438
- #: core/templates/parts/customize-single-line-text.php:11
439
  msgid "Left"
440
  msgstr ""
441
 
442
- #: core/classes/class-form-styles.php:97 core/classes/class-form-styles.php:171
443
- #: core/classes/class-form-styles.php:200
444
- #: core/classes/class-form-styles.php:220
445
- #: core/classes/class-form-styles.php:297
446
  msgid "Center"
447
  msgstr ""
448
 
449
- #: core/classes/class-form-styles.php:98 core/classes/class-form-styles.php:172
450
- #: core/classes/class-form-styles.php:201
451
- #: core/classes/class-form-styles.php:221
452
- #: core/classes/class-form-styles.php:298
453
  msgid "Right"
454
  msgstr ""
455
 
456
- #: core/classes/class-form-styles.php:125
457
  msgid "All sides"
458
  msgstr ""
459
 
460
- #: core/classes/class-form-styles.php:126
461
  msgid "Bottom only"
462
  msgstr ""
463
 
464
- #: core/classes/class-form-styles.php:134
465
- #: core/classes/class-form-styles.php:248
466
  msgid "Square"
467
  msgstr ""
468
 
469
- #: core/classes/class-form-styles.php:135
470
- #: core/classes/class-form-styles.php:249
471
  msgid "Round"
472
  msgstr ""
473
 
474
- #: core/classes/class-form-styles.php:136
475
- #: core/classes/class-form-styles.php:250
476
  msgid "Pill"
477
  msgstr ""
478
 
479
- #: core/classes/class-form-styles.php:190
480
- #: core/classes/class-form-styles.php:287
481
  msgid "Normal"
482
  msgstr ""
483
 
484
- #: core/classes/class-form-styles.php:191
485
- #: core/classes/class-form-styles.php:288
486
  msgid "Bold"
487
  msgstr ""
488
 
489
- #: core/classes/class-form-styles.php:259
490
  msgid "Full width"
491
  msgstr ""
492
 
493
- #: core/classes/class-form-styles.php:510
494
  msgid "Above form"
495
  msgstr ""
496
 
497
- #: core/classes/class-form-styles.php:511
498
  msgid "Below form"
499
  msgstr ""
500
 
501
- #: core/classes/class-form-styles.php:525
502
  msgid "General"
503
  msgstr ""
504
 
505
- #: core/classes/class-form-styles.php:530
506
- #: core/classes/class-form-styles.php:840
507
- #: core/templates/parts/customize-checkbox.php:89
508
- #: core/templates/parts/customize-email.php:54
509
- #: core/templates/parts/customize-multi-line-text.php:66
510
- #: core/templates/parts/customize-number.php:85
511
- #: core/templates/parts/customize-radio.php:84
512
- #: core/templates/parts/customize-select.php:78
513
- #: core/templates/parts/customize-single-line-text.php:59
514
  msgid "Width"
515
  msgstr ""
516
 
517
- #: core/classes/class-form-styles.php:535
518
- #: core/classes/class-form-styles.php:845
519
  msgid "Padding"
520
  msgstr ""
521
 
522
- #: core/classes/class-form-styles.php:540
523
  msgid "Direction"
524
  msgstr ""
525
 
526
- #: core/classes/class-form-styles.php:545
527
  msgid "Display notices"
528
  msgstr ""
529
 
530
- #: core/classes/class-form-styles.php:551
531
- #: core/classes/class-form-styles.php:636
532
- #: core/classes/class-form-styles.php:706
533
- #: core/classes/class-form-styles.php:871
534
  msgid "Colors"
535
  msgstr ""
536
 
537
- #: core/classes/class-form-styles.php:555
538
  msgid "Primary"
539
  msgstr ""
540
 
541
- #: core/classes/class-form-styles.php:560
542
  msgid "Success notice"
543
  msgstr ""
544
 
545
- #: core/classes/class-form-styles.php:565
546
  msgid "Success notice text"
547
  msgstr ""
548
 
549
- #: core/classes/class-form-styles.php:570
550
  msgid "Error"
551
  msgstr ""
552
 
553
- #: core/classes/class-form-styles.php:575
554
  msgid "Error notice"
555
  msgstr ""
556
 
557
- #: core/classes/class-form-styles.php:580
558
  msgid "Error notice text"
559
  msgstr ""
560
 
561
- #: core/classes/class-form-styles.php:585
562
- #: core/classes/class-form-styles.php:710
563
  #: core/templates/customize-form-build.php:4
564
- #: core/templates/parts/customize-checkbox.php:4
565
- #: core/templates/parts/customize-email.php:4
566
- #: core/templates/parts/customize-multi-line-text.php:4
567
- #: core/templates/parts/customize-number.php:4
568
- #: core/templates/parts/customize-radio.php:4
569
- #: core/templates/parts/customize-select.php:4
570
- #: core/templates/parts/customize-single-line-text.php:4
571
  #: inc/classes/parts/class-part-title-dummy.php:8
572
  msgid "Title"
573
  msgstr ""
574
 
575
- #: core/classes/class-form-styles.php:590
576
  msgid "Display"
577
  msgstr ""
578
 
579
- #: core/classes/class-form-styles.php:595
580
- #: core/classes/class-form-styles.php:860
581
  msgid "Alignment"
582
  msgstr ""
583
 
584
- #: core/classes/class-form-styles.php:600
585
- #: core/classes/class-form-styles.php:850
586
  msgid "Font size"
587
  msgstr ""
588
 
589
- #: core/classes/class-form-styles.php:605
590
  msgid "Part borders & spacing"
591
  msgstr ""
592
 
593
- #: core/classes/class-form-styles.php:610
594
- #: core/classes/class-form-styles.php:640
595
- #: core/classes/class-form-styles.php:830
596
- #: core/classes/class-form-styles.php:885
597
  msgid "Border"
598
  msgstr ""
599
 
600
- #: core/classes/class-form-styles.php:615
601
  msgid "Border location"
602
  msgstr ""
603
 
604
- #: core/classes/class-form-styles.php:620
605
- #: core/classes/class-form-styles.php:835
606
  msgid "Border radius"
607
  msgstr ""
608
 
609
- #: core/classes/class-form-styles.php:625
610
  msgid "Outer spacing"
611
  msgstr ""
612
 
613
- #: core/classes/class-form-styles.php:630
614
  msgid "Inner spacing"
615
  msgstr ""
616
 
617
- #: core/classes/class-form-styles.php:645
618
  msgid "Border on focus"
619
  msgstr ""
620
 
621
- #: core/classes/class-form-styles.php:650
622
- #: core/classes/class-form-styles.php:735
623
- #: core/classes/class-form-styles.php:760
624
- #: core/classes/class-form-styles.php:875
625
  msgid "Background"
626
  msgstr ""
627
 
628
- #: core/classes/class-form-styles.php:655
629
- #: core/classes/class-form-styles.php:745
630
- #: core/classes/class-form-styles.php:765
631
- #: core/classes/class-form-styles.php:880
632
  msgid "Background on focus"
633
  msgstr ""
634
 
635
- #: core/classes/class-form-styles.php:660
636
  msgid "Part labels & text"
637
  msgstr ""
638
 
639
- #: core/classes/class-form-styles.php:665
640
  msgid "Toggle placeholder on part focus"
641
  msgstr ""
642
 
643
- #: core/classes/class-form-styles.php:670
644
  msgid "Title alignment"
645
  msgstr ""
646
 
647
- #: core/classes/class-form-styles.php:675
648
  msgid "Title font size"
649
  msgstr ""
650
 
651
- #: core/classes/class-form-styles.php:680
652
  msgid "Title font weight"
653
  msgstr ""
654
 
655
- #: core/classes/class-form-styles.php:685
656
  msgid "Description alignment"
657
  msgstr ""
658
 
659
- #: core/classes/class-form-styles.php:690
660
  msgid "Description font size"
661
  msgstr ""
662
 
663
- #: core/classes/class-form-styles.php:695
664
  msgid "Placeholder &amp; value alignment"
665
  msgstr ""
666
 
667
- #: core/classes/class-form-styles.php:700
668
  msgid "Value font size"
669
  msgstr ""
670
 
671
- #: core/classes/class-form-styles.php:715
672
  msgid "Value"
673
  msgstr ""
674
 
675
- #: core/classes/class-form-styles.php:720
676
- #: core/templates/parts/customize-email.php:36
677
- #: core/templates/parts/customize-multi-line-text.php:36
678
- #: core/templates/parts/customize-number.php:36
679
- #: core/templates/parts/customize-select.php:34
680
- #: core/templates/parts/customize-single-line-text.php:36
681
  #: inc/classes/parts/class-part-placeholder-dummy.php:8
682
  msgid "Placeholder"
683
  msgstr ""
684
 
685
- #: core/classes/class-form-styles.php:725
686
  msgid "Dropdowns"
687
  msgstr ""
688
 
689
- #: core/classes/class-form-styles.php:731
690
  msgid "Items"
691
  msgstr ""
692
 
693
- #: core/classes/class-form-styles.php:740
694
- #: core/classes/class-form-styles.php:890
695
- #: core/classes/parts/class-part-multi-line-text.php:34
696
- #: core/classes/parts/class-part-single-line-text.php:29
697
  msgid "Text"
698
  msgstr ""
699
 
700
- #: core/classes/class-form-styles.php:750
701
- #: core/classes/class-form-styles.php:895
702
  msgid "Text focused"
703
  msgstr ""
704
 
705
- #: core/classes/class-form-styles.php:755
706
  msgid "Checkboxes & Radios"
707
  msgstr ""
708
 
709
- #: core/classes/class-form-styles.php:770
710
  msgid "Checkmark"
711
  msgstr ""
712
 
713
- #: core/classes/class-form-styles.php:775
714
  #: inc/classes/parts/class-part-rating-dummy.php:8
715
  msgid "Rating"
716
  msgstr ""
717
 
718
- #: core/classes/class-form-styles.php:780
719
  msgid "Rating star color"
720
  msgstr ""
721
 
722
- #: core/classes/class-form-styles.php:785
723
  msgid "Rating star color on hover"
724
  msgstr ""
725
 
726
- #: core/classes/class-form-styles.php:790
727
  msgid "Item background"
728
  msgstr ""
729
 
730
- #: core/classes/class-form-styles.php:795
731
  msgid "Item background on hover"
732
  msgstr ""
733
 
734
- #: core/classes/class-form-styles.php:800
735
  msgid "Tables"
736
  msgstr ""
737
 
738
- #: core/classes/class-form-styles.php:805
739
  msgid "Odd row primary"
740
  msgstr ""
741
 
742
- #: core/classes/class-form-styles.php:810
743
  msgid "Odd row secondary"
744
  msgstr ""
745
 
746
- #: core/classes/class-form-styles.php:815
747
  msgid "Even row primary"
748
  msgstr ""
749
 
750
- #: core/classes/class-form-styles.php:820
751
  msgid "Even row secondary"
752
  msgstr ""
753
 
754
- #: core/classes/class-form-styles.php:825
755
  msgid "Submit button"
756
  msgstr ""
757
 
758
- #: core/classes/class-form-styles.php:855
759
  msgid "Font weight"
760
  msgstr ""
761
 
762
- #: core/classes/class-form-styles.php:865
763
  msgid "Make button a part of last input"
764
  msgstr ""
765
 
766
- #: core/classes/class-happyforms-core.php:162
767
  msgid "HappyForms Index"
768
  msgstr ""
769
 
770
- #: core/classes/class-happyforms-core.php:181
771
- #: core/classes/class-happyforms-core.php:182
772
- msgid "Add New"
773
- msgstr ""
774
-
775
- #: core/classes/class-happyforms-core.php:189
776
  #: core/classes/class-happyforms-core.php:190
 
777
  msgid "Activity"
778
  msgstr ""
779
 
780
- #: core/classes/class-happyforms-core.php:198
781
  #: core/classes/class-happyforms-core.php:199
782
- msgid "Integrations"
 
783
  msgstr ""
784
 
785
- #: core/classes/class-happyforms-core.php:207
786
  #: core/classes/class-happyforms-core.php:208
787
- msgid "Import/Export"
788
- msgstr ""
789
-
790
- #: core/classes/class-happyforms-core.php:216
791
- #: core/classes/class-happyforms-core.php:217
792
  msgid "Welcome"
793
  msgstr ""
794
 
795
- #: core/classes/class-happyforms-core.php:439
796
  msgid "Insert HappyForm"
797
  msgstr ""
798
 
799
- #: core/classes/class-happyforms-core.php:439
800
  msgid "Add HappyForms"
801
  msgstr ""
802
 
803
- #: core/classes/class-happyforms-core.php:635
804
  msgid "Overview"
805
  msgstr ""
806
 
807
- #: core/classes/class-happyforms-core.php:645
808
  msgid "Hey 👋 Welcome to your HappyForms Dashboard!"
809
  msgstr ""
810
 
811
- #: core/classes/class-happyforms-core.php:648
812
  msgid ""
813
  "Are you looking for help? Well, we’ve swept the nacho crumbs from our "
814
  "keyboards, refilled our ginger beers and are ready to reply with answers! "
815
  "So, go on, email %s."
816
  msgstr ""
817
 
818
- #: core/classes/class-happyforms-core.php:657
819
  msgid "For more help"
820
  msgstr ""
821
 
822
- #: core/classes/class-happyforms-core.php:659
823
  msgid "Help guide"
824
  msgstr ""
825
 
@@ -932,14 +946,15 @@ msgid "For checkboxes allowing multiple selections."
932
  msgstr ""
933
 
934
  #: core/classes/parts/class-part-checkbox.php:39
 
 
 
 
 
935
  #: core/classes/parts/class-part-radio.php:40
936
- #: core/templates/parts/customize-checkbox.php:37
937
- #: core/templates/parts/customize-checkbox.php:41
938
- #: core/templates/parts/customize-radio.php:37
939
- #: core/templates/parts/customize-radio.php:41
940
- #: core/templates/parts/customize-select.php:42
941
- #: core/templates/parts/customize-select.php:46
942
- msgid "Choices"
943
  msgstr ""
944
 
945
  #: core/classes/parts/class-part-checkbox.php:200
@@ -947,7 +962,7 @@ msgid "Checkbox values are not valid."
947
  msgstr ""
948
 
949
  #: core/classes/parts/class-part-email.php:8
950
- #: core/classes/parts/class-part-email.php:31
951
  msgid "Email"
952
  msgstr ""
953
 
@@ -955,10 +970,6 @@ msgstr ""
955
  msgid "For formatted email addresses. The '@' symbol is required."
956
  msgstr ""
957
 
958
- #: core/classes/parts/class-part-email.php:55
959
- msgid "Confirm Email"
960
- msgstr ""
961
-
962
  #: core/classes/parts/class-part-email.php:160
963
  msgid "Not a valid e-mail address."
964
  msgstr ""
@@ -1002,7 +1013,6 @@ msgid "words (max.)"
1002
  msgstr ""
1003
 
1004
  #: core/classes/parts/class-part-number.php:8
1005
- #: core/classes/parts/class-part-number.php:30
1006
  msgid "Number"
1007
  msgstr ""
1008
 
@@ -1010,10 +1020,6 @@ msgstr ""
1010
  msgid "For numeric fields."
1011
  msgstr ""
1012
 
1013
- #: core/classes/parts/class-part-number.php:86
1014
- msgid "Confirm Number"
1015
- msgstr ""
1016
-
1017
  #: core/classes/parts/class-part-number.php:193
1018
  msgid "This field does not match minimum and maximum allowed value."
1019
  msgstr ""
@@ -1036,7 +1042,6 @@ msgid "Radio value is not valid."
1036
  msgstr ""
1037
 
1038
  #: core/classes/parts/class-part-select.php:8
1039
- #: core/classes/parts/class-part-select.php:31
1040
  msgid "Dropdown"
1041
  msgstr ""
1042
 
@@ -1097,935 +1102,935 @@ msgstr ""
1097
  msgid "Spam protection, skip this field"
1098
  msgstr ""
1099
 
1100
- #: core/helpers/helper-form-templates.php:923
1101
  msgid "Get my location"
1102
  msgstr ""
1103
 
1104
- #: core/helpers/helper-form-templates.php:923
1105
  msgid "Fetching location…"
1106
  msgstr ""
1107
 
1108
- #: core/helpers/helper-form-templates.php:933
1109
  msgid "January"
1110
  msgstr ""
1111
 
1112
- #: core/helpers/helper-form-templates.php:934
1113
  msgid "February"
1114
  msgstr ""
1115
 
1116
- #: core/helpers/helper-form-templates.php:935
1117
  msgid "March"
1118
  msgstr ""
1119
 
1120
- #: core/helpers/helper-form-templates.php:936
1121
  msgid "April"
1122
  msgstr ""
1123
 
1124
- #: core/helpers/helper-form-templates.php:937
1125
  msgid "May"
1126
  msgstr ""
1127
 
1128
- #: core/helpers/helper-form-templates.php:938
1129
  msgid "June"
1130
  msgstr ""
1131
 
1132
- #: core/helpers/helper-form-templates.php:939
1133
  msgid "July"
1134
  msgstr ""
1135
 
1136
- #: core/helpers/helper-form-templates.php:940
1137
  msgid "August"
1138
  msgstr ""
1139
 
1140
- #: core/helpers/helper-form-templates.php:941
1141
  msgid "September"
1142
  msgstr ""
1143
 
1144
- #: core/helpers/helper-form-templates.php:942
1145
  msgid "October"
1146
  msgstr ""
1147
 
1148
- #: core/helpers/helper-form-templates.php:943
1149
  msgid "November"
1150
  msgstr ""
1151
 
1152
- #: core/helpers/helper-form-templates.php:944
1153
  msgid "December"
1154
  msgstr ""
1155
 
1156
- #: core/helpers/helper-form-templates.php:985 core/helpers/helper-misc.php:218
1157
  msgid "Andorra"
1158
  msgstr ""
1159
 
1160
- #: core/helpers/helper-form-templates.php:986 core/helpers/helper-misc.php:436
1161
  msgid "United Arab Emirates"
1162
  msgstr ""
1163
 
1164
- #: core/helpers/helper-form-templates.php:987 core/helpers/helper-misc.php:214
1165
  msgid "Afghanistan"
1166
  msgstr ""
1167
 
1168
- #: core/helpers/helper-form-templates.php:988 core/helpers/helper-misc.php:222
1169
  msgid "Antigua and Barbuda"
1170
  msgstr ""
1171
 
1172
- #: core/helpers/helper-form-templates.php:989 core/helpers/helper-misc.php:220
1173
  msgid "Anguilla"
1174
  msgstr ""
1175
 
1176
- #: core/helpers/helper-form-templates.php:990 core/helpers/helper-misc.php:215
1177
  msgid "Albania"
1178
  msgstr ""
1179
 
1180
- #: core/helpers/helper-form-templates.php:991 core/helpers/helper-misc.php:224
1181
  msgid "Armenia"
1182
  msgstr ""
1183
 
1184
- #: core/helpers/helper-form-templates.php:992 core/helpers/helper-misc.php:219
1185
  msgid "Angola"
1186
  msgstr ""
1187
 
1188
- #: core/helpers/helper-form-templates.php:993 core/helpers/helper-misc.php:221
1189
  msgid "Antarctica"
1190
  msgstr ""
1191
 
1192
- #: core/helpers/helper-form-templates.php:994 core/helpers/helper-misc.php:223
1193
  msgid "Argentina"
1194
  msgstr ""
1195
 
1196
- #: core/helpers/helper-form-templates.php:995 core/helpers/helper-misc.php:217
1197
  msgid "American Samoa"
1198
  msgstr ""
1199
 
1200
- #: core/helpers/helper-form-templates.php:996 core/helpers/helper-misc.php:227
1201
  msgid "Austria"
1202
  msgstr ""
1203
 
1204
- #: core/helpers/helper-form-templates.php:997 core/helpers/helper-misc.php:226
1205
  msgid "Australia"
1206
  msgstr ""
1207
 
1208
- #: core/helpers/helper-form-templates.php:998 core/helpers/helper-misc.php:225
1209
  msgid "Aruba"
1210
  msgstr ""
1211
 
1212
- #: core/helpers/helper-form-templates.php:999 core/helpers/helper-misc.php:228
1213
  msgid "Azerbaijan"
1214
  msgstr ""
1215
 
1216
- #: core/helpers/helper-form-templates.php:1000
1217
  msgid "Bosnia and Herzegovina"
1218
  msgstr ""
1219
 
1220
- #: core/helpers/helper-form-templates.php:1001 core/helpers/helper-misc.php:232
1221
  msgid "Barbados"
1222
  msgstr ""
1223
 
1224
- #: core/helpers/helper-form-templates.php:1002 core/helpers/helper-misc.php:231
1225
  msgid "Bangladesh"
1226
  msgstr ""
1227
 
1228
- #: core/helpers/helper-form-templates.php:1003 core/helpers/helper-misc.php:234
1229
  msgid "Belgium"
1230
  msgstr ""
1231
 
1232
- #: core/helpers/helper-form-templates.php:1004 core/helpers/helper-misc.php:247
1233
  msgid "Burkina Faso"
1234
  msgstr ""
1235
 
1236
- #: core/helpers/helper-form-templates.php:1005 core/helpers/helper-misc.php:246
1237
  msgid "Bulgaria"
1238
  msgstr ""
1239
 
1240
- #: core/helpers/helper-form-templates.php:1006 core/helpers/helper-misc.php:230
1241
  msgid "Bahrain"
1242
  msgstr ""
1243
 
1244
- #: core/helpers/helper-form-templates.php:1007 core/helpers/helper-misc.php:248
1245
  msgid "Burundi"
1246
  msgstr ""
1247
 
1248
- #: core/helpers/helper-form-templates.php:1008 core/helpers/helper-misc.php:236
1249
  msgid "Benin"
1250
  msgstr ""
1251
 
1252
- #: core/helpers/helper-form-templates.php:1009
1253
  msgid "Saint Barthelemy"
1254
  msgstr ""
1255
 
1256
- #: core/helpers/helper-form-templates.php:1010 core/helpers/helper-misc.php:237
1257
  msgid "Bermuda"
1258
  msgstr ""
1259
 
1260
- #: core/helpers/helper-form-templates.php:1011 core/helpers/helper-misc.php:245
1261
  msgid "Brunei Darussalam"
1262
  msgstr ""
1263
 
1264
- #: core/helpers/helper-form-templates.php:1012 core/helpers/helper-misc.php:239
1265
  msgid "Bolivia"
1266
  msgstr ""
1267
 
1268
- #: core/helpers/helper-form-templates.php:1013 core/helpers/helper-misc.php:243
1269
  msgid "Brazil"
1270
  msgstr ""
1271
 
1272
- #: core/helpers/helper-form-templates.php:1014 core/helpers/helper-misc.php:229
1273
  msgid "Bahamas"
1274
  msgstr ""
1275
 
1276
- #: core/helpers/helper-form-templates.php:1015 core/helpers/helper-misc.php:238
1277
  msgid "Bhutan"
1278
  msgstr ""
1279
 
1280
- #: core/helpers/helper-form-templates.php:1016 core/helpers/helper-misc.php:241
1281
  msgid "Botswana"
1282
  msgstr ""
1283
 
1284
- #: core/helpers/helper-form-templates.php:1017 core/helpers/helper-misc.php:233
1285
  msgid "Belarus"
1286
  msgstr ""
1287
 
1288
- #: core/helpers/helper-form-templates.php:1018 core/helpers/helper-misc.php:235
1289
  msgid "Belize"
1290
  msgstr ""
1291
 
1292
- #: core/helpers/helper-form-templates.php:1019 core/helpers/helper-misc.php:251
1293
  msgid "Canada"
1294
  msgstr ""
1295
 
1296
- #: core/helpers/helper-form-templates.php:1020
1297
  msgid "Congo, The Democratic Republic of the"
1298
  msgstr ""
1299
 
1300
- #: core/helpers/helper-form-templates.php:1021 core/helpers/helper-misc.php:254
1301
  msgid "Central African Republic"
1302
  msgstr ""
1303
 
1304
- #: core/helpers/helper-form-templates.php:1022 core/helpers/helper-misc.php:262
1305
  msgid "Congo"
1306
  msgstr ""
1307
 
1308
- #: core/helpers/helper-form-templates.php:1023 core/helpers/helper-misc.php:419
1309
  msgid "Switzerland"
1310
  msgstr ""
1311
 
1312
- #: core/helpers/helper-form-templates.php:1024 core/helpers/helper-misc.php:264
1313
  msgid "Cook Islands"
1314
  msgstr ""
1315
 
1316
- #: core/helpers/helper-form-templates.php:1025 core/helpers/helper-misc.php:256
1317
  msgid "Chile"
1318
  msgstr ""
1319
 
1320
- #: core/helpers/helper-form-templates.php:1026 core/helpers/helper-misc.php:250
1321
  msgid "Cameroon"
1322
  msgstr ""
1323
 
1324
- #: core/helpers/helper-form-templates.php:1027 core/helpers/helper-misc.php:257
1325
  msgid "China"
1326
  msgstr ""
1327
 
1328
- #: core/helpers/helper-form-templates.php:1028 core/helpers/helper-misc.php:260
1329
  msgid "Colombia"
1330
  msgstr ""
1331
 
1332
- #: core/helpers/helper-form-templates.php:1029 core/helpers/helper-misc.php:265
1333
  msgid "Costa Rica"
1334
  msgstr ""
1335
 
1336
- #: core/helpers/helper-form-templates.php:1030 core/helpers/helper-misc.php:268
1337
  msgid "Cuba"
1338
  msgstr ""
1339
 
1340
- #: core/helpers/helper-form-templates.php:1031 core/helpers/helper-misc.php:252
1341
  msgid "Cape Verde"
1342
  msgstr ""
1343
 
1344
- #: core/helpers/helper-form-templates.php:1032 core/helpers/helper-misc.php:269
1345
  msgid "Cyprus"
1346
  msgstr ""
1347
 
1348
- #: core/helpers/helper-form-templates.php:1033 core/helpers/helper-misc.php:270
1349
  msgid "Czech Republic"
1350
  msgstr ""
1351
 
1352
- #: core/helpers/helper-form-templates.php:1034 core/helpers/helper-misc.php:295
1353
  msgid "Germany"
1354
  msgstr ""
1355
 
1356
- #: core/helpers/helper-form-templates.php:1035 core/helpers/helper-misc.php:272
1357
  msgid "Djibouti"
1358
  msgstr ""
1359
 
1360
- #: core/helpers/helper-form-templates.php:1036 core/helpers/helper-misc.php:271
1361
  msgid "Denmark"
1362
  msgstr ""
1363
 
1364
- #: core/helpers/helper-form-templates.php:1037 core/helpers/helper-misc.php:273
1365
  msgid "Dominica"
1366
  msgstr ""
1367
 
1368
- #: core/helpers/helper-form-templates.php:1038 core/helpers/helper-misc.php:274
1369
  msgid "Dominican Republic"
1370
  msgstr ""
1371
 
1372
- #: core/helpers/helper-form-templates.php:1039 core/helpers/helper-misc.php:216
1373
  msgid "Algeria"
1374
  msgstr ""
1375
 
1376
- #: core/helpers/helper-form-templates.php:1040 core/helpers/helper-misc.php:276
1377
  msgid "Ecuador"
1378
  msgstr ""
1379
 
1380
- #: core/helpers/helper-form-templates.php:1041 core/helpers/helper-misc.php:281
1381
  msgid "Estonia"
1382
  msgstr ""
1383
 
1384
- #: core/helpers/helper-form-templates.php:1042 core/helpers/helper-misc.php:277
1385
  msgid "Egypt"
1386
  msgstr ""
1387
 
1388
- #: core/helpers/helper-form-templates.php:1043 core/helpers/helper-misc.php:280
1389
  msgid "Eritrea"
1390
  msgstr ""
1391
 
1392
- #: core/helpers/helper-form-templates.php:1044 core/helpers/helper-misc.php:410
1393
  msgid "Spain"
1394
  msgstr ""
1395
 
1396
- #: core/helpers/helper-form-templates.php:1045 core/helpers/helper-misc.php:282
1397
  msgid "Ethiopia"
1398
  msgstr ""
1399
 
1400
- #: core/helpers/helper-form-templates.php:1046 core/helpers/helper-misc.php:286
1401
  msgid "Finland"
1402
  msgstr ""
1403
 
1404
- #: core/helpers/helper-form-templates.php:1047 core/helpers/helper-misc.php:285
1405
  msgid "Fiji"
1406
  msgstr ""
1407
 
1408
- #: core/helpers/helper-form-templates.php:1048 core/helpers/helper-misc.php:283
1409
  msgid "Falkland Islands (Malvinas)"
1410
  msgstr ""
1411
 
1412
- #: core/helpers/helper-form-templates.php:1049 core/helpers/helper-misc.php:354
1413
  msgid "Micronesia, Federated States of"
1414
  msgstr ""
1415
 
1416
- #: core/helpers/helper-form-templates.php:1050 core/helpers/helper-misc.php:284
1417
  msgid "Faroe Islands"
1418
  msgstr ""
1419
 
1420
- #: core/helpers/helper-form-templates.php:1051 core/helpers/helper-misc.php:287
1421
  msgid "France"
1422
  msgstr ""
1423
 
1424
- #: core/helpers/helper-form-templates.php:1052 core/helpers/helper-misc.php:292
1425
  msgid "Gabon"
1426
  msgstr ""
1427
 
1428
- #: core/helpers/helper-form-templates.php:1053 core/helpers/helper-misc.php:437
1429
  msgid "United Kingdom"
1430
  msgstr ""
1431
 
1432
- #: core/helpers/helper-form-templates.php:1054 core/helpers/helper-misc.php:300
1433
  msgid "Grenada"
1434
  msgstr ""
1435
 
1436
- #: core/helpers/helper-form-templates.php:1055 core/helpers/helper-misc.php:294
1437
  msgid "Georgia"
1438
  msgstr ""
1439
 
1440
- #: core/helpers/helper-form-templates.php:1056 core/helpers/helper-misc.php:296
1441
  msgid "Ghana"
1442
  msgstr ""
1443
 
1444
- #: core/helpers/helper-form-templates.php:1057 core/helpers/helper-misc.php:297
1445
  msgid "Gibraltar"
1446
  msgstr ""
1447
 
1448
- #: core/helpers/helper-form-templates.php:1058 core/helpers/helper-misc.php:299
1449
  msgid "Greenland"
1450
  msgstr ""
1451
 
1452
- #: core/helpers/helper-form-templates.php:1059 core/helpers/helper-misc.php:293
1453
  msgid "Gambia"
1454
  msgstr ""
1455
 
1456
- #: core/helpers/helper-form-templates.php:1060 core/helpers/helper-misc.php:304
1457
  msgid "Guinea"
1458
  msgstr ""
1459
 
1460
- #: core/helpers/helper-form-templates.php:1061 core/helpers/helper-misc.php:298
1461
  msgid "Greece"
1462
  msgstr ""
1463
 
1464
- #: core/helpers/helper-form-templates.php:1062 core/helpers/helper-misc.php:303
1465
  msgid "Guatemala"
1466
  msgstr ""
1467
 
1468
- #: core/helpers/helper-form-templates.php:1063 core/helpers/helper-misc.php:302
1469
  msgid "Guam"
1470
  msgstr ""
1471
 
1472
- #: core/helpers/helper-form-templates.php:1064
1473
  msgid "Guinea-bissau"
1474
  msgstr ""
1475
 
1476
- #: core/helpers/helper-form-templates.php:1065 core/helpers/helper-misc.php:306
1477
  msgid "Guyana"
1478
  msgstr ""
1479
 
1480
- #: core/helpers/helper-form-templates.php:1066 core/helpers/helper-misc.php:311
1481
  msgid "Hong Kong"
1482
  msgstr ""
1483
 
1484
- #: core/helpers/helper-form-templates.php:1067 core/helpers/helper-misc.php:310
1485
  msgid "Honduras"
1486
  msgstr ""
1487
 
1488
- #: core/helpers/helper-form-templates.php:1068
1489
  msgid "Croatia"
1490
  msgstr ""
1491
 
1492
- #: core/helpers/helper-form-templates.php:1069 core/helpers/helper-misc.php:307
1493
  msgid "Haiti"
1494
  msgstr ""
1495
 
1496
- #: core/helpers/helper-form-templates.php:1070 core/helpers/helper-misc.php:312
1497
  msgid "Hungary"
1498
  msgstr ""
1499
 
1500
- #: core/helpers/helper-form-templates.php:1071 core/helpers/helper-misc.php:315
1501
  msgid "Indonesia"
1502
  msgstr ""
1503
 
1504
- #: core/helpers/helper-form-templates.php:1072 core/helpers/helper-misc.php:318
1505
  msgid "Ireland"
1506
  msgstr ""
1507
 
1508
- #: core/helpers/helper-form-templates.php:1073 core/helpers/helper-misc.php:319
1509
  msgid "Israel"
1510
  msgstr ""
1511
 
1512
- #: core/helpers/helper-form-templates.php:1074 core/helpers/helper-misc.php:314
1513
  msgid "India"
1514
  msgstr ""
1515
 
1516
- #: core/helpers/helper-form-templates.php:1075 core/helpers/helper-misc.php:317
1517
  msgid "Iraq"
1518
  msgstr ""
1519
 
1520
- #: core/helpers/helper-form-templates.php:1076
1521
  msgid "Iran, Islamic Republic of"
1522
  msgstr ""
1523
 
1524
- #: core/helpers/helper-form-templates.php:1077 core/helpers/helper-misc.php:313
1525
  msgid "Iceland"
1526
  msgstr ""
1527
 
1528
- #: core/helpers/helper-form-templates.php:1078 core/helpers/helper-misc.php:320
1529
  msgid "Italy"
1530
  msgstr ""
1531
 
1532
- #: core/helpers/helper-form-templates.php:1079 core/helpers/helper-misc.php:321
1533
  msgid "Jamaica"
1534
  msgstr ""
1535
 
1536
- #: core/helpers/helper-form-templates.php:1080 core/helpers/helper-misc.php:323
1537
  msgid "Jordan"
1538
  msgstr ""
1539
 
1540
- #: core/helpers/helper-form-templates.php:1081 core/helpers/helper-misc.php:322
1541
  msgid "Japan"
1542
  msgstr ""
1543
 
1544
- #: core/helpers/helper-form-templates.php:1082 core/helpers/helper-misc.php:325
1545
  msgid "Kenya"
1546
  msgstr ""
1547
 
1548
- #: core/helpers/helper-form-templates.php:1083 core/helpers/helper-misc.php:330
1549
  msgid "Kyrgyzstan"
1550
  msgstr ""
1551
 
1552
- #: core/helpers/helper-form-templates.php:1084 core/helpers/helper-misc.php:249
1553
  msgid "Cambodia"
1554
  msgstr ""
1555
 
1556
- #: core/helpers/helper-form-templates.php:1085 core/helpers/helper-misc.php:326
1557
  msgid "Kiribati"
1558
  msgstr ""
1559
 
1560
- #: core/helpers/helper-form-templates.php:1086 core/helpers/helper-misc.php:261
1561
  msgid "Comoros"
1562
  msgstr ""
1563
 
1564
- #: core/helpers/helper-form-templates.php:1087 core/helpers/helper-misc.php:393
1565
  msgid "Saint Kitts and Nevis"
1566
  msgstr ""
1567
 
1568
- #: core/helpers/helper-form-templates.php:1088
1569
  msgid "Korea Democratic Peoples Republic of"
1570
  msgstr ""
1571
 
1572
- #: core/helpers/helper-form-templates.php:1089
1573
  msgid "Korea Republic of"
1574
  msgstr ""
1575
 
1576
- #: core/helpers/helper-form-templates.php:1090 core/helpers/helper-misc.php:329
1577
  msgid "Kuwait"
1578
  msgstr ""
1579
 
1580
- #: core/helpers/helper-form-templates.php:1091 core/helpers/helper-misc.php:253
1581
  msgid "Cayman Islands"
1582
  msgstr ""
1583
 
1584
- #: core/helpers/helper-form-templates.php:1092
1585
  msgid "Lao Peoples Democratic Republic"
1586
  msgstr ""
1587
 
1588
- #: core/helpers/helper-form-templates.php:1093 core/helpers/helper-misc.php:333
1589
  msgid "Lebanon"
1590
  msgstr ""
1591
 
1592
- #: core/helpers/helper-form-templates.php:1094 core/helpers/helper-misc.php:394
1593
  msgid "Saint Lucia"
1594
  msgstr ""
1595
 
1596
- #: core/helpers/helper-form-templates.php:1095 core/helpers/helper-misc.php:337
1597
  msgid "Liechtenstein"
1598
  msgstr ""
1599
 
1600
- #: core/helpers/helper-form-templates.php:1096 core/helpers/helper-misc.php:411
1601
  msgid "Sri Lanka"
1602
  msgstr ""
1603
 
1604
- #: core/helpers/helper-form-templates.php:1097 core/helpers/helper-misc.php:335
1605
  msgid "Liberia"
1606
  msgstr ""
1607
 
1608
- #: core/helpers/helper-form-templates.php:1098 core/helpers/helper-misc.php:334
1609
  msgid "Lesotho"
1610
  msgstr ""
1611
 
1612
- #: core/helpers/helper-form-templates.php:1099 core/helpers/helper-misc.php:338
1613
  msgid "Lithuania"
1614
  msgstr ""
1615
 
1616
- #: core/helpers/helper-form-templates.php:1100 core/helpers/helper-misc.php:339
1617
  msgid "Luxembourg"
1618
  msgstr ""
1619
 
1620
- #: core/helpers/helper-form-templates.php:1101 core/helpers/helper-misc.php:332
1621
  msgid "Latvia"
1622
  msgstr ""
1623
 
1624
- #: core/helpers/helper-form-templates.php:1102 core/helpers/helper-misc.php:336
1625
  msgid "Libyan Arab Jamahiriya"
1626
  msgstr ""
1627
 
1628
- #: core/helpers/helper-form-templates.php:1103 core/helpers/helper-misc.php:359
1629
  msgid "Morocco"
1630
  msgstr ""
1631
 
1632
- #: core/helpers/helper-form-templates.php:1104 core/helpers/helper-misc.php:356
1633
  msgid "Monaco"
1634
  msgstr ""
1635
 
1636
- #: core/helpers/helper-form-templates.php:1105 core/helpers/helper-misc.php:355
1637
  msgid "Moldova, Republic of"
1638
  msgstr ""
1639
 
1640
- #: core/helpers/helper-form-templates.php:1106
1641
  msgid "Montenegro"
1642
  msgstr ""
1643
 
1644
- #: core/helpers/helper-form-templates.php:1107 core/helpers/helper-misc.php:342
1645
  msgid "Madagascar"
1646
  msgstr ""
1647
 
1648
- #: core/helpers/helper-form-templates.php:1108 core/helpers/helper-misc.php:348
1649
  msgid "Marshall Islands"
1650
  msgstr ""
1651
 
1652
- #: core/helpers/helper-form-templates.php:1109 core/helpers/helper-misc.php:341
1653
  msgid "Macedonia, The Former Yugoslav Republic of"
1654
  msgstr ""
1655
 
1656
- #: core/helpers/helper-form-templates.php:1110 core/helpers/helper-misc.php:346
1657
  msgid "Mali"
1658
  msgstr ""
1659
 
1660
- #: core/helpers/helper-form-templates.php:1111 core/helpers/helper-misc.php:361
1661
  msgid "Myanmar"
1662
  msgstr ""
1663
 
1664
- #: core/helpers/helper-form-templates.php:1112 core/helpers/helper-misc.php:357
1665
  msgid "Mongolia"
1666
  msgstr ""
1667
 
1668
- #: core/helpers/helper-form-templates.php:1113 core/helpers/helper-misc.php:340
1669
  msgid "Macau"
1670
  msgstr ""
1671
 
1672
- #: core/helpers/helper-form-templates.php:1114 core/helpers/helper-misc.php:374
1673
  msgid "Northern Mariana Islands"
1674
  msgstr ""
1675
 
1676
- #: core/helpers/helper-form-templates.php:1115 core/helpers/helper-misc.php:350
1677
  msgid "Mauritania"
1678
  msgstr ""
1679
 
1680
- #: core/helpers/helper-form-templates.php:1116 core/helpers/helper-misc.php:358
1681
  msgid "Montserrat"
1682
  msgstr ""
1683
 
1684
- #: core/helpers/helper-form-templates.php:1117 core/helpers/helper-misc.php:347
1685
  msgid "Malta"
1686
  msgstr ""
1687
 
1688
- #: core/helpers/helper-form-templates.php:1118 core/helpers/helper-misc.php:351
1689
  msgid "Mauritius"
1690
  msgstr ""
1691
 
1692
- #: core/helpers/helper-form-templates.php:1119 core/helpers/helper-misc.php:345
1693
  msgid "Maldives"
1694
  msgstr ""
1695
 
1696
- #: core/helpers/helper-form-templates.php:1120 core/helpers/helper-misc.php:343
1697
  msgid "Malawi"
1698
  msgstr ""
1699
 
1700
- #: core/helpers/helper-form-templates.php:1121 core/helpers/helper-misc.php:353
1701
  msgid "Mexico"
1702
  msgstr ""
1703
 
1704
- #: core/helpers/helper-form-templates.php:1122 core/helpers/helper-misc.php:344
1705
  msgid "Malaysia"
1706
  msgstr ""
1707
 
1708
- #: core/helpers/helper-form-templates.php:1123 core/helpers/helper-misc.php:360
1709
  msgid "Mozambique"
1710
  msgstr ""
1711
 
1712
- #: core/helpers/helper-form-templates.php:1124 core/helpers/helper-misc.php:362
1713
  msgid "Namibia"
1714
  msgstr ""
1715
 
1716
- #: core/helpers/helper-form-templates.php:1125 core/helpers/helper-misc.php:367
1717
  msgid "New Caledonia"
1718
  msgstr ""
1719
 
1720
- #: core/helpers/helper-form-templates.php:1126 core/helpers/helper-misc.php:370
1721
  msgid "Niger"
1722
  msgstr ""
1723
 
1724
- #: core/helpers/helper-form-templates.php:1127 core/helpers/helper-misc.php:371
1725
  msgid "Nigeria"
1726
  msgstr ""
1727
 
1728
- #: core/helpers/helper-form-templates.php:1128 core/helpers/helper-misc.php:369
1729
  msgid "Nicaragua"
1730
  msgstr ""
1731
 
1732
- #: core/helpers/helper-form-templates.php:1129 core/helpers/helper-misc.php:365
1733
  msgid "Netherlands"
1734
  msgstr ""
1735
 
1736
- #: core/helpers/helper-form-templates.php:1130 core/helpers/helper-misc.php:375
1737
  msgid "Norway"
1738
  msgstr ""
1739
 
1740
- #: core/helpers/helper-form-templates.php:1131 core/helpers/helper-misc.php:364
1741
  msgid "Nepal"
1742
  msgstr ""
1743
 
1744
- #: core/helpers/helper-form-templates.php:1132 core/helpers/helper-misc.php:363
1745
  msgid "Nauru"
1746
  msgstr ""
1747
 
1748
- #: core/helpers/helper-form-templates.php:1133 core/helpers/helper-misc.php:372
1749
  msgid "Niue"
1750
  msgstr ""
1751
 
1752
- #: core/helpers/helper-form-templates.php:1134 core/helpers/helper-misc.php:368
1753
  msgid "New Zealand"
1754
  msgstr ""
1755
 
1756
- #: core/helpers/helper-form-templates.php:1135 core/helpers/helper-misc.php:376
1757
  msgid "Oman"
1758
  msgstr ""
1759
 
1760
- #: core/helpers/helper-form-templates.php:1136 core/helpers/helper-misc.php:379
1761
  msgid "Panama"
1762
  msgstr ""
1763
 
1764
- #: core/helpers/helper-form-templates.php:1137 core/helpers/helper-misc.php:382
1765
  msgid "Peru"
1766
  msgstr ""
1767
 
1768
- #: core/helpers/helper-form-templates.php:1138 core/helpers/helper-misc.php:290
1769
  msgid "French Polynesia"
1770
  msgstr ""
1771
 
1772
- #: core/helpers/helper-form-templates.php:1139 core/helpers/helper-misc.php:380
1773
  msgid "Papua New Guinea"
1774
  msgstr ""
1775
 
1776
- #: core/helpers/helper-form-templates.php:1140 core/helpers/helper-misc.php:383
1777
  msgid "Philippines"
1778
  msgstr ""
1779
 
1780
- #: core/helpers/helper-form-templates.php:1141 core/helpers/helper-misc.php:377
1781
  msgid "Pakistan"
1782
  msgstr ""
1783
 
1784
- #: core/helpers/helper-form-templates.php:1142 core/helpers/helper-misc.php:385
1785
  msgid "Poland"
1786
  msgstr ""
1787
 
1788
- #: core/helpers/helper-form-templates.php:1143
1789
  msgid "Saint Pierre and Miquelon"
1790
  msgstr ""
1791
 
1792
- #: core/helpers/helper-form-templates.php:1144 core/helpers/helper-misc.php:384
1793
  msgid "Pitcairn"
1794
  msgstr ""
1795
 
1796
- #: core/helpers/helper-form-templates.php:1145 core/helpers/helper-misc.php:386
1797
  msgid "Portugal"
1798
  msgstr ""
1799
 
1800
- #: core/helpers/helper-form-templates.php:1146 core/helpers/helper-misc.php:378
1801
  msgid "Palau"
1802
  msgstr ""
1803
 
1804
- #: core/helpers/helper-form-templates.php:1147 core/helpers/helper-misc.php:381
1805
  msgid "Paraguay"
1806
  msgstr ""
1807
 
1808
- #: core/helpers/helper-form-templates.php:1148 core/helpers/helper-misc.php:388
1809
  msgid "Qatar"
1810
  msgstr ""
1811
 
1812
- #: core/helpers/helper-form-templates.php:1149 core/helpers/helper-misc.php:390
1813
  msgid "Romania"
1814
  msgstr ""
1815
 
1816
- #: core/helpers/helper-form-templates.php:1150
1817
  msgid "Serbia"
1818
  msgstr ""
1819
 
1820
- #: core/helpers/helper-form-templates.php:1151 core/helpers/helper-misc.php:391
1821
  msgid "Russian Federation"
1822
  msgstr ""
1823
 
1824
- #: core/helpers/helper-form-templates.php:1152 core/helpers/helper-misc.php:392
1825
  msgid "Rwanda"
1826
  msgstr ""
1827
 
1828
- #: core/helpers/helper-form-templates.php:1153 core/helpers/helper-misc.php:399
1829
  msgid "Saudi Arabia"
1830
  msgstr ""
1831
 
1832
- #: core/helpers/helper-form-templates.php:1154 core/helpers/helper-misc.php:406
1833
  msgid "Solomon Islands"
1834
  msgstr ""
1835
 
1836
- #: core/helpers/helper-form-templates.php:1155 core/helpers/helper-misc.php:401
1837
  msgid "Seychelles"
1838
  msgstr ""
1839
 
1840
- #: core/helpers/helper-form-templates.php:1156 core/helpers/helper-misc.php:414
1841
  msgid "Sudan"
1842
  msgstr ""
1843
 
1844
- #: core/helpers/helper-form-templates.php:1157 core/helpers/helper-misc.php:418
1845
  msgid "Sweden"
1846
  msgstr ""
1847
 
1848
- #: core/helpers/helper-form-templates.php:1158 core/helpers/helper-misc.php:403
1849
  msgid "Singapore"
1850
  msgstr ""
1851
 
1852
- #: core/helpers/helper-form-templates.php:1159
1853
  msgid "Saint Helena"
1854
  msgstr ""
1855
 
1856
- #: core/helpers/helper-form-templates.php:1160 core/helpers/helper-misc.php:405
1857
  msgid "Slovenia"
1858
  msgstr ""
1859
 
1860
- #: core/helpers/helper-form-templates.php:1161
1861
  msgid "Slovakia"
1862
  msgstr ""
1863
 
1864
- #: core/helpers/helper-form-templates.php:1162 core/helpers/helper-misc.php:402
1865
  msgid "Sierra Leone"
1866
  msgstr ""
1867
 
1868
- #: core/helpers/helper-form-templates.php:1163 core/helpers/helper-misc.php:397
1869
  msgid "San Marino"
1870
  msgstr ""
1871
 
1872
- #: core/helpers/helper-form-templates.php:1164 core/helpers/helper-misc.php:400
1873
  msgid "Senegal"
1874
  msgstr ""
1875
 
1876
- #: core/helpers/helper-form-templates.php:1165 core/helpers/helper-misc.php:407
1877
  msgid "Somalia"
1878
  msgstr ""
1879
 
1880
- #: core/helpers/helper-form-templates.php:1166 core/helpers/helper-misc.php:415
1881
  msgid "Suriname"
1882
  msgstr ""
1883
 
1884
- #: core/helpers/helper-form-templates.php:1167 core/helpers/helper-misc.php:398
1885
  msgid "Sao Tome and Principe"
1886
  msgstr ""
1887
 
1888
- #: core/helpers/helper-form-templates.php:1168 core/helpers/helper-misc.php:278
1889
  msgid "El Salvador"
1890
  msgstr ""
1891
 
1892
- #: core/helpers/helper-form-templates.php:1169 core/helpers/helper-misc.php:420
1893
  msgid "Syrian Arab Republic"
1894
  msgstr ""
1895
 
1896
- #: core/helpers/helper-form-templates.php:1170 core/helpers/helper-misc.php:417
1897
  msgid "Swaziland"
1898
  msgstr ""
1899
 
1900
- #: core/helpers/helper-form-templates.php:1171 core/helpers/helper-misc.php:432
1901
  msgid "Turks and Caicos Islands"
1902
  msgstr ""
1903
 
1904
- #: core/helpers/helper-form-templates.php:1172 core/helpers/helper-misc.php:255
1905
  msgid "Chad"
1906
  msgstr ""
1907
 
1908
- #: core/helpers/helper-form-templates.php:1173 core/helpers/helper-misc.php:425
1909
  msgid "Togo"
1910
  msgstr ""
1911
 
1912
- #: core/helpers/helper-form-templates.php:1174 core/helpers/helper-misc.php:424
1913
  msgid "Thailand"
1914
  msgstr ""
1915
 
1916
- #: core/helpers/helper-form-templates.php:1175 core/helpers/helper-misc.php:422
1917
  msgid "Tajikistan"
1918
  msgstr ""
1919
 
1920
- #: core/helpers/helper-form-templates.php:1176 core/helpers/helper-misc.php:426
1921
  msgid "Tokelau"
1922
  msgstr ""
1923
 
1924
- #: core/helpers/helper-form-templates.php:1177
1925
  msgid "Timor-leste"
1926
  msgstr ""
1927
 
1928
- #: core/helpers/helper-form-templates.php:1178 core/helpers/helper-misc.php:431
1929
  msgid "Turkmenistan"
1930
  msgstr ""
1931
 
1932
- #: core/helpers/helper-form-templates.php:1179 core/helpers/helper-misc.php:429
1933
  msgid "Tunisia"
1934
  msgstr ""
1935
 
1936
- #: core/helpers/helper-form-templates.php:1180 core/helpers/helper-misc.php:427
1937
  msgid "Tonga"
1938
  msgstr ""
1939
 
1940
- #: core/helpers/helper-form-templates.php:1181 core/helpers/helper-misc.php:430
1941
  msgid "Turkey"
1942
  msgstr ""
1943
 
1944
- #: core/helpers/helper-form-templates.php:1182 core/helpers/helper-misc.php:428
1945
  msgid "Trinidad and Tobago"
1946
  msgstr ""
1947
 
1948
- #: core/helpers/helper-form-templates.php:1183 core/helpers/helper-misc.php:433
1949
  msgid "Tuvalu"
1950
  msgstr ""
1951
 
1952
- #: core/helpers/helper-form-templates.php:1184 core/helpers/helper-misc.php:421
1953
  msgid "Taiwan, Province of China"
1954
  msgstr ""
1955
 
1956
- #: core/helpers/helper-form-templates.php:1185 core/helpers/helper-misc.php:423
1957
  msgid "Tanzania, United Republic of"
1958
  msgstr ""
1959
 
1960
- #: core/helpers/helper-form-templates.php:1186 core/helpers/helper-misc.php:435
1961
  msgid "Ukraine"
1962
  msgstr ""
1963
 
1964
- #: core/helpers/helper-form-templates.php:1187 core/helpers/helper-misc.php:434
1965
  msgid "Uganda"
1966
  msgstr ""
1967
 
1968
- #: core/helpers/helper-form-templates.php:1188 core/helpers/helper-misc.php:438
1969
  msgid "United States"
1970
  msgstr ""
1971
 
1972
- #: core/helpers/helper-form-templates.php:1189 core/helpers/helper-misc.php:440
1973
  msgid "Uruguay"
1974
  msgstr ""
1975
 
1976
- #: core/helpers/helper-form-templates.php:1190 core/helpers/helper-misc.php:441
1977
  msgid "Uzbekistan"
1978
  msgstr ""
1979
 
1980
- #: core/helpers/helper-form-templates.php:1191 core/helpers/helper-misc.php:395
1981
  msgid "Saint Vincent and the Grenadines"
1982
  msgstr ""
1983
 
1984
- #: core/helpers/helper-form-templates.php:1192 core/helpers/helper-misc.php:443
1985
  msgid "Venezuela"
1986
  msgstr ""
1987
 
1988
- #: core/helpers/helper-form-templates.php:1193
1989
  msgid "Virgin Islands, British"
1990
  msgstr ""
1991
 
1992
- #: core/helpers/helper-form-templates.php:1194
1993
  msgid "Virgin Islands, U.S."
1994
  msgstr ""
1995
 
1996
- #: core/helpers/helper-form-templates.php:1195 core/helpers/helper-misc.php:444
1997
  msgid "Vietnam"
1998
  msgstr ""
1999
 
2000
- #: core/helpers/helper-form-templates.php:1196 core/helpers/helper-misc.php:442
2001
  msgid "Vanuatu"
2002
  msgstr ""
2003
 
2004
- #: core/helpers/helper-form-templates.php:1197
2005
  msgid "Wallis and Futuna"
2006
  msgstr ""
2007
 
2008
- #: core/helpers/helper-form-templates.php:1198 core/helpers/helper-misc.php:396
2009
  msgid "Samoa"
2010
  msgstr ""
2011
 
2012
- #: core/helpers/helper-form-templates.php:1199 core/helpers/helper-misc.php:449
2013
  msgid "Yemen"
2014
  msgstr ""
2015
 
2016
- #: core/helpers/helper-form-templates.php:1200 core/helpers/helper-misc.php:352
2017
  msgid "Mayotte"
2018
  msgstr ""
2019
 
2020
- #: core/helpers/helper-form-templates.php:1201 core/helpers/helper-misc.php:408
2021
  msgid "South Africa"
2022
  msgstr ""
2023
 
2024
- #: core/helpers/helper-form-templates.php:1202 core/helpers/helper-misc.php:451
2025
  msgid "Zambia"
2026
  msgstr ""
2027
 
2028
- #: core/helpers/helper-form-templates.php:1203 core/helpers/helper-misc.php:452
2029
  msgid "Zimbabwe"
2030
  msgstr ""
2031
 
@@ -2775,26 +2780,20 @@ msgstr ""
2775
  msgid "You are customizing"
2776
  msgstr ""
2777
 
2778
- #: core/templates/customize-form-build.php:10
2779
- msgid "Form builder"
2780
  msgstr ""
2781
 
2782
- #: core/templates/customize-form-build.php:12
2783
- msgid "Collapse all"
2784
  msgstr ""
2785
 
2786
- #: core/templates/customize-form-build.php:12
2787
- msgid "Expand all"
2788
- msgstr ""
2789
-
2790
- #: core/templates/customize-form-build.php:16
2791
- msgid "Ready to get started?"
2792
  msgstr ""
2793
 
2794
- #: core/templates/customize-form-build.php:17
2795
- msgid ""
2796
- "Click any part from the sidebar to add it to your new form. Then, drag "
2797
- "parts into order."
2798
  msgstr ""
2799
 
2800
  #: core/templates/customize-form-item.php:18
@@ -2802,21 +2801,20 @@ msgid "Add Part"
2802
  msgstr ""
2803
 
2804
  #: core/templates/customize-form-item.php:21
2805
- #: core/templates/customize-form-steps.php:8
2806
- #: core/templates/customize-form-steps.php:15
2807
  msgid "Setup"
2808
  msgstr ""
2809
 
2810
  #: core/templates/customize-form-item.php:24
2811
- #: core/templates/customize-form-steps.php:18
2812
  msgid "Style"
2813
  msgstr ""
2814
 
2815
  #: core/templates/customize-form-item.php:33
2816
  #: core/templates/customize-form-part-footer.php:3
2817
- #: core/templates/parts/customize-checkbox.php:137
2818
- #: core/templates/parts/customize-radio.php:131
2819
- #: core/templates/parts/customize-select.php:122
2820
  msgid "Delete"
2821
  msgstr ""
2822
 
@@ -2825,6 +2823,8 @@ msgid "Preview"
2825
  msgstr ""
2826
 
2827
  #: core/templates/customize-form-part-footer.php:5
 
 
2828
  msgid "More"
2829
  msgstr ""
2830
 
@@ -2847,7 +2847,7 @@ msgid "Clear Results"
2847
  msgstr ""
2848
 
2849
  #: core/templates/customize-form-parts-drawer.php:30
2850
- #: inc/classes/class-happyforms.php:232
2851
  #: inc/templates/customize-controls/checkbox_dummy.php:7
2852
  msgid "Upgrade"
2853
  msgstr ""
@@ -2856,46 +2856,56 @@ msgstr ""
2856
  msgid "No parts found."
2857
  msgstr ""
2858
 
2859
- #: core/templates/customize-form-steps.php:5
2860
  msgid "Build"
2861
  msgstr ""
2862
 
2863
- #: core/templates/customize-form-steps.php:23
2864
- msgid "Save & Close"
2865
  msgstr ""
2866
 
2867
- #: core/templates/customize-form-steps.php:30
2868
- msgid "Step"
2869
  msgstr ""
2870
 
2871
- #: core/templates/customize-form-steps.php:30
2872
- msgid "of"
2873
  msgstr ""
2874
 
2875
- #: core/templates/customize-header-actions.php:3
2876
- msgid "Save Form"
2877
  msgstr ""
2878
 
2879
- #: core/templates/customize-header-actions.php:3
2880
- msgid "Saved"
2881
- msgstr ""
2882
-
2883
- #: core/templates/customize-header-actions.php:5
2884
  msgid "The changes you made will be lost if you navigate away from this page."
2885
  msgstr ""
2886
 
2887
- #: core/templates/customize-header-actions.php:6
2888
  msgid "Close"
2889
  msgstr ""
2890
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2891
  #: core/templates/parts/customize-checkbox.php:8
2892
- #: core/templates/parts/customize-email.php:8
2893
  #: core/templates/parts/customize-multi-line-text.php:8
2894
  #: core/templates/parts/customize-number.php:8
2895
  #: core/templates/parts/customize-radio.php:8
2896
  #: core/templates/parts/customize-select.php:8
2897
  #: core/templates/parts/customize-single-line-text.php:8
2898
- msgid "Title placement"
2899
  msgstr ""
2900
 
2901
  #: core/templates/parts/customize-checkbox.php:10
@@ -2908,323 +2918,301 @@ msgstr ""
2908
  msgid "Above"
2909
  msgstr ""
2910
 
2911
- #: core/templates/parts/customize-checkbox.php:12
2912
- #: core/templates/parts/customize-email.php:12
2913
- #: core/templates/parts/customize-multi-line-text.php:12
2914
- #: core/templates/parts/customize-number.php:12
2915
- #: core/templates/parts/customize-radio.php:12
2916
- #: core/templates/parts/customize-select.php:12
2917
- #: core/templates/parts/customize-single-line-text.php:12
2918
  msgid "Below"
2919
  msgstr ""
2920
 
2921
  #: core/templates/parts/customize-checkbox.php:13
2922
- #: core/templates/parts/customize-email.php:15
2923
- #: core/templates/parts/customize-multi-line-text.php:15
2924
- #: core/templates/parts/customize-number.php:15
2925
  #: core/templates/parts/customize-radio.php:13
2926
- #: core/templates/parts/customize-select.php:14
2927
- #: core/templates/parts/customize-single-line-text.php:15
2928
  msgid "Hidden"
2929
  msgstr ""
2930
 
2931
- #: core/templates/parts/customize-checkbox.php:18
2932
- #: core/templates/parts/customize-checkbox.php:99
2933
- #: core/templates/parts/customize-email.php:20
2934
- #: core/templates/parts/customize-email.php:64
2935
- #: core/templates/parts/customize-multi-line-text.php:20
2936
- #: core/templates/parts/customize-multi-line-text.php:76
2937
- #: core/templates/parts/customize-number.php:20
2938
- #: core/templates/parts/customize-number.php:95
2939
- #: core/templates/parts/customize-radio.php:18
2940
- #: core/templates/parts/customize-radio.php:94
2941
- #: core/templates/parts/customize-select.php:19
2942
- #: core/templates/parts/customize-select.php:88
2943
- #: core/templates/parts/customize-single-line-text.php:20
2944
- #: core/templates/parts/customize-single-line-text.php:69
2945
- msgid "Apply to all parts"
 
 
 
 
 
2946
  msgstr ""
2947
 
2948
- #: core/templates/parts/customize-checkbox.php:22
2949
- #: core/templates/parts/customize-checkbox.php:129
2950
  #: core/templates/parts/customize-email.php:24
2951
  #: core/templates/parts/customize-multi-line-text.php:24
2952
  #: core/templates/parts/customize-number.php:24
2953
- #: core/templates/parts/customize-radio.php:22
2954
- #: core/templates/parts/customize-radio.php:123
2955
  #: core/templates/parts/customize-select.php:23
2956
  #: core/templates/parts/customize-single-line-text.php:24
2957
- msgid "Description"
2958
- msgstr ""
2959
-
2960
- #: core/templates/parts/customize-checkbox.php:26
2961
- #: core/templates/parts/customize-email.php:28
2962
- #: core/templates/parts/customize-multi-line-text.php:28
2963
- #: core/templates/parts/customize-number.php:28
2964
- #: core/templates/parts/customize-radio.php:26
2965
- #: core/templates/parts/customize-select.php:27
2966
- #: core/templates/parts/customize-single-line-text.php:28
2967
- msgid "Description appearance"
2968
- msgstr ""
2969
-
2970
- #: core/templates/parts/customize-checkbox.php:28
2971
- #: core/templates/parts/customize-email.php:30
2972
- #: core/templates/parts/customize-multi-line-text.php:30
2973
- #: core/templates/parts/customize-number.php:30
2974
- #: core/templates/parts/customize-radio.php:28
2975
- #: core/templates/parts/customize-select.php:29
2976
- #: core/templates/parts/customize-single-line-text.php:30
2977
  msgid "Standard"
2978
  msgstr ""
2979
 
2980
- #: core/templates/parts/customize-checkbox.php:29
2981
- #: core/templates/parts/customize-email.php:32
2982
- #: core/templates/parts/customize-multi-line-text.php:32
2983
- #: core/templates/parts/customize-number.php:32
2984
- #: core/templates/parts/customize-radio.php:29
2985
- #: core/templates/parts/customize-select.php:30
2986
- #: core/templates/parts/customize-single-line-text.php:32
2987
  msgid "Tooltip"
2988
  msgstr ""
2989
 
2990
- #: core/templates/parts/customize-checkbox.php:38
2991
- #: core/templates/parts/customize-radio.php:38
2992
- #: core/templates/parts/customize-select.php:43
 
 
 
 
 
 
 
 
 
2993
  msgid "No choices added yet. Add one by clicking <i>Add Choice</i> below."
2994
  msgstr ""
2995
 
2996
- #: core/templates/parts/customize-checkbox.php:42
2997
- #: core/templates/parts/customize-radio.php:42
2998
- #: core/templates/parts/customize-select.php:47
2999
  msgid "Type or paste your choices here, adding each on a new line."
3000
  msgstr ""
3001
 
3002
- #: core/templates/parts/customize-checkbox.php:45
3003
- #: core/templates/parts/customize-radio.php:45
3004
- #: core/templates/parts/customize-select.php:50
3005
  msgid "Add choice"
3006
  msgstr ""
3007
 
3008
- #: core/templates/parts/customize-checkbox.php:47
3009
- #: core/templates/parts/customize-radio.php:47
3010
- #: core/templates/parts/customize-select.php:52
3011
  msgid "Or, bulk add choices"
3012
  msgstr ""
3013
 
3014
- #: core/templates/parts/customize-checkbox.php:51
3015
- #: core/templates/parts/customize-radio.php:51
3016
- #: core/templates/parts/customize-select.php:56
3017
  msgid "Add choices"
3018
  msgstr ""
3019
 
3020
- #: core/templates/parts/customize-checkbox.php:53
3021
- #: core/templates/parts/customize-radio.php:53
3022
- #: core/templates/parts/customize-select.php:58
3023
  msgid "Cancel"
3024
  msgstr ""
3025
 
3026
- #: core/templates/parts/customize-checkbox.php:58
3027
- #: core/templates/parts/customize-email.php:44
3028
- #: core/templates/parts/customize-multi-line-text.php:44
3029
- #: core/templates/parts/customize-number.php:54
3030
- #: core/templates/parts/customize-radio.php:58
3031
- #: core/templates/parts/customize-select.php:63
3032
- #: core/templates/parts/customize-single-line-text.php:44
3033
  msgid "This is required"
3034
  msgstr ""
3035
 
3036
- #: core/templates/parts/customize-checkbox.php:69
3037
- msgid "Show select all option"
3038
  msgstr ""
3039
 
3040
- #: core/templates/parts/customize-checkbox.php:73
3041
- #: core/templates/parts/customize-radio.php:68
3042
- msgid "Align choices"
3043
  msgstr ""
3044
 
3045
- #: core/templates/parts/customize-checkbox.php:75
3046
- #: core/templates/parts/customize-radio.php:70
3047
  msgid "Horizontal"
3048
  msgstr ""
3049
 
3050
- #: core/templates/parts/customize-checkbox.php:76
3051
- #: core/templates/parts/customize-radio.php:71
3052
  msgid "Vertical"
3053
  msgstr ""
3054
 
3055
- #: core/templates/parts/customize-checkbox.php:80
3056
- #: core/templates/parts/customize-radio.php:75
3057
  msgid "Choices width"
3058
  msgstr ""
3059
 
3060
- #: core/templates/parts/customize-checkbox.php:82
3061
- #: core/templates/parts/customize-checkbox.php:91
3062
- #: core/templates/parts/customize-email.php:56
3063
- #: core/templates/parts/customize-multi-line-text.php:68
3064
- #: core/templates/parts/customize-number.php:87
3065
- #: core/templates/parts/customize-radio.php:77
3066
- #: core/templates/parts/customize-radio.php:86
3067
- #: core/templates/parts/customize-select.php:80
3068
- #: core/templates/parts/customize-single-line-text.php:61
3069
  msgid "Full"
3070
  msgstr ""
3071
 
3072
- #: core/templates/parts/customize-checkbox.php:83
3073
- #: core/templates/parts/customize-checkbox.php:92
3074
- #: core/templates/parts/customize-email.php:57
3075
- #: core/templates/parts/customize-multi-line-text.php:69
3076
- #: core/templates/parts/customize-number.php:88
3077
- #: core/templates/parts/customize-radio.php:78
3078
- #: core/templates/parts/customize-radio.php:87
3079
- #: core/templates/parts/customize-select.php:81
3080
- #: core/templates/parts/customize-single-line-text.php:62
3081
  msgid "Half"
3082
  msgstr ""
3083
 
3084
- #: core/templates/parts/customize-checkbox.php:84
3085
- #: core/templates/parts/customize-checkbox.php:93
3086
- #: core/templates/parts/customize-email.php:58
3087
- #: core/templates/parts/customize-multi-line-text.php:70
3088
- #: core/templates/parts/customize-number.php:89
3089
- #: core/templates/parts/customize-radio.php:79
3090
- #: core/templates/parts/customize-radio.php:88
3091
- #: core/templates/parts/customize-select.php:82
3092
- #: core/templates/parts/customize-single-line-text.php:63
3093
  msgid "Third"
3094
  msgstr ""
3095
 
3096
- #: core/templates/parts/customize-checkbox.php:85
3097
- #: core/templates/parts/customize-checkbox.php:94
3098
- #: core/templates/parts/customize-email.php:59
3099
- #: core/templates/parts/customize-multi-line-text.php:71
3100
- #: core/templates/parts/customize-number.php:90
3101
- #: core/templates/parts/customize-radio.php:80
3102
- #: core/templates/parts/customize-radio.php:89
3103
- #: core/templates/parts/customize-select.php:83
3104
- #: core/templates/parts/customize-single-line-text.php:64
3105
  msgid "Auto"
3106
  msgstr ""
3107
 
3108
- #: core/templates/parts/customize-checkbox.php:106
3109
- #: core/templates/parts/customize-email.php:85
3110
- #: core/templates/parts/customize-multi-line-text.php:83
3111
- #: core/templates/parts/customize-number.php:99
3112
- #: core/templates/parts/customize-radio.php:98
3113
- #: core/templates/parts/customize-select.php:95
3114
- #: core/templates/parts/customize-single-line-text.php:76
3115
- msgid "Custom CSS class"
3116
  msgstr ""
3117
 
3118
- #: core/templates/parts/customize-checkbox.php:124
3119
- #: core/templates/parts/customize-radio.php:118
3120
- #: core/templates/parts/customize-select.php:113
3121
- msgid "Label"
 
 
 
 
3122
  msgstr ""
3123
 
3124
- #: core/templates/parts/customize-checkbox.php:133
3125
  msgid "Checked by default"
3126
  msgstr ""
3127
 
3128
- #: core/templates/parts/customize-checkbox.php:138
3129
- #: core/templates/parts/customize-radio.php:132
3130
- #: core/templates/parts/customize-select.php:123
3131
- msgid "Advanced"
3132
  msgstr ""
3133
 
3134
  #: core/templates/parts/customize-email.php:13
 
3135
  #: core/templates/parts/customize-number.php:13
3136
  #: core/templates/parts/customize-single-line-text.php:13
3137
- msgid "Inside input"
3138
- msgstr ""
3139
-
3140
- #: core/templates/parts/customize-email.php:14
3141
- #: core/templates/parts/customize-multi-line-text.php:14
3142
- #: core/templates/parts/customize-number.php:14
3143
- #: core/templates/parts/customize-select.php:13
3144
- #: core/templates/parts/customize-single-line-text.php:14
3145
- msgid "Display as placeholder"
3146
  msgstr ""
3147
 
3148
- #: core/templates/parts/customize-email.php:31
3149
- #: core/templates/parts/customize-multi-line-text.php:31
3150
- #: core/templates/parts/customize-number.php:31
3151
- #: core/templates/parts/customize-single-line-text.php:31
3152
  msgid "Reveal on focus"
3153
  msgstr ""
3154
 
3155
- #: core/templates/parts/customize-email.php:69
3156
  msgid "Suggest common email domains"
3157
  msgstr ""
3158
 
3159
- #: core/templates/parts/customize-email.php:74
3160
- #: core/templates/parts/customize-number.php:104
3161
- msgid "Require confirmation of the value"
3162
- msgstr ""
3163
-
3164
- #: core/templates/parts/customize-email.php:78
3165
- #: core/templates/parts/customize-number.php:108
3166
- msgid "Confirmation field title"
3167
- msgstr ""
3168
-
3169
- #: core/templates/parts/customize-multi-line-text.php:13
3170
- msgid "Inside"
3171
  msgstr ""
3172
 
3173
- #: core/templates/parts/customize-multi-line-text.php:54
3174
  msgid "Limit words/characters"
3175
  msgstr ""
3176
 
3177
- #: core/templates/parts/customize-multi-line-text.php:58
3178
  msgid "Words (max)"
3179
  msgstr ""
3180
 
3181
- #: core/templates/parts/customize-multi-line-text.php:59
3182
  msgid "Words (min)"
3183
  msgstr ""
3184
 
3185
- #: core/templates/parts/customize-multi-line-text.php:60
3186
  msgid "Characters (max)"
3187
  msgstr ""
3188
 
3189
- #: core/templates/parts/customize-multi-line-text.php:61
3190
  msgid "Characters (min)"
3191
  msgstr ""
3192
 
3193
- #: core/templates/parts/customize-number.php:44
3194
  msgid "Min value"
3195
  msgstr ""
3196
 
3197
- #: core/templates/parts/customize-number.php:48
3198
  msgid "Max value"
3199
  msgstr ""
3200
 
3201
- #: core/templates/parts/customize-number.php:65
3202
- msgid "Format"
3203
  msgstr ""
3204
 
3205
- #: core/templates/parts/customize-number.php:70
3206
- msgid "Thousands separator"
3207
  msgstr ""
3208
 
3209
- #: core/templates/parts/customize-number.php:74
3210
- msgid "Decimal<br>separator"
3211
  msgstr ""
3212
 
3213
- #: core/templates/parts/customize-number.php:80
3214
  msgid "Prefix"
3215
  msgstr ""
3216
 
3217
- #: core/templates/parts/customize-radio.php:127
3218
- #: core/templates/parts/customize-select.php:118
3219
  msgid "Make this option default"
3220
  msgstr ""
3221
 
3222
- #: core/templates/parts/customize-select.php:74
3223
  msgid "Make searchable"
3224
  msgstr ""
3225
 
3226
- #: core/templates/parts/customize-single-line-text.php:55
3227
- msgid "Use value as email subject"
3228
  msgstr ""
3229
 
3230
  #: core/templates/parts/frontend-checkbox.php:13
@@ -3235,175 +3223,165 @@ msgstr ""
3235
  msgid "Click to edit this part."
3236
  msgstr ""
3237
 
3238
- #: inc/classes/class-happyforms.php:83
3239
- msgid "Include mark and reply link"
3240
- msgstr ""
3241
-
3242
- #: inc/classes/class-happyforms.php:84
3243
- msgid "Reply to your users and mark their submission as read in one click."
3244
- msgstr ""
3245
-
3246
- #: inc/classes/class-happyforms.php:90
3247
- msgid "Link to attachments in email"
3248
- msgstr ""
3249
-
3250
- #: inc/classes/class-happyforms.php:91
3251
- msgid "Show attachments as links instead of a simple counter."
3252
- msgstr ""
3253
-
3254
- #: inc/classes/class-happyforms.php:97
3255
- msgid "Hide Placeholder parts in email"
3256
- msgstr ""
3257
-
3258
- #: inc/classes/class-happyforms.php:103
3259
- msgid "Include referral link"
3260
- msgstr ""
3261
-
3262
- #: inc/classes/class-happyforms.php:104
3263
- msgid "Include the page link your form was submitted from."
3264
- msgstr ""
3265
-
3266
- #: inc/classes/class-happyforms.php:110
3267
  msgid "Redirect on complete"
3268
  msgstr ""
3269
 
3270
- #: inc/classes/class-happyforms.php:111
3271
  msgid ""
3272
  "By default, recipients will be redirected to the post or page displaying "
3273
  "this form. To set a custom redirect webpage, add a link here."
3274
  msgstr ""
3275
 
3276
- #: inc/classes/class-happyforms.php:117
3277
- msgid "Track goal link"
3278
- msgstr ""
3279
-
3280
- #: inc/classes/class-happyforms.php:118
3281
- msgid ""
3282
- "Track recipients landing on this internal page after successfully "
3283
- "submitting this form."
3284
- msgstr ""
3285
-
3286
- #: inc/classes/class-happyforms.php:124
3287
  msgid "Use theme styles"
3288
  msgstr ""
3289
 
3290
- #: inc/classes/class-happyforms.php:125
3291
  msgid "Inherit theme default styles instead of using HappyForms styles."
3292
  msgstr ""
3293
 
3294
- #: inc/classes/class-happyforms.php:131
3295
  msgid "Shuffle parts"
3296
  msgstr ""
3297
 
3298
- #: inc/classes/class-happyforms.php:132
3299
  msgid "Shuffle the order of all form parts to avoid biases in your responses."
3300
  msgstr ""
3301
 
3302
- #: inc/classes/class-happyforms.php:139
3303
- msgid ""
3304
- "Use <a href=\"%s\" target=\"_blank\" class=\"external\"> Google "
3305
- "ReCaptcha</a>"
3306
  msgstr ""
3307
 
3308
- #: inc/classes/class-happyforms.php:142
3309
  msgid "Protect your form against bots using your Google ReCaptcha credentials."
3310
  msgstr ""
3311
 
3312
- #: inc/classes/class-happyforms.php:148
3313
  msgid "Require password"
3314
  msgstr ""
3315
 
3316
- #: inc/classes/class-happyforms.php:149
3317
  msgid "Only users with password will be able to view and submit the form."
3318
  msgstr ""
3319
 
3320
- #: inc/classes/class-happyforms.php:155
3321
  msgid "Open in overlay window"
3322
  msgstr ""
3323
 
3324
- #: inc/classes/class-happyforms.php:156
3325
  msgid "Generate a link that can be clicked to open an overlay window for this form."
3326
  msgstr ""
3327
 
3328
- #: inc/classes/class-happyforms.php:162
3329
- msgid "Save responses"
3330
  msgstr ""
3331
 
3332
- #: inc/classes/class-happyforms.php:163
3333
  msgid "Keep recipients responses stored in your WordPress database."
3334
  msgstr ""
3335
 
3336
- #: inc/classes/class-happyforms.php:170
3337
- msgid "Save abandoned responses"
3338
  msgstr ""
3339
 
3340
- #: inc/classes/class-happyforms.php:171
3341
  msgid "Keep incomplete recipients responses stored in your WordPress database."
3342
  msgstr ""
3343
 
3344
- #: inc/classes/class-happyforms.php:177
3345
- msgid "Give each response an ID number"
3346
  msgstr ""
3347
 
3348
- #: inc/classes/class-happyforms.php:178
3349
  msgid "Tag responses with a unique, incremental identifier."
3350
  msgstr ""
3351
 
3352
- #: inc/classes/class-happyforms.php:184
3353
  msgid "Preview values before submission"
3354
  msgstr ""
3355
 
3356
- #: inc/classes/class-happyforms.php:185
3357
  msgid "Let your users review their submission before confirming it."
3358
  msgstr ""
3359
 
3360
- #: inc/classes/class-happyforms.php:191
3361
  msgid "Fade submit button until valid"
3362
  msgstr ""
3363
 
3364
- #: inc/classes/class-happyforms.php:192
3365
  msgid ""
3366
  "Reduce the opacity of the submit button until all required form parts are "
3367
  "valid."
3368
  msgstr ""
3369
 
3370
- #: inc/classes/class-happyforms.php:198
3371
- msgid "Limit responses"
3372
  msgstr ""
3373
 
3374
- #: inc/classes/class-happyforms.php:199
3375
  msgid "Set limit on number of allowed form submission in general or per user."
3376
  msgstr ""
3377
 
3378
- #: inc/classes/class-happyforms.php:205
3379
  msgid "Schedule visibility"
3380
  msgstr ""
3381
 
3382
- #: inc/classes/class-happyforms.php:206
3383
  msgid ""
3384
  "Show or hide this form during a chosen time and day. Go to Settings > "
3385
  "Timezone to set your city offset."
3386
  msgstr ""
3387
 
3388
- #: inc/classes/class-happyforms.php:231
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3389
  msgid "HappyForms Upgrade"
3390
  msgstr ""
3391
 
3392
- #: inc/classes/class-happyforms.php:346
3393
- msgid ""
3394
- "<p><strong>Important changes to HappyForms</strong></p><p>We want to "
3395
- "continue developing the free HappyForms plugin, but we can't do this "
3396
- "without the support of more paying customers. So, starting with HappyForms "
3397
- "1.8.11, we've transitioned the following features to the paid plugin: "
3398
- "Scale, Rating, Story, Website Link, Table, Phone, Date & Time, Address, "
3399
- "Title, Legal, Placeholder and Text Editor form parts along with redirects, "
3400
- "submit button fade, reCAPTCHA and response reviews.</p><p>If you're using "
3401
- "these parts and features in your forms, they will be removed from the free "
3402
- "plugin with this release. Please review all your existing forms for "
3403
- "changes.</p>"
3404
- msgstr ""
3405
-
3406
- #: inc/classes/class-happyforms.php:374
3407
  msgid ""
3408
  "<p>Can we ask a favor?</p><p>You created your first form %s days ago — how "
3409
  "time flies! Since then, we’ve answered hundreds of community emails and "
@@ -3416,7 +3394,7 @@ msgid ""
3416
  "plan</a>.</p>"
3417
  msgstr ""
3418
 
3419
- #: inc/classes/class-message-controller.php:610
3420
  #: inc/templates/email-owner.php:31
3421
  msgid "Tracking number"
3422
  msgstr ""
2
  # This file is distributed under the same license as the HappyForms package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: HappyForms 1.9.0\n"
6
  "Report-Msgid-Bugs-To: https://thethemefoundry.com/support/\n"
7
+ "POT-Creation-Date: 2019-12-19 13:46:13+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
29
  msgid "Discover HappyForms Upgrade"
30
  msgstr ""
31
 
32
+ #: core/classes/class-block.php:107 core/classes/parts/class-part-select.php:47
33
  msgid "Select"
34
  msgstr ""
35
 
45
  msgid "Edit Form"
46
  msgstr ""
47
 
48
+ #: core/classes/class-form-admin.php:154
49
+ #: core/classes/class-form-controller.php:80
50
  msgid "View form"
51
  msgstr ""
52
 
53
+ #: core/classes/class-form-admin.php:159
54
  msgid "Preview form"
55
  msgstr ""
56
 
57
+ #: core/classes/class-form-admin.php:164 core/classes/class-form-admin.php:167
58
  msgid "Form updated."
59
  msgstr ""
60
 
61
+ #: core/classes/class-form-admin.php:165
62
  msgid "Custom field updated."
63
  msgstr ""
64
 
65
+ #: core/classes/class-form-admin.php:166
66
  msgid "Custom field deleted."
67
  msgstr ""
68
 
69
+ #: core/classes/class-form-admin.php:168
70
  msgid "Form restored to revision from %s."
71
  msgstr ""
72
 
73
+ #: core/classes/class-form-admin.php:169
74
  msgid "Form published."
75
  msgstr ""
76
 
77
+ #: core/classes/class-form-admin.php:170
78
  msgid "Form saved."
79
  msgstr ""
80
 
81
+ #: core/classes/class-form-admin.php:171
82
  msgid "Form submitted."
83
  msgstr ""
84
 
85
+ #: core/classes/class-form-admin.php:172
86
  msgid "Form scheduled."
87
  msgstr ""
88
 
89
+ #: core/classes/class-form-admin.php:173
90
  msgid "Form draft updated."
91
  msgstr ""
92
 
93
+ #: core/classes/class-form-admin.php:196
94
  msgid "%s form updated."
95
  msgid_plural "%s forms updated."
96
  msgstr[0] ""
97
  msgstr[1] ""
98
 
99
+ #: core/classes/class-form-admin.php:197
100
  msgid "%s form not updated, somebody is editing it."
101
  msgid_plural "%s forms not updated, somebody is editing them."
102
  msgstr[0] ""
103
  msgstr[1] ""
104
 
105
+ #: core/classes/class-form-admin.php:198
106
  msgid "%s form permanently deleted."
107
  msgid_plural "%s forms permanently deleted."
108
  msgstr[0] ""
109
  msgstr[1] ""
110
 
111
+ #: core/classes/class-form-admin.php:199
112
  msgid "%s form moved to the Trash."
113
  msgid_plural "%s forms moved to the Trash."
114
  msgstr[0] ""
115
  msgstr[1] ""
116
 
117
+ #: core/classes/class-form-admin.php:200
118
  msgid "%s form restored from the Trash."
119
  msgid_plural "%s forms restored from the Trash."
120
  msgstr[0] ""
121
  msgstr[1] ""
122
 
123
+ #: core/classes/class-form-admin.php:243
124
  msgid "Shortcode"
125
  msgstr ""
126
 
127
+ #: core/classes/class-form-admin.php:244
128
  msgid "Author"
129
  msgstr ""
130
 
131
+ #: core/classes/class-form-admin.php:282
132
  msgid "Copy to clipboard"
133
  msgstr ""
134
 
135
+ #: core/classes/class-form-admin.php:323
136
  msgid "Edit"
137
  msgstr ""
138
 
139
+ #: core/classes/class-form-admin.php:327
140
  #: core/templates/customize-form-item.php:27
141
  #: core/templates/customize-form-part-footer.php:4
142
  msgid "Duplicate"
143
  msgstr ""
144
 
145
+ #: core/classes/class-form-admin.php:331
146
  msgid "Trash"
147
  msgstr ""
148
 
149
+ #: core/classes/class-form-admin.php:375
150
+ msgid "1 form duplicated."
151
+ msgstr ""
152
+
153
+ #: core/classes/class-form-admin.php:377
154
+ msgid "Undo"
155
  msgstr ""
156
 
157
  #: core/classes/class-form-controller.php:74
163
  msgstr ""
164
 
165
  #: core/classes/class-form-controller.php:76
166
+ #: core/classes/class-happyforms-core.php:182
167
+ #: core/classes/class-happyforms-core.php:183
168
+ msgid "Add New"
169
  msgstr ""
170
 
171
  #: core/classes/class-form-controller.php:77
172
+ #: core/classes/class-form-controller.php:79
173
+ msgid "Build form"
174
+ msgstr ""
175
+
176
+ #: core/classes/class-form-controller.php:78
177
  msgid "Edit form"
178
  msgstr ""
179
 
180
+ #: core/classes/class-form-controller.php:81
181
  msgid "View forms"
182
  msgstr ""
183
 
184
+ #: core/classes/class-form-controller.php:82
185
  msgid "Search Forms"
186
  msgstr ""
187
 
188
+ #: core/classes/class-form-controller.php:83
189
  msgid "No forms found."
190
  msgstr ""
191
 
192
+ #: core/classes/class-form-controller.php:84
193
  msgid "No forms found in Trash"
194
  msgstr ""
195
 
 
196
  #: core/classes/class-form-controller.php:85
197
+ #: core/classes/class-form-controller.php:86
198
  #: core/classes/class-happyforms-core.php:174
199
+ #: core/classes/class-happyforms-core.php:175
200
  msgid "All Forms"
201
  msgstr ""
202
 
203
+ #: core/classes/class-form-controller.php:531
204
+ msgid "(no title)"
205
  msgstr ""
206
 
207
+ #: core/classes/class-form-controller.php:619
208
  msgid " Copy"
209
  msgstr ""
210
 
211
+ #: core/classes/class-form-email.php:43
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
212
  msgid "You received a new message"
213
  msgstr ""
214
 
215
+ #: core/classes/class-form-email.php:63
216
  msgid "We received your message"
217
  msgstr ""
218
 
219
+ #: core/classes/class-form-email.php:67
220
  msgid ""
221
  "Your message has been successfully sent. We appreciate you contacting us "
222
  "and we’ll be in touch soon."
223
  msgstr ""
224
 
225
+ #: core/classes/class-form-email.php:83
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
226
  msgid "Receive submission alerts"
227
  msgstr ""
228
 
229
+ #: core/classes/class-form-email.php:92 core/classes/class-form-email.php:122
230
+ #: core/templates/admin-tracking.php:15
231
  msgid "Email address"
232
  msgstr ""
233
 
234
+ #: core/classes/class-form-email.php:93
235
  msgid ""
236
  "Add your email address here to receive a confirmation email for each form "
237
  "response. You can add multiple email addresses by separating each address "
238
  "with a comma."
239
  msgstr ""
240
 
241
+ #: core/classes/class-form-email.php:98
242
  msgid "Email Bcc address"
243
  msgstr ""
244
 
245
+ #: core/classes/class-form-email.php:99
246
  msgid ""
247
  "Add your Bcc email address here to receive a confirmation email for each "
248
  "form response without appearing in the received message header. You can "
249
  "add multiple email addresses by separating each address with a comma."
250
  msgstr ""
251
 
252
+ #: core/classes/class-form-email.php:104 core/classes/class-form-email.php:138
253
  msgid "Email subject"
254
  msgstr ""
255
 
256
+ #: core/classes/class-form-email.php:105
257
  msgid ""
258
  "Each time a user submits a message, you'll receive an email with this "
259
  "subject."
260
  msgstr ""
261
 
262
+ #: core/classes/class-form-email.php:113
263
  msgid "Send confirmation email"
264
  msgstr ""
265
 
266
+ #: core/classes/class-form-email.php:127
267
+ msgid "Reply email address"
268
+ msgstr ""
269
+
270
+ #: core/classes/class-form-email.php:132
271
  msgid "Email display name"
272
  msgstr ""
273
 
274
+ #: core/classes/class-form-email.php:133
275
  msgid ""
276
  "If your form contains an email field, recipients will receive an email with "
277
  "this sender name."
278
  msgstr ""
279
 
280
+ #: core/classes/class-form-email.php:139
281
  msgid ""
282
  "If your form contains an email field, recipients will receive an email with "
283
  "this subject."
284
  msgstr ""
285
 
286
+ #: core/classes/class-form-email.php:144
287
  msgid "Email content"
288
  msgstr ""
289
 
290
+ #: core/classes/class-form-email.php:145
291
  msgid ""
292
  "If your form contains an email field, recipients will receive an email with "
293
  "this content."
294
  msgstr ""
295
 
296
+ #: core/classes/class-form-email.php:150
297
  msgid "Include submitted values"
298
  msgstr ""
299
 
300
+ #: core/classes/class-form-part-library.php:185
301
+ msgid "Invalid data"
302
+ msgstr ""
303
+
304
+ #: core/classes/class-form-part-library.php:192
305
+ msgid "Part definition not found"
306
+ msgstr ""
307
+
308
+ #: core/classes/class-form-part-library.php:223
309
+ msgid "Missing validation callback for field %s"
310
+ msgstr ""
311
+
312
+ #: core/classes/class-form-setup.php:51
313
+ msgid "Thank you! Your response has been successfully submitted."
314
+ msgstr ""
315
+
316
+ #: core/classes/class-form-setup.php:55
317
+ msgid "Oops! Your response is invalid — please review your message."
318
+ msgstr ""
319
+
320
+ #: core/classes/class-form-setup.php:75
321
+ msgid "This field is required."
322
+ msgstr ""
323
+
324
+ #: core/classes/class-form-setup.php:79
325
+ msgid "(optional)"
326
+ msgstr ""
327
+
328
+ #: core/classes/class-form-setup.php:83
329
+ msgid "Send"
330
+ msgstr ""
331
+
332
+ #: core/classes/class-form-setup.php:107
333
+ msgid "Validate your submission"
334
+ msgstr ""
335
+
336
+ #: core/classes/class-form-setup.php:115
337
+ msgid "Review submission"
338
+ msgstr ""
339
+
340
+ #: core/classes/class-form-setup.php:163
341
+ msgid "Confirmation message"
342
+ msgstr ""
343
+
344
+ #: core/classes/class-form-setup.php:164
345
+ msgid ""
346
+ "This is the message your users will see after succesfully submitting your "
347
+ "form."
348
+ msgstr ""
349
+
350
+ #: core/classes/class-form-setup.php:169
351
+ msgid "Error message"
352
+ msgstr ""
353
+
354
+ #: core/classes/class-form-setup.php:170
355
+ msgid ""
356
+ "This is the message your users will see when there are form errors "
357
+ "preventing submission."
358
+ msgstr ""
359
+
360
+ #: core/classes/class-form-setup.php:175
361
  msgid "Required part label"
362
  msgstr ""
363
 
364
+ #: core/classes/class-form-setup.php:176
365
+ msgid ""
366
+ "This is the message your users will see when the required field is left "
367
+ "empty."
368
+ msgstr ""
369
+
370
+ #: core/classes/class-form-setup.php:181
371
  msgid "Optional part label"
372
  msgstr ""
373
 
374
+ #: core/classes/class-form-setup.php:182
375
+ msgid ""
376
+ "Mark optional parts in your form to let your users distinguish them from "
377
+ "required parts."
378
+ msgstr ""
379
+
380
+ #: core/classes/class-form-setup.php:187
381
  msgid "Submit button label"
382
  msgstr ""
383
 
384
+ #: core/classes/class-form-setup.php:188
385
+ msgid "Change text of submit button to describe an action your form performs."
386
  msgstr ""
387
 
388
+ #: core/classes/class-form-setup.php:193
389
+ msgid "Submit button CSS classes"
390
  msgstr ""
391
 
392
+ #: core/classes/class-form-setup.php:194
393
+ msgid ""
394
+ "Add custom CSS classes separated by space for targeting a button in your "
395
+ "stylesheet."
396
  msgstr ""
397
 
398
+ #: core/classes/class-form-setup.php:199
399
  msgid "Form HTML ID"
400
  msgstr ""
401
 
402
+ #: core/classes/class-form-setup.php:201
403
+ msgid "Add a unique HTML ID to your form. Write without a hash (#) character."
404
+ msgstr ""
405
+
406
+ #: core/classes/class-form-setup.php:205
407
+ msgid "Hide form after completion"
408
  msgstr ""
409
 
410
+ #: core/classes/class-form-setup.php:206
411
  msgid ""
412
  "Hide all form parts and display just title and confirmation message on "
413
  "submit."
414
  msgstr ""
415
 
416
+ #: core/classes/class-form-setup.php:211
417
  msgid "Spam prevention"
418
  msgstr ""
419
 
420
+ #: core/classes/class-form-setup.php:212
421
  msgid "Protect your form against bots by using HoneyPot security."
422
  msgstr ""
423
 
429
  msgid "Right-to-left"
430
  msgstr ""
431
 
432
+ #: core/classes/class-form-styles.php:68 core/classes/class-form-styles.php:142
433
+ #: core/classes/class-form-styles.php:152
434
+ #: core/classes/class-form-styles.php:255
435
+ #: core/classes/class-form-styles.php:265
436
  msgid "Default"
437
  msgstr ""
438
 
439
+ #: core/classes/class-form-styles.php:69 core/classes/class-form-styles.php:141
440
+ #: core/classes/class-form-styles.php:151
441
+ #: core/classes/class-form-styles.php:264
442
  msgid "Narrow"
443
  msgstr ""
444
 
445
+ #: core/classes/class-form-styles.php:70 core/classes/class-form-styles.php:143
446
+ #: core/classes/class-form-styles.php:153
447
+ #: core/classes/class-form-styles.php:266
448
  msgid "Wide"
449
  msgstr ""
450
 
451
+ #: core/classes/class-form-styles.php:84 core/classes/class-form-styles.php:113
452
+ #: core/classes/class-form-styles.php:236
453
  msgid "Show"
454
  msgstr ""
455
 
456
+ #: core/classes/class-form-styles.php:85 core/classes/class-form-styles.php:114
457
+ #: core/classes/class-form-styles.php:237
458
  msgid "Hide"
459
  msgstr ""
460
 
461
+ #: core/classes/class-form-styles.php:93 core/classes/class-form-styles.php:167
462
+ #: core/classes/class-form-styles.php:196
463
+ #: core/classes/class-form-styles.php:216
464
+ #: core/classes/class-form-styles.php:293
465
+ #: core/templates/parts/customize-checkbox.php:12
466
+ #: core/templates/parts/customize-email.php:12
467
+ #: core/templates/parts/customize-multi-line-text.php:12
468
+ #: core/templates/parts/customize-number.php:12
469
+ #: core/templates/parts/customize-radio.php:12
470
+ #: core/templates/parts/customize-select.php:12
471
+ #: core/templates/parts/customize-single-line-text.php:12
472
  msgid "Left"
473
  msgstr ""
474
 
475
+ #: core/classes/class-form-styles.php:94 core/classes/class-form-styles.php:168
476
+ #: core/classes/class-form-styles.php:197
477
+ #: core/classes/class-form-styles.php:217
478
+ #: core/classes/class-form-styles.php:294
479
  msgid "Center"
480
  msgstr ""
481
 
482
+ #: core/classes/class-form-styles.php:95 core/classes/class-form-styles.php:169
483
+ #: core/classes/class-form-styles.php:198
484
+ #: core/classes/class-form-styles.php:218
485
+ #: core/classes/class-form-styles.php:295
486
  msgid "Right"
487
  msgstr ""
488
 
489
+ #: core/classes/class-form-styles.php:122
490
  msgid "All sides"
491
  msgstr ""
492
 
493
+ #: core/classes/class-form-styles.php:123
494
  msgid "Bottom only"
495
  msgstr ""
496
 
497
+ #: core/classes/class-form-styles.php:131
498
+ #: core/classes/class-form-styles.php:245
499
  msgid "Square"
500
  msgstr ""
501
 
502
+ #: core/classes/class-form-styles.php:132
503
+ #: core/classes/class-form-styles.php:246
504
  msgid "Round"
505
  msgstr ""
506
 
507
+ #: core/classes/class-form-styles.php:133
508
+ #: core/classes/class-form-styles.php:247
509
  msgid "Pill"
510
  msgstr ""
511
 
512
+ #: core/classes/class-form-styles.php:187
513
+ #: core/classes/class-form-styles.php:284
514
  msgid "Normal"
515
  msgstr ""
516
 
517
+ #: core/classes/class-form-styles.php:188
518
+ #: core/classes/class-form-styles.php:285
519
  msgid "Bold"
520
  msgstr ""
521
 
522
+ #: core/classes/class-form-styles.php:256
523
  msgid "Full width"
524
  msgstr ""
525
 
526
+ #: core/classes/class-form-styles.php:507
527
  msgid "Above form"
528
  msgstr ""
529
 
530
+ #: core/classes/class-form-styles.php:508
531
  msgid "Below form"
532
  msgstr ""
533
 
534
+ #: core/classes/class-form-styles.php:522
535
  msgid "General"
536
  msgstr ""
537
 
538
+ #: core/classes/class-form-styles.php:527
539
+ #: core/classes/class-form-styles.php:837
540
+ #: core/templates/parts/customize-checkbox.php:84
541
+ #: core/templates/parts/customize-email.php:64
542
+ #: core/templates/parts/customize-multi-line-text.php:58
543
+ #: core/templates/parts/customize-number.php:90
544
+ #: core/templates/parts/customize-radio.php:79
545
+ #: core/templates/parts/customize-select.php:72
546
+ #: core/templates/parts/customize-single-line-text.php:48
547
  msgid "Width"
548
  msgstr ""
549
 
550
+ #: core/classes/class-form-styles.php:532
551
+ #: core/classes/class-form-styles.php:842
552
  msgid "Padding"
553
  msgstr ""
554
 
555
+ #: core/classes/class-form-styles.php:537
556
  msgid "Direction"
557
  msgstr ""
558
 
559
+ #: core/classes/class-form-styles.php:542
560
  msgid "Display notices"
561
  msgstr ""
562
 
563
+ #: core/classes/class-form-styles.php:548
564
+ #: core/classes/class-form-styles.php:633
565
+ #: core/classes/class-form-styles.php:703
566
+ #: core/classes/class-form-styles.php:868
567
  msgid "Colors"
568
  msgstr ""
569
 
570
+ #: core/classes/class-form-styles.php:552
571
  msgid "Primary"
572
  msgstr ""
573
 
574
+ #: core/classes/class-form-styles.php:557
575
  msgid "Success notice"
576
  msgstr ""
577
 
578
+ #: core/classes/class-form-styles.php:562
579
  msgid "Success notice text"
580
  msgstr ""
581
 
582
+ #: core/classes/class-form-styles.php:567
583
  msgid "Error"
584
  msgstr ""
585
 
586
+ #: core/classes/class-form-styles.php:572
587
  msgid "Error notice"
588
  msgstr ""
589
 
590
+ #: core/classes/class-form-styles.php:577
591
  msgid "Error notice text"
592
  msgstr ""
593
 
594
+ #: core/classes/class-form-styles.php:582
595
+ #: core/classes/class-form-styles.php:707
596
  #: core/templates/customize-form-build.php:4
 
 
 
 
 
 
 
597
  #: inc/classes/parts/class-part-title-dummy.php:8
598
  msgid "Title"
599
  msgstr ""
600
 
601
+ #: core/classes/class-form-styles.php:587
602
  msgid "Display"
603
  msgstr ""
604
 
605
+ #: core/classes/class-form-styles.php:592
606
+ #: core/classes/class-form-styles.php:857
607
  msgid "Alignment"
608
  msgstr ""
609
 
610
+ #: core/classes/class-form-styles.php:597
611
+ #: core/classes/class-form-styles.php:847
612
  msgid "Font size"
613
  msgstr ""
614
 
615
+ #: core/classes/class-form-styles.php:602
616
  msgid "Part borders & spacing"
617
  msgstr ""
618
 
619
+ #: core/classes/class-form-styles.php:607
620
+ #: core/classes/class-form-styles.php:637
621
+ #: core/classes/class-form-styles.php:827
622
+ #: core/classes/class-form-styles.php:882
623
  msgid "Border"
624
  msgstr ""
625
 
626
+ #: core/classes/class-form-styles.php:612
627
  msgid "Border location"
628
  msgstr ""
629
 
630
+ #: core/classes/class-form-styles.php:617
631
+ #: core/classes/class-form-styles.php:832
632
  msgid "Border radius"
633
  msgstr ""
634
 
635
+ #: core/classes/class-form-styles.php:622
636
  msgid "Outer spacing"
637
  msgstr ""
638
 
639
+ #: core/classes/class-form-styles.php:627
640
  msgid "Inner spacing"
641
  msgstr ""
642
 
643
+ #: core/classes/class-form-styles.php:642
644
  msgid "Border on focus"
645
  msgstr ""
646
 
647
+ #: core/classes/class-form-styles.php:647
648
+ #: core/classes/class-form-styles.php:732
649
+ #: core/classes/class-form-styles.php:757
650
+ #: core/classes/class-form-styles.php:872
651
  msgid "Background"
652
  msgstr ""
653
 
654
+ #: core/classes/class-form-styles.php:652
655
+ #: core/classes/class-form-styles.php:742
656
+ #: core/classes/class-form-styles.php:762
657
+ #: core/classes/class-form-styles.php:877
658
  msgid "Background on focus"
659
  msgstr ""
660
 
661
+ #: core/classes/class-form-styles.php:657
662
  msgid "Part labels & text"
663
  msgstr ""
664
 
665
+ #: core/classes/class-form-styles.php:662
666
  msgid "Toggle placeholder on part focus"
667
  msgstr ""
668
 
669
+ #: core/classes/class-form-styles.php:667
670
  msgid "Title alignment"
671
  msgstr ""
672
 
673
+ #: core/classes/class-form-styles.php:672
674
  msgid "Title font size"
675
  msgstr ""
676
 
677
+ #: core/classes/class-form-styles.php:677
678
  msgid "Title font weight"
679
  msgstr ""
680
 
681
+ #: core/classes/class-form-styles.php:682
682
  msgid "Description alignment"
683
  msgstr ""
684
 
685
+ #: core/classes/class-form-styles.php:687
686
  msgid "Description font size"
687
  msgstr ""
688
 
689
+ #: core/classes/class-form-styles.php:692
690
  msgid "Placeholder &amp; value alignment"
691
  msgstr ""
692
 
693
+ #: core/classes/class-form-styles.php:697
694
  msgid "Value font size"
695
  msgstr ""
696
 
697
+ #: core/classes/class-form-styles.php:712
698
  msgid "Value"
699
  msgstr ""
700
 
701
+ #: core/classes/class-form-styles.php:717
702
+ #: core/templates/parts/customize-email.php:30
703
+ #: core/templates/parts/customize-multi-line-text.php:30
704
+ #: core/templates/parts/customize-number.php:30
705
+ #: core/templates/parts/customize-select.php:28
706
+ #: core/templates/parts/customize-single-line-text.php:30
707
  #: inc/classes/parts/class-part-placeholder-dummy.php:8
708
  msgid "Placeholder"
709
  msgstr ""
710
 
711
+ #: core/classes/class-form-styles.php:722
712
  msgid "Dropdowns"
713
  msgstr ""
714
 
715
+ #: core/classes/class-form-styles.php:728
716
  msgid "Items"
717
  msgstr ""
718
 
719
+ #: core/classes/class-form-styles.php:737
720
+ #: core/classes/class-form-styles.php:887
 
 
721
  msgid "Text"
722
  msgstr ""
723
 
724
+ #: core/classes/class-form-styles.php:747
725
+ #: core/classes/class-form-styles.php:892
726
  msgid "Text focused"
727
  msgstr ""
728
 
729
+ #: core/classes/class-form-styles.php:752
730
  msgid "Checkboxes & Radios"
731
  msgstr ""
732
 
733
+ #: core/classes/class-form-styles.php:767
734
  msgid "Checkmark"
735
  msgstr ""
736
 
737
+ #: core/classes/class-form-styles.php:772
738
  #: inc/classes/parts/class-part-rating-dummy.php:8
739
  msgid "Rating"
740
  msgstr ""
741
 
742
+ #: core/classes/class-form-styles.php:777
743
  msgid "Rating star color"
744
  msgstr ""
745
 
746
+ #: core/classes/class-form-styles.php:782
747
  msgid "Rating star color on hover"
748
  msgstr ""
749
 
750
+ #: core/classes/class-form-styles.php:787
751
  msgid "Item background"
752
  msgstr ""
753
 
754
+ #: core/classes/class-form-styles.php:792
755
  msgid "Item background on hover"
756
  msgstr ""
757
 
758
+ #: core/classes/class-form-styles.php:797
759
  msgid "Tables"
760
  msgstr ""
761
 
762
+ #: core/classes/class-form-styles.php:802
763
  msgid "Odd row primary"
764
  msgstr ""
765
 
766
+ #: core/classes/class-form-styles.php:807
767
  msgid "Odd row secondary"
768
  msgstr ""
769
 
770
+ #: core/classes/class-form-styles.php:812
771
  msgid "Even row primary"
772
  msgstr ""
773
 
774
+ #: core/classes/class-form-styles.php:817
775
  msgid "Even row secondary"
776
  msgstr ""
777
 
778
+ #: core/classes/class-form-styles.php:822
779
  msgid "Submit button"
780
  msgstr ""
781
 
782
+ #: core/classes/class-form-styles.php:852
783
  msgid "Font weight"
784
  msgstr ""
785
 
786
+ #: core/classes/class-form-styles.php:862
787
  msgid "Make button a part of last input"
788
  msgstr ""
789
 
790
+ #: core/classes/class-happyforms-core.php:163
791
  msgid "HappyForms Index"
792
  msgstr ""
793
 
 
 
 
 
 
 
794
  #: core/classes/class-happyforms-core.php:190
795
+ #: core/classes/class-happyforms-core.php:191
796
  msgid "Activity"
797
  msgstr ""
798
 
 
799
  #: core/classes/class-happyforms-core.php:199
800
+ #: core/classes/class-happyforms-core.php:200
801
+ msgid "Settings"
802
  msgstr ""
803
 
 
804
  #: core/classes/class-happyforms-core.php:208
805
+ #: core/classes/class-happyforms-core.php:209
 
 
 
 
806
  msgid "Welcome"
807
  msgstr ""
808
 
809
+ #: core/classes/class-happyforms-core.php:431
810
  msgid "Insert HappyForm"
811
  msgstr ""
812
 
813
+ #: core/classes/class-happyforms-core.php:431
814
  msgid "Add HappyForms"
815
  msgstr ""
816
 
817
+ #: core/classes/class-happyforms-core.php:627
818
  msgid "Overview"
819
  msgstr ""
820
 
821
+ #: core/classes/class-happyforms-core.php:637
822
  msgid "Hey 👋 Welcome to your HappyForms Dashboard!"
823
  msgstr ""
824
 
825
+ #: core/classes/class-happyforms-core.php:640
826
  msgid ""
827
  "Are you looking for help? Well, we’ve swept the nacho crumbs from our "
828
  "keyboards, refilled our ginger beers and are ready to reply with answers! "
829
  "So, go on, email %s."
830
  msgstr ""
831
 
832
+ #: core/classes/class-happyforms-core.php:649
833
  msgid "For more help"
834
  msgstr ""
835
 
836
+ #: core/classes/class-happyforms-core.php:651
837
  msgid "Help guide"
838
  msgstr ""
839
 
946
  msgstr ""
947
 
948
  #: core/classes/parts/class-part-checkbox.php:39
949
+ #: core/classes/parts/class-part-email.php:31
950
+ #: core/classes/parts/class-part-email.php:55
951
+ #: core/classes/parts/class-part-multi-line-text.php:34
952
+ #: core/classes/parts/class-part-number.php:30
953
+ #: core/classes/parts/class-part-number.php:86
954
  #: core/classes/parts/class-part-radio.php:40
955
+ #: core/classes/parts/class-part-select.php:31
956
+ #: core/classes/parts/class-part-single-line-text.php:29
957
+ msgid "Untitled"
 
 
 
 
958
  msgstr ""
959
 
960
  #: core/classes/parts/class-part-checkbox.php:200
962
  msgstr ""
963
 
964
  #: core/classes/parts/class-part-email.php:8
965
+ #: core/templates/customize-form-steps.php:5
966
  msgid "Email"
967
  msgstr ""
968
 
970
  msgid "For formatted email addresses. The '@' symbol is required."
971
  msgstr ""
972
 
 
 
 
 
973
  #: core/classes/parts/class-part-email.php:160
974
  msgid "Not a valid e-mail address."
975
  msgstr ""
1013
  msgstr ""
1014
 
1015
  #: core/classes/parts/class-part-number.php:8
 
1016
  msgid "Number"
1017
  msgstr ""
1018
 
1020
  msgid "For numeric fields."
1021
  msgstr ""
1022
 
 
 
 
 
1023
  #: core/classes/parts/class-part-number.php:193
1024
  msgid "This field does not match minimum and maximum allowed value."
1025
  msgstr ""
1042
  msgstr ""
1043
 
1044
  #: core/classes/parts/class-part-select.php:8
 
1045
  msgid "Dropdown"
1046
  msgstr ""
1047
 
1102
  msgid "Spam protection, skip this field"
1103
  msgstr ""
1104
 
1105
+ #: core/helpers/helper-form-templates.php:927
1106
  msgid "Get my location"
1107
  msgstr ""
1108
 
1109
+ #: core/helpers/helper-form-templates.php:927
1110
  msgid "Fetching location…"
1111
  msgstr ""
1112
 
1113
+ #: core/helpers/helper-form-templates.php:937
1114
  msgid "January"
1115
  msgstr ""
1116
 
1117
+ #: core/helpers/helper-form-templates.php:938
1118
  msgid "February"
1119
  msgstr ""
1120
 
1121
+ #: core/helpers/helper-form-templates.php:939
1122
  msgid "March"
1123
  msgstr ""
1124
 
1125
+ #: core/helpers/helper-form-templates.php:940
1126
  msgid "April"
1127
  msgstr ""
1128
 
1129
+ #: core/helpers/helper-form-templates.php:941
1130
  msgid "May"
1131
  msgstr ""
1132
 
1133
+ #: core/helpers/helper-form-templates.php:942
1134
  msgid "June"
1135
  msgstr ""
1136
 
1137
+ #: core/helpers/helper-form-templates.php:943
1138
  msgid "July"
1139
  msgstr ""
1140
 
1141
+ #: core/helpers/helper-form-templates.php:944
1142
  msgid "August"
1143
  msgstr ""
1144
 
1145
+ #: core/helpers/helper-form-templates.php:945
1146
  msgid "September"
1147
  msgstr ""
1148
 
1149
+ #: core/helpers/helper-form-templates.php:946
1150
  msgid "October"
1151
  msgstr ""
1152
 
1153
+ #: core/helpers/helper-form-templates.php:947
1154
  msgid "November"
1155
  msgstr ""
1156
 
1157
+ #: core/helpers/helper-form-templates.php:948
1158
  msgid "December"
1159
  msgstr ""
1160
 
1161
+ #: core/helpers/helper-form-templates.php:989 core/helpers/helper-misc.php:218
1162
  msgid "Andorra"
1163
  msgstr ""
1164
 
1165
+ #: core/helpers/helper-form-templates.php:990 core/helpers/helper-misc.php:436
1166
  msgid "United Arab Emirates"
1167
  msgstr ""
1168
 
1169
+ #: core/helpers/helper-form-templates.php:991 core/helpers/helper-misc.php:214
1170
  msgid "Afghanistan"
1171
  msgstr ""
1172
 
1173
+ #: core/helpers/helper-form-templates.php:992 core/helpers/helper-misc.php:222
1174
  msgid "Antigua and Barbuda"
1175
  msgstr ""
1176
 
1177
+ #: core/helpers/helper-form-templates.php:993 core/helpers/helper-misc.php:220
1178
  msgid "Anguilla"
1179
  msgstr ""
1180
 
1181
+ #: core/helpers/helper-form-templates.php:994 core/helpers/helper-misc.php:215
1182
  msgid "Albania"
1183
  msgstr ""
1184
 
1185
+ #: core/helpers/helper-form-templates.php:995 core/helpers/helper-misc.php:224
1186
  msgid "Armenia"
1187
  msgstr ""
1188
 
1189
+ #: core/helpers/helper-form-templates.php:996 core/helpers/helper-misc.php:219
1190
  msgid "Angola"
1191
  msgstr ""
1192
 
1193
+ #: core/helpers/helper-form-templates.php:997 core/helpers/helper-misc.php:221
1194
  msgid "Antarctica"
1195
  msgstr ""
1196
 
1197
+ #: core/helpers/helper-form-templates.php:998 core/helpers/helper-misc.php:223
1198
  msgid "Argentina"
1199
  msgstr ""
1200
 
1201
+ #: core/helpers/helper-form-templates.php:999 core/helpers/helper-misc.php:217
1202
  msgid "American Samoa"
1203
  msgstr ""
1204
 
1205
+ #: core/helpers/helper-form-templates.php:1000 core/helpers/helper-misc.php:227
1206
  msgid "Austria"
1207
  msgstr ""
1208
 
1209
+ #: core/helpers/helper-form-templates.php:1001 core/helpers/helper-misc.php:226
1210
  msgid "Australia"
1211
  msgstr ""
1212
 
1213
+ #: core/helpers/helper-form-templates.php:1002 core/helpers/helper-misc.php:225
1214
  msgid "Aruba"
1215
  msgstr ""
1216
 
1217
+ #: core/helpers/helper-form-templates.php:1003 core/helpers/helper-misc.php:228
1218
  msgid "Azerbaijan"
1219
  msgstr ""
1220
 
1221
+ #: core/helpers/helper-form-templates.php:1004
1222
  msgid "Bosnia and Herzegovina"
1223
  msgstr ""
1224
 
1225
+ #: core/helpers/helper-form-templates.php:1005 core/helpers/helper-misc.php:232
1226
  msgid "Barbados"
1227
  msgstr ""
1228
 
1229
+ #: core/helpers/helper-form-templates.php:1006 core/helpers/helper-misc.php:231
1230
  msgid "Bangladesh"
1231
  msgstr ""
1232
 
1233
+ #: core/helpers/helper-form-templates.php:1007 core/helpers/helper-misc.php:234
1234
  msgid "Belgium"
1235
  msgstr ""
1236
 
1237
+ #: core/helpers/helper-form-templates.php:1008 core/helpers/helper-misc.php:247
1238
  msgid "Burkina Faso"
1239
  msgstr ""
1240
 
1241
+ #: core/helpers/helper-form-templates.php:1009 core/helpers/helper-misc.php:246
1242
  msgid "Bulgaria"
1243
  msgstr ""
1244
 
1245
+ #: core/helpers/helper-form-templates.php:1010 core/helpers/helper-misc.php:230
1246
  msgid "Bahrain"
1247
  msgstr ""
1248
 
1249
+ #: core/helpers/helper-form-templates.php:1011 core/helpers/helper-misc.php:248
1250
  msgid "Burundi"
1251
  msgstr ""
1252
 
1253
+ #: core/helpers/helper-form-templates.php:1012 core/helpers/helper-misc.php:236
1254
  msgid "Benin"
1255
  msgstr ""
1256
 
1257
+ #: core/helpers/helper-form-templates.php:1013
1258
  msgid "Saint Barthelemy"
1259
  msgstr ""
1260
 
1261
+ #: core/helpers/helper-form-templates.php:1014 core/helpers/helper-misc.php:237
1262
  msgid "Bermuda"
1263
  msgstr ""
1264
 
1265
+ #: core/helpers/helper-form-templates.php:1015 core/helpers/helper-misc.php:245
1266
  msgid "Brunei Darussalam"
1267
  msgstr ""
1268
 
1269
+ #: core/helpers/helper-form-templates.php:1016 core/helpers/helper-misc.php:239
1270
  msgid "Bolivia"
1271
  msgstr ""
1272
 
1273
+ #: core/helpers/helper-form-templates.php:1017 core/helpers/helper-misc.php:243
1274
  msgid "Brazil"
1275
  msgstr ""
1276
 
1277
+ #: core/helpers/helper-form-templates.php:1018 core/helpers/helper-misc.php:229
1278
  msgid "Bahamas"
1279
  msgstr ""
1280
 
1281
+ #: core/helpers/helper-form-templates.php:1019 core/helpers/helper-misc.php:238
1282
  msgid "Bhutan"
1283
  msgstr ""
1284
 
1285
+ #: core/helpers/helper-form-templates.php:1020 core/helpers/helper-misc.php:241
1286
  msgid "Botswana"
1287
  msgstr ""
1288
 
1289
+ #: core/helpers/helper-form-templates.php:1021 core/helpers/helper-misc.php:233
1290
  msgid "Belarus"
1291
  msgstr ""
1292
 
1293
+ #: core/helpers/helper-form-templates.php:1022 core/helpers/helper-misc.php:235
1294
  msgid "Belize"
1295
  msgstr ""
1296
 
1297
+ #: core/helpers/helper-form-templates.php:1023 core/helpers/helper-misc.php:251
1298
  msgid "Canada"
1299
  msgstr ""
1300
 
1301
+ #: core/helpers/helper-form-templates.php:1024
1302
  msgid "Congo, The Democratic Republic of the"
1303
  msgstr ""
1304
 
1305
+ #: core/helpers/helper-form-templates.php:1025 core/helpers/helper-misc.php:254
1306
  msgid "Central African Republic"
1307
  msgstr ""
1308
 
1309
+ #: core/helpers/helper-form-templates.php:1026 core/helpers/helper-misc.php:262
1310
  msgid "Congo"
1311
  msgstr ""
1312
 
1313
+ #: core/helpers/helper-form-templates.php:1027 core/helpers/helper-misc.php:419
1314
  msgid "Switzerland"
1315
  msgstr ""
1316
 
1317
+ #: core/helpers/helper-form-templates.php:1028 core/helpers/helper-misc.php:264
1318
  msgid "Cook Islands"
1319
  msgstr ""
1320
 
1321
+ #: core/helpers/helper-form-templates.php:1029 core/helpers/helper-misc.php:256
1322
  msgid "Chile"
1323
  msgstr ""
1324
 
1325
+ #: core/helpers/helper-form-templates.php:1030 core/helpers/helper-misc.php:250
1326
  msgid "Cameroon"
1327
  msgstr ""
1328
 
1329
+ #: core/helpers/helper-form-templates.php:1031 core/helpers/helper-misc.php:257
1330
  msgid "China"
1331
  msgstr ""
1332
 
1333
+ #: core/helpers/helper-form-templates.php:1032 core/helpers/helper-misc.php:260
1334
  msgid "Colombia"
1335
  msgstr ""
1336
 
1337
+ #: core/helpers/helper-form-templates.php:1033 core/helpers/helper-misc.php:265
1338
  msgid "Costa Rica"
1339
  msgstr ""
1340
 
1341
+ #: core/helpers/helper-form-templates.php:1034 core/helpers/helper-misc.php:268
1342
  msgid "Cuba"
1343
  msgstr ""
1344
 
1345
+ #: core/helpers/helper-form-templates.php:1035 core/helpers/helper-misc.php:252
1346
  msgid "Cape Verde"
1347
  msgstr ""
1348
 
1349
+ #: core/helpers/helper-form-templates.php:1036 core/helpers/helper-misc.php:269
1350
  msgid "Cyprus"
1351
  msgstr ""
1352
 
1353
+ #: core/helpers/helper-form-templates.php:1037 core/helpers/helper-misc.php:270
1354
  msgid "Czech Republic"
1355
  msgstr ""
1356
 
1357
+ #: core/helpers/helper-form-templates.php:1038 core/helpers/helper-misc.php:295
1358
  msgid "Germany"
1359
  msgstr ""
1360
 
1361
+ #: core/helpers/helper-form-templates.php:1039 core/helpers/helper-misc.php:272
1362
  msgid "Djibouti"
1363
  msgstr ""
1364
 
1365
+ #: core/helpers/helper-form-templates.php:1040 core/helpers/helper-misc.php:271
1366
  msgid "Denmark"
1367
  msgstr ""
1368
 
1369
+ #: core/helpers/helper-form-templates.php:1041 core/helpers/helper-misc.php:273
1370
  msgid "Dominica"
1371
  msgstr ""
1372
 
1373
+ #: core/helpers/helper-form-templates.php:1042 core/helpers/helper-misc.php:274
1374
  msgid "Dominican Republic"
1375
  msgstr ""
1376
 
1377
+ #: core/helpers/helper-form-templates.php:1043 core/helpers/helper-misc.php:216
1378
  msgid "Algeria"
1379
  msgstr ""
1380
 
1381
+ #: core/helpers/helper-form-templates.php:1044 core/helpers/helper-misc.php:276
1382
  msgid "Ecuador"
1383
  msgstr ""
1384
 
1385
+ #: core/helpers/helper-form-templates.php:1045 core/helpers/helper-misc.php:281
1386
  msgid "Estonia"
1387
  msgstr ""
1388
 
1389
+ #: core/helpers/helper-form-templates.php:1046 core/helpers/helper-misc.php:277
1390
  msgid "Egypt"
1391
  msgstr ""
1392
 
1393
+ #: core/helpers/helper-form-templates.php:1047 core/helpers/helper-misc.php:280
1394
  msgid "Eritrea"
1395
  msgstr ""
1396
 
1397
+ #: core/helpers/helper-form-templates.php:1048 core/helpers/helper-misc.php:410
1398
  msgid "Spain"
1399
  msgstr ""
1400
 
1401
+ #: core/helpers/helper-form-templates.php:1049 core/helpers/helper-misc.php:282
1402
  msgid "Ethiopia"
1403
  msgstr ""
1404
 
1405
+ #: core/helpers/helper-form-templates.php:1050 core/helpers/helper-misc.php:286
1406
  msgid "Finland"
1407
  msgstr ""
1408
 
1409
+ #: core/helpers/helper-form-templates.php:1051 core/helpers/helper-misc.php:285
1410
  msgid "Fiji"
1411
  msgstr ""
1412
 
1413
+ #: core/helpers/helper-form-templates.php:1052 core/helpers/helper-misc.php:283
1414
  msgid "Falkland Islands (Malvinas)"
1415
  msgstr ""
1416
 
1417
+ #: core/helpers/helper-form-templates.php:1053 core/helpers/helper-misc.php:354
1418
  msgid "Micronesia, Federated States of"
1419
  msgstr ""
1420
 
1421
+ #: core/helpers/helper-form-templates.php:1054 core/helpers/helper-misc.php:284
1422
  msgid "Faroe Islands"
1423
  msgstr ""
1424
 
1425
+ #: core/helpers/helper-form-templates.php:1055 core/helpers/helper-misc.php:287
1426
  msgid "France"
1427
  msgstr ""
1428
 
1429
+ #: core/helpers/helper-form-templates.php:1056 core/helpers/helper-misc.php:292
1430
  msgid "Gabon"
1431
  msgstr ""
1432
 
1433
+ #: core/helpers/helper-form-templates.php:1057 core/helpers/helper-misc.php:437
1434
  msgid "United Kingdom"
1435
  msgstr ""
1436
 
1437
+ #: core/helpers/helper-form-templates.php:1058 core/helpers/helper-misc.php:300
1438
  msgid "Grenada"
1439
  msgstr ""
1440
 
1441
+ #: core/helpers/helper-form-templates.php:1059 core/helpers/helper-misc.php:294
1442
  msgid "Georgia"
1443
  msgstr ""
1444
 
1445
+ #: core/helpers/helper-form-templates.php:1060 core/helpers/helper-misc.php:296
1446
  msgid "Ghana"
1447
  msgstr ""
1448
 
1449
+ #: core/helpers/helper-form-templates.php:1061 core/helpers/helper-misc.php:297
1450
  msgid "Gibraltar"
1451
  msgstr ""
1452
 
1453
+ #: core/helpers/helper-form-templates.php:1062 core/helpers/helper-misc.php:299
1454
  msgid "Greenland"
1455
  msgstr ""
1456
 
1457
+ #: core/helpers/helper-form-templates.php:1063 core/helpers/helper-misc.php:293
1458
  msgid "Gambia"
1459
  msgstr ""
1460
 
1461
+ #: core/helpers/helper-form-templates.php:1064 core/helpers/helper-misc.php:304
1462
  msgid "Guinea"
1463
  msgstr ""
1464
 
1465
+ #: core/helpers/helper-form-templates.php:1065 core/helpers/helper-misc.php:298
1466
  msgid "Greece"
1467
  msgstr ""
1468
 
1469
+ #: core/helpers/helper-form-templates.php:1066 core/helpers/helper-misc.php:303
1470
  msgid "Guatemala"
1471
  msgstr ""
1472
 
1473
+ #: core/helpers/helper-form-templates.php:1067 core/helpers/helper-misc.php:302
1474
  msgid "Guam"
1475
  msgstr ""
1476
 
1477
+ #: core/helpers/helper-form-templates.php:1068
1478
  msgid "Guinea-bissau"
1479
  msgstr ""
1480
 
1481
+ #: core/helpers/helper-form-templates.php:1069 core/helpers/helper-misc.php:306
1482
  msgid "Guyana"
1483
  msgstr ""
1484
 
1485
+ #: core/helpers/helper-form-templates.php:1070 core/helpers/helper-misc.php:311
1486
  msgid "Hong Kong"
1487
  msgstr ""
1488
 
1489
+ #: core/helpers/helper-form-templates.php:1071 core/helpers/helper-misc.php:310
1490
  msgid "Honduras"
1491
  msgstr ""
1492
 
1493
+ #: core/helpers/helper-form-templates.php:1072
1494
  msgid "Croatia"
1495
  msgstr ""
1496
 
1497
+ #: core/helpers/helper-form-templates.php:1073 core/helpers/helper-misc.php:307
1498
  msgid "Haiti"
1499
  msgstr ""
1500
 
1501
+ #: core/helpers/helper-form-templates.php:1074 core/helpers/helper-misc.php:312
1502
  msgid "Hungary"
1503
  msgstr ""
1504
 
1505
+ #: core/helpers/helper-form-templates.php:1075 core/helpers/helper-misc.php:315
1506
  msgid "Indonesia"
1507
  msgstr ""
1508
 
1509
+ #: core/helpers/helper-form-templates.php:1076 core/helpers/helper-misc.php:318
1510
  msgid "Ireland"
1511
  msgstr ""
1512
 
1513
+ #: core/helpers/helper-form-templates.php:1077 core/helpers/helper-misc.php:319
1514
  msgid "Israel"
1515
  msgstr ""
1516
 
1517
+ #: core/helpers/helper-form-templates.php:1078 core/helpers/helper-misc.php:314
1518
  msgid "India"
1519
  msgstr ""
1520
 
1521
+ #: core/helpers/helper-form-templates.php:1079 core/helpers/helper-misc.php:317
1522
  msgid "Iraq"
1523
  msgstr ""
1524
 
1525
+ #: core/helpers/helper-form-templates.php:1080
1526
  msgid "Iran, Islamic Republic of"
1527
  msgstr ""
1528
 
1529
+ #: core/helpers/helper-form-templates.php:1081 core/helpers/helper-misc.php:313
1530
  msgid "Iceland"
1531
  msgstr ""
1532
 
1533
+ #: core/helpers/helper-form-templates.php:1082 core/helpers/helper-misc.php:320
1534
  msgid "Italy"
1535
  msgstr ""
1536
 
1537
+ #: core/helpers/helper-form-templates.php:1083 core/helpers/helper-misc.php:321
1538
  msgid "Jamaica"
1539
  msgstr ""
1540
 
1541
+ #: core/helpers/helper-form-templates.php:1084 core/helpers/helper-misc.php:323
1542
  msgid "Jordan"
1543
  msgstr ""
1544
 
1545
+ #: core/helpers/helper-form-templates.php:1085 core/helpers/helper-misc.php:322
1546
  msgid "Japan"
1547
  msgstr ""
1548
 
1549
+ #: core/helpers/helper-form-templates.php:1086 core/helpers/helper-misc.php:325
1550
  msgid "Kenya"
1551
  msgstr ""
1552
 
1553
+ #: core/helpers/helper-form-templates.php:1087 core/helpers/helper-misc.php:330
1554
  msgid "Kyrgyzstan"
1555
  msgstr ""
1556
 
1557
+ #: core/helpers/helper-form-templates.php:1088 core/helpers/helper-misc.php:249
1558
  msgid "Cambodia"
1559
  msgstr ""
1560
 
1561
+ #: core/helpers/helper-form-templates.php:1089 core/helpers/helper-misc.php:326
1562
  msgid "Kiribati"
1563
  msgstr ""
1564
 
1565
+ #: core/helpers/helper-form-templates.php:1090 core/helpers/helper-misc.php:261
1566
  msgid "Comoros"
1567
  msgstr ""
1568
 
1569
+ #: core/helpers/helper-form-templates.php:1091 core/helpers/helper-misc.php:393
1570
  msgid "Saint Kitts and Nevis"
1571
  msgstr ""
1572
 
1573
+ #: core/helpers/helper-form-templates.php:1092
1574
  msgid "Korea Democratic Peoples Republic of"
1575
  msgstr ""
1576
 
1577
+ #: core/helpers/helper-form-templates.php:1093
1578
  msgid "Korea Republic of"
1579
  msgstr ""
1580
 
1581
+ #: core/helpers/helper-form-templates.php:1094 core/helpers/helper-misc.php:329
1582
  msgid "Kuwait"
1583
  msgstr ""
1584
 
1585
+ #: core/helpers/helper-form-templates.php:1095 core/helpers/helper-misc.php:253
1586
  msgid "Cayman Islands"
1587
  msgstr ""
1588
 
1589
+ #: core/helpers/helper-form-templates.php:1096
1590
  msgid "Lao Peoples Democratic Republic"
1591
  msgstr ""
1592
 
1593
+ #: core/helpers/helper-form-templates.php:1097 core/helpers/helper-misc.php:333
1594
  msgid "Lebanon"
1595
  msgstr ""
1596
 
1597
+ #: core/helpers/helper-form-templates.php:1098 core/helpers/helper-misc.php:394
1598
  msgid "Saint Lucia"
1599
  msgstr ""
1600
 
1601
+ #: core/helpers/helper-form-templates.php:1099 core/helpers/helper-misc.php:337
1602
  msgid "Liechtenstein"
1603
  msgstr ""
1604
 
1605
+ #: core/helpers/helper-form-templates.php:1100 core/helpers/helper-misc.php:411
1606
  msgid "Sri Lanka"
1607
  msgstr ""
1608
 
1609
+ #: core/helpers/helper-form-templates.php:1101 core/helpers/helper-misc.php:335
1610
  msgid "Liberia"
1611
  msgstr ""
1612
 
1613
+ #: core/helpers/helper-form-templates.php:1102 core/helpers/helper-misc.php:334
1614
  msgid "Lesotho"
1615
  msgstr ""
1616
 
1617
+ #: core/helpers/helper-form-templates.php:1103 core/helpers/helper-misc.php:338
1618
  msgid "Lithuania"
1619
  msgstr ""
1620
 
1621
+ #: core/helpers/helper-form-templates.php:1104 core/helpers/helper-misc.php:339
1622
  msgid "Luxembourg"
1623
  msgstr ""
1624
 
1625
+ #: core/helpers/helper-form-templates.php:1105 core/helpers/helper-misc.php:332
1626
  msgid "Latvia"
1627
  msgstr ""
1628
 
1629
+ #: core/helpers/helper-form-templates.php:1106 core/helpers/helper-misc.php:336
1630
  msgid "Libyan Arab Jamahiriya"
1631
  msgstr ""
1632
 
1633
+ #: core/helpers/helper-form-templates.php:1107 core/helpers/helper-misc.php:359
1634
  msgid "Morocco"
1635
  msgstr ""
1636
 
1637
+ #: core/helpers/helper-form-templates.php:1108 core/helpers/helper-misc.php:356
1638
  msgid "Monaco"
1639
  msgstr ""
1640
 
1641
+ #: core/helpers/helper-form-templates.php:1109 core/helpers/helper-misc.php:355
1642
  msgid "Moldova, Republic of"
1643
  msgstr ""
1644
 
1645
+ #: core/helpers/helper-form-templates.php:1110
1646
  msgid "Montenegro"
1647
  msgstr ""
1648
 
1649
+ #: core/helpers/helper-form-templates.php:1111 core/helpers/helper-misc.php:342
1650
  msgid "Madagascar"
1651
  msgstr ""
1652
 
1653
+ #: core/helpers/helper-form-templates.php:1112 core/helpers/helper-misc.php:348
1654
  msgid "Marshall Islands"
1655
  msgstr ""
1656
 
1657
+ #: core/helpers/helper-form-templates.php:1113 core/helpers/helper-misc.php:341
1658
  msgid "Macedonia, The Former Yugoslav Republic of"
1659
  msgstr ""
1660
 
1661
+ #: core/helpers/helper-form-templates.php:1114 core/helpers/helper-misc.php:346
1662
  msgid "Mali"
1663
  msgstr ""
1664
 
1665
+ #: core/helpers/helper-form-templates.php:1115 core/helpers/helper-misc.php:361
1666
  msgid "Myanmar"
1667
  msgstr ""
1668
 
1669
+ #: core/helpers/helper-form-templates.php:1116 core/helpers/helper-misc.php:357
1670
  msgid "Mongolia"
1671
  msgstr ""
1672
 
1673
+ #: core/helpers/helper-form-templates.php:1117 core/helpers/helper-misc.php:340
1674
  msgid "Macau"
1675
  msgstr ""
1676
 
1677
+ #: core/helpers/helper-form-templates.php:1118 core/helpers/helper-misc.php:374
1678
  msgid "Northern Mariana Islands"
1679
  msgstr ""
1680
 
1681
+ #: core/helpers/helper-form-templates.php:1119 core/helpers/helper-misc.php:350
1682
  msgid "Mauritania"
1683
  msgstr ""
1684
 
1685
+ #: core/helpers/helper-form-templates.php:1120 core/helpers/helper-misc.php:358
1686
  msgid "Montserrat"
1687
  msgstr ""
1688
 
1689
+ #: core/helpers/helper-form-templates.php:1121 core/helpers/helper-misc.php:347
1690
  msgid "Malta"
1691
  msgstr ""
1692
 
1693
+ #: core/helpers/helper-form-templates.php:1122 core/helpers/helper-misc.php:351
1694
  msgid "Mauritius"
1695
  msgstr ""
1696
 
1697
+ #: core/helpers/helper-form-templates.php:1123 core/helpers/helper-misc.php:345
1698
  msgid "Maldives"
1699
  msgstr ""
1700
 
1701
+ #: core/helpers/helper-form-templates.php:1124 core/helpers/helper-misc.php:343
1702
  msgid "Malawi"
1703
  msgstr ""
1704
 
1705
+ #: core/helpers/helper-form-templates.php:1125 core/helpers/helper-misc.php:353
1706
  msgid "Mexico"
1707
  msgstr ""
1708
 
1709
+ #: core/helpers/helper-form-templates.php:1126 core/helpers/helper-misc.php:344
1710
  msgid "Malaysia"
1711
  msgstr ""
1712
 
1713
+ #: core/helpers/helper-form-templates.php:1127 core/helpers/helper-misc.php:360
1714
  msgid "Mozambique"
1715
  msgstr ""
1716
 
1717
+ #: core/helpers/helper-form-templates.php:1128 core/helpers/helper-misc.php:362
1718
  msgid "Namibia"
1719
  msgstr ""
1720
 
1721
+ #: core/helpers/helper-form-templates.php:1129 core/helpers/helper-misc.php:367
1722
  msgid "New Caledonia"
1723
  msgstr ""
1724
 
1725
+ #: core/helpers/helper-form-templates.php:1130 core/helpers/helper-misc.php:370
1726
  msgid "Niger"
1727
  msgstr ""
1728
 
1729
+ #: core/helpers/helper-form-templates.php:1131 core/helpers/helper-misc.php:371
1730
  msgid "Nigeria"
1731
  msgstr ""
1732
 
1733
+ #: core/helpers/helper-form-templates.php:1132 core/helpers/helper-misc.php:369
1734
  msgid "Nicaragua"
1735
  msgstr ""
1736
 
1737
+ #: core/helpers/helper-form-templates.php:1133 core/helpers/helper-misc.php:365
1738
  msgid "Netherlands"
1739
  msgstr ""
1740
 
1741
+ #: core/helpers/helper-form-templates.php:1134 core/helpers/helper-misc.php:375
1742
  msgid "Norway"
1743
  msgstr ""
1744
 
1745
+ #: core/helpers/helper-form-templates.php:1135 core/helpers/helper-misc.php:364
1746
  msgid "Nepal"
1747
  msgstr ""
1748
 
1749
+ #: core/helpers/helper-form-templates.php:1136 core/helpers/helper-misc.php:363
1750
  msgid "Nauru"
1751
  msgstr ""
1752
 
1753
+ #: core/helpers/helper-form-templates.php:1137 core/helpers/helper-misc.php:372
1754
  msgid "Niue"
1755
  msgstr ""
1756
 
1757
+ #: core/helpers/helper-form-templates.php:1138 core/helpers/helper-misc.php:368
1758
  msgid "New Zealand"
1759
  msgstr ""
1760
 
1761
+ #: core/helpers/helper-form-templates.php:1139 core/helpers/helper-misc.php:376
1762
  msgid "Oman"
1763
  msgstr ""
1764
 
1765
+ #: core/helpers/helper-form-templates.php:1140 core/helpers/helper-misc.php:379
1766
  msgid "Panama"
1767
  msgstr ""
1768
 
1769
+ #: core/helpers/helper-form-templates.php:1141 core/helpers/helper-misc.php:382
1770
  msgid "Peru"
1771
  msgstr ""
1772
 
1773
+ #: core/helpers/helper-form-templates.php:1142 core/helpers/helper-misc.php:290
1774
  msgid "French Polynesia"
1775
  msgstr ""
1776
 
1777
+ #: core/helpers/helper-form-templates.php:1143 core/helpers/helper-misc.php:380
1778
  msgid "Papua New Guinea"
1779
  msgstr ""
1780
 
1781
+ #: core/helpers/helper-form-templates.php:1144 core/helpers/helper-misc.php:383
1782
  msgid "Philippines"
1783
  msgstr ""
1784
 
1785
+ #: core/helpers/helper-form-templates.php:1145 core/helpers/helper-misc.php:377
1786
  msgid "Pakistan"
1787
  msgstr ""
1788
 
1789
+ #: core/helpers/helper-form-templates.php:1146 core/helpers/helper-misc.php:385
1790
  msgid "Poland"
1791
  msgstr ""
1792
 
1793
+ #: core/helpers/helper-form-templates.php:1147
1794
  msgid "Saint Pierre and Miquelon"
1795
  msgstr ""
1796
 
1797
+ #: core/helpers/helper-form-templates.php:1148 core/helpers/helper-misc.php:384
1798
  msgid "Pitcairn"
1799
  msgstr ""
1800
 
1801
+ #: core/helpers/helper-form-templates.php:1149 core/helpers/helper-misc.php:386
1802
  msgid "Portugal"
1803
  msgstr ""
1804
 
1805
+ #: core/helpers/helper-form-templates.php:1150 core/helpers/helper-misc.php:378
1806
  msgid "Palau"
1807
  msgstr ""
1808
 
1809
+ #: core/helpers/helper-form-templates.php:1151 core/helpers/helper-misc.php:381
1810
  msgid "Paraguay"
1811
  msgstr ""
1812
 
1813
+ #: core/helpers/helper-form-templates.php:1152 core/helpers/helper-misc.php:388
1814
  msgid "Qatar"
1815
  msgstr ""
1816
 
1817
+ #: core/helpers/helper-form-templates.php:1153 core/helpers/helper-misc.php:390
1818
  msgid "Romania"
1819
  msgstr ""
1820
 
1821
+ #: core/helpers/helper-form-templates.php:1154
1822
  msgid "Serbia"
1823
  msgstr ""
1824
 
1825
+ #: core/helpers/helper-form-templates.php:1155 core/helpers/helper-misc.php:391
1826
  msgid "Russian Federation"
1827
  msgstr ""
1828
 
1829
+ #: core/helpers/helper-form-templates.php:1156 core/helpers/helper-misc.php:392
1830
  msgid "Rwanda"
1831
  msgstr ""
1832
 
1833
+ #: core/helpers/helper-form-templates.php:1157 core/helpers/helper-misc.php:399
1834
  msgid "Saudi Arabia"
1835
  msgstr ""
1836
 
1837
+ #: core/helpers/helper-form-templates.php:1158 core/helpers/helper-misc.php:406
1838
  msgid "Solomon Islands"
1839
  msgstr ""
1840
 
1841
+ #: core/helpers/helper-form-templates.php:1159 core/helpers/helper-misc.php:401
1842
  msgid "Seychelles"
1843
  msgstr ""
1844
 
1845
+ #: core/helpers/helper-form-templates.php:1160 core/helpers/helper-misc.php:414
1846
  msgid "Sudan"
1847
  msgstr ""
1848
 
1849
+ #: core/helpers/helper-form-templates.php:1161 core/helpers/helper-misc.php:418
1850
  msgid "Sweden"
1851
  msgstr ""
1852
 
1853
+ #: core/helpers/helper-form-templates.php:1162 core/helpers/helper-misc.php:403
1854
  msgid "Singapore"
1855
  msgstr ""
1856
 
1857
+ #: core/helpers/helper-form-templates.php:1163
1858
  msgid "Saint Helena"
1859
  msgstr ""
1860
 
1861
+ #: core/helpers/helper-form-templates.php:1164 core/helpers/helper-misc.php:405
1862
  msgid "Slovenia"
1863
  msgstr ""
1864
 
1865
+ #: core/helpers/helper-form-templates.php:1165
1866
  msgid "Slovakia"
1867
  msgstr ""
1868
 
1869
+ #: core/helpers/helper-form-templates.php:1166 core/helpers/helper-misc.php:402
1870
  msgid "Sierra Leone"
1871
  msgstr ""
1872
 
1873
+ #: core/helpers/helper-form-templates.php:1167 core/helpers/helper-misc.php:397
1874
  msgid "San Marino"
1875
  msgstr ""
1876
 
1877
+ #: core/helpers/helper-form-templates.php:1168 core/helpers/helper-misc.php:400
1878
  msgid "Senegal"
1879
  msgstr ""
1880
 
1881
+ #: core/helpers/helper-form-templates.php:1169 core/helpers/helper-misc.php:407
1882
  msgid "Somalia"
1883
  msgstr ""
1884
 
1885
+ #: core/helpers/helper-form-templates.php:1170 core/helpers/helper-misc.php:415
1886
  msgid "Suriname"
1887
  msgstr ""
1888
 
1889
+ #: core/helpers/helper-form-templates.php:1171 core/helpers/helper-misc.php:398
1890
  msgid "Sao Tome and Principe"
1891
  msgstr ""
1892
 
1893
+ #: core/helpers/helper-form-templates.php:1172 core/helpers/helper-misc.php:278
1894
  msgid "El Salvador"
1895
  msgstr ""
1896
 
1897
+ #: core/helpers/helper-form-templates.php:1173 core/helpers/helper-misc.php:420
1898
  msgid "Syrian Arab Republic"
1899
  msgstr ""
1900
 
1901
+ #: core/helpers/helper-form-templates.php:1174 core/helpers/helper-misc.php:417
1902
  msgid "Swaziland"
1903
  msgstr ""
1904
 
1905
+ #: core/helpers/helper-form-templates.php:1175 core/helpers/helper-misc.php:432
1906
  msgid "Turks and Caicos Islands"
1907
  msgstr ""
1908
 
1909
+ #: core/helpers/helper-form-templates.php:1176 core/helpers/helper-misc.php:255
1910
  msgid "Chad"
1911
  msgstr ""
1912
 
1913
+ #: core/helpers/helper-form-templates.php:1177 core/helpers/helper-misc.php:425
1914
  msgid "Togo"
1915
  msgstr ""
1916
 
1917
+ #: core/helpers/helper-form-templates.php:1178 core/helpers/helper-misc.php:424
1918
  msgid "Thailand"
1919
  msgstr ""
1920
 
1921
+ #: core/helpers/helper-form-templates.php:1179 core/helpers/helper-misc.php:422
1922
  msgid "Tajikistan"
1923
  msgstr ""
1924
 
1925
+ #: core/helpers/helper-form-templates.php:1180 core/helpers/helper-misc.php:426
1926
  msgid "Tokelau"
1927
  msgstr ""
1928
 
1929
+ #: core/helpers/helper-form-templates.php:1181
1930
  msgid "Timor-leste"
1931
  msgstr ""
1932
 
1933
+ #: core/helpers/helper-form-templates.php:1182 core/helpers/helper-misc.php:431
1934
  msgid "Turkmenistan"
1935
  msgstr ""
1936
 
1937
+ #: core/helpers/helper-form-templates.php:1183 core/helpers/helper-misc.php:429
1938
  msgid "Tunisia"
1939
  msgstr ""
1940
 
1941
+ #: core/helpers/helper-form-templates.php:1184 core/helpers/helper-misc.php:427
1942
  msgid "Tonga"
1943
  msgstr ""
1944
 
1945
+ #: core/helpers/helper-form-templates.php:1185 core/helpers/helper-misc.php:430
1946
  msgid "Turkey"
1947
  msgstr ""
1948
 
1949
+ #: core/helpers/helper-form-templates.php:1186 core/helpers/helper-misc.php:428
1950
  msgid "Trinidad and Tobago"
1951
  msgstr ""
1952
 
1953
+ #: core/helpers/helper-form-templates.php:1187 core/helpers/helper-misc.php:433
1954
  msgid "Tuvalu"
1955
  msgstr ""
1956
 
1957
+ #: core/helpers/helper-form-templates.php:1188 core/helpers/helper-misc.php:421
1958
  msgid "Taiwan, Province of China"
1959
  msgstr ""
1960
 
1961
+ #: core/helpers/helper-form-templates.php:1189 core/helpers/helper-misc.php:423
1962
  msgid "Tanzania, United Republic of"
1963
  msgstr ""
1964
 
1965
+ #: core/helpers/helper-form-templates.php:1190 core/helpers/helper-misc.php:435
1966
  msgid "Ukraine"
1967
  msgstr ""
1968
 
1969
+ #: core/helpers/helper-form-templates.php:1191 core/helpers/helper-misc.php:434
1970
  msgid "Uganda"
1971
  msgstr ""
1972
 
1973
+ #: core/helpers/helper-form-templates.php:1192 core/helpers/helper-misc.php:438
1974
  msgid "United States"
1975
  msgstr ""
1976
 
1977
+ #: core/helpers/helper-form-templates.php:1193 core/helpers/helper-misc.php:440
1978
  msgid "Uruguay"
1979
  msgstr ""
1980
 
1981
+ #: core/helpers/helper-form-templates.php:1194 core/helpers/helper-misc.php:441
1982
  msgid "Uzbekistan"
1983
  msgstr ""
1984
 
1985
+ #: core/helpers/helper-form-templates.php:1195 core/helpers/helper-misc.php:395
1986
  msgid "Saint Vincent and the Grenadines"
1987
  msgstr ""
1988
 
1989
+ #: core/helpers/helper-form-templates.php:1196 core/helpers/helper-misc.php:443
1990
  msgid "Venezuela"
1991
  msgstr ""
1992
 
1993
+ #: core/helpers/helper-form-templates.php:1197
1994
  msgid "Virgin Islands, British"
1995
  msgstr ""
1996
 
1997
+ #: core/helpers/helper-form-templates.php:1198
1998
  msgid "Virgin Islands, U.S."
1999
  msgstr ""
2000
 
2001
+ #: core/helpers/helper-form-templates.php:1199 core/helpers/helper-misc.php:444
2002
  msgid "Vietnam"
2003
  msgstr ""
2004
 
2005
+ #: core/helpers/helper-form-templates.php:1200 core/helpers/helper-misc.php:442
2006
  msgid "Vanuatu"
2007
  msgstr ""
2008
 
2009
+ #: core/helpers/helper-form-templates.php:1201
2010
  msgid "Wallis and Futuna"
2011
  msgstr ""
2012
 
2013
+ #: core/helpers/helper-form-templates.php:1202 core/helpers/helper-misc.php:396
2014
  msgid "Samoa"
2015
  msgstr ""
2016
 
2017
+ #: core/helpers/helper-form-templates.php:1203 core/helpers/helper-misc.php:449
2018
  msgid "Yemen"
2019
  msgstr ""
2020
 
2021
+ #: core/helpers/helper-form-templates.php:1204 core/helpers/helper-misc.php:352
2022
  msgid "Mayotte"
2023
  msgstr ""
2024
 
2025
+ #: core/helpers/helper-form-templates.php:1205 core/helpers/helper-misc.php:408
2026
  msgid "South Africa"
2027
  msgstr ""
2028
 
2029
+ #: core/helpers/helper-form-templates.php:1206 core/helpers/helper-misc.php:451
2030
  msgid "Zambia"
2031
  msgstr ""
2032
 
2033
+ #: core/helpers/helper-form-templates.php:1207 core/helpers/helper-misc.php:452
2034
  msgid "Zimbabwe"
2035
  msgstr ""
2036
 
2780
  msgid "You are customizing"
2781
  msgstr ""
2782
 
2783
+ #: core/templates/customize-controls/style/range.php:13
2784
+ msgid "Unit"
2785
  msgstr ""
2786
 
2787
+ #: core/templates/customize-form-build.php:5
2788
+ msgid "Add title"
2789
  msgstr ""
2790
 
2791
+ #: core/templates/customize-form-build.php:10
2792
+ msgid "Add parts here to appear in your form."
 
 
 
 
2793
  msgstr ""
2794
 
2795
+ #: core/templates/customize-form-build.php:13
2796
+ msgid "Add a Part"
 
 
2797
  msgstr ""
2798
 
2799
  #: core/templates/customize-form-item.php:18
2801
  msgstr ""
2802
 
2803
  #: core/templates/customize-form-item.php:21
2804
+ #: core/templates/customize-form-steps.php:4
 
2805
  msgid "Setup"
2806
  msgstr ""
2807
 
2808
  #: core/templates/customize-form-item.php:24
2809
+ #: core/templates/customize-form-steps.php:6
2810
  msgid "Style"
2811
  msgstr ""
2812
 
2813
  #: core/templates/customize-form-item.php:33
2814
  #: core/templates/customize-form-part-footer.php:3
2815
+ #: core/templates/parts/customize-checkbox.php:132
2816
+ #: core/templates/parts/customize-radio.php:126
2817
+ #: core/templates/parts/customize-select.php:116
2818
  msgid "Delete"
2819
  msgstr ""
2820
 
2823
  msgstr ""
2824
 
2825
  #: core/templates/customize-form-part-footer.php:5
2826
+ #: core/templates/parts/customize-checkbox.php:133
2827
+ #: core/templates/parts/customize-radio.php:127
2828
  msgid "More"
2829
  msgstr ""
2830
 
2847
  msgstr ""
2848
 
2849
  #: core/templates/customize-form-parts-drawer.php:30
2850
+ #: inc/classes/class-happyforms.php:242
2851
  #: inc/templates/customize-controls/checkbox_dummy.php:7
2852
  msgid "Upgrade"
2853
  msgstr ""
2856
  msgid "No parts found."
2857
  msgstr ""
2858
 
2859
+ #: core/templates/customize-form-steps.php:3
2860
  msgid "Build"
2861
  msgstr ""
2862
 
2863
+ #: core/templates/customize-header-actions.php:5
2864
+ msgid "Save"
2865
  msgstr ""
2866
 
2867
+ #: core/templates/customize-header-actions.php:6
2868
+ msgid "Update"
2869
  msgstr ""
2870
 
2871
+ #: core/templates/customize-header-actions.php:7
2872
+ msgid "Saved"
2873
  msgstr ""
2874
 
2875
+ #: core/templates/customize-header-actions.php:8
2876
+ msgid "Updated"
2877
  msgstr ""
2878
 
2879
+ #: core/templates/customize-header-actions.php:21
 
 
 
 
2880
  msgid "The changes you made will be lost if you navigate away from this page."
2881
  msgstr ""
2882
 
2883
+ #: core/templates/customize-header-actions.php:22
2884
  msgid "Close"
2885
  msgstr ""
2886
 
2887
+ #: core/templates/parts/customize-checkbox.php:4
2888
+ #: core/templates/parts/customize-checkbox.php:119
2889
+ #: core/templates/parts/customize-email.php:4
2890
+ #: core/templates/parts/customize-email.php:59
2891
+ #: core/templates/parts/customize-multi-line-text.php:4
2892
+ #: core/templates/parts/customize-number.php:4
2893
+ #: core/templates/parts/customize-number.php:85
2894
+ #: core/templates/parts/customize-radio.php:4
2895
+ #: core/templates/parts/customize-radio.php:113
2896
+ #: core/templates/parts/customize-select.php:4
2897
+ #: core/templates/parts/customize-select.php:107
2898
+ #: core/templates/parts/customize-single-line-text.php:4
2899
+ msgid "Label"
2900
+ msgstr ""
2901
+
2902
  #: core/templates/parts/customize-checkbox.php:8
 
2903
  #: core/templates/parts/customize-multi-line-text.php:8
2904
  #: core/templates/parts/customize-number.php:8
2905
  #: core/templates/parts/customize-radio.php:8
2906
  #: core/templates/parts/customize-select.php:8
2907
  #: core/templates/parts/customize-single-line-text.php:8
2908
+ msgid "Label display"
2909
  msgstr ""
2910
 
2911
  #: core/templates/parts/customize-checkbox.php:10
2918
  msgid "Above"
2919
  msgstr ""
2920
 
2921
+ #: core/templates/parts/customize-checkbox.php:11
2922
+ #: core/templates/parts/customize-email.php:11
2923
+ #: core/templates/parts/customize-multi-line-text.php:11
2924
+ #: core/templates/parts/customize-number.php:11
2925
+ #: core/templates/parts/customize-radio.php:11
2926
+ #: core/templates/parts/customize-select.php:11
2927
+ #: core/templates/parts/customize-single-line-text.php:11
2928
  msgid "Below"
2929
  msgstr ""
2930
 
2931
  #: core/templates/parts/customize-checkbox.php:13
2932
+ #: core/templates/parts/customize-email.php:14
2933
+ #: core/templates/parts/customize-multi-line-text.php:14
2934
+ #: core/templates/parts/customize-number.php:14
2935
  #: core/templates/parts/customize-radio.php:13
2936
+ #: core/templates/parts/customize-select.php:13
2937
+ #: core/templates/parts/customize-single-line-text.php:14
2938
  msgid "Hidden"
2939
  msgstr ""
2940
 
2941
+ #: core/templates/parts/customize-checkbox.php:17
2942
+ #: core/templates/parts/customize-checkbox.php:124
2943
+ #: core/templates/parts/customize-email.php:18
2944
+ #: core/templates/parts/customize-multi-line-text.php:18
2945
+ #: core/templates/parts/customize-number.php:18
2946
+ #: core/templates/parts/customize-radio.php:17
2947
+ #: core/templates/parts/customize-radio.php:118
2948
+ #: core/templates/parts/customize-select.php:17
2949
+ #: core/templates/parts/customize-single-line-text.php:18
2950
+ msgid "Description"
2951
+ msgstr ""
2952
+
2953
+ #: core/templates/parts/customize-checkbox.php:21
2954
+ #: core/templates/parts/customize-email.php:22
2955
+ #: core/templates/parts/customize-multi-line-text.php:22
2956
+ #: core/templates/parts/customize-number.php:22
2957
+ #: core/templates/parts/customize-radio.php:21
2958
+ #: core/templates/parts/customize-select.php:21
2959
+ #: core/templates/parts/customize-single-line-text.php:22
2960
+ msgid "Description appearance"
2961
  msgstr ""
2962
 
2963
+ #: core/templates/parts/customize-checkbox.php:23
 
2964
  #: core/templates/parts/customize-email.php:24
2965
  #: core/templates/parts/customize-multi-line-text.php:24
2966
  #: core/templates/parts/customize-number.php:24
2967
+ #: core/templates/parts/customize-radio.php:23
 
2968
  #: core/templates/parts/customize-select.php:23
2969
  #: core/templates/parts/customize-single-line-text.php:24
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2970
  msgid "Standard"
2971
  msgstr ""
2972
 
2973
+ #: core/templates/parts/customize-checkbox.php:24
2974
+ #: core/templates/parts/customize-email.php:26
2975
+ #: core/templates/parts/customize-multi-line-text.php:26
2976
+ #: core/templates/parts/customize-number.php:26
2977
+ #: core/templates/parts/customize-radio.php:24
2978
+ #: core/templates/parts/customize-select.php:24
2979
+ #: core/templates/parts/customize-single-line-text.php:26
2980
  msgid "Tooltip"
2981
  msgstr ""
2982
 
2983
+ #: core/templates/parts/customize-checkbox.php:32
2984
+ #: core/templates/parts/customize-checkbox.php:36
2985
+ #: core/templates/parts/customize-radio.php:32
2986
+ #: core/templates/parts/customize-radio.php:36
2987
+ #: core/templates/parts/customize-select.php:36
2988
+ #: core/templates/parts/customize-select.php:40
2989
+ msgid "Choices"
2990
+ msgstr ""
2991
+
2992
+ #: core/templates/parts/customize-checkbox.php:33
2993
+ #: core/templates/parts/customize-radio.php:33
2994
+ #: core/templates/parts/customize-select.php:37
2995
  msgid "No choices added yet. Add one by clicking <i>Add Choice</i> below."
2996
  msgstr ""
2997
 
2998
+ #: core/templates/parts/customize-checkbox.php:37
2999
+ #: core/templates/parts/customize-radio.php:37
3000
+ #: core/templates/parts/customize-select.php:41
3001
  msgid "Type or paste your choices here, adding each on a new line."
3002
  msgstr ""
3003
 
3004
+ #: core/templates/parts/customize-checkbox.php:40
3005
+ #: core/templates/parts/customize-radio.php:40
3006
+ #: core/templates/parts/customize-select.php:44
3007
  msgid "Add choice"
3008
  msgstr ""
3009
 
3010
+ #: core/templates/parts/customize-checkbox.php:42
3011
+ #: core/templates/parts/customize-radio.php:42
3012
+ #: core/templates/parts/customize-select.php:46
3013
  msgid "Or, bulk add choices"
3014
  msgstr ""
3015
 
3016
+ #: core/templates/parts/customize-checkbox.php:46
3017
+ #: core/templates/parts/customize-radio.php:46
3018
+ #: core/templates/parts/customize-select.php:50
3019
  msgid "Add choices"
3020
  msgstr ""
3021
 
3022
+ #: core/templates/parts/customize-checkbox.php:48
3023
+ #: core/templates/parts/customize-radio.php:48
3024
+ #: core/templates/parts/customize-select.php:52
3025
  msgid "Cancel"
3026
  msgstr ""
3027
 
3028
+ #: core/templates/parts/customize-checkbox.php:53
3029
+ #: core/templates/parts/customize-email.php:38
3030
+ #: core/templates/parts/customize-multi-line-text.php:38
3031
+ #: core/templates/parts/customize-number.php:48
3032
+ #: core/templates/parts/customize-radio.php:53
3033
+ #: core/templates/parts/customize-select.php:57
3034
+ #: core/templates/parts/customize-single-line-text.php:38
3035
  msgid "This is required"
3036
  msgstr ""
3037
 
3038
+ #: core/templates/parts/customize-checkbox.php:64
3039
+ msgid "Add 'select all' choice"
3040
  msgstr ""
3041
 
3042
+ #: core/templates/parts/customize-checkbox.php:68
3043
+ #: core/templates/parts/customize-radio.php:63
3044
+ msgid "Choices display"
3045
  msgstr ""
3046
 
3047
+ #: core/templates/parts/customize-checkbox.php:70
3048
+ #: core/templates/parts/customize-radio.php:65
3049
  msgid "Horizontal"
3050
  msgstr ""
3051
 
3052
+ #: core/templates/parts/customize-checkbox.php:71
3053
+ #: core/templates/parts/customize-radio.php:66
3054
  msgid "Vertical"
3055
  msgstr ""
3056
 
3057
+ #: core/templates/parts/customize-checkbox.php:75
3058
+ #: core/templates/parts/customize-radio.php:70
3059
  msgid "Choices width"
3060
  msgstr ""
3061
 
3062
+ #: core/templates/parts/customize-checkbox.php:77
3063
+ #: core/templates/parts/customize-checkbox.php:86
3064
+ #: core/templates/parts/customize-email.php:66
3065
+ #: core/templates/parts/customize-multi-line-text.php:60
3066
+ #: core/templates/parts/customize-number.php:92
3067
+ #: core/templates/parts/customize-radio.php:72
3068
+ #: core/templates/parts/customize-radio.php:81
3069
+ #: core/templates/parts/customize-select.php:74
3070
+ #: core/templates/parts/customize-single-line-text.php:50
3071
  msgid "Full"
3072
  msgstr ""
3073
 
3074
+ #: core/templates/parts/customize-checkbox.php:78
3075
+ #: core/templates/parts/customize-checkbox.php:87
3076
+ #: core/templates/parts/customize-email.php:67
3077
+ #: core/templates/parts/customize-multi-line-text.php:61
3078
+ #: core/templates/parts/customize-number.php:93
3079
+ #: core/templates/parts/customize-radio.php:73
3080
+ #: core/templates/parts/customize-radio.php:82
3081
+ #: core/templates/parts/customize-select.php:75
3082
+ #: core/templates/parts/customize-single-line-text.php:51
3083
  msgid "Half"
3084
  msgstr ""
3085
 
3086
+ #: core/templates/parts/customize-checkbox.php:79
3087
+ #: core/templates/parts/customize-checkbox.php:88
3088
+ #: core/templates/parts/customize-email.php:68
3089
+ #: core/templates/parts/customize-multi-line-text.php:62
3090
+ #: core/templates/parts/customize-number.php:94
3091
+ #: core/templates/parts/customize-radio.php:74
3092
+ #: core/templates/parts/customize-radio.php:83
3093
+ #: core/templates/parts/customize-select.php:76
3094
+ #: core/templates/parts/customize-single-line-text.php:52
3095
  msgid "Third"
3096
  msgstr ""
3097
 
3098
+ #: core/templates/parts/customize-checkbox.php:80
3099
+ #: core/templates/parts/customize-checkbox.php:89
3100
+ #: core/templates/parts/customize-email.php:69
3101
+ #: core/templates/parts/customize-multi-line-text.php:63
3102
+ #: core/templates/parts/customize-number.php:95
3103
+ #: core/templates/parts/customize-radio.php:75
3104
+ #: core/templates/parts/customize-radio.php:84
3105
+ #: core/templates/parts/customize-select.php:77
3106
+ #: core/templates/parts/customize-single-line-text.php:53
3107
  msgid "Auto"
3108
  msgstr ""
3109
 
3110
+ #: core/templates/parts/customize-checkbox.php:94
3111
+ #: core/templates/parts/customize-email.php:74
3112
+ #: core/templates/parts/customize-multi-line-text.php:68
3113
+ #: core/templates/parts/customize-number.php:100
3114
+ #: core/templates/parts/customize-radio.php:89
3115
+ #: core/templates/parts/customize-select.php:82
3116
+ #: core/templates/parts/customize-single-line-text.php:58
3117
+ msgid "Apply to all parts"
3118
  msgstr ""
3119
 
3120
+ #: core/templates/parts/customize-checkbox.php:101
3121
+ #: core/templates/parts/customize-email.php:81
3122
+ #: core/templates/parts/customize-multi-line-text.php:75
3123
+ #: core/templates/parts/customize-number.php:104
3124
+ #: core/templates/parts/customize-radio.php:93
3125
+ #: core/templates/parts/customize-select.php:89
3126
+ #: core/templates/parts/customize-single-line-text.php:65
3127
+ msgid "CSS classes"
3128
  msgstr ""
3129
 
3130
+ #: core/templates/parts/customize-checkbox.php:128
3131
  msgid "Checked by default"
3132
  msgstr ""
3133
 
3134
+ #: core/templates/parts/customize-email.php:8
3135
+ msgid "Lable display"
 
 
3136
  msgstr ""
3137
 
3138
  #: core/templates/parts/customize-email.php:13
3139
+ #: core/templates/parts/customize-multi-line-text.php:13
3140
  #: core/templates/parts/customize-number.php:13
3141
  #: core/templates/parts/customize-single-line-text.php:13
3142
+ msgid "Inside"
 
 
 
 
 
 
 
 
3143
  msgstr ""
3144
 
3145
+ #: core/templates/parts/customize-email.php:25
3146
+ #: core/templates/parts/customize-multi-line-text.php:25
3147
+ #: core/templates/parts/customize-number.php:25
3148
+ #: core/templates/parts/customize-single-line-text.php:25
3149
  msgid "Reveal on focus"
3150
  msgstr ""
3151
 
3152
+ #: core/templates/parts/customize-email.php:49
3153
  msgid "Suggest common email domains"
3154
  msgstr ""
3155
 
3156
+ #: core/templates/parts/customize-email.php:54
3157
+ #: core/templates/parts/customize-number.php:80
3158
+ msgid "Require confirmation"
 
 
 
 
 
 
 
 
 
3159
  msgstr ""
3160
 
3161
+ #: core/templates/parts/customize-multi-line-text.php:48
3162
  msgid "Limit words/characters"
3163
  msgstr ""
3164
 
3165
+ #: core/templates/parts/customize-multi-line-text.php:51
3166
  msgid "Words (max)"
3167
  msgstr ""
3168
 
3169
+ #: core/templates/parts/customize-multi-line-text.php:52
3170
  msgid "Words (min)"
3171
  msgstr ""
3172
 
3173
+ #: core/templates/parts/customize-multi-line-text.php:53
3174
  msgid "Characters (max)"
3175
  msgstr ""
3176
 
3177
+ #: core/templates/parts/customize-multi-line-text.php:54
3178
  msgid "Characters (min)"
3179
  msgstr ""
3180
 
3181
+ #: core/templates/parts/customize-number.php:38
3182
  msgid "Min value"
3183
  msgstr ""
3184
 
3185
+ #: core/templates/parts/customize-number.php:42
3186
  msgid "Max value"
3187
  msgstr ""
3188
 
3189
+ #: core/templates/parts/customize-number.php:59
3190
+ msgid "Use number separators"
3191
  msgstr ""
3192
 
3193
+ #: core/templates/parts/customize-number.php:64
3194
+ msgid "Grouping"
3195
  msgstr ""
3196
 
3197
+ #: core/templates/parts/customize-number.php:68
3198
+ msgid "Decimal"
3199
  msgstr ""
3200
 
3201
+ #: core/templates/parts/customize-number.php:74
3202
  msgid "Prefix"
3203
  msgstr ""
3204
 
3205
+ #: core/templates/parts/customize-radio.php:122
3206
+ #: core/templates/parts/customize-select.php:112
3207
  msgid "Make this option default"
3208
  msgstr ""
3209
 
3210
+ #: core/templates/parts/customize-select.php:68
3211
  msgid "Make searchable"
3212
  msgstr ""
3213
 
3214
+ #: core/templates/parts/customize-select.php:117
3215
+ msgid "Advanced"
3216
  msgstr ""
3217
 
3218
  #: core/templates/parts/frontend-checkbox.php:13
3223
  msgid "Click to edit this part."
3224
  msgstr ""
3225
 
3226
+ #: inc/classes/class-happyforms.php:85
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3227
  msgid "Redirect on complete"
3228
  msgstr ""
3229
 
3230
+ #: inc/classes/class-happyforms.php:86
3231
  msgid ""
3232
  "By default, recipients will be redirected to the post or page displaying "
3233
  "this form. To set a custom redirect webpage, add a link here."
3234
  msgstr ""
3235
 
3236
+ #: inc/classes/class-happyforms.php:92
 
 
 
 
 
 
 
 
 
 
3237
  msgid "Use theme styles"
3238
  msgstr ""
3239
 
3240
+ #: inc/classes/class-happyforms.php:93
3241
  msgid "Inherit theme default styles instead of using HappyForms styles."
3242
  msgstr ""
3243
 
3244
+ #: inc/classes/class-happyforms.php:99
3245
  msgid "Shuffle parts"
3246
  msgstr ""
3247
 
3248
+ #: inc/classes/class-happyforms.php:100
3249
  msgid "Shuffle the order of all form parts to avoid biases in your responses."
3250
  msgstr ""
3251
 
3252
+ #: inc/classes/class-happyforms.php:106
3253
+ msgid "Use reCAPTCHA"
 
 
3254
  msgstr ""
3255
 
3256
+ #: inc/classes/class-happyforms.php:107
3257
  msgid "Protect your form against bots using your Google ReCaptcha credentials."
3258
  msgstr ""
3259
 
3260
+ #: inc/classes/class-happyforms.php:113
3261
  msgid "Require password"
3262
  msgstr ""
3263
 
3264
+ #: inc/classes/class-happyforms.php:114
3265
  msgid "Only users with password will be able to view and submit the form."
3266
  msgstr ""
3267
 
3268
+ #: inc/classes/class-happyforms.php:120
3269
  msgid "Open in overlay window"
3270
  msgstr ""
3271
 
3272
+ #: inc/classes/class-happyforms.php:121
3273
  msgid "Generate a link that can be clicked to open an overlay window for this form."
3274
  msgstr ""
3275
 
3276
+ #: inc/classes/class-happyforms.php:127
3277
+ msgid "Save submissions"
3278
  msgstr ""
3279
 
3280
+ #: inc/classes/class-happyforms.php:128
3281
  msgid "Keep recipients responses stored in your WordPress database."
3282
  msgstr ""
3283
 
3284
+ #: inc/classes/class-happyforms.php:135
3285
+ msgid "Save abandoned submission"
3286
  msgstr ""
3287
 
3288
+ #: inc/classes/class-happyforms.php:136
3289
  msgid "Keep incomplete recipients responses stored in your WordPress database."
3290
  msgstr ""
3291
 
3292
+ #: inc/classes/class-happyforms.php:142
3293
+ msgid "Give each submission an ID number"
3294
  msgstr ""
3295
 
3296
+ #: inc/classes/class-happyforms.php:143
3297
  msgid "Tag responses with a unique, incremental identifier."
3298
  msgstr ""
3299
 
3300
+ #: inc/classes/class-happyforms.php:149
3301
  msgid "Preview values before submission"
3302
  msgstr ""
3303
 
3304
+ #: inc/classes/class-happyforms.php:150
3305
  msgid "Let your users review their submission before confirming it."
3306
  msgstr ""
3307
 
3308
+ #: inc/classes/class-happyforms.php:156
3309
  msgid "Fade submit button until valid"
3310
  msgstr ""
3311
 
3312
+ #: inc/classes/class-happyforms.php:157
3313
  msgid ""
3314
  "Reduce the opacity of the submit button until all required form parts are "
3315
  "valid."
3316
  msgstr ""
3317
 
3318
+ #: inc/classes/class-happyforms.php:163
3319
+ msgid "Limit submissions"
3320
  msgstr ""
3321
 
3322
+ #: inc/classes/class-happyforms.php:164
3323
  msgid "Set limit on number of allowed form submission in general or per user."
3324
  msgstr ""
3325
 
3326
+ #: inc/classes/class-happyforms.php:170
3327
  msgid "Schedule visibility"
3328
  msgstr ""
3329
 
3330
+ #: inc/classes/class-happyforms.php:171
3331
  msgid ""
3332
  "Show or hide this form during a chosen time and day. Go to Settings > "
3333
  "Timezone to set your city offset."
3334
  msgstr ""
3335
 
3336
+ #: inc/classes/class-happyforms.php:181
3337
+ msgid "Include mark and reply link"
3338
+ msgstr ""
3339
+
3340
+ #: inc/classes/class-happyforms.php:182
3341
+ msgid "Reply to your users and mark their submission as read in one click."
3342
+ msgstr ""
3343
+
3344
+ #: inc/classes/class-happyforms.php:188
3345
+ msgid "Link to attachments in email"
3346
+ msgstr ""
3347
+
3348
+ #: inc/classes/class-happyforms.php:189
3349
+ msgid "Show attachments as links instead of a simple counter."
3350
+ msgstr ""
3351
+
3352
+ #: inc/classes/class-happyforms.php:195
3353
+ msgid "Hide Placeholder parts in email"
3354
+ msgstr ""
3355
+
3356
+ #: inc/classes/class-happyforms.php:201
3357
+ msgid "Include referral link"
3358
+ msgstr ""
3359
+
3360
+ #: inc/classes/class-happyforms.php:202
3361
+ msgid "Include the page link your form was submitted from."
3362
+ msgstr ""
3363
+
3364
+ #: inc/classes/class-happyforms.php:208
3365
+ msgid "Attach PDF to confirmation email"
3366
+ msgstr ""
3367
+
3368
+ #: inc/classes/class-happyforms.php:209
3369
+ msgid "Attach a PDF to the recipient's confirmation email."
3370
+ msgstr ""
3371
+
3372
+ #: inc/classes/class-happyforms.php:215
3373
+ msgid "Send abandonment email"
3374
+ msgstr ""
3375
+
3376
+ #: inc/classes/class-happyforms.php:216
3377
+ msgid "Notify recipients when they abandon your form before submitting it."
3378
+ msgstr ""
3379
+
3380
+ #: inc/classes/class-happyforms.php:241
3381
  msgid "HappyForms Upgrade"
3382
  msgstr ""
3383
 
3384
+ #: inc/classes/class-happyforms.php:366
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3385
  msgid ""
3386
  "<p>Can we ask a favor?</p><p>You created your first form %s days ago — how "
3387
  "time flies! Since then, we’ve answered hundreds of community emails and "
3394
  "plan</a>.</p>"
3395
  msgstr ""
3396
 
3397
+ #: inc/classes/class-message-controller.php:612
3398
  #: inc/templates/email-owner.php:31
3399
  msgid "Tracking number"
3400
  msgstr ""
readme.txt CHANGED
@@ -5,7 +5,7 @@ Tags: contact, contact form, email, feedback form, form, form builder, custom fo
5
  Requires at least: 4.8
6
  Tested up to: 5.3
7
  Requires PHP: 5.3
8
- Stable tag: 1.8.22
9
  License: GPLv2 or later
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
 
@@ -97,6 +97,12 @@ Yep! HappyForms free isn't going anywhere but for those looking for even more yo
97
 
98
  == Changelog ==
99
 
 
 
 
 
 
 
100
  = 1.8.22 =
101
  * Improvement: Improved plugin's text domain for better management of translations.
102
  * Improvement: Various improvements to HappyForms UI styles and frontend.
@@ -553,6 +559,9 @@ Yep! HappyForms free isn't going anywhere but for those looking for even more yo
553
 
554
  == Upgrade Notice ==
555
 
 
 
 
556
  = 1.8.22 =
557
  * Improved text domain for better management of translations. Improvements to UI and frontend styles.
558
 
5
  Requires at least: 4.8
6
  Tested up to: 5.3
7
  Requires PHP: 5.3
8
+ Stable tag: 1.9.0
9
  License: GPLv2 or later
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
 
97
 
98
  == Changelog ==
99
 
100
+ = 1.9.0 =
101
+ * New feature: Date filter on All Forms screen now allows you to filter forms by date added.
102
+ * Improvement: Email controls are now grouped in a dedicated step.
103
+ * Improvement: Additional email controls for sender and reply-to addresses.
104
+ * Improvement: Various improvements to UI styles, wording, and default values of parts.
105
+
106
  = 1.8.22 =
107
  * Improvement: Improved plugin's text domain for better management of translations.
108
  * Improvement: Various improvements to HappyForms UI styles and frontend.
559
 
560
  == Upgrade Notice ==
561
 
562
+ = 1.9.0 =
563
+ * New Email step, various improvements to form builder UI.
564
+
565
  = 1.8.22 =
566
  * Improved text domain for better management of translations. Improvements to UI and frontend styles.
567