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

Version Description

  • Improvement: Improved plugin's text domain for better management of translations.
  • Improvement: Various improvements to HappyForms UI styles and frontend.
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.8.22
Comparing to
See all releases

Code changes from version 1.8.21 to 1.8.22

Files changed (48) hide show
  1. core/assets/css/admin.css +1 -1
  2. core/assets/css/color.css +13 -9
  3. core/assets/css/customize.css +4 -0
  4. core/assets/css/layout.css +1 -2
  5. core/classes/class-block.php +8 -8
  6. core/classes/class-form-admin.php +7 -7
  7. core/classes/class-form-controller.php +15 -15
  8. core/classes/class-form-part-library.php +1 -1
  9. core/classes/class-form-setup.php +39 -39
  10. core/classes/class-form-styles.php +126 -126
  11. core/classes/class-happyforms-core.php +20 -20
  12. core/classes/class-happyforms-widget.php +4 -4
  13. core/classes/class-tracking.php +5 -5
  14. core/classes/class-wp-customize-form-manager.php +11 -11
  15. core/classes/parts/class-part-checkbox.php +8 -5
  16. core/classes/parts/class-part-email.php +5 -5
  17. core/classes/parts/class-part-multi-line-text.php +11 -11
  18. core/classes/parts/class-part-number.php +6 -6
  19. core/classes/parts/class-part-radio.php +9 -6
  20. core/classes/parts/class-part-select.php +5 -5
  21. core/classes/parts/class-part-single-line-text.php +3 -3
  22. core/helpers/helper-activation.php +7 -7
  23. core/helpers/helper-form-templates.php +233 -233
  24. core/helpers/helper-misc.php +383 -375
  25. core/templates/admin-form-modal.php +2 -2
  26. core/templates/admin-tracking.php +4 -4
  27. core/templates/customize-controls/setup/alert-email-subject.php +1 -1
  28. core/templates/customize-controls/style/divider.php +2 -2
  29. core/templates/customize-form-build.php +5 -5
  30. core/templates/customize-form-item.php +6 -6
  31. core/templates/customize-form-part-footer.php +4 -4
  32. core/templates/customize-form-part-logic.php +2 -2
  33. core/templates/customize-form-parts-drawer.php +4 -4
  34. core/templates/customize-form-setup-logic.php +1 -1
  35. core/templates/customize-form-steps.php +6 -6
  36. core/templates/customize-header-actions.php +3 -3
  37. core/templates/parts/customize-checkbox.php +32 -32
  38. core/templates/parts/customize-email.php +26 -26
  39. core/templates/parts/customize-multi-line-text.php +24 -24
  40. core/templates/parts/customize-number.php +31 -31
  41. core/templates/parts/customize-radio.php +34 -34
  42. core/templates/parts/customize-select.php +33 -33
  43. core/templates/parts/customize-single-line-text.php +24 -24
  44. core/templates/parts/frontend-checkbox.php +1 -1
  45. core/templates/preview-form-pencil.php +1 -1
  46. happyforms.php +3 -2
  47. languages/happyforms.pot +143 -143
  48. readme.txt +8 -1
core/assets/css/admin.css CHANGED
@@ -260,5 +260,5 @@ p.welcome-panel-footer a:active {
260
  }
261
 
262
  #happyforms-notice-happyforms_form_saved_guide {
263
- border-color: #46b450;
264
  }
260
  }
261
 
262
  #happyforms-notice-happyforms_form_saved_guide {
263
+ border-left-color: #46b450;
264
  }
core/assets/css/color.css CHANGED
@@ -230,6 +230,7 @@
230
 
231
  .happyforms-styles .happyforms-part .option-label {
232
  border-radius: 6px;
 
233
  font-size: 16px;
234
  font-size: var(--happyforms-part-value-font-size);
235
  }
@@ -331,23 +332,24 @@
331
  /* parts - radio, checkbox */
332
 
333
  .happyforms-styles .happyforms-part .checkmark {
334
- position: relative;
335
- top: 4px;
336
  z-index: 5;
337
  display: flex;
338
  align-items: center;
339
  justify-content: center;
340
- width: 20px;
341
- min-width: 20px;
342
- height: 20px;
343
  border-radius: 50%;
344
  border: 1px solid;
345
- border-color: #dbdbdb;
346
- border-color: var(--happyforms-color-part-border);
 
 
 
347
  background-color: #fff;
348
  background-color: var(--happyforms-color-choice-checkmark-bg);
349
- color: #fff;
350
- color: var(--happyforms-color-choice-checkmark-color);
351
  }
352
 
353
  .happyforms-styles .happyforms-part .checkmark svg {
@@ -374,6 +376,8 @@
374
 
375
  .happyforms-styles .happyforms-part input:checked+.checkmark svg {
376
  display: block;
 
 
377
  }
378
 
379
  /* parts - select */
230
 
231
  .happyforms-styles .happyforms-part .option-label {
232
  border-radius: 6px;
233
+ line-height: 1;
234
  font-size: 16px;
235
  font-size: var(--happyforms-part-value-font-size);
236
  }
332
  /* parts - radio, checkbox */
333
 
334
  .happyforms-styles .happyforms-part .checkmark {
 
 
335
  z-index: 5;
336
  display: flex;
337
  align-items: center;
338
  justify-content: center;
339
+ width: 21px;
340
+ min-width: 21px;
341
+ height: 21px;
342
  border-radius: 50%;
343
  border: 1px solid;
344
+ border-color: #000;
345
+ border-color: var(--happyforms-color-choice-checkmark-bg-focus);
346
+ font-weight: bold;
347
+ font-size: 14px;
348
+ font-size: var(--happyforms-part-description-font-size);
349
  background-color: #fff;
350
  background-color: var(--happyforms-color-choice-checkmark-bg);
351
+ color: #000;
352
+ color: var(--happyforms-color-choice-checkmark-bg-focus);
353
  }
354
 
355
  .happyforms-styles .happyforms-part .checkmark svg {
376
 
377
  .happyforms-styles .happyforms-part input:checked+.checkmark svg {
378
  display: block;
379
+ color: #fff;
380
+ color: var(--happyforms-color-choice-checkmark-color);
381
  }
382
 
383
  /* parts - select */
core/assets/css/customize.css CHANGED
@@ -149,6 +149,10 @@ p.description a {
149
  width: 100%;
150
  }
151
 
 
 
 
 
152
  .happyforms-customize-heading h2 {
153
  border-top: 1px solid #ddd;
154
  padding-top: 20px;
149
  width: 100%;
150
  }
151
 
152
+ .customize-control input[type=checkbox] {
153
+ margin-left: 1px;
154
+ }
155
+
156
  .happyforms-customize-heading h2 {
157
  border-top: 1px solid #ddd;
158
  padding-top: 20px;
core/assets/css/layout.css CHANGED
@@ -192,7 +192,6 @@ h3.happyforms-form__title {
192
 
193
  .happyforms-part__label {
194
  display: inline-block;
195
- cursor: pointer;
196
  margin-bottom: 15px;
197
  }
198
 
@@ -374,7 +373,7 @@ h3.happyforms-form__title {
374
 
375
  .happyforms-part .option-label {
376
  display: flex;
377
- align-items: flex-start;
378
  position: relative;
379
  cursor: pointer;
380
  padding: 0 5px 5px 0;
192
 
193
  .happyforms-part__label {
194
  display: inline-block;
 
195
  margin-bottom: 15px;
196
  }
197
 
373
 
374
  .happyforms-part .option-label {
375
  display: flex;
376
+ align-items: center;
377
  position: relative;
378
  cursor: pointer;
379
  padding: 0 5px 5px 0;
core/classes/class-block.php CHANGED
@@ -46,8 +46,8 @@ class HappyForms_Block {
46
 
47
  private function get_properties() {
48
  $properties = array(
49
- 'title' => __( 'HappyForms', 'happyforms' ),
50
- 'description' => __( 'Contact form to manage and respond to conversations with customers.', 'happyforms' ),
51
  'category' => 'widgets',
52
  'icon' => 'format-status',
53
  'keywords' => array(
@@ -98,16 +98,16 @@ class HappyForms_Block {
98
  'upgrade_notice' => array(
99
  'show' => ( ! defined( 'HAPPYFORMS_UPGRADE_VERSION' ) ) ? true : false,
100
  'i18n' => array(
101
- 'text' => __( 'Do you want access to HappyForms’ most powerful features?', 'happyforms' ),
102
- 'link_text' => __( 'Discover HappyForms Upgrade', 'happyforms' ),
103
  ),
104
  'nonces' => $upgrade_notice_nonces
105
  ),
106
  'i18n' => array(
107
- 'select_default' => __( 'Select', 'happyforms' ),
108
- 'placeholder_text' => __( 'Which form would you like to add here?', 'happyforms' ),
109
- 'settings_title' => __( 'HappyForms Settings', 'happyforms' ),
110
- 'edit_form' => __( 'Edit Form', 'happyforms' )
111
  ),
112
  'dismissed_notices' => $admin_notices->get_dismissed_notices( $user_id )
113
  );
46
 
47
  private function get_properties() {
48
  $properties = array(
49
+ 'title' => __( 'HappyForms', HAPPYFORMS_TEXT_DOMAIN ),
50
+ 'description' => __( 'Contact form to manage and respond to conversations with customers.', HAPPYFORMS_TEXT_DOMAIN ),
51
  'category' => 'widgets',
52
  'icon' => 'format-status',
53
  'keywords' => array(
98
  'upgrade_notice' => array(
99
  'show' => ( ! defined( 'HAPPYFORMS_UPGRADE_VERSION' ) ) ? true : false,
100
  'i18n' => array(
101
+ 'text' => __( 'Do you want access to HappyForms’ most powerful features?', HAPPYFORMS_TEXT_DOMAIN ),
102
+ 'link_text' => __( 'Discover HappyForms Upgrade', HAPPYFORMS_TEXT_DOMAIN ),
103
  ),
104
  'nonces' => $upgrade_notice_nonces
105
  ),
106
  'i18n' => array(
107
+ 'select_default' => __( 'Select', HAPPYFORMS_TEXT_DOMAIN ),
108
+ 'placeholder_text' => __( 'Which form would you like to add here?', HAPPYFORMS_TEXT_DOMAIN ),
109
+ 'settings_title' => __( 'HappyForms Settings', HAPPYFORMS_TEXT_DOMAIN ),
110
+ 'edit_form' => __( 'Edit Form', HAPPYFORMS_TEXT_DOMAIN )
111
  ),
112
  'dismissed_notices' => $admin_notices->get_dismissed_notices( $user_id )
113
  );
core/classes/class-form-admin.php CHANGED
@@ -257,8 +257,8 @@ class HappyForms_Form_Admin {
257
  'cb' => $columns['cb'],
258
  'title' => $columns['title'],
259
  );
260
- $columns['shortcode'] = __( 'Shortcode', 'happyforms' );
261
- $columns['author'] = __( 'Author', 'happyforms' );
262
  $columns = $columns + array( 'date' => $date_column );
263
 
264
  /**
@@ -296,7 +296,7 @@ class HappyForms_Form_Admin {
296
  <div class="happyforms-shortcode-col">
297
  <span><?php echo esc_html( $shortcode ); ?></span>
298
  <input type="text" value="<?php echo esc_attr( $shortcode ); ?>">
299
- <a href="#" class="happyforms-shortcode-clipboard"><?php _e( 'Copy to clipboard', 'happyforms' ); ?></a>
300
  </div>
301
  <?php
302
  break;
@@ -337,15 +337,15 @@ class HappyForms_Form_Admin {
337
 
338
  $links = array(
339
  'edit' => array(
340
- __( 'Edit', 'happyforms' ),
341
  get_edit_post_link( $post->ID, 'build' )
342
  ),
343
  'duplicate' => array(
344
- __( 'Duplicate', 'happyforms' ),
345
  $duplicate_url,
346
  ),
347
  'trash' => array(
348
- __( 'Trash', 'happyforms' ),
349
  get_delete_post_link( $post->ID, '' )
350
  ),
351
  );
@@ -390,7 +390,7 @@ class HappyForms_Form_Admin {
390
  $admin_notices = happyforms_get_admin_notices();
391
  $admin_notices->register(
392
  'happyforms_form_duplicated',
393
- __( 'Form duplicated succesfully.', 'happyforms' ),
394
  array(
395
  'type' => 'success',
396
  'screen' => array( 'edit-happyform' ),
257
  'cb' => $columns['cb'],
258
  'title' => $columns['title'],
259
  );
260
+ $columns['shortcode'] = __( 'Shortcode', HAPPYFORMS_TEXT_DOMAIN );
261
+ $columns['author'] = __( 'Author', HAPPYFORMS_TEXT_DOMAIN );
262
  $columns = $columns + array( 'date' => $date_column );
263
 
264
  /**
296
  <div class="happyforms-shortcode-col">
297
  <span><?php echo esc_html( $shortcode ); ?></span>
298
  <input type="text" value="<?php echo esc_attr( $shortcode ); ?>">
299
+ <a href="#" class="happyforms-shortcode-clipboard"><?php _e( 'Copy to clipboard', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
300
  </div>
301
  <?php
302
  break;
337
 
338
  $links = array(
339
  'edit' => array(
340
+ __( 'Edit', HAPPYFORMS_TEXT_DOMAIN ),
341
  get_edit_post_link( $post->ID, 'build' )
342
  ),
343
  'duplicate' => array(
344
+ __( 'Duplicate', HAPPYFORMS_TEXT_DOMAIN ),
345
  $duplicate_url,
346
  ),
347
  'trash' => array(
348
+ __( 'Trash', HAPPYFORMS_TEXT_DOMAIN ),
349
  get_delete_post_link( $post->ID, '' )
350
  ),
351
  );
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' ),
core/classes/class-form-controller.php CHANGED
@@ -71,18 +71,18 @@ class HappyForms_Form_Controller {
71
  */
72
  public function register_post_type() {
73
  $labels = array(
74
- 'name' => __( 'Forms', 'happyforms' ),
75
- 'singular_name' => __( 'Form', 'happyforms' ),
76
- 'add_new_item' => __( 'Build form', 'happyforms' ),
77
- 'edit_item' => __( 'Edit form', 'happyforms' ),
78
- 'new_item' => __( 'Build form', 'happyforms' ),
79
- 'view_item' => __( 'View form', 'happyforms' ),
80
- 'view_items' => __( 'View forms', 'happyforms' ),
81
- 'search_items' => __( 'Search Forms', 'happyforms' ),
82
- 'not_found' => __( 'No form found', 'happyforms' ),
83
- 'not_found_in_trash' => __( 'No forms found in Trash', 'happyforms' ),
84
- 'all_items' => __( 'All Forms', 'happyforms' ),
85
- 'menu_name' => __( 'All Forms', 'happyforms' ),
86
  );
87
 
88
  $args = array(
@@ -181,7 +181,7 @@ class HappyForms_Form_Controller {
181
  'sanitize' => 'intval',
182
  ),
183
  'post_title' => array(
184
- 'default' => __( 'Untitled form', 'happyforms' ),
185
  'sanitize' => 'sanitize_text_field',
186
  ),
187
  'post_status' => array(
@@ -435,7 +435,7 @@ class HappyForms_Form_Controller {
435
  public function do_get( $post_ids = array(), $only_id = false ) {
436
  $query_params = array(
437
  'post_type' => happyforms_get_form_controller()->post_type,
438
- 'post_status' => 'publish',
439
  'posts_per_page' => -1,
440
  );
441
 
@@ -611,7 +611,7 @@ class HappyForms_Form_Controller {
611
  'post_type', 'post_status',
612
  ) ) );
613
 
614
- $duplicate['post_title'] = trim( $form->post_title . __( ' Copy', 'happyforms' ) );
615
  $duplicate_id = wp_insert_post( $duplicate );
616
 
617
  if ( ! is_wp_error( $duplicate_id ) ) {
71
  */
72
  public function register_post_type() {
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 ),
79
+ 'view_item' => __( 'View form', HAPPYFORMS_TEXT_DOMAIN ),
80
+ 'view_items' => __( 'View forms', HAPPYFORMS_TEXT_DOMAIN ),
81
+ 'search_items' => __( 'Search Forms', HAPPYFORMS_TEXT_DOMAIN ),
82
+ 'not_found' => __( 'No forms found.', HAPPYFORMS_TEXT_DOMAIN ),
83
+ 'not_found_in_trash' => __( 'No forms found in Trash', HAPPYFORMS_TEXT_DOMAIN ),
84
+ 'all_items' => __( 'All Forms', HAPPYFORMS_TEXT_DOMAIN ),
85
+ 'menu_name' => __( 'All Forms', HAPPYFORMS_TEXT_DOMAIN ),
86
  );
87
 
88
  $args = array(
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(
435
  public function do_get( $post_ids = array(), $only_id = false ) {
436
  $query_params = array(
437
  'post_type' => happyforms_get_form_controller()->post_type,
438
+ 'post_status' => array( 'publish', 'archive' ),
439
  'posts_per_page' => -1,
440
  );
441
 
611
  'post_type', 'post_status',
612
  ) ) );
613
 
614
+ $duplicate['post_title'] = trim( $form->post_title . __( ' Copy', HAPPYFORMS_TEXT_DOMAIN ) );
615
  $duplicate_id = wp_insert_post( $duplicate );
616
 
617
  if ( ! is_wp_error( $duplicate_id ) ) {
core/classes/class-form-part-library.php CHANGED
@@ -220,7 +220,7 @@ class HappyForms_Form_Part_Library {
220
  }
221
  } else {
222
  $error = new WP_Error( 'part', sprintf(
223
- __( 'Missing validation callback for field %s', 'happyforms' ),
224
  $field_name
225
  ) );
226
 
220
  }
221
  } else {
222
  $error = new WP_Error( 'part', sprintf(
223
+ __( 'Missing validation callback for field %s', HAPPYFORMS_TEXT_DOMAIN ),
224
  $field_name
225
  ) );
226
 
core/classes/class-form-setup.php CHANGED
@@ -48,11 +48,11 @@ class HappyForms_Form_Setup {
48
 
49
  $fields = array(
50
  'confirmation_message' => array(
51
- 'default' => __( 'Thank you! Your response has been successfully submitted.', 'happyforms' ),
52
  'sanitize' => 'esc_html',
53
  ),
54
  'error_message' => array(
55
- 'default' => __( 'Oops! Your response is invalid — please review your message.', 'happyforms' ),
56
  'sanitize' => 'esc_html'
57
  ),
58
  'receive_email_alerts' => array(
@@ -72,7 +72,7 @@ class HappyForms_Form_Setup {
72
  'sanitize' => 'happyforms_sanitize_checkbox',
73
  ),
74
  'alert_email_subject' => array(
75
- 'default' => __( 'You received a new message', 'happyforms' ),
76
  'sanitize' => 'sanitize_text_field',
77
  ),
78
  'send_confirmation_email' => array(
@@ -84,11 +84,11 @@ class HappyForms_Form_Setup {
84
  'sanitize' => 'sanitize_text_field',
85
  ),
86
  'confirmation_email_subject' => array(
87
- 'default' => __( 'We received your message', 'happyforms' ),
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' ),
92
  'sanitize' => 'esc_html',
93
  ),
94
  'confirmation_email_include_values' => array(
@@ -112,15 +112,15 @@ class HappyForms_Form_Setup {
112
  'sanitize' => 'happyforms_sanitize_checkbox',
113
  ),
114
  'required_part_label' => array(
115
- 'default' => __( 'This field is required.', 'happyforms' ),
116
  'sanitize' => 'sanitize_text_field'
117
  ),
118
  'optional_part_label' => array(
119
- 'default' => __( '(optional)', 'happyforms' ),
120
  'sanitize' => 'sanitize_text_field',
121
  ),
122
  'submit_button_label' => array(
123
- 'default' => __( 'Submit Form', 'happyforms' ),
124
  'sanitize' => 'sanitize_text_field',
125
  ),
126
  'form_expiration_datetime' => array(
@@ -144,7 +144,7 @@ class HappyForms_Form_Setup {
144
  'sanitize' => 'sanitize_text_field',
145
  ),
146
  'captcha_label' => array(
147
- 'default' => __( 'Validate your submission', 'happyforms' ),
148
  'sanitize' => 'sanitize_text_field'
149
  ),
150
  'preview_before_submit' => array(
@@ -152,7 +152,7 @@ class HappyForms_Form_Setup {
152
  'sanitize' => 'happyforms_sanitize_checkbox',
153
  ),
154
  'review_button_label' => array(
155
- 'default' => __( 'Review submission', 'happyforms' ),
156
  'sanitize' => 'sanitize_text_field',
157
  ),
158
  'unique_id' => array(
@@ -200,108 +200,108 @@ class HappyForms_Form_Setup {
200
  $controls = array(
201
  100 => array(
202
  'type' => 'editor',
203
- 'label' => __( 'Confirmation message', 'happyforms' ),
204
- 'tooltip' => __( 'This is the message your users will see after succesfully submitting your form.', 'happyforms' ),
205
  'field' => 'confirmation_message',
206
  ),
207
  110 => array(
208
  'type' => 'editor',
209
- 'label' => __( 'Error message', 'happyforms' ),
210
- 'tooltip' => __( 'This is the message your users will see when there are form errors preventing submission.', 'happyforms' ),
211
  'field' => 'error_message',
212
  ),
213
  200 => array(
214
  'type' => 'checkbox',
215
- 'label' => __( 'Receive submission alerts', 'happyforms' ),
216
  'field' => 'receive_email_alerts',
217
  ),
218
  300 => array(
219
  'type' => 'text',
220
- 'label' => __( 'Email address', 'happyforms' ),
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' ),
222
  'field' => 'email_recipient',
223
  ),
224
  310 => array(
225
  'type' => 'text',
226
- 'label' => __( 'Email Bcc address', 'happyforms' ),
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' ),
228
  'field' => 'email_bccs',
229
  ),
230
  400 => array(
231
  'type' => 'text',
232
- 'label' => __( 'Email subject', 'happyforms' ),
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' ),
239
  'field' => 'send_confirmation_email',
240
  ),
241
  600 => array(
242
  'type' => 'text',
243
- 'label' => __( 'Email display name', 'happyforms' ),
244
- 'tooltip' => __( 'If your form contains an email field, recipients will receive an email with this sender name.', 'happyforms' ),
245
  'field' => 'confirmation_email_from_name',
246
  ),
247
  700 => array(
248
  'type' => 'text',
249
- 'label' => __( 'Email subject', 'happyforms' ),
250
- 'tooltip' => __( 'If your form contains an email field, recipients will receive an email with this subject.', 'happyforms' ),
251
  'field' => 'confirmation_email_subject',
252
  ),
253
  800 => array(
254
  'type' => 'editor',
255
- 'label' => __( 'Email content', 'happyforms' ),
256
- 'tooltip' => __( 'If your form contains an email field, recipients will receive an email with this content.', 'happyforms' ),
257
  'field' => 'confirmation_email_content',
258
  ),
259
  810 => array(
260
  'type' => 'checkbox',
261
- 'label' => __( 'Include submitted values', 'happyforms' ),
262
  'field' => 'confirmation_email_include_values'
263
  ),
264
  899 => array(
265
  'type' => 'text',
266
- 'label' => __( 'Required part label', 'happyforms' ),
267
  'field' => 'required_part_label'
268
  ),
269
  900 => array(
270
  'type' => 'text',
271
- 'label' => __( 'Optional part label', 'happyforms' ),
272
  'field' => 'optional_part_label',
273
  ),
274
  1000 => array(
275
  'type' => 'text',
276
- 'label' => __( 'Submit button label', 'happyforms' ),
277
  'field' => 'submit_button_label',
278
  ),
279
  1100 => array(
280
  'type' => 'text',
281
- 'label' => __( 'Submit button HTML class', 'happyforms' ),
282
  'field' => 'submit_button_html_class'
283
  ),
284
  1200 => array(
285
  'type' => 'checkbox',
286
- 'label' => __( 'Set custom form HTML ID', 'happyforms' ),
287
  'field' => 'use_html_id',
288
- 'tooltip' => __( 'Add a unique HTML ID to your form. Write without a hash (#) character.', 'happyforms' ),
289
  ),
290
  1201 => array(
291
  'type' => 'text',
292
- 'label' => __( 'Form HTML ID', 'happyforms' ),
293
  'field' => 'html_id',
294
  ),
295
  1202 => array(
296
  'type' => 'checkbox',
297
- 'label' => __( 'Hide form after submission', 'happyforms' ),
298
- 'tooltip' => __( 'Hide all form parts and display just title and confirmation message on submit.', 'happyforms' ),
299
  'field' => 'form_hide_on_submit'
300
  ),
301
  1400 => array(
302
  'type' => 'checkbox',
303
- 'label' => __( 'Spam prevention', 'happyforms' ),
304
- 'tooltip' => __( 'Protect your form against bots by using HoneyPot security.', 'happyforms' ),
305
  'field' => 'spam_prevention',
306
  ),
307
  );
48
 
49
  $fields = array(
50
  'confirmation_message' => array(
51
+ 'default' => __( 'Thank you! Your response has been successfully submitted.', HAPPYFORMS_TEXT_DOMAIN ),
52
  'sanitize' => 'esc_html',
53
  ),
54
  'error_message' => array(
55
+ 'default' => __( 'Oops! Your response is invalid — please review your message.', HAPPYFORMS_TEXT_DOMAIN ),
56
  'sanitize' => 'esc_html'
57
  ),
58
  'receive_email_alerts' => array(
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(
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(
112
  'sanitize' => 'happyforms_sanitize_checkbox',
113
  ),
114
  'required_part_label' => array(
115
+ 'default' => __( 'This field is required.', HAPPYFORMS_TEXT_DOMAIN ),
116
  'sanitize' => 'sanitize_text_field'
117
  ),
118
  'optional_part_label' => array(
119
+ 'default' => __( '(optional)', HAPPYFORMS_TEXT_DOMAIN ),
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(
144
  'sanitize' => 'sanitize_text_field',
145
  ),
146
  'captcha_label' => array(
147
+ 'default' => __( 'Validate your submission', HAPPYFORMS_TEXT_DOMAIN ),
148
  'sanitize' => 'sanitize_text_field'
149
  ),
150
  'preview_before_submit' => array(
152
  'sanitize' => 'happyforms_sanitize_checkbox',
153
  ),
154
  'review_button_label' => array(
155
+ 'default' => __( 'Review submission', HAPPYFORMS_TEXT_DOMAIN ),
156
  'sanitize' => 'sanitize_text_field',
157
  ),
158
  'unique_id' => array(
200
  $controls = array(
201
  100 => array(
202
  'type' => 'editor',
203
+ 'label' => __( 'Confirmation message', HAPPYFORMS_TEXT_DOMAIN ),
204
+ 'tooltip' => __( 'This is the message your users will see after succesfully submitting your form.', HAPPYFORMS_TEXT_DOMAIN ),
205
  'field' => 'confirmation_message',
206
  ),
207
  110 => array(
208
  'type' => 'editor',
209
+ 'label' => __( 'Error message', HAPPYFORMS_TEXT_DOMAIN ),
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
  ),
301
  1400 => array(
302
  'type' => 'checkbox',
303
+ 'label' => __( 'Spam prevention', HAPPYFORMS_TEXT_DOMAIN ),
304
+ 'tooltip' => __( 'Protect your form against bots by using HoneyPot security.', HAPPYFORMS_TEXT_DOMAIN ),
305
  'field' => 'spam_prevention',
306
  ),
307
  );
core/classes/class-form-styles.php CHANGED
@@ -46,8 +46,8 @@ class HappyForms_Form_Styles {
46
  'form_direction' => array(
47
  'default' => '',
48
  'options' => array(
49
- '' => __( 'Left-to-right', 'happyforms' ),
50
- 'happyforms-form--direction-rtl' => __( 'Right-to-left', 'happyforms' )
51
  ),
52
  'target' => 'form_class',
53
  'sanitize' => 'sanitize_text_field'
@@ -68,9 +68,9 @@ class HappyForms_Form_Styles {
68
  'form_padding' => array(
69
  'default' => '',
70
  'options' => array(
71
- '' => __( 'Default', 'happyforms' ),
72
- 'happyforms-form--padding-narrow' => __( 'Narrow', 'happyforms' ),
73
- 'happyforms-form--padding-wide' => __( 'Wide', 'happyforms' )
74
  ),
75
  'target' => 'form_class',
76
  'sanitize' => 'sanitize_text_field'
@@ -84,8 +84,8 @@ class HappyForms_Form_Styles {
84
  'form_title' => array(
85
  'default' => '',
86
  'options' => array(
87
- '' => __( 'Show', 'happyforms' ),
88
- 'happyforms-form--hide-title' => __( 'Hide', 'happyforms' )
89
  ),
90
  'target' => 'form_class',
91
  'sanitize' => 'sanitize_text_field'
@@ -93,9 +93,9 @@ class HappyForms_Form_Styles {
93
  'form_title_alignment' => array(
94
  'default' => '',
95
  'options' => array(
96
- '' => __( 'Left', 'happyforms' ),
97
- 'happyforms-form--title-text-align-center' => __( 'Center', 'happyforms' ),
98
- 'happyforms-form--title-text-align-right' => __( 'Right', 'happyforms' )
99
  ),
100
  'sanitize' => 'sanitize_text_field',
101
  'target' => 'form_class'
@@ -113,8 +113,8 @@ class HappyForms_Form_Styles {
113
  'part_border' => array(
114
  'default' => '',
115
  'options' => array(
116
- '' => __( 'Show', 'happyforms' ),
117
- 'happyforms-form--part-border-off' => __( 'Hide', 'happyforms' )
118
  ),
119
  'target' => 'form_class',
120
  'sanitize' => 'sanitize_text_field'
@@ -122,8 +122,8 @@ class HappyForms_Form_Styles {
122
  'part_border_location' => array(
123
  'default' => '',
124
  'options' => array(
125
- '' => __( 'All sides', 'happyforms' ),
126
- 'happyforms-form--part-borders-bottom-only' => __( 'Bottom only', 'happyforms' )
127
  ),
128
  'target' => 'form_class',
129
  'sanitize' => 'sanitize_text_field'
@@ -131,9 +131,9 @@ class HappyForms_Form_Styles {
131
  'part_border_radius' => array(
132
  'default' => '',
133
  'options' => array(
134
- 'happyforms-form--part-border-radius-square' => __( 'Square', 'happyforms' ),
135
- '' => __( 'Round', 'happyforms' ),
136
- 'happyforms-form--part-border-radius-pill' => __( 'Pill', 'happyforms' )
137
  ),
138
  'target' => 'form_class',
139
  'sanitize' => 'sanitize_text_field'
@@ -141,9 +141,9 @@ class HappyForms_Form_Styles {
141
  'part_outer_padding' => array(
142
  'default' => '',
143
  'options' => array(
144
- 'happyforms-form--part-outer-padding-narrow' => __( 'Narrow', 'happyforms' ),
145
- '' => __( 'Default', 'happyforms' ),
146
- 'happyforms-form--part-outer-padding-wide' => __( 'Wide', 'happyforms' )
147
  ),
148
  'target' => 'form_class',
149
  'sanitize' => 'sanitize_text_field'
@@ -151,9 +151,9 @@ class HappyForms_Form_Styles {
151
  'part_inner_padding' => array(
152
  'default' => '',
153
  'options' => array(
154
- 'happyforms-form--part-inner-padding-narrow' => __( 'Narrow', 'happyforms' ),
155
- '' => __( 'Default', 'happyforms' ),
156
- 'happyforms-form--part-inner-padding-wide' => __( 'Wide', 'happyforms' )
157
  ),
158
  'target' => 'form_class',
159
  'sanitize' => 'sanitize_text_field'
@@ -167,9 +167,9 @@ class HappyForms_Form_Styles {
167
  'part_title_alignment' => array(
168
  'default' => '',
169
  'options' => array(
170
- '' => __( 'Left', 'happyforms' ),
171
- 'happyforms-form--part-title-text-align-center' => __( 'Center', 'happyforms' ),
172
- 'happyforms-form--part-title-text-align-right' => __( 'Right', 'happyforms' )
173
  ),
174
  'sanitize' => 'sanitize_text_field',
175
  'target' => 'form_class'
@@ -187,8 +187,8 @@ class HappyForms_Form_Styles {
187
  'part_title_font_weight' => array(
188
  'default' => '',
189
  'options' => array(
190
- '' => __( 'Normal', 'happyforms' ),
191
- 'happyforms-form--part-title-font-weight-bold' => __( 'Bold', 'happyforms' )
192
  ),
193
  'target' => 'form_class',
194
  'sanitize' => 'sanitize_text_field'
@@ -196,9 +196,9 @@ class HappyForms_Form_Styles {
196
  'part_description_alignment' => array(
197
  'default' => '',
198
  'options' => array(
199
- '' => __( 'Left', 'happyforms' ),
200
- 'happyforms-form--part-description-text-align-center' => __( 'Center', 'happyforms' ),
201
- 'happyforms-form--part-description-text-align-right' => __( 'Right', 'happyforms' )
202
  ),
203
  'sanitize' => 'sanitize_text_field',
204
  'target' => 'form_class'
@@ -216,9 +216,9 @@ class HappyForms_Form_Styles {
216
  'part_value_alignment' => array(
217
  'default' => '',
218
  'options' => array(
219
- '' => __( 'Left', 'happyforms' ),
220
- 'happyforms-form--part-value-text-align-center' => __( 'Center', 'happyforms' ),
221
- 'happyforms-form--part-value-text-align-right' => __( 'Right', 'happyforms' )
222
  ),
223
  'sanitize' => 'sanitize_text_field',
224
  'target' => 'form_class'
@@ -236,8 +236,8 @@ class HappyForms_Form_Styles {
236
  'submit_button_border' => array(
237
  'default' => '',
238
  'options' => array(
239
- '' => __( 'Show', 'happyforms' ),
240
- 'happyforms-form--submit-button-border-hide' => __( 'Hide', 'happyforms' )
241
  ),
242
  'target' => 'form_class',
243
  'sanitize' => 'sanitize_text_field'
@@ -245,9 +245,9 @@ class HappyForms_Form_Styles {
245
  'submit_button_border_radius' => array(
246
  'default' => '',
247
  'options' => array(
248
- 'happyforms-form--submit-button-border-radius-square' => __( 'Square', 'happyforms' ),
249
- '' => __( 'Round', 'happyforms' ),
250
- 'happyforms-form--submit-button-border-radius-pill' => __( 'Pill', 'happyforms' )
251
  ),
252
  'target' => 'form_class',
253
  'sanitize' => 'sanitize_text_field'
@@ -255,8 +255,8 @@ class HappyForms_Form_Styles {
255
  'submit_button_width' => array(
256
  'default' => '',
257
  'options' => array(
258
- '' => __( 'Default', 'happyforms' ),
259
- 'happyforms-form--submit-button-fullwidth' => __( 'Full width', 'happyforms' )
260
  ),
261
  'target' => 'form_class',
262
  'sanitize' => 'sanitize_text_field'
@@ -264,9 +264,9 @@ class HappyForms_Form_Styles {
264
  'submit_button_padding' => array(
265
  'default' => '',
266
  'options' => array(
267
- 'happyforms-form--submit-button-padding-narrow' => __( 'Narrow', 'happyforms' ),
268
- '' => __( 'Default', 'happyforms' ),
269
- 'happyforms-form--submit-button-padding-wide' => __( 'Wide', 'happyforms' )
270
  ),
271
  'target' => 'form_class',
272
  'sanitize' => 'sanitize_text_field'
@@ -284,8 +284,8 @@ class HappyForms_Form_Styles {
284
  'submit_button_font_weight' => array(
285
  'default' => '',
286
  'options' => array(
287
- 'happyforms-form--submit-button-normal' => __( 'Normal', 'happyforms' ),
288
- '' => __( 'Bold', 'happyforms' )
289
  ),
290
  'target' => 'form_class',
291
  'sanitize' => 'sanitize_text_field'
@@ -293,9 +293,9 @@ class HappyForms_Form_Styles {
293
  'submit_button_alignment' => array(
294
  'default' => '',
295
  'options' => array(
296
- '' => __( 'Left', 'happyforms' ),
297
- 'happyforms-form--submit-button-align-center' => __( 'Center', 'happyforms' ),
298
- 'happyforms-form--submit-button-align-right' => __( 'Right', 'happyforms' )
299
  ),
300
  'target' => 'form_class',
301
  'sanitize' => 'sanitize_text_field'
@@ -507,8 +507,8 @@ class HappyForms_Form_Styles {
507
  'notices_position' => array(
508
  'default' => '',
509
  'options' => array(
510
- '' => __( 'Above form', 'happyforms' ),
511
- 'happyforms-form--notices-below' => __( 'Below form', 'happyforms' ),
512
  ),
513
  'target' => 'form_class',
514
  'sanitize' => 'sanitize_text_field'
@@ -522,377 +522,377 @@ class HappyForms_Form_Styles {
522
  $controls = array(
523
  100 => array(
524
  'type' => 'divider',
525
- 'label' => __( 'General', 'happyforms' ),
526
  'id' => 'general',
527
  ),
528
  200 => array(
529
  'type' => 'range',
530
- 'label' => __( 'Width', 'happyforms' ),
531
  'field' => 'form_width'
532
  ),
533
  300 => array(
534
  'type' => 'buttonset',
535
- 'label' => __( 'Padding', 'happyforms' ),
536
  'field' => 'form_padding',
537
  ),
538
  400 => array(
539
  'type' => 'buttonset',
540
- 'label' => __( 'Direction', 'happyforms' ),
541
  'field' => 'form_direction'
542
  ),
543
  500 => array(
544
  'type' => 'buttonset',
545
- 'label' => __( 'Display notices', 'happyforms' ),
546
  'field' => 'notices_position'
547
  ),
548
  600 => array(
549
  'type' => 'heading',
550
  'id' => 'colors_general',
551
- 'label' => __( 'Colors', 'happyforms' )
552
  ),
553
  700 => array(
554
  'type' => 'color',
555
- 'label' => __( 'Primary', 'happyforms' ),
556
  'field' => 'color_primary',
557
  ),
558
  800 => array(
559
  'type' => 'color',
560
- 'label' => __( 'Success notice', 'happyforms' ),
561
  'field' => 'color_success_notice',
562
  ),
563
  801 => array(
564
  'type' => 'color',
565
- 'label' => __( 'Success notice text', 'happyforms' ),
566
  'field' => 'color_success_notice_text',
567
  ),
568
  900 => array(
569
  'type' => 'color',
570
- 'label' => __( 'Error', 'happyforms' ),
571
  'field' => 'color_error',
572
  ),
573
  901 => array(
574
  'type' => 'color',
575
- 'label' => __( 'Error notice', 'happyforms' ),
576
  'field' => 'color_error_notice',
577
  ),
578
  902 => array(
579
  'type' => 'color',
580
- 'label' => __( 'Error notice text', 'happyforms' ),
581
  'field' => 'color_error_notice_text',
582
  ),
583
  1000 => array(
584
  'type' => 'divider',
585
- 'label' => __( 'Title', 'happyforms' ),
586
  'id' => 'form_title',
587
  ),
588
  1100 => array(
589
  'type' => 'buttonset',
590
- 'label' => __( 'Display', 'happyforms' ),
591
  'field' => 'form_title',
592
  ),
593
  1200 => array(
594
  'type' => 'buttonset',
595
- 'label' => __( 'Alignment', 'happyforms' ),
596
  'field' => 'form_title_alignment'
597
  ),
598
  1300 => array(
599
  'type' => 'range',
600
- 'label' => __( 'Font size', 'happyforms' ),
601
  'field' => 'form_title_font_size',
602
  ),
603
  1400 => array(
604
  'type' => 'divider',
605
- 'label' => __( 'Part borders & spacing', 'happyforms' ),
606
  'id' => 'borders-spacing',
607
  ),
608
  1500 => array(
609
  'type' => 'buttonset',
610
- 'label' => __( 'Border', 'happyforms' ),
611
  'field' => 'part_border',
612
  ),
613
  1600 => array(
614
  'type' => 'buttonset',
615
- 'label' => __( 'Border location', 'happyforms' ),
616
  'field' => 'part_border_location',
617
  ),
618
  1700 => array(
619
  'type' => 'buttonset',
620
- 'label' => __( 'Border radius', 'happyforms' ),
621
  'field' => 'part_border_radius',
622
  ),
623
  1800 => array(
624
  'type' => 'buttonset',
625
- 'label' => __( 'Outer spacing', 'happyforms' ),
626
  'field' => 'part_outer_padding',
627
  ),
628
  1900 => array(
629
  'type' => 'buttonset',
630
- 'label' => __( 'Inner spacing', 'happyforms' ),
631
  'field' => 'part_inner_padding',
632
  ),
633
  2000 => array(
634
  'type' => 'heading',
635
  'id' => 'colors_part_borders',
636
- 'label' => __( 'Colors', 'happyforms' )
637
  ),
638
  2100 => array(
639
  'type' => 'color',
640
- 'label' => __( 'Border', 'happyforms' ),
641
  'field' => 'color_part_border',
642
  ),
643
  2200 => array(
644
  'type' => 'color',
645
- 'label' => __( 'Border on focus', 'happyforms' ),
646
  'field' => 'color_part_border_focus',
647
  ),
648
  2300 => array(
649
  'type' => 'color',
650
- 'label' => __( 'Background', 'happyforms' ),
651
  'field' => 'color_part_background',
652
  ),
653
  2400 => array(
654
  'type' => 'color',
655
- 'label' => __( 'Background on focus', 'happyforms' ),
656
  'field' => 'color_part_background_focus',
657
  ),
658
  2500 => array(
659
  'type' => 'divider',
660
- 'label' => __( 'Part labels & text', 'happyforms' ),
661
  'id' => 'labels-text',
662
  ),
663
  2600 => array(
664
  'type' => 'checkbox',
665
- 'label' => __( 'Toggle placeholder on part focus', 'happyforms' ),
666
  'field' => 'part_toggle_placeholders',
667
  ),
668
  2700 => array(
669
  'type' => 'buttonset',
670
- 'label' => __( 'Title alignment', 'happyforms' ),
671
  'field' => 'part_title_alignment'
672
  ),
673
  2800 => array(
674
  'type' => 'range',
675
- 'label' => __( 'Title font size', 'happyforms' ),
676
  'field' => 'part_title_font_size',
677
  ),
678
  2900 => array(
679
  'type' => 'buttonset',
680
- 'label' => __( 'Title font weight', 'happyforms' ),
681
  'field' => 'part_title_font_weight',
682
  ),
683
  3000 => array(
684
  'type' => 'buttonset',
685
- 'label' => __( 'Description alignment', 'happyforms' ),
686
  'field' => 'part_description_alignment'
687
  ),
688
  3100 => array(
689
  'type' => 'range',
690
- 'label' => __( 'Description font size', 'happyforms' ),
691
  'field' => 'part_description_font_size',
692
  ),
693
  3200 => array(
694
  'type' => 'buttonset',
695
- 'label' => __( 'Placeholder &amp; value alignment', 'happyforms' ),
696
  'field' => 'part_value_alignment'
697
  ),
698
  3300 => array(
699
  'type' => 'range',
700
- 'label' => __( 'Value font size', 'happyforms' ),
701
  'field' => 'part_value_font_size',
702
  ),
703
  3400 => array(
704
  'type' => 'heading',
705
  'id' => 'colors_part_text',
706
- 'label' => __( 'Colors', 'happyforms' )
707
  ),
708
  3500 => array(
709
  'type' => 'color',
710
- 'label' => __( 'Title', 'happyforms' ),
711
  'field' => 'color_part_title',
712
  ),
713
  3600 => array(
714
  'type' => 'color',
715
- 'label' => __( 'Value', 'happyforms' ),
716
  'field' => 'color_part_text',
717
  ),
718
  3700 => array(
719
  'type' => 'color',
720
- 'label' => __( 'Placeholder', 'happyforms' ),
721
  'field' => 'color_part_placeholder',
722
  ),
723
  3800 => array(
724
  'type' => 'divider',
725
- 'label' => __( 'Dropdowns', 'happyforms' ),
726
  'id' => 'dropdowns',
727
  ),
728
  3900 => array(
729
  'type' => 'heading',
730
  'id' => 'colors_dropdown_items',
731
- 'label' => __( 'Items', 'happyforms' )
732
  ),
733
  4000 => array(
734
  'type' => 'color',
735
- 'label' => __( 'Background', 'happyforms' ),
736
  'field' => 'color_dropdown_item_bg',
737
  ),
738
  4100 => array(
739
  'type' => 'color',
740
- 'label' => __( 'Text', 'happyforms' ),
741
  'field' => 'color_dropdown_item_text',
742
  ),
743
  4200 => array(
744
  'type' => 'color',
745
- 'label' => __( 'Background on focus', 'happyforms' ),
746
  'field' => 'color_dropdown_item_bg_hover',
747
  ),
748
  4300 => array(
749
  'type' => 'color',
750
- 'label' => __( 'Text focused', 'happyforms' ),
751
  'field' => 'color_dropdown_item_text_hover',
752
  ),
753
  4400 => array(
754
  'type' => 'divider',
755
- 'label' => __( 'Checkboxes & Radios', 'happyforms' ),
756
  'id' => 'checkboxes-radios',
757
  ),
758
  4500 => array(
759
  'type' => 'color',
760
- 'label' => __( 'Background', 'happyforms' ),
761
  'field' => 'color_choice_checkmark_bg',
762
  ),
763
  4600 => array(
764
  'type' => 'color',
765
- 'label' => __( 'Background on focus', 'happyforms' ),
766
  'field' => 'color_choice_checkmark_bg_focus',
767
  ),
768
  4700 => array(
769
  'type' => 'color',
770
- 'label' => __( 'Checkmark', 'happyforms' ),
771
  'field' => 'color_choice_checkmark_color',
772
  ),
773
  4800 => array(
774
  'type' => 'divider',
775
- 'label' => __( 'Rating', 'happyforms' ),
776
  'id' => 'rating',
777
  ),
778
  4900 => array(
779
  'type' => 'color',
780
- 'label' => __( 'Rating star color', 'happyforms' ),
781
  'field' => 'color_rating_star',
782
  ),
783
  5000 => array(
784
  'type' => 'color',
785
- 'label' => __( 'Rating star color on hover', 'happyforms' ),
786
  'field' => 'color_rating_star_hover',
787
  ),
788
  5100 => array(
789
  'type' => 'color',
790
- 'label' => __( 'Item background', 'happyforms' ),
791
  'field' => 'color_rating_background',
792
  ),
793
  5200 => array(
794
  'type' => 'color',
795
- 'label' => __( 'Item background on hover', 'happyforms' ),
796
  'field' => 'color_rating_background_hover',
797
  ),
798
  5300 => array(
799
  'type' => 'divider',
800
- 'label' => __( 'Tables', 'happyforms' ),
801
  'id' => 'tables',
802
  ),
803
  5400 => array(
804
  'type' => 'color',
805
- 'label' => __( 'Odd row primary', 'happyforms' ),
806
  'field' => 'color_table_row_odd',
807
  ),
808
  5500 => array(
809
  'type' => 'color',
810
- 'label' => __( 'Odd row secondary', 'happyforms' ),
811
  'field' => 'color_table_row_odd_text',
812
  ),
813
  5600 => array(
814
  'type' => 'color',
815
- 'label' => __( 'Even row primary', 'happyforms' ),
816
  'field' => 'color_table_row_even',
817
  ),
818
  5700 => array(
819
  'type' => 'color',
820
- 'label' => __( 'Even row secondary', 'happyforms' ),
821
  'field' => 'color_table_row_even_text',
822
  ),
823
  5800 => array(
824
  'type' => 'divider',
825
- 'label' => __( 'Submit button', 'happyforms' ),
826
  'id' => 'submit',
827
  ),
828
  5900 => array(
829
  'type' => 'buttonset',
830
- 'label' => __( 'Border', 'happyforms' ),
831
  'field' => 'submit_button_border',
832
  ),
833
  6000 => array(
834
  'type' => 'buttonset',
835
- 'label' => __( 'Border radius', 'happyforms' ),
836
  'field' => 'submit_button_border_radius',
837
  ),
838
  6100 => array(
839
  'type' => 'buttonset',
840
- 'label' => __( 'Width', 'happyforms' ),
841
  'field' => 'submit_button_width',
842
  ),
843
  6200 => array(
844
  'type' => 'buttonset',
845
- 'label' => __( 'Padding', 'happyforms' ),
846
  'field' => 'submit_button_padding',
847
  ),
848
  6300 => array(
849
  'type' => 'range',
850
- 'label' => __( 'Font size', 'happyforms' ),
851
  'field' => 'submit_button_font_size',
852
  ),
853
  6400 => array(
854
  'type' => 'buttonset',
855
- 'label' => __( 'Font weight', 'happyforms' ),
856
  'field' => 'submit_button_font_weight',
857
  ),
858
  6500 => array(
859
  'type' => 'buttonset',
860
- 'label' => __( 'Alignment', 'happyforms' ),
861
  'field' => 'submit_button_alignment',
862
  ),
863
  6600 => array(
864
  'type' => 'checkbox',
865
- 'label' => __( 'Make button a part of last input', 'happyforms' ),
866
  'field' => 'submit_button_part_of_last_input'
867
  ),
868
  6700 => array(
869
  'type' => 'heading',
870
  'id' => 'colors_submit_button',
871
- 'label' => __( 'Colors', 'happyforms' )
872
  ),
873
  6800 => array(
874
  'type' => 'color',
875
- 'label' => __( 'Background', 'happyforms' ),
876
  'field' => 'color_submit_background',
877
  ),
878
  6900 => array(
879
  'type' => 'color',
880
- 'label' => __( 'Background on focus', 'happyforms' ),
881
  'field' => 'color_submit_background_hover',
882
  ),
883
  7000 => array(
884
  'type' => 'color',
885
- 'label' => __( 'Border', 'happyforms' ),
886
  'field' => 'color_submit_border',
887
  ),
888
  7100 => array(
889
  'type' => 'color',
890
- 'label' => __( 'Text', 'happyforms' ),
891
  'field' => 'color_submit_text',
892
  ),
893
  7200 => array(
894
  'type' => 'color',
895
- 'label' => __( 'Text focused', 'happyforms' ),
896
  'field' => 'color_submit_text_hover',
897
  ),
898
  );
46
  'form_direction' => array(
47
  'default' => '',
48
  'options' => array(
49
+ '' => __( 'Left-to-right', HAPPYFORMS_TEXT_DOMAIN ),
50
+ 'happyforms-form--direction-rtl' => __( 'Right-to-left', HAPPYFORMS_TEXT_DOMAIN )
51
  ),
52
  'target' => 'form_class',
53
  'sanitize' => 'sanitize_text_field'
68
  'form_padding' => array(
69
  'default' => '',
70
  'options' => array(
71
+ '' => __( 'Default', HAPPYFORMS_TEXT_DOMAIN ),
72
+ 'happyforms-form--padding-narrow' => __( 'Narrow', HAPPYFORMS_TEXT_DOMAIN ),
73
+ 'happyforms-form--padding-wide' => __( 'Wide', HAPPYFORMS_TEXT_DOMAIN )
74
  ),
75
  'target' => 'form_class',
76
  'sanitize' => 'sanitize_text_field'
84
  'form_title' => array(
85
  'default' => '',
86
  'options' => array(
87
+ '' => __( 'Show', HAPPYFORMS_TEXT_DOMAIN ),
88
+ 'happyforms-form--hide-title' => __( 'Hide', HAPPYFORMS_TEXT_DOMAIN )
89
  ),
90
  'target' => 'form_class',
91
  'sanitize' => 'sanitize_text_field'
93
  'form_title_alignment' => array(
94
  'default' => '',
95
  'options' => array(
96
+ '' => __( 'Left', HAPPYFORMS_TEXT_DOMAIN ),
97
+ 'happyforms-form--title-text-align-center' => __( 'Center', HAPPYFORMS_TEXT_DOMAIN ),
98
+ 'happyforms-form--title-text-align-right' => __( 'Right', HAPPYFORMS_TEXT_DOMAIN )
99
  ),
100
  'sanitize' => 'sanitize_text_field',
101
  'target' => 'form_class'
113
  'part_border' => array(
114
  'default' => '',
115
  'options' => array(
116
+ '' => __( 'Show', HAPPYFORMS_TEXT_DOMAIN ),
117
+ 'happyforms-form--part-border-off' => __( 'Hide', HAPPYFORMS_TEXT_DOMAIN )
118
  ),
119
  'target' => 'form_class',
120
  'sanitize' => 'sanitize_text_field'
122
  'part_border_location' => array(
123
  'default' => '',
124
  'options' => array(
125
+ '' => __( 'All sides', HAPPYFORMS_TEXT_DOMAIN ),
126
+ 'happyforms-form--part-borders-bottom-only' => __( 'Bottom only', HAPPYFORMS_TEXT_DOMAIN )
127
  ),
128
  'target' => 'form_class',
129
  'sanitize' => 'sanitize_text_field'
131
  'part_border_radius' => array(
132
  'default' => '',
133
  'options' => array(
134
+ 'happyforms-form--part-border-radius-square' => __( 'Square', HAPPYFORMS_TEXT_DOMAIN ),
135
+ '' => __( 'Round', HAPPYFORMS_TEXT_DOMAIN ),
136
+ 'happyforms-form--part-border-radius-pill' => __( 'Pill', HAPPYFORMS_TEXT_DOMAIN )
137
  ),
138
  'target' => 'form_class',
139
  'sanitize' => 'sanitize_text_field'
141
  'part_outer_padding' => array(
142
  'default' => '',
143
  'options' => array(
144
+ 'happyforms-form--part-outer-padding-narrow' => __( 'Narrow', HAPPYFORMS_TEXT_DOMAIN ),
145
+ '' => __( 'Default', HAPPYFORMS_TEXT_DOMAIN ),
146
+ 'happyforms-form--part-outer-padding-wide' => __( 'Wide', HAPPYFORMS_TEXT_DOMAIN )
147
  ),
148
  'target' => 'form_class',
149
  'sanitize' => 'sanitize_text_field'
151
  'part_inner_padding' => array(
152
  'default' => '',
153
  'options' => array(
154
+ 'happyforms-form--part-inner-padding-narrow' => __( 'Narrow', HAPPYFORMS_TEXT_DOMAIN ),
155
+ '' => __( 'Default', HAPPYFORMS_TEXT_DOMAIN ),
156
+ 'happyforms-form--part-inner-padding-wide' => __( 'Wide', HAPPYFORMS_TEXT_DOMAIN )
157
  ),
158
  'target' => 'form_class',
159
  'sanitize' => 'sanitize_text_field'
167
  'part_title_alignment' => array(
168
  'default' => '',
169
  'options' => array(
170
+ '' => __( 'Left', HAPPYFORMS_TEXT_DOMAIN ),
171
+ 'happyforms-form--part-title-text-align-center' => __( 'Center', HAPPYFORMS_TEXT_DOMAIN ),
172
+ 'happyforms-form--part-title-text-align-right' => __( 'Right', HAPPYFORMS_TEXT_DOMAIN )
173
  ),
174
  'sanitize' => 'sanitize_text_field',
175
  'target' => 'form_class'
187
  'part_title_font_weight' => array(
188
  'default' => '',
189
  'options' => array(
190
+ '' => __( 'Normal', HAPPYFORMS_TEXT_DOMAIN ),
191
+ 'happyforms-form--part-title-font-weight-bold' => __( 'Bold', HAPPYFORMS_TEXT_DOMAIN )
192
  ),
193
  'target' => 'form_class',
194
  'sanitize' => 'sanitize_text_field'
196
  'part_description_alignment' => array(
197
  'default' => '',
198
  'options' => array(
199
+ '' => __( 'Left', HAPPYFORMS_TEXT_DOMAIN ),
200
+ 'happyforms-form--part-description-text-align-center' => __( 'Center', HAPPYFORMS_TEXT_DOMAIN ),
201
+ 'happyforms-form--part-description-text-align-right' => __( 'Right', HAPPYFORMS_TEXT_DOMAIN )
202
  ),
203
  'sanitize' => 'sanitize_text_field',
204
  'target' => 'form_class'
216
  'part_value_alignment' => array(
217
  'default' => '',
218
  'options' => array(
219
+ '' => __( 'Left', HAPPYFORMS_TEXT_DOMAIN ),
220
+ 'happyforms-form--part-value-text-align-center' => __( 'Center', HAPPYFORMS_TEXT_DOMAIN ),
221
+ 'happyforms-form--part-value-text-align-right' => __( 'Right', HAPPYFORMS_TEXT_DOMAIN )
222
  ),
223
  'sanitize' => 'sanitize_text_field',
224
  'target' => 'form_class'
236
  'submit_button_border' => array(
237
  'default' => '',
238
  'options' => array(
239
+ '' => __( 'Show', HAPPYFORMS_TEXT_DOMAIN ),
240
+ 'happyforms-form--submit-button-border-hide' => __( 'Hide', HAPPYFORMS_TEXT_DOMAIN )
241
  ),
242
  'target' => 'form_class',
243
  'sanitize' => 'sanitize_text_field'
245
  'submit_button_border_radius' => array(
246
  'default' => '',
247
  'options' => array(
248
+ 'happyforms-form--submit-button-border-radius-square' => __( 'Square', HAPPYFORMS_TEXT_DOMAIN ),
249
+ '' => __( 'Round', HAPPYFORMS_TEXT_DOMAIN ),
250
+ 'happyforms-form--submit-button-border-radius-pill' => __( 'Pill', HAPPYFORMS_TEXT_DOMAIN )
251
  ),
252
  'target' => 'form_class',
253
  'sanitize' => 'sanitize_text_field'
255
  'submit_button_width' => array(
256
  'default' => '',
257
  'options' => array(
258
+ '' => __( 'Default', HAPPYFORMS_TEXT_DOMAIN ),
259
+ 'happyforms-form--submit-button-fullwidth' => __( 'Full width', HAPPYFORMS_TEXT_DOMAIN )
260
  ),
261
  'target' => 'form_class',
262
  'sanitize' => 'sanitize_text_field'
264
  'submit_button_padding' => array(
265
  'default' => '',
266
  'options' => array(
267
+ 'happyforms-form--submit-button-padding-narrow' => __( 'Narrow', HAPPYFORMS_TEXT_DOMAIN ),
268
+ '' => __( 'Default', HAPPYFORMS_TEXT_DOMAIN ),
269
+ 'happyforms-form--submit-button-padding-wide' => __( 'Wide', HAPPYFORMS_TEXT_DOMAIN )
270
  ),
271
  'target' => 'form_class',
272
  'sanitize' => 'sanitize_text_field'
284
  'submit_button_font_weight' => array(
285
  'default' => '',
286
  'options' => array(
287
+ 'happyforms-form--submit-button-normal' => __( 'Normal', HAPPYFORMS_TEXT_DOMAIN ),
288
+ '' => __( 'Bold', HAPPYFORMS_TEXT_DOMAIN )
289
  ),
290
  'target' => 'form_class',
291
  'sanitize' => 'sanitize_text_field'
293
  'submit_button_alignment' => array(
294
  'default' => '',
295
  'options' => array(
296
+ '' => __( 'Left', HAPPYFORMS_TEXT_DOMAIN ),
297
+ 'happyforms-form--submit-button-align-center' => __( 'Center', HAPPYFORMS_TEXT_DOMAIN ),
298
+ 'happyforms-form--submit-button-align-right' => __( 'Right', HAPPYFORMS_TEXT_DOMAIN )
299
  ),
300
  'target' => 'form_class',
301
  'sanitize' => 'sanitize_text_field'
507
  'notices_position' => array(
508
  'default' => '',
509
  'options' => array(
510
+ '' => __( 'Above form', HAPPYFORMS_TEXT_DOMAIN ),
511
+ 'happyforms-form--notices-below' => __( 'Below form', HAPPYFORMS_TEXT_DOMAIN ),
512
  ),
513
  'target' => 'form_class',
514
  'sanitize' => 'sanitize_text_field'
522
  $controls = array(
523
  100 => array(
524
  'type' => 'divider',
525
+ 'label' => __( 'General', HAPPYFORMS_TEXT_DOMAIN ),
526
  'id' => 'general',
527
  ),
528
  200 => array(
529
  'type' => 'range',
530
+ 'label' => __( 'Width', HAPPYFORMS_TEXT_DOMAIN ),
531
  'field' => 'form_width'
532
  ),
533
  300 => array(
534
  'type' => 'buttonset',
535
+ 'label' => __( 'Padding', HAPPYFORMS_TEXT_DOMAIN ),
536
  'field' => 'form_padding',
537
  ),
538
  400 => array(
539
  'type' => 'buttonset',
540
+ 'label' => __( 'Direction', HAPPYFORMS_TEXT_DOMAIN ),
541
  'field' => 'form_direction'
542
  ),
543
  500 => array(
544
  'type' => 'buttonset',
545
+ 'label' => __( 'Display notices', HAPPYFORMS_TEXT_DOMAIN ),
546
  'field' => 'notices_position'
547
  ),
548
  600 => array(
549
  'type' => 'heading',
550
  'id' => 'colors_general',
551
+ 'label' => __( 'Colors', HAPPYFORMS_TEXT_DOMAIN )
552
  ),
553
  700 => array(
554
  'type' => 'color',
555
+ 'label' => __( 'Primary', HAPPYFORMS_TEXT_DOMAIN ),
556
  'field' => 'color_primary',
557
  ),
558
  800 => array(
559
  'type' => 'color',
560
+ 'label' => __( 'Success notice', HAPPYFORMS_TEXT_DOMAIN ),
561
  'field' => 'color_success_notice',
562
  ),
563
  801 => array(
564
  'type' => 'color',
565
+ 'label' => __( 'Success notice text', HAPPYFORMS_TEXT_DOMAIN ),
566
  'field' => 'color_success_notice_text',
567
  ),
568
  900 => array(
569
  'type' => 'color',
570
+ 'label' => __( 'Error', HAPPYFORMS_TEXT_DOMAIN ),
571
  'field' => 'color_error',
572
  ),
573
  901 => array(
574
  'type' => 'color',
575
+ 'label' => __( 'Error notice', HAPPYFORMS_TEXT_DOMAIN ),
576
  'field' => 'color_error_notice',
577
  ),
578
  902 => array(
579
  'type' => 'color',
580
+ 'label' => __( 'Error notice text', HAPPYFORMS_TEXT_DOMAIN ),
581
  'field' => 'color_error_notice_text',
582
  ),
583
  1000 => array(
584
  'type' => 'divider',
585
+ 'label' => __( 'Title', HAPPYFORMS_TEXT_DOMAIN ),
586
  'id' => 'form_title',
587
  ),
588
  1100 => array(
589
  'type' => 'buttonset',
590
+ 'label' => __( 'Display', HAPPYFORMS_TEXT_DOMAIN ),
591
  'field' => 'form_title',
592
  ),
593
  1200 => array(
594
  'type' => 'buttonset',
595
+ 'label' => __( 'Alignment', HAPPYFORMS_TEXT_DOMAIN ),
596
  'field' => 'form_title_alignment'
597
  ),
598
  1300 => array(
599
  'type' => 'range',
600
+ 'label' => __( 'Font size', HAPPYFORMS_TEXT_DOMAIN ),
601
  'field' => 'form_title_font_size',
602
  ),
603
  1400 => array(
604
  'type' => 'divider',
605
+ 'label' => __( 'Part borders & spacing', HAPPYFORMS_TEXT_DOMAIN ),
606
  'id' => 'borders-spacing',
607
  ),
608
  1500 => array(
609
  'type' => 'buttonset',
610
+ 'label' => __( 'Border', HAPPYFORMS_TEXT_DOMAIN ),
611
  'field' => 'part_border',
612
  ),
613
  1600 => array(
614
  'type' => 'buttonset',
615
+ 'label' => __( 'Border location', HAPPYFORMS_TEXT_DOMAIN ),
616
  'field' => 'part_border_location',
617
  ),
618
  1700 => array(
619
  'type' => 'buttonset',
620
+ 'label' => __( 'Border radius', HAPPYFORMS_TEXT_DOMAIN ),
621
  'field' => 'part_border_radius',
622
  ),
623
  1800 => array(
624
  'type' => 'buttonset',
625
+ 'label' => __( 'Outer spacing', HAPPYFORMS_TEXT_DOMAIN ),
626
  'field' => 'part_outer_padding',
627
  ),
628
  1900 => array(
629
  'type' => 'buttonset',
630
+ 'label' => __( 'Inner spacing', HAPPYFORMS_TEXT_DOMAIN ),
631
  'field' => 'part_inner_padding',
632
  ),
633
  2000 => array(
634
  'type' => 'heading',
635
  'id' => 'colors_part_borders',
636
+ 'label' => __( 'Colors', HAPPYFORMS_TEXT_DOMAIN )
637
  ),
638
  2100 => array(
639
  'type' => 'color',
640
+ 'label' => __( 'Border', HAPPYFORMS_TEXT_DOMAIN ),
641
  'field' => 'color_part_border',
642
  ),
643
  2200 => array(
644
  'type' => 'color',
645
+ 'label' => __( 'Border on focus', HAPPYFORMS_TEXT_DOMAIN ),
646
  'field' => 'color_part_border_focus',
647
  ),
648
  2300 => array(
649
  'type' => 'color',
650
+ 'label' => __( 'Background', HAPPYFORMS_TEXT_DOMAIN ),
651
  'field' => 'color_part_background',
652
  ),
653
  2400 => array(
654
  'type' => 'color',
655
+ 'label' => __( 'Background on focus', HAPPYFORMS_TEXT_DOMAIN ),
656
  'field' => 'color_part_background_focus',
657
  ),
658
  2500 => array(
659
  'type' => 'divider',
660
+ 'label' => __( 'Part labels & text', HAPPYFORMS_TEXT_DOMAIN ),
661
  'id' => 'labels-text',
662
  ),
663
  2600 => array(
664
  'type' => 'checkbox',
665
+ 'label' => __( 'Toggle placeholder on part focus', HAPPYFORMS_TEXT_DOMAIN ),
666
  'field' => 'part_toggle_placeholders',
667
  ),
668
  2700 => array(
669
  'type' => 'buttonset',
670
+ 'label' => __( 'Title alignment', HAPPYFORMS_TEXT_DOMAIN ),
671
  'field' => 'part_title_alignment'
672
  ),
673
  2800 => array(
674
  'type' => 'range',
675
+ 'label' => __( 'Title font size', HAPPYFORMS_TEXT_DOMAIN ),
676
  'field' => 'part_title_font_size',
677
  ),
678
  2900 => array(
679
  'type' => 'buttonset',
680
+ 'label' => __( 'Title font weight', HAPPYFORMS_TEXT_DOMAIN ),
681
  'field' => 'part_title_font_weight',
682
  ),
683
  3000 => array(
684
  'type' => 'buttonset',
685
+ 'label' => __( 'Description alignment', HAPPYFORMS_TEXT_DOMAIN ),
686
  'field' => 'part_description_alignment'
687
  ),
688
  3100 => array(
689
  'type' => 'range',
690
+ 'label' => __( 'Description font size', HAPPYFORMS_TEXT_DOMAIN ),
691
  'field' => 'part_description_font_size',
692
  ),
693
  3200 => array(
694
  'type' => 'buttonset',
695
+ 'label' => __( 'Placeholder &amp; value alignment', HAPPYFORMS_TEXT_DOMAIN ),
696
  'field' => 'part_value_alignment'
697
  ),
698
  3300 => array(
699
  'type' => 'range',
700
+ 'label' => __( 'Value font size', HAPPYFORMS_TEXT_DOMAIN ),
701
  'field' => 'part_value_font_size',
702
  ),
703
  3400 => array(
704
  'type' => 'heading',
705
  'id' => 'colors_part_text',
706
+ 'label' => __( 'Colors', HAPPYFORMS_TEXT_DOMAIN )
707
  ),
708
  3500 => array(
709
  'type' => 'color',
710
+ 'label' => __( 'Title', HAPPYFORMS_TEXT_DOMAIN ),
711
  'field' => 'color_part_title',
712
  ),
713
  3600 => array(
714
  'type' => 'color',
715
+ 'label' => __( 'Value', HAPPYFORMS_TEXT_DOMAIN ),
716
  'field' => 'color_part_text',
717
  ),
718
  3700 => array(
719
  'type' => 'color',
720
+ 'label' => __( 'Placeholder', HAPPYFORMS_TEXT_DOMAIN ),
721
  'field' => 'color_part_placeholder',
722
  ),
723
  3800 => array(
724
  'type' => 'divider',
725
+ 'label' => __( 'Dropdowns', HAPPYFORMS_TEXT_DOMAIN ),
726
  'id' => 'dropdowns',
727
  ),
728
  3900 => array(
729
  'type' => 'heading',
730
  'id' => 'colors_dropdown_items',
731
+ 'label' => __( 'Items', HAPPYFORMS_TEXT_DOMAIN )
732
  ),
733
  4000 => array(
734
  'type' => 'color',
735
+ 'label' => __( 'Background', HAPPYFORMS_TEXT_DOMAIN ),
736
  'field' => 'color_dropdown_item_bg',
737
  ),
738
  4100 => array(
739
  'type' => 'color',
740
+ 'label' => __( 'Text', HAPPYFORMS_TEXT_DOMAIN ),
741
  'field' => 'color_dropdown_item_text',
742
  ),
743
  4200 => array(
744
  'type' => 'color',
745
+ 'label' => __( 'Background on focus', HAPPYFORMS_TEXT_DOMAIN ),
746
  'field' => 'color_dropdown_item_bg_hover',
747
  ),
748
  4300 => array(
749
  'type' => 'color',
750
+ 'label' => __( 'Text focused', HAPPYFORMS_TEXT_DOMAIN ),
751
  'field' => 'color_dropdown_item_text_hover',
752
  ),
753
  4400 => array(
754
  'type' => 'divider',
755
+ 'label' => __( 'Checkboxes & Radios', HAPPYFORMS_TEXT_DOMAIN ),
756
  'id' => 'checkboxes-radios',
757
  ),
758
  4500 => array(
759
  'type' => 'color',
760
+ 'label' => __( 'Background', HAPPYFORMS_TEXT_DOMAIN ),
761
  'field' => 'color_choice_checkmark_bg',
762
  ),
763
  4600 => array(
764
  'type' => 'color',
765
+ 'label' => __( 'Background on focus', HAPPYFORMS_TEXT_DOMAIN ),
766
  'field' => 'color_choice_checkmark_bg_focus',
767
  ),
768
  4700 => array(
769
  'type' => 'color',
770
+ 'label' => __( 'Checkmark', HAPPYFORMS_TEXT_DOMAIN ),
771
  'field' => 'color_choice_checkmark_color',
772
  ),
773
  4800 => array(
774
  'type' => 'divider',
775
+ 'label' => __( 'Rating', HAPPYFORMS_TEXT_DOMAIN ),
776
  'id' => 'rating',
777
  ),
778
  4900 => array(
779
  'type' => 'color',
780
+ 'label' => __( 'Rating star color', HAPPYFORMS_TEXT_DOMAIN ),
781
  'field' => 'color_rating_star',
782
  ),
783
  5000 => array(
784
  'type' => 'color',
785
+ 'label' => __( 'Rating star color on hover', HAPPYFORMS_TEXT_DOMAIN ),
786
  'field' => 'color_rating_star_hover',
787
  ),
788
  5100 => array(
789
  'type' => 'color',
790
+ 'label' => __( 'Item background', HAPPYFORMS_TEXT_DOMAIN ),
791
  'field' => 'color_rating_background',
792
  ),
793
  5200 => array(
794
  'type' => 'color',
795
+ 'label' => __( 'Item background on hover', HAPPYFORMS_TEXT_DOMAIN ),
796
  'field' => 'color_rating_background_hover',
797
  ),
798
  5300 => array(
799
  'type' => 'divider',
800
+ 'label' => __( 'Tables', HAPPYFORMS_TEXT_DOMAIN ),
801
  'id' => 'tables',
802
  ),
803
  5400 => array(
804
  'type' => 'color',
805
+ 'label' => __( 'Odd row primary', HAPPYFORMS_TEXT_DOMAIN ),
806
  'field' => 'color_table_row_odd',
807
  ),
808
  5500 => array(
809
  'type' => 'color',
810
+ 'label' => __( 'Odd row secondary', HAPPYFORMS_TEXT_DOMAIN ),
811
  'field' => 'color_table_row_odd_text',
812
  ),
813
  5600 => array(
814
  'type' => 'color',
815
+ 'label' => __( 'Even row primary', HAPPYFORMS_TEXT_DOMAIN ),
816
  'field' => 'color_table_row_even',
817
  ),
818
  5700 => array(
819
  'type' => 'color',
820
+ 'label' => __( 'Even row secondary', HAPPYFORMS_TEXT_DOMAIN ),
821
  'field' => 'color_table_row_even_text',
822
  ),
823
  5800 => array(
824
  'type' => 'divider',
825
+ 'label' => __( 'Submit button', HAPPYFORMS_TEXT_DOMAIN ),
826
  'id' => 'submit',
827
  ),
828
  5900 => array(
829
  'type' => 'buttonset',
830
+ 'label' => __( 'Border', HAPPYFORMS_TEXT_DOMAIN ),
831
  'field' => 'submit_button_border',
832
  ),
833
  6000 => array(
834
  'type' => 'buttonset',
835
+ 'label' => __( 'Border radius', HAPPYFORMS_TEXT_DOMAIN ),
836
  'field' => 'submit_button_border_radius',
837
  ),
838
  6100 => array(
839
  'type' => 'buttonset',
840
+ 'label' => __( 'Width', HAPPYFORMS_TEXT_DOMAIN ),
841
  'field' => 'submit_button_width',
842
  ),
843
  6200 => array(
844
  'type' => 'buttonset',
845
+ 'label' => __( 'Padding', HAPPYFORMS_TEXT_DOMAIN ),
846
  'field' => 'submit_button_padding',
847
  ),
848
  6300 => array(
849
  'type' => 'range',
850
+ 'label' => __( 'Font size', HAPPYFORMS_TEXT_DOMAIN ),
851
  'field' => 'submit_button_font_size',
852
  ),
853
  6400 => array(
854
  'type' => 'buttonset',
855
+ 'label' => __( 'Font weight', HAPPYFORMS_TEXT_DOMAIN ),
856
  'field' => 'submit_button_font_weight',
857
  ),
858
  6500 => array(
859
  'type' => 'buttonset',
860
+ 'label' => __( 'Alignment', HAPPYFORMS_TEXT_DOMAIN ),
861
  'field' => 'submit_button_alignment',
862
  ),
863
  6600 => array(
864
  'type' => 'checkbox',
865
+ 'label' => __( 'Make button a part of last input', HAPPYFORMS_TEXT_DOMAIN ),
866
  'field' => 'submit_button_part_of_last_input'
867
  ),
868
  6700 => array(
869
  'type' => 'heading',
870
  'id' => 'colors_submit_button',
871
+ 'label' => __( 'Colors', HAPPYFORMS_TEXT_DOMAIN )
872
  ),
873
  6800 => array(
874
  'type' => 'color',
875
+ 'label' => __( 'Background', HAPPYFORMS_TEXT_DOMAIN ),
876
  'field' => 'color_submit_background',
877
  ),
878
  6900 => array(
879
  'type' => 'color',
880
+ 'label' => __( 'Background on focus', HAPPYFORMS_TEXT_DOMAIN ),
881
  'field' => 'color_submit_background_hover',
882
  ),
883
  7000 => array(
884
  'type' => 'color',
885
+ 'label' => __( 'Border', HAPPYFORMS_TEXT_DOMAIN ),
886
  'field' => 'color_submit_border',
887
  ),
888
  7100 => array(
889
  'type' => 'color',
890
+ 'label' => __( 'Text', HAPPYFORMS_TEXT_DOMAIN ),
891
  'field' => 'color_submit_text',
892
  ),
893
  7200 => array(
894
  'type' => 'color',
895
+ 'label' => __( 'Text focused', HAPPYFORMS_TEXT_DOMAIN ),
896
  'field' => 'color_submit_text_hover',
897
  ),
898
  );
core/classes/class-happyforms-core.php CHANGED
@@ -159,8 +159,8 @@ class HappyForms_Core {
159
  $form_controller = happyforms_get_form_controller();
160
 
161
  add_menu_page(
162
- __( 'HappyForms Index', 'happyforms' ),
163
- __( 'HappyForms', 'happyforms' ),
164
  $form_controller->capability,
165
  'happyforms',
166
  array( $this, 'happyforms_page_index' ),
@@ -170,24 +170,24 @@ class HappyForms_Core {
170
 
171
  add_submenu_page(
172
  'happyforms',
173
- __( 'All Forms', 'happyforms' ),
174
- __( 'All Forms', 'happyforms' ),
175
  $form_controller->capability,
176
  '/edit.php?post_type=happyform'
177
  );
178
 
179
  add_submenu_page(
180
  'happyforms',
181
- __( 'Add New', 'happyforms' ),
182
- __( 'Add New', 'happyforms' ),
183
  $form_controller->capability,
184
  happyforms_get_form_edit_link( 0 )
185
  );
186
 
187
  add_submenu_page(
188
  'happyforms',
189
- __( 'Activity', 'happyforms' ),
190
- __( 'Activity', 'happyforms' ),
191
  apply_filters( 'happyforms_responses_page_capabilities', 'manage_options' ),
192
  apply_filters( 'happyforms_responses_page_url', '#responses' ),
193
  apply_filters( 'happyforms_responses_page_method', '' )
@@ -195,8 +195,8 @@ class HappyForms_Core {
195
 
196
  add_submenu_page(
197
  'happyforms',
198
- __( 'Integrations', 'happyforms' ),
199
- __( 'Integrations', 'happyforms' ),
200
  apply_filters( 'happyforms_integrations_page_capabilities', 'manage_options' ),
201
  apply_filters( 'happyforms_integrations_page_url', '#integrations' ),
202
  apply_filters( 'happyforms_integrations_page_method', '' )
@@ -204,8 +204,8 @@ class HappyForms_Core {
204
 
205
  add_submenu_page(
206
  'happyforms',
207
- __( 'Import/Export', 'happyforms' ),
208
- __( 'Import/Export', 'happyforms' ),
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', '' )
@@ -213,8 +213,8 @@ class HappyForms_Core {
213
 
214
  add_submenu_page(
215
  'happyforms',
216
- __( 'Welcome', 'happyforms' ),
217
- __( 'Welcome', 'happyforms' ),
218
  'manage_options',
219
  'happyforms-welcome',
220
  array( happyforms_get_tracking(), 'settings_page' )
@@ -436,7 +436,7 @@ class HappyForms_Core {
436
  return $context;
437
  }
438
 
439
- $button_html = '<a href="#" class="button happyforms-editor-button" data-title="' . __( 'Insert HappyForm', 'happyforms' ) . '"><span class="dashicons dashicons-format-status"></span><span>'. __( 'Add HappyForms', 'happyforms' ) .'</span></a>';
440
 
441
  add_action( 'admin_footer', array( $this, 'output_happyforms_modal' ) );
442
 
@@ -632,7 +632,7 @@ class HappyForms_Core {
632
 
633
  $screen->add_help_tab( array(
634
  'id' => 'happyforms_help_tab_overview',
635
- 'title' => __( 'Overview', 'happyforms' ),
636
  'callback' => array( $this, 'help_tab_overview_contents' )
637
  ) );
638
 
@@ -642,10 +642,10 @@ class HappyForms_Core {
642
 
643
  public function help_tab_overview_contents() {
644
  ?>
645
- <p><?php _e( 'Hey 👋 Welcome to your HappyForms Dashboard!', 'happyforms' ); ?></p>
646
 
647
  <p><?php printf(
648
- __( 'Are you looking for help? Well, we’ve swept the nacho crumbs from our keyboards, refilled our ginger beers and are ready to reply with answers! So, go on, email %s.', 'happyforms' ),
649
  '<a href="mailto:support@thethemefoundry.com">support@thethemefoundry.com</a>'
650
  ); ?></p>
651
  <?php
@@ -654,9 +654,9 @@ class HappyForms_Core {
654
  public function get_help_tab_sidebar_content() {
655
  ob_start();
656
  ?>
657
- <p><strong><?php _e( 'For more help', 'happyforms' ); ?>:</strong></p>
658
 
659
- <p><a href="https://happyforms.me/help-guide"><?php _e( 'Help guide', 'happyforms' ); ?></a></p>
660
  <?php
661
  $content = ob_get_clean();
662
 
159
  $form_controller = happyforms_get_form_controller();
160
 
161
  add_menu_page(
162
+ __( 'HappyForms Index', HAPPYFORMS_TEXT_DOMAIN ),
163
+ __( 'HappyForms', HAPPYFORMS_TEXT_DOMAIN ),
164
  $form_controller->capability,
165
  'happyforms',
166
  array( $this, 'happyforms_page_index' ),
170
 
171
  add_submenu_page(
172
  'happyforms',
173
+ __( 'All Forms', HAPPYFORMS_TEXT_DOMAIN ),
174
+ __( 'All Forms', HAPPYFORMS_TEXT_DOMAIN ),
175
  $form_controller->capability,
176
  '/edit.php?post_type=happyform'
177
  );
178
 
179
  add_submenu_page(
180
  'happyforms',
181
+ __( 'Add New', HAPPYFORMS_TEXT_DOMAIN ),
182
+ __( 'Add New', HAPPYFORMS_TEXT_DOMAIN ),
183
  $form_controller->capability,
184
  happyforms_get_form_edit_link( 0 )
185
  );
186
 
187
  add_submenu_page(
188
  'happyforms',
189
+ __( 'Activity', HAPPYFORMS_TEXT_DOMAIN ),
190
+ __( 'Activity', HAPPYFORMS_TEXT_DOMAIN ),
191
  apply_filters( 'happyforms_responses_page_capabilities', 'manage_options' ),
192
  apply_filters( 'happyforms_responses_page_url', '#responses' ),
193
  apply_filters( 'happyforms_responses_page_method', '' )
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', '' )
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', '' )
213
 
214
  add_submenu_page(
215
  'happyforms',
216
+ __( 'Welcome', HAPPYFORMS_TEXT_DOMAIN ),
217
+ __( 'Welcome', HAPPYFORMS_TEXT_DOMAIN ),
218
  'manage_options',
219
  'happyforms-welcome',
220
  array( happyforms_get_tracking(), 'settings_page' )
436
  return $context;
437
  }
438
 
439
+ $button_html = '<a href="#" class="button happyforms-editor-button" data-title="' . __( 'Insert HappyForm', HAPPYFORMS_TEXT_DOMAIN ) . '"><span class="dashicons dashicons-format-status"></span><span>'. __( 'Add HappyForms', HAPPYFORMS_TEXT_DOMAIN ) .'</span></a>';
440
 
441
  add_action( 'admin_footer', array( $this, 'output_happyforms_modal' ) );
442
 
632
 
633
  $screen->add_help_tab( array(
634
  'id' => 'happyforms_help_tab_overview',
635
+ 'title' => __( 'Overview', HAPPYFORMS_TEXT_DOMAIN ),
636
  'callback' => array( $this, 'help_tab_overview_contents' )
637
  ) );
638
 
642
 
643
  public function help_tab_overview_contents() {
644
  ?>
645
+ <p><?php _e( 'Hey 👋 Welcome to your HappyForms Dashboard!', HAPPYFORMS_TEXT_DOMAIN ); ?></p>
646
 
647
  <p><?php printf(
648
+ __( 'Are you looking for help? Well, we’ve swept the nacho crumbs from our keyboards, refilled our ginger beers and are ready to reply with answers! So, go on, email %s.', HAPPYFORMS_TEXT_DOMAIN ),
649
  '<a href="mailto:support@thethemefoundry.com">support@thethemefoundry.com</a>'
650
  ); ?></p>
651
  <?php
654
  public function get_help_tab_sidebar_content() {
655
  ob_start();
656
  ?>
657
+ <p><strong><?php _e( 'For more help', HAPPYFORMS_TEXT_DOMAIN ); ?>:</strong></p>
658
 
659
+ <p><a href="https://happyforms.me/help-guide"><?php _e( 'Help guide', HAPPYFORMS_TEXT_DOMAIN ); ?></a></p>
660
  <?php
661
  $content = ob_get_clean();
662
 
core/classes/class-happyforms-widget.php CHANGED
@@ -10,9 +10,9 @@ class HappyForms_Widget extends WP_Widget {
10
  function __construct() {
11
  parent::__construct(
12
  'happyforms_widget',
13
- __( 'HappyForms', 'happyforms' ),
14
  array(
15
- 'description' => __( 'Easily add your HappyForms to widget areas.', 'happyforms' )
16
  )
17
  );
18
  }
@@ -68,11 +68,11 @@ class HappyForms_Widget extends WP_Widget {
68
  }
69
  ?>
70
  <p>
71
- <label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Title:', 'happyforms' ); ?></label>
72
  <input class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" type="text" value="<?php echo esc_attr( $title ); ?>" />
73
  </p>
74
  <p>
75
- <label for="<?php echo $this->get_field_id( 'form_id' ); ?>"><?php _e( 'Form:', 'happyforms' ); ?></label>
76
  <select class="widefat" id="<?php echo $this->get_field_id( 'form_id' ); ?>" name="<?php echo $this->get_field_name( 'form_id' ); ?>">
77
  <?php
78
  $forms = happyforms_get_form_controller()->get();
10
  function __construct() {
11
  parent::__construct(
12
  'happyforms_widget',
13
+ __( 'HappyForms', HAPPYFORMS_TEXT_DOMAIN ),
14
  array(
15
+ 'description' => __( 'Easily add your HappyForms to widget areas.', HAPPYFORMS_TEXT_DOMAIN )
16
  )
17
  );
18
  }
68
  }
69
  ?>
70
  <p>
71
+ <label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Title:', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
72
  <input class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" type="text" value="<?php echo esc_attr( $title ); ?>" />
73
  </p>
74
  <p>
75
+ <label for="<?php echo $this->get_field_id( 'form_id' ); ?>"><?php _e( 'Form:', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
76
  <select class="widefat" id="<?php echo $this->get_field_id( 'form_id' ); ?>" name="<?php echo $this->get_field_name( 'form_id' ); ?>">
77
  <?php
78
  $forms = happyforms_get_form_controller()->get();
core/classes/class-tracking.php CHANGED
@@ -165,7 +165,7 @@ class HappyForms_Tracking {
165
  */
166
  public function settings_page() {
167
  if ( ! current_user_can( 'manage_options' ) ) {
168
- wp_die( __( 'Sorry, you are not allowed to access this page.', 'happyforms' ) );
169
  }
170
 
171
  require_once( happyforms_get_core_folder() . '/templates/admin-tracking.php' );
@@ -201,13 +201,13 @@ class HappyForms_Tracking {
201
  */
202
  public function print_template( $template ) {
203
  if ( 'success' === $template ): ?>
204
- <h2><?php _e( 'Thank you!', 'happyforms' ); ?></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' ); ?></a>
208
  <?php elseif ( 'error' === $template ): ?>
209
- <p class="about-description"><?php _e( 'Aw snap! Something went wrong.', 'happyforms' ); ?></p>
210
- <p><?php _e( 'Error description', 'happyforms' ); ?></p>
211
  <?php endif;
212
  }
213
 
165
  */
166
  public function settings_page() {
167
  if ( ! current_user_can( 'manage_options' ) ) {
168
+ wp_die( __( 'Sorry, you are not allowed to access this page.', HAPPYFORMS_TEXT_DOMAIN ) );
169
  }
170
 
171
  require_once( happyforms_get_core_folder() . '/templates/admin-tracking.php' );
201
  */
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>
210
+ <p><?php _e( 'Error description', HAPPYFORMS_TEXT_DOMAIN ); ?></p>
211
  <?php endif;
212
  }
213
 
core/classes/class-wp-customize-form-manager.php CHANGED
@@ -160,25 +160,25 @@ class HappyForms_WP_Customize_Form_Manager {
160
  $notice_dismissible = true;
161
  $notice_onetime = false;
162
  $notice_content = '';
163
- $notice_content .= '<h3>' . __( 'Form saved 👏', 'happyforms' ) . '</h3>';
164
- $notice_content .= '<p>' . __( 'There are two ways to embed your form. Here goes…', 'happyforms' ) . '</p>';
165
- $notice_content .= '<h4>' . __( 'Add HappyForms to your page or post', 'happyforms' ) . '</h4>';
166
- $notice_content .= '<ol><li>' . __( 'In your Edit Post / Edit Page screen, click Add Block.', 'happyforms' ) . '</li><li>' . __( 'Select the HappyForms content block.', 'happyforms' ) . '</li><li>' . __( 'Select a form in the Form dropdown.', 'happyforms' ) . '</li><li> ' . __( 'That\'s it! You\'ll see a basic preview of your form in the editor.', 'happyforms' ) . '</li></ol>';
167
- $notice_content .= '<h4>' . __( 'Use HappyForms in a widget area', 'happyforms' ) . '</h4>';
168
  $notice_content .= '<ol>';
169
- $notice_content .= '<li>' . sprintf( __( 'Head over to Appearance &rarr; <a href="%s">Widgets</a> screen.', 'happyforms' ), get_site_url( NULL, 'wp-admin/widgets.php' ) ) . '</li>';
170
- $notice_content .= '<li>' . __( 'Drag the HappyForms widget to your sidebar.', 'happyforms' ) .'</li>';
171
- $notice_content .= '<li>' . __( 'Select a form in the Form dropdown.', 'happyforms' ) . '</li>';
172
- $notice_content .= '<li>' . __( 'All done!', 'happyforms' ) . '</li>';
173
  $notice_content .= '</ol>';
174
- $notice_content .= '<p>' . sprintf( __( 'Still have questions? Head over to our <a href="%s" target="_blank">Help Guide</a>.', 'happyforms' ), 'https://happyforms.me/help-guide' ) . '</p>';
175
  } else {
176
  $notice_name = 'happyforms_form_saved';
177
  $notice_type = 'success';
178
  $notice_dismissible = false;
179
  $notice_onetime = true;
180
  $notice_content = sprintf(
181
- __( 'Form saved. You can add this form to any Page, Post and Widget area. Have questions? <a href="%s" target="_blank">Ask for help in our support forums</a>.', 'happyforms' ),
182
  'https://wordpress.org/support/plugin/happyforms'
183
  );
184
  }
160
  $notice_dismissible = true;
161
  $notice_onetime = false;
162
  $notice_content = '';
163
+ $notice_content .= '<h3>' . __( 'Form saved 👏', HAPPYFORMS_TEXT_DOMAIN ) . '</h3>';
164
+ $notice_content .= '<p>' . __( 'There are two ways to embed your form. Here goes…', HAPPYFORMS_TEXT_DOMAIN ) . '</p>';
165
+ $notice_content .= '<h4>' . __( 'Add HappyForms to your page or post', HAPPYFORMS_TEXT_DOMAIN ) . '</h4>';
166
+ $notice_content .= '<ol><li>' . __( 'In your Edit Post / Edit Page screen, click Add Block.', HAPPYFORMS_TEXT_DOMAIN ) . '</li><li>' . __( 'Select the HappyForms content block.', HAPPYFORMS_TEXT_DOMAIN ) . '</li><li>' . __( 'Select a form in the Form dropdown.', HAPPYFORMS_TEXT_DOMAIN ) . '</li><li> ' . __( 'That\'s it! You\'ll see a basic preview of your form in the editor.', 'happyforms' ) . '</li></ol>';
167
+ $notice_content .= '<h4>' . __( 'Use HappyForms in a widget area', HAPPYFORMS_TEXT_DOMAIN ) . '</h4>';
168
  $notice_content .= '<ol>';
169
+ $notice_content .= '<li>' . sprintf( __( 'Head over to Appearance &rarr; <a href="%s">Widgets</a> screen.', HAPPYFORMS_TEXT_DOMAIN ), get_site_url( NULL, 'wp-admin/widgets.php' ) ) . '</li>';
170
+ $notice_content .= '<li>' . __( 'Drag the HappyForms widget to your sidebar.', HAPPYFORMS_TEXT_DOMAIN ) .'</li>';
171
+ $notice_content .= '<li>' . __( 'Select a form in the Form dropdown.', HAPPYFORMS_TEXT_DOMAIN ) . '</li>';
172
+ $notice_content .= '<li>' . __( 'All done!', HAPPYFORMS_TEXT_DOMAIN ) . '</li>';
173
  $notice_content .= '</ol>';
174
+ $notice_content .= '<p>' . sprintf( __( 'Still have questions? Head over to our <a href="%s" target="_blank">help guide</a>.', HAPPYFORMS_TEXT_DOMAIN ), 'https://happyforms.me/help-guide' ) . '</p>';
175
  } else {
176
  $notice_name = 'happyforms_form_saved';
177
  $notice_type = 'success';
178
  $notice_dismissible = false;
179
  $notice_onetime = true;
180
  $notice_content = sprintf(
181
+ __( 'Form saved. You can add this form to any Page, Post and Widget area. Have questions? <a href="%s" target="_blank">Ask for help in our support forums</a>.', HAPPYFORMS_TEXT_DOMAIN ),
182
  'https://wordpress.org/support/plugin/happyforms'
183
  );
184
  }
core/classes/parts/class-part-checkbox.php CHANGED
@@ -7,8 +7,8 @@ class HappyForms_Part_Checkbox extends HappyForms_Form_Part {
7
  public static $parent;
8
 
9
  public function __construct() {
10
- $this->label = __( 'Multiple Choice', 'happyforms' );
11
- $this->description = __( 'For checkboxes allowing multiple selections.', 'happyforms' );
12
 
13
  $this->hook();
14
  }
@@ -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' ),
40
  'sanitize' => 'sanitize_text_field',
41
  ),
42
  'label_placement' => array(
@@ -124,7 +124,10 @@ class HappyForms_Part_Checkbox extends HappyForms_Form_Part {
124
  $part['options'][$o] = wp_parse_args( $option, $this->get_option_defaults() );
125
  }
126
 
127
- include( happyforms_get_core_folder() . '/templates/parts/frontend-checkbox.php' );
 
 
 
128
  }
129
 
130
  /**
@@ -194,7 +197,7 @@ class HappyForms_Part_Checkbox extends HappyForms_Form_Part {
194
  $intersection = array_intersect( $options, $validated_value );
195
 
196
  if ( count( $validated_value ) !== count( $intersection ) ) {
197
- return new WP_Error( 'error', __( 'Checkbox values are not valid.', 'happyforms' ) );
198
  }
199
 
200
  return $validated_value;
7
  public static $parent;
8
 
9
  public function __construct() {
10
+ $this->label = __( 'Multiple Choice', HAPPYFORMS_TEXT_DOMAIN );
11
+ $this->description = __( 'For checkboxes allowing multiple selections.', HAPPYFORMS_TEXT_DOMAIN );
12
 
13
  $this->hook();
14
  }
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(
124
  $part['options'][$o] = wp_parse_args( $option, $this->get_option_defaults() );
125
  }
126
 
127
+ $template_path = happyforms_get_core_folder() . '/templates/parts/frontend-checkbox.php';
128
+ $template_path = happyforms_get_part_frontend_template_path( $template_path, $this->type );
129
+
130
+ include( $template_path );
131
  }
132
 
133
  /**
197
  $intersection = array_intersect( $options, $validated_value );
198
 
199
  if ( count( $validated_value ) !== count( $intersection ) ) {
200
+ return new WP_Error( 'error', __( 'Checkbox values are not valid.', HAPPYFORMS_TEXT_DOMAIN ) );
201
  }
202
 
203
  return $validated_value;
core/classes/parts/class-part-email.php CHANGED
@@ -5,7 +5,7 @@ class HappyForms_Part_Email extends HappyForms_Form_Part {
5
  public $type = 'email';
6
 
7
  public function __construct() {
8
- $this->label = __( 'Email', 'happyforms' );
9
  $this->description = __( 'For formatted email addresses. The \'@\' symbol is required.', 'happyforms' );
10
 
11
  add_filter( 'happyforms_part_class', array( $this, 'html_part_class' ), 10, 3 );
@@ -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' ),
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' ),
56
  'sanitize' => 'sanitize_text_field'
57
  ),
58
  'placeholder' => array(
@@ -157,11 +157,11 @@ class HappyForms_Part_Email extends HappyForms_Form_Part {
157
  }
158
 
159
  if ( ! empty( $validated_values[0] ) && ! is_email( $validated_values[0] ) ) {
160
- return new WP_error( 'error', __( 'Not a valid e-mail address.', 'happyforms' ) );
161
  }
162
 
163
  if ( isset( $validated_values[1] ) && $validated_values[0] !== $validated_values[1] ) {
164
- return new WP_Error( 'error', __( 'Email and confirmation email are not matching.', 'happyforms' ) );
165
  }
166
 
167
  return $validated_values[0];
5
  public $type = 'email';
6
 
7
  public function __construct() {
8
+ $this->label = __( 'Email', HAPPYFORMS_TEXT_DOMAIN );
9
  $this->description = __( 'For formatted email addresses. The \'@\' symbol is required.', 'happyforms' );
10
 
11
  add_filter( 'happyforms_part_class', array( $this, 'html_part_class' ), 10, 3 );
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
  'sanitize' => 'intval'
53
  ),
54
  'confirmation_field_label' => array(
55
+ 'default' => __( 'Confirm Email', HAPPYFORMS_TEXT_DOMAIN ),
56
  'sanitize' => 'sanitize_text_field'
57
  ),
58
  'placeholder' => array(
157
  }
158
 
159
  if ( ! empty( $validated_values[0] ) && ! is_email( $validated_values[0] ) ) {
160
+ return new WP_error( 'error', __( 'Not a valid e-mail address.', HAPPYFORMS_TEXT_DOMAIN ) );
161
  }
162
 
163
  if ( isset( $validated_values[1] ) && $validated_values[0] !== $validated_values[1] ) {
164
+ return new WP_Error( 'error', __( 'Email and confirmation email are not matching.', HAPPYFORMS_TEXT_DOMAIN ) );
165
  }
166
 
167
  return $validated_values[0];
core/classes/parts/class-part-multi-line-text.php CHANGED
@@ -5,8 +5,8 @@ class HappyForms_Part_MultiLineText extends HappyForms_Form_Part {
5
  public $type = 'multi_line_text';
6
 
7
  public function __construct() {
8
- $this->label = __( 'Long Text', 'happyforms' );
9
- $this->description = __( 'For paragraph text fields.', 'happyforms' );
10
 
11
  add_filter( 'happyforms_the_part_value', array( $this, 'output_part_value' ), 10, 3 );
12
  add_filter( 'happyforms_email_part_value', array( $this, 'email_part_value' ), 10, 4 );
@@ -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' ),
35
  'sanitize' => 'sanitize_text_field',
36
  ),
37
  'label_placement' => array(
@@ -171,13 +171,13 @@ class HappyForms_Part_MultiLineText extends HappyForms_Form_Part {
171
  $word_count = str_word_count( $validated_value );
172
 
173
  if ( 'character_max' === $character_limit_mode && $character_count > $character_limit ) {
174
- return new WP_Error( 'error', __( 'Submitted value is too long.', 'happyforms' ) );
175
  } else if ( 'character_min' === $character_limit_mode && $character_count < $character_limit ) {
176
- return new WP_Error( 'error', __( 'Submitted value is too short.', 'happyforms' ) );
177
  } else if ( 'word_max' === $character_limit_mode && $word_count > $character_limit ) {
178
- return new WP_Error( 'error', __( 'Submitted value is too long.', 'happyforms' ) );
179
  } else if ( 'word_min' === $character_limit_mode && $word_count < $character_limit ) {
180
- return new WP_Error( 'error', __( 'Submitted value is too short.', 'happyforms' ) );
181
  }
182
  }
183
 
@@ -221,16 +221,16 @@ class HappyForms_Part_MultiLineText extends HappyForms_Form_Part {
221
 
222
  switch( $part['character_limit_mode'] ) {
223
  case 'character_min':
224
- $label = __( 'characters (min.)', 'happyforms' );
225
  break;
226
  case 'character_max':
227
- $label = __( 'characters (max.)', 'happyforms' );
228
  break;
229
  case 'word_min':
230
- $label = __( 'words (min.)', 'happyforms' );
231
  break;
232
  case 'word_max':
233
- $label = __( 'words (max.)', 'happyforms' );
234
  break;
235
  }
236
 
5
  public $type = 'multi_line_text';
6
 
7
  public function __construct() {
8
+ $this->label = __( 'Long Text', HAPPYFORMS_TEXT_DOMAIN );
9
+ $this->description = __( 'For paragraph text fields.', HAPPYFORMS_TEXT_DOMAIN );
10
 
11
  add_filter( 'happyforms_the_part_value', array( $this, 'output_part_value' ), 10, 3 );
12
  add_filter( 'happyforms_email_part_value', array( $this, 'email_part_value' ), 10, 4 );
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(
171
  $word_count = str_word_count( $validated_value );
172
 
173
  if ( 'character_max' === $character_limit_mode && $character_count > $character_limit ) {
174
+ return new WP_Error( 'error', __( 'Submitted value is too long.', HAPPYFORMS_TEXT_DOMAIN ) );
175
  } else if ( 'character_min' === $character_limit_mode && $character_count < $character_limit ) {
176
+ return new WP_Error( 'error', __( 'Submitted value is too short.', HAPPYFORMS_TEXT_DOMAIN ) );
177
  } else if ( 'word_max' === $character_limit_mode && $word_count > $character_limit ) {
178
+ return new WP_Error( 'error', __( 'Submitted value is too long.', HAPPYFORMS_TEXT_DOMAIN ) );
179
  } else if ( 'word_min' === $character_limit_mode && $word_count < $character_limit ) {
180
+ return new WP_Error( 'error', __( 'Submitted value is too short.', HAPPYFORMS_TEXT_DOMAIN ) );
181
  }
182
  }
183
 
221
 
222
  switch( $part['character_limit_mode'] ) {
223
  case 'character_min':
224
+ $label = __( 'characters (min.)', HAPPYFORMS_TEXT_DOMAIN );
225
  break;
226
  case 'character_max':
227
+ $label = __( 'characters (max.)', HAPPYFORMS_TEXT_DOMAIN );
228
  break;
229
  case 'word_min':
230
+ $label = __( 'words (min.)', HAPPYFORMS_TEXT_DOMAIN );
231
  break;
232
  case 'word_max':
233
+ $label = __( 'words (max.)', HAPPYFORMS_TEXT_DOMAIN );
234
  break;
235
  }
236
 
core/classes/parts/class-part-number.php CHANGED
@@ -5,8 +5,8 @@ class HappyForms_Part_Number extends HappyForms_Form_Part {
5
  public $type = 'number';
6
 
7
  public function __construct() {
8
- $this->label = __( 'Number', 'happyforms' );
9
- $this->description = __( 'For numeric fields.', 'happyforms' );
10
 
11
  add_filter( 'happyforms_part_class', array( $this, 'html_part_class' ), 10, 3 );
12
  add_filter( 'happyforms_part_data_attributes', array( $this, 'html_part_data_attributes' ), 10, 3 );
@@ -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' ),
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' ),
87
  'sanitize' => 'sanitize_text_field'
88
  ),
89
  'required' => array(
@@ -190,7 +190,7 @@ class HappyForms_Part_Number extends HappyForms_Form_Part {
190
  $max_value = intval( $part['max_value'] );
191
 
192
  if ( $validation_number < $min_value || $validation_number > $max_value ) {
193
- return new WP_Error( 'error', __( 'This field does not match minimum and maximum allowed value.', 'happyforms' ) );
194
  }
195
  }
196
 
@@ -198,7 +198,7 @@ class HappyForms_Part_Number extends HappyForms_Form_Part {
198
  if ( $part['confirmation_field'] ) {
199
  if ( ! isset( $validated_values[1] )
200
  || ( $validated_values[0] !== $validated_values[1] ) ) {
201
- return new WP_Error( 'error', __( 'Number and confirmation number are not matching.', 'happyforms' ) );
202
  }
203
  }
204
 
5
  public $type = 'number';
6
 
7
  public function __construct() {
8
+ $this->label = __( 'Number', HAPPYFORMS_TEXT_DOMAIN );
9
+ $this->description = __( 'For numeric fields.', HAPPYFORMS_TEXT_DOMAIN );
10
 
11
  add_filter( 'happyforms_part_class', array( $this, 'html_part_class' ), 10, 3 );
12
  add_filter( 'happyforms_part_data_attributes', array( $this, 'html_part_data_attributes' ), 10, 3 );
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
  'sanitize' => 'intval'
84
  ),
85
  'confirmation_field_label' => array(
86
+ 'default' => __( 'Confirm Number', HAPPYFORMS_TEXT_DOMAIN ),
87
  'sanitize' => 'sanitize_text_field'
88
  ),
89
  'required' => array(
190
  $max_value = intval( $part['max_value'] );
191
 
192
  if ( $validation_number < $min_value || $validation_number > $max_value ) {
193
+ return new WP_Error( 'error', __( 'This field does not match minimum and maximum allowed value.', HAPPYFORMS_TEXT_DOMAIN ) );
194
  }
195
  }
196
 
198
  if ( $part['confirmation_field'] ) {
199
  if ( ! isset( $validated_values[1] )
200
  || ( $validated_values[0] !== $validated_values[1] ) ) {
201
+ return new WP_Error( 'error', __( 'Number and confirmation number are not matching.', HAPPYFORMS_TEXT_DOMAIN ) );
202
  }
203
  }
204
 
core/classes/parts/class-part-radio.php CHANGED
@@ -9,8 +9,8 @@ class HappyForms_Part_Radio extends HappyForms_Form_Part {
9
  public static $parent;
10
 
11
  public function __construct() {
12
- $this->label = __( 'Single Choice', 'happyforms' );
13
- $this->description = __( 'For radio buttons allowing one selection.', 'happyforms' );
14
 
15
  $this->hook();
16
  }
@@ -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' ),
41
  'sanitize' => 'sanitize_text_field',
42
  ),
43
  'label_placement' => array(
@@ -128,7 +128,10 @@ class HappyForms_Part_Radio extends HappyForms_Form_Part {
128
  $part['options'][$o] = wp_parse_args( $option, $this->get_option_defaults() );
129
  }
130
 
131
- include( happyforms_get_core_folder() . '/templates/parts/frontend-radio.php' );
 
 
 
132
  }
133
 
134
  /**
@@ -187,13 +190,13 @@ class HappyForms_Part_Radio extends HappyForms_Form_Part {
187
 
188
  if ( '' !== $validated_value ) {
189
  if ( ! is_numeric( $validated_value ) ) {
190
- return new WP_Error( 'error', __( 'Radio value is not valid.', 'happyforms' ) );
191
  }
192
 
193
  $options = range( 0, count( $part['options'] ) - 1 );
194
 
195
  if ( ! in_array( $validated_value, $options ) ) {
196
- return new WP_Error( 'error', __( 'Radio value is not valid.', 'happyforms' ) );
197
  }
198
  }
199
 
9
  public static $parent;
10
 
11
  public function __construct() {
12
+ $this->label = __( 'Single Choice', HAPPYFORMS_TEXT_DOMAIN );
13
+ $this->description = __( 'For radio buttons allowing one selection.', HAPPYFORMS_TEXT_DOMAIN );
14
 
15
  $this->hook();
16
  }
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(
128
  $part['options'][$o] = wp_parse_args( $option, $this->get_option_defaults() );
129
  }
130
 
131
+ $template_path = happyforms_get_core_folder() . '/templates/parts/frontend-radio.php';
132
+ $template_path = happyforms_get_part_frontend_template_path( $template_path, $this->type );
133
+
134
+ include( $template_path );
135
  }
136
 
137
  /**
190
 
191
  if ( '' !== $validated_value ) {
192
  if ( ! is_numeric( $validated_value ) ) {
193
+ return new WP_Error( 'error', __( 'Radio value is not valid.', HAPPYFORMS_TEXT_DOMAIN ) );
194
  }
195
 
196
  $options = range( 0, count( $part['options'] ) - 1 );
197
 
198
  if ( ! in_array( $validated_value, $options ) ) {
199
+ return new WP_Error( 'error', __( 'Radio value is not valid.', HAPPYFORMS_TEXT_DOMAIN ) );
200
  }
201
  }
202
 
core/classes/parts/class-part-select.php CHANGED
@@ -5,8 +5,8 @@ class HappyForms_Part_Select extends HappyForms_Form_Part {
5
  public $type = 'select';
6
 
7
  public function __construct() {
8
- $this->label = __( 'Dropdown', 'happyforms' );
9
- $this->description = __( 'For selecting one option from a long list. Default value adjustable.', 'happyforms' );
10
 
11
  add_filter( 'happyforms_stringify_part_value', array( $this, 'stringify_value' ), 10, 3 );
12
  add_filter( 'happyforms_frontend_dependencies', array( $this, 'script_dependencies' ), 10, 2 );
@@ -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' ),
32
  'sanitize' => 'sanitize_text_field',
33
  ),
34
  'label_placement' => array(
@@ -177,13 +177,13 @@ class HappyForms_Part_Select extends HappyForms_Form_Part {
177
 
178
  if ( '' !== $validated_value ) {
179
  if ( ! is_numeric( $validated_value ) ) {
180
- return new WP_Error( 'error', __( 'Selected value is not valid.', 'happyforms' ) );
181
  }
182
 
183
  $options = range( 0, count( $part['options'] ) - 1 );
184
 
185
  if ( ! in_array( intval( $validated_value ), $options ) ) {
186
- return new WP_Error( 'error', __( 'Selected value is not valid.', 'happyforms' ) );
187
  }
188
  }
189
 
5
  public $type = 'select';
6
 
7
  public function __construct() {
8
+ $this->label = __( 'Dropdown', HAPPYFORMS_TEXT_DOMAIN );
9
+ $this->description = __( 'For selecting one option from a long list. Default value adjustable.', HAPPYFORMS_TEXT_DOMAIN );
10
 
11
  add_filter( 'happyforms_stringify_part_value', array( $this, 'stringify_value' ), 10, 3 );
12
  add_filter( 'happyforms_frontend_dependencies', array( $this, 'script_dependencies' ), 10, 2 );
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(
177
 
178
  if ( '' !== $validated_value ) {
179
  if ( ! is_numeric( $validated_value ) ) {
180
+ return new WP_Error( 'error', __( 'Selected value is not valid.', HAPPYFORMS_TEXT_DOMAIN ) );
181
  }
182
 
183
  $options = range( 0, count( $part['options'] ) - 1 );
184
 
185
  if ( ! in_array( intval( $validated_value ), $options ) ) {
186
+ return new WP_Error( 'error', __( 'Selected value is not valid.', HAPPYFORMS_TEXT_DOMAIN ) );
187
  }
188
  }
189
 
core/classes/parts/class-part-single-line-text.php CHANGED
@@ -5,8 +5,8 @@ class HappyForms_Part_SingleLineText extends HappyForms_Form_Part {
5
  public $type = 'single_line_text';
6
 
7
  public function __construct() {
8
- $this->label = __( 'Short Text', 'happyforms' );
9
- $this->description = __( 'For single line text fields.', 'happyforms' );
10
 
11
  add_filter( 'happyforms_the_part_value', array( $this, 'output_part_value' ), 10, 3 );
12
  add_filter( 'happyforms_part_class', array( $this, 'html_part_class' ), 10, 3 );
@@ -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' ),
30
  'sanitize' => 'sanitize_text_field',
31
  ),
32
  'label_placement' => array(
5
  public $type = 'single_line_text';
6
 
7
  public function __construct() {
8
+ $this->label = __( 'Short Text', HAPPYFORMS_TEXT_DOMAIN );
9
+ $this->description = __( 'For single line text fields.', HAPPYFORMS_TEXT_DOMAIN );
10
 
11
  add_filter( 'happyforms_the_part_value', array( $this, 'output_part_value' ), 10, 3 );
12
  add_filter( 'happyforms_part_class', array( $this, 'html_part_class' ), 10, 3 );
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(
core/helpers/helper-activation.php CHANGED
@@ -67,7 +67,7 @@ function happyforms_create_samples() {
67
  // Get the new form default data
68
  $form_data = $form_controller->get( $form->ID );
69
 
70
- $form_data['post_title'] = __( 'Sample Form', 'happyforms' );
71
 
72
  // Prepare age dropdown options
73
  $age_options = array(
@@ -97,12 +97,12 @@ function happyforms_create_samples() {
97
  $form_parts = array(
98
  array(
99
  'type' => 'single_line_text',
100
- 'label' => __( 'First name', 'happyforms' ),
101
  'width' => 'half',
102
  ),
103
  array(
104
  'type' => 'single_line_text',
105
- 'label' => __( 'Last name', 'happyforms' ),
106
  'width' => 'half',
107
  ),
108
  array(
@@ -110,13 +110,13 @@ function happyforms_create_samples() {
110
  'label' => __( 'What\'s your reason for contacting us?', 'happyforms' ),
111
  'options' => array(
112
  array(
113
- 'label' => __( 'Need technical help', 'happyforms' ),
114
  ),
115
  array(
116
- 'label' => __( 'Want to suggest a feature', 'happyforms' ),
117
  ),
118
  array(
119
- 'label' => __( 'Asking about my account', 'happyforms' ),
120
  ),
121
  ),
122
  ),
@@ -127,7 +127,7 @@ function happyforms_create_samples() {
127
  ),
128
  array(
129
  'type' => 'multi_line_text',
130
- 'label' => __( 'Your message', 'happyforms' ),
131
  ),
132
  );
133
 
67
  // Get the new form default data
68
  $form_data = $form_controller->get( $form->ID );
69
 
70
+ $form_data['post_title'] = __( 'Sample Form', HAPPYFORMS_TEXT_DOMAIN );
71
 
72
  // Prepare age dropdown options
73
  $age_options = array(
97
  $form_parts = array(
98
  array(
99
  'type' => 'single_line_text',
100
+ 'label' => __( 'First name', HAPPYFORMS_TEXT_DOMAIN ),
101
  'width' => 'half',
102
  ),
103
  array(
104
  'type' => 'single_line_text',
105
+ 'label' => __( 'Last name', HAPPYFORMS_TEXT_DOMAIN ),
106
  'width' => 'half',
107
  ),
108
  array(
110
  'label' => __( 'What\'s your reason for contacting us?', 'happyforms' ),
111
  'options' => array(
112
  array(
113
+ 'label' => __( 'Need technical help', HAPPYFORMS_TEXT_DOMAIN ),
114
  ),
115
  array(
116
+ 'label' => __( 'Want to suggest a feature', HAPPYFORMS_TEXT_DOMAIN ),
117
  ),
118
  array(
119
+ 'label' => __( 'Asking about my account', HAPPYFORMS_TEXT_DOMAIN ),
120
  ),
121
  ),
122
  ),
127
  ),
128
  array(
129
  'type' => 'multi_line_text',
130
+ 'label' => __( 'Your message', HAPPYFORMS_TEXT_DOMAIN ),
131
  ),
132
  );
133
 
core/helpers/helper-form-templates.php CHANGED
@@ -62,7 +62,7 @@ function happyforms_honeypot( $form ) {
62
 
63
  if ( $controller->has_spam_protection( $form ) ) : ?>
64
  <label>
65
- <input type="checkbox" name="<?php echo $form['ID']; ?>single_line_text_-1" value="1" style="display: none;" tabindex="-1" autocomplete="off"> <span class="screen-reader-text"><?php _e( 'Spam protection, skip this field', 'happyforms' ); ?></span>
66
  </label>
67
  <?php endif;
68
  }
@@ -920,7 +920,7 @@ if ( ! function_exists( 'happyforms_geolocation_link' ) ) :
920
 
921
  function happyforms_geolocation_link( $part ) {
922
  if ( 1 === intval( $part['has_geolocation'] ) ) : ?>
923
- <a class="address-geolocate" href="#" data-idle="<?php _e( 'Get my location', 'happyforms' ); ?>" data-fetching="<?php _e( 'Fetching location…', 'happyforms' ); ?>"><?php require( happyforms_get_core_folder() . '/assets/svg/font-awesome/map-marker-alt.svg' ) ; ?><span></span></a>
924
  <?php endif;
925
  }
926
 
@@ -930,18 +930,18 @@ if ( ! function_exists( 'happyforms_get_months' ) ) :
930
 
931
  function happyforms_get_months( $form = array() ) {
932
  $months = array(
933
- 1 => __( 'January', 'happyforms' ),
934
- 2 => __( 'February', 'happyforms' ),
935
- 3 => __( 'March', 'happyforms' ),
936
- 4 => __( 'April', 'happyforms' ),
937
- 5 => __( 'May', 'happyforms' ),
938
- 6 => __( 'June', 'happyforms' ),
939
- 7 => __( 'July', 'happyforms' ),
940
- 8 => __( 'August', 'happyforms' ),
941
- 9 => __( 'September', 'happyforms' ),
942
- 10 => __( 'October', 'happyforms' ),
943
- 11 => __( 'November', 'happyforms' ),
944
- 12 => __( 'December', 'happyforms' )
945
  );
946
 
947
  $months = apply_filters( 'happyforms_get_months', $months, $form );
@@ -982,225 +982,225 @@ if ( ! function_exists( 'happyforms_get_phone_countries' ) ) :
982
 
983
  function happyforms_get_phone_countries() {
984
  $countries = array(
985
- 'AD' => array( 'name' => __( 'Andorra', 'happyforms' ), 'code' => '376', 'flag' => '🇦🇩' ),
986
- 'AE' => array( 'name' => __( 'United Arab Emirates', 'happyforms' ), 'code' => '971', 'flag' => '🇦🇪' ),
987
- 'AF' => array( 'name' => __( 'Afghanistan', 'happyforms' ), 'code' => '93', 'flag' => '🇦🇫' ),
988
- 'AG' => array( 'name' => __( 'Antigua and Barbuda', 'happyforms' ), 'code' => '1268', 'flag' => '🇦🇬' ),
989
- 'AI' => array( 'name' => __( 'Anguilla', 'happyforms' ), 'code' => '1264', 'flag' => '🇦🇮' ),
990
- 'AL' => array( 'name' => __( 'Albania', 'happyforms' ), 'code' => '355', 'flag' => '🇦🇱' ),
991
- 'AM' => array( 'name' => __( 'Armenia', 'happyforms' ), 'code' => '374', 'flag' => '🇦🇲' ),
992
- 'AO' => array( 'name' => __( 'Angola', 'happyforms' ), 'code' => '244', 'flag' => '🇦🇴' ),
993
- 'AQ' => array( 'name' => __( 'Antarctica', 'happyforms' ), 'code' => '672', 'flag' => '🇦🇶' ),
994
- 'AR' => array( 'name' => __( 'Argentina', 'happyforms' ), 'code' => '54', 'flag' => '🇦🇷' ),
995
- 'AS' => array( 'name' => __( 'American Samoa', 'happyforms' ), 'code' => '1684', 'flag' => '🇦🇸' ),
996
- 'AT' => array( 'name' => __( 'Austria', 'happyforms' ), 'code' => '43', 'flag' => '🇦🇹' ),
997
- 'AU' => array( 'name' => __( 'Australia', 'happyforms' ), 'code' => '61', 'flag' => '🇦🇺' ),
998
- 'AW' => array( 'name' => __( 'Aruba', 'happyforms' ), 'code' => '297', 'flag' => '🇦🇼' ),
999
- 'AZ' => array( 'name' => __( 'Azerbaijan', 'happyforms' ), 'code' => '994', 'flag' => '🇦🇿' ),
1000
- 'BA' => array( 'name' => __( 'Bosnia and Herzegovina', 'happyforms' ), 'code' => '387', 'flag' => '🇧🇦' ),
1001
- 'BB' => array( 'name' => __( 'Barbados', 'happyforms' ), 'code' => '1246', 'flag' => '🇧🇧' ),
1002
- 'BD' => array( 'name' => __( 'Bangladesh', 'happyforms' ), 'code' => '880', 'flag' => '🇧🇩' ),
1003
- 'BE' => array( 'name' => __( 'Belgium', 'happyforms' ), 'code' => '32', 'flag' => '🇧🇪' ),
1004
- 'BF' => array( 'name' => __( 'Burkina Faso', 'happyforms' ), 'code' => '226', 'flag' => '🇧🇫' ),
1005
- 'BG' => array( 'name' => __( 'Bulgaria', 'happyforms' ), 'code' => '359', 'flag' => '🇧🇬' ),
1006
- 'BH' => array( 'name' => __( 'Bahrain', 'happyforms' ), 'code' => '973', 'flag' => '🇧🇭' ),
1007
- 'BI' => array( 'name' => __( 'Burundi', 'happyforms' ), 'code' => '257', 'flag' => '🇧🇮' ),
1008
- 'BJ' => array( 'name' => __( 'Benin', 'happyforms' ), 'code' => '229', 'flag' => '🇧🇯' ),
1009
- 'BL' => array( 'name' => __( 'Saint Barthelemy', 'happyforms' ), 'code' => '590', 'flag' => '🇧🇱' ),
1010
- 'BM' => array( 'name' => __( 'Bermuda', 'happyforms' ), 'code' => '1441', 'flag' => '🇧🇲' ),
1011
- 'BN' => array( 'name' => __( 'Brunei Darussalam', 'happyforms' ), 'code' => '673', 'flag' => '🇧🇳' ),
1012
- 'BO' => array( 'name' => __( 'Bolivia', 'happyforms' ), 'code' => '591', 'flag' => '🇧🇴' ),
1013
- 'BR' => array( 'name' => __( 'Brazil', 'happyforms' ), 'code' => '55', 'flag' => '🇧🇷' ),
1014
- 'BS' => array( 'name' => __( 'Bahamas', 'happyforms' ), 'code' => '1242', 'flag' => '🇧🇸' ),
1015
- 'BT' => array( 'name' => __( 'Bhutan', 'happyforms' ), 'code' => '975', 'flag' => '🇧🇹' ),
1016
- 'BW' => array( 'name' => __( 'Botswana', 'happyforms' ), 'code' => '267', 'flag' => '🇧🇼' ),
1017
- 'BY' => array( 'name' => __( 'Belarus', 'happyforms' ), 'code' => '375', 'flag' => '🇧🇾' ),
1018
- 'BZ' => array( 'name' => __( 'Belize', 'happyforms' ), 'code' => '501', 'flag' => '🇧🇿' ),
1019
- 'CA' => array( 'name' => __( 'Canada', 'happyforms' ), 'code' => '1', 'flag' => '🇨🇦' ),
1020
- 'CD' => array( 'name' => __( 'Congo, The Democratic Republic of the', 'happyforms' ), 'code' => '243', 'flag' => '🇨🇩' ),
1021
- 'CF' => array( 'name' => __( 'Central African Republic', 'happyforms' ), 'code' => '236', 'flag' => '🇨🇫' ),
1022
- 'CG' => array( 'name' => __( 'Congo', 'happyforms' ), 'code' => '242', 'flag' => '🇨🇬' ),
1023
- 'CH' => array( 'name' => __( 'Switzerland', 'happyforms' ), 'code' => '41', 'flag' => '🇨🇭' ),
1024
- 'CK' => array( 'name' => __( 'Cook Islands', 'happyforms' ), 'code' => '682', 'flag' => '🇨🇰' ),
1025
- 'CL' => array( 'name' => __( 'Chile', 'happyforms' ), 'code' => '56', 'flag' => '🇨🇱' ),
1026
- 'CM' => array( 'name' => __( 'Cameroon', 'happyforms' ), 'code' => '237', 'flag' => '🇨🇲' ),
1027
- 'CN' => array( 'name' => __( 'China', 'happyforms' ), 'code' => '86', 'flag' => '🇨🇳' ),
1028
- 'CO' => array( 'name' => __( 'Colombia', 'happyforms' ), 'code' => '57', 'flag' => '🇨🇴' ),
1029
- 'CR' => array( 'name' => __( 'Costa Rica', 'happyforms' ), 'code' => '506', 'flag' => '🇨🇷' ),
1030
- 'CU' => array( 'name' => __( 'Cuba', 'happyforms' ), 'code' => '53', 'flag' => '🇨🇺' ),
1031
- 'CV' => array( 'name' => __( 'Cape Verde', 'happyforms' ), 'code' => '238', 'flag' => '🇨🇻' ),
1032
- 'CY' => array( 'name' => __( 'Cyprus', 'happyforms' ), 'code' => '357', 'flag' => '🇨🇾' ),
1033
- 'CZ' => array( 'name' => __( 'Czech Republic', 'happyforms' ), 'code' => '420', 'flag' => '🇨🇿' ),
1034
- 'DE' => array( 'name' => __( 'Germany', 'happyforms' ), 'code' => '49', 'flag' => '🇩🇪' ),
1035
- 'DJ' => array( 'name' => __( 'Djibouti', 'happyforms' ), 'code' => '253', 'flag' => '🇩🇯' ),
1036
- 'DK' => array( 'name' => __( 'Denmark', 'happyforms' ), 'code' => '45', 'flag' => '🇩🇰' ),
1037
- 'DM' => array( 'name' => __( 'Dominica', 'happyforms' ), 'code' => '1767', 'flag' => '🇩🇲' ),
1038
- 'DO' => array( 'name' => __( 'Dominican Republic', 'happyforms' ), 'code' => '1809', 'flag' => '🇩🇴' ),
1039
- 'DZ' => array( 'name' => __( 'Algeria', 'happyforms' ), 'code' => '213', 'flag' => '🇩🇿' ),
1040
- 'EC' => array( 'name' => __( 'Ecuador', 'happyforms' ), 'code' => '593', 'flag' => '🇪🇨' ),
1041
- 'EE' => array( 'name' => __( 'Estonia', 'happyforms' ), 'code' => '372', 'flag' => '🇪🇪' ),
1042
- 'EG' => array( 'name' => __( 'Egypt', 'happyforms' ), 'code' => '20', 'flag' => '🇪🇬' ),
1043
- 'ER' => array( 'name' => __( 'Eritrea', 'happyforms' ), 'code' => '291', 'flag' => '🇪🇷' ),
1044
- 'ES' => array( 'name' => __( 'Spain', 'happyforms' ), 'code' => '34', 'flag' => '🇪🇸' ),
1045
- 'ET' => array( 'name' => __( 'Ethiopia', 'happyforms' ), 'code' => '251', 'flag' => '🇪🇹' ),
1046
- 'FI' => array( 'name' => __( 'Finland', 'happyforms' ), 'code' => '358', 'flag' => '🇫🇮' ),
1047
- 'FJ' => array( 'name' => __( 'Fiji', 'happyforms' ), 'code' => '679', 'flag' => '🇫🇯' ),
1048
- 'FK' => array( 'name' => __( 'Falkland Islands (Malvinas)', 'happyforms' ), 'code' => '500', 'flag' => '🇫🇰' ),
1049
- 'FM' => array( 'name' => __( 'Micronesia, Federated States of', 'happyforms' ), 'code' => '691', 'flag' => '🇫🇲' ),
1050
- 'FO' => array( 'name' => __( 'Faroe Islands', 'happyforms' ), 'code' => '298', 'flag' => '🇫🇴' ),
1051
- 'FR' => array( 'name' => __( 'France', 'happyforms' ), 'code' => '33', 'flag' => '🇫🇷' ),
1052
- 'GA' => array( 'name' => __( 'Gabon', 'happyforms' ), 'code' => '241', 'flag' => '🇬🇦' ),
1053
- 'GB' => array( 'name' => __( 'United Kingdom', 'happyforms' ), 'code' => '44', 'flag' => '🇬🇧' ),
1054
- 'GD' => array( 'name' => __( 'Grenada', 'happyforms' ), 'code' => '1473', 'flag' => '🇬🇩' ),
1055
- 'GE' => array( 'name' => __( 'Georgia', 'happyforms' ), 'code' => '995', 'flag' => '🇬🇪' ),
1056
- 'GH' => array( 'name' => __( 'Ghana', 'happyforms' ), 'code' => '233', 'flag' => '🇬🇭' ),
1057
- 'GI' => array( 'name' => __( 'Gibraltar', 'happyforms' ), 'code' => '350', 'flag' => '🇬🇮' ),
1058
- 'GL' => array( 'name' => __( 'Greenland', 'happyforms' ), 'code' => '299', 'flag' => '🇬🇱' ),
1059
- 'GM' => array( 'name' => __( 'Gambia', 'happyforms' ), 'code' => '220', 'flag' => '🇬🇲' ),
1060
- 'GN' => array( 'name' => __( 'Guinea', 'happyforms' ), 'code' => '224', 'flag' => '🇬🇳' ),
1061
- 'GR' => array( 'name' => __( 'Greece', 'happyforms' ), 'code' => '30', 'flag' => '🇬🇷' ),
1062
- 'GT' => array( 'name' => __( 'Guatemala', 'happyforms' ), 'code' => '502', 'flag' => '🇬🇹' ),
1063
- 'GU' => array( 'name' => __( 'Guam', 'happyforms' ), 'code' => '1671', 'flag' => '🇬🇺' ),
1064
- 'GW' => array( 'name' => __( 'Guinea-bissau', 'happyforms' ), 'code' => '245', 'flag' => '🇬🇼' ),
1065
- 'GY' => array( 'name' => __( 'Guyana', 'happyforms' ), 'code' => '592', 'flag' => '🇬🇾' ),
1066
- 'HK' => array( 'name' => __( 'Hong Kong', 'happyforms' ), 'code' => '852', 'flag' => '🇭🇰' ),
1067
- 'HN' => array( 'name' => __( 'Honduras', 'happyforms' ), 'code' => '504', 'flag' => '🇭🇳' ),
1068
- 'HR' => array( 'name' => __( 'Croatia', 'happyforms' ), 'code' => '385', 'flag' => '🇭🇷' ),
1069
- 'HT' => array( 'name' => __( 'Haiti', 'happyforms' ), 'code' => '509', 'flag' => '🇭🇹' ),
1070
- 'HU' => array( 'name' => __( 'Hungary', 'happyforms' ), 'code' => '36', 'flag' => '🇭🇺' ),
1071
- 'ID' => array( 'name' => __( 'Indonesia', 'happyforms' ), 'code' => '62', 'flag' => '🇮🇩' ),
1072
- 'IE' => array( 'name' => __( 'Ireland', 'happyforms' ), 'code' => '353', 'flag' => '🇮🇪' ),
1073
- 'IL' => array( 'name' => __( 'Israel', 'happyforms' ), 'code' => '972', 'flag' => '🇮🇱' ),
1074
- 'IN' => array( 'name' => __( 'India', 'happyforms' ), 'code' => '91', 'flag' => '🇮🇳' ),
1075
- 'IQ' => array( 'name' => __( 'Iraq', 'happyforms' ), 'code' => '964', 'flag' => '🇮🇶' ),
1076
- 'IR' => array( 'name' => __( 'Iran, Islamic Republic of', 'happyforms' ), 'code' => '98', 'flag' => '🇮🇷' ),
1077
- 'IS' => array( 'name' => __( 'Iceland', 'happyforms' ), 'code' => '354', 'flag' => '🇮🇸' ),
1078
- 'IT' => array( 'name' => __( 'Italy', 'happyforms' ), 'code' => '39', 'flag' => '🇮🇹' ),
1079
- 'JM' => array( 'name' => __( 'Jamaica', 'happyforms' ), 'code' => '1876', 'flag' => '🇯🇲' ),
1080
- 'JO' => array( 'name' => __( 'Jordan', 'happyforms' ), 'code' => '962', 'flag' => '🇯🇴' ),
1081
- 'JP' => array( 'name' => __( 'Japan', 'happyforms' ), 'code' => '81', 'flag' => '🇯🇵' ),
1082
- 'KE' => array( 'name' => __( 'Kenya', 'happyforms' ), 'code' => '254', 'flag' => '🇰🇪' ),
1083
- 'KG' => array( 'name' => __( 'Kyrgyzstan', 'happyforms' ), 'code' => '996', 'flag' => '🇰🇬' ),
1084
- 'KH' => array( 'name' => __( 'Cambodia', 'happyforms' ), 'code' => '855', 'flag' => '🇰🇭' ),
1085
- 'KI' => array( 'name' => __( 'Kiribati', 'happyforms' ), 'code' => '686', 'flag' => '🇰🇮' ),
1086
- 'KM' => array( 'name' => __( 'Comoros', 'happyforms' ), 'code' => '269', 'flag' => '🇰🇲' ),
1087
- 'KN' => array( 'name' => __( 'Saint Kitts and Nevis', 'happyforms' ), 'code' => '1869', 'flag' => '🇰🇳' ),
1088
- 'KP' => array( 'name' => __( 'Korea Democratic Peoples Republic of', 'happyforms' ), 'code' => '850', 'flag' => '🇰🇵' ),
1089
- 'KR' => array( 'name' => __( 'Korea Republic of', 'happyforms' ), 'code' => '82', 'flag' => '🇰🇷' ),
1090
- 'KW' => array( 'name' => __( 'Kuwait', 'happyforms' ), 'code' => '965', 'flag' => '🇰🇼' ),
1091
- 'KY' => array( 'name' => __( 'Cayman Islands', 'happyforms' ), 'code' => '1345', 'flag' => '🇰🇾' ),
1092
- 'LA' => array( 'name' => __( 'Lao Peoples Democratic Republic', 'happyforms' ), 'code' => '856', 'flag' => '🇱🇦' ),
1093
- 'LB' => array( 'name' => __( 'Lebanon', 'happyforms' ), 'code' => '961', 'flag' => '🇱🇧' ),
1094
- 'LC' => array( 'name' => __( 'Saint Lucia', 'happyforms' ), 'code' => '1758', 'flag' => '🇱🇨' ),
1095
- 'LI' => array( 'name' => __( 'Liechtenstein', 'happyforms' ), 'code' => '423', 'flag' => '🇱🇮' ),
1096
- 'LK' => array( 'name' => __( 'Sri Lanka', 'happyforms' ), 'code' => '94', 'flag' => '🇱🇰' ),
1097
- 'LR' => array( 'name' => __( 'Liberia', 'happyforms' ), 'code' => '231', 'flag' => '🇱🇷' ),
1098
- 'LS' => array( 'name' => __( 'Lesotho', 'happyforms' ), 'code' => '266', 'flag' => '🇱🇸' ),
1099
- 'LT' => array( 'name' => __( 'Lithuania', 'happyforms' ), 'code' => '370', 'flag' => '🇱🇹' ),
1100
- 'LU' => array( 'name' => __( 'Luxembourg', 'happyforms' ), 'code' => '352', 'flag' => '🇱🇺' ),
1101
- 'LV' => array( 'name' => __( 'Latvia', 'happyforms' ), 'code' => '371', 'flag' => '🇱🇻' ),
1102
- 'LY' => array( 'name' => __( 'Libyan Arab Jamahiriya', 'happyforms' ), 'code' => '218', 'flag' => '🇱🇾' ),
1103
- 'MA' => array( 'name' => __( 'Morocco', 'happyforms' ), 'code' => '212', 'flag' => '🇲🇦' ),
1104
- 'MC' => array( 'name' => __( 'Monaco', 'happyforms' ), 'code' => '377', 'flag' => '🇲🇨' ),
1105
- 'MD' => array( 'name' => __( 'Moldova, Republic of', 'happyforms' ), 'code' => '373', 'flag' => '🇲🇩' ),
1106
- 'ME' => array( 'name' => __( 'Montenegro', 'happyforms' ), 'code' => '382', 'flag' => '🇲🇪' ),
1107
- 'MG' => array( 'name' => __( 'Madagascar', 'happyforms' ), 'code' => '261', 'flag' => '🇲🇬' ),
1108
- 'MH' => array( 'name' => __( 'Marshall Islands', 'happyforms' ), 'code' => '692', 'flag' => '🇲🇭' ),
1109
- 'MK' => array( 'name' => __( 'Macedonia, The Former Yugoslav Republic of', 'happyforms' ), 'code' => '389', 'flag' => '🇲🇰' ),
1110
- 'ML' => array( 'name' => __( 'Mali', 'happyforms' ), 'code' => '223', 'flag' => '🇲🇱' ),
1111
- 'MM' => array( 'name' => __( 'Myanmar', 'happyforms' ), 'code' => '95', 'flag' => '🇲🇲' ),
1112
- 'MN' => array( 'name' => __( 'Mongolia', 'happyforms' ), 'code' => '976', 'flag' => '🇲🇳' ),
1113
- 'MO' => array( 'name' => __( 'Macau', 'happyforms' ), 'code' => '853', 'flag' => '🇲🇴' ),
1114
- 'MP' => array( 'name' => __( 'Northern Mariana Islands', 'happyforms' ), 'code' => '1670', 'flag' => '🇲🇵' ),
1115
- 'MR' => array( 'name' => __( 'Mauritania', 'happyforms' ), 'code' => '222', 'flag' => '🇲🇺' ),
1116
- 'MS' => array( 'name' => __( 'Montserrat', 'happyforms' ), 'code' => '1664', 'flag' => '🇲🇸' ),
1117
- 'MT' => array( 'name' => __( 'Malta', 'happyforms' ), 'code' => '356', 'flag' => '🇲🇹' ),
1118
- 'MU' => array( 'name' => __( 'Mauritius', 'happyforms' ), 'code' => '230', 'flag' => '🇲🇺' ),
1119
- 'MV' => array( 'name' => __( 'Maldives', 'happyforms' ), 'code' => '960', 'flag' => '🇲🇻' ),
1120
- 'MW' => array( 'name' => __( 'Malawi', 'happyforms' ), 'code' => '265', 'flag' => '🇲🇼' ),
1121
- 'MX' => array( 'name' => __( 'Mexico', 'happyforms' ), 'code' => '52', 'flag' => '🇲🇽' ),
1122
- 'MY' => array( 'name' => __( 'Malaysia', 'happyforms' ), 'code' => '60', 'flag' => '🇲🇾' ),
1123
- 'MZ' => array( 'name' => __( 'Mozambique', 'happyforms' ), 'code' => '258', 'flag' => '🇲🇿' ),
1124
- 'NA' => array( 'name' => __( 'Namibia', 'happyforms' ), 'code' => '264', 'flag' => '🇳🇦' ),
1125
- 'NC' => array( 'name' => __( 'New Caledonia', 'happyforms' ), 'code' => '687', 'flag' => '🇳🇨' ),
1126
- 'NE' => array( 'name' => __( 'Niger', 'happyforms' ), 'code' => '227', 'flag' => '🇳🇪' ),
1127
- 'NG' => array( 'name' => __( 'Nigeria', 'happyforms' ), 'code' => '234', 'flag' => '🇳🇬' ),
1128
- 'NI' => array( 'name' => __( 'Nicaragua', 'happyforms' ), 'code' => '505', 'flag' => '🇳🇮' ),
1129
- 'NL' => array( 'name' => __( 'Netherlands', 'happyforms' ), 'code' => '31', 'flag' => '🇳🇱' ),
1130
- 'NO' => array( 'name' => __( 'Norway', 'happyforms' ), 'code' => '47', 'flag' => '🇳🇴' ),
1131
- 'NP' => array( 'name' => __( 'Nepal', 'happyforms' ), 'code' => '977', 'flag' => '🇳🇵' ),
1132
- 'NR' => array( 'name' => __( 'Nauru', 'happyforms' ), 'code' => '674', 'flag' => '🇳🇷' ),
1133
- 'NU' => array( 'name' => __( 'Niue', 'happyforms' ), 'code' => '683', 'flag' => '🇳🇺' ),
1134
- 'NZ' => array( 'name' => __( 'New Zealand', 'happyforms' ), 'code' => '64', 'flag' => '🇳🇿' ),
1135
- 'OM' => array( 'name' => __( 'Oman', 'happyforms' ), 'code' => '968', 'flag' => '🇴🇲' ),
1136
- 'PA' => array( 'name' => __( 'Panama', 'happyforms' ), 'code' => '507', 'flag' => '🇵🇦' ),
1137
- 'PE' => array( 'name' => __( 'Peru', 'happyforms' ), 'code' => '51', 'flag' => '🇵🇪' ),
1138
- 'PF' => array( 'name' => __( 'French Polynesia', 'happyforms' ), 'code' => '689', 'flag' => '🇵🇫' ),
1139
- 'PG' => array( 'name' => __( 'Papua New Guinea', 'happyforms' ), 'code' => '675', 'flag' => '🇵🇬' ),
1140
- 'PH' => array( 'name' => __( 'Philippines', 'happyforms' ), 'code' => '63', 'flag' => '🇵🇭' ),
1141
- 'PK' => array( 'name' => __( 'Pakistan', 'happyforms' ), 'code' => '92', 'flag' => '🇵🇰' ),
1142
- 'PL' => array( 'name' => __( 'Poland', 'happyforms' ), 'code' => '48', 'flag' => '🇵🇱' ),
1143
- 'PM' => array( 'name' => __( 'Saint Pierre and Miquelon', 'happyforms' ), 'code' => '508', 'flag' => '🇵🇲' ),
1144
- 'PN' => array( 'name' => __( 'Pitcairn', 'happyforms' ), 'code' => '870', 'flag' => '🇵🇳' ),
1145
- 'PT' => array( 'name' => __( 'Portugal', 'happyforms' ), 'code' => '351', 'flag' => '🇵🇹' ),
1146
- 'PW' => array( 'name' => __( 'Palau', 'happyforms' ), 'code' => '680', 'flag' => '🇵🇼' ),
1147
- 'PY' => array( 'name' => __( 'Paraguay', 'happyforms' ), 'code' => '595', 'flag' => '🇵🇾' ),
1148
- 'QA' => array( 'name' => __( 'Qatar', 'happyforms' ), 'code' => '974', 'flag' => '🇶🇦' ),
1149
- 'RO' => array( 'name' => __( 'Romania', 'happyforms' ), 'code' => '40', 'flag' => '🇷🇴' ),
1150
- 'RS' => array( 'name' => __( 'Serbia', 'happyforms' ), 'code' => '381', 'flag' => '🇷🇸' ),
1151
- 'RU' => array( 'name' => __( 'Russian Federation', 'happyforms' ), 'code' => '7', 'flag' => '🇷🇺' ),
1152
- 'RW' => array( 'name' => __( 'Rwanda', 'happyforms' ), 'code' => '250', 'flag' => '🇷🇼' ),
1153
- 'SA' => array( 'name' => __( 'Saudi Arabia', 'happyforms' ), 'code' => '966', 'flag' => '🇸🇦' ),
1154
- 'SB' => array( 'name' => __( 'Solomon Islands', 'happyforms' ), 'code' => '677', 'flag' => '🇸🇧' ),
1155
- 'SC' => array( 'name' => __( 'Seychelles', 'happyforms' ), 'code' => '248', 'flag' => '🇸🇨' ),
1156
- 'SD' => array( 'name' => __( 'Sudan', 'happyforms' ), 'code' => '249', 'flag' => '🇸🇩' ),
1157
- 'SE' => array( 'name' => __( 'Sweden', 'happyforms' ), 'code' => '46', 'flag' => '🇸🇪' ),
1158
- 'SG' => array( 'name' => __( 'Singapore', 'happyforms' ), 'code' => '65', 'flag' => '🇸🇬' ),
1159
- 'SH' => array( 'name' => __( 'Saint Helena', 'happyforms' ), 'code' => '290', 'flag' => '🇸🇭' ),
1160
- 'SI' => array( 'name' => __( 'Slovenia', 'happyforms' ), 'code' => '386', 'flag' => '🇸🇮' ),
1161
- 'SK' => array( 'name' => __( 'Slovakia', 'happyforms' ), 'code' => '421', 'flag' => '🇸🇰' ),
1162
- 'SL' => array( 'name' => __( 'Sierra Leone', 'happyforms' ), 'code' => '232', 'flag' => '🇸🇱' ),
1163
- 'SM' => array( 'name' => __( 'San Marino', 'happyforms' ), 'code' => '378', 'flag' => '🇸🇲' ),
1164
- 'SN' => array( 'name' => __( 'Senegal', 'happyforms' ), 'code' => '221', 'flag' => '🇸🇳' ),
1165
- 'SO' => array( 'name' => __( 'Somalia', 'happyforms' ), 'code' => '252', 'flag' => '🇸🇴' ),
1166
- 'SR' => array( 'name' => __( 'Suriname', 'happyforms' ), 'code' => '597', 'flag' => '🇸🇷' ),
1167
- 'ST' => array( 'name' => __( 'Sao Tome and Principe', 'happyforms' ), 'code' => '239', 'flag' => '🇸🇹' ),
1168
- 'SV' => array( 'name' => __( 'El Salvador', 'happyforms' ), 'code' => '503', 'flag' => '🇸🇻' ),
1169
- 'SY' => array( 'name' => __( 'Syrian Arab Republic', 'happyforms' ), 'code' => '963', 'flag' => '🇸🇾' ),
1170
- 'SZ' => array( 'name' => __( 'Swaziland', 'happyforms' ), 'code' => '268', 'flag' => '🇸🇿' ),
1171
- 'TC' => array( 'name' => __( 'Turks and Caicos Islands', 'happyforms' ), 'code' => '1649', 'flag' => '🇹🇨' ),
1172
- 'TD' => array( 'name' => __( 'Chad', 'happyforms' ), 'code' => '235', 'flag' => '🇹🇩' ),
1173
- 'TG' => array( 'name' => __( 'Togo', 'happyforms' ), 'code' => '228', 'flag' => '🇹🇬' ),
1174
- 'TH' => array( 'name' => __( 'Thailand', 'happyforms' ), 'code' => '66', 'flag' => '🇹🇭' ),
1175
- 'TJ' => array( 'name' => __( 'Tajikistan', 'happyforms' ), 'code' => '992', 'flag' => '🇹🇯' ),
1176
- 'TK' => array( 'name' => __( 'Tokelau', 'happyforms' ), 'code' => '690', 'flag' => '🇹🇰' ),
1177
- 'TL' => array( 'name' => __( 'Timor-leste', 'happyforms' ), 'code' => '670', 'flag' => '🇹🇱' ),
1178
- 'TM' => array( 'name' => __( 'Turkmenistan', 'happyforms' ), 'code' => '993', 'flag' => '🇹🇲' ),
1179
- 'TN' => array( 'name' => __( 'Tunisia', 'happyforms' ), 'code' => '216', 'flag' => '🇹🇳' ),
1180
- 'TO' => array( 'name' => __( 'Tonga', 'happyforms' ), 'code' => '676', 'flag' => '🇹🇴' ),
1181
- 'TR' => array( 'name' => __( 'Turkey', 'happyforms' ), 'code' => '90', 'flag' => '🇹🇷' ),
1182
- 'TT' => array( 'name' => __( 'Trinidad and Tobago', 'happyforms' ), 'code' => '1868', 'flag' => '🇹🇹' ),
1183
- 'TV' => array( 'name' => __( 'Tuvalu', 'happyforms' ), 'code' => '688', 'flag' => '🇹🇻' ),
1184
- 'TW' => array( 'name' => __( 'Taiwan, Province of China', 'happyforms' ), 'code' => '886', 'flag' => '🇹🇼' ),
1185
- 'TZ' => array( 'name' => __( 'Tanzania, United Republic of', 'happyforms' ), 'code' => '255', 'flag' => '🇹🇿' ),
1186
- 'UA' => array( 'name' => __( 'Ukraine', 'happyforms' ), 'code' => '380', 'flag' => '🇺🇦' ),
1187
- 'UG' => array( 'name' => __( 'Uganda', 'happyforms' ), 'code' => '256', 'flag' => '🇺🇬' ),
1188
- 'US' => array( 'name' => __( 'United States', 'happyforms' ), 'code' => '1', 'flag' => '🇺🇸' ),
1189
- 'UY' => array( 'name' => __( 'Uruguay', 'happyforms' ), 'code' => '598', 'flag' => '🇺🇾' ),
1190
- 'UZ' => array( 'name' => __( 'Uzbekistan', 'happyforms' ), 'code' => '998', 'flag' => '🇺🇿' ),
1191
- 'VC' => array( 'name' => __( 'Saint Vincent and the Grenadines', 'happyforms' ), 'code' => '1784', 'flag' => '🇻🇨' ),
1192
- 'VE' => array( 'name' => __( 'Venezuela', 'happyforms' ), 'code' => '58', 'flag' => '🇻🇪' ),
1193
- 'VG' => array( 'name' => __( 'Virgin Islands, British', 'happyforms' ), 'code' => '1284', 'flag' => '🇻🇬' ),
1194
- 'VI' => array( 'name' => __( 'Virgin Islands, U.S.', 'happyforms' ), 'code' => '1340', 'flag' => '🇻🇮' ),
1195
- 'VN' => array( 'name' => __( 'Vietnam', 'happyforms' ), 'code' => '84', 'flag' => '🇻🇳' ),
1196
- 'VU' => array( 'name' => __( 'Vanuatu', 'happyforms' ), 'code' => '678', 'flag' => '🇻🇺' ),
1197
- 'WF' => array( 'name' => __( 'Wallis and Futuna', 'happyforms' ), 'code' => '681', 'flag' => '🇼🇫' ),
1198
- 'WS' => array( 'name' => __( 'Samoa', 'happyforms' ), 'code' => '685', 'flag' => '🇼🇸' ),
1199
- 'YE' => array( 'name' => __( 'Yemen', 'happyforms' ), 'code' => '967', 'flag' => '🇾🇪' ),
1200
- 'YT' => array( 'name' => __( 'Mayotte', 'happyforms' ), 'code' => '262', 'flag' => '🇾🇹' ),
1201
- 'ZA' => array( 'name' => __( 'South Africa', 'happyforms' ), 'code' => '27', 'flag' => '🇿🇦' ),
1202
- 'ZM' => array( 'name' => __( 'Zambia', 'happyforms' ), 'code' => '260', 'flag' => '🇿🇲' ),
1203
- 'ZW' => array( 'name' => __( 'Zimbabwe', 'happyforms' ), 'code' => '263', 'flag' => '🇿🇼' ),
1204
  );
1205
 
1206
  return $countries;
62
 
63
  if ( $controller->has_spam_protection( $form ) ) : ?>
64
  <label>
65
+ <input type="checkbox" name="<?php echo $form['ID']; ?>single_line_text_-1" value="1" style="display: none;" tabindex="-1" autocomplete="off"> <span class="screen-reader-text"><?php _e( 'Spam protection, skip this field', HAPPYFORMS_TEXT_DOMAIN ); ?></span>
66
  </label>
67
  <?php endif;
68
  }
920
 
921
  function happyforms_geolocation_link( $part ) {
922
  if ( 1 === intval( $part['has_geolocation'] ) ) : ?>
923
+ <a class="address-geolocate" href="#" data-idle="<?php _e( 'Get my location', HAPPYFORMS_TEXT_DOMAIN ); ?>" data-fetching="<?php _e( 'Fetching location…', HAPPYFORMS_TEXT_DOMAIN ); ?>"><?php require( happyforms_get_core_folder() . '/assets/svg/font-awesome/map-marker-alt.svg' ) ; ?><span></span></a>
924
  <?php endif;
925
  }
926
 
930
 
931
  function happyforms_get_months( $form = array() ) {
932
  $months = array(
933
+ 1 => __( 'January', HAPPYFORMS_TEXT_DOMAIN ),
934
+ 2 => __( 'February', HAPPYFORMS_TEXT_DOMAIN ),
935
+ 3 => __( 'March', HAPPYFORMS_TEXT_DOMAIN ),
936
+ 4 => __( 'April', HAPPYFORMS_TEXT_DOMAIN ),
937
+ 5 => __( 'May', HAPPYFORMS_TEXT_DOMAIN ),
938
+ 6 => __( 'June', HAPPYFORMS_TEXT_DOMAIN ),
939
+ 7 => __( 'July', HAPPYFORMS_TEXT_DOMAIN ),
940
+ 8 => __( 'August', HAPPYFORMS_TEXT_DOMAIN ),
941
+ 9 => __( 'September', HAPPYFORMS_TEXT_DOMAIN ),
942
+ 10 => __( 'October', HAPPYFORMS_TEXT_DOMAIN ),
943
+ 11 => __( 'November', HAPPYFORMS_TEXT_DOMAIN ),
944
+ 12 => __( 'December', HAPPYFORMS_TEXT_DOMAIN )
945
  );
946
 
947
  $months = apply_filters( 'happyforms_get_months', $months, $form );
982
 
983
  function happyforms_get_phone_countries() {
984
  $countries = array(
985
+ 'AD' => array( 'name' => __( 'Andorra', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '376', 'flag' => '🇦🇩' ),
986
+ 'AE' => array( 'name' => __( 'United Arab Emirates', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '971', 'flag' => '🇦🇪' ),
987
+ 'AF' => array( 'name' => __( 'Afghanistan', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '93', 'flag' => '🇦🇫' ),
988
+ 'AG' => array( 'name' => __( 'Antigua and Barbuda', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1268', 'flag' => '🇦🇬' ),
989
+ 'AI' => array( 'name' => __( 'Anguilla', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1264', 'flag' => '🇦🇮' ),
990
+ 'AL' => array( 'name' => __( 'Albania', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '355', 'flag' => '🇦🇱' ),
991
+ 'AM' => array( 'name' => __( 'Armenia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '374', 'flag' => '🇦🇲' ),
992
+ 'AO' => array( 'name' => __( 'Angola', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '244', 'flag' => '🇦🇴' ),
993
+ 'AQ' => array( 'name' => __( 'Antarctica', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '672', 'flag' => '🇦🇶' ),
994
+ 'AR' => array( 'name' => __( 'Argentina', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '54', 'flag' => '🇦🇷' ),
995
+ 'AS' => array( 'name' => __( 'American Samoa', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1684', 'flag' => '🇦🇸' ),
996
+ 'AT' => array( 'name' => __( 'Austria', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '43', 'flag' => '🇦🇹' ),
997
+ 'AU' => array( 'name' => __( 'Australia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '61', 'flag' => '🇦🇺' ),
998
+ 'AW' => array( 'name' => __( 'Aruba', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '297', 'flag' => '🇦🇼' ),
999
+ 'AZ' => array( 'name' => __( 'Azerbaijan', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '994', 'flag' => '🇦🇿' ),
1000
+ 'BA' => array( 'name' => __( 'Bosnia and Herzegovina', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '387', 'flag' => '🇧🇦' ),
1001
+ 'BB' => array( 'name' => __( 'Barbados', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1246', 'flag' => '🇧🇧' ),
1002
+ 'BD' => array( 'name' => __( 'Bangladesh', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '880', 'flag' => '🇧🇩' ),
1003
+ 'BE' => array( 'name' => __( 'Belgium', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '32', 'flag' => '🇧🇪' ),
1004
+ 'BF' => array( 'name' => __( 'Burkina Faso', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '226', 'flag' => '🇧🇫' ),
1005
+ 'BG' => array( 'name' => __( 'Bulgaria', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '359', 'flag' => '🇧🇬' ),
1006
+ 'BH' => array( 'name' => __( 'Bahrain', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '973', 'flag' => '🇧🇭' ),
1007
+ 'BI' => array( 'name' => __( 'Burundi', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '257', 'flag' => '🇧🇮' ),
1008
+ 'BJ' => array( 'name' => __( 'Benin', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '229', 'flag' => '🇧🇯' ),
1009
+ 'BL' => array( 'name' => __( 'Saint Barthelemy', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '590', 'flag' => '🇧🇱' ),
1010
+ 'BM' => array( 'name' => __( 'Bermuda', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1441', 'flag' => '🇧🇲' ),
1011
+ 'BN' => array( 'name' => __( 'Brunei Darussalam', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '673', 'flag' => '🇧🇳' ),
1012
+ 'BO' => array( 'name' => __( 'Bolivia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '591', 'flag' => '🇧🇴' ),
1013
+ 'BR' => array( 'name' => __( 'Brazil', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '55', 'flag' => '🇧🇷' ),
1014
+ 'BS' => array( 'name' => __( 'Bahamas', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1242', 'flag' => '🇧🇸' ),
1015
+ 'BT' => array( 'name' => __( 'Bhutan', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '975', 'flag' => '🇧🇹' ),
1016
+ 'BW' => array( 'name' => __( 'Botswana', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '267', 'flag' => '🇧🇼' ),
1017
+ 'BY' => array( 'name' => __( 'Belarus', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '375', 'flag' => '🇧🇾' ),
1018
+ 'BZ' => array( 'name' => __( 'Belize', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '501', 'flag' => '🇧🇿' ),
1019
+ 'CA' => array( 'name' => __( 'Canada', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1', 'flag' => '🇨🇦' ),
1020
+ 'CD' => array( 'name' => __( 'Congo, The Democratic Republic of the', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '243', 'flag' => '🇨🇩' ),
1021
+ 'CF' => array( 'name' => __( 'Central African Republic', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '236', 'flag' => '🇨🇫' ),
1022
+ 'CG' => array( 'name' => __( 'Congo', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '242', 'flag' => '🇨🇬' ),
1023
+ 'CH' => array( 'name' => __( 'Switzerland', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '41', 'flag' => '🇨🇭' ),
1024
+ 'CK' => array( 'name' => __( 'Cook Islands', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '682', 'flag' => '🇨🇰' ),
1025
+ 'CL' => array( 'name' => __( 'Chile', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '56', 'flag' => '🇨🇱' ),
1026
+ 'CM' => array( 'name' => __( 'Cameroon', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '237', 'flag' => '🇨🇲' ),
1027
+ 'CN' => array( 'name' => __( 'China', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '86', 'flag' => '🇨🇳' ),
1028
+ 'CO' => array( 'name' => __( 'Colombia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '57', 'flag' => '🇨🇴' ),
1029
+ 'CR' => array( 'name' => __( 'Costa Rica', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '506', 'flag' => '🇨🇷' ),
1030
+ 'CU' => array( 'name' => __( 'Cuba', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '53', 'flag' => '🇨🇺' ),
1031
+ 'CV' => array( 'name' => __( 'Cape Verde', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '238', 'flag' => '🇨🇻' ),
1032
+ 'CY' => array( 'name' => __( 'Cyprus', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '357', 'flag' => '🇨🇾' ),
1033
+ 'CZ' => array( 'name' => __( 'Czech Republic', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '420', 'flag' => '🇨🇿' ),
1034
+ 'DE' => array( 'name' => __( 'Germany', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '49', 'flag' => '🇩🇪' ),
1035
+ 'DJ' => array( 'name' => __( 'Djibouti', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '253', 'flag' => '🇩🇯' ),
1036
+ 'DK' => array( 'name' => __( 'Denmark', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '45', 'flag' => '🇩🇰' ),
1037
+ 'DM' => array( 'name' => __( 'Dominica', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1767', 'flag' => '🇩🇲' ),
1038
+ 'DO' => array( 'name' => __( 'Dominican Republic', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1809', 'flag' => '🇩🇴' ),
1039
+ 'DZ' => array( 'name' => __( 'Algeria', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '213', 'flag' => '🇩🇿' ),
1040
+ 'EC' => array( 'name' => __( 'Ecuador', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '593', 'flag' => '🇪🇨' ),
1041
+ 'EE' => array( 'name' => __( 'Estonia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '372', 'flag' => '🇪🇪' ),
1042
+ 'EG' => array( 'name' => __( 'Egypt', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '20', 'flag' => '🇪🇬' ),
1043
+ 'ER' => array( 'name' => __( 'Eritrea', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '291', 'flag' => '🇪🇷' ),
1044
+ 'ES' => array( 'name' => __( 'Spain', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '34', 'flag' => '🇪🇸' ),
1045
+ 'ET' => array( 'name' => __( 'Ethiopia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '251', 'flag' => '🇪🇹' ),
1046
+ 'FI' => array( 'name' => __( 'Finland', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '358', 'flag' => '🇫🇮' ),
1047
+ 'FJ' => array( 'name' => __( 'Fiji', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '679', 'flag' => '🇫🇯' ),
1048
+ 'FK' => array( 'name' => __( 'Falkland Islands (Malvinas)', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '500', 'flag' => '🇫🇰' ),
1049
+ 'FM' => array( 'name' => __( 'Micronesia, Federated States of', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '691', 'flag' => '🇫🇲' ),
1050
+ 'FO' => array( 'name' => __( 'Faroe Islands', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '298', 'flag' => '🇫🇴' ),
1051
+ 'FR' => array( 'name' => __( 'France', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '33', 'flag' => '🇫🇷' ),
1052
+ 'GA' => array( 'name' => __( 'Gabon', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '241', 'flag' => '🇬🇦' ),
1053
+ 'GB' => array( 'name' => __( 'United Kingdom', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '44', 'flag' => '🇬🇧' ),
1054
+ 'GD' => array( 'name' => __( 'Grenada', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1473', 'flag' => '🇬🇩' ),
1055
+ 'GE' => array( 'name' => __( 'Georgia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '995', 'flag' => '🇬🇪' ),
1056
+ 'GH' => array( 'name' => __( 'Ghana', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '233', 'flag' => '🇬🇭' ),
1057
+ 'GI' => array( 'name' => __( 'Gibraltar', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '350', 'flag' => '🇬🇮' ),
1058
+ 'GL' => array( 'name' => __( 'Greenland', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '299', 'flag' => '🇬🇱' ),
1059
+ 'GM' => array( 'name' => __( 'Gambia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '220', 'flag' => '🇬🇲' ),
1060
+ 'GN' => array( 'name' => __( 'Guinea', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '224', 'flag' => '🇬🇳' ),
1061
+ 'GR' => array( 'name' => __( 'Greece', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '30', 'flag' => '🇬🇷' ),
1062
+ 'GT' => array( 'name' => __( 'Guatemala', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '502', 'flag' => '🇬🇹' ),
1063
+ 'GU' => array( 'name' => __( 'Guam', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1671', 'flag' => '🇬🇺' ),
1064
+ 'GW' => array( 'name' => __( 'Guinea-bissau', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '245', 'flag' => '🇬🇼' ),
1065
+ 'GY' => array( 'name' => __( 'Guyana', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '592', 'flag' => '🇬🇾' ),
1066
+ 'HK' => array( 'name' => __( 'Hong Kong', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '852', 'flag' => '🇭🇰' ),
1067
+ 'HN' => array( 'name' => __( 'Honduras', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '504', 'flag' => '🇭🇳' ),
1068
+ 'HR' => array( 'name' => __( 'Croatia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '385', 'flag' => '🇭🇷' ),
1069
+ 'HT' => array( 'name' => __( 'Haiti', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '509', 'flag' => '🇭🇹' ),
1070
+ 'HU' => array( 'name' => __( 'Hungary', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '36', 'flag' => '🇭🇺' ),
1071
+ 'ID' => array( 'name' => __( 'Indonesia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '62', 'flag' => '🇮🇩' ),
1072
+ 'IE' => array( 'name' => __( 'Ireland', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '353', 'flag' => '🇮🇪' ),
1073
+ 'IL' => array( 'name' => __( 'Israel', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '972', 'flag' => '🇮🇱' ),
1074
+ 'IN' => array( 'name' => __( 'India', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '91', 'flag' => '🇮🇳' ),
1075
+ 'IQ' => array( 'name' => __( 'Iraq', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '964', 'flag' => '🇮🇶' ),
1076
+ 'IR' => array( 'name' => __( 'Iran, Islamic Republic of', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '98', 'flag' => '🇮🇷' ),
1077
+ 'IS' => array( 'name' => __( 'Iceland', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '354', 'flag' => '🇮🇸' ),
1078
+ 'IT' => array( 'name' => __( 'Italy', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '39', 'flag' => '🇮🇹' ),
1079
+ 'JM' => array( 'name' => __( 'Jamaica', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1876', 'flag' => '🇯🇲' ),
1080
+ 'JO' => array( 'name' => __( 'Jordan', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '962', 'flag' => '🇯🇴' ),
1081
+ 'JP' => array( 'name' => __( 'Japan', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '81', 'flag' => '🇯🇵' ),
1082
+ 'KE' => array( 'name' => __( 'Kenya', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '254', 'flag' => '🇰🇪' ),
1083
+ 'KG' => array( 'name' => __( 'Kyrgyzstan', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '996', 'flag' => '🇰🇬' ),
1084
+ 'KH' => array( 'name' => __( 'Cambodia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '855', 'flag' => '🇰🇭' ),
1085
+ 'KI' => array( 'name' => __( 'Kiribati', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '686', 'flag' => '🇰🇮' ),
1086
+ 'KM' => array( 'name' => __( 'Comoros', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '269', 'flag' => '🇰🇲' ),
1087
+ 'KN' => array( 'name' => __( 'Saint Kitts and Nevis', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1869', 'flag' => '🇰🇳' ),
1088
+ 'KP' => array( 'name' => __( 'Korea Democratic Peoples Republic of', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '850', 'flag' => '🇰🇵' ),
1089
+ 'KR' => array( 'name' => __( 'Korea Republic of', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '82', 'flag' => '🇰🇷' ),
1090
+ 'KW' => array( 'name' => __( 'Kuwait', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '965', 'flag' => '🇰🇼' ),
1091
+ 'KY' => array( 'name' => __( 'Cayman Islands', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1345', 'flag' => '🇰🇾' ),
1092
+ 'LA' => array( 'name' => __( 'Lao Peoples Democratic Republic', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '856', 'flag' => '🇱🇦' ),
1093
+ 'LB' => array( 'name' => __( 'Lebanon', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '961', 'flag' => '🇱🇧' ),
1094
+ 'LC' => array( 'name' => __( 'Saint Lucia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1758', 'flag' => '🇱🇨' ),
1095
+ 'LI' => array( 'name' => __( 'Liechtenstein', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '423', 'flag' => '🇱🇮' ),
1096
+ 'LK' => array( 'name' => __( 'Sri Lanka', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '94', 'flag' => '🇱🇰' ),
1097
+ 'LR' => array( 'name' => __( 'Liberia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '231', 'flag' => '🇱🇷' ),
1098
+ 'LS' => array( 'name' => __( 'Lesotho', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '266', 'flag' => '🇱🇸' ),
1099
+ 'LT' => array( 'name' => __( 'Lithuania', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '370', 'flag' => '🇱🇹' ),
1100
+ 'LU' => array( 'name' => __( 'Luxembourg', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '352', 'flag' => '🇱🇺' ),
1101
+ 'LV' => array( 'name' => __( 'Latvia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '371', 'flag' => '🇱🇻' ),
1102
+ 'LY' => array( 'name' => __( 'Libyan Arab Jamahiriya', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '218', 'flag' => '🇱🇾' ),
1103
+ 'MA' => array( 'name' => __( 'Morocco', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '212', 'flag' => '🇲🇦' ),
1104
+ 'MC' => array( 'name' => __( 'Monaco', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '377', 'flag' => '🇲🇨' ),
1105
+ 'MD' => array( 'name' => __( 'Moldova, Republic of', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '373', 'flag' => '🇲🇩' ),
1106
+ 'ME' => array( 'name' => __( 'Montenegro', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '382', 'flag' => '🇲🇪' ),
1107
+ 'MG' => array( 'name' => __( 'Madagascar', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '261', 'flag' => '🇲🇬' ),
1108
+ 'MH' => array( 'name' => __( 'Marshall Islands', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '692', 'flag' => '🇲🇭' ),
1109
+ 'MK' => array( 'name' => __( 'Macedonia, The Former Yugoslav Republic of', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '389', 'flag' => '🇲🇰' ),
1110
+ 'ML' => array( 'name' => __( 'Mali', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '223', 'flag' => '🇲🇱' ),
1111
+ 'MM' => array( 'name' => __( 'Myanmar', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '95', 'flag' => '🇲🇲' ),
1112
+ 'MN' => array( 'name' => __( 'Mongolia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '976', 'flag' => '🇲🇳' ),
1113
+ 'MO' => array( 'name' => __( 'Macau', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '853', 'flag' => '🇲🇴' ),
1114
+ 'MP' => array( 'name' => __( 'Northern Mariana Islands', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1670', 'flag' => '🇲🇵' ),
1115
+ 'MR' => array( 'name' => __( 'Mauritania', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '222', 'flag' => '🇲🇺' ),
1116
+ 'MS' => array( 'name' => __( 'Montserrat', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1664', 'flag' => '🇲🇸' ),
1117
+ 'MT' => array( 'name' => __( 'Malta', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '356', 'flag' => '🇲🇹' ),
1118
+ 'MU' => array( 'name' => __( 'Mauritius', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '230', 'flag' => '🇲🇺' ),
1119
+ 'MV' => array( 'name' => __( 'Maldives', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '960', 'flag' => '🇲🇻' ),
1120
+ 'MW' => array( 'name' => __( 'Malawi', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '265', 'flag' => '🇲🇼' ),
1121
+ 'MX' => array( 'name' => __( 'Mexico', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '52', 'flag' => '🇲🇽' ),
1122
+ 'MY' => array( 'name' => __( 'Malaysia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '60', 'flag' => '🇲🇾' ),
1123
+ 'MZ' => array( 'name' => __( 'Mozambique', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '258', 'flag' => '🇲🇿' ),
1124
+ 'NA' => array( 'name' => __( 'Namibia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '264', 'flag' => '🇳🇦' ),
1125
+ 'NC' => array( 'name' => __( 'New Caledonia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '687', 'flag' => '🇳🇨' ),
1126
+ 'NE' => array( 'name' => __( 'Niger', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '227', 'flag' => '🇳🇪' ),
1127
+ 'NG' => array( 'name' => __( 'Nigeria', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '234', 'flag' => '🇳🇬' ),
1128
+ 'NI' => array( 'name' => __( 'Nicaragua', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '505', 'flag' => '🇳🇮' ),
1129
+ 'NL' => array( 'name' => __( 'Netherlands', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '31', 'flag' => '🇳🇱' ),
1130
+ 'NO' => array( 'name' => __( 'Norway', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '47', 'flag' => '🇳🇴' ),
1131
+ 'NP' => array( 'name' => __( 'Nepal', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '977', 'flag' => '🇳🇵' ),
1132
+ 'NR' => array( 'name' => __( 'Nauru', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '674', 'flag' => '🇳🇷' ),
1133
+ 'NU' => array( 'name' => __( 'Niue', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '683', 'flag' => '🇳🇺' ),
1134
+ 'NZ' => array( 'name' => __( 'New Zealand', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '64', 'flag' => '🇳🇿' ),
1135
+ 'OM' => array( 'name' => __( 'Oman', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '968', 'flag' => '🇴🇲' ),
1136
+ 'PA' => array( 'name' => __( 'Panama', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '507', 'flag' => '🇵🇦' ),
1137
+ 'PE' => array( 'name' => __( 'Peru', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '51', 'flag' => '🇵🇪' ),
1138
+ 'PF' => array( 'name' => __( 'French Polynesia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '689', 'flag' => '🇵🇫' ),
1139
+ 'PG' => array( 'name' => __( 'Papua New Guinea', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '675', 'flag' => '🇵🇬' ),
1140
+ 'PH' => array( 'name' => __( 'Philippines', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '63', 'flag' => '🇵🇭' ),
1141
+ 'PK' => array( 'name' => __( 'Pakistan', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '92', 'flag' => '🇵🇰' ),
1142
+ 'PL' => array( 'name' => __( 'Poland', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '48', 'flag' => '🇵🇱' ),
1143
+ 'PM' => array( 'name' => __( 'Saint Pierre and Miquelon', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '508', 'flag' => '🇵🇲' ),
1144
+ 'PN' => array( 'name' => __( 'Pitcairn', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '870', 'flag' => '🇵🇳' ),
1145
+ 'PT' => array( 'name' => __( 'Portugal', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '351', 'flag' => '🇵🇹' ),
1146
+ 'PW' => array( 'name' => __( 'Palau', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '680', 'flag' => '🇵🇼' ),
1147
+ 'PY' => array( 'name' => __( 'Paraguay', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '595', 'flag' => '🇵🇾' ),
1148
+ 'QA' => array( 'name' => __( 'Qatar', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '974', 'flag' => '🇶🇦' ),
1149
+ 'RO' => array( 'name' => __( 'Romania', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '40', 'flag' => '🇷🇴' ),
1150
+ 'RS' => array( 'name' => __( 'Serbia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '381', 'flag' => '🇷🇸' ),
1151
+ 'RU' => array( 'name' => __( 'Russian Federation', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '7', 'flag' => '🇷🇺' ),
1152
+ 'RW' => array( 'name' => __( 'Rwanda', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '250', 'flag' => '🇷🇼' ),
1153
+ 'SA' => array( 'name' => __( 'Saudi Arabia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '966', 'flag' => '🇸🇦' ),
1154
+ 'SB' => array( 'name' => __( 'Solomon Islands', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '677', 'flag' => '🇸🇧' ),
1155
+ 'SC' => array( 'name' => __( 'Seychelles', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '248', 'flag' => '🇸🇨' ),
1156
+ 'SD' => array( 'name' => __( 'Sudan', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '249', 'flag' => '🇸🇩' ),
1157
+ 'SE' => array( 'name' => __( 'Sweden', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '46', 'flag' => '🇸🇪' ),
1158
+ 'SG' => array( 'name' => __( 'Singapore', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '65', 'flag' => '🇸🇬' ),
1159
+ 'SH' => array( 'name' => __( 'Saint Helena', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '290', 'flag' => '🇸🇭' ),
1160
+ 'SI' => array( 'name' => __( 'Slovenia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '386', 'flag' => '🇸🇮' ),
1161
+ 'SK' => array( 'name' => __( 'Slovakia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '421', 'flag' => '🇸🇰' ),
1162
+ 'SL' => array( 'name' => __( 'Sierra Leone', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '232', 'flag' => '🇸🇱' ),
1163
+ 'SM' => array( 'name' => __( 'San Marino', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '378', 'flag' => '🇸🇲' ),
1164
+ 'SN' => array( 'name' => __( 'Senegal', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '221', 'flag' => '🇸🇳' ),
1165
+ 'SO' => array( 'name' => __( 'Somalia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '252', 'flag' => '🇸🇴' ),
1166
+ 'SR' => array( 'name' => __( 'Suriname', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '597', 'flag' => '🇸🇷' ),
1167
+ 'ST' => array( 'name' => __( 'Sao Tome and Principe', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '239', 'flag' => '🇸🇹' ),
1168
+ 'SV' => array( 'name' => __( 'El Salvador', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '503', 'flag' => '🇸🇻' ),
1169
+ 'SY' => array( 'name' => __( 'Syrian Arab Republic', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '963', 'flag' => '🇸🇾' ),
1170
+ 'SZ' => array( 'name' => __( 'Swaziland', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '268', 'flag' => '🇸🇿' ),
1171
+ 'TC' => array( 'name' => __( 'Turks and Caicos Islands', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1649', 'flag' => '🇹🇨' ),
1172
+ 'TD' => array( 'name' => __( 'Chad', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '235', 'flag' => '🇹🇩' ),
1173
+ 'TG' => array( 'name' => __( 'Togo', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '228', 'flag' => '🇹🇬' ),
1174
+ 'TH' => array( 'name' => __( 'Thailand', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '66', 'flag' => '🇹🇭' ),
1175
+ 'TJ' => array( 'name' => __( 'Tajikistan', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '992', 'flag' => '🇹🇯' ),
1176
+ 'TK' => array( 'name' => __( 'Tokelau', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '690', 'flag' => '🇹🇰' ),
1177
+ 'TL' => array( 'name' => __( 'Timor-leste', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '670', 'flag' => '🇹🇱' ),
1178
+ 'TM' => array( 'name' => __( 'Turkmenistan', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '993', 'flag' => '🇹🇲' ),
1179
+ 'TN' => array( 'name' => __( 'Tunisia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '216', 'flag' => '🇹🇳' ),
1180
+ 'TO' => array( 'name' => __( 'Tonga', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '676', 'flag' => '🇹🇴' ),
1181
+ 'TR' => array( 'name' => __( 'Turkey', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '90', 'flag' => '🇹🇷' ),
1182
+ 'TT' => array( 'name' => __( 'Trinidad and Tobago', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1868', 'flag' => '🇹🇹' ),
1183
+ 'TV' => array( 'name' => __( 'Tuvalu', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '688', 'flag' => '🇹🇻' ),
1184
+ 'TW' => array( 'name' => __( 'Taiwan, Province of China', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '886', 'flag' => '🇹🇼' ),
1185
+ 'TZ' => array( 'name' => __( 'Tanzania, United Republic of', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '255', 'flag' => '🇹🇿' ),
1186
+ 'UA' => array( 'name' => __( 'Ukraine', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '380', 'flag' => '🇺🇦' ),
1187
+ 'UG' => array( 'name' => __( 'Uganda', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '256', 'flag' => '🇺🇬' ),
1188
+ 'US' => array( 'name' => __( 'United States', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1', 'flag' => '🇺🇸' ),
1189
+ 'UY' => array( 'name' => __( 'Uruguay', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '598', 'flag' => '🇺🇾' ),
1190
+ 'UZ' => array( 'name' => __( 'Uzbekistan', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '998', 'flag' => '🇺🇿' ),
1191
+ 'VC' => array( 'name' => __( 'Saint Vincent and the Grenadines', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1784', 'flag' => '🇻🇨' ),
1192
+ 'VE' => array( 'name' => __( 'Venezuela', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '58', 'flag' => '🇻🇪' ),
1193
+ 'VG' => array( 'name' => __( 'Virgin Islands, British', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1284', 'flag' => '🇻🇬' ),
1194
+ 'VI' => array( 'name' => __( 'Virgin Islands, U.S.', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '1340', 'flag' => '🇻🇮' ),
1195
+ 'VN' => array( 'name' => __( 'Vietnam', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '84', 'flag' => '🇻🇳' ),
1196
+ 'VU' => array( 'name' => __( 'Vanuatu', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '678', 'flag' => '🇻🇺' ),
1197
+ 'WF' => array( 'name' => __( 'Wallis and Futuna', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '681', 'flag' => '🇼🇫' ),
1198
+ 'WS' => array( 'name' => __( 'Samoa', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '685', 'flag' => '🇼🇸' ),
1199
+ 'YE' => array( 'name' => __( 'Yemen', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '967', 'flag' => '🇾🇪' ),
1200
+ 'YT' => array( 'name' => __( 'Mayotte', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '262', 'flag' => '🇾🇹' ),
1201
+ 'ZA' => array( 'name' => __( 'South Africa', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '27', 'flag' => '🇿🇦' ),
1202
+ 'ZM' => array( 'name' => __( 'Zambia', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '260', 'flag' => '🇿🇲' ),
1203
+ 'ZW' => array( 'name' => __( 'Zimbabwe', HAPPYFORMS_TEXT_DOMAIN ), 'code' => '263', 'flag' => '🇿🇼' ),
1204
  );
1205
 
1206
  return $countries;
core/helpers/helper-misc.php CHANGED
@@ -194,7 +194,7 @@ if ( ! function_exists( 'happyforms_admin_footer' ) ):
194
  function happyforms_admin_footer() {
195
  ?>
196
  <span id="footer-thankyou">
197
- <?php _e( 'Thank you for creating with', 'happyforms' ); ?> <a href="https://happyforms.me/" target="_blank">HappyForms</a>.
198
  </span>
199
  <?php
200
  }
@@ -211,245 +211,245 @@ if ( ! function_exists( 'happyforms_get_countries' ) ):
211
  */
212
  function happyforms_get_countries() {
213
  return array(
214
- __( 'Afghanistan', 'happyforms' ),
215
- __( 'Albania', 'happyforms' ),
216
- __( 'Algeria', 'happyforms' ),
217
- __( 'American Samoa', 'happyforms' ),
218
- __( 'Andorra', 'happyforms' ),
219
- __( 'Angola', 'happyforms' ),
220
- __( 'Anguilla', 'happyforms' ),
221
- __( 'Antarctica', 'happyforms' ),
222
- __( 'Antigua and Barbuda', 'happyforms' ),
223
- __( 'Argentina', 'happyforms' ),
224
- __( 'Armenia', 'happyforms' ),
225
- __( 'Aruba', 'happyforms' ),
226
- __( 'Australia', 'happyforms' ),
227
- __( 'Austria', 'happyforms' ),
228
- __( 'Azerbaijan', 'happyforms' ),
229
- __( 'Bahamas', 'happyforms' ),
230
- __( 'Bahrain', 'happyforms' ),
231
- __( 'Bangladesh', 'happyforms' ),
232
- __( 'Barbados', 'happyforms' ),
233
- __( 'Belarus', 'happyforms' ),
234
- __( 'Belgium', 'happyforms' ),
235
- __( 'Belize', 'happyforms' ),
236
- __( 'Benin', 'happyforms' ),
237
- __( 'Bermuda', 'happyforms' ),
238
- __( 'Bhutan', 'happyforms' ),
239
- __( 'Bolivia', 'happyforms' ),
240
- __( 'Bosnia and Herzegowina', 'happyforms' ),
241
- __( 'Botswana', 'happyforms' ),
242
- __( 'Bouvet Island', 'happyforms' ),
243
- __( 'Brazil', 'happyforms' ),
244
- __( 'British Indian Ocean Territory', 'happyforms' ),
245
- __( 'Brunei Darussalam', 'happyforms' ),
246
- __( 'Bulgaria', 'happyforms' ),
247
- __( 'Burkina Faso', 'happyforms' ),
248
- __( 'Burundi', 'happyforms' ),
249
- __( 'Cambodia', 'happyforms' ),
250
- __( 'Cameroon', 'happyforms' ),
251
- __( 'Canada', 'happyforms' ),
252
- __( 'Cape Verde', 'happyforms' ),
253
- __( 'Cayman Islands', 'happyforms' ),
254
- __( 'Central African Republic', 'happyforms' ),
255
- __( 'Chad', 'happyforms' ),
256
- __( 'Chile', 'happyforms' ),
257
- __( 'China', 'happyforms' ),
258
- __( 'Christmas Island', 'happyforms' ),
259
- __( 'Cocos (Keeling) Islands', 'happyforms' ),
260
- __( 'Colombia', 'happyforms' ),
261
- __( 'Comoros', 'happyforms' ),
262
- __( 'Congo', 'happyforms' ),
263
- __( 'Congo, the Democratic Republic of the', 'happyforms' ),
264
- __( 'Cook Islands', 'happyforms' ),
265
- __( 'Costa Rica', 'happyforms' ),
266
- __( 'Ivory Coast', 'happyforms' ),
267
- __( 'Croatia (Hrvatska)', 'happyforms' ),
268
- __( 'Cuba', 'happyforms' ),
269
- __( 'Cyprus', 'happyforms' ),
270
- __( 'Czech Republic', 'happyforms' ),
271
- __( 'Denmark', 'happyforms' ),
272
- __( 'Djibouti', 'happyforms' ),
273
- __( 'Dominica', 'happyforms' ),
274
- __( 'Dominican Republic', 'happyforms' ),
275
- __( 'East Timor', 'happyforms' ),
276
- __( 'Ecuador', 'happyforms' ),
277
- __( 'Egypt', 'happyforms' ),
278
- __( 'El Salvador', 'happyforms' ),
279
- __( 'Equatorial Guinea', 'happyforms' ),
280
- __( 'Eritrea', 'happyforms' ),
281
- __( 'Estonia', 'happyforms' ),
282
- __( 'Ethiopia', 'happyforms' ),
283
- __( 'Falkland Islands (Malvinas)', 'happyforms' ),
284
- __( 'Faroe Islands', 'happyforms' ),
285
- __( 'Fiji', 'happyforms' ),
286
- __( 'Finland', 'happyforms' ),
287
- __( 'France', 'happyforms' ),
288
- __( 'France Metropolitan', 'happyforms' ),
289
- __( 'French Guiana', 'happyforms' ),
290
- __( 'French Polynesia', 'happyforms' ),
291
- __( 'French Southern Territories', 'happyforms' ),
292
- __( 'Gabon', 'happyforms' ),
293
- __( 'Gambia', 'happyforms' ),
294
- __( 'Georgia', 'happyforms' ),
295
- __( 'Germany', 'happyforms' ),
296
- __( 'Ghana', 'happyforms' ),
297
- __( 'Gibraltar', 'happyforms' ),
298
- __( 'Greece', 'happyforms' ),
299
- __( 'Greenland', 'happyforms' ),
300
- __( 'Grenada', 'happyforms' ),
301
- __( 'Guadeloupe', 'happyforms' ),
302
- __( 'Guam', 'happyforms' ),
303
- __( 'Guatemala', 'happyforms' ),
304
- __( 'Guinea', 'happyforms' ),
305
- __( 'Guinea-Bissau', 'happyforms' ),
306
- __( 'Guyana', 'happyforms' ),
307
- __( 'Haiti', 'happyforms' ),
308
- __( 'Heard and Mc Donald Islands', 'happyforms' ),
309
- __( 'Holy See (Vatican City State)', 'happyforms' ),
310
- __( 'Honduras', 'happyforms' ),
311
- __( 'Hong Kong', 'happyforms' ),
312
- __( 'Hungary', 'happyforms' ),
313
- __( 'Iceland', 'happyforms' ),
314
- __( 'India', 'happyforms' ),
315
- __( 'Indonesia', 'happyforms' ),
316
- __( 'Iran (Islamic Republic of)', 'happyforms' ),
317
- __( 'Iraq', 'happyforms' ),
318
- __( 'Ireland', 'happyforms' ),
319
- __( 'Israel', 'happyforms' ),
320
- __( 'Italy', 'happyforms' ),
321
- __( 'Jamaica', 'happyforms' ),
322
- __( 'Japan', 'happyforms' ),
323
- __( 'Jordan', 'happyforms' ),
324
- __( 'Kazakhstan', 'happyforms' ),
325
- __( 'Kenya', 'happyforms' ),
326
- __( 'Kiribati', 'happyforms' ),
327
  __( 'Korea, Democratic People\'s Republic of', 'happyforms' ),
328
- __( 'Korea, Republic of', 'happyforms' ),
329
- __( 'Kuwait', 'happyforms' ),
330
- __( 'Kyrgyzstan', 'happyforms' ),
331
  __( 'Lao, People\'s Democratic Republic', 'happyforms' ),
332
- __( 'Latvia', 'happyforms' ),
333
- __( 'Lebanon', 'happyforms' ),
334
- __( 'Lesotho', 'happyforms' ),
335
- __( 'Liberia', 'happyforms' ),
336
- __( 'Libyan Arab Jamahiriya', 'happyforms' ),
337
- __( 'Liechtenstein', 'happyforms' ),
338
- __( 'Lithuania', 'happyforms' ),
339
- __( 'Luxembourg', 'happyforms' ),
340
- __( 'Macau', 'happyforms' ),
341
- __( 'Macedonia, The Former Yugoslav Republic of', 'happyforms' ),
342
- __( 'Madagascar', 'happyforms' ),
343
- __( 'Malawi', 'happyforms' ),
344
- __( 'Malaysia', 'happyforms' ),
345
- __( 'Maldives', 'happyforms' ),
346
- __( 'Mali', 'happyforms' ),
347
- __( 'Malta', 'happyforms' ),
348
- __( 'Marshall Islands', 'happyforms' ),
349
- __( 'Martinique', 'happyforms' ),
350
- __( 'Mauritania', 'happyforms' ),
351
- __( 'Mauritius', 'happyforms' ),
352
- __( 'Mayotte', 'happyforms' ),
353
- __( 'Mexico', 'happyforms' ),
354
- __( 'Micronesia, Federated States of', 'happyforms' ),
355
- __( 'Moldova, Republic of', 'happyforms' ),
356
- __( 'Monaco', 'happyforms' ),
357
- __( 'Mongolia', 'happyforms' ),
358
- __( 'Montserrat', 'happyforms' ),
359
- __( 'Morocco', 'happyforms' ),
360
- __( 'Mozambique', 'happyforms' ),
361
- __( 'Myanmar', 'happyforms' ),
362
- __( 'Namibia', 'happyforms' ),
363
- __( 'Nauru', 'happyforms' ),
364
- __( 'Nepal', 'happyforms' ),
365
- __( 'Netherlands', 'happyforms' ),
366
- __( 'Netherlands Antilles', 'happyforms' ),
367
- __( 'New Caledonia', 'happyforms' ),
368
- __( 'New Zealand', 'happyforms' ),
369
- __( 'Nicaragua', 'happyforms' ),
370
- __( 'Niger', 'happyforms' ),
371
- __( 'Nigeria', 'happyforms' ),
372
- __( 'Niue', 'happyforms' ),
373
- __( 'Norfolk Island', 'happyforms' ),
374
- __( 'Northern Mariana Islands', 'happyforms' ),
375
- __( 'Norway', 'happyforms' ),
376
- __( 'Oman', 'happyforms' ),
377
- __( 'Pakistan', 'happyforms' ),
378
- __( 'Palau', 'happyforms' ),
379
- __( 'Panama', 'happyforms' ),
380
- __( 'Papua New Guinea', 'happyforms' ),
381
- __( 'Paraguay', 'happyforms' ),
382
- __( 'Peru', 'happyforms' ),
383
- __( 'Philippines', 'happyforms' ),
384
- __( 'Pitcairn', 'happyforms' ),
385
- __( 'Poland', 'happyforms' ),
386
- __( 'Portugal', 'happyforms' ),
387
- __( 'Puerto Rico', 'happyforms' ),
388
- __( 'Qatar', 'happyforms' ),
389
- __( 'Reunion', 'happyforms' ),
390
- __( 'Romania', 'happyforms' ),
391
- __( 'Russian Federation', 'happyforms' ),
392
- __( 'Rwanda', 'happyforms' ),
393
- __( 'Saint Kitts and Nevis', 'happyforms' ),
394
- __( 'Saint Lucia', 'happyforms' ),
395
- __( 'Saint Vincent and the Grenadines', 'happyforms' ),
396
- __( 'Samoa', 'happyforms' ),
397
- __( 'San Marino', 'happyforms' ),
398
- __( 'Sao Tome and Principe', 'happyforms' ),
399
- __( 'Saudi Arabia', 'happyforms' ),
400
- __( 'Senegal', 'happyforms' ),
401
- __( 'Seychelles', 'happyforms' ),
402
- __( 'Sierra Leone', 'happyforms' ),
403
- __( 'Singapore', 'happyforms' ),
404
- __( 'Slovakia (Slovak Republic)', 'happyforms' ),
405
- __( 'Slovenia', 'happyforms' ),
406
- __( 'Solomon Islands', 'happyforms' ),
407
- __( 'Somalia', 'happyforms' ),
408
- __( 'South Africa', 'happyforms' ),
409
- __( 'South Georgia and the South Sandwich Islands', 'happyforms' ),
410
- __( 'Spain', 'happyforms' ),
411
- __( 'Sri Lanka', 'happyforms' ),
412
- __( 'St. Helena', 'happyforms' ),
413
- __( 'St. Pierre and Miquelon', 'happyforms' ),
414
- __( 'Sudan', 'happyforms' ),
415
- __( 'Suriname', 'happyforms' ),
416
- __( 'Svalbard and Jan Mayen Islands', 'happyforms' ),
417
- __( 'Swaziland', 'happyforms' ),
418
- __( 'Sweden', 'happyforms' ),
419
- __( 'Switzerland', 'happyforms' ),
420
- __( 'Syrian Arab Republic', 'happyforms' ),
421
- __( 'Taiwan, Province of China', 'happyforms' ),
422
- __( 'Tajikistan', 'happyforms' ),
423
- __( 'Tanzania, United Republic of', 'happyforms' ),
424
- __( 'Thailand', 'happyforms' ),
425
- __( 'Togo', 'happyforms' ),
426
- __( 'Tokelau', 'happyforms' ),
427
- __( 'Tonga', 'happyforms' ),
428
- __( 'Trinidad and Tobago', 'happyforms' ),
429
- __( 'Tunisia', 'happyforms' ),
430
- __( 'Turkey', 'happyforms' ),
431
- __( 'Turkmenistan', 'happyforms' ),
432
- __( 'Turks and Caicos Islands', 'happyforms' ),
433
- __( 'Tuvalu', 'happyforms' ),
434
- __( 'Uganda', 'happyforms' ),
435
- __( 'Ukraine', 'happyforms' ),
436
- __( 'United Arab Emirates', 'happyforms' ),
437
- __( 'United Kingdom', 'happyforms' ),
438
- __( 'United States', 'happyforms' ),
439
- __( 'United States Minor Outlying Islands', 'happyforms' ),
440
- __( 'Uruguay', 'happyforms' ),
441
- __( 'Uzbekistan', 'happyforms' ),
442
- __( 'Vanuatu', 'happyforms' ),
443
- __( 'Venezuela', 'happyforms' ),
444
- __( 'Vietnam', 'happyforms' ),
445
- __( 'Virgin Islands (British)', 'happyforms' ),
446
- __( 'Virgin Islands (U.S.)', 'happyforms' ),
447
- __( 'Wallis and Futuna Islands', 'happyforms' ),
448
- __( 'Western Sahara', 'happyforms' ),
449
- __( 'Yemen', 'happyforms' ),
450
- __( 'Yugoslavia', 'happyforms' ),
451
- __( 'Zambia', 'happyforms' ),
452
- __( 'Zimbabwe', 'happyforms' ),
453
  );
454
  }
455
 
@@ -640,7 +640,7 @@ endif;
640
  if ( ! function_exists( 'happyforms_get_message_title' ) ):
641
 
642
  function happyforms_get_message_title( $message_id ) {
643
- $title = sprintf( __( 'Response #%s', 'happyforms' ), $message_id );
644
 
645
  return $title;
646
  }
@@ -687,146 +687,154 @@ function happyforms_get_part_customize_template_path( $template, $type ) {
687
 
688
  endif;
689
 
 
 
 
 
 
 
 
 
690
  if ( ! function_exists( 'happyforms_get_php_locales' ) ):
691
 
692
  function happyforms_get_php_locales( $code = '' ) {
693
  $locales = array(
694
- 'af' => __( 'Afrikaans', 'happyforms' ),
695
- 'ak' => __( 'Akan', 'happyforms' ),
696
- 'sq' => __( 'Albanian', 'happyforms' ),
697
- 'arq' => __( 'Algerian Arabic', 'happyforms' ),
698
- 'am' => __( 'Amharic', 'happyforms' ),
699
- 'ar' => __( 'Arabic', 'happyforms' ),
700
- 'hy' => __( 'Armenian', 'happyforms' ),
701
- 'rup' => __( 'Aromanian', 'happyforms' ),
702
- 'frp' => __( 'Arpitan', 'happyforms' ),
703
- 'as' => __( 'Assamese', 'happyforms' ),
704
- 'az' => __( 'Azerbaijani', 'happyforms' ),
705
- 'bcc' => __( 'Balochi Southern', 'happyforms' ),
706
- 'ba' => __( 'Bashkir', 'happyforms' ),
707
- 'eu' => __( 'Basque', 'happyforms' ),
708
- 'bel' => __( 'Belarusian', 'happyforms' ),
709
- 'bn' => __( 'Bengali', 'happyforms' ),
710
- 'bs' => __( 'Bosnian', 'happyforms' ),
711
- 'br' => __( 'Breton', 'happyforms' ),
712
- 'bg' => __( 'Bulgarian', 'happyforms' ),
713
- 'ca' => __( 'Catalan', 'happyforms' ),
714
- 'ceb' => __( 'Cebuano', 'happyforms' ),
715
- 'zh' => __( 'Chinese', 'happyforms' ),
716
- 'co' => __( 'Corsican', 'happyforms' ),
717
- 'hr' => __( 'Croatian', 'happyforms' ),
718
- 'cs' => __( 'Czech', 'happyforms' ),
719
- 'da' => __( 'Danish', 'happyforms' ),
720
- 'dv' => __( 'Dhivehi', 'happyforms' ),
721
- 'nl' => __( 'Dutch', 'happyforms' ),
722
- 'dzo' => __( 'Dzongkha', 'happyforms' ),
723
- 'en' => __( 'English', 'happyforms' ),
724
- 'eo' => __( 'Esperanto', 'happyforms' ),
725
- 'et' => __( 'Estonian', 'happyforms' ),
726
- 'fo' => __( 'Faroese', 'happyforms' ),
727
- 'fi' => __( 'Finnish', 'happyforms' ),
728
- 'fr' => __( 'French', 'happyforms' ),
729
- 'fy' => __( 'Frisian', 'happyforms' ),
730
- 'fur' => __( 'Friulian', 'happyforms' ),
731
- 'fuc' => __( 'Fulah', 'happyforms' ),
732
- 'gl' => __( 'Galician', 'happyforms' ),
733
- 'ka' => __( 'Georgian', 'happyforms' ),
734
- 'de' => __( 'German', 'happyforms' ),
735
- 'el' => __( 'Greek', 'happyforms' ),
736
- 'kal' => __( 'Greenlandic', 'happyforms' ),
737
- 'gn' => __( 'Guaraní', 'happyforms' ),
738
- 'gu' => __( 'Gujarati', 'happyforms' ),
739
- 'haw' => __( 'Hawaiian', 'happyforms' ),
740
- 'haz' => __( 'Hazaragi', 'happyforms' ),
741
- 'he' => __( 'Hebrew', 'happyforms' ),
742
- 'hi' => __( 'Hindi', 'happyforms' ),
743
- 'hu' => __( 'Hungarian', 'happyforms' ),
744
- 'is' => __( 'Icelandic', 'happyforms' ),
745
- 'ido' => __( 'Ido', 'happyforms' ),
746
- 'id' => __( 'Indonesian', 'happyforms' ),
747
- 'ga' => __( 'Irish', 'happyforms' ),
748
- 'it' => __( 'Italian', 'happyforms' ),
749
- 'ja' => __( 'Japanese', 'happyforms' ),
750
- 'jv' => __( 'Javanese', 'happyforms' ),
751
- 'kab' => __( 'Kabyle', 'happyforms' ),
752
- 'kn' => __( 'Kannada', 'happyforms' ),
753
- 'kk' => __( 'Kazakh', 'happyforms' ),
754
- 'km' => __( 'Khmer', 'happyforms' ),
755
- 'kin' => __( 'Kinyarwanda', 'happyforms' ),
756
- 'ky' => __( 'Kirghiz', 'happyforms' ),
757
- 'ko' => __( 'Korean', 'happyforms' ),
758
- 'ckb' => __( 'Kurdish', 'happyforms' ),
759
- 'lo' => __( 'Lao', 'happyforms' ),
760
- 'lv' => __( 'Latvian', 'happyforms' ),
761
- 'li' => __( 'Limburgish', 'happyforms' ),
762
- 'lin' => __( 'Lingala', 'happyforms' ),
763
- 'lt' => __( 'Lithuanian', 'happyforms' ),
764
- 'lb' => __( 'Luxembourgish', 'happyforms' ),
765
- 'mk' => __( 'Macedonian', 'happyforms' ),
766
- 'mg' => __( 'Malagasy', 'happyforms' ),
767
- 'ms' => __( 'Malay', 'happyforms' ),
768
- 'ml' => __( 'Malayalam', 'happyforms' ),
769
- 'mri' => __( 'Maori', 'happyforms' ),
770
- 'mr' => __( 'Marathi', 'happyforms' ),
771
- 'xmf' => __( 'Mingrelian', 'happyforms' ),
772
- 'mn' => __( 'Mongolian', 'happyforms' ),
773
- 'me' => __( 'Montenegrin', 'happyforms' ),
774
- 'ary' => __( 'Moroccan Arabic', 'happyforms' ),
775
- 'mya' => __( 'Myanmar (Burmese)', 'happyforms' ),
776
- 'ne' => __( 'Nepali', 'happyforms' ),
777
- 'nb' => __( 'Norwegian (Bokmål)', 'happyforms' ),
778
- 'nn' => __( 'Norwegian (Nynorsk)', 'happyforms' ),
779
- 'oci' => __( 'Occitan', 'happyforms' ),
780
- 'ory' => __( 'Oriya', 'happyforms' ),
781
- 'os' => __( 'Ossetic', 'happyforms' ),
782
- 'ps' => __( 'Pashto', 'happyforms' ),
783
- 'fa' => __( 'Persian', 'happyforms' ),
784
- 'pl' => __( 'Polish', 'happyforms' ),
785
- 'pt' => __( 'Portuguese', 'happyforms' ),
786
- 'pa' => __( 'Punjabi', 'happyforms' ),
787
- 'rhg' => __( 'Rohingya', 'happyforms' ),
788
- 'ro' => __( 'Romanian', 'happyforms' ),
789
- 'roh' => __( 'Romansh Vallader', 'happyforms' ),
790
- 'ru' => __( 'Russian', 'happyforms' ),
791
- 'rue' => __( 'Rusyn', 'happyforms' ),
792
- 'sah' => __( 'Sakha', 'happyforms' ),
793
- 'sa' => __( 'Sanskrit', 'happyforms' ),
794
- 'srd' => __( 'Sardinian', 'happyforms' ),
795
- 'gd' => __( 'Scottish Gaelic', 'happyforms' ),
796
- 'sr' => __( 'Serbian', 'happyforms' ),
797
- 'szl' => __( 'Silesian', 'happyforms' ),
798
- 'snd' => __( 'Sindhi', 'happyforms' ),
799
- 'si' => __( 'Sinhala', 'happyforms' ),
800
- 'sk' => __( 'Slovak', 'happyforms' ),
801
- 'sl' => __( 'Slovenian', 'happyforms' ),
802
- 'so' => __( 'Somali', 'happyforms' ),
803
- 'azb' => __( 'South Azerbaijani', 'happyforms' ),
804
- 'es' => __( 'Spanish', 'happyforms' ),
805
- 'su' => __( 'Sundanese', 'happyforms' ),
806
- 'sw' => __( 'Swahili', 'happyforms' ),
807
- 'sv' => __( 'Swedish', 'happyforms' ),
808
- 'gsw' => __( 'Swiss German', 'happyforms' ),
809
- 'tl' => __( 'Tagalog', 'happyforms' ),
810
- 'tah' => __( 'Tahitian', 'happyforms' ),
811
- 'tg' => __( 'Tajik', 'happyforms' ),
812
- 'tzm' => __( 'Tamazight', 'happyforms' ),
813
- 'ta' => __( 'Tamil', 'happyforms' ),
814
- 'tt' => __( 'Tatar', 'happyforms' ),
815
- 'te' => __( 'Telugu', 'happyforms' ),
816
- 'th' => __( 'Thai', 'happyforms' ),
817
- 'bo' => __( 'Tibetan', 'happyforms' ),
818
- 'tir' => __( 'Tigrinya', 'happyforms' ),
819
- 'tr' => __( 'Turkish', 'happyforms' ),
820
- 'tuk' => __( 'Turkmen', 'happyforms' ),
821
- 'twd' => __( 'Tweants', 'happyforms' ),
822
- 'ug' => __( 'Uighur', 'happyforms' ),
823
- 'uk' => __( 'Ukrainian', 'happyforms' ),
824
- 'ur' => __( 'Urdu', 'happyforms' ),
825
- 'uz' => __( 'Uzbek', 'happyforms' ),
826
- 'vi' => __( 'Vietnamese', 'happyforms' ),
827
- 'wa' => __( 'Walloon', 'happyforms' ),
828
- 'cy' => __( 'Welsh', 'happyforms' ),
829
- 'yor' => __( 'Yoruba', 'happyforms' ),
830
  );
831
 
832
  if ( empty( $code ) ) {
194
  function happyforms_admin_footer() {
195
  ?>
196
  <span id="footer-thankyou">
197
+ <?php _e( 'Thank you for creating with', HAPPYFORMS_TEXT_DOMAIN ); ?> <a href="https://happyforms.me/" target="_blank">HappyForms</a>.
198
  </span>
199
  <?php
200
  }
211
  */
212
  function happyforms_get_countries() {
213
  return array(
214
+ __( 'Afghanistan', HAPPYFORMS_TEXT_DOMAIN ),
215
+ __( 'Albania', HAPPYFORMS_TEXT_DOMAIN ),
216
+ __( 'Algeria', HAPPYFORMS_TEXT_DOMAIN ),
217
+ __( 'American Samoa', HAPPYFORMS_TEXT_DOMAIN ),
218
+ __( 'Andorra', HAPPYFORMS_TEXT_DOMAIN ),
219
+ __( 'Angola', HAPPYFORMS_TEXT_DOMAIN ),
220
+ __( 'Anguilla', HAPPYFORMS_TEXT_DOMAIN ),
221
+ __( 'Antarctica', HAPPYFORMS_TEXT_DOMAIN ),
222
+ __( 'Antigua and Barbuda', HAPPYFORMS_TEXT_DOMAIN ),
223
+ __( 'Argentina', HAPPYFORMS_TEXT_DOMAIN ),
224
+ __( 'Armenia', HAPPYFORMS_TEXT_DOMAIN ),
225
+ __( 'Aruba', HAPPYFORMS_TEXT_DOMAIN ),
226
+ __( 'Australia', HAPPYFORMS_TEXT_DOMAIN ),
227
+ __( 'Austria', HAPPYFORMS_TEXT_DOMAIN ),
228
+ __( 'Azerbaijan', HAPPYFORMS_TEXT_DOMAIN ),
229
+ __( 'Bahamas', HAPPYFORMS_TEXT_DOMAIN ),
230
+ __( 'Bahrain', HAPPYFORMS_TEXT_DOMAIN ),
231
+ __( 'Bangladesh', HAPPYFORMS_TEXT_DOMAIN ),
232
+ __( 'Barbados', HAPPYFORMS_TEXT_DOMAIN ),
233
+ __( 'Belarus', HAPPYFORMS_TEXT_DOMAIN ),
234
+ __( 'Belgium', HAPPYFORMS_TEXT_DOMAIN ),
235
+ __( 'Belize', HAPPYFORMS_TEXT_DOMAIN ),
236
+ __( 'Benin', HAPPYFORMS_TEXT_DOMAIN ),
237
+ __( 'Bermuda', HAPPYFORMS_TEXT_DOMAIN ),
238
+ __( 'Bhutan', HAPPYFORMS_TEXT_DOMAIN ),
239
+ __( 'Bolivia', HAPPYFORMS_TEXT_DOMAIN ),
240
+ __( 'Bosnia and Herzegowina', HAPPYFORMS_TEXT_DOMAIN ),
241
+ __( 'Botswana', HAPPYFORMS_TEXT_DOMAIN ),
242
+ __( 'Bouvet Island', HAPPYFORMS_TEXT_DOMAIN ),
243
+ __( 'Brazil', HAPPYFORMS_TEXT_DOMAIN ),
244
+ __( 'British Indian Ocean Territory', HAPPYFORMS_TEXT_DOMAIN ),
245
+ __( 'Brunei Darussalam', HAPPYFORMS_TEXT_DOMAIN ),
246
+ __( 'Bulgaria', HAPPYFORMS_TEXT_DOMAIN ),
247
+ __( 'Burkina Faso', HAPPYFORMS_TEXT_DOMAIN ),
248
+ __( 'Burundi', HAPPYFORMS_TEXT_DOMAIN ),
249
+ __( 'Cambodia', HAPPYFORMS_TEXT_DOMAIN ),
250
+ __( 'Cameroon', HAPPYFORMS_TEXT_DOMAIN ),
251
+ __( 'Canada', HAPPYFORMS_TEXT_DOMAIN ),
252
+ __( 'Cape Verde', HAPPYFORMS_TEXT_DOMAIN ),
253
+ __( 'Cayman Islands', HAPPYFORMS_TEXT_DOMAIN ),
254
+ __( 'Central African Republic', HAPPYFORMS_TEXT_DOMAIN ),
255
+ __( 'Chad', HAPPYFORMS_TEXT_DOMAIN ),
256
+ __( 'Chile', HAPPYFORMS_TEXT_DOMAIN ),
257
+ __( 'China', HAPPYFORMS_TEXT_DOMAIN ),
258
+ __( 'Christmas Island', HAPPYFORMS_TEXT_DOMAIN ),
259
+ __( 'Cocos (Keeling) Islands', HAPPYFORMS_TEXT_DOMAIN ),
260
+ __( 'Colombia', HAPPYFORMS_TEXT_DOMAIN ),
261
+ __( 'Comoros', HAPPYFORMS_TEXT_DOMAIN ),
262
+ __( 'Congo', HAPPYFORMS_TEXT_DOMAIN ),
263
+ __( 'Congo, the Democratic Republic of the', HAPPYFORMS_TEXT_DOMAIN ),
264
+ __( 'Cook Islands', HAPPYFORMS_TEXT_DOMAIN ),
265
+ __( 'Costa Rica', HAPPYFORMS_TEXT_DOMAIN ),
266
+ __( 'Ivory Coast', HAPPYFORMS_TEXT_DOMAIN ),
267
+ __( 'Croatia (Hrvatska)', HAPPYFORMS_TEXT_DOMAIN ),
268
+ __( 'Cuba', HAPPYFORMS_TEXT_DOMAIN ),
269
+ __( 'Cyprus', HAPPYFORMS_TEXT_DOMAIN ),
270
+ __( 'Czech Republic', HAPPYFORMS_TEXT_DOMAIN ),
271
+ __( 'Denmark', HAPPYFORMS_TEXT_DOMAIN ),
272
+ __( 'Djibouti', HAPPYFORMS_TEXT_DOMAIN ),
273
+ __( 'Dominica', HAPPYFORMS_TEXT_DOMAIN ),
274
+ __( 'Dominican Republic', HAPPYFORMS_TEXT_DOMAIN ),
275
+ __( 'East Timor', HAPPYFORMS_TEXT_DOMAIN ),
276
+ __( 'Ecuador', HAPPYFORMS_TEXT_DOMAIN ),
277
+ __( 'Egypt', HAPPYFORMS_TEXT_DOMAIN ),
278
+ __( 'El Salvador', HAPPYFORMS_TEXT_DOMAIN ),
279
+ __( 'Equatorial Guinea', HAPPYFORMS_TEXT_DOMAIN ),
280
+ __( 'Eritrea', HAPPYFORMS_TEXT_DOMAIN ),
281
+ __( 'Estonia', HAPPYFORMS_TEXT_DOMAIN ),
282
+ __( 'Ethiopia', HAPPYFORMS_TEXT_DOMAIN ),
283
+ __( 'Falkland Islands (Malvinas)', HAPPYFORMS_TEXT_DOMAIN ),
284
+ __( 'Faroe Islands', HAPPYFORMS_TEXT_DOMAIN ),
285
+ __( 'Fiji', HAPPYFORMS_TEXT_DOMAIN ),
286
+ __( 'Finland', HAPPYFORMS_TEXT_DOMAIN ),
287
+ __( 'France', HAPPYFORMS_TEXT_DOMAIN ),
288
+ __( 'France Metropolitan', HAPPYFORMS_TEXT_DOMAIN ),
289
+ __( 'French Guiana', HAPPYFORMS_TEXT_DOMAIN ),
290
+ __( 'French Polynesia', HAPPYFORMS_TEXT_DOMAIN ),
291
+ __( 'French Southern Territories', HAPPYFORMS_TEXT_DOMAIN ),
292
+ __( 'Gabon', HAPPYFORMS_TEXT_DOMAIN ),
293
+ __( 'Gambia', HAPPYFORMS_TEXT_DOMAIN ),
294
+ __( 'Georgia', HAPPYFORMS_TEXT_DOMAIN ),
295
+ __( 'Germany', HAPPYFORMS_TEXT_DOMAIN ),
296
+ __( 'Ghana', HAPPYFORMS_TEXT_DOMAIN ),
297
+ __( 'Gibraltar', HAPPYFORMS_TEXT_DOMAIN ),
298
+ __( 'Greece', HAPPYFORMS_TEXT_DOMAIN ),
299
+ __( 'Greenland', HAPPYFORMS_TEXT_DOMAIN ),
300
+ __( 'Grenada', HAPPYFORMS_TEXT_DOMAIN ),
301
+ __( 'Guadeloupe', HAPPYFORMS_TEXT_DOMAIN ),
302
+ __( 'Guam', HAPPYFORMS_TEXT_DOMAIN ),
303
+ __( 'Guatemala', HAPPYFORMS_TEXT_DOMAIN ),
304
+ __( 'Guinea', HAPPYFORMS_TEXT_DOMAIN ),
305
+ __( 'Guinea-Bissau', HAPPYFORMS_TEXT_DOMAIN ),
306
+ __( 'Guyana', HAPPYFORMS_TEXT_DOMAIN ),
307
+ __( 'Haiti', HAPPYFORMS_TEXT_DOMAIN ),
308
+ __( 'Heard and Mc Donald Islands', HAPPYFORMS_TEXT_DOMAIN ),
309
+ __( 'Holy See (Vatican City State)', HAPPYFORMS_TEXT_DOMAIN ),
310
+ __( 'Honduras', HAPPYFORMS_TEXT_DOMAIN ),
311
+ __( 'Hong Kong', HAPPYFORMS_TEXT_DOMAIN ),
312
+ __( 'Hungary', HAPPYFORMS_TEXT_DOMAIN ),
313
+ __( 'Iceland', HAPPYFORMS_TEXT_DOMAIN ),
314
+ __( 'India', HAPPYFORMS_TEXT_DOMAIN ),
315
+ __( 'Indonesia', HAPPYFORMS_TEXT_DOMAIN ),
316
+ __( 'Iran (Islamic Republic of)', HAPPYFORMS_TEXT_DOMAIN ),
317
+ __( 'Iraq', HAPPYFORMS_TEXT_DOMAIN ),
318
+ __( 'Ireland', HAPPYFORMS_TEXT_DOMAIN ),
319
+ __( 'Israel', HAPPYFORMS_TEXT_DOMAIN ),
320
+ __( 'Italy', HAPPYFORMS_TEXT_DOMAIN ),
321
+ __( 'Jamaica', HAPPYFORMS_TEXT_DOMAIN ),
322
+ __( 'Japan', HAPPYFORMS_TEXT_DOMAIN ),
323
+ __( 'Jordan', 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' ),
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 ),
335
+ __( 'Liberia', HAPPYFORMS_TEXT_DOMAIN ),
336
+ __( 'Libyan Arab Jamahiriya', HAPPYFORMS_TEXT_DOMAIN ),
337
+ __( 'Liechtenstein', HAPPYFORMS_TEXT_DOMAIN ),
338
+ __( 'Lithuania', HAPPYFORMS_TEXT_DOMAIN ),
339
+ __( 'Luxembourg', HAPPYFORMS_TEXT_DOMAIN ),
340
+ __( 'Macau', HAPPYFORMS_TEXT_DOMAIN ),
341
+ __( 'Macedonia, The Former Yugoslav Republic of', HAPPYFORMS_TEXT_DOMAIN ),
342
+ __( 'Madagascar', HAPPYFORMS_TEXT_DOMAIN ),
343
+ __( 'Malawi', HAPPYFORMS_TEXT_DOMAIN ),
344
+ __( 'Malaysia', HAPPYFORMS_TEXT_DOMAIN ),
345
+ __( 'Maldives', HAPPYFORMS_TEXT_DOMAIN ),
346
+ __( 'Mali', HAPPYFORMS_TEXT_DOMAIN ),
347
+ __( 'Malta', HAPPYFORMS_TEXT_DOMAIN ),
348
+ __( 'Marshall Islands', HAPPYFORMS_TEXT_DOMAIN ),
349
+ __( 'Martinique', HAPPYFORMS_TEXT_DOMAIN ),
350
+ __( 'Mauritania', HAPPYFORMS_TEXT_DOMAIN ),
351
+ __( 'Mauritius', HAPPYFORMS_TEXT_DOMAIN ),
352
+ __( 'Mayotte', HAPPYFORMS_TEXT_DOMAIN ),
353
+ __( 'Mexico', HAPPYFORMS_TEXT_DOMAIN ),
354
+ __( 'Micronesia, Federated States of', HAPPYFORMS_TEXT_DOMAIN ),
355
+ __( 'Moldova, Republic of', HAPPYFORMS_TEXT_DOMAIN ),
356
+ __( 'Monaco', HAPPYFORMS_TEXT_DOMAIN ),
357
+ __( 'Mongolia', HAPPYFORMS_TEXT_DOMAIN ),
358
+ __( 'Montserrat', HAPPYFORMS_TEXT_DOMAIN ),
359
+ __( 'Morocco', HAPPYFORMS_TEXT_DOMAIN ),
360
+ __( 'Mozambique', HAPPYFORMS_TEXT_DOMAIN ),
361
+ __( 'Myanmar', HAPPYFORMS_TEXT_DOMAIN ),
362
+ __( 'Namibia', HAPPYFORMS_TEXT_DOMAIN ),
363
+ __( 'Nauru', HAPPYFORMS_TEXT_DOMAIN ),
364
+ __( 'Nepal', HAPPYFORMS_TEXT_DOMAIN ),
365
+ __( 'Netherlands', HAPPYFORMS_TEXT_DOMAIN ),
366
+ __( 'Netherlands Antilles', HAPPYFORMS_TEXT_DOMAIN ),
367
+ __( 'New Caledonia', HAPPYFORMS_TEXT_DOMAIN ),
368
+ __( 'New Zealand', HAPPYFORMS_TEXT_DOMAIN ),
369
+ __( 'Nicaragua', HAPPYFORMS_TEXT_DOMAIN ),
370
+ __( 'Niger', HAPPYFORMS_TEXT_DOMAIN ),
371
+ __( 'Nigeria', HAPPYFORMS_TEXT_DOMAIN ),
372
+ __( 'Niue', HAPPYFORMS_TEXT_DOMAIN ),
373
+ __( 'Norfolk Island', HAPPYFORMS_TEXT_DOMAIN ),
374
+ __( 'Northern Mariana Islands', HAPPYFORMS_TEXT_DOMAIN ),
375
+ __( 'Norway', HAPPYFORMS_TEXT_DOMAIN ),
376
+ __( 'Oman', HAPPYFORMS_TEXT_DOMAIN ),
377
+ __( 'Pakistan', HAPPYFORMS_TEXT_DOMAIN ),
378
+ __( 'Palau', HAPPYFORMS_TEXT_DOMAIN ),
379
+ __( 'Panama', HAPPYFORMS_TEXT_DOMAIN ),
380
+ __( 'Papua New Guinea', HAPPYFORMS_TEXT_DOMAIN ),
381
+ __( 'Paraguay', HAPPYFORMS_TEXT_DOMAIN ),
382
+ __( 'Peru', HAPPYFORMS_TEXT_DOMAIN ),
383
+ __( 'Philippines', HAPPYFORMS_TEXT_DOMAIN ),
384
+ __( 'Pitcairn', HAPPYFORMS_TEXT_DOMAIN ),
385
+ __( 'Poland', HAPPYFORMS_TEXT_DOMAIN ),
386
+ __( 'Portugal', HAPPYFORMS_TEXT_DOMAIN ),
387
+ __( 'Puerto Rico', HAPPYFORMS_TEXT_DOMAIN ),
388
+ __( 'Qatar', HAPPYFORMS_TEXT_DOMAIN ),
389
+ __( 'Reunion', HAPPYFORMS_TEXT_DOMAIN ),
390
+ __( 'Romania', HAPPYFORMS_TEXT_DOMAIN ),
391
+ __( 'Russian Federation', HAPPYFORMS_TEXT_DOMAIN ),
392
+ __( 'Rwanda', HAPPYFORMS_TEXT_DOMAIN ),
393
+ __( 'Saint Kitts and Nevis', HAPPYFORMS_TEXT_DOMAIN ),
394
+ __( 'Saint Lucia', HAPPYFORMS_TEXT_DOMAIN ),
395
+ __( 'Saint Vincent and the Grenadines', HAPPYFORMS_TEXT_DOMAIN ),
396
+ __( 'Samoa', HAPPYFORMS_TEXT_DOMAIN ),
397
+ __( 'San Marino', HAPPYFORMS_TEXT_DOMAIN ),
398
+ __( 'Sao Tome and Principe', HAPPYFORMS_TEXT_DOMAIN ),
399
+ __( 'Saudi Arabia', HAPPYFORMS_TEXT_DOMAIN ),
400
+ __( 'Senegal', HAPPYFORMS_TEXT_DOMAIN ),
401
+ __( 'Seychelles', HAPPYFORMS_TEXT_DOMAIN ),
402
+ __( 'Sierra Leone', HAPPYFORMS_TEXT_DOMAIN ),
403
+ __( 'Singapore', HAPPYFORMS_TEXT_DOMAIN ),
404
+ __( 'Slovakia (Slovak Republic)', HAPPYFORMS_TEXT_DOMAIN ),
405
+ __( 'Slovenia', HAPPYFORMS_TEXT_DOMAIN ),
406
+ __( 'Solomon Islands', HAPPYFORMS_TEXT_DOMAIN ),
407
+ __( 'Somalia', HAPPYFORMS_TEXT_DOMAIN ),
408
+ __( 'South Africa', HAPPYFORMS_TEXT_DOMAIN ),
409
+ __( 'South Georgia and the South Sandwich Islands', HAPPYFORMS_TEXT_DOMAIN ),
410
+ __( 'Spain', HAPPYFORMS_TEXT_DOMAIN ),
411
+ __( 'Sri Lanka', HAPPYFORMS_TEXT_DOMAIN ),
412
+ __( 'St. Helena', HAPPYFORMS_TEXT_DOMAIN ),
413
+ __( 'St. Pierre and Miquelon', HAPPYFORMS_TEXT_DOMAIN ),
414
+ __( 'Sudan', HAPPYFORMS_TEXT_DOMAIN ),
415
+ __( 'Suriname', HAPPYFORMS_TEXT_DOMAIN ),
416
+ __( 'Svalbard and Jan Mayen Islands', HAPPYFORMS_TEXT_DOMAIN ),
417
+ __( 'Swaziland', HAPPYFORMS_TEXT_DOMAIN ),
418
+ __( 'Sweden', HAPPYFORMS_TEXT_DOMAIN ),
419
+ __( 'Switzerland', HAPPYFORMS_TEXT_DOMAIN ),
420
+ __( 'Syrian Arab Republic', HAPPYFORMS_TEXT_DOMAIN ),
421
+ __( 'Taiwan, Province of China', HAPPYFORMS_TEXT_DOMAIN ),
422
+ __( 'Tajikistan', HAPPYFORMS_TEXT_DOMAIN ),
423
+ __( 'Tanzania, United Republic of', HAPPYFORMS_TEXT_DOMAIN ),
424
+ __( 'Thailand', HAPPYFORMS_TEXT_DOMAIN ),
425
+ __( 'Togo', HAPPYFORMS_TEXT_DOMAIN ),
426
+ __( 'Tokelau', HAPPYFORMS_TEXT_DOMAIN ),
427
+ __( 'Tonga', HAPPYFORMS_TEXT_DOMAIN ),
428
+ __( 'Trinidad and Tobago', HAPPYFORMS_TEXT_DOMAIN ),
429
+ __( 'Tunisia', HAPPYFORMS_TEXT_DOMAIN ),
430
+ __( 'Turkey', HAPPYFORMS_TEXT_DOMAIN ),
431
+ __( 'Turkmenistan', HAPPYFORMS_TEXT_DOMAIN ),
432
+ __( 'Turks and Caicos Islands', HAPPYFORMS_TEXT_DOMAIN ),
433
+ __( 'Tuvalu', HAPPYFORMS_TEXT_DOMAIN ),
434
+ __( 'Uganda', HAPPYFORMS_TEXT_DOMAIN ),
435
+ __( 'Ukraine', HAPPYFORMS_TEXT_DOMAIN ),
436
+ __( 'United Arab Emirates', HAPPYFORMS_TEXT_DOMAIN ),
437
+ __( 'United Kingdom', HAPPYFORMS_TEXT_DOMAIN ),
438
+ __( 'United States', HAPPYFORMS_TEXT_DOMAIN ),
439
+ __( 'United States Minor Outlying Islands', HAPPYFORMS_TEXT_DOMAIN ),
440
+ __( 'Uruguay', HAPPYFORMS_TEXT_DOMAIN ),
441
+ __( 'Uzbekistan', HAPPYFORMS_TEXT_DOMAIN ),
442
+ __( 'Vanuatu', HAPPYFORMS_TEXT_DOMAIN ),
443
+ __( 'Venezuela', HAPPYFORMS_TEXT_DOMAIN ),
444
+ __( 'Vietnam', HAPPYFORMS_TEXT_DOMAIN ),
445
+ __( 'Virgin Islands (British)', HAPPYFORMS_TEXT_DOMAIN ),
446
+ __( 'Virgin Islands (U.S.)', HAPPYFORMS_TEXT_DOMAIN ),
447
+ __( 'Wallis and Futuna Islands', HAPPYFORMS_TEXT_DOMAIN ),
448
+ __( 'Western Sahara', HAPPYFORMS_TEXT_DOMAIN ),
449
+ __( 'Yemen', HAPPYFORMS_TEXT_DOMAIN ),
450
+ __( 'Yugoslavia', HAPPYFORMS_TEXT_DOMAIN ),
451
+ __( 'Zambia', HAPPYFORMS_TEXT_DOMAIN ),
452
+ __( 'Zimbabwe', HAPPYFORMS_TEXT_DOMAIN ),
453
  );
454
  }
455
 
640
  if ( ! function_exists( 'happyforms_get_message_title' ) ):
641
 
642
  function happyforms_get_message_title( $message_id ) {
643
+ $title = sprintf( __( 'Response #%s', HAPPYFORMS_TEXT_DOMAIN ), $message_id );
644
 
645
  return $title;
646
  }
687
 
688
  endif;
689
 
690
+ if ( ! function_exists( 'happyforms_get_part_frontend_template_path' ) ):
691
+
692
+ function happyforms_get_part_frontend_template_path( $template, $type ) {
693
+ return apply_filters( "happyforms_part_frontend_template_path_{$type}", $template );
694
+ }
695
+
696
+ endif;
697
+
698
  if ( ! function_exists( 'happyforms_get_php_locales' ) ):
699
 
700
  function happyforms_get_php_locales( $code = '' ) {
701
  $locales = array(
702
+ 'af' => __( 'Afrikaans', HAPPYFORMS_TEXT_DOMAIN ),
703
+ 'ak' => __( 'Akan', HAPPYFORMS_TEXT_DOMAIN ),
704
+ 'sq' => __( 'Albanian', HAPPYFORMS_TEXT_DOMAIN ),
705
+ 'arq' => __( 'Algerian Arabic', HAPPYFORMS_TEXT_DOMAIN ),
706
+ 'am' => __( 'Amharic', HAPPYFORMS_TEXT_DOMAIN ),
707
+ 'ar' => __( 'Arabic', HAPPYFORMS_TEXT_DOMAIN ),
708
+ 'hy' => __( 'Armenian', HAPPYFORMS_TEXT_DOMAIN ),
709
+ 'rup' => __( 'Aromanian', HAPPYFORMS_TEXT_DOMAIN ),
710
+ 'frp' => __( 'Arpitan', HAPPYFORMS_TEXT_DOMAIN ),
711
+ 'as' => __( 'Assamese', HAPPYFORMS_TEXT_DOMAIN ),
712
+ 'az' => __( 'Azerbaijani', HAPPYFORMS_TEXT_DOMAIN ),
713
+ 'bcc' => __( 'Balochi Southern', HAPPYFORMS_TEXT_DOMAIN ),
714
+ 'ba' => __( 'Bashkir', HAPPYFORMS_TEXT_DOMAIN ),
715
+ 'eu' => __( 'Basque', HAPPYFORMS_TEXT_DOMAIN ),
716
+ 'bel' => __( 'Belarusian', HAPPYFORMS_TEXT_DOMAIN ),
717
+ 'bn' => __( 'Bengali', HAPPYFORMS_TEXT_DOMAIN ),
718
+ 'bs' => __( 'Bosnian', HAPPYFORMS_TEXT_DOMAIN ),
719
+ 'br' => __( 'Breton', HAPPYFORMS_TEXT_DOMAIN ),
720
+ 'bg' => __( 'Bulgarian', HAPPYFORMS_TEXT_DOMAIN ),
721
+ 'ca' => __( 'Catalan', HAPPYFORMS_TEXT_DOMAIN ),
722
+ 'ceb' => __( 'Cebuano', HAPPYFORMS_TEXT_DOMAIN ),
723
+ 'zh' => __( 'Chinese', HAPPYFORMS_TEXT_DOMAIN ),
724
+ 'co' => __( 'Corsican', HAPPYFORMS_TEXT_DOMAIN ),
725
+ 'hr' => __( 'Croatian', HAPPYFORMS_TEXT_DOMAIN ),
726
+ 'cs' => __( 'Czech', HAPPYFORMS_TEXT_DOMAIN ),
727
+ 'da' => __( 'Danish', HAPPYFORMS_TEXT_DOMAIN ),
728
+ 'dv' => __( 'Dhivehi', HAPPYFORMS_TEXT_DOMAIN ),
729
+ 'nl' => __( 'Dutch', HAPPYFORMS_TEXT_DOMAIN ),
730
+ 'dzo' => __( 'Dzongkha', HAPPYFORMS_TEXT_DOMAIN ),
731
+ 'en' => __( 'English', HAPPYFORMS_TEXT_DOMAIN ),
732
+ 'eo' => __( 'Esperanto', HAPPYFORMS_TEXT_DOMAIN ),
733
+ 'et' => __( 'Estonian', HAPPYFORMS_TEXT_DOMAIN ),
734
+ 'fo' => __( 'Faroese', HAPPYFORMS_TEXT_DOMAIN ),
735
+ 'fi' => __( 'Finnish', HAPPYFORMS_TEXT_DOMAIN ),
736
+ 'fr' => __( 'French', HAPPYFORMS_TEXT_DOMAIN ),
737
+ 'fy' => __( 'Frisian', HAPPYFORMS_TEXT_DOMAIN ),
738
+ 'fur' => __( 'Friulian', HAPPYFORMS_TEXT_DOMAIN ),
739
+ 'fuc' => __( 'Fulah', HAPPYFORMS_TEXT_DOMAIN ),
740
+ 'gl' => __( 'Galician', HAPPYFORMS_TEXT_DOMAIN ),
741
+ 'ka' => __( 'Georgian', HAPPYFORMS_TEXT_DOMAIN ),
742
+ 'de' => __( 'German', HAPPYFORMS_TEXT_DOMAIN ),
743
+ 'el' => __( 'Greek', HAPPYFORMS_TEXT_DOMAIN ),
744
+ 'kal' => __( 'Greenlandic', HAPPYFORMS_TEXT_DOMAIN ),
745
+ 'gn' => __( 'Guaraní', HAPPYFORMS_TEXT_DOMAIN ),
746
+ 'gu' => __( 'Gujarati', HAPPYFORMS_TEXT_DOMAIN ),
747
+ 'haw' => __( 'Hawaiian', HAPPYFORMS_TEXT_DOMAIN ),
748
+ 'haz' => __( 'Hazaragi', HAPPYFORMS_TEXT_DOMAIN ),
749
+ 'he' => __( 'Hebrew', HAPPYFORMS_TEXT_DOMAIN ),
750
+ 'hi' => __( 'Hindi', HAPPYFORMS_TEXT_DOMAIN ),
751
+ 'hu' => __( 'Hungarian', HAPPYFORMS_TEXT_DOMAIN ),
752
+ 'is' => __( 'Icelandic', HAPPYFORMS_TEXT_DOMAIN ),
753
+ 'ido' => __( 'Ido', HAPPYFORMS_TEXT_DOMAIN ),
754
+ 'id' => __( 'Indonesian', HAPPYFORMS_TEXT_DOMAIN ),
755
+ 'ga' => __( 'Irish', HAPPYFORMS_TEXT_DOMAIN ),
756
+ 'it' => __( 'Italian', HAPPYFORMS_TEXT_DOMAIN ),
757
+ 'ja' => __( 'Japanese', HAPPYFORMS_TEXT_DOMAIN ),
758
+ 'jv' => __( 'Javanese', HAPPYFORMS_TEXT_DOMAIN ),
759
+ 'kab' => __( 'Kabyle', HAPPYFORMS_TEXT_DOMAIN ),
760
+ 'kn' => __( 'Kannada', HAPPYFORMS_TEXT_DOMAIN ),
761
+ 'kk' => __( 'Kazakh', HAPPYFORMS_TEXT_DOMAIN ),
762
+ 'km' => __( 'Khmer', HAPPYFORMS_TEXT_DOMAIN ),
763
+ 'kin' => __( 'Kinyarwanda', HAPPYFORMS_TEXT_DOMAIN ),
764
+ 'ky' => __( 'Kirghiz', HAPPYFORMS_TEXT_DOMAIN ),
765
+ 'ko' => __( 'Korean', HAPPYFORMS_TEXT_DOMAIN ),
766
+ 'ckb' => __( 'Kurdish', HAPPYFORMS_TEXT_DOMAIN ),
767
+ 'lo' => __( 'Lao', HAPPYFORMS_TEXT_DOMAIN ),
768
+ 'lv' => __( 'Latvian', HAPPYFORMS_TEXT_DOMAIN ),
769
+ 'li' => __( 'Limburgish', HAPPYFORMS_TEXT_DOMAIN ),
770
+ 'lin' => __( 'Lingala', HAPPYFORMS_TEXT_DOMAIN ),
771
+ 'lt' => __( 'Lithuanian', HAPPYFORMS_TEXT_DOMAIN ),
772
+ 'lb' => __( 'Luxembourgish', HAPPYFORMS_TEXT_DOMAIN ),
773
+ 'mk' => __( 'Macedonian', HAPPYFORMS_TEXT_DOMAIN ),
774
+ 'mg' => __( 'Malagasy', HAPPYFORMS_TEXT_DOMAIN ),
775
+ 'ms' => __( 'Malay', HAPPYFORMS_TEXT_DOMAIN ),
776
+ 'ml' => __( 'Malayalam', HAPPYFORMS_TEXT_DOMAIN ),
777
+ 'mri' => __( 'Maori', HAPPYFORMS_TEXT_DOMAIN ),
778
+ 'mr' => __( 'Marathi', HAPPYFORMS_TEXT_DOMAIN ),
779
+ 'xmf' => __( 'Mingrelian', HAPPYFORMS_TEXT_DOMAIN ),
780
+ 'mn' => __( 'Mongolian', HAPPYFORMS_TEXT_DOMAIN ),
781
+ 'me' => __( 'Montenegrin', HAPPYFORMS_TEXT_DOMAIN ),
782
+ 'ary' => __( 'Moroccan Arabic', HAPPYFORMS_TEXT_DOMAIN ),
783
+ 'mya' => __( 'Myanmar (Burmese)', HAPPYFORMS_TEXT_DOMAIN ),
784
+ 'ne' => __( 'Nepali', HAPPYFORMS_TEXT_DOMAIN ),
785
+ 'nb' => __( 'Norwegian (Bokmål)', HAPPYFORMS_TEXT_DOMAIN ),
786
+ 'nn' => __( 'Norwegian (Nynorsk)', HAPPYFORMS_TEXT_DOMAIN ),
787
+ 'oci' => __( 'Occitan', HAPPYFORMS_TEXT_DOMAIN ),
788
+ 'ory' => __( 'Oriya', HAPPYFORMS_TEXT_DOMAIN ),
789
+ 'os' => __( 'Ossetic', HAPPYFORMS_TEXT_DOMAIN ),
790
+ 'ps' => __( 'Pashto', HAPPYFORMS_TEXT_DOMAIN ),
791
+ 'fa' => __( 'Persian', HAPPYFORMS_TEXT_DOMAIN ),
792
+ 'pl' => __( 'Polish', HAPPYFORMS_TEXT_DOMAIN ),
793
+ 'pt' => __( 'Portuguese', HAPPYFORMS_TEXT_DOMAIN ),
794
+ 'pa' => __( 'Punjabi', HAPPYFORMS_TEXT_DOMAIN ),
795
+ 'rhg' => __( 'Rohingya', HAPPYFORMS_TEXT_DOMAIN ),
796
+ 'ro' => __( 'Romanian', HAPPYFORMS_TEXT_DOMAIN ),
797
+ 'roh' => __( 'Romansh Vallader', HAPPYFORMS_TEXT_DOMAIN ),
798
+ 'ru' => __( 'Russian', HAPPYFORMS_TEXT_DOMAIN ),
799
+ 'rue' => __( 'Rusyn', HAPPYFORMS_TEXT_DOMAIN ),
800
+ 'sah' => __( 'Sakha', HAPPYFORMS_TEXT_DOMAIN ),
801
+ 'sa' => __( 'Sanskrit', HAPPYFORMS_TEXT_DOMAIN ),
802
+ 'srd' => __( 'Sardinian', HAPPYFORMS_TEXT_DOMAIN ),
803
+ 'gd' => __( 'Scottish Gaelic', HAPPYFORMS_TEXT_DOMAIN ),
804
+ 'sr' => __( 'Serbian', HAPPYFORMS_TEXT_DOMAIN ),
805
+ 'szl' => __( 'Silesian', HAPPYFORMS_TEXT_DOMAIN ),
806
+ 'snd' => __( 'Sindhi', HAPPYFORMS_TEXT_DOMAIN ),
807
+ 'si' => __( 'Sinhala', HAPPYFORMS_TEXT_DOMAIN ),
808
+ 'sk' => __( 'Slovak', HAPPYFORMS_TEXT_DOMAIN ),
809
+ 'sl' => __( 'Slovenian', HAPPYFORMS_TEXT_DOMAIN ),
810
+ 'so' => __( 'Somali', HAPPYFORMS_TEXT_DOMAIN ),
811
+ 'azb' => __( 'South Azerbaijani', HAPPYFORMS_TEXT_DOMAIN ),
812
+ 'es' => __( 'Spanish', HAPPYFORMS_TEXT_DOMAIN ),
813
+ 'su' => __( 'Sundanese', HAPPYFORMS_TEXT_DOMAIN ),
814
+ 'sw' => __( 'Swahili', HAPPYFORMS_TEXT_DOMAIN ),
815
+ 'sv' => __( 'Swedish', HAPPYFORMS_TEXT_DOMAIN ),
816
+ 'gsw' => __( 'Swiss German', HAPPYFORMS_TEXT_DOMAIN ),
817
+ 'tl' => __( 'Tagalog', HAPPYFORMS_TEXT_DOMAIN ),
818
+ 'tah' => __( 'Tahitian', HAPPYFORMS_TEXT_DOMAIN ),
819
+ 'tg' => __( 'Tajik', HAPPYFORMS_TEXT_DOMAIN ),
820
+ 'tzm' => __( 'Tamazight', HAPPYFORMS_TEXT_DOMAIN ),
821
+ 'ta' => __( 'Tamil', HAPPYFORMS_TEXT_DOMAIN ),
822
+ 'tt' => __( 'Tatar', HAPPYFORMS_TEXT_DOMAIN ),
823
+ 'te' => __( 'Telugu', HAPPYFORMS_TEXT_DOMAIN ),
824
+ 'th' => __( 'Thai', HAPPYFORMS_TEXT_DOMAIN ),
825
+ 'bo' => __( 'Tibetan', HAPPYFORMS_TEXT_DOMAIN ),
826
+ 'tir' => __( 'Tigrinya', HAPPYFORMS_TEXT_DOMAIN ),
827
+ 'tr' => __( 'Turkish', HAPPYFORMS_TEXT_DOMAIN ),
828
+ 'tuk' => __( 'Turkmen', HAPPYFORMS_TEXT_DOMAIN ),
829
+ 'twd' => __( 'Tweants', HAPPYFORMS_TEXT_DOMAIN ),
830
+ 'ug' => __( 'Uighur', HAPPYFORMS_TEXT_DOMAIN ),
831
+ 'uk' => __( 'Ukrainian', HAPPYFORMS_TEXT_DOMAIN ),
832
+ 'ur' => __( 'Urdu', HAPPYFORMS_TEXT_DOMAIN ),
833
+ 'uz' => __( 'Uzbek', HAPPYFORMS_TEXT_DOMAIN ),
834
+ 'vi' => __( 'Vietnamese', HAPPYFORMS_TEXT_DOMAIN ),
835
+ 'wa' => __( 'Walloon', HAPPYFORMS_TEXT_DOMAIN ),
836
+ 'cy' => __( 'Welsh', HAPPYFORMS_TEXT_DOMAIN ),
837
+ 'yor' => __( 'Yoruba', HAPPYFORMS_TEXT_DOMAIN ),
838
  );
839
 
840
  if ( empty( $code ) ) {
core/templates/admin-form-modal.php CHANGED
@@ -2,12 +2,12 @@
2
  <div>
3
  <select class="happyforms-dialog__select" id="happyforms-dialog-select">
4
  <?php $forms = $this->get_form_data_array(); ?>
5
- <option value=""><?php _e( 'Choose a form', 'happyforms' ); ?></option>
6
  <?php foreach ( $forms as $form ) : ?>
7
  <option value="<?php echo $form['id']; ?>"><?php echo $form['title']; ?></option>
8
  <?php endforeach; ?>
9
  </select>
10
  </div>
11
 
12
- <button class="button-primary happyforms-dialog__button"><?php _e( 'Insert', 'happyforms' ); ?></button>
13
  </div>
2
  <div>
3
  <select class="happyforms-dialog__select" id="happyforms-dialog-select">
4
  <?php $forms = $this->get_form_data_array(); ?>
5
+ <option value=""><?php _e( 'Choose a form', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
6
  <?php foreach ( $forms as $form ) : ?>
7
  <option value="<?php echo $form['id']; ?>"><?php echo $form['title']; ?></option>
8
  <?php endforeach; ?>
9
  </select>
10
  </div>
11
 
12
+ <button class="button-primary happyforms-dialog__button"><?php _e( 'Insert', HAPPYFORMS_TEXT_DOMAIN ); ?></button>
13
  </div>
core/templates/admin-tracking.php CHANGED
@@ -9,18 +9,18 @@ $status = $tracking->get_status();
9
  <?php if ( 3 === intval( $status['status'] ) ) {
10
  $tracking->print_template( 'success' );
11
  } else { ?>
12
- <h1><?php _e( 'Add your email to complete setup', 'happyforms' ); ?>&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' ); ?>" required >
16
  <input name="<?php echo esc_attr( $tracking->monitor_status_field ); ?>" type="hidden" value="active" />
17
- <button type="submit" class="button button-primary button-hero button-block"><?php _e( 'Allow and set up HappyForms', 'happyforms' ); ?></button>
18
  </form>
19
  <?php } ?>
20
  </div>
21
  </div>
22
 
23
  <?php if ( 2 === $status['status'] ) : ?>
24
- <p class="welcome-panel-footer"><?php _e( 'Or, skip this step and ', 'happyforms' ); ?> <a href="<?php echo happyforms_get_all_form_link(); ?>" id="happyforms-tracking-skip"><?php _e( 'continue', 'happyforms' ); ?></a></p>
25
  <?php endif; ?>
26
  </div>
9
  <?php if ( 3 === intval( $status['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" />
17
+ <button type="submit" class="button button-primary button-hero button-block"><?php _e( 'Allow and set up HappyForms', HAPPYFORMS_TEXT_DOMAIN ); ?></button>
18
  </form>
19
  <?php } ?>
20
  </div>
21
  </div>
22
 
23
  <?php if ( 2 === $status['status'] ) : ?>
24
+ <p class="welcome-panel-footer"><?php _e( 'Or, skip this step and ', HAPPYFORMS_TEXT_DOMAIN ); ?> <a href="<?php echo happyforms_get_all_form_link(); ?>" id="happyforms-tracking-skip"><?php _e( 'continue', HAPPYFORMS_TEXT_DOMAIN ); ?></a></p>
25
  <?php endif; ?>
26
  </div>
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' ); ?>
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="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>
core/templates/customize-controls/style/divider.php CHANGED
@@ -7,9 +7,9 @@
7
  <ul>
8
  <li class="panel-meta customize-info accordion-section">
9
  <button class="customize-panel-back" tabindex="0">
10
- <span class="screen-reader-text"><?php _e( 'Back', 'happyforms' ); ?></span>
11
  </button>
12
  <div class="accordion-section-title">
13
- <span class="preview-notice"><?php _e( 'You are customizing', 'happyforms' ); ?> <strong class="panel-title"><?php echo $control['label']; ?></strong></span>
14
  </div>
15
  </li>
7
  <ul>
8
  <li class="panel-meta customize-info accordion-section">
9
  <button class="customize-panel-back" tabindex="0">
10
+ <span class="screen-reader-text"><?php _e( 'Back', HAPPYFORMS_TEXT_DOMAIN ); ?></span>
11
  </button>
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-form-build.php CHANGED
@@ -1,20 +1,20 @@
1
  <script type="text/template" id="happyforms-form-build-template">
2
  <div class="happyforms-stack-view">
3
  <div class="customize-control">
4
- <label for="" class="customize-control-title"><?php _e( 'Title', 'happyforms' ); ?></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' ); ?>
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' ); ?>" data-expand-text="<?php _e( 'Expand all', 'happyforms' ); ?>"><%= ( parts.length > 0 ) ? '<?php _e( 'Expand all', 'happyforms' ); ?>' : '<?php _e( 'Collapse all', 'happyforms' ); ?>' %></a>
13
  </span>
14
  </label>
15
  <div class="happyforms-parts-placeholder">
16
- <p><b><?php _e( 'Ready to get started?', 'happyforms' ); ?></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' ); ?></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>
1
  <script type="text/template" id="happyforms-form-build-template">
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>
core/templates/customize-form-item.php CHANGED
@@ -15,23 +15,23 @@
15
  <div class="happyforms-widget-content">
16
  <ul class="form-actions">
17
  <li>
18
- <a href="#" data-href="form/<%= ID %>/build" class="form-action-link form-action-build-link"><?php _e( 'Add Part', 'happyforms' ); ?></a>
19
  </li>
20
  <li>
21
- <a href="#" data-href="form/<%= ID %>" class="form-action-link form-action-setup-link"><?php _e( 'Setup', 'happyforms' ); ?></a>
22
  </li>
23
  <li>
24
- <a href="#" data-href="form/<%= ID %>/style" class="form-action-link form-action-style-link"><?php _e( 'Style', 'happyforms' ); ?></a>
25
  </li>
26
  <li>
27
- <a href="#" data-href="form/<%= ID %>" class="form-action-link form-action-duplicate-link"><?php _e( 'Duplicate', 'happyforms' ); ?></a>
28
  </li>
29
  </ul>
30
  </div>
31
  <div class="happyforms-widget-footer">
32
  <div class="happyforms-widget-actions">
33
- <a href="#" data-href="form/<%= ID %>/remove" class="happyforms-form-remove"><?php _e( 'Delete', 'happyforms' ); ?></a> |
34
- <a href="#" data-href="form/<%= ID %>" class="happyforms-form-preview"><?php _e( 'Preview', 'happyforms' ); ?></a>
35
  </div>
36
  </div>
37
  </div>
15
  <div class="happyforms-widget-content">
16
  <ul class="form-actions">
17
  <li>
18
+ <a href="#" data-href="form/<%= ID %>/build" class="form-action-link form-action-build-link"><?php _e( 'Add Part', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
19
  </li>
20
  <li>
21
+ <a href="#" data-href="form/<%= ID %>" class="form-action-link form-action-setup-link"><?php _e( 'Setup', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
22
  </li>
23
  <li>
24
+ <a href="#" data-href="form/<%= ID %>/style" class="form-action-link form-action-style-link"><?php _e( 'Style', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
25
  </li>
26
  <li>
27
+ <a href="#" data-href="form/<%= ID %>" class="form-action-link form-action-duplicate-link"><?php _e( 'Duplicate', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
28
  </li>
29
  </ul>
30
  </div>
31
  <div class="happyforms-widget-footer">
32
  <div class="happyforms-widget-actions">
33
+ <a href="#" data-href="form/<%= ID %>/remove" class="happyforms-form-remove"><?php _e( 'Delete', HAPPYFORMS_TEXT_DOMAIN ); ?></a> |
34
+ <a href="#" data-href="form/<%= ID %>" class="happyforms-form-preview"><?php _e( 'Preview', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
35
  </div>
36
  </div>
37
  </div>
core/templates/customize-form-part-footer.php CHANGED
@@ -1,9 +1,9 @@
1
  </div>
2
  <div class="happyforms-widget-actions">
3
- <a href="#" class="happyforms-form-part-remove"><?php _e( 'Delete', 'happyforms' ); ?></a> |
4
- <a href="#" class="happyforms-form-part-duplicate"><?php _e( 'Duplicate', 'happyforms' ); ?></a>
5
- <a href="#" class="happyforms-form-part-advanced-settings"><?php _e( 'More', 'happyforms' ); ?></a>
6
- <a href="#" class="happyforms-form-part-logic"><?php _e( 'Logic', 'happyforms' ); ?></a>
7
  </div>
8
  </div>
9
  </div>
1
  </div>
2
  <div class="happyforms-widget-actions">
3
+ <a href="#" class="happyforms-form-part-remove"><?php _e( 'Delete', HAPPYFORMS_TEXT_DOMAIN ); ?></a> |
4
+ <a href="#" class="happyforms-form-part-duplicate"><?php _e( 'Duplicate', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
5
+ <a href="#" class="happyforms-form-part-advanced-settings"><?php _e( 'More', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
6
+ <a href="#" class="happyforms-form-part-logic"><?php _e( 'Logic', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
7
  </div>
8
  </div>
9
  </div>
core/templates/customize-form-part-logic.php CHANGED
@@ -1,5 +1,5 @@
1
  <div class="no-parts no-parts--show no-parts--small">
2
- <h3><?php _e( 'Logic', 'happyforms' ); ?></h3>
3
 
4
- <p class="description"><a href="https://happyforms.me/upgrade" target="_blank" class="external"><?php _e( 'Upgrade to add logic rule', 'happyforms' ); ?></a></p>
5
  </div>
1
  <div class="no-parts no-parts--show no-parts--small">
2
+ <h3><?php _e( 'Logic', HAPPYFORMS_TEXT_DOMAIN ); ?></h3>
3
 
4
+ <p class="description"><a href="https://happyforms.me/upgrade" target="_blank" class="external"><?php _e( 'Upgrade to add logic rule', HAPPYFORMS_TEXT_DOMAIN ); ?></a></p>
5
  </div>
core/templates/customize-form-parts-drawer.php CHANGED
@@ -2,9 +2,9 @@
2
  <div id="happyforms-parts-drawer">
3
  <div class="happyforms-parts-drawer-header">
4
  <div class="happyforms-parts-drawer-header-search">
5
- <input type="text" placeholder="<?php _e( 'Search parts', 'happyforms' ); ?>&hellip;" id="part-search">
6
  <div class="happyforms-parts-drawer-header-search-icon"></div>
7
- <button type="button" class="happyforms-clear-search"><span class="screen-reader-text"><?php _e( 'Clear Results', 'happyforms' ); ?></span></button>
8
  </div>
9
  </div>
10
  <ul class="happyforms-parts-list">
@@ -27,7 +27,7 @@
27
  <div class="happyforms-parts-list-item-title">
28
  <h3><%= part.label %></h3>
29
  <% if ( isDummy ) { %>
30
- <a href="https://happyforms.me/upgrade" target="_blank"><?php _e( 'Upgrade', 'happyforms' ); ?></a>
31
  <% } %>
32
  </div>
33
  <div class="happyforms-parts-list-item-description"><%= part.description %></div>
@@ -36,7 +36,7 @@
36
  <% } %>
37
  </ul>
38
  <div class="happyforms-parts-drawer-not-found">
39
- <p><?php _e( 'No parts found.', 'happyforms' ); ?></p>
40
  </div>
41
  </div>
42
  </script>
2
  <div id="happyforms-parts-drawer">
3
  <div class="happyforms-parts-drawer-header">
4
  <div class="happyforms-parts-drawer-header-search">
5
+ <input type="text" placeholder="<?php _e( 'Search parts', HAPPYFORMS_TEXT_DOMAIN ); ?>&hellip;" id="part-search">
6
  <div class="happyforms-parts-drawer-header-search-icon"></div>
7
+ <button type="button" class="happyforms-clear-search"><span class="screen-reader-text"><?php _e( 'Clear Results', HAPPYFORMS_TEXT_DOMAIN ); ?></span></button>
8
  </div>
9
  </div>
10
  <ul class="happyforms-parts-list">
27
  <div class="happyforms-parts-list-item-title">
28
  <h3><%= part.label %></h3>
29
  <% if ( isDummy ) { %>
30
+ <a href="https://happyforms.me/upgrade" target="_blank"><?php _e( 'Upgrade', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
31
  <% } %>
32
  </div>
33
  <div class="happyforms-parts-list-item-description"><%= part.description %></div>
36
  <% } %>
37
  </ul>
38
  <div class="happyforms-parts-drawer-not-found">
39
+ <p><?php _e( 'No parts found.', HAPPYFORMS_TEXT_DOMAIN ); ?></p>
40
  </div>
41
  </div>
42
  </script>
core/templates/customize-form-setup-logic.php CHANGED
@@ -1,5 +1,5 @@
1
  <div class="happyforms-setup-logic-wrap">
2
  <div class="happyforms-logic-view">
3
- <a href="https://happyforms.me/upgrade" class="external" target="_blank"><?php _e( 'Upgrade to add logic rule', 'happyforms' ); ?></a>
4
  </div>
5
  </div>
1
  <div class="happyforms-setup-logic-wrap">
2
  <div class="happyforms-logic-view">
3
+ <a href="https://happyforms.me/upgrade" class="external" target="_blank"><?php _e( 'Upgrade to add logic rule', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
4
  </div>
5
  </div>
core/templates/customize-form-steps.php CHANGED
@@ -2,30 +2,30 @@
2
  <div class="happyforms-action-buttons">
3
  <% if ( step.index > 1 ) { %>
4
  <%
5
- var previousStepTitle = '<?php _e( 'Build', 'happyforms' ); ?>';
6
 
7
  if ( 3 === step.index ) {
8
- previousStepTitle = '<?php _e( 'Setup', 'happyforms' ); ?>';
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' ); ?>';
16
 
17
  if ( 2 === step.index ) {
18
- nextStepTitle = '<?php _e( 'Style', 'happyforms' ); ?>';
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' ); ?></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' ) ?> <%= step.index %> <?php _e( 'of', 'happyforms' ) ?> <%= step.count %></p>
31
  </script>
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>
core/templates/customize-header-actions.php CHANGED
@@ -1,8 +1,8 @@
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' ); ?>" aria-expanded="false" disabled="disabled" data-text-saved="<?php _e( 'Saved', 'happyforms' ); ?>" data-text-default="<?php _e( 'Save Form', 'happyforms' ); ?>"><?php _e( 'Save Form', 'happyforms' ); ?></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' ); ?>">
6
- <span class="screen-reader-text"><?php _e( 'Close', 'happyforms' ); ?></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
+ <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>
core/templates/parts/customize-checkbox.php CHANGED
@@ -1,32 +1,32 @@
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' ); ?></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' ); ?></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' ); ?></option>
11
- <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', 'happyforms' ); ?></option>
12
- <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', 'happyforms' ); ?></option>
13
- <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', 'happyforms' ); ?></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' ); ?>
19
  </label>
20
  </p>
21
  <p>
22
- <label for="<%= instance.id %>_description"><?php _e( 'Description', 'happyforms' ); ?></label>
23
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
24
  </p>
25
  <p class="happyforms-description-options" style="display: <%= (instance.description != '') ? 'block' : 'none' %>">
26
- <label for="<%= instance.id %>_description_mode"><?php _e( 'Description appearance', 'happyforms' ); ?></label>
27
  <select id="<%= instance.id %>_description_mode" data-bind="description_mode">
28
- <option value=""><?php _e( 'Standard', 'happyforms' ); ?></option>
29
- <option value="tooltip"<%= (instance.description_mode == 'tooltip' || instance.tooltip_description ) ? ' selected' : '' %>><?php _e( 'Tooltip', 'happyforms' ); ?></option>
30
  </select>
31
  </p>
32
 
@@ -34,28 +34,28 @@
34
 
35
  <div class="options">
36
  <ul class="option-list"></ul>
37
- <h3><?php _e( 'Choices', 'happyforms' ); ?></h3>
38
- <p class="no-options description"><?php _e( 'No choices added yet. Add one by clicking <i>Add Choice</i> below.', 'happyforms' ); ?></p>
39
  </div>
40
  <div class="options-import">
41
- <h3><?php _e( 'Choices', 'happyforms' ); ?></h3>
42
  <textarea class="option-import-area" cols="30" rows="10" placeholder="<?php _e( 'Type or paste your choices here, adding each on a new line.' ); ?>"></textarea>
43
  </div>
44
  <p class="links mode-manual">
45
- <a href="#" class="button add-option"><?php _e( 'Add choice', 'happyforms' ); ?></a>
46
  <span class="centered">
47
- <a href="#" class="import-options"><?php _e( 'Or, bulk add choices', 'happyforms' ); ?></a>
48
  </span>
49
  </p>
50
  <p class="links mode-import">
51
- <a href="#" class="button import-option"><?php _e( 'Add choices', 'happyforms' ); ?></a>
52
  <span class="centered">
53
- <a href="#" class="add-options"><?php _e( 'Cancel', 'happyforms' ); ?></a>
54
  </span>
55
  </p>
56
  <p>
57
  <label>
58
- <input type="checkbox" class="checkbox" value="1" <% if ( instance.required ) { %>checked="checked"<% } %> data-bind="required" /> <?php _e( 'This is required', 'happyforms' ); ?>
59
  </label>
60
  </p>
61
 
@@ -66,7 +66,7 @@
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' ); ?>
70
  </label>
71
  </p>
72
  <p>
@@ -86,24 +86,24 @@
86
  </select>
87
  </p>
88
  <p>
89
- <label for="<%= instance.id %>_width"><?php _e( 'Width', 'happyforms' ); ?></label>
90
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
91
- <option value="full"<%= (instance.width == 'full') ? ' selected' : '' %>><?php _e( 'Full', 'happyforms' ); ?></option>
92
- <option value="half"<%= (instance.width == 'half') ? ' selected' : '' %>><?php _e( 'Half', 'happyforms' ); ?></option>
93
- <option value="third"<%= (instance.width == 'third') ? ' selected' : '' %>><?php _e( 'Third', 'happyforms' ); ?></option>
94
- <option value="auto"<%= (instance.width == 'auto') ? ' selected' : '' %>><?php _e( 'Auto', 'happyforms' ); ?></option>
95
  </select>
96
  </p>
97
  <p class="width-options" style="display: none">
98
  <label>
99
- <input type="checkbox" class="checkbox apply-all-check" value="" /> <?php _e( 'Apply to all parts', 'happyforms' ); ?>
100
  </label>
101
  </p>
102
 
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' ); ?></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>
@@ -121,21 +121,21 @@
121
  <div class="happyforms-part-item-body">
122
  <div class="happyforms-part-item-handle"></div>
123
  <label>
124
- <?php _e( 'Label', 'happyforms' ); ?>
125
  <input type="text" class="widefat" name="label" value="<%= label %>">
126
  </label>
127
  <div class="happyforms-part-item-advanced">
128
  <label class="happyforms-part-item-description">
129
- <?php _e( 'Description', 'happyforms' ); ?>
130
  <input type="text" class="widefat" name="description" value="<%= (typeof description !== 'undefined') ? description : '' %>" data-option-attribute="description">
131
  </label>
132
  <label>
133
- <input type="checkbox" name="is_default" value="1" <% if (is_default == 1) { %> checked="checked"<% } %>> <?php _e( 'Checked by default', 'happyforms' ); ?>
134
  </label>
135
  </div>
136
  <div class="option-actions">
137
- <a href="#" class="delete-option"><?php _e( 'Delete', 'happyforms' ); ?></a> |
138
- <a href="#" class="advanced-option"><?php _e( 'Advanced', 'happyforms' ); ?></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( '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>
24
  </p>
25
  <p class="happyforms-description-options" style="display: <%= (instance.description != '') ? 'block' : 'none' %>">
26
+ <label for="<%= instance.id %>_description_mode"><?php _e( 'Description appearance', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
27
  <select id="<%= instance.id %>_description_mode" data-bind="description_mode">
28
+ <option value=""><?php _e( 'Standard', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
29
+ <option value="tooltip"<%= (instance.description_mode == 'tooltip' || instance.tooltip_description ) ? ' selected' : '' %>><?php _e( 'Tooltip', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
30
  </select>
31
  </p>
32
 
34
 
35
  <div class="options">
36
  <ul class="option-list"></ul>
37
+ <h3><?php _e( 'Choices', HAPPYFORMS_TEXT_DOMAIN ); ?></h3>
38
+ <p class="no-options description"><?php _e( 'No choices added yet. Add one by clicking <i>Add Choice</i> below.', HAPPYFORMS_TEXT_DOMAIN ); ?></p>
39
  </div>
40
  <div class="options-import">
41
+ <h3><?php _e( 'Choices', HAPPYFORMS_TEXT_DOMAIN ); ?></h3>
42
  <textarea class="option-import-area" cols="30" rows="10" placeholder="<?php _e( 'Type or paste your choices here, adding each on a new line.' ); ?>"></textarea>
43
  </div>
44
  <p class="links mode-manual">
45
+ <a href="#" class="button add-option"><?php _e( 'Add choice', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
46
  <span class="centered">
47
+ <a href="#" class="import-options"><?php _e( 'Or, bulk add choices', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
48
  </span>
49
  </p>
50
  <p class="links mode-import">
51
+ <a href="#" class="button import-option"><?php _e( 'Add choices', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
52
  <span class="centered">
53
+ <a href="#" class="add-options"><?php _e( 'Cancel', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
54
  </span>
55
  </p>
56
  <p>
57
  <label>
58
+ <input type="checkbox" class="checkbox" value="1" <% if ( instance.required ) { %>checked="checked"<% } %> data-bind="required" /> <?php _e( 'This is required', HAPPYFORMS_TEXT_DOMAIN ); ?>
59
  </label>
60
  </p>
61
 
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>
86
  </select>
87
  </p>
88
  <p>
89
+ <label for="<%= instance.id %>_width"><?php _e( 'Width', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
90
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
91
+ <option value="full"<%= (instance.width == 'full') ? ' selected' : '' %>><?php _e( 'Full', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
92
+ <option value="half"<%= (instance.width == 'half') ? ' selected' : '' %>><?php _e( 'Half', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
93
+ <option value="third"<%= (instance.width == 'third') ? ' selected' : '' %>><?php _e( 'Third', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
94
+ <option value="auto"<%= (instance.width == 'auto') ? ' selected' : '' %>><?php _e( 'Auto', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
95
  </select>
96
  </p>
97
  <p class="width-options" style="display: none">
98
  <label>
99
+ <input type="checkbox" class="checkbox apply-all-check" value="" /> <?php _e( 'Apply to all parts', HAPPYFORMS_TEXT_DOMAIN ); ?>
100
  </label>
101
  </p>
102
 
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>
121
  <div class="happyforms-part-item-body">
122
  <div class="happyforms-part-item-handle"></div>
123
  <label>
124
+ <?php _e( 'Label', HAPPYFORMS_TEXT_DOMAIN ); ?>
125
  <input type="text" class="widefat" name="label" value="<%= label %>">
126
  </label>
127
  <div class="happyforms-part-item-advanced">
128
  <label class="happyforms-part-item-description">
129
+ <?php _e( 'Description', HAPPYFORMS_TEXT_DOMAIN ); ?>
130
  <input type="text" class="widefat" name="description" value="<%= (typeof description !== 'undefined') ? description : '' %>" data-option-attribute="description">
131
  </label>
132
  <label>
133
+ <input type="checkbox" name="is_default" value="1" <% if (is_default == 1) { %> checked="checked"<% } %>> <?php _e( 'Checked by default', HAPPYFORMS_TEXT_DOMAIN ); ?>
134
  </label>
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>
core/templates/parts/customize-email.php CHANGED
@@ -1,39 +1,39 @@
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' ); ?></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' ); ?></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' ); ?></option>
11
- <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', 'happyforms' ); ?></option>
12
- <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', 'happyforms' ); ?></option>
13
- <option value="inside"<%= (instance.label_placement == 'inside') ? ' selected' : '' %>><?php _e( 'Inside input', 'happyforms' ); ?></option>
14
- <option value="as_placeholder"<%= (instance.label_placement == 'as_placeholder') ? ' selected' : '' %>><?php _e( 'Display as placeholder', 'happyforms' ); ?></option>
15
- <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', 'happyforms' ); ?></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' ); ?>
21
  </label>
22
  </p>
23
  <p>
24
- <label for="<%= instance.id %>_description"><?php _e( 'Description', 'happyforms' ); ?></label>
25
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
26
  </p>
27
  <p class="happyforms-description-options" style="display: <%= (instance.description != '') ? 'block' : 'none' %>">
28
- <label for="<%= instance.id %>_description_mode"><?php _e( 'Description appearance', 'happyforms' ); ?></label>
29
  <select id="<%= instance.id %>_description_mode" data-bind="description_mode">
30
- <option value=""><?php _e( 'Standard', 'happyforms' ); ?></option>
31
- <option value="focus-reveal"<%= (instance.description_mode == 'focus-reveal') ? ' selected' : '' %>><?php _e( 'Reveal on focus', 'happyforms' ); ?></option>
32
- <option value="tooltip"<%= (instance.description_mode == 'tooltip' || instance.tooltip_description ) ? ' selected' : '' %>><?php _e( 'Tooltip', 'happyforms' ); ?></option>
33
  </select>
34
  </p>
35
  <p class="happyforms-placeholder-option" style="display: <%= ( 'as_placeholder' !== instance.label_placement ) ? 'block' : 'none' %>">
36
- <label for="<%= instance.id %>_placeholder"><?php _e( 'Placeholder', 'happyforms' ); ?></label>
37
  <input type="text" id="<%= instance.id %>_placeholder" class="widefat title" value="<%= instance.placeholder %>" data-bind="placeholder" />
38
  </p>
39
 
@@ -41,7 +41,7 @@
41
 
42
  <p>
43
  <label>
44
- <input type="checkbox" class="checkbox" value="1" <% if ( instance.required ) { %>checked="checked"<% } %> data-bind="required" /> <?php _e( 'This is required', 'happyforms' ); ?>
45
  </label>
46
  </p>
47
 
@@ -51,38 +51,38 @@
51
  <?php do_action( 'happyforms_part_customize_email_before_advanced_options' ); ?>
52
 
53
  <p>
54
- <label for="<%= instance.id %>_width"><?php _e( 'Width', 'happyforms' ); ?></label>
55
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
56
- <option value="full"<%= (instance.width == 'full') ? ' selected' : '' %>><?php _e( 'Full', 'happyforms' ); ?></option>
57
- <option value="half"<%= (instance.width == 'half') ? ' selected' : '' %>><?php _e( 'Half', 'happyforms' ); ?></option>
58
- <option value="third"<%= (instance.width == 'third') ? ' selected' : '' %>><?php _e( 'Third', 'happyforms' ); ?></option>
59
- <option value="auto"<%= (instance.width == 'auto') ? ' selected' : '' %>><?php _e( 'Auto', 'happyforms' ); ?></option>
60
  </select>
61
  </p>
62
  <p class="width-options" style="display: none">
63
  <label>
64
- <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="width" /> <?php _e( 'Apply to all parts', 'happyforms' ); ?>
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' ); ?>
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' ); ?>
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' ); ?></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' ); ?></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( '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>
26
  </p>
27
  <p class="happyforms-description-options" style="display: <%= (instance.description != '') ? 'block' : 'none' %>">
28
+ <label for="<%= instance.id %>_description_mode"><?php _e( 'Description appearance', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
29
  <select id="<%= instance.id %>_description_mode" data-bind="description_mode">
30
+ <option value=""><?php _e( 'Standard', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
31
+ <option value="focus-reveal"<%= (instance.description_mode == 'focus-reveal') ? ' selected' : '' %>><?php _e( 'Reveal on focus', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
32
+ <option value="tooltip"<%= (instance.description_mode == 'tooltip' || instance.tooltip_description ) ? ' selected' : '' %>><?php _e( 'Tooltip', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
33
  </select>
34
  </p>
35
  <p class="happyforms-placeholder-option" style="display: <%= ( 'as_placeholder' !== instance.label_placement ) ? 'block' : 'none' %>">
36
+ <label for="<%= instance.id %>_placeholder"><?php _e( 'Placeholder', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
37
  <input type="text" id="<%= instance.id %>_placeholder" class="widefat title" value="<%= instance.placeholder %>" data-bind="placeholder" />
38
  </p>
39
 
41
 
42
  <p>
43
  <label>
44
+ <input type="checkbox" class="checkbox" value="1" <% if ( instance.required ) { %>checked="checked"<% } %> data-bind="required" /> <?php _e( 'This is required', HAPPYFORMS_TEXT_DOMAIN ); ?>
45
  </label>
46
  </p>
47
 
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">
56
+ <option value="full"<%= (instance.width == 'full') ? ' selected' : '' %>><?php _e( 'Full', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
57
+ <option value="half"<%= (instance.width == 'half') ? ' selected' : '' %>><?php _e( 'Half', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
58
+ <option value="third"<%= (instance.width == 'third') ? ' selected' : '' %>><?php _e( 'Third', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
59
+ <option value="auto"<%= (instance.width == 'auto') ? ' selected' : '' %>><?php _e( 'Auto', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
60
  </select>
61
  </p>
62
  <p class="width-options" style="display: none">
63
  <label>
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>
core/templates/parts/customize-multi-line-text.php CHANGED
@@ -1,39 +1,39 @@
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' ); ?></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' ); ?></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' ); ?></option>
11
- <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', 'happyforms' ); ?></option>
12
- <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', 'happyforms' ); ?></option>
13
- <option value="inside"<%= (instance.label_placement == 'inside') ? ' selected' : '' %>><?php _e( 'Inside', 'happyforms' ); ?></option>
14
- <option value="as_placeholder"<%= (instance.label_placement == 'as_placeholder') ? ' selected' : '' %>><?php _e( 'Display as placeholder', 'happyforms' ); ?></option>
15
- <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', 'happyforms' ); ?></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' ); ?>
21
  </label>
22
  </p>
23
  <p>
24
- <label for="<%= instance.id %>_description"><?php _e( 'Description', 'happyforms' ); ?></label>
25
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
26
  </p>
27
  <p class="happyforms-description-options" style="display: <%= (instance.description != '') ? 'block' : 'none' %>">
28
- <label for="<%= instance.id %>_description_mode"><?php _e( 'Description appearance', 'happyforms' ); ?></label>
29
  <select id="<%= instance.id %>_description_mode" data-bind="description_mode">
30
- <option value=""><?php _e( 'Standard', 'happyforms' ); ?></option>
31
- <option value="focus-reveal"<%= (instance.description_mode == 'focus-reveal') ? ' selected' : '' %>><?php _e( 'Reveal on focus', 'happyforms' ); ?></option>
32
- <option value="tooltip"<%= (instance.description_mode == 'tooltip' || instance.tooltip_description ) ? ' selected' : '' %>><?php _e( 'Tooltip', 'happyforms' ); ?></option>
33
  </select>
34
  </p>
35
  <p class="happyforms-placeholder-option" style="display: <%= ( 'as_placeholder' !== instance.label_placement ) ? 'block' : 'none' %>">
36
- <label for="<%= instance.id %>_placeholder"><?php _e( 'Placeholder', 'happyforms' ); ?></label>
37
  <input type="text" id="<%= instance.id %>_placeholder" class="widefat title" value="<%= instance.placeholder %>" data-bind="placeholder" />
38
  </p>
39
 
@@ -41,7 +41,7 @@
41
 
42
  <p>
43
  <label>
44
- <input type="checkbox" class="checkbox" value="1" <% if ( instance.required ) { %>checked="checked"<% } %> data-bind="required" /> <?php _e( 'This is required', 'happyforms' ); ?>
45
  </label>
46
  </p>
47
 
@@ -51,7 +51,7 @@
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' ); ?></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">
@@ -63,24 +63,24 @@
63
  </div>
64
  </p>
65
  <p>
66
- <label for="<%= instance.id %>_width"><?php _e( 'Width', 'happyforms' ); ?></label>
67
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
68
- <option value="full"<%= (instance.width == 'full') ? ' selected' : '' %>><?php _e( 'Full', 'happyforms' ); ?></option>
69
- <option value="half"<%= (instance.width == 'half') ? ' selected' : '' %>><?php _e( 'Half', 'happyforms' ); ?></option>
70
- <option value="third"<%= (instance.width == 'third') ? ' selected' : '' %>><?php _e( 'Third', 'happyforms' ); ?></option>
71
- <option value="auto"<%= (instance.width == 'auto') ? ' selected' : '' %>><?php _e( 'Auto', 'happyforms' ); ?></option>
72
  </select>
73
  </p>
74
  <p class="width-options" style="display: none">
75
  <label>
76
- <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="width" /> <?php _e( 'Apply to all parts', 'happyforms' ); ?>
77
  </label>
78
  </p>
79
 
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' ); ?></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( '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>
26
  </p>
27
  <p class="happyforms-description-options" style="display: <%= (instance.description != '') ? 'block' : 'none' %>">
28
+ <label for="<%= instance.id %>_description_mode"><?php _e( 'Description appearance', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
29
  <select id="<%= instance.id %>_description_mode" data-bind="description_mode">
30
+ <option value=""><?php _e( 'Standard', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
31
+ <option value="focus-reveal"<%= (instance.description_mode == 'focus-reveal') ? ' selected' : '' %>><?php _e( 'Reveal on focus', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
32
+ <option value="tooltip"<%= (instance.description_mode == 'tooltip' || instance.tooltip_description ) ? ' selected' : '' %>><?php _e( 'Tooltip', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
33
  </select>
34
  </p>
35
  <p class="happyforms-placeholder-option" style="display: <%= ( 'as_placeholder' !== instance.label_placement ) ? 'block' : 'none' %>">
36
+ <label for="<%= instance.id %>_placeholder"><?php _e( 'Placeholder', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
37
  <input type="text" id="<%= instance.id %>_placeholder" class="widefat title" value="<%= instance.placeholder %>" data-bind="placeholder" />
38
  </p>
39
 
41
 
42
  <p>
43
  <label>
44
+ <input type="checkbox" class="checkbox" value="1" <% if ( instance.required ) { %>checked="checked"<% } %> data-bind="required" /> <?php _e( 'This is required', HAPPYFORMS_TEXT_DOMAIN ); ?>
45
  </label>
46
  </p>
47
 
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">
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">
68
+ <option value="full"<%= (instance.width == 'full') ? ' selected' : '' %>><?php _e( 'Full', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
69
+ <option value="half"<%= (instance.width == 'half') ? ' selected' : '' %>><?php _e( 'Half', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
70
+ <option value="third"<%= (instance.width == 'third') ? ' selected' : '' %>><?php _e( 'Third', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
71
+ <option value="auto"<%= (instance.width == 'auto') ? ' selected' : '' %>><?php _e( 'Auto', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
72
  </select>
73
  </p>
74
  <p class="width-options" style="display: none">
75
  <label>
76
+ <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="width" /> <?php _e( 'Apply to all parts', HAPPYFORMS_TEXT_DOMAIN ); ?>
77
  </label>
78
  </p>
79
 
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>
core/templates/parts/customize-number.php CHANGED
@@ -1,39 +1,39 @@
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' ); ?></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' ); ?></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' ); ?></option>
11
- <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', 'happyforms' ); ?></option>
12
- <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', 'happyforms' ); ?></option>
13
- <option value="inside"<%= (instance.label_placement == 'inside') ? ' selected' : '' %>><?php _e( 'Inside input', 'happyforms' ); ?></option>
14
- <option value="as_placeholder"<%= (instance.label_placement == 'as_placeholder') ? ' selected' : '' %>><?php _e( 'Display as placeholder', 'happyforms' ); ?></option>
15
- <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', 'happyforms' ); ?></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' ); ?>
21
  </label>
22
  </p>
23
  <p>
24
- <label for="<%= instance.id %>_description"><?php _e( 'Description', 'happyforms' ); ?></label>
25
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
26
  </p>
27
  <p class="happyforms-description-options" style="display: <%= (instance.description != '') ? 'block' : 'none' %>">
28
- <label for="<%= instance.id %>_description_mode"><?php _e( 'Description appearance', 'happyforms' ); ?></label>
29
  <select id="<%= instance.id %>_description_mode" data-bind="description_mode">
30
- <option value=""><?php _e( 'Standard', 'happyforms' ); ?></option>
31
- <option value="focus-reveal"<%= (instance.description_mode == 'focus-reveal') ? ' selected' : '' %>><?php _e( 'Reveal on focus', 'happyforms' ); ?></option>
32
- <option value="tooltip"<%= (instance.description_mode == 'tooltip' || instance.tooltip_description ) ? ' selected' : '' %>><?php _e( 'Tooltip', 'happyforms' ); ?></option>
33
  </select>
34
  </p>
35
  <p class="happyforms-placeholder-option" style="display: <%= ( 'as_placeholder' !== instance.label_placement ) ? 'block' : 'none' %>">
36
- <label for="<%= instance.id %>_placeholder"><?php _e( 'Placeholder', 'happyforms' ); ?></label>
37
  <input type="text" id="<%= instance.id %>_placeholder" class="widefat title" value="<%= instance.placeholder %>" data-bind="placeholder" />
38
  </p>
39
 
@@ -41,17 +41,17 @@
41
 
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' ); ?></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' ); ?></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>
53
  <label>
54
- <input type="checkbox" class="checkbox" value="1" <% if ( instance.required ) { %>checked="checked"<% } %> data-bind="required" /> <?php _e( 'This is required', 'happyforms' ); ?>
55
  </label>
56
  </p>
57
 
@@ -62,50 +62,50 @@
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' ); ?>
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' ); ?></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' ); ?></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>
78
  <div class="mask-wrapper number-options number-options--numeric" style="display: <%= (instance.masked == 1) ? 'block' : 'none' %>">
79
  <p>
80
- <label for="<%= instance.id %>_mask_numeric_prefix"><?php _e( 'Prefix', 'happyforms' ); ?></label>
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' ); ?></label>
86
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
87
- <option value="full"<%= (instance.width == 'full') ? ' selected' : '' %>><?php _e( 'Full', 'happyforms' ); ?></option>
88
- <option value="half"<%= (instance.width == 'half') ? ' selected' : '' %>><?php _e( 'Half', 'happyforms' ); ?></option>
89
- <option value="third"<%= (instance.width == 'third') ? ' selected' : '' %>><?php _e( 'Third', 'happyforms' ); ?></option>
90
- <option value="auto"<%= (instance.width == 'auto') ? ' selected' : '' %>><?php _e( 'Auto', 'happyforms' ); ?></option>
91
  </select>
92
  </p>
93
  <p class="width-options" style="display: none">
94
  <label>
95
- <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="width" /> <?php _e( 'Apply to all parts', 'happyforms' ); ?>
96
  </label>
97
  </p>
98
  <p>
99
- <label for="<%= instance.id %>_css_class"><?php _e( 'Custom CSS class', 'happyforms' ); ?></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' ); ?>
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' ); ?></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
 
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>
26
  </p>
27
  <p class="happyforms-description-options" style="display: <%= (instance.description != '') ? 'block' : 'none' %>">
28
+ <label for="<%= instance.id %>_description_mode"><?php _e( 'Description appearance', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
29
  <select id="<%= instance.id %>_description_mode" data-bind="description_mode">
30
+ <option value=""><?php _e( 'Standard', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
31
+ <option value="focus-reveal"<%= (instance.description_mode == 'focus-reveal') ? ' selected' : '' %>><?php _e( 'Reveal on focus', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
32
+ <option value="tooltip"<%= (instance.description_mode == 'tooltip' || instance.tooltip_description ) ? ' selected' : '' %>><?php _e( 'Tooltip', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
33
  </select>
34
  </p>
35
  <p class="happyforms-placeholder-option" style="display: <%= ( 'as_placeholder' !== instance.label_placement ) ? 'block' : 'none' %>">
36
+ <label for="<%= instance.id %>_placeholder"><?php _e( 'Placeholder', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
37
  <input type="text" id="<%= instance.id %>_placeholder" class="widefat title" value="<%= instance.placeholder %>" data-bind="placeholder" />
38
  </p>
39
 
41
 
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>
53
  <label>
54
+ <input type="checkbox" class="checkbox" value="1" <% if ( instance.required ) { %>checked="checked"<% } %> data-bind="required" /> <?php _e( 'This is required', HAPPYFORMS_TEXT_DOMAIN ); ?>
55
  </label>
56
  </p>
57
 
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>
78
  <div class="mask-wrapper number-options number-options--numeric" style="display: <%= (instance.masked == 1) ? 'block' : 'none' %>">
79
  <p>
80
+ <label for="<%= instance.id %>_mask_numeric_prefix"><?php _e( 'Prefix', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
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">
87
+ <option value="full"<%= (instance.width == 'full') ? ' selected' : '' %>><?php _e( 'Full', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
88
+ <option value="half"<%= (instance.width == 'half') ? ' selected' : '' %>><?php _e( 'Half', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
89
+ <option value="third"<%= (instance.width == 'third') ? ' selected' : '' %>><?php _e( 'Third', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
90
+ <option value="auto"<%= (instance.width == 'auto') ? ' selected' : '' %>><?php _e( 'Auto', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
91
  </select>
92
  </p>
93
  <p class="width-options" style="display: none">
94
  <label>
95
+ <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="width" /> <?php _e( 'Apply to all parts', HAPPYFORMS_TEXT_DOMAIN ); ?>
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
 
core/templates/parts/customize-radio.php CHANGED
@@ -1,32 +1,32 @@
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' ); ?></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' ); ?></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' ); ?></option>
11
- <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', 'happyforms' ); ?></option>
12
- <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', 'happyforms' ); ?></option>
13
- <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', 'happyforms' ); ?></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' ); ?>
19
  </label>
20
  </p>
21
  <p>
22
- <label for="<%= instance.id %>_description"><?php _e( 'Description', 'happyforms' ); ?></label>
23
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
24
  </p>
25
  <p class="happyforms-description-options" style="display: <%= (instance.description != '') ? 'block' : 'none' %>">
26
- <label for="<%= instance.id %>_description_mode"><?php _e( 'Description appearance', 'happyforms' ); ?></label>
27
  <select id="<%= instance.id %>_description_mode" data-bind="description_mode">
28
- <option value=""><?php _e( 'Standard', 'happyforms' ); ?></option>
29
- <option value="tooltip"<%= (instance.description_mode == 'tooltip' || instance.tooltip_description ) ? ' selected' : '' %>><?php _e( 'Tooltip', 'happyforms' ); ?></option>
30
  </select>
31
  </p>
32
 
@@ -34,28 +34,28 @@
34
 
35
  <div class="options">
36
  <ul class="option-list"></ul>
37
- <h3><?php _e( 'Choices', 'happyforms' ); ?></h3>
38
- <p class="no-options description"><?php _e( 'No choices added yet. Add one by clicking <i>Add Choice</i> below.', 'happyforms' ); ?></p>
39
  </div>
40
  <div class="options-import">
41
- <h3><?php _e( 'Choices', 'happyforms' ); ?></h3>
42
  <textarea class="option-import-area" cols="30" rows="10" placeholder="<?php _e( 'Type or paste your choices here, adding each on a new line.' ); ?>"></textarea>
43
  </div>
44
  <p class="links mode-manual">
45
- <a href="#" class="button add-option"><?php _e( 'Add choice', 'happyforms' ); ?></a>
46
  <span class="centered">
47
- <a href="#" class="import-options"><?php _e( 'Or, bulk add choices', 'happyforms' ); ?></a>
48
  </span>
49
  </p>
50
  <p class="links mode-import">
51
- <a href="#" class="button import-option"><?php _e( 'Add choices', 'happyforms' ); ?></a>
52
  <span class="centered">
53
- <a href="#" class="add-options"><?php _e( 'Cancel', 'happyforms' ); ?></a>
54
  </span>
55
  </p>
56
  <p>
57
  <label>
58
- <input type="checkbox" class="checkbox" value="1" <% if ( instance.required ) { %>checked="checked"<% } %> data-bind="required" /> <?php _e( 'This is required', 'happyforms' ); ?>
59
  </label>
60
  </p>
61
 
@@ -65,10 +65,10 @@
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' ); ?></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' ); ?></option>
71
- <option value="block"<%= (instance.display_type == 'block') ? ' selected' : '' %>><?php _e( 'Vertical', 'happyforms' ); ?></option>
72
  </select>
73
  </p>
74
  <p class="part-options-width-setting">
@@ -81,21 +81,21 @@
81
  </select>
82
  </p>
83
  <p>
84
- <label for="<%= instance.id %>_width"><?php _e( 'Width', 'happyforms' ); ?></label>
85
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
86
- <option value="full"<%= (instance.width == 'full') ? ' selected' : '' %>><?php _e( 'Full', 'happyforms' ); ?></option>
87
- <option value="half"<%= (instance.width == 'half') ? ' selected' : '' %>><?php _e( 'Half', 'happyforms' ); ?></option>
88
- <option value="third"<%= (instance.width == 'third') ? ' selected' : '' %>><?php _e( 'Third', 'happyforms' ); ?></option>
89
- <option value="auto"<%= (instance.width == 'auto') ? ' selected' : '' %>><?php _e( 'Auto', 'happyforms' ); ?></option>
90
  </select>
91
  </p>
92
  <p class="width-options" style="display: none">
93
  <label>
94
- <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="width" /> <?php _e( 'Apply to all parts', 'happyforms' ); ?>
95
  </label>
96
  </p>
97
  <p>
98
- <label for="<%= instance.id %>_css_class"><?php _e( 'Custom CSS class', 'happyforms' ); ?></label>
99
  <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
100
  </p>
101
 
@@ -115,21 +115,21 @@
115
  <div class="happyforms-part-item-body">
116
  <div class="happyforms-part-item-handle"></div>
117
  <label>
118
- <?php _e( 'Label', 'happyforms' ); ?>
119
  <input type="text" class="widefat" name="label" value="<%= label %>" data-option-attribute="label">
120
  </label>
121
  <div class="happyforms-part-item-advanced">
122
  <label class="happyforms-part-item-description">
123
- <?php _e( 'Description', 'happyforms' ); ?>
124
  <input type="text" class="widefat" name="description" value="<%= (typeof description !== 'undefined') ? description : '' %>" data-option-attribute="description">
125
  </label>
126
  <label>
127
- <input type="checkbox" name="is_default" value="1" class="default-option-switch"<% if (is_default == 1) { %> checked="checked"<% } %>> <?php _e( 'Make this option default', 'happyforms' ); ?>
128
  </label>
129
  </div>
130
  <div class="option-actions">
131
- <a href="#" class="delete-option"><?php _e( 'Delete', 'happyforms' ); ?></a> |
132
- <a href="#" class="advanced-option"><?php _e( 'Advanced', 'happyforms' ); ?></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( '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>
24
  </p>
25
  <p class="happyforms-description-options" style="display: <%= (instance.description != '') ? 'block' : 'none' %>">
26
+ <label for="<%= instance.id %>_description_mode"><?php _e( 'Description appearance', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
27
  <select id="<%= instance.id %>_description_mode" data-bind="description_mode">
28
+ <option value=""><?php _e( 'Standard', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
29
+ <option value="tooltip"<%= (instance.description_mode == 'tooltip' || instance.tooltip_description ) ? ' selected' : '' %>><?php _e( 'Tooltip', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
30
  </select>
31
  </p>
32
 
34
 
35
  <div class="options">
36
  <ul class="option-list"></ul>
37
+ <h3><?php _e( 'Choices', HAPPYFORMS_TEXT_DOMAIN ); ?></h3>
38
+ <p class="no-options description"><?php _e( 'No choices added yet. Add one by clicking <i>Add Choice</i> below.', HAPPYFORMS_TEXT_DOMAIN ); ?></p>
39
  </div>
40
  <div class="options-import">
41
+ <h3><?php _e( 'Choices', HAPPYFORMS_TEXT_DOMAIN ); ?></h3>
42
  <textarea class="option-import-area" cols="30" rows="10" placeholder="<?php _e( 'Type or paste your choices here, adding each on a new line.' ); ?>"></textarea>
43
  </div>
44
  <p class="links mode-manual">
45
+ <a href="#" class="button add-option"><?php _e( 'Add choice', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
46
  <span class="centered">
47
+ <a href="#" class="import-options"><?php _e( 'Or, bulk add choices', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
48
  </span>
49
  </p>
50
  <p class="links mode-import">
51
+ <a href="#" class="button import-option"><?php _e( 'Add choices', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
52
  <span class="centered">
53
+ <a href="#" class="add-options"><?php _e( 'Cancel', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
54
  </span>
55
  </p>
56
  <p>
57
  <label>
58
+ <input type="checkbox" class="checkbox" value="1" <% if ( instance.required ) { %>checked="checked"<% } %> data-bind="required" /> <?php _e( 'This is required', HAPPYFORMS_TEXT_DOMAIN ); ?>
59
  </label>
60
  </p>
61
 
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>
72
  </select>
73
  </p>
74
  <p class="part-options-width-setting">
81
  </select>
82
  </p>
83
  <p>
84
+ <label for="<%= instance.id %>_width"><?php _e( 'Width', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
85
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
86
+ <option value="full"<%= (instance.width == 'full') ? ' selected' : '' %>><?php _e( 'Full', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
87
+ <option value="half"<%= (instance.width == 'half') ? ' selected' : '' %>><?php _e( 'Half', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
88
+ <option value="third"<%= (instance.width == 'third') ? ' selected' : '' %>><?php _e( 'Third', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
89
+ <option value="auto"<%= (instance.width == 'auto') ? ' selected' : '' %>><?php _e( 'Auto', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
90
  </select>
91
  </p>
92
  <p class="width-options" style="display: none">
93
  <label>
94
+ <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="width" /> <?php _e( 'Apply to all parts', HAPPYFORMS_TEXT_DOMAIN ); ?>
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
 
115
  <div class="happyforms-part-item-body">
116
  <div class="happyforms-part-item-handle"></div>
117
  <label>
118
+ <?php _e( 'Label', HAPPYFORMS_TEXT_DOMAIN ); ?>
119
  <input type="text" class="widefat" name="label" value="<%= label %>" data-option-attribute="label">
120
  </label>
121
  <div class="happyforms-part-item-advanced">
122
  <label class="happyforms-part-item-description">
123
+ <?php _e( 'Description', HAPPYFORMS_TEXT_DOMAIN ); ?>
124
  <input type="text" class="widefat" name="description" value="<%= (typeof description !== 'undefined') ? description : '' %>" data-option-attribute="description">
125
  </label>
126
  <label>
127
+ <input type="checkbox" name="is_default" value="1" class="default-option-switch"<% if (is_default == 1) { %> checked="checked"<% } %>> <?php _e( 'Make this option default', HAPPYFORMS_TEXT_DOMAIN ); ?>
128
  </label>
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>
core/templates/parts/customize-select.php CHANGED
@@ -1,37 +1,37 @@
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' ); ?></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' ); ?></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' ); ?></option>
11
- <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', 'happyforms' ); ?></option>
12
- <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', 'happyforms' ); ?></option>
13
- <option value="as_placeholder"<%= (instance.label_placement == 'as_placeholder') ? ' selected' : '' %>><?php _e( 'Display as placeholder', 'happyforms' ); ?></option>
14
- <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', 'happyforms' ); ?></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' ); ?>
20
  </label>
21
  </p>
22
  <p>
23
- <label for="<%= instance.id %>_description"><?php _e( 'Description', 'happyforms' ); ?></label>
24
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
25
  </p>
26
  <p class="happyforms-description-options" style="display: <%= (instance.description != '') ? 'block' : 'none' %>">
27
- <label for="<%= instance.id %>_description_mode"><?php _e( 'Description appearance', 'happyforms' ); ?></label>
28
  <select id="<%= instance.id %>_description_mode" data-bind="description_mode">
29
- <option value=""><?php _e( 'Standard', 'happyforms' ); ?></option>
30
- <option value="tooltip"<%= (instance.description_mode == 'tooltip' || instance.tooltip_description ) ? ' selected' : '' %>><?php _e( 'Tooltip', 'happyforms' ); ?></option>
31
  </select>
32
  </p>
33
  <p class="happyforms-placeholder-option" style="display: <%= ( 'as_placeholder' !== instance.label_placement ) ? 'block' : 'none' %>">
34
- <label for="<%= instance.id %>_placeholder"><?php _e( 'Placeholder', 'happyforms' ); ?></label>
35
  <input type="text" id="<%= instance.id %>_placeholder" class="widefat title" value="<%= instance.placeholder %>" data-bind="placeholder" />
36
  </p>
37
 
@@ -39,28 +39,28 @@
39
 
40
  <div class="options">
41
  <ul class="option-list"></ul>
42
- <h3><?php _e( 'Choices', 'happyforms' ); ?></h3>
43
- <p class="no-options description"><?php _e( 'No choices added yet. Add one by clicking <i>Add Choice</i> below.', 'happyforms' ); ?></p>
44
  </div>
45
  <div class="options-import">
46
- <h3><?php _e( 'Choices', 'happyforms' ); ?></h3>
47
  <textarea class="option-import-area" cols="30" rows="10" placeholder="<?php _e( 'Type or paste your choices here, adding each on a new line.' ); ?>"></textarea>
48
  </div>
49
  <p class="links mode-manual">
50
- <a href="#" class="button add-option"><?php _e( 'Add choice', 'happyforms' ); ?></a>
51
  <span class="centered">
52
- <a href="#" class="import-options"><?php _e( 'Or, bulk add choices', 'happyforms' ); ?></a>
53
  </span>
54
  </p>
55
  <p class="links mode-import">
56
- <a href="#" class="button import-option"><?php _e( 'Add choices', 'happyforms' ); ?></a>
57
  <span class="centered">
58
- <a href="#" class="add-options"><?php _e( 'Cancel', 'happyforms' ); ?></a>
59
  </span>
60
  </p>
61
  <p>
62
  <label>
63
- <input type="checkbox" class="checkbox" value="1" <% if ( instance.required ) { %>checked="checked"<% } %> data-bind="required" /> <?php _e( 'This is required', 'happyforms' ); ?>
64
  </label>
65
  </p>
66
 
@@ -71,28 +71,28 @@
71
 
72
  <p>
73
  <label>
74
- <input type="checkbox" class="checkbox" value="1" <% if ( instance.allow_search ) { %>checked="checked"<% } %> data-bind="allow_search" /> <?php _e( 'Make searchable', 'happyforms' ); ?>
75
  </label>
76
  </p>
77
  <p>
78
- <label for="<%= instance.id %>_width"><?php _e( 'Width', 'happyforms' ); ?></label>
79
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
80
- <option value="full"<%= (instance.width == 'full') ? ' selected' : '' %>><?php _e( 'Full', 'happyforms' ); ?></option>
81
- <option value="half"<%= (instance.width == 'half') ? ' selected' : '' %>><?php _e( 'Half', 'happyforms' ); ?></option>
82
- <option value="third"<%= (instance.width == 'third') ? ' selected' : '' %>><?php _e( 'Third', 'happyforms' ); ?></option>
83
- <option value="auto"<%= (instance.width == 'auto') ? ' selected' : '' %>><?php _e( 'Auto', 'happyforms' ); ?></option>
84
  </select>
85
  </p>
86
  <p class="width-options" style="display: none">
87
  <label>
88
- <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="width" /> <?php _e( 'Apply to all parts', 'happyforms' ); ?>
89
  </label>
90
  </p>
91
 
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' ); ?></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>
@@ -110,17 +110,17 @@
110
  <div class="happyforms-part-item-body">
111
  <div class="happyforms-part-item-handle"></div>
112
  <label>
113
- <?php _e( 'Label', 'happyforms' ); ?>
114
  <input type="text" class="widefat" name="label" value="<%= label %>" data-option-attribute="label">
115
  </label>
116
  <div class="happyforms-part-item-advanced">
117
  <label>
118
- <input type="checkbox" name="is_default" value="1" class="default-option-switch"<% if (is_default == 1) { %> checked="checked"<% } %>> <?php _e( 'Make this option default', 'happyforms' ); ?>
119
  </label>
120
  </div>
121
  <div class="option-actions">
122
- <a href="#" class="delete-option"><?php _e( 'Delete', 'happyforms' ); ?></a> |
123
- <a href="#" class="advanced-option"><?php _e( 'Advanced', 'happyforms' ); ?></a>
124
  </div>
125
  </div>
126
  </li>
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>
25
  </p>
26
  <p class="happyforms-description-options" style="display: <%= (instance.description != '') ? 'block' : 'none' %>">
27
+ <label for="<%= instance.id %>_description_mode"><?php _e( 'Description appearance', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
28
  <select id="<%= instance.id %>_description_mode" data-bind="description_mode">
29
+ <option value=""><?php _e( 'Standard', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
30
+ <option value="tooltip"<%= (instance.description_mode == 'tooltip' || instance.tooltip_description ) ? ' selected' : '' %>><?php _e( 'Tooltip', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
31
  </select>
32
  </p>
33
  <p class="happyforms-placeholder-option" style="display: <%= ( 'as_placeholder' !== instance.label_placement ) ? 'block' : 'none' %>">
34
+ <label for="<%= instance.id %>_placeholder"><?php _e( 'Placeholder', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
35
  <input type="text" id="<%= instance.id %>_placeholder" class="widefat title" value="<%= instance.placeholder %>" data-bind="placeholder" />
36
  </p>
37
 
39
 
40
  <div class="options">
41
  <ul class="option-list"></ul>
42
+ <h3><?php _e( 'Choices', HAPPYFORMS_TEXT_DOMAIN ); ?></h3>
43
+ <p class="no-options description"><?php _e( 'No choices added yet. Add one by clicking <i>Add Choice</i> below.', HAPPYFORMS_TEXT_DOMAIN ); ?></p>
44
  </div>
45
  <div class="options-import">
46
+ <h3><?php _e( 'Choices', HAPPYFORMS_TEXT_DOMAIN ); ?></h3>
47
  <textarea class="option-import-area" cols="30" rows="10" placeholder="<?php _e( 'Type or paste your choices here, adding each on a new line.' ); ?>"></textarea>
48
  </div>
49
  <p class="links mode-manual">
50
+ <a href="#" class="button add-option"><?php _e( 'Add choice', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
51
  <span class="centered">
52
+ <a href="#" class="import-options"><?php _e( 'Or, bulk add choices', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
53
  </span>
54
  </p>
55
  <p class="links mode-import">
56
+ <a href="#" class="button import-option"><?php _e( 'Add choices', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
57
  <span class="centered">
58
+ <a href="#" class="add-options"><?php _e( 'Cancel', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
59
  </span>
60
  </p>
61
  <p>
62
  <label>
63
+ <input type="checkbox" class="checkbox" value="1" <% if ( instance.required ) { %>checked="checked"<% } %> data-bind="required" /> <?php _e( 'This is required', HAPPYFORMS_TEXT_DOMAIN ); ?>
64
  </label>
65
  </p>
66
 
71
 
72
  <p>
73
  <label>
74
+ <input type="checkbox" class="checkbox" value="1" <% if ( instance.allow_search ) { %>checked="checked"<% } %> data-bind="allow_search" /> <?php _e( 'Make searchable', HAPPYFORMS_TEXT_DOMAIN ); ?>
75
  </label>
76
  </p>
77
  <p>
78
+ <label for="<%= instance.id %>_width"><?php _e( 'Width', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
79
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
80
+ <option value="full"<%= (instance.width == 'full') ? ' selected' : '' %>><?php _e( 'Full', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
81
+ <option value="half"<%= (instance.width == 'half') ? ' selected' : '' %>><?php _e( 'Half', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
82
+ <option value="third"<%= (instance.width == 'third') ? ' selected' : '' %>><?php _e( 'Third', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
83
+ <option value="auto"<%= (instance.width == 'auto') ? ' selected' : '' %>><?php _e( 'Auto', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
84
  </select>
85
  </p>
86
  <p class="width-options" style="display: none">
87
  <label>
88
+ <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="width" /> <?php _e( 'Apply to all parts', HAPPYFORMS_TEXT_DOMAIN ); ?>
89
  </label>
90
  </p>
91
 
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>
110
  <div class="happyforms-part-item-body">
111
  <div class="happyforms-part-item-handle"></div>
112
  <label>
113
+ <?php _e( 'Label', HAPPYFORMS_TEXT_DOMAIN ); ?>
114
  <input type="text" class="widefat" name="label" value="<%= label %>" data-option-attribute="label">
115
  </label>
116
  <div class="happyforms-part-item-advanced">
117
  <label>
118
+ <input type="checkbox" name="is_default" value="1" class="default-option-switch"<% if (is_default == 1) { %> checked="checked"<% } %>> <?php _e( 'Make this option default', HAPPYFORMS_TEXT_DOMAIN ); ?>
119
  </label>
120
  </div>
121
  <div class="option-actions">
122
+ <a href="#" class="delete-option"><?php _e( 'Delete', HAPPYFORMS_TEXT_DOMAIN ); ?></a> |
123
+ <a href="#" class="advanced-option"><?php _e( 'Advanced', HAPPYFORMS_TEXT_DOMAIN ); ?></a>
124
  </div>
125
  </div>
126
  </li>
core/templates/parts/customize-single-line-text.php CHANGED
@@ -1,39 +1,39 @@
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' ); ?></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' ); ?></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' ); ?></option>
11
- <option value="left"<%= (instance.label_placement == 'left') ? ' selected' : '' %>><?php _e( 'Left', 'happyforms' ); ?></option>
12
- <option value="below"<%= (instance.label_placement == 'below') ? ' selected' : '' %>><?php _e( 'Below', 'happyforms' ); ?></option>
13
- <option value="inside"<%= (instance.label_placement == 'inside') ? ' selected' : '' %>><?php _e( 'Inside input', 'happyforms' ); ?></option>
14
- <option value="as_placeholder"<%= (instance.label_placement == 'as_placeholder') ? ' selected' : '' %>><?php _e( 'Display as placeholder', 'happyforms' ); ?></option>
15
- <option value="hidden"<%= (instance.label_placement == 'hidden') ? ' selected' : '' %>><?php _e( 'Hidden', 'happyforms' ); ?></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' ); ?>
21
  </label>
22
  </p>
23
  <p>
24
- <label for="<%= instance.id %>_description"><?php _e( 'Description', 'happyforms' ); ?></label>
25
  <textarea id="<%= instance.id %>_description" data-bind="description"><%= instance.description %></textarea>
26
  </p>
27
  <p class="happyforms-description-options" style="display: <%= (instance.description != '') ? 'block' : 'none' %>">
28
- <label for="<%= instance.id %>_description_mode"><?php _e( 'Description appearance', 'happyforms' ); ?></label>
29
  <select id="<%= instance.id %>_description_mode" data-bind="description_mode">
30
- <option value=""><?php _e( 'Standard', 'happyforms' ); ?></option>
31
- <option value="focus-reveal"<%= (instance.description_mode == 'focus-reveal') ? ' selected' : '' %>><?php _e( 'Reveal on focus', 'happyforms' ); ?></option>
32
- <option value="tooltip"<%= (instance.description_mode == 'tooltip' || instance.tooltip_description ) ? ' selected' : '' %>><?php _e( 'Tooltip', 'happyforms' ); ?></option>
33
  </select>
34
  </p>
35
  <p class="happyforms-placeholder-option" style="display: <%= ( 'as_placeholder' !== instance.label_placement ) ? 'block' : 'none' %>">
36
- <label for="<%= instance.id %>_placeholder"><?php _e( 'Placeholder', 'happyforms' ); ?></label>
37
  <input type="text" id="<%= instance.id %>_placeholder" class="widefat title" value="<%= instance.placeholder %>" data-bind="placeholder" />
38
  </p>
39
 
@@ -41,7 +41,7 @@
41
 
42
  <p>
43
  <label>
44
- <input type="checkbox" class="checkbox" value="1" <% if ( instance.required ) { %>checked="checked"<% } %> data-bind="required" /> <?php _e( 'This is required', 'happyforms' ); ?>
45
  </label>
46
  </p>
47
 
@@ -52,28 +52,28 @@
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' ); ?>
56
  </label>
57
  </p>
58
  <p>
59
- <label for="<%= instance.id %>_width"><?php _e( 'Width', 'happyforms' ); ?></label>
60
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
61
- <option value="full"<%= (instance.width == 'full') ? ' selected' : '' %>><?php _e( 'Full', 'happyforms' ); ?></option>
62
- <option value="half"<%= (instance.width == 'half') ? ' selected' : '' %>><?php _e( 'Half', 'happyforms' ); ?></option>
63
- <option value="third"<%= (instance.width == 'third') ? ' selected' : '' %>><?php _e( 'Third', 'happyforms' ); ?></option>
64
- <option value="auto"<%= (instance.width == 'auto') ? ' selected' : '' %>><?php _e( 'Auto', 'happyforms' ); ?></option>
65
  </select>
66
  </p>
67
  <p class="width-options" style="display: none">
68
  <label>
69
- <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="width" /> <?php _e( 'Apply to all parts', 'happyforms' ); ?>
70
  </label>
71
  </p>
72
 
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' ); ?></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( '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>
26
  </p>
27
  <p class="happyforms-description-options" style="display: <%= (instance.description != '') ? 'block' : 'none' %>">
28
+ <label for="<%= instance.id %>_description_mode"><?php _e( 'Description appearance', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
29
  <select id="<%= instance.id %>_description_mode" data-bind="description_mode">
30
+ <option value=""><?php _e( 'Standard', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
31
+ <option value="focus-reveal"<%= (instance.description_mode == 'focus-reveal') ? ' selected' : '' %>><?php _e( 'Reveal on focus', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
32
+ <option value="tooltip"<%= (instance.description_mode == 'tooltip' || instance.tooltip_description ) ? ' selected' : '' %>><?php _e( 'Tooltip', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
33
  </select>
34
  </p>
35
  <p class="happyforms-placeholder-option" style="display: <%= ( 'as_placeholder' !== instance.label_placement ) ? 'block' : 'none' %>">
36
+ <label for="<%= instance.id %>_placeholder"><?php _e( 'Placeholder', HAPPYFORMS_TEXT_DOMAIN ); ?></label>
37
  <input type="text" id="<%= instance.id %>_placeholder" class="widefat title" value="<%= instance.placeholder %>" data-bind="placeholder" />
38
  </p>
39
 
41
 
42
  <p>
43
  <label>
44
+ <input type="checkbox" class="checkbox" value="1" <% if ( instance.required ) { %>checked="checked"<% } %> data-bind="required" /> <?php _e( 'This is required', HAPPYFORMS_TEXT_DOMAIN ); ?>
45
  </label>
46
  </p>
47
 
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">
61
+ <option value="full"<%= (instance.width == 'full') ? ' selected' : '' %>><?php _e( 'Full', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
62
+ <option value="half"<%= (instance.width == 'half') ? ' selected' : '' %>><?php _e( 'Half', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
63
+ <option value="third"<%= (instance.width == 'third') ? ' selected' : '' %>><?php _e( 'Third', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
64
+ <option value="auto"<%= (instance.width == 'auto') ? ' selected' : '' %>><?php _e( 'Auto', HAPPYFORMS_TEXT_DOMAIN ); ?></option>
65
  </select>
66
  </p>
67
  <p class="width-options" style="display: none">
68
  <label>
69
+ <input type="checkbox" class="checkbox apply-all-check" value="" data-apply-to="width" /> <?php _e( 'Apply to all parts', HAPPYFORMS_TEXT_DOMAIN ); ?>
70
  </label>
71
  </p>
72
 
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>
core/templates/parts/frontend-checkbox.php CHANGED
@@ -10,7 +10,7 @@
10
  <label class="option-label">
11
  <input type="checkbox" class="happyforms-visuallyhidden happyforms-select-all">
12
  <span class="checkmark"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24"><path fill="currentColor" d="M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z"/></svg></span>
13
- <span class="label"><?php _e( 'Select all', 'happyforms' ); ?></span>
14
  </label>
15
  </div>
16
  <?php endif; ?>
10
  <label class="option-label">
11
  <input type="checkbox" class="happyforms-visuallyhidden happyforms-select-all">
12
  <span class="checkmark"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24"><path fill="currentColor" d="M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z"/></svg></span>
13
+ <span class="label"><?php _e( 'Select all', HAPPYFORMS_TEXT_DOMAIN ); ?></span>
14
  </label>
15
  </div>
16
  <?php endif; ?>
core/templates/preview-form-pencil.php CHANGED
@@ -1,5 +1,5 @@
1
  <script type="text/template" id="happyforms-pencil-template">
2
  <span class="customize-partial-edit-shortcut happyforms-partial-edit-shortcut">
3
- <button aria-label="<?php _e( 'Click to edit this part.', 'happyforms' ); ?>" title="<?php _e( 'Click to edit this part.', 'happyforms' ); ?>" class="customize-partial-edit-shortcut-button happyforms-edit-pencil"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M13.89 3.39l2.71 2.72c.46.46.42 1.24.03 1.64l-8.01 8.02-5.56 1.16 1.16-5.58s7.6-7.63 7.99-8.03c.39-.39 1.22-.39 1.68.07zm-2.73 2.79l-5.59 5.61 1.11 1.11 5.54-5.65zm-2.97 8.23l5.58-5.6-1.07-1.08-5.59 5.6z"></path></svg></button>
4
  </span>
5
  </script>
1
  <script type="text/template" id="happyforms-pencil-template">
2
  <span class="customize-partial-edit-shortcut happyforms-partial-edit-shortcut">
3
+ <button aria-label="<?php _e( 'Click to edit this part.', HAPPYFORMS_TEXT_DOMAIN ); ?>" title="<?php _e( 'Click to edit this part.', HAPPYFORMS_TEXT_DOMAIN ); ?>" class="customize-partial-edit-shortcut-button happyforms-edit-pencil"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M13.89 3.39l2.71 2.72c.46.46.42 1.24.03 1.64l-8.01 8.02-5.56 1.16 1.16-5.58s7.6-7.63 7.99-8.03c.39-.39 1.22-.39 1.68.07zm-2.73 2.79l-5.59 5.61 1.11 1.11 5.54-5.65zm-2.97 8.23l5.58-5.6-1.07-1.08-5.59 5.6z"></path></svg></button>
4
  </span>
5
  </script>
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.21
9
  * Author URI: https://thethemefoundry.com
10
  * Upgrade URI: https://thethemefoundry.com
11
  */
@@ -13,7 +13,8 @@
13
  /**
14
  * The current version of the plugin.
15
  */
16
- define( 'HAPPYFORMS_VERSION', '1.8.21' );
 
17
 
18
  if ( ! function_exists( 'happyforms_plugin_file' ) ):
19
  /**
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
  /**
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' ) ):
20
  /**
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.21\n"
6
  "Report-Msgid-Bugs-To: https://thethemefoundry.com/support/\n"
7
- "POT-Creation-Date: 2019-11-21 13:10:04+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -176,7 +176,7 @@ msgid "Search Forms"
176
  msgstr ""
177
 
178
  #: core/classes/class-form-controller.php:82
179
- msgid "No form found"
180
  msgstr ""
181
 
182
  #: core/classes/class-form-controller.php:83
@@ -913,7 +913,7 @@ msgstr ""
913
  #: core/classes/class-wp-customize-form-manager.php:174
914
  msgid ""
915
  "Still have questions? Head over to our <a href=\"%s\" "
916
- "target=\"_blank\">Help Guide</a>."
917
  msgstr ""
918
 
919
  #: core/classes/class-wp-customize-form-manager.php:181
@@ -942,7 +942,7 @@ msgstr ""
942
  msgid "Choices"
943
  msgstr ""
944
 
945
- #: core/classes/parts/class-part-checkbox.php:197
946
  msgid "Checkbox values are not valid."
947
  msgstr ""
948
 
@@ -1030,8 +1030,8 @@ msgstr ""
1030
  msgid "For radio buttons allowing one selection."
1031
  msgstr ""
1032
 
1033
- #: core/classes/parts/class-part-radio.php:190
1034
- #: core/classes/parts/class-part-radio.php:196
1035
  msgid "Radio value is not valid."
1036
  msgstr ""
1037
 
@@ -2189,547 +2189,547 @@ msgstr ""
2189
  msgid "Response #%s"
2190
  msgstr ""
2191
 
2192
- #: core/helpers/helper-misc.php:694
2193
  msgid "Afrikaans"
2194
  msgstr ""
2195
 
2196
- #: core/helpers/helper-misc.php:695
2197
  msgid "Akan"
2198
  msgstr ""
2199
 
2200
- #: core/helpers/helper-misc.php:696
2201
  msgid "Albanian"
2202
  msgstr ""
2203
 
2204
- #: core/helpers/helper-misc.php:697
2205
  msgid "Algerian Arabic"
2206
  msgstr ""
2207
 
2208
- #: core/helpers/helper-misc.php:698
2209
  msgid "Amharic"
2210
  msgstr ""
2211
 
2212
- #: core/helpers/helper-misc.php:699
2213
  msgid "Arabic"
2214
  msgstr ""
2215
 
2216
- #: core/helpers/helper-misc.php:700
2217
  msgid "Armenian"
2218
  msgstr ""
2219
 
2220
- #: core/helpers/helper-misc.php:701
2221
  msgid "Aromanian"
2222
  msgstr ""
2223
 
2224
- #: core/helpers/helper-misc.php:702
2225
  msgid "Arpitan"
2226
  msgstr ""
2227
 
2228
- #: core/helpers/helper-misc.php:703
2229
  msgid "Assamese"
2230
  msgstr ""
2231
 
2232
- #: core/helpers/helper-misc.php:704
2233
  msgid "Azerbaijani"
2234
  msgstr ""
2235
 
2236
- #: core/helpers/helper-misc.php:705
2237
  msgid "Balochi Southern"
2238
  msgstr ""
2239
 
2240
- #: core/helpers/helper-misc.php:706
2241
  msgid "Bashkir"
2242
  msgstr ""
2243
 
2244
- #: core/helpers/helper-misc.php:707
2245
  msgid "Basque"
2246
  msgstr ""
2247
 
2248
- #: core/helpers/helper-misc.php:708
2249
  msgid "Belarusian"
2250
  msgstr ""
2251
 
2252
- #: core/helpers/helper-misc.php:709
2253
  msgid "Bengali"
2254
  msgstr ""
2255
 
2256
- #: core/helpers/helper-misc.php:710
2257
  msgid "Bosnian"
2258
  msgstr ""
2259
 
2260
- #: core/helpers/helper-misc.php:711
2261
  msgid "Breton"
2262
  msgstr ""
2263
 
2264
- #: core/helpers/helper-misc.php:712
2265
  msgid "Bulgarian"
2266
  msgstr ""
2267
 
2268
- #: core/helpers/helper-misc.php:713
2269
  msgid "Catalan"
2270
  msgstr ""
2271
 
2272
- #: core/helpers/helper-misc.php:714
2273
  msgid "Cebuano"
2274
  msgstr ""
2275
 
2276
- #: core/helpers/helper-misc.php:715
2277
  msgid "Chinese"
2278
  msgstr ""
2279
 
2280
- #: core/helpers/helper-misc.php:716
2281
  msgid "Corsican"
2282
  msgstr ""
2283
 
2284
- #: core/helpers/helper-misc.php:717
2285
  msgid "Croatian"
2286
  msgstr ""
2287
 
2288
- #: core/helpers/helper-misc.php:718
2289
  msgid "Czech"
2290
  msgstr ""
2291
 
2292
- #: core/helpers/helper-misc.php:719
2293
  msgid "Danish"
2294
  msgstr ""
2295
 
2296
- #: core/helpers/helper-misc.php:720
2297
  msgid "Dhivehi"
2298
  msgstr ""
2299
 
2300
- #: core/helpers/helper-misc.php:721
2301
  msgid "Dutch"
2302
  msgstr ""
2303
 
2304
- #: core/helpers/helper-misc.php:722
2305
  msgid "Dzongkha"
2306
  msgstr ""
2307
 
2308
- #: core/helpers/helper-misc.php:723
2309
  msgid "English"
2310
  msgstr ""
2311
 
2312
- #: core/helpers/helper-misc.php:724
2313
  msgid "Esperanto"
2314
  msgstr ""
2315
 
2316
- #: core/helpers/helper-misc.php:725
2317
  msgid "Estonian"
2318
  msgstr ""
2319
 
2320
- #: core/helpers/helper-misc.php:726
2321
  msgid "Faroese"
2322
  msgstr ""
2323
 
2324
- #: core/helpers/helper-misc.php:727
2325
  msgid "Finnish"
2326
  msgstr ""
2327
 
2328
- #: core/helpers/helper-misc.php:728
2329
  msgid "French"
2330
  msgstr ""
2331
 
2332
- #: core/helpers/helper-misc.php:729
2333
  msgid "Frisian"
2334
  msgstr ""
2335
 
2336
- #: core/helpers/helper-misc.php:730
2337
  msgid "Friulian"
2338
  msgstr ""
2339
 
2340
- #: core/helpers/helper-misc.php:731
2341
  msgid "Fulah"
2342
  msgstr ""
2343
 
2344
- #: core/helpers/helper-misc.php:732
2345
  msgid "Galician"
2346
  msgstr ""
2347
 
2348
- #: core/helpers/helper-misc.php:733
2349
  msgid "Georgian"
2350
  msgstr ""
2351
 
2352
- #: core/helpers/helper-misc.php:734
2353
  msgid "German"
2354
  msgstr ""
2355
 
2356
- #: core/helpers/helper-misc.php:735
2357
  msgid "Greek"
2358
  msgstr ""
2359
 
2360
- #: core/helpers/helper-misc.php:736
2361
  msgid "Greenlandic"
2362
  msgstr ""
2363
 
2364
- #: core/helpers/helper-misc.php:737
2365
  msgid "Guaraní"
2366
  msgstr ""
2367
 
2368
- #: core/helpers/helper-misc.php:738
2369
  msgid "Gujarati"
2370
  msgstr ""
2371
 
2372
- #: core/helpers/helper-misc.php:739
2373
  msgid "Hawaiian"
2374
  msgstr ""
2375
 
2376
- #: core/helpers/helper-misc.php:740
2377
  msgid "Hazaragi"
2378
  msgstr ""
2379
 
2380
- #: core/helpers/helper-misc.php:741
2381
  msgid "Hebrew"
2382
  msgstr ""
2383
 
2384
- #: core/helpers/helper-misc.php:742
2385
  msgid "Hindi"
2386
  msgstr ""
2387
 
2388
- #: core/helpers/helper-misc.php:743
2389
  msgid "Hungarian"
2390
  msgstr ""
2391
 
2392
- #: core/helpers/helper-misc.php:744
2393
  msgid "Icelandic"
2394
  msgstr ""
2395
 
2396
- #: core/helpers/helper-misc.php:745
2397
  msgid "Ido"
2398
  msgstr ""
2399
 
2400
- #: core/helpers/helper-misc.php:746
2401
  msgid "Indonesian"
2402
  msgstr ""
2403
 
2404
- #: core/helpers/helper-misc.php:747
2405
  msgid "Irish"
2406
  msgstr ""
2407
 
2408
- #: core/helpers/helper-misc.php:748
2409
  msgid "Italian"
2410
  msgstr ""
2411
 
2412
- #: core/helpers/helper-misc.php:749
2413
  msgid "Japanese"
2414
  msgstr ""
2415
 
2416
- #: core/helpers/helper-misc.php:750
2417
  msgid "Javanese"
2418
  msgstr ""
2419
 
2420
- #: core/helpers/helper-misc.php:751
2421
  msgid "Kabyle"
2422
  msgstr ""
2423
 
2424
- #: core/helpers/helper-misc.php:752
2425
  msgid "Kannada"
2426
  msgstr ""
2427
 
2428
- #: core/helpers/helper-misc.php:753
2429
  msgid "Kazakh"
2430
  msgstr ""
2431
 
2432
- #: core/helpers/helper-misc.php:754
2433
  msgid "Khmer"
2434
  msgstr ""
2435
 
2436
- #: core/helpers/helper-misc.php:755
2437
  msgid "Kinyarwanda"
2438
  msgstr ""
2439
 
2440
- #: core/helpers/helper-misc.php:756
2441
  msgid "Kirghiz"
2442
  msgstr ""
2443
 
2444
- #: core/helpers/helper-misc.php:757
2445
  msgid "Korean"
2446
  msgstr ""
2447
 
2448
- #: core/helpers/helper-misc.php:758
2449
  msgid "Kurdish"
2450
  msgstr ""
2451
 
2452
- #: core/helpers/helper-misc.php:759
2453
  msgid "Lao"
2454
  msgstr ""
2455
 
2456
- #: core/helpers/helper-misc.php:760
2457
  msgid "Latvian"
2458
  msgstr ""
2459
 
2460
- #: core/helpers/helper-misc.php:761
2461
  msgid "Limburgish"
2462
  msgstr ""
2463
 
2464
- #: core/helpers/helper-misc.php:762
2465
  msgid "Lingala"
2466
  msgstr ""
2467
 
2468
- #: core/helpers/helper-misc.php:763
2469
  msgid "Lithuanian"
2470
  msgstr ""
2471
 
2472
- #: core/helpers/helper-misc.php:764
2473
  msgid "Luxembourgish"
2474
  msgstr ""
2475
 
2476
- #: core/helpers/helper-misc.php:765
2477
  msgid "Macedonian"
2478
  msgstr ""
2479
 
2480
- #: core/helpers/helper-misc.php:766
2481
  msgid "Malagasy"
2482
  msgstr ""
2483
 
2484
- #: core/helpers/helper-misc.php:767
2485
  msgid "Malay"
2486
  msgstr ""
2487
 
2488
- #: core/helpers/helper-misc.php:768
2489
  msgid "Malayalam"
2490
  msgstr ""
2491
 
2492
- #: core/helpers/helper-misc.php:769
2493
  msgid "Maori"
2494
  msgstr ""
2495
 
2496
- #: core/helpers/helper-misc.php:770
2497
  msgid "Marathi"
2498
  msgstr ""
2499
 
2500
- #: core/helpers/helper-misc.php:771
2501
  msgid "Mingrelian"
2502
  msgstr ""
2503
 
2504
- #: core/helpers/helper-misc.php:772
2505
  msgid "Mongolian"
2506
  msgstr ""
2507
 
2508
- #: core/helpers/helper-misc.php:773
2509
  msgid "Montenegrin"
2510
  msgstr ""
2511
 
2512
- #: core/helpers/helper-misc.php:774
2513
  msgid "Moroccan Arabic"
2514
  msgstr ""
2515
 
2516
- #: core/helpers/helper-misc.php:775
2517
  msgid "Myanmar (Burmese)"
2518
  msgstr ""
2519
 
2520
- #: core/helpers/helper-misc.php:776
2521
  msgid "Nepali"
2522
  msgstr ""
2523
 
2524
- #: core/helpers/helper-misc.php:777
2525
  msgid "Norwegian (Bokmål)"
2526
  msgstr ""
2527
 
2528
- #: core/helpers/helper-misc.php:778
2529
  msgid "Norwegian (Nynorsk)"
2530
  msgstr ""
2531
 
2532
- #: core/helpers/helper-misc.php:779
2533
  msgid "Occitan"
2534
  msgstr ""
2535
 
2536
- #: core/helpers/helper-misc.php:780
2537
  msgid "Oriya"
2538
  msgstr ""
2539
 
2540
- #: core/helpers/helper-misc.php:781
2541
  msgid "Ossetic"
2542
  msgstr ""
2543
 
2544
- #: core/helpers/helper-misc.php:782
2545
  msgid "Pashto"
2546
  msgstr ""
2547
 
2548
- #: core/helpers/helper-misc.php:783
2549
  msgid "Persian"
2550
  msgstr ""
2551
 
2552
- #: core/helpers/helper-misc.php:784
2553
  msgid "Polish"
2554
  msgstr ""
2555
 
2556
- #: core/helpers/helper-misc.php:785
2557
  msgid "Portuguese"
2558
  msgstr ""
2559
 
2560
- #: core/helpers/helper-misc.php:786
2561
  msgid "Punjabi"
2562
  msgstr ""
2563
 
2564
- #: core/helpers/helper-misc.php:787
2565
  msgid "Rohingya"
2566
  msgstr ""
2567
 
2568
- #: core/helpers/helper-misc.php:788
2569
  msgid "Romanian"
2570
  msgstr ""
2571
 
2572
- #: core/helpers/helper-misc.php:789
2573
  msgid "Romansh Vallader"
2574
  msgstr ""
2575
 
2576
- #: core/helpers/helper-misc.php:790
2577
  msgid "Russian"
2578
  msgstr ""
2579
 
2580
- #: core/helpers/helper-misc.php:791
2581
  msgid "Rusyn"
2582
  msgstr ""
2583
 
2584
- #: core/helpers/helper-misc.php:792
2585
  msgid "Sakha"
2586
  msgstr ""
2587
 
2588
- #: core/helpers/helper-misc.php:793
2589
  msgid "Sanskrit"
2590
  msgstr ""
2591
 
2592
- #: core/helpers/helper-misc.php:794
2593
  msgid "Sardinian"
2594
  msgstr ""
2595
 
2596
- #: core/helpers/helper-misc.php:795
2597
  msgid "Scottish Gaelic"
2598
  msgstr ""
2599
 
2600
- #: core/helpers/helper-misc.php:796
2601
  msgid "Serbian"
2602
  msgstr ""
2603
 
2604
- #: core/helpers/helper-misc.php:797
2605
  msgid "Silesian"
2606
  msgstr ""
2607
 
2608
- #: core/helpers/helper-misc.php:798
2609
  msgid "Sindhi"
2610
  msgstr ""
2611
 
2612
- #: core/helpers/helper-misc.php:799
2613
  msgid "Sinhala"
2614
  msgstr ""
2615
 
2616
- #: core/helpers/helper-misc.php:800
2617
  msgid "Slovak"
2618
  msgstr ""
2619
 
2620
- #: core/helpers/helper-misc.php:801
2621
  msgid "Slovenian"
2622
  msgstr ""
2623
 
2624
- #: core/helpers/helper-misc.php:802
2625
  msgid "Somali"
2626
  msgstr ""
2627
 
2628
- #: core/helpers/helper-misc.php:803
2629
  msgid "South Azerbaijani"
2630
  msgstr ""
2631
 
2632
- #: core/helpers/helper-misc.php:804
2633
  msgid "Spanish"
2634
  msgstr ""
2635
 
2636
- #: core/helpers/helper-misc.php:805
2637
  msgid "Sundanese"
2638
  msgstr ""
2639
 
2640
- #: core/helpers/helper-misc.php:806
2641
  msgid "Swahili"
2642
  msgstr ""
2643
 
2644
- #: core/helpers/helper-misc.php:807
2645
  msgid "Swedish"
2646
  msgstr ""
2647
 
2648
- #: core/helpers/helper-misc.php:808
2649
  msgid "Swiss German"
2650
  msgstr ""
2651
 
2652
- #: core/helpers/helper-misc.php:809
2653
  msgid "Tagalog"
2654
  msgstr ""
2655
 
2656
- #: core/helpers/helper-misc.php:810
2657
  msgid "Tahitian"
2658
  msgstr ""
2659
 
2660
- #: core/helpers/helper-misc.php:811
2661
  msgid "Tajik"
2662
  msgstr ""
2663
 
2664
- #: core/helpers/helper-misc.php:812
2665
  msgid "Tamazight"
2666
  msgstr ""
2667
 
2668
- #: core/helpers/helper-misc.php:813
2669
  msgid "Tamil"
2670
  msgstr ""
2671
 
2672
- #: core/helpers/helper-misc.php:814
2673
  msgid "Tatar"
2674
  msgstr ""
2675
 
2676
- #: core/helpers/helper-misc.php:815
2677
  msgid "Telugu"
2678
  msgstr ""
2679
 
2680
- #: core/helpers/helper-misc.php:816
2681
  msgid "Thai"
2682
  msgstr ""
2683
 
2684
- #: core/helpers/helper-misc.php:817
2685
  msgid "Tibetan"
2686
  msgstr ""
2687
 
2688
- #: core/helpers/helper-misc.php:818
2689
  msgid "Tigrinya"
2690
  msgstr ""
2691
 
2692
- #: core/helpers/helper-misc.php:819
2693
  msgid "Turkish"
2694
  msgstr ""
2695
 
2696
- #: core/helpers/helper-misc.php:820
2697
  msgid "Turkmen"
2698
  msgstr ""
2699
 
2700
- #: core/helpers/helper-misc.php:821
2701
  msgid "Tweants"
2702
  msgstr ""
2703
 
2704
- #: core/helpers/helper-misc.php:822
2705
  msgid "Uighur"
2706
  msgstr ""
2707
 
2708
- #: core/helpers/helper-misc.php:823
2709
  msgid "Ukrainian"
2710
  msgstr ""
2711
 
2712
- #: core/helpers/helper-misc.php:824
2713
  msgid "Urdu"
2714
  msgstr ""
2715
 
2716
- #: core/helpers/helper-misc.php:825
2717
  msgid "Uzbek"
2718
  msgstr ""
2719
 
2720
- #: core/helpers/helper-misc.php:826
2721
  msgid "Vietnamese"
2722
  msgstr ""
2723
 
2724
- #: core/helpers/helper-misc.php:827
2725
  msgid "Walloon"
2726
  msgstr ""
2727
 
2728
- #: core/helpers/helper-misc.php:828
2729
  msgid "Welsh"
2730
  msgstr ""
2731
 
2732
- #: core/helpers/helper-misc.php:829
2733
  msgid "Yoruba"
2734
  msgstr ""
2735
 
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"
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
913
  #: core/classes/class-wp-customize-form-manager.php:174
914
  msgid ""
915
  "Still have questions? Head over to our <a href=\"%s\" "
916
+ "target=\"_blank\">help guide</a>."
917
  msgstr ""
918
 
919
  #: core/classes/class-wp-customize-form-manager.php:181
942
  msgid "Choices"
943
  msgstr ""
944
 
945
+ #: core/classes/parts/class-part-checkbox.php:200
946
  msgid "Checkbox values are not valid."
947
  msgstr ""
948
 
1030
  msgid "For radio buttons allowing one selection."
1031
  msgstr ""
1032
 
1033
+ #: core/classes/parts/class-part-radio.php:193
1034
+ #: core/classes/parts/class-part-radio.php:199
1035
  msgid "Radio value is not valid."
1036
  msgstr ""
1037
 
2189
  msgid "Response #%s"
2190
  msgstr ""
2191
 
2192
+ #: core/helpers/helper-misc.php:702
2193
  msgid "Afrikaans"
2194
  msgstr ""
2195
 
2196
+ #: core/helpers/helper-misc.php:703
2197
  msgid "Akan"
2198
  msgstr ""
2199
 
2200
+ #: core/helpers/helper-misc.php:704
2201
  msgid "Albanian"
2202
  msgstr ""
2203
 
2204
+ #: core/helpers/helper-misc.php:705
2205
  msgid "Algerian Arabic"
2206
  msgstr ""
2207
 
2208
+ #: core/helpers/helper-misc.php:706
2209
  msgid "Amharic"
2210
  msgstr ""
2211
 
2212
+ #: core/helpers/helper-misc.php:707
2213
  msgid "Arabic"
2214
  msgstr ""
2215
 
2216
+ #: core/helpers/helper-misc.php:708
2217
  msgid "Armenian"
2218
  msgstr ""
2219
 
2220
+ #: core/helpers/helper-misc.php:709
2221
  msgid "Aromanian"
2222
  msgstr ""
2223
 
2224
+ #: core/helpers/helper-misc.php:710
2225
  msgid "Arpitan"
2226
  msgstr ""
2227
 
2228
+ #: core/helpers/helper-misc.php:711
2229
  msgid "Assamese"
2230
  msgstr ""
2231
 
2232
+ #: core/helpers/helper-misc.php:712
2233
  msgid "Azerbaijani"
2234
  msgstr ""
2235
 
2236
+ #: core/helpers/helper-misc.php:713
2237
  msgid "Balochi Southern"
2238
  msgstr ""
2239
 
2240
+ #: core/helpers/helper-misc.php:714
2241
  msgid "Bashkir"
2242
  msgstr ""
2243
 
2244
+ #: core/helpers/helper-misc.php:715
2245
  msgid "Basque"
2246
  msgstr ""
2247
 
2248
+ #: core/helpers/helper-misc.php:716
2249
  msgid "Belarusian"
2250
  msgstr ""
2251
 
2252
+ #: core/helpers/helper-misc.php:717
2253
  msgid "Bengali"
2254
  msgstr ""
2255
 
2256
+ #: core/helpers/helper-misc.php:718
2257
  msgid "Bosnian"
2258
  msgstr ""
2259
 
2260
+ #: core/helpers/helper-misc.php:719
2261
  msgid "Breton"
2262
  msgstr ""
2263
 
2264
+ #: core/helpers/helper-misc.php:720
2265
  msgid "Bulgarian"
2266
  msgstr ""
2267
 
2268
+ #: core/helpers/helper-misc.php:721
2269
  msgid "Catalan"
2270
  msgstr ""
2271
 
2272
+ #: core/helpers/helper-misc.php:722
2273
  msgid "Cebuano"
2274
  msgstr ""
2275
 
2276
+ #: core/helpers/helper-misc.php:723
2277
  msgid "Chinese"
2278
  msgstr ""
2279
 
2280
+ #: core/helpers/helper-misc.php:724
2281
  msgid "Corsican"
2282
  msgstr ""
2283
 
2284
+ #: core/helpers/helper-misc.php:725
2285
  msgid "Croatian"
2286
  msgstr ""
2287
 
2288
+ #: core/helpers/helper-misc.php:726
2289
  msgid "Czech"
2290
  msgstr ""
2291
 
2292
+ #: core/helpers/helper-misc.php:727
2293
  msgid "Danish"
2294
  msgstr ""
2295
 
2296
+ #: core/helpers/helper-misc.php:728
2297
  msgid "Dhivehi"
2298
  msgstr ""
2299
 
2300
+ #: core/helpers/helper-misc.php:729
2301
  msgid "Dutch"
2302
  msgstr ""
2303
 
2304
+ #: core/helpers/helper-misc.php:730
2305
  msgid "Dzongkha"
2306
  msgstr ""
2307
 
2308
+ #: core/helpers/helper-misc.php:731
2309
  msgid "English"
2310
  msgstr ""
2311
 
2312
+ #: core/helpers/helper-misc.php:732
2313
  msgid "Esperanto"
2314
  msgstr ""
2315
 
2316
+ #: core/helpers/helper-misc.php:733
2317
  msgid "Estonian"
2318
  msgstr ""
2319
 
2320
+ #: core/helpers/helper-misc.php:734
2321
  msgid "Faroese"
2322
  msgstr ""
2323
 
2324
+ #: core/helpers/helper-misc.php:735
2325
  msgid "Finnish"
2326
  msgstr ""
2327
 
2328
+ #: core/helpers/helper-misc.php:736
2329
  msgid "French"
2330
  msgstr ""
2331
 
2332
+ #: core/helpers/helper-misc.php:737
2333
  msgid "Frisian"
2334
  msgstr ""
2335
 
2336
+ #: core/helpers/helper-misc.php:738
2337
  msgid "Friulian"
2338
  msgstr ""
2339
 
2340
+ #: core/helpers/helper-misc.php:739
2341
  msgid "Fulah"
2342
  msgstr ""
2343
 
2344
+ #: core/helpers/helper-misc.php:740
2345
  msgid "Galician"
2346
  msgstr ""
2347
 
2348
+ #: core/helpers/helper-misc.php:741
2349
  msgid "Georgian"
2350
  msgstr ""
2351
 
2352
+ #: core/helpers/helper-misc.php:742
2353
  msgid "German"
2354
  msgstr ""
2355
 
2356
+ #: core/helpers/helper-misc.php:743
2357
  msgid "Greek"
2358
  msgstr ""
2359
 
2360
+ #: core/helpers/helper-misc.php:744
2361
  msgid "Greenlandic"
2362
  msgstr ""
2363
 
2364
+ #: core/helpers/helper-misc.php:745
2365
  msgid "Guaraní"
2366
  msgstr ""
2367
 
2368
+ #: core/helpers/helper-misc.php:746
2369
  msgid "Gujarati"
2370
  msgstr ""
2371
 
2372
+ #: core/helpers/helper-misc.php:747
2373
  msgid "Hawaiian"
2374
  msgstr ""
2375
 
2376
+ #: core/helpers/helper-misc.php:748
2377
  msgid "Hazaragi"
2378
  msgstr ""
2379
 
2380
+ #: core/helpers/helper-misc.php:749
2381
  msgid "Hebrew"
2382
  msgstr ""
2383
 
2384
+ #: core/helpers/helper-misc.php:750
2385
  msgid "Hindi"
2386
  msgstr ""
2387
 
2388
+ #: core/helpers/helper-misc.php:751
2389
  msgid "Hungarian"
2390
  msgstr ""
2391
 
2392
+ #: core/helpers/helper-misc.php:752
2393
  msgid "Icelandic"
2394
  msgstr ""
2395
 
2396
+ #: core/helpers/helper-misc.php:753
2397
  msgid "Ido"
2398
  msgstr ""
2399
 
2400
+ #: core/helpers/helper-misc.php:754
2401
  msgid "Indonesian"
2402
  msgstr ""
2403
 
2404
+ #: core/helpers/helper-misc.php:755
2405
  msgid "Irish"
2406
  msgstr ""
2407
 
2408
+ #: core/helpers/helper-misc.php:756
2409
  msgid "Italian"
2410
  msgstr ""
2411
 
2412
+ #: core/helpers/helper-misc.php:757
2413
  msgid "Japanese"
2414
  msgstr ""
2415
 
2416
+ #: core/helpers/helper-misc.php:758
2417
  msgid "Javanese"
2418
  msgstr ""
2419
 
2420
+ #: core/helpers/helper-misc.php:759
2421
  msgid "Kabyle"
2422
  msgstr ""
2423
 
2424
+ #: core/helpers/helper-misc.php:760
2425
  msgid "Kannada"
2426
  msgstr ""
2427
 
2428
+ #: core/helpers/helper-misc.php:761
2429
  msgid "Kazakh"
2430
  msgstr ""
2431
 
2432
+ #: core/helpers/helper-misc.php:762
2433
  msgid "Khmer"
2434
  msgstr ""
2435
 
2436
+ #: core/helpers/helper-misc.php:763
2437
  msgid "Kinyarwanda"
2438
  msgstr ""
2439
 
2440
+ #: core/helpers/helper-misc.php:764
2441
  msgid "Kirghiz"
2442
  msgstr ""
2443
 
2444
+ #: core/helpers/helper-misc.php:765
2445
  msgid "Korean"
2446
  msgstr ""
2447
 
2448
+ #: core/helpers/helper-misc.php:766
2449
  msgid "Kurdish"
2450
  msgstr ""
2451
 
2452
+ #: core/helpers/helper-misc.php:767
2453
  msgid "Lao"
2454
  msgstr ""
2455
 
2456
+ #: core/helpers/helper-misc.php:768
2457
  msgid "Latvian"
2458
  msgstr ""
2459
 
2460
+ #: core/helpers/helper-misc.php:769
2461
  msgid "Limburgish"
2462
  msgstr ""
2463
 
2464
+ #: core/helpers/helper-misc.php:770
2465
  msgid "Lingala"
2466
  msgstr ""
2467
 
2468
+ #: core/helpers/helper-misc.php:771
2469
  msgid "Lithuanian"
2470
  msgstr ""
2471
 
2472
+ #: core/helpers/helper-misc.php:772
2473
  msgid "Luxembourgish"
2474
  msgstr ""
2475
 
2476
+ #: core/helpers/helper-misc.php:773
2477
  msgid "Macedonian"
2478
  msgstr ""
2479
 
2480
+ #: core/helpers/helper-misc.php:774
2481
  msgid "Malagasy"
2482
  msgstr ""
2483
 
2484
+ #: core/helpers/helper-misc.php:775
2485
  msgid "Malay"
2486
  msgstr ""
2487
 
2488
+ #: core/helpers/helper-misc.php:776
2489
  msgid "Malayalam"
2490
  msgstr ""
2491
 
2492
+ #: core/helpers/helper-misc.php:777
2493
  msgid "Maori"
2494
  msgstr ""
2495
 
2496
+ #: core/helpers/helper-misc.php:778
2497
  msgid "Marathi"
2498
  msgstr ""
2499
 
2500
+ #: core/helpers/helper-misc.php:779
2501
  msgid "Mingrelian"
2502
  msgstr ""
2503
 
2504
+ #: core/helpers/helper-misc.php:780
2505
  msgid "Mongolian"
2506
  msgstr ""
2507
 
2508
+ #: core/helpers/helper-misc.php:781
2509
  msgid "Montenegrin"
2510
  msgstr ""
2511
 
2512
+ #: core/helpers/helper-misc.php:782
2513
  msgid "Moroccan Arabic"
2514
  msgstr ""
2515
 
2516
+ #: core/helpers/helper-misc.php:783
2517
  msgid "Myanmar (Burmese)"
2518
  msgstr ""
2519
 
2520
+ #: core/helpers/helper-misc.php:784
2521
  msgid "Nepali"
2522
  msgstr ""
2523
 
2524
+ #: core/helpers/helper-misc.php:785
2525
  msgid "Norwegian (Bokmål)"
2526
  msgstr ""
2527
 
2528
+ #: core/helpers/helper-misc.php:786
2529
  msgid "Norwegian (Nynorsk)"
2530
  msgstr ""
2531
 
2532
+ #: core/helpers/helper-misc.php:787
2533
  msgid "Occitan"
2534
  msgstr ""
2535
 
2536
+ #: core/helpers/helper-misc.php:788
2537
  msgid "Oriya"
2538
  msgstr ""
2539
 
2540
+ #: core/helpers/helper-misc.php:789
2541
  msgid "Ossetic"
2542
  msgstr ""
2543
 
2544
+ #: core/helpers/helper-misc.php:790
2545
  msgid "Pashto"
2546
  msgstr ""
2547
 
2548
+ #: core/helpers/helper-misc.php:791
2549
  msgid "Persian"
2550
  msgstr ""
2551
 
2552
+ #: core/helpers/helper-misc.php:792
2553
  msgid "Polish"
2554
  msgstr ""
2555
 
2556
+ #: core/helpers/helper-misc.php:793
2557
  msgid "Portuguese"
2558
  msgstr ""
2559
 
2560
+ #: core/helpers/helper-misc.php:794
2561
  msgid "Punjabi"
2562
  msgstr ""
2563
 
2564
+ #: core/helpers/helper-misc.php:795
2565
  msgid "Rohingya"
2566
  msgstr ""
2567
 
2568
+ #: core/helpers/helper-misc.php:796
2569
  msgid "Romanian"
2570
  msgstr ""
2571
 
2572
+ #: core/helpers/helper-misc.php:797
2573
  msgid "Romansh Vallader"
2574
  msgstr ""
2575
 
2576
+ #: core/helpers/helper-misc.php:798
2577
  msgid "Russian"
2578
  msgstr ""
2579
 
2580
+ #: core/helpers/helper-misc.php:799
2581
  msgid "Rusyn"
2582
  msgstr ""
2583
 
2584
+ #: core/helpers/helper-misc.php:800
2585
  msgid "Sakha"
2586
  msgstr ""
2587
 
2588
+ #: core/helpers/helper-misc.php:801
2589
  msgid "Sanskrit"
2590
  msgstr ""
2591
 
2592
+ #: core/helpers/helper-misc.php:802
2593
  msgid "Sardinian"
2594
  msgstr ""
2595
 
2596
+ #: core/helpers/helper-misc.php:803
2597
  msgid "Scottish Gaelic"
2598
  msgstr ""
2599
 
2600
+ #: core/helpers/helper-misc.php:804
2601
  msgid "Serbian"
2602
  msgstr ""
2603
 
2604
+ #: core/helpers/helper-misc.php:805
2605
  msgid "Silesian"
2606
  msgstr ""
2607
 
2608
+ #: core/helpers/helper-misc.php:806
2609
  msgid "Sindhi"
2610
  msgstr ""
2611
 
2612
+ #: core/helpers/helper-misc.php:807
2613
  msgid "Sinhala"
2614
  msgstr ""
2615
 
2616
+ #: core/helpers/helper-misc.php:808
2617
  msgid "Slovak"
2618
  msgstr ""
2619
 
2620
+ #: core/helpers/helper-misc.php:809
2621
  msgid "Slovenian"
2622
  msgstr ""
2623
 
2624
+ #: core/helpers/helper-misc.php:810
2625
  msgid "Somali"
2626
  msgstr ""
2627
 
2628
+ #: core/helpers/helper-misc.php:811
2629
  msgid "South Azerbaijani"
2630
  msgstr ""
2631
 
2632
+ #: core/helpers/helper-misc.php:812
2633
  msgid "Spanish"
2634
  msgstr ""
2635
 
2636
+ #: core/helpers/helper-misc.php:813
2637
  msgid "Sundanese"
2638
  msgstr ""
2639
 
2640
+ #: core/helpers/helper-misc.php:814
2641
  msgid "Swahili"
2642
  msgstr ""
2643
 
2644
+ #: core/helpers/helper-misc.php:815
2645
  msgid "Swedish"
2646
  msgstr ""
2647
 
2648
+ #: core/helpers/helper-misc.php:816
2649
  msgid "Swiss German"
2650
  msgstr ""
2651
 
2652
+ #: core/helpers/helper-misc.php:817
2653
  msgid "Tagalog"
2654
  msgstr ""
2655
 
2656
+ #: core/helpers/helper-misc.php:818
2657
  msgid "Tahitian"
2658
  msgstr ""
2659
 
2660
+ #: core/helpers/helper-misc.php:819
2661
  msgid "Tajik"
2662
  msgstr ""
2663
 
2664
+ #: core/helpers/helper-misc.php:820
2665
  msgid "Tamazight"
2666
  msgstr ""
2667
 
2668
+ #: core/helpers/helper-misc.php:821
2669
  msgid "Tamil"
2670
  msgstr ""
2671
 
2672
+ #: core/helpers/helper-misc.php:822
2673
  msgid "Tatar"
2674
  msgstr ""
2675
 
2676
+ #: core/helpers/helper-misc.php:823
2677
  msgid "Telugu"
2678
  msgstr ""
2679
 
2680
+ #: core/helpers/helper-misc.php:824
2681
  msgid "Thai"
2682
  msgstr ""
2683
 
2684
+ #: core/helpers/helper-misc.php:825
2685
  msgid "Tibetan"
2686
  msgstr ""
2687
 
2688
+ #: core/helpers/helper-misc.php:826
2689
  msgid "Tigrinya"
2690
  msgstr ""
2691
 
2692
+ #: core/helpers/helper-misc.php:827
2693
  msgid "Turkish"
2694
  msgstr ""
2695
 
2696
+ #: core/helpers/helper-misc.php:828
2697
  msgid "Turkmen"
2698
  msgstr ""
2699
 
2700
+ #: core/helpers/helper-misc.php:829
2701
  msgid "Tweants"
2702
  msgstr ""
2703
 
2704
+ #: core/helpers/helper-misc.php:830
2705
  msgid "Uighur"
2706
  msgstr ""
2707
 
2708
+ #: core/helpers/helper-misc.php:831
2709
  msgid "Ukrainian"
2710
  msgstr ""
2711
 
2712
+ #: core/helpers/helper-misc.php:832
2713
  msgid "Urdu"
2714
  msgstr ""
2715
 
2716
+ #: core/helpers/helper-misc.php:833
2717
  msgid "Uzbek"
2718
  msgstr ""
2719
 
2720
+ #: core/helpers/helper-misc.php:834
2721
  msgid "Vietnamese"
2722
  msgstr ""
2723
 
2724
+ #: core/helpers/helper-misc.php:835
2725
  msgid "Walloon"
2726
  msgstr ""
2727
 
2728
+ #: core/helpers/helper-misc.php:836
2729
  msgid "Welsh"
2730
  msgstr ""
2731
 
2732
+ #: core/helpers/helper-misc.php:837
2733
  msgid "Yoruba"
2734
  msgstr ""
2735
 
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.21
9
  License: GPLv2 or later
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
 
@@ -97,6 +97,10 @@ Yep! HappyForms free isn't going anywhere but for those looking for even more yo
97
 
98
  == Changelog ==
99
 
 
 
 
 
100
  = 1.8.21 =
101
  * New feature: Added Help tab to all HappyForms screens, providing easy access to help guide and our email support.
102
  * Improvement: All Forms screen improvements.
@@ -549,6 +553,9 @@ Yep! HappyForms free isn't going anywhere but for those looking for even more yo
549
 
550
  == Upgrade Notice ==
551
 
 
 
 
552
  = 1.8.21 =
553
  * New Help tab linking to our help guide and support email. All Forms screen improvements.
554
 
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
 
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.
103
+
104
  = 1.8.21 =
105
  * New feature: Added Help tab to all HappyForms screens, providing easy access to help guide and our email support.
106
  * Improvement: All Forms screen improvements.
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
+
559
  = 1.8.21 =
560
  * New Help tab linking to our help guide and support email. All Forms screen improvements.
561