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

Version Description

  • New feature: Realtime character counter for Long Text and Text Editor parts.
  • New feature: New styles and style controls for form notices.
  • Improvement: New happyforms_get_honorifics filter allows for custom honorific titles.
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.7.5
Comparing to
See all releases

Code changes from version 1.7.4 to 1.7.5

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.7.4
9
  * Author URI: https://thethemefoundry.com
10
  * Upgrade URI: https://thethemefoundry.com
11
  */
@@ -13,7 +13,7 @@
13
  /**
14
  * The current version of the plugin.
15
  */
16
- define( 'HAPPYFORMS_VERSION', '1.7.4' );
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.7.5
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.7.5' );
17
 
18
  if ( ! function_exists( 'happyforms_plugin_file' ) ):
19
  /**
inc/core/assets/css/color.css CHANGED
@@ -1,12 +1,15 @@
1
  :root {
2
  /* colors */
3
  --happyforms-color-primary: #000;
4
- --happyforms-color-success: #39b54a;
5
- --happyforms-color-error: #ff7550;
 
 
 
 
6
  --happyforms-color-part-title: #000;
7
  --happyforms-color-part-value: #000;
8
  --happyforms-color-part-placeholder: #888888;
9
- --happyforms-color-part-required-text: #ff7550;
10
  --happyforms-color-part-border: #dbdbdb;
11
  --happyforms-color-part-border-focus: #407fff;
12
  --happyforms-color-part-background: #fff;
@@ -44,7 +47,7 @@
44
  --happyforms-transition-duration: 0.25s;
45
  }
46
 
47
- .happyforms-form form.happyforms-styles {
48
  font-weight: normal;
49
  font-weight: var(--happyforms-form-font-weight);
50
  transition: opacity 0.25s ease-in-out;
@@ -224,11 +227,6 @@
224
  margin-top: 10px;
225
  }
226
 
227
- .happyforms-styles .happyforms-required {
228
- color: #ff7550;
229
- color: var(--happyforms-color-part-required-text);
230
- }
231
-
232
  /* parts - option labels */
233
 
234
  .happyforms-styles .happyforms-part .option-label {
@@ -777,22 +775,34 @@
777
  }
778
 
779
  /* notices */
780
- form.happyforms-styles .happyforms-flex > .happyforms-message-notices .happyforms-message-notice {
781
- padding: 25px;
782
- border: 3px solid;
783
  background-color: transparent;
784
- color: #000;
785
- color: var(--happyforms-color-primary);
786
  }
787
 
788
- form.happyforms-styles .happyforms-flex > .happyforms-message-notices .success {
789
- border-color: #39b54a;
790
- border-color: var(--happyforms-color-success);
791
  }
792
 
793
- form.happyforms-styles .happyforms-flex > .happyforms-message-notices .error {
794
- border-color: #ff7550;
795
- border-color: var(--happyforms-color-error);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
796
  }
797
 
798
  .happyforms-styles .happyforms-message-notices h2 {
@@ -800,7 +810,8 @@ form.happyforms-styles .happyforms-flex > .happyforms-message-notices .error {
800
  margin-bottom: 0 !important;
801
  padding-top: 0 !important;
802
  padding-bottom: 0 !important;
803
- font-size: 16px !important;
 
804
  }
805
 
806
  .happyforms-styles .happyforms-message-notices h2 span {
@@ -816,7 +827,7 @@ form.happyforms-styles .happyforms-flex > .happyforms-message-notices .error {
816
  }
817
 
818
  .happyforms-styles .happyforms-form__part .happyforms-message-notice.error h2 {
819
- color: #ff7550;
820
  color: var(--happyforms-color-error);
821
  }
822
 
@@ -1012,6 +1023,7 @@ form.happyforms-styles .happyforms-flex > .happyforms-message-notices .error {
1012
  .happyforms-styles.happyforms-form--submit-button-fullwidth input[type=submit].happyforms-button--submit {
1013
  padding-left: 0;
1014
  padding-right: 0;
 
1015
  }
1016
 
1017
  .happyforms-styles.happyforms-form--part-title-font-weight-bold .happyforms-part__label .label {
@@ -1070,10 +1082,6 @@ form.happyforms-styles .happyforms-flex > .happyforms-message-notices .error {
1070
  }
1071
  }
1072
 
1073
- .happyforms-styles .happyforms-part--recaptcha {
1074
- padding: 0 1%;
1075
- }
1076
-
1077
  /* phone part */
1078
  .happyforms-styles .happyforms-country-select {
1079
  border: 1px solid var(--happyforms-color-part-border);
1
  :root {
2
  /* colors */
3
  --happyforms-color-primary: #000;
4
+ --happyforms-color-success-notice: #ebf9f0;
5
+ --happyforms-color-success-notice-text: #1eb452;
6
+ --happyforms-color-error: #ff4200;
7
+ --happyforms-color-error-notice: #ffeae5;
8
+ --happyforms-color-error-notice-text: #ff4200;
9
+ --happyforms-color-notice-text: #454545;
10
  --happyforms-color-part-title: #000;
11
  --happyforms-color-part-value: #000;
12
  --happyforms-color-part-placeholder: #888888;
 
13
  --happyforms-color-part-border: #dbdbdb;
14
  --happyforms-color-part-border-focus: #407fff;
15
  --happyforms-color-part-background: #fff;
47
  --happyforms-transition-duration: 0.25s;
48
  }
49
 
50
+ .happyforms-form.happyforms-styles form {
51
  font-weight: normal;
52
  font-weight: var(--happyforms-form-font-weight);
53
  transition: opacity 0.25s ease-in-out;
227
  margin-top: 10px;
228
  }
229
 
 
 
 
 
 
230
  /* parts - option labels */
231
 
232
  .happyforms-styles .happyforms-part .option-label {
775
  }
776
 
777
  /* notices */
778
+ .happyforms-styles .happyforms-flex > .happyforms-message-notices .happyforms-message-notice {
779
+ padding: 20px 15px;
780
+ border-radius: 6px;
781
  background-color: transparent;
782
+ color: #454545;
 
783
  }
784
 
785
+ .happyforms-styles.happyforms-form--part-border-radius-square .happyforms-flex > .happyforms-message-notices .happyforms-message-notice {
786
+ border-radius: 0;
 
787
  }
788
 
789
+ .happyforms-styles.happyforms-form--part-border-radius-pill .happyforms-flex > .happyforms-message-notices .happyforms-message-notice {
790
+ padding: 20px 25px;
791
+ border-radius: 25px;
792
+ }
793
+
794
+ .happyforms-styles .happyforms-flex > .happyforms-message-notices .success {
795
+ color: #1eb452 !important;
796
+ color: var(--happyforms-color-success-notice-text) !important;
797
+ background-color: #ebf9f0;
798
+ background-color: var(--happyforms-color-success-notice);
799
+ }
800
+
801
+ .happyforms-styles .happyforms-flex > .happyforms-message-notices .error {
802
+ color: #ff4200 !important;
803
+ color: var(--happyforms-color-error-notice-text) !important;
804
+ background-color: #ffeae5;
805
+ background-color: var(--happyforms-color-error-notice);
806
  }
807
 
808
  .happyforms-styles .happyforms-message-notices h2 {
810
  margin-bottom: 0 !important;
811
  padding-top: 0 !important;
812
  padding-bottom: 0 !important;
813
+ font-weight: normal !important;
814
+ font-size: 16px !important
815
  }
816
 
817
  .happyforms-styles .happyforms-message-notices h2 span {
827
  }
828
 
829
  .happyforms-styles .happyforms-form__part .happyforms-message-notice.error h2 {
830
+ color: #ff4200;
831
  color: var(--happyforms-color-error);
832
  }
833
 
1023
  .happyforms-styles.happyforms-form--submit-button-fullwidth input[type=submit].happyforms-button--submit {
1024
  padding-left: 0;
1025
  padding-right: 0;
1026
+ margin-right: 0;
1027
  }
1028
 
1029
  .happyforms-styles.happyforms-form--part-title-font-weight-bold .happyforms-part__label .label {
1082
  }
1083
  }
1084
 
 
 
 
 
1085
  /* phone part */
1086
  .happyforms-styles .happyforms-country-select {
1087
  border: 1px solid var(--happyforms-color-part-border);
inc/core/assets/css/layout.css CHANGED
@@ -7,24 +7,28 @@
7
  flex-flow: row wrap;
8
  align-items: flex-start;
9
  max-width: 100%;
10
- padding: 50px 0;
11
  }
12
 
13
- .happyforms-form form {
14
  max-width: 100%;
15
  max-width: var(--happyforms-form-width);
16
  margin: 0 auto;
17
- padding: 0;
18
  border-style: solid;
19
  border-width: 0;
 
 
 
 
 
20
  background-color: transparent;
21
  }
22
 
23
- .happyforms-form form.happyforms-form--padding-narrow {
24
  padding: 1%;
25
  }
26
 
27
- .happyforms-form form.happyforms-form--padding-wide {
28
  padding: 3.5%;
29
  }
30
 
@@ -68,6 +72,10 @@ h3.happyforms-form__title {
68
  padding: 5px 1%;
69
  }
70
 
 
 
 
 
71
  @media screen and (min-width: 800px) {
72
  .happyforms-part--width-half {
73
  width: 50%;
@@ -1247,12 +1255,12 @@ a.address-geolocate span {
1247
  display: flex;
1248
  width: 100%;
1249
  padding: 0 1%;
1250
- margin: 0 0 50px 0;
1251
  }
1252
 
1253
- form.happyforms-form--notices-below .happyforms-flex>.happyforms-message-notices {
1254
  order: 1000;
1255
- margin: 50px 0 0 0;
1256
  }
1257
 
1258
  form .happyforms-flex>.happyforms-message-notices .happyforms-message-notice {
@@ -1419,11 +1427,11 @@ form .happyforms-flex>.happyforms-message-notices .happyforms-message-notice a {
1419
 
1420
  .happyforms-form--part-outer-padding-narrow .happyforms-form__part {
1421
  margin-bottom: 5px;
1422
- padding: 0 0.5%;
1423
  }
1424
 
1425
  .happyforms-form--part-outer-padding-narrow .happyforms-part__select-wrap {
1426
- padding: 0 0 0 1%;
1427
  }
1428
 
1429
  .happyforms-form--part-outer-padding-narrow .happyforms-part-option {
@@ -1440,7 +1448,7 @@ form .happyforms-flex>.happyforms-message-notices .happyforms-message-notice a {
1440
  }
1441
 
1442
  .happyforms-form--part-outer-padding-wide .happyforms-form__part {
1443
- padding: 20px 3%;
1444
  }
1445
 
1446
  .happyforms-form--part-outer-padding-wide .happyforms-part .happyforms-part-option {
@@ -1928,10 +1936,6 @@ input[type=submit][disabled].happyforms-button--submit {
1928
  color: #888888;
1929
  }
1930
 
1931
- .happyforms-form-preview .happyforms-flex {
1932
- padding: 0 1%;
1933
- }
1934
-
1935
  .happyforms-part-preview .happyforms-part__label {
1936
  cursor: default;
1937
  margin-bottom: 10px;
@@ -1944,7 +1948,7 @@ input[type=submit][disabled].happyforms-button--submit {
1944
  .happyforms-part--submit {
1945
  display: flex;
1946
  flex-flow: row wrap;
1947
- align-items: center;
1948
  }
1949
 
1950
  .happyforms-form-preview .happyforms-part--submit {
@@ -1963,7 +1967,6 @@ input[type=submit][disabled].happyforms-button--submit {
1963
 
1964
  .happyforms-part--submit * {
1965
  margin-right: 20px;
1966
- margin-bottom: 20px;
1967
  }
1968
 
1969
  .happyforms-form--submit-button-align-center .happyforms-part--submit,
@@ -1975,16 +1978,24 @@ input[type=submit][disabled].happyforms-button--submit {
1975
  .happyforms-form--submit-button-align-center .happyforms-part--submit a,
1976
  .happyforms-form--submit-button-fullwidth .happyforms-part--submit a {
1977
  order: 2;
 
 
1978
  }
1979
 
1980
  .happyforms-form--submit-button-align-right .happyforms-part--submit {
1981
  justify-content: flex-end;
1982
  }
1983
 
 
1984
  .happyforms-form--submit-button-align-right .happyforms-part--submit input {
1985
  margin-right: 0;
1986
  }
1987
 
 
 
 
 
 
1988
  @media screen and (max-width: 800px) {
1989
  .happyforms-form-preview .happyforms-part--submit {
1990
  flex-flow: column wrap;
@@ -2002,12 +2013,17 @@ input[type=submit][disabled].happyforms-button--submit {
2002
  .happyforms-part-preview {
2003
  margin-bottom: 0;
2004
  padding: 10px 1%;
 
2005
  }
2006
 
2007
  .happyforms-part-preview {
2008
  background-color: #fcfcfc;
2009
  }
2010
 
 
 
 
 
2011
  .happyforms-part-preview:nth-child(even) {
2012
  background-color: #efefef;
2013
  }
@@ -2354,4 +2370,16 @@ div.mce-inline-toolbar-grp.happyforms-editor-toolbar-link div.wp-link-input inpu
2354
 
2355
  .happyforms-part--rich_text.happyforms-part--label-hidden.happyforms-part--has-tooltip .happyforms-tooltip {
2356
  top: -30px;
 
 
 
 
 
 
 
 
 
 
 
 
2357
  }
7
  flex-flow: row wrap;
8
  align-items: flex-start;
9
  max-width: 100%;
10
+ padding: 25px 0;
11
  }
12
 
13
+ .happyforms-form {
14
  max-width: 100%;
15
  max-width: var(--happyforms-form-width);
16
  margin: 0 auto;
 
17
  border-style: solid;
18
  border-width: 0;
19
+ }
20
+
21
+ .happyforms-form form {
22
+ margin: 0;
23
+ padding: 0;
24
  background-color: transparent;
25
  }
26
 
27
+ .happyforms-form.happyforms-form--padding-narrow {
28
  padding: 1%;
29
  }
30
 
31
+ .happyforms-form.happyforms-form--padding-wide {
32
  padding: 3.5%;
33
  }
34
 
72
  padding: 5px 1%;
73
  }
74
 
75
+ .happyforms-form__part:last-child {
76
+ margin-bottom: 0;
77
+ }
78
+
79
  @media screen and (min-width: 800px) {
80
  .happyforms-part--width-half {
81
  width: 50%;
1255
  display: flex;
1256
  width: 100%;
1257
  padding: 0 1%;
1258
+ margin: 0 0 25px 0;
1259
  }
1260
 
1261
+ .happyforms-form--notices-below .happyforms-flex>.happyforms-message-notices {
1262
  order: 1000;
1263
+ margin: 25px 0 0 0;
1264
  }
1265
 
1266
  form .happyforms-flex>.happyforms-message-notices .happyforms-message-notice {
1427
 
1428
  .happyforms-form--part-outer-padding-narrow .happyforms-form__part {
1429
  margin-bottom: 5px;
1430
+ padding: 0;
1431
  }
1432
 
1433
  .happyforms-form--part-outer-padding-narrow .happyforms-part__select-wrap {
1434
+ padding: 0;
1435
  }
1436
 
1437
  .happyforms-form--part-outer-padding-narrow .happyforms-part-option {
1448
  }
1449
 
1450
  .happyforms-form--part-outer-padding-wide .happyforms-form__part {
1451
+ padding: 20px 0;
1452
  }
1453
 
1454
  .happyforms-form--part-outer-padding-wide .happyforms-part .happyforms-part-option {
1936
  color: #888888;
1937
  }
1938
 
 
 
 
 
1939
  .happyforms-part-preview .happyforms-part__label {
1940
  cursor: default;
1941
  margin-bottom: 10px;
1948
  .happyforms-part--submit {
1949
  display: flex;
1950
  flex-flow: row wrap;
1951
+ align-items: baseline;
1952
  }
1953
 
1954
  .happyforms-form-preview .happyforms-part--submit {
1967
 
1968
  .happyforms-part--submit * {
1969
  margin-right: 20px;
 
1970
  }
1971
 
1972
  .happyforms-form--submit-button-align-center .happyforms-part--submit,
1978
  .happyforms-form--submit-button-align-center .happyforms-part--submit a,
1979
  .happyforms-form--submit-button-fullwidth .happyforms-part--submit a {
1980
  order: 2;
1981
+ margin-top: 10px;
1982
+ margin-right: 0;
1983
  }
1984
 
1985
  .happyforms-form--submit-button-align-right .happyforms-part--submit {
1986
  justify-content: flex-end;
1987
  }
1988
 
1989
+ .happyforms-form--submit-button-align-center .happyforms-part--submit input,
1990
  .happyforms-form--submit-button-align-right .happyforms-part--submit input {
1991
  margin-right: 0;
1992
  }
1993
 
1994
+ .happyforms-form--submit-button-align-right .happyforms-part--submit input + a {
1995
+ margin-left: 20px;
1996
+ margin-right: 0;
1997
+ }
1998
+
1999
  @media screen and (max-width: 800px) {
2000
  .happyforms-form-preview .happyforms-part--submit {
2001
  flex-flow: column wrap;
2013
  .happyforms-part-preview {
2014
  margin-bottom: 0;
2015
  padding: 10px 1%;
2016
+ margin: 0 1%;
2017
  }
2018
 
2019
  .happyforms-part-preview {
2020
  background-color: #fcfcfc;
2021
  }
2022
 
2023
+ .happyforms-part-preview + .happyforms-part--recaptcha {
2024
+ margin-top: 20px;
2025
+ }
2026
+
2027
  .happyforms-part-preview:nth-child(even) {
2028
  background-color: #efefef;
2029
  }
2370
 
2371
  .happyforms-part--rich_text.happyforms-part--label-hidden.happyforms-part--has-tooltip .happyforms-tooltip {
2372
  top: -30px;
2373
+ }
2374
+
2375
+ .happyforms-part__char-counter {
2376
+ display: inline-block;
2377
+ position: relative;
2378
+ z-index: 99;
2379
+ float: right;
2380
+ margin-top: -25px;
2381
+ margin-right: 10px;
2382
+ pointer-events: none;
2383
+ color: var(--happyforms-color-part-placeholder);
2384
+ font-size: 13px;
2385
  }
inc/core/assets/css/preview.css CHANGED
@@ -53,7 +53,7 @@ body::before, body::after {
53
  font-size: 16px;
54
  }
55
 
56
- .happyforms-part.unloading {
57
  opacity: 0.25;
58
  cursor: progress !important;
59
  -webkit-transition: opacity 0.5s;
53
  font-size: 16px;
54
  }
55
 
56
+ .happyforms-part.unloading, .happyforms-block-editable--partial.unloading {
57
  opacity: 0.25;
58
  cursor: progress !important;
59
  -webkit-transition: opacity 0.5s;
inc/core/assets/js/customize.js CHANGED
@@ -589,6 +589,7 @@
589
  }, this );
590
 
591
  $( '.happyforms-form-widgets', this.$el ).sortable( {
 
592
  handle: '.happyforms-part-widget-top',
593
 
594
  stop: function ( e, ui ) {
@@ -755,6 +756,8 @@
755
 
756
  if ( 'undefined' === typeof( options.index ) ) {
757
  $( '.happyforms-form-widgets', this.$el ).append( partView.render().$el );
 
 
758
  } else {
759
  $( '.happyforms-widget:nth-child(' + options.index + ')', this.$el ).after( partView.render().$el );
760
  }
@@ -781,7 +784,11 @@
781
 
782
  onPartSortStop: function( e, ui ) {
783
  var $sortable = $( '.happyforms-form-widgets', this.$el );
784
- var ids = $sortable.sortable( 'toArray', { attribute: 'data-part-id' } );
 
 
 
 
785
 
786
  this.model.get( 'parts' ).reset( _.map( ids, function( id ) {
787
  return this.model.get( 'parts' ).get( id );
@@ -1489,6 +1496,7 @@
1489
  'change [data-target="form_class"] input[type="checkbox"]': 'onFormClassCheckboxChange',
1490
  'change [data-target="css_var"] input[type=radio]': 'onButtonSetCssVarChange',
1491
  'keyup [data-target="attribute"] input[type=text]': 'onAttributeChange',
 
1492
  } ),
1493
 
1494
  pointers: {},
@@ -1558,8 +1566,7 @@
1558
 
1559
  var hasTable = happyForms.form
1560
  .get( 'parts' )
1561
- .findWhere( { type: 'table' } )
1562
- || happyForms.form.get( 'preview_before_submit' );
1563
 
1564
  if ( hasTable ) {
1565
  this.$el.addClass( 'has-table' );
@@ -1676,6 +1683,26 @@
1676
  }, 200);
1677
  },
1678
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1679
  initButtonSet: function() {
1680
  $('.happyforms-buttonset-container').buttonset();
1681
  },
@@ -1857,7 +1884,7 @@
1857
 
1858
  // Form title pencil
1859
  api.previewer.bind(
1860
- 'happyforms-pencil-click-title',
1861
  this.onPreviewPencilClickTitle.bind( this )
1862
  );
1863
 
@@ -2015,23 +2042,23 @@
2015
  },
2016
 
2017
  onFormClassChangeCallback: function( attribute, html, options ) {
2018
- var $form = this.$( html );
2019
  var previousClass = happyForms.form.previous( attribute );
2020
  var currentClass = happyForms.form.get( attribute );
2021
 
2022
- $form.removeClass( previousClass );
2023
- $form.addClass( currentClass );
2024
 
2025
  api.previewer.send( 'happyforms-form-class-updated' );
2026
  },
2027
 
2028
  onFormClassToggleCallback: function( attribute, html, options ) {
2029
- var $form = this.$( html );
2030
  var previousClass = happyForms.form.previous( attribute );
2031
  var currentClass = happyForms.form.get( attribute );
2032
 
2033
- $form.removeClass( previousClass );
2034
- $form.addClass( currentClass );
2035
  },
2036
 
2037
  onRecaptchaUpdate: function( $recaptcha, $ ) {
@@ -2091,6 +2118,30 @@
2091
  }
2092
 
2093
  return _.uniqueId( prefix );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2094
  }
2095
  };
2096
 
589
  }, this );
590
 
591
  $( '.happyforms-form-widgets', this.$el ).sortable( {
592
+ items: '.happyforms-widget:not(.no-sortable)',
593
  handle: '.happyforms-part-widget-top',
594
 
595
  stop: function ( e, ui ) {
756
 
757
  if ( 'undefined' === typeof( options.index ) ) {
758
  $( '.happyforms-form-widgets', this.$el ).append( partView.render().$el );
759
+ } else if ( 0 === options.index ) {
760
+ $( '.happyforms-form-widgets', this.$el ).prepend( partView.render().$el );
761
  } else {
762
  $( '.happyforms-widget:nth-child(' + options.index + ')', this.$el ).after( partView.render().$el );
763
  }
784
 
785
  onPartSortStop: function( e, ui ) {
786
  var $sortable = $( '.happyforms-form-widgets', this.$el );
787
+ var ids = [];
788
+
789
+ $( '.happyforms-widget', $sortable ).each( function() {
790
+ ids.push( $(this).attr( 'data-part-id' ) );
791
+ } );
792
 
793
  this.model.get( 'parts' ).reset( _.map( ids, function( id ) {
794
  return this.model.get( 'parts' ).get( id );
1496
  'change [data-target="form_class"] input[type="checkbox"]': 'onFormClassCheckboxChange',
1497
  'change [data-target="css_var"] input[type=radio]': 'onButtonSetCssVarChange',
1498
  'keyup [data-target="attribute"] input[type=text]': 'onAttributeChange',
1499
+ 'navigate-to-group': 'navigateToGroup'
1500
  } ),
1501
 
1502
  pointers: {},
1566
 
1567
  var hasTable = happyForms.form
1568
  .get( 'parts' )
1569
+ .findWhere( { type: 'table' } );
 
1570
 
1571
  if ( hasTable ) {
1572
  this.$el.addClass( 'has-table' );
1683
  }, 200);
1684
  },
1685
 
1686
+ navigateToGroup: function( e, options ) {
1687
+ if ( ! options.group ) {
1688
+ return;
1689
+ }
1690
+
1691
+ var $group = $( '#customize-control-' +options.group, this.$el );
1692
+
1693
+ if ( ! $group.length ) {
1694
+ return;
1695
+ }
1696
+
1697
+ $( '.happyforms-style-controls-group', this.$el ).removeClass( 'open' );
1698
+
1699
+ $( '.happyforms-divider-control', this.$el )
1700
+ .removeClass( 'active' )
1701
+ .addClass( 'inactive' );
1702
+
1703
+ $group.next().addClass( 'open' );
1704
+ },
1705
+
1706
  initButtonSet: function() {
1707
  $('.happyforms-buttonset-container').buttonset();
1708
  },
1884
 
1885
  // Form title pencil
1886
  api.previewer.bind(
1887
+ 'happyforms-title-pencil-click',
1888
  this.onPreviewPencilClickTitle.bind( this )
1889
  );
1890
 
2042
  },
2043
 
2044
  onFormClassChangeCallback: function( attribute, html, options ) {
2045
+ var $formContainer = this.$( html );
2046
  var previousClass = happyForms.form.previous( attribute );
2047
  var currentClass = happyForms.form.get( attribute );
2048
 
2049
+ $formContainer.removeClass( previousClass );
2050
+ $formContainer.addClass( currentClass );
2051
 
2052
  api.previewer.send( 'happyforms-form-class-updated' );
2053
  },
2054
 
2055
  onFormClassToggleCallback: function( attribute, html, options ) {
2056
+ var $formContainer = this.$( html );
2057
  var previousClass = happyForms.form.previous( attribute );
2058
  var currentClass = happyForms.form.get( attribute );
2059
 
2060
+ $formContainer.removeClass( previousClass );
2061
+ $formContainer.addClass( currentClass );
2062
  },
2063
 
2064
  onRecaptchaUpdate: function( $recaptcha, $ ) {
2118
  }
2119
 
2120
  return _.uniqueId( prefix );
2121
+ },
2122
+
2123
+ fetchPartialHtml: function( partialName, success ) {
2124
+ var data = {
2125
+ action: 'happyforms-form-fetch-partial-html',
2126
+ 'happyforms-nonce': api.settings.nonce.happyforms,
2127
+ happyforms: 1,
2128
+ wp_customize: 'on',
2129
+ form_id: happyForms.form.id,
2130
+ form: JSON.stringify( happyForms.form.toJSON() ),
2131
+ partial_name: partialName
2132
+ };
2133
+
2134
+ var request = $.ajax( ajaxurl, {
2135
+ type: 'post',
2136
+ dataType: 'html',
2137
+ data: data
2138
+ } );
2139
+
2140
+ happyForms.previewSend( 'happyforms-form-partial-disable', {
2141
+ partial: partialName
2142
+ } );
2143
+
2144
+ request.done( success );
2145
  }
2146
  };
2147
 
inc/core/assets/js/frontend.js CHANGED
@@ -154,17 +154,26 @@
154
 
155
  this.$el.on( 'happyforms-change', this.validate.bind( this ) );
156
  this.$el.trigger( 'happyforms-change' );
 
157
  this.$form.submit( this.submit.bind( this ) );
158
  this.$submit.click( this.buttonSubmit.bind( this ) );
159
  this.$submitLinks.click( this.linkSubmit.bind( this ) );
 
 
 
 
 
 
 
 
160
  },
161
 
162
  validate: function( e, data ) {
163
  var isValid = true;
164
 
165
- if ( this.$form.is( '.happyforms-form--disable-until-valid' ) ) {
166
  // Check every part
167
- var $parts = $( '[data-happyforms-type]', this.$form );
168
 
169
  $parts.each( function() {
170
  isValid = isValid && $( this ).happyFormPart( 'isValid' );
@@ -267,11 +276,14 @@
267
  $( this ).trigger( 'happyforms.detach' );
268
  } );
269
 
270
- this.$el.replaceWith( $el );
271
- $el.happyForm();
272
 
273
- var elTopOffset = $el.offset().top;
274
  var $form = $( 'form', $el );
 
 
 
 
 
275
  var $notices = $( '.happyforms-message-notices', $el );
276
 
277
  if ( $form.is( '.happyforms-form--notices-below' ) && $notices.length ) {
@@ -286,10 +298,18 @@
286
  elTopOffset += increment;
287
  }
288
 
289
- $( 'html, body' ).animate( {
290
- scrollTop: elTopOffset + 'px'
291
- }, 500 );
 
 
 
 
292
  }
 
 
 
 
293
  }
294
  }
295
 
@@ -309,7 +329,7 @@
309
  } else {
310
  var instance = $( this ).data( 'HappyFormPart' );
311
 
312
- if ( instance[method] ) {
313
  return instance[method].apply( instance, Array.prototype.slice.call( arguments, 1 ) );
314
  }
315
  }
154
 
155
  this.$el.on( 'happyforms-change', this.validate.bind( this ) );
156
  this.$el.trigger( 'happyforms-change' );
157
+ this.$el.trigger( 'happyforms-init' );
158
  this.$form.submit( this.submit.bind( this ) );
159
  this.$submit.click( this.buttonSubmit.bind( this ) );
160
  this.$submitLinks.click( this.linkSubmit.bind( this ) );
161
+ this.$el.on( 'happyforms-scrolltop', this.onScrollTop.bind( this ) );
162
+ },
163
+
164
+ detach: function() {
165
+ this.$el.off( 'happyforms-change' );
166
+ this.$el.off( 'happyforms-scrolltop' );
167
+ var $parts = $( '[data-happyforms-type]', this.$form );
168
+ $parts.remove();
169
  },
170
 
171
  validate: function( e, data ) {
172
  var isValid = true;
173
 
174
+ if ( this.$el.is( '.happyforms-form--disable-until-valid' ) ) {
175
  // Check every part
176
+ var $parts = $( '[data-happyforms-type]:visible', this.$form );
177
 
178
  $parts.each( function() {
179
  isValid = isValid && $( this ).happyFormPart( 'isValid' );
276
  $( this ).trigger( 'happyforms.detach' );
277
  } );
278
 
279
+ this.detach();
 
280
 
 
281
  var $form = $( 'form', $el );
282
+ $( 'form', this.$el ).replaceWith( $form );
283
+
284
+ this.$el.happyForm();
285
+
286
+ var elTopOffset = $el.offset().top;
287
  var $notices = $( '.happyforms-message-notices', $el );
288
 
289
  if ( $form.is( '.happyforms-form--notices-below' ) && $notices.length ) {
298
  elTopOffset += increment;
299
  }
300
 
301
+ this.$el.trigger( 'happyforms-scrolltop', elTopOffset );
302
+ }
303
+ },
304
+
305
+ onScrollTop: function( e, offset ) {
306
+ if ( e.isDefaultPrevented() ) {
307
+ return;
308
  }
309
+
310
+ $( 'html, body' ).animate( {
311
+ scrollTop: offset + 'px'
312
+ }, 500 );
313
  }
314
  }
315
 
329
  } else {
330
  var instance = $( this ).data( 'HappyFormPart' );
331
 
332
+ if ( instance && instance[method] ) {
333
  return instance[method].apply( instance, Array.prototype.slice.call( arguments, 1 ) );
334
  }
335
  }
inc/core/assets/js/frontend/long-text.js ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ( function( $ ) {
2
+
3
+ HappyForms.parts = HappyForms.parts || {};
4
+
5
+ HappyForms.parts.multi_line_text = {
6
+ init: function() {
7
+ this.type = this.$el.data( 'happyforms-type' );
8
+ this.$input = $( 'textarea', this.$el );
9
+ this.$counter = $( '.happyforms-part__char-counter span', this.$el );
10
+
11
+ this.$el.on( 'keyup', this.refreshCounter.bind( this ) );
12
+ this.refreshCounter();
13
+ },
14
+
15
+ refreshCounter: function() {
16
+ var maxLength = parseInt( this.$input.attr( 'data-max-length' ), 10 );
17
+
18
+ if ( maxLength < 1 ) {
19
+ return;
20
+ }
21
+
22
+ var remaining = maxLength - this.$input.val().length;
23
+ this.$counter.text( remaining );
24
+ },
25
+ };
26
+
27
+ } )( jQuery );
inc/core/assets/js/frontend/rich-text.js CHANGED
@@ -202,6 +202,7 @@
202
 
203
  var target = self.editor.dom.doc.querySelector( 'body' );
204
  self.inheritCSSVars( editorSettings.cssVars, target );
 
205
  } );
206
 
207
  // Custom main toolbar icons
@@ -217,7 +218,7 @@
217
  );
218
 
219
  self.editor = editor;
220
-
221
  var target = self.editor.dom.doc.querySelector( 'body' );
222
  target.style.color = $( 'body' ).css( 'color' );
223
  } );
@@ -225,11 +226,30 @@
225
  editor.on( 'change', self.onEditorChange.bind( self ) );
226
  editor.on( 'focus', self.onFocus.bind( self ) );
227
  editor.on( 'blur', self.onBlur.bind( self ) );
 
228
  },
229
  },
230
  } );
231
  },
232
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
233
  editorDestroy: function() {
234
  wp.editor.remove( this.editorId );
235
  self.editor = null;
202
 
203
  var target = self.editor.dom.doc.querySelector( 'body' );
204
  self.inheritCSSVars( editorSettings.cssVars, target );
205
+ self.refreshCounter();
206
  } );
207
 
208
  // Custom main toolbar icons
218
  );
219
 
220
  self.editor = editor;
221
+
222
  var target = self.editor.dom.doc.querySelector( 'body' );
223
  target.style.color = $( 'body' ).css( 'color' );
224
  } );
226
  editor.on( 'change', self.onEditorChange.bind( self ) );
227
  editor.on( 'focus', self.onFocus.bind( self ) );
228
  editor.on( 'blur', self.onBlur.bind( self ) );
229
+ editor.on( 'keyup', self.refreshCounter.bind( self ) );
230
  },
231
  },
232
  } );
233
  },
234
 
235
+ refreshCounter: function() {
236
+ var maxLength = parseInt( this.$input.attr( 'data-max-length' ) );
237
+
238
+ if ( maxLength < 1 ) {
239
+ return;
240
+ }
241
+
242
+ var content = this.editor.getContent( { format : 'text' } );
243
+ var length = content.length;
244
+
245
+ if ( '\n' === content ) {
246
+ length --;
247
+ }
248
+
249
+ var remaining = maxLength - length;
250
+ $( '.happyforms-part__char-counter span', this.$el ).text( remaining );
251
+ },
252
+
253
  editorDestroy: function() {
254
  wp.editor.remove( this.editorId );
255
  self.editor = null;
inc/core/assets/js/parts/part-multi-line-text.js CHANGED
@@ -16,11 +16,13 @@
16
  initialize: function() {
17
  happyForms.classes.views.Part.prototype.initialize.apply(this, arguments);
18
 
19
- this.listenTo( this.model, 'change:placeholder', this.onPlaceholderChange )
 
20
  },
21
 
22
  /**
23
- * Send updated placeholder value to previewer. Added as a special method because of 'textarea' selector used instead of 'input'.
 
24
  *
25
  * @since 1.0.0.
26
  *
@@ -33,7 +35,16 @@
33
  };
34
 
35
  happyForms.previewSend( 'happyforms-part-dom-update', data );
36
- }
 
 
 
 
 
 
 
 
 
37
  } );
38
 
39
  happyForms.previewer = _.extend( happyForms.previewer, {
@@ -43,6 +54,22 @@
43
 
44
  this.$( 'textarea', $part ).attr( 'placeholder', part.get( 'placeholder' ) );
45
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
46
  } );
47
 
48
  happyForms.factory.model = _.wrap( happyForms.factory.model, function( func, attrs, options, BaseClass ) {
16
  initialize: function() {
17
  happyForms.classes.views.Part.prototype.initialize.apply(this, arguments);
18
 
19
+ this.listenTo( this.model, 'change:placeholder', this.onPlaceholderChange );
20
+ this.listenTo( this.model, 'change:character_limit', this.onCharacterLimitChange );
21
  },
22
 
23
  /**
24
+ * Send updated placeholder value to previewer. Added as a special method
25
+ * because of 'textarea' selector used instead of 'input'.
26
  *
27
  * @since 1.0.0.
28
  *
35
  };
36
 
37
  happyForms.previewSend( 'happyforms-part-dom-update', data );
38
+ },
39
+
40
+ onCharacterLimitChange: function() {
41
+ var data = {
42
+ id: this.model.get( 'id' ),
43
+ callback: 'onCharacterLimitChangeCallback',
44
+ };
45
+
46
+ happyForms.previewSend( 'happyforms-part-dom-update', data );
47
+ },
48
  } );
49
 
50
  happyForms.previewer = _.extend( happyForms.previewer, {
54
 
55
  this.$( 'textarea', $part ).attr( 'placeholder', part.get( 'placeholder' ) );
56
  },
57
+
58
+ onCharacterLimitChangeCallback: function( id, html, options ) {
59
+ var part = this.getPartModel( id );
60
+ var $part = this.getPartElement( html );
61
+ var $counter = this.$( '.happyforms-part__char-counter', $part );
62
+ var limit = parseInt( part.get( 'character_limit' ), 10 ) || 0;
63
+
64
+ if ( limit < 1 ) {
65
+ $counter.hide();
66
+ } else {
67
+ $counter.show();
68
+ }
69
+
70
+ this.$( 'textarea', $part ).attr( 'data-max-length', part.get( 'character_limit' ) );
71
+ this.$( 'span', $counter ).text( part.get( 'character_limit' ) );
72
+ },
73
  } );
74
 
75
  happyForms.factory.model = _.wrap( happyForms.factory.model, function( func, attrs, options, BaseClass ) {
inc/core/assets/js/parts/part-rich-text.js CHANGED
@@ -16,11 +16,13 @@
16
  initialize: function() {
17
  happyForms.classes.views.Part.prototype.initialize.apply(this, arguments);
18
 
19
- this.listenTo( this.model, 'change:placeholder', this.onPlaceholderChange )
 
20
  },
21
 
22
  /**
23
- * Send updated placeholder value to previewer. Added as a special method because of 'textarea' selector used instead of 'input'.
 
24
  *
25
  * @since 1.0.0.
26
  *
@@ -33,7 +35,16 @@
33
  };
34
 
35
  happyForms.previewSend( 'happyforms-part-dom-update', data );
36
- }
 
 
 
 
 
 
 
 
 
37
  } );
38
 
39
  happyForms.previewer = _.extend( happyForms.previewer, {
@@ -43,6 +54,22 @@
43
 
44
  this.$( 'textarea', $part ).attr( 'placeholder', part.get( 'placeholder' ) );
45
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
46
  } );
47
 
48
  happyForms.factory.model = _.wrap( happyForms.factory.model, function( func, attrs, options, BaseClass ) {
16
  initialize: function() {
17
  happyForms.classes.views.Part.prototype.initialize.apply(this, arguments);
18
 
19
+ this.listenTo( this.model, 'change:placeholder', this.onPlaceholderChange );
20
+ this.listenTo( this.model, 'change:character_limit', this.onCharacterLimitChange );
21
  },
22
 
23
  /**
24
+ * Send updated placeholder value to previewer. Added as a special method
25
+ * because of 'textarea' selector used instead of 'input'.
26
  *
27
  * @since 1.0.0.
28
  *
35
  };
36
 
37
  happyForms.previewSend( 'happyforms-part-dom-update', data );
38
+ },
39
+
40
+ onCharacterLimitChange: function() {
41
+ var data = {
42
+ id: this.model.get( 'id' ),
43
+ callback: 'onCharacterLimitChangeCallback',
44
+ };
45
+
46
+ happyForms.previewSend( 'happyforms-part-dom-update', data );
47
+ },
48
  } );
49
 
50
  happyForms.previewer = _.extend( happyForms.previewer, {
54
 
55
  this.$( 'textarea', $part ).attr( 'placeholder', part.get( 'placeholder' ) );
56
  },
57
+
58
+ onCharacterLimitChangeCallback: function( id, html, options ) {
59
+ var part = this.getPartModel( id );
60
+ var $part = this.getPartElement( html );
61
+ var $counter = this.$( '.happyforms-part__char-counter', $part );
62
+ var limit = parseInt( part.get( 'character_limit' ), 10 ) || 0;
63
+
64
+ if ( limit < 1 ) {
65
+ $counter.hide();
66
+ } else {
67
+ $counter.show();
68
+ }
69
+
70
+ this.$( 'textarea', $part ).attr( 'data-max-length', part.get( 'character_limit' ) );
71
+ this.$( 'span', $counter ).text( part.get( 'character_limit' ) );
72
+ },
73
  } );
74
 
75
  happyForms.factory.model = _.wrap( happyForms.factory.model, function( func, attrs, options, BaseClass ) {
inc/core/assets/js/preview.js CHANGED
@@ -34,6 +34,8 @@
34
  } else {
35
  $submit.before( $part );
36
  }
 
 
37
  } else {
38
  var $previous = handlers.getPart( data.after );
39
  $previous.after( $part );
@@ -56,6 +58,34 @@
56
  $refreshedPart.trigger( 'happyforms.attach' );
57
  }
58
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
59
  handlers.formPartDisable = function( e ) {
60
  var $part = handlers.getPart( e.id );
61
 
@@ -79,6 +109,18 @@
79
  }
80
  }
81
 
 
 
 
 
 
 
 
 
 
 
 
 
82
  handlers.formPartsSort = function( ids ) {
83
  var $parts = $.map( ids, function( id ) {
84
  var $part = handlers.getPart( id );
@@ -116,7 +158,7 @@
116
  value: e.value,
117
  };
118
 
119
- document.querySelector( '#happyforms-' + formID + ' form' ).style.setProperty( e.variable, e.value );
120
 
121
  $.each( $parts, function( i, part ) {
122
  $( part ).trigger( 'happyforms.cssvar', variable );
@@ -130,7 +172,7 @@
130
  var $parts = $( '[data-happyforms-type]', $form );
131
 
132
  if ( callback ) {
133
- callback.call( context, e.attribute, $form, options );
134
  }
135
  }
136
 
@@ -149,10 +191,12 @@
149
  api.preview.send( 'happyforms-pencil-click-part', id );
150
  }
151
 
152
- handlers.pencilTitleClick = function( e ) {
153
  e.preventDefault();
154
 
155
- api.preview.send( 'happyforms-pencil-click-title' );
 
 
156
  }
157
 
158
  handlers.submitButtonTextUpdate = function ( text ) {
@@ -176,12 +220,13 @@
176
  handlers.init = function() {
177
  // Populate pointers
178
  $pencil = $( '#happyforms-pencil-template' ).html();
 
179
  $form = $( '.happyforms-form form' );
180
  $submit = $( '.happyforms-part.happyforms-part--submit', $form );
181
  $recaptcha = $( '.happyforms-part.happyforms-part--recaptcha', $form );
182
 
183
  // Append pencils to existing elements
184
- $( '.happyforms-block-editable' ).prepend( $( $pencil ) );
185
 
186
  // Remove unpreviewable
187
  $( '.happyforms-form form' ).removeClass( 'customize-unpreviewable' );
@@ -197,6 +242,10 @@
197
  api.preview.bind( 'happyforms-form-parts-sort', handlers.formPartsSort );
198
  api.preview.bind( 'happyforms-form-part-refresh', handlers.formPartRefresh );
199
  api.preview.bind( 'happyforms-form-part-disable', handlers.formPartDisable );
 
 
 
 
200
  api.preview.bind( 'happyforms-part-dom-update', handlers.partDomUpdate );
201
  api.preview.bind( 'happyforms-css-variable-update', handlers.cssVariableUpdate );
202
  api.preview.bind( 'happyforms-form-class-update', handlers.formClassUpdate );
@@ -207,14 +256,14 @@
207
  // Bind DOM handlers
208
  $( document.body ).on(
209
  'click',
210
- '.happyforms-block-editable--title .customize-partial-edit-shortcut',
211
- handlers.pencilTitleClick
212
  );
213
 
214
  $( document.body ).on(
215
  'click',
216
- '.happyforms-block-editable--part .customize-partial-edit-shortcut',
217
- handlers.pencilPartClick
218
  );
219
 
220
  $( '.happyforms-ask-link, .happyforms-notice p a' ).on( 'click', function() {
34
  } else {
35
  $submit.before( $part );
36
  }
37
+ } else if ( -1 === data.after ) {
38
+ $( '.happyforms-part', $form ).first().before( $part );
39
  } else {
40
  var $previous = handlers.getPart( data.after );
41
  $previous.after( $part );
58
  $refreshedPart.trigger( 'happyforms.attach' );
59
  }
60
 
61
+ handlers.partialHtmlFetch = function( e ) {
62
+ var $partial = $( e.selector );
63
+ var context = parent.happyForms.previewer;
64
+ var $refreshedPartial = $( e.html );
65
+ var options = e.options || {};
66
+
67
+ if ( options.pencil ) {
68
+ $refreshedPartial.prepend( $( $pencil ) );
69
+ }
70
+
71
+ if ( $partial.length ) {
72
+ $partial.replaceWith( $refreshedPartial );
73
+ } else {
74
+ $( options.after ).after( $refreshedPartial );
75
+ }
76
+ }
77
+
78
+ handlers.partialDomUpdate = function( e ) {
79
+ var $partial = $( e.partialSelector );
80
+ var context = parent.happyForms.previewer;
81
+ var callback = context[e.callback];
82
+ var options = e.options || {};
83
+
84
+ if ( callback ) {
85
+ callback.call( context, e.partialSelector, e.id, $partial, options, $ );
86
+ }
87
+ }
88
+
89
  handlers.formPartDisable = function( e ) {
90
  var $part = handlers.getPart( e.id );
91
 
109
  }
110
  }
111
 
112
+ handlers.partialDisable = function( e ) {
113
+ var $partial = $( '[data-partial-id='+ e.partial + ']' );
114
+
115
+ $partial.addClass( 'unloading' );
116
+ }
117
+
118
+ handlers.partialRemove = function( e ) {
119
+ var $partial = $( '[data-partial-id='+ e.partial + ']' );
120
+
121
+ $partial.remove();
122
+ }
123
+
124
  handlers.formPartsSort = function( ids ) {
125
  var $parts = $.map( ids, function( id ) {
126
  var $part = handlers.getPart( id );
158
  value: e.value,
159
  };
160
 
161
+ document.querySelector( '.happyforms-form' ).style.setProperty( e.variable, e.value );
162
 
163
  $.each( $parts, function( i, part ) {
164
  $( part ).trigger( 'happyforms.cssvar', variable );
172
  var $parts = $( '[data-happyforms-type]', $form );
173
 
174
  if ( callback ) {
175
+ callback.call( context, e.attribute, $formContainer, options );
176
  }
177
  }
178
 
191
  api.preview.send( 'happyforms-pencil-click-part', id );
192
  }
193
 
194
+ handlers.pencilPartialClick = function( e ) {
195
  e.preventDefault();
196
 
197
+ var $partial = $( e.target ).closest( '.happyforms-partial-edit-shortcut' ).parent();
198
+
199
+ api.preview.send( 'happyforms-' + $partial.attr( 'data-partial-id' ) + '-pencil-click' );
200
  }
201
 
202
  handlers.submitButtonTextUpdate = function ( text ) {
220
  handlers.init = function() {
221
  // Populate pointers
222
  $pencil = $( '#happyforms-pencil-template' ).html();
223
+ $formContainer = $( '.happyforms-form' );
224
  $form = $( '.happyforms-form form' );
225
  $submit = $( '.happyforms-part.happyforms-part--submit', $form );
226
  $recaptcha = $( '.happyforms-part.happyforms-part--recaptcha', $form );
227
 
228
  // Append pencils to existing elements
229
+ $( '.happyforms-block-editable:not(.no-pencil)' ).prepend( $( $pencil ) );
230
 
231
  // Remove unpreviewable
232
  $( '.happyforms-form form' ).removeClass( 'customize-unpreviewable' );
242
  api.preview.bind( 'happyforms-form-parts-sort', handlers.formPartsSort );
243
  api.preview.bind( 'happyforms-form-part-refresh', handlers.formPartRefresh );
244
  api.preview.bind( 'happyforms-form-part-disable', handlers.formPartDisable );
245
+ api.preview.bind( 'happyforms-form-partial-html-fetch', handlers.partialHtmlFetch );
246
+ api.preview.bind( 'happyforms-form-partial-dom-update', handlers.partialDomUpdate );
247
+ api.preview.bind( 'happyforms-form-partial-disable', handlers.partialDisable );
248
+ api.preview.bind( 'happyforms-form-partial-remove', handlers.partialRemove );
249
  api.preview.bind( 'happyforms-part-dom-update', handlers.partDomUpdate );
250
  api.preview.bind( 'happyforms-css-variable-update', handlers.cssVariableUpdate );
251
  api.preview.bind( 'happyforms-form-class-update', handlers.formClassUpdate );
256
  // Bind DOM handlers
257
  $( document.body ).on(
258
  'click',
259
+ '.happyforms-block-editable--part .customize-partial-edit-shortcut',
260
+ handlers.pencilPartClick
261
  );
262
 
263
  $( document.body ).on(
264
  'click',
265
+ '.happyforms-block-editable--partial .customize-partial-edit-shortcut',
266
+ handlers.pencilPartialClick
267
  );
268
 
269
  $( '.happyforms-ask-link, .happyforms-notice p a' ).on( 'click', function() {
inc/core/classes/class-form-controller.php CHANGED
@@ -58,6 +58,8 @@ class HappyForms_Form_Controller {
58
  add_action( 'trashed_post', array( $this, 'trashed_post' ) );
59
  add_action( 'delete_post', array( $this, 'delete_post' ) );
60
  add_action( 'untrashed_post', array( $this, 'untrashed_post' ) );
 
 
61
  }
62
 
63
  /**
@@ -720,6 +722,16 @@ class HappyForms_Form_Controller {
720
  return $form;
721
  }
722
 
 
 
 
 
 
 
 
 
 
 
723
  /**
724
  * Return the first part with the given type found in a form.
725
  *
@@ -784,7 +796,7 @@ class HappyForms_Form_Controller {
784
  return array(
785
  'form_error' => array(
786
  'type' => 'error-submission',
787
- 'message' => __( 'Your submission contains errors.', 'happyforms' ),
788
  ),
789
  'form_success' => array(
790
  'type' => 'success',
@@ -823,6 +835,12 @@ class HappyForms_Form_Controller {
823
  return $form_markup;
824
  }
825
 
 
 
 
 
 
 
826
  public function get_default_steps( $form ) {
827
  $steps = array(
828
  1000 => 'submit',
58
  add_action( 'trashed_post', array( $this, 'trashed_post' ) );
59
  add_action( 'delete_post', array( $this, 'delete_post' ) );
60
  add_action( 'untrashed_post', array( $this, 'untrashed_post' ) );
61
+
62
+ add_action( 'happyforms_form_before', array( $this, 'render_title' ) );
63
  }
64
 
65
  /**
722
  return $form;
723
  }
724
 
725
+ public function get_parts_by_type( $form, $type = '' ) {
726
+ $parts = array_filter( $form['parts'], function( $part ) use( $type ) {
727
+ return $part['type'] === $type;
728
+ } );
729
+
730
+ $parts = array_values( $parts );
731
+
732
+ return $parts;
733
+ }
734
+
735
  /**
736
  * Return the first part with the given type found in a form.
737
  *
796
  return array(
797
  'form_error' => array(
798
  'type' => 'error-submission',
799
+ 'message' => __( 'Oops! Your response is invalid — please review your message.', 'happyforms' ),
800
  ),
801
  'form_success' => array(
802
  'type' => 'success',
835
  return $form_markup;
836
  }
837
 
838
+ public function render_title( $form ) {
839
+ do_action( 'happyforms_before_title', $form );
840
+ happyforms_the_form_title( $form );
841
+ do_action( 'happyforms_after_title', $form );
842
+ }
843
+
844
  public function get_default_steps( $form ) {
845
  $steps = array(
846
  1000 => 'submit',
inc/core/classes/class-form-setup.php CHANGED
@@ -59,7 +59,7 @@ class HappyForms_Form_Setup {
59
 
60
  $fields = array(
61
  'confirmation_message' => array(
62
- 'default' => __( 'Your message has been successfully sent. We appreciate you contacting us and we’ll be in touch soon.', 'happyforms' ),
63
  'sanitize' => 'esc_html',
64
  ),
65
  'receive_email_alerts' => array(
@@ -417,7 +417,7 @@ class HappyForms_Form_Setup {
417
  return $title;
418
  }
419
 
420
- $before = '<div class="happyforms-block-editable happyforms-block-editable--title">';
421
  $after = '</div>';
422
  $title = "{$before}{$title}{$after}";
423
 
59
 
60
  $fields = array(
61
  'confirmation_message' => array(
62
+ 'default' => __( 'Thank you! Your response has been successfully submitted.', 'happyforms' ),
63
  'sanitize' => 'esc_html',
64
  ),
65
  'receive_email_alerts' => array(
417
  return $title;
418
  }
419
 
420
+ $before = '<div class="happyforms-block-editable happyforms-block-editable--partial" data-partial-id="title">';
421
  $after = '</div>';
422
  $title = "{$before}{$title}{$after}";
423
 
inc/core/classes/class-form-styles.php CHANGED
@@ -306,18 +306,36 @@ class HappyForms_Form_Styles {
306
  'target' => 'css_var',
307
  'variable' => '--happyforms-color-primary',
308
  ),
309
- 'color_success' => array(
310
- 'default' => '#39b54a',
311
  'sanitize' => 'sanitize_text_field',
312
  'target' => 'css_var',
313
- 'variable' => '--happyforms-color-success',
 
 
 
 
 
 
314
  ),
315
  'color_error' => array(
316
- 'default' => '#ff7550',
317
  'sanitize' => 'sanitize_text_field',
318
  'target' => 'css_var',
319
  'variable' => '--happyforms-color-error',
320
  ),
 
 
 
 
 
 
 
 
 
 
 
 
321
  'color_part_title' => array(
322
  'default' => '#000000',
323
  'sanitize' => 'sanitize_text_field',
@@ -533,14 +551,29 @@ class HappyForms_Form_Styles {
533
  ),
534
  800 => array(
535
  'type' => 'color',
536
- 'label' => __( 'Success', 'happyforms' ),
537
- 'field' => 'color_success',
 
 
 
 
 
538
  ),
539
  900 => array(
540
  'type' => 'color',
541
  'label' => __( 'Error', 'happyforms' ),
542
  'field' => 'color_error',
543
  ),
 
 
 
 
 
 
 
 
 
 
544
  1000 => array(
545
  'type' => 'divider',
546
  'label' => __( 'Form title', 'happyforms' ),
306
  'target' => 'css_var',
307
  'variable' => '--happyforms-color-primary',
308
  ),
309
+ 'color_success_notice' => array(
310
+ 'default' => '#ebf9f0',
311
  'sanitize' => 'sanitize_text_field',
312
  'target' => 'css_var',
313
+ 'variable' => '--happyforms-color-success-notice',
314
+ ),
315
+ 'color_success_notice_text' => array(
316
+ 'default' => '#1eb452',
317
+ 'sanitize' => 'sanitize_text_field',
318
+ 'target' => 'css_var',
319
+ 'variable' => '--happyforms-color-success-notice-text'
320
  ),
321
  'color_error' => array(
322
+ 'default' => '#ff4200',
323
  'sanitize' => 'sanitize_text_field',
324
  'target' => 'css_var',
325
  'variable' => '--happyforms-color-error',
326
  ),
327
+ 'color_error_notice' => array(
328
+ 'default' => '#ffeae5',
329
+ 'sanitize' => 'sanitize_text_field',
330
+ 'target' => 'css_var',
331
+ 'variable' => '--happyforms-color-error-notice',
332
+ ),
333
+ 'color_error_notice_text' => array(
334
+ 'default' => '#ff4200',
335
+ 'sanitize' => 'sanitize_text_field',
336
+ 'target' => 'css_var',
337
+ 'variable' => '--happyforms-color-error-notice-text',
338
+ ),
339
  'color_part_title' => array(
340
  'default' => '#000000',
341
  'sanitize' => 'sanitize_text_field',
551
  ),
552
  800 => array(
553
  'type' => 'color',
554
+ 'label' => __( 'Success notice', 'happyforms' ),
555
+ 'field' => 'color_success_notice',
556
+ ),
557
+ 801 => array(
558
+ 'type' => 'color',
559
+ 'label' => __( 'Success notice text', 'happyforms' ),
560
+ 'field' => 'color_success_notice_text',
561
  ),
562
  900 => array(
563
  'type' => 'color',
564
  'label' => __( 'Error', 'happyforms' ),
565
  'field' => 'color_error',
566
  ),
567
+ 901 => array(
568
+ 'type' => 'color',
569
+ 'label' => __( 'Error notice', 'happyforms' ),
570
+ 'field' => 'color_error_notice',
571
+ ),
572
+ 902 => array(
573
+ 'type' => 'color',
574
+ 'label' => __( 'Error notice text', 'happyforms' ),
575
+ 'field' => 'color_error_notice_text',
576
+ ),
577
  1000 => array(
578
  'type' => 'divider',
579
  'label' => __( 'Form title', 'happyforms' ),
inc/core/classes/class-message-controller.php CHANGED
@@ -278,7 +278,7 @@ class HappyForms_Message_Controller {
278
 
279
  // Set form step
280
  $step = isset( $_REQUEST[$this->form_step_parameter] ) ?
281
- intval( $_REQUEST[$this->form_step_parameter] ) : 0;
282
 
283
  happyforms_get_session()->set_step( $step );
284
 
@@ -289,6 +289,7 @@ class HappyForms_Message_Controller {
289
  }
290
  }
291
 
 
292
  do_action( 'happyforms_step', $form );
293
  }
294
 
@@ -314,7 +315,7 @@ class HappyForms_Message_Controller {
314
 
315
  if ( false === $submission ) {
316
  // Add a general error notice at the top
317
- $session->add_error( $form_id, __( 'Your submission contains errors.', 'happyforms' ) );
318
 
319
  // Reset to start step
320
  $session->reset_step();
@@ -414,7 +415,7 @@ class HappyForms_Message_Controller {
414
 
415
  if ( false === $submission ) {
416
  // Add a general error notice at the top
417
- $session->add_error( $form_id, __( 'Your submission contains errors.', 'happyforms' ) );
418
 
419
  // Reset to start step
420
  $session->reset_step();
@@ -449,7 +450,7 @@ class HappyForms_Message_Controller {
449
 
450
  if ( false === $submission ) {
451
  // Add a general error notice at the top
452
- $session->add_error( $form_id, __( 'Your submission contains errors.', 'happyforms' ) );
453
  }
454
 
455
  // Reset to start step
278
 
279
  // Set form step
280
  $step = isset( $_REQUEST[$this->form_step_parameter] ) ?
281
+ $_REQUEST[$this->form_step_parameter] : '';
282
 
283
  happyforms_get_session()->set_step( $step );
284
 
289
  }
290
  }
291
 
292
+ define( 'HAPPYFORMS_STEPPING', true );
293
  do_action( 'happyforms_step', $form );
294
  }
295
 
315
 
316
  if ( false === $submission ) {
317
  // Add a general error notice at the top
318
+ $session->add_error( $form_id, __( 'Oops! Your response is invalid — please review your message.', 'happyforms' ) );
319
 
320
  // Reset to start step
321
  $session->reset_step();
415
 
416
  if ( false === $submission ) {
417
  // Add a general error notice at the top
418
+ $session->add_error( $form_id, __( 'Oops! Your response is invalid — please review your message.', 'happyforms' ) );
419
 
420
  // Reset to start step
421
  $session->reset_step();
450
 
451
  if ( false === $submission ) {
452
  // Add a general error notice at the top
453
+ $session->add_error( $form_id, __( 'Oops! Your response is invalid — please review your message.', 'happyforms' ) );
454
  }
455
 
456
  // Reset to start step
inc/core/classes/class-session.php CHANGED
@@ -45,6 +45,13 @@ class HappyForms_Session {
45
  */
46
  private $step = 0;
47
 
 
 
 
 
 
 
 
48
  /**
49
  * The singleton constructor.
50
  *
@@ -64,6 +71,12 @@ class HappyForms_Session {
64
  $this->errors[$key] = $message;
65
  }
66
 
 
 
 
 
 
 
67
  /**
68
  * Add a notice to be displayed on the next refresh.
69
  *
@@ -75,10 +88,22 @@ class HappyForms_Session {
75
  $this->notices[$key] = $message;
76
  }
77
 
 
 
 
 
 
 
78
  public function add_value( $key, $value ) {
79
  $this->values[$key] = $value;
80
  }
81
 
 
 
 
 
 
 
82
  /**
83
  * Get the messages for the given form and location.
84
  *
@@ -108,10 +133,6 @@ class HappyForms_Session {
108
  return $messages;
109
  }
110
 
111
- public function get_values() {
112
- return $this->values;
113
- }
114
-
115
  public function get_value( $location = '', $component = false ) {
116
  $value = false;
117
 
@@ -130,8 +151,8 @@ class HappyForms_Session {
130
  $this->values = array();
131
  }
132
 
133
- public function current_step() {
134
- return $this->step;
135
  }
136
 
137
  public function next_step() {
@@ -143,13 +164,53 @@ class HappyForms_Session {
143
  }
144
 
145
  public function set_step( $step ) {
146
- $this->step = $step;
 
147
  }
148
 
149
  public function reset_step() {
150
  $this->step = 0;
151
  }
152
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
153
  }
154
 
155
  if ( ! function_exists( 'happyforms_get_session' ) ):
45
  */
46
  private $step = 0;
47
 
48
+ /**
49
+ * Current literal step
50
+ *
51
+ * @var int
52
+ */
53
+ private $literal_step = '';
54
+
55
  /**
56
  * The singleton constructor.
57
  *
71
  $this->errors[$key] = $message;
72
  }
73
 
74
+ public function remove_error( $key ) {
75
+ if ( isset( $this->errors[$key] ) ) {
76
+ unset( $this->errors[$key] );
77
+ }
78
+ }
79
+
80
  /**
81
  * Add a notice to be displayed on the next refresh.
82
  *
88
  $this->notices[$key] = $message;
89
  }
90
 
91
+ public function remove_notice( $key ) {
92
+ if ( isset( $this->notices[$key] ) ) {
93
+ unset( $this->notices[$key] );
94
+ }
95
+ }
96
+
97
  public function add_value( $key, $value ) {
98
  $this->values[$key] = $value;
99
  }
100
 
101
+ public function remove_value( $key ) {
102
+ if ( isset( $this->values[$key] ) ) {
103
+ unset( $this->values[$key] );
104
+ }
105
+ }
106
+
107
  /**
108
  * Get the messages for the given form and location.
109
  *
133
  return $messages;
134
  }
135
 
 
 
 
 
136
  public function get_value( $location = '', $component = false ) {
137
  $value = false;
138
 
151
  $this->values = array();
152
  }
153
 
154
+ public function current_step( $literal = false ) {
155
+ return $literal ? $this->literal_step : $this->step;
156
  }
157
 
158
  public function next_step() {
164
  }
165
 
166
  public function set_step( $step ) {
167
+ $this->literal_step = $step;
168
+ $this->step = intval( $step );
169
  }
170
 
171
  public function reset_step() {
172
  $this->step = 0;
173
  }
174
 
175
+ public function serialize() {
176
+ $data = array_merge( $this->values, array(
177
+ 'step' => $this->step,
178
+ ) );
179
+
180
+ $serialized = wp_slash( json_encode( $data ) );
181
+
182
+ return $serialized;
183
+ }
184
+
185
+ public function unserialize( $data ) {
186
+ $data = json_decode( wp_unslash( $data ), true );
187
+
188
+ if ( ! isset( $data['step'] ) ) {
189
+ $data['step'] = 0;
190
+ } else {
191
+ $data['step'] = intval( $data['step'] );
192
+ }
193
+
194
+ return $data;
195
+ }
196
+
197
+ public function from_data( $data, $apply_step = false ) {
198
+ $step = 0;
199
+
200
+ if ( isset( $data['step'] ) ) {
201
+ $step = intval( $data['step'] );
202
+ unset( $data['step'] );
203
+ }
204
+
205
+ foreach( $data as $key => $value ) {
206
+ $this->add_value( $key, $value );
207
+ }
208
+
209
+ if ( $apply_step ) {
210
+ $this->set_step( $step );
211
+ }
212
+ }
213
+
214
  }
215
 
216
  if ( ! function_exists( 'happyforms_get_session' ) ):
inc/core/classes/class-wp-customize-form-manager.php CHANGED
@@ -30,6 +30,7 @@ class HappyForms_WP_Customize_Form_Manager {
30
  // Ajax callbacks.
31
  add_action( 'wp_ajax_happyforms-update-form', array( $this, 'ajax_update_form' ) );
32
  add_action( 'wp_ajax_happyforms-form-part-add', array( $this, 'ajax_form_part_add' ) );
 
33
  }
34
 
35
  /**
@@ -321,6 +322,43 @@ class HappyForms_WP_Customize_Form_Manager {
321
  do_action( 'happyforms_customize_enqueue_scripts' );
322
  }
323
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
324
  /**
325
  * Action: output Javascript templates for the form editing interface.
326
  *
30
  // Ajax callbacks.
31
  add_action( 'wp_ajax_happyforms-update-form', array( $this, 'ajax_update_form' ) );
32
  add_action( 'wp_ajax_happyforms-form-part-add', array( $this, 'ajax_form_part_add' ) );
33
+ add_action( 'wp_ajax_happyforms-form-fetch-partial-html', array( $this, 'ajax_fetch_partial' ) );
34
  }
35
 
36
  /**
322
  do_action( 'happyforms_customize_enqueue_scripts' );
323
  }
324
 
325
+ /**
326
+ * Action: return part metadata after it has been added
327
+ * to the form in a format the Customize preview can
328
+ * handle.
329
+ *
330
+ * @since 1.0
331
+ *
332
+ * @hooked action wp_ajax_happyforms-form-part-added
333
+ *
334
+ * @return void
335
+ */
336
+ public function ajax_fetch_partial() {
337
+ if ( ! check_ajax_referer( 'happyforms', 'happyforms-nonce', false ) ) {
338
+ status_header( 400 );
339
+ wp_send_json_error( 'bad_nonce' );
340
+ }
341
+
342
+ if ( ! current_user_can( 'customize' ) ) {
343
+ status_header( 403 );
344
+ wp_send_json_error( 'customize_not_allowed' );
345
+ }
346
+
347
+ if ( ! isset( $_POST['form'] ) ) {
348
+ status_header( 403 );
349
+ wp_send_json_error( 'Missing data' );
350
+ }
351
+
352
+ $form_data = json_decode( wp_unslash( $_POST['form'] ), true );
353
+ $partial_name = sanitize_text_field( $_POST['partial_name'] );
354
+ $template = happyforms_get_form_partial( $partial_name, $form_data );
355
+ $template = stripslashes( $template );
356
+
357
+ header( 'Content-type: text/html' );
358
+ echo ( $template );
359
+ exit();
360
+ }
361
+
362
  /**
363
  * Action: output Javascript templates for the form editing interface.
364
  *
inc/core/classes/parts/class-part-multi-line-text.php CHANGED
@@ -9,7 +9,10 @@ class HappyForms_Part_MultiLineText extends HappyForms_Form_Part {
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_part_class', array( $this, 'html_part_class' ), 10, 3 );
 
13
  }
14
 
15
  /**
@@ -45,6 +48,10 @@ class HappyForms_Part_MultiLineText extends HappyForms_Form_Part {
45
  'default' => '',
46
  'sanitize' => 'sanitize_text_field',
47
  ),
 
 
 
 
48
  'width' => array(
49
  'default' => 'full',
50
  'sanitize' => 'sanitize_key'
@@ -147,6 +154,16 @@ class HappyForms_Part_MultiLineText extends HappyForms_Form_Part {
147
  $validated_value = new WP_Error( 'error', __( 'This field is required.', 'happyforms' ) );
148
  }
149
 
 
 
 
 
 
 
 
 
 
 
150
  return $validated_value;
151
  }
152
 
@@ -172,4 +189,58 @@ class HappyForms_Part_MultiLineText extends HappyForms_Form_Part {
172
  return $class;
173
  }
174
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
175
  }
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_part_attributes', array( $this, 'html_part_attributes' ), 10, 2 );
13
+ add_action( 'happyforms_part_input_after', array( $this, 'part_input_after' ) );
14
  add_filter( 'happyforms_part_class', array( $this, 'html_part_class' ), 10, 3 );
15
+ add_filter( 'happyforms_frontend_dependencies', array( $this, 'script_dependencies' ), 10, 2 );
16
  }
17
 
18
  /**
48
  'default' => '',
49
  'sanitize' => 'sanitize_text_field',
50
  ),
51
+ 'character_limit' => array(
52
+ 'default' => '',
53
+ 'sanitize' => 'sanitize_text_field',
54
+ ),
55
  'width' => array(
56
  'default' => 'full',
57
  'sanitize' => 'sanitize_key'
154
  $validated_value = new WP_Error( 'error', __( 'This field is required.', 'happyforms' ) );
155
  }
156
 
157
+ if ( isset( $part['character_limit'] ) ) {
158
+ $character_limit = intval( $part['character_limit'] );
159
+
160
+ if ( $character_limit > 0 ) {
161
+ if ( strlen( $validated_value ) > $character_limit ) {
162
+ return new WP_Error( 'error', __( 'Value exceeds character limit.', 'happyforms' ) );
163
+ }
164
+ }
165
+ }
166
+
167
  return $validated_value;
168
  }
169
 
189
  return $class;
190
  }
191
 
192
+ public function html_part_attributes( $attrs, $part ) {
193
+ if ( $this->type !== $part['type'] ) {
194
+ return $attrs;
195
+ }
196
+
197
+ if ( ! empty( $part['character_limit'] ) || happyforms_is_preview() ) {
198
+ $limit = intval( $part['character_limit'] );
199
+ $attrs[] = "data-max-length=\"{$limit}\"";
200
+ }
201
+
202
+ return $attrs;
203
+ }
204
+
205
+ public function part_input_after( $part ) {
206
+ if ( $this->type !== $part['type'] ) {
207
+ return;
208
+ }
209
+
210
+ if ( ! empty( $part['character_limit'] ) || happyforms_is_preview() ) {
211
+ $limit = intval( $part['character_limit'] );
212
+ ?>
213
+ <div class="happyforms-part__char-counter" <?php if ( happyforms_is_preview() && empty( $part['character_limit'] ) ) : ?>style="display: none;"<?php endif; ?>>
214
+ <span><?php echo $limit; ?></span> <?php _e( 'characters', 'happyforms' ); ?>
215
+ </div>
216
+ <?php
217
+ }
218
+ }
219
+
220
+ public function script_dependencies( $deps, $forms ) {
221
+ $contains_long_text = false;
222
+ $form_controller = happyforms_get_form_controller();
223
+
224
+ foreach ( $forms as $form ) {
225
+ if ( $form_controller->get_first_part_by_type( $form, $this->type ) ) {
226
+ $contains_long_text = true;
227
+ break;
228
+ }
229
+ }
230
+
231
+ if ( ! happyforms_is_preview() && ! $contains_long_text ) {
232
+ return $deps;
233
+ }
234
+
235
+ wp_register_script(
236
+ 'happyforms-part-long-text',
237
+ happyforms_get_plugin_url() . 'inc/core/assets/js/frontend/long-text.js',
238
+ array( 'editor' ), HAPPYFORMS_VERSION, true
239
+ );
240
+
241
+ $deps[] = 'happyforms-part-long-text';
242
+
243
+ return $deps;
244
+ }
245
+
246
  }
inc/core/classes/parts/class-part-rich-text.php CHANGED
@@ -10,6 +10,8 @@ class HappyForms_Part_RichText extends HappyForms_Form_Part {
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 );
 
 
13
  add_filter( 'happyforms_frontend_dependencies', array( $this, 'script_dependencies' ), 10, 2 );
14
  add_action( 'happyforms_footer', array( $this, 'footer_templates' ) );
15
  }
@@ -43,6 +45,10 @@ class HappyForms_Part_RichText extends HappyForms_Form_Part {
43
  'default' => '',
44
  'sanitize' => 'sanitize_text_field'
45
  ),
 
 
 
 
46
  'width' => array(
47
  'default' => 'full',
48
  'sanitize' => 'sanitize_key'
@@ -187,7 +193,19 @@ class HappyForms_Part_RichText extends HappyForms_Form_Part {
187
  $validated_value = $value;
188
 
189
  if ( 1 === $part['required'] && empty( $validated_value ) ) {
190
- $validated_value = new WP_Error( 'error', __( 'This field is required.', 'happyforms' ) );
 
 
 
 
 
 
 
 
 
 
 
 
191
  }
192
 
193
  return $validated_value;
@@ -211,6 +229,34 @@ class HappyForms_Part_RichText extends HappyForms_Form_Part {
211
  return $class;
212
  }
213
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
214
  public function script_dependencies( $deps, $forms ) {
215
  $contains_rich_text = false;
216
  $form_controller = happyforms_get_form_controller();
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 );
13
+ add_filter( 'happyforms_part_attributes', array( $this, 'html_part_attributes' ), 10, 2 );
14
+ add_action( 'happyforms_part_input_after', array( $this, 'part_input_after' ) );
15
  add_filter( 'happyforms_frontend_dependencies', array( $this, 'script_dependencies' ), 10, 2 );
16
  add_action( 'happyforms_footer', array( $this, 'footer_templates' ) );
17
  }
45
  'default' => '',
46
  'sanitize' => 'sanitize_text_field'
47
  ),
48
+ 'character_limit' => array(
49
+ 'default' => '',
50
+ 'sanitize' => 'sanitize_text_field',
51
+ ),
52
  'width' => array(
53
  'default' => 'full',
54
  'sanitize' => 'sanitize_key'
193
  $validated_value = $value;
194
 
195
  if ( 1 === $part['required'] && empty( $validated_value ) ) {
196
+ return new WP_Error( 'error', __( 'This field is required.', 'happyforms' ) );
197
+ }
198
+
199
+ if ( isset( $part['character_limit'] ) ) {
200
+ $character_limit = intval( $part['character_limit'] );
201
+
202
+ if ( $character_limit > 0 ) {
203
+ $clean_value = wp_strip_all_tags( $validated_value, true );
204
+
205
+ if ( strlen( $clean_value ) > $character_limit ) {
206
+ return new WP_Error( 'error', __( 'Value exceeds character limit.', 'happyforms' ) );
207
+ }
208
+ }
209
  }
210
 
211
  return $validated_value;
229
  return $class;
230
  }
231
 
232
+ public function html_part_attributes( $attrs, $part ) {
233
+ if ( $this->type !== $part['type'] ) {
234
+ return $attrs;
235
+ }
236
+
237
+ if ( ! empty( $part['character_limit'] ) || happyforms_is_preview() ) {
238
+ $limit = intval( $part['character_limit'] );
239
+ $attrs[] = "data-max-length=\"{$limit}\"";
240
+ }
241
+
242
+ return $attrs;
243
+ }
244
+
245
+ public function part_input_after( $part ) {
246
+ if ( $this->type !== $part['type'] ) {
247
+ return;
248
+ }
249
+
250
+ if ( ! empty( $part['character_limit'] ) || happyforms_is_preview() ) {
251
+ $limit = intval( $part['character_limit'] );
252
+ ?>
253
+ <div class="happyforms-part__char-counter" <?php if ( happyforms_is_preview() && empty( $part['character_limit'] ) ) : ?>style="display: none;"<?php endif; ?>>
254
+ <span><?php echo $limit; ?></span> <?php _e( 'characters', 'happyforms' ); ?>
255
+ </div>
256
+ <?php
257
+ }
258
+ }
259
+
260
  public function script_dependencies( $deps, $forms ) {
261
  $contains_rich_text = false;
262
  $form_controller = happyforms_get_form_controller();
inc/core/classes/parts/class-part-title.php CHANGED
@@ -103,7 +103,7 @@ class HappyForms_Part_Title extends HappyForms_Form_Part {
103
  * @return array List of honorifics.
104
  */
105
  public function get_honorifics() {
106
- return array(
107
  array( 'id' => 'mr', 'label' => __( 'Mr.', 'happyforms' ) ),
108
  array( 'id' => 'mrs', 'label' => __( 'Mrs.', 'happyforms' ) ),
109
  array( 'id' => 'ms', 'label' => __( 'Ms.', 'happyforms' ) ),
@@ -111,6 +111,10 @@ class HappyForms_Part_Title extends HappyForms_Form_Part {
111
  array( 'id' => 'prof', 'label' => __( 'Prof.', 'happyforms' ) ),
112
  array( 'id' => 'dr', 'label' => __( 'Dr.', 'happyforms' ) ),
113
  );
 
 
 
 
114
  }
115
 
116
  /**
103
  * @return array List of honorifics.
104
  */
105
  public function get_honorifics() {
106
+ $honorifics = array(
107
  array( 'id' => 'mr', 'label' => __( 'Mr.', 'happyforms' ) ),
108
  array( 'id' => 'mrs', 'label' => __( 'Mrs.', 'happyforms' ) ),
109
  array( 'id' => 'ms', 'label' => __( 'Ms.', 'happyforms' ) ),
111
  array( 'id' => 'prof', 'label' => __( 'Prof.', 'happyforms' ) ),
112
  array( 'id' => 'dr', 'label' => __( 'Dr.', 'happyforms' ) ),
113
  );
114
+
115
+ $honorifics = apply_filters( 'happyforms_get_honorifics', $honorifics );
116
+
117
+ return $honorifics;
118
  }
119
 
120
  /**
inc/core/helpers/helper-form-templates.php CHANGED
@@ -78,7 +78,9 @@ if ( ! function_exists( 'happyforms_submit' ) ):
78
  * @return void
79
  */
80
  function happyforms_submit( $form ) {
81
- include( happyforms_template_path( 'partials/form-submit', $form ) );
 
 
82
  }
83
 
84
  endif;
@@ -431,7 +433,10 @@ if ( ! function_exists( 'happyforms_the_form_title' ) ):
431
  * @return void
432
  */
433
  function happyforms_the_form_title( $form ) {
434
- $before = '<h3 class="happyforms-form__title">';
 
 
 
435
  $after = '</h3>';
436
  $title = happyforms_get_form_title( $form );
437
  $form_title = "{$before}{$title}{$after}";
@@ -473,7 +478,6 @@ function happyforms_get_form_id( $form ) {
473
  * @return string
474
  */
475
  $id = 'happyforms-form-' . esc_attr( $form['ID'] );
476
- $id = apply_filters( 'happyforms_form_id', $id, $form );
477
 
478
  return $id;
479
  }
@@ -494,6 +498,45 @@ function happyforms_the_form_id( $form ) {
494
 
495
  endif;
496
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
497
  if ( ! function_exists( 'happyforms_get_form_class' ) ):
498
  /**
499
  * Get a form's html class.
@@ -720,7 +763,7 @@ function happyforms_the_form_styles( $form ) {
720
  ?>
721
  <!-- HappyForms CSS variables -->
722
  <style>
723
- #<?php happyforms_the_form_id( $form ); ?> {
724
  <?php foreach( $styles as $key => $style ) {
725
  $variable = $style['variable'];
726
  $value = $form[$key];
@@ -1255,9 +1298,10 @@ endif;
1255
 
1256
  if ( ! function_exists( 'happyforms_is_last_step' ) ) :
1257
 
1258
- function happyforms_is_last_step( $form, $step = 0 ) {
1259
  $steps = happyforms_get_steps( $form );
1260
- $is_last = ( count( $steps ) - 1 ) === $step;
 
1261
 
1262
  return $is_last;
1263
  }
@@ -1427,3 +1471,61 @@ function happyforms_get_recaptcha_locale() {
1427
  }
1428
 
1429
  endif;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
78
  * @return void
79
  */
80
  function happyforms_submit( $form ) {
81
+ $template_path = happyforms_template_path( 'partials/form-submit', $form );
82
+ $template_path = apply_filters( 'happyforms_get_submit_template_path', $template_path, $form );
83
+ include( $template_path );
84
  }
85
 
86
  endif;
433
  * @return void
434
  */
435
  function happyforms_the_form_title( $form ) {
436
+ $classes = 'happyforms-form__title';
437
+ $classes = apply_filters( 'happyforms_form_title_classes', $classes );
438
+
439
+ $before = '<h3 class="'. $classes .'">';
440
  $after = '</h3>';
441
  $title = happyforms_get_form_title( $form );
442
  $form_title = "{$before}{$title}{$after}";
478
  * @return string
479
  */
480
  $id = 'happyforms-form-' . esc_attr( $form['ID'] );
 
481
 
482
  return $id;
483
  }
498
 
499
  endif;
500
 
501
+ if ( ! function_exists( 'happyforms_get_form_container_id' ) ):
502
+ /**
503
+ * Get a form's html id.
504
+ *
505
+ * @param array $form Current form data.
506
+ *
507
+ * @return string
508
+ */
509
+ function happyforms_get_form_container_id( $form ) {
510
+ /**
511
+ * Filter the id a form container element.
512
+ *
513
+ * @param string $id Current id.
514
+ * @param array $form Current form data.
515
+ *
516
+ * @return string
517
+ */
518
+ $id = 'happyforms-' . esc_attr( $form['ID'] );
519
+ $id = apply_filters( 'happyforms_form_id', $id, $form );
520
+
521
+ return $id;
522
+ }
523
+
524
+ endif;
525
+
526
+ if ( ! function_exists( 'happyforms_the_form_container_id' ) ):
527
+ /**
528
+ * Output a form's container html id.
529
+ *
530
+ * @param array $form Current form data.
531
+ *
532
+ * @return string
533
+ */
534
+ function happyforms_the_form_container_id( $form ) {
535
+ echo happyforms_get_form_container_id( $form );
536
+ }
537
+
538
+ endif;
539
+
540
  if ( ! function_exists( 'happyforms_get_form_class' ) ):
541
  /**
542
  * Get a form's html class.
763
  ?>
764
  <!-- HappyForms CSS variables -->
765
  <style>
766
+ #<?php happyforms_the_form_container_id( $form ); ?> {
767
  <?php foreach( $styles as $key => $style ) {
768
  $variable = $style['variable'];
769
  $value = $form[$key];
1298
 
1299
  if ( ! function_exists( 'happyforms_is_last_step' ) ) :
1300
 
1301
+ function happyforms_is_last_step( $form, $step = false ) {
1302
  $steps = happyforms_get_steps( $form );
1303
+ $step = false !== $step ? $step : happyforms_get_current_step( $form );
1304
+ $is_last = $steps[count( $steps ) - 1] === $step;
1305
 
1306
  return $is_last;
1307
  }
1471
  }
1472
 
1473
  endif;
1474
+
1475
+ if ( ! function_exists( 'happyforms_get_previous_part' ) ):
1476
+
1477
+ function happyforms_get_previous_part( $part, $form ) {
1478
+ $part_id = $part['id'];
1479
+ $part_ids = wp_list_pluck( $form['parts'], 'id' );
1480
+ $part_index = array_search( $part_id, $part_ids );
1481
+
1482
+ if ( 0 === $part_index ) {
1483
+ return false;
1484
+ }
1485
+
1486
+ return $form['parts'][$part_index - 1];
1487
+ }
1488
+
1489
+ endif;
1490
+
1491
+ if ( ! function_exists( 'happyforms_get_next_part' ) ):
1492
+
1493
+ function happyforms_get_next_part( $part, $form ) {
1494
+ $part_id = $part['id'];
1495
+ $part_ids = wp_list_pluck( $form['parts'], 'id' );
1496
+ $part_index = array_search( $part_id, $part_ids );
1497
+
1498
+ if ( count( $part_ids ) - 1 === $part_index ) {
1499
+ return false;
1500
+ }
1501
+
1502
+ return $form['parts'][$part_index + 1];
1503
+ }
1504
+
1505
+ endif;
1506
+
1507
+ if ( ! function_exists( 'happyforms_get_form_partial' ) ):
1508
+
1509
+ function happyforms_get_form_partial( $partial_name, $form ) {
1510
+ $file = happyforms_get_include_folder() . '/templates/partials/' . $partial_name . '.php';
1511
+
1512
+ if ( ! file_exists( $file ) ) {
1513
+ $file = happyforms_get_include_folder() . '/core/templates/partials/' . $partial_name . '.php';
1514
+ }
1515
+
1516
+ $html = require( $file );
1517
+
1518
+ return $html;
1519
+ }
1520
+
1521
+ endif;
1522
+
1523
+ if ( ! function_exists( 'happyforms_is_stepping' ) ):
1524
+
1525
+ function happyforms_is_stepping() {
1526
+ $stepping = defined( 'HAPPYFORMS_STEPPING' ) && HAPPYFORMS_STEPPING;
1527
+
1528
+ return $stepping;
1529
+ }
1530
+
1531
+ endif;
inc/core/templates/partials/form-submit-preview.php CHANGED
@@ -1,4 +1,5 @@
1
  <div class="happyforms-form__part happyforms-part happyforms-part--submit">
 
2
  <input type="submit" class="happyforms-submit happyforms-button--submit" value="<?php echo esc_attr( happyforms_get_form_property( $form, 'review_button_label' ) ); ?>" <?php if ( happyforms_submit_enabled( $form ) ) : ?> disabled<?php endif; ?>>
3
- <?php do_action( 'happyforms_form_submit', $form ); ?>
4
  </div>
1
  <div class="happyforms-form__part happyforms-part happyforms-part--submit">
2
+ <?php do_action( 'happyforms_form_submit_before', $form ); ?>
3
  <input type="submit" class="happyforms-submit happyforms-button--submit" value="<?php echo esc_attr( happyforms_get_form_property( $form, 'review_button_label' ) ); ?>" <?php if ( happyforms_submit_enabled( $form ) ) : ?> disabled<?php endif; ?>>
4
+ <?php do_action( 'happyforms_form_submit_after', $form ); ?>
5
  </div>
inc/core/templates/partials/form-submit.php CHANGED
@@ -1,5 +1,6 @@
1
  <?php $submit_button_extra_class = ( happyforms_get_form_property( $form, 'submit_button_html_class' ) ) ? happyforms_get_form_property( $form, 'submit_button_html_class' ) : ''; ?>
2
  <div class="happyforms-form__part happyforms-part happyforms-part--submit">
 
3
  <input type="submit" class="happyforms-submit happyforms-button--submit <?php echo $submit_button_extra_class; ?>" value="<?php echo esc_attr( happyforms_get_form_property( $form, 'submit_button_label' ) ); ?>" <?php if ( happyforms_submit_enabled( $form ) ) : ?> disabled<?php endif; ?>>
4
- <?php do_action( 'happyforms_form_submit', $form ); ?>
5
  </div>
1
  <?php $submit_button_extra_class = ( happyforms_get_form_property( $form, 'submit_button_html_class' ) ) ? happyforms_get_form_property( $form, 'submit_button_html_class' ) : ''; ?>
2
  <div class="happyforms-form__part happyforms-part happyforms-part--submit">
3
+ <?php do_action( 'happyforms_form_submit_before', $form ); ?>
4
  <input type="submit" class="happyforms-submit happyforms-button--submit <?php echo $submit_button_extra_class; ?>" value="<?php echo esc_attr( happyforms_get_form_property( $form, 'submit_button_label' ) ); ?>" <?php if ( happyforms_submit_enabled( $form ) ) : ?> disabled<?php endif; ?>>
5
+ <?php do_action( 'happyforms_form_submit_after', $form ); ?>
6
  </div>
inc/core/templates/parts/customize-multi-line-text.php CHANGED
@@ -42,6 +42,10 @@
42
  </label>
43
  </p>
44
  <div class="happyforms-part-advanced-settings-wrap">
 
 
 
 
45
  <p>
46
  <label for="<%= instance.id %>_width"><?php _e( 'Width', 'happyforms' ); ?></label>
47
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
42
  </label>
43
  </p>
44
  <div class="happyforms-part-advanced-settings-wrap">
45
+ <p>
46
+ <label for="<%= instance.id %>_character_limit"><?php _e( 'Character count', 'happyforms' ); ?></label>
47
+ <input type="number" id="<%= instance.id %>_character_limit" class="widefat title" step="1" value="<%= instance.character_limit %>" data-bind="character_limit" />
48
+ </p>
49
  <p>
50
  <label for="<%= instance.id %>_width"><?php _e( 'Width', 'happyforms' ); ?></label>
51
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
inc/core/templates/parts/customize-rich-text.php CHANGED
@@ -36,6 +36,10 @@
36
  </label>
37
  </p>
38
  <div class="happyforms-part-advanced-settings-wrap">
 
 
 
 
39
  <p>
40
  <label for="<%= instance.id %>_width"><?php _e( 'Width', 'happyforms' ); ?></label>
41
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
36
  </label>
37
  </p>
38
  <div class="happyforms-part-advanced-settings-wrap">
39
+ <p>
40
+ <label for="<%= instance.id %>_character_limit"><?php _e( 'Character count', 'happyforms' ); ?></label>
41
+ <input type="number" id="<%= instance.id %>_character_limit" class="widefat title" step="1" value="<%= instance.character_limit %>" data-bind="character_limit" />
42
+ </p>
43
  <p>
44
  <label for="<%= instance.id %>_width"><?php _e( 'Width', 'happyforms' ); ?></label>
45
  <select id="<%= instance.id %>_width" name="width" data-bind="width" class="widefat">
inc/core/templates/parts/frontend-multi-line-text.php CHANGED
@@ -15,7 +15,7 @@
15
  <?php do_action( 'happyforms_part_input_after', $part, $form ); ?>
16
 
17
  <?php happyforms_print_part_description( $part ); ?>
18
-
19
  <?php happyforms_message_notices( happyforms_get_part_name( $part, $form ) ); ?>
20
  </div>
21
  </div>
15
  <?php do_action( 'happyforms_part_input_after', $part, $form ); ?>
16
 
17
  <?php happyforms_print_part_description( $part ); ?>
18
+
19
  <?php happyforms_message_notices( happyforms_get_part_name( $part, $form ) ); ?>
20
  </div>
21
  </div>
inc/core/templates/single-form.php CHANGED
@@ -1,7 +1,7 @@
1
- <?php do_action( 'happyforms_form_before', $form ); ?>
 
2
 
3
- <div class="happyforms-form" id="happyforms-<?php echo esc_attr( $form['ID'] ); ?>">
4
- <form action="<?php happyforms_form_action( $form['ID'] ); ?>" class="<?php happyforms_the_form_class( $form ); ?>" id="<?php happyforms_the_form_id( $form ); ?>" method="post" <?php happyforms_the_form_attributes( $form ); ?>>
5
  <?php do_action( 'happyforms_form_open', $form ); ?>
6
 
7
  <?php happyforms_action_field(); ?>
@@ -9,23 +9,21 @@
9
  <?php happyforms_nonce_field( $form ); ?>
10
  <?php happyforms_step_field( $form ); ?>
11
 
12
- <?php do_action( 'happyforms_before_title', $form ); ?>
13
- <?php happyforms_the_form_title( $form ); ?>
14
- <?php do_action( 'happyforms_after_title', $form ); ?>
15
-
16
  <div class="happyforms-flex">
17
  <?php happyforms_message_notices( $form['ID'] ); ?>
18
  <?php happyforms_honeypot( $form ); ?>
19
  <?php $parts = apply_filters( 'happyforms_get_form_parts', $form['parts'], $form ); ?>
 
20
  <?php foreach ( $parts as $part ) {
21
  happyforms_the_form_part( $part, $form );
22
  } ?>
 
23
  <?php happyforms_recaptcha( $form ); ?>
24
  <?php happyforms_submit( $form ); ?>
25
  </div>
26
 
27
  <?php do_action( 'happyforms_form_close', $form ); ?>
28
  </form>
29
- </div>
30
 
31
- <?php do_action( 'happyforms_form_after', $form ); ?>
 
1
+ <div class="happyforms-form <?php happyforms_the_form_class( $form ); ?>" id="<?php happyforms_the_form_container_id( $form ); ?>">
2
+ <?php do_action( 'happyforms_form_before', $form ); ?>
3
 
4
+ <form action="<?php happyforms_form_action( $form['ID'] ); ?>" id="<?php happyforms_the_form_id( $form ); ?>" method="post" <?php happyforms_the_form_attributes( $form ); ?>>
 
5
  <?php do_action( 'happyforms_form_open', $form ); ?>
6
 
7
  <?php happyforms_action_field(); ?>
9
  <?php happyforms_nonce_field( $form ); ?>
10
  <?php happyforms_step_field( $form ); ?>
11
 
 
 
 
 
12
  <div class="happyforms-flex">
13
  <?php happyforms_message_notices( $form['ID'] ); ?>
14
  <?php happyforms_honeypot( $form ); ?>
15
  <?php $parts = apply_filters( 'happyforms_get_form_parts', $form['parts'], $form ); ?>
16
+ <?php do_action( 'happyforms_parts_before', $form ); ?>
17
  <?php foreach ( $parts as $part ) {
18
  happyforms_the_form_part( $part, $form );
19
  } ?>
20
+ <?php do_action( 'happyforms_parts_after', $form ); ?>
21
  <?php happyforms_recaptcha( $form ); ?>
22
  <?php happyforms_submit( $form ); ?>
23
  </div>
24
 
25
  <?php do_action( 'happyforms_form_close', $form ); ?>
26
  </form>
 
27
 
28
+ <?php do_action( 'happyforms_form_after', $form ); ?>
29
+ </div>
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.7.4\n"
6
  "Report-Msgid-Bugs-To: https://thethemefoundry.com/support/\n"
7
- "POT-Creation-Date: 2019-03-15 07:49:31+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -92,7 +92,7 @@ msgid "Edit Form"
92
  msgstr ""
93
 
94
  #: inc/core/classes/class-form-admin.php:155
95
- #: inc/core/classes/class-form-controller.php:79
96
  msgid "View form"
97
  msgstr ""
98
 
@@ -124,7 +124,7 @@ msgid "Form published."
124
  msgstr ""
125
 
126
  #: inc/core/classes/class-form-admin.php:171
127
- #: inc/core/classes/class-wp-customize-form-manager.php:163
128
  msgid "Form saved."
129
  msgstr ""
130
 
@@ -217,61 +217,61 @@ msgstr ""
217
  msgid "Form duplicated succesfully."
218
  msgstr ""
219
 
220
- #: inc/core/classes/class-form-controller.php:74
221
  msgid "Forms"
222
  msgstr ""
223
 
224
- #: inc/core/classes/class-form-controller.php:75
225
  #: inc/core/classes/class-message-admin.php:397
226
  #: inc/core/classes/class-message-admin.php:916
227
  msgid "Form"
228
  msgstr ""
229
 
230
- #: inc/core/classes/class-form-controller.php:76
231
  #: inc/core/classes/class-form-controller.php:78
 
232
  msgid "Build form"
233
  msgstr ""
234
 
235
- #: inc/core/classes/class-form-controller.php:77
236
  msgid "Edit form"
237
  msgstr ""
238
 
239
- #: inc/core/classes/class-form-controller.php:80
240
  msgid "View forms"
241
  msgstr ""
242
 
243
- #: inc/core/classes/class-form-controller.php:81
244
  msgid "Search Forms"
245
  msgstr ""
246
 
247
- #: inc/core/classes/class-form-controller.php:82
248
  msgid "No form found"
249
  msgstr ""
250
 
251
- #: inc/core/classes/class-form-controller.php:83
252
  msgid "No forms found in Trash"
253
  msgstr ""
254
 
255
- #: inc/core/classes/class-form-controller.php:84
256
- #: inc/core/classes/class-form-controller.php:85
257
  #: inc/core/classes/class-happyforms-core.php:174
258
  #: inc/core/classes/class-happyforms-core.php:175
259
  msgid "All Forms"
260
  msgstr ""
261
 
262
- #: inc/core/classes/class-form-controller.php:184
263
  msgid "Untitled form"
264
  msgstr ""
265
 
266
- #: inc/core/classes/class-form-controller.php:608
267
  msgid " Copy"
268
  msgstr ""
269
 
270
- #: inc/core/classes/class-form-controller.php:787
271
- #: inc/core/classes/class-message-controller.php:317
272
- #: inc/core/classes/class-message-controller.php:417
273
- #: inc/core/classes/class-message-controller.php:452
274
- msgid "Your submission contains errors."
275
  msgstr ""
276
 
277
  #: inc/core/classes/class-form-part-library.php:189
@@ -287,10 +287,7 @@ msgid "Missing validation callback for field %s"
287
  msgstr ""
288
 
289
  #: inc/core/classes/class-form-setup.php:62
290
- #: inc/core/classes/class-form-setup.php:94
291
- msgid ""
292
- "Your message has been successfully sent. We appreciate you contacting us "
293
- "and we’ll be in touch soon."
294
  msgstr ""
295
 
296
  #: inc/core/classes/class-form-setup.php:78
@@ -301,6 +298,12 @@ msgstr ""
301
  msgid "We received your message"
302
  msgstr ""
303
 
 
 
 
 
 
 
304
  #: inc/core/classes/class-form-setup.php:110
305
  msgid "(optional)"
306
  msgstr ""
@@ -642,33 +645,33 @@ msgstr ""
642
  msgid "Full width"
643
  msgstr ""
644
 
645
- #: inc/core/classes/class-form-styles.php:486
646
  msgid "Above form"
647
  msgstr ""
648
 
649
- #: inc/core/classes/class-form-styles.php:487
650
  msgid "Below form"
651
  msgstr ""
652
 
653
- #: inc/core/classes/class-form-styles.php:501
654
  msgid "General"
655
  msgstr ""
656
 
657
- #: inc/core/classes/class-form-styles.php:506
658
- #: inc/core/classes/class-form-styles.php:801
659
  #: inc/core/templates/parts/customize-address.php:78
660
  #: inc/core/templates/parts/customize-checkbox.php:72
661
  #: inc/core/templates/parts/customize-date.php:103
662
  #: inc/core/templates/parts/customize-email.php:46
663
  #: inc/core/templates/parts/customize-legal.php:4
664
- #: inc/core/templates/parts/customize-multi-line-text.php:46
665
  #: inc/core/templates/parts/customize-narrative.php:32
666
  #: inc/core/templates/parts/customize-number.php:77
667
  #: inc/core/templates/parts/customize-phone.php:69
668
  #: inc/core/templates/parts/customize-placeholder.php:27
669
  #: inc/core/templates/parts/customize-radio.php:67
670
  #: inc/core/templates/parts/customize-rating.php:74
671
- #: inc/core/templates/parts/customize-rich-text.php:40
672
  #: inc/core/templates/parts/customize-scale.php:86
673
  #: inc/core/templates/parts/customize-select.php:70
674
  #: inc/core/templates/parts/customize-single-line-text.php:51
@@ -678,138 +681,150 @@ msgstr ""
678
  msgid "Width"
679
  msgstr ""
680
 
681
- #: inc/core/classes/class-form-styles.php:511
682
- #: inc/core/classes/class-form-styles.php:806
683
  msgid "Padding"
684
  msgstr ""
685
 
686
- #: inc/core/classes/class-form-styles.php:516
687
  msgid "Direction"
688
  msgstr ""
689
 
690
- #: inc/core/classes/class-form-styles.php:521
691
  msgid "Display notices"
692
  msgstr ""
693
 
694
- #: inc/core/classes/class-form-styles.php:527
695
- #: inc/core/classes/class-form-styles.php:597
696
- #: inc/core/classes/class-form-styles.php:667
697
- #: inc/core/classes/class-form-styles.php:832
698
  msgid "Colors"
699
  msgstr ""
700
 
701
- #: inc/core/classes/class-form-styles.php:531
702
  msgid "Primary"
703
  msgstr ""
704
 
705
- #: inc/core/classes/class-form-styles.php:536
706
- msgid "Success"
 
 
 
 
707
  msgstr ""
708
 
709
- #: inc/core/classes/class-form-styles.php:541
710
  msgid "Error"
711
  msgstr ""
712
 
713
- #: inc/core/classes/class-form-styles.php:546
 
 
 
 
 
 
 
 
714
  msgid "Form title"
715
  msgstr ""
716
 
717
- #: inc/core/classes/class-form-styles.php:551
718
  msgid "Display"
719
  msgstr ""
720
 
721
- #: inc/core/classes/class-form-styles.php:556
722
- #: inc/core/classes/class-form-styles.php:821
723
  msgid "Alignment"
724
  msgstr ""
725
 
726
- #: inc/core/classes/class-form-styles.php:561
727
  msgid "Font size"
728
  msgstr ""
729
 
730
- #: inc/core/classes/class-form-styles.php:566
731
  msgid "Part borders & spacing"
732
  msgstr ""
733
 
734
- #: inc/core/classes/class-form-styles.php:571
735
- #: inc/core/classes/class-form-styles.php:601
736
- #: inc/core/classes/class-form-styles.php:791
737
- #: inc/core/classes/class-form-styles.php:846
738
  msgid "Border"
739
  msgstr ""
740
 
741
- #: inc/core/classes/class-form-styles.php:576
742
  msgid "Border location"
743
  msgstr ""
744
 
745
- #: inc/core/classes/class-form-styles.php:581
746
- #: inc/core/classes/class-form-styles.php:796
747
  msgid "Border radius"
748
  msgstr ""
749
 
750
- #: inc/core/classes/class-form-styles.php:586
751
  msgid "Outer padding"
752
  msgstr ""
753
 
754
- #: inc/core/classes/class-form-styles.php:591
755
  msgid "Inner padding"
756
  msgstr ""
757
 
758
- #: inc/core/classes/class-form-styles.php:606
759
  msgid "Border on focus"
760
  msgstr ""
761
 
762
- #: inc/core/classes/class-form-styles.php:611
763
- #: inc/core/classes/class-form-styles.php:696
764
- #: inc/core/classes/class-form-styles.php:721
765
- #: inc/core/classes/class-form-styles.php:836
766
  msgid "Background"
767
  msgstr ""
768
 
769
- #: inc/core/classes/class-form-styles.php:616
770
- #: inc/core/classes/class-form-styles.php:706
771
- #: inc/core/classes/class-form-styles.php:726
772
- #: inc/core/classes/class-form-styles.php:841
773
  msgid "Background on focus"
774
  msgstr ""
775
 
776
- #: inc/core/classes/class-form-styles.php:621
777
  msgid "Part labels & text"
778
  msgstr ""
779
 
780
- #: inc/core/classes/class-form-styles.php:626
781
  msgid "Toggle placeholder on part focus"
782
  msgstr ""
783
 
784
- #: inc/core/classes/class-form-styles.php:631
785
  msgid "Title alignment"
786
  msgstr ""
787
 
788
- #: inc/core/classes/class-form-styles.php:636
789
  msgid "Title font size"
790
  msgstr ""
791
 
792
- #: inc/core/classes/class-form-styles.php:641
793
  msgid "Title font weight"
794
  msgstr ""
795
 
796
- #: inc/core/classes/class-form-styles.php:646
797
  msgid "Description alignment"
798
  msgstr ""
799
 
800
- #: inc/core/classes/class-form-styles.php:651
801
  msgid "Description font size"
802
  msgstr ""
803
 
804
- #: inc/core/classes/class-form-styles.php:656
805
  msgid "Placeholder &amp; value alignment"
806
  msgstr ""
807
 
808
- #: inc/core/classes/class-form-styles.php:661
809
  msgid "Value font size"
810
  msgstr ""
811
 
812
- #: inc/core/classes/class-form-styles.php:671
813
  #: inc/core/classes/parts/class-part-title.php:8
814
  #: inc/core/classes/parts/class-part-title.php:30
815
  #: inc/core/templates/parts/customize-address.php:4
@@ -833,11 +848,11 @@ msgstr ""
833
  msgid "Title"
834
  msgstr ""
835
 
836
- #: inc/core/classes/class-form-styles.php:676
837
  msgid "Value"
838
  msgstr ""
839
 
840
- #: inc/core/classes/class-form-styles.php:681
841
  #: inc/core/classes/parts/class-part-placeholder.php:8
842
  #: inc/core/templates/parts/customize-address.php:36
843
  #: inc/core/templates/parts/customize-email.php:36
@@ -851,18 +866,18 @@ msgstr ""
851
  msgid "Placeholder"
852
  msgstr ""
853
 
854
- #: inc/core/classes/class-form-styles.php:686
855
  msgid "Dropdowns"
856
  msgstr ""
857
 
858
- #: inc/core/classes/class-form-styles.php:692
859
  msgid "Items"
860
  msgstr ""
861
 
862
- #: inc/core/classes/class-form-styles.php:701
863
- #: inc/core/classes/class-form-styles.php:851
864
- #: inc/core/classes/parts/class-part-multi-line-text.php:29
865
- #: inc/core/classes/parts/class-part-rich-text.php:31
866
  #: inc/core/classes/parts/class-part-single-line-text.php:29
867
  #: inc/core/templates/parts/customize-legal.php:13
868
  #: inc/core/templates/parts/customize-narrative.php:22
@@ -870,74 +885,74 @@ msgstr ""
870
  msgid "Text"
871
  msgstr ""
872
 
873
- #: inc/core/classes/class-form-styles.php:711
874
- #: inc/core/classes/class-form-styles.php:856
875
  msgid "Text focused"
876
  msgstr ""
877
 
878
- #: inc/core/classes/class-form-styles.php:716
879
  msgid "Checkboxes & Radios"
880
  msgstr ""
881
 
882
- #: inc/core/classes/class-form-styles.php:731
883
  msgid "Checkmark"
884
  msgstr ""
885
 
886
- #: inc/core/classes/class-form-styles.php:736
887
  #: inc/core/classes/parts/class-part-rating.php:9
888
  #: inc/core/classes/parts/class-part-rating.php:31
889
  msgid "Rating"
890
  msgstr ""
891
 
892
- #: inc/core/classes/class-form-styles.php:741
893
  msgid "Rating star color"
894
  msgstr ""
895
 
896
- #: inc/core/classes/class-form-styles.php:746
897
  msgid "Rating star color on hover"
898
  msgstr ""
899
 
900
- #: inc/core/classes/class-form-styles.php:751
901
  msgid "Item background"
902
  msgstr ""
903
 
904
- #: inc/core/classes/class-form-styles.php:756
905
  msgid "Item background on hover"
906
  msgstr ""
907
 
908
- #: inc/core/classes/class-form-styles.php:761
909
  msgid "Tables"
910
  msgstr ""
911
 
912
- #: inc/core/classes/class-form-styles.php:766
913
  msgid "Odd row primary"
914
  msgstr ""
915
 
916
- #: inc/core/classes/class-form-styles.php:771
917
  msgid "Odd row secondary"
918
  msgstr ""
919
 
920
- #: inc/core/classes/class-form-styles.php:776
921
  msgid "Even row primary"
922
  msgstr ""
923
 
924
- #: inc/core/classes/class-form-styles.php:781
925
  msgid "Even row secondary"
926
  msgstr ""
927
 
928
- #: inc/core/classes/class-form-styles.php:786
929
  msgid "Submit button"
930
  msgstr ""
931
 
932
- #: inc/core/classes/class-form-styles.php:811
933
  msgid "Font Size"
934
  msgstr ""
935
 
936
- #: inc/core/classes/class-form-styles.php:816
937
  msgid "Font Weight"
938
  msgstr ""
939
 
940
- #: inc/core/classes/class-form-styles.php:826
941
  msgid "Make button a part of last input"
942
  msgstr ""
943
 
@@ -1084,9 +1099,9 @@ msgstr ""
1084
 
1085
  #: inc/core/classes/class-message-admin.php:394
1086
  #: inc/core/classes/class-message-admin.php:780
1087
- #: inc/core/classes/class-message-controller.php:660
1088
- #: inc/core/classes/class-message-controller.php:873
1089
- #: inc/core/classes/class-message-controller.php:940
1090
  #: inc/core/templates/admin-message-edit.php:27
1091
  msgid "Tracking number"
1092
  msgstr ""
@@ -1152,7 +1167,7 @@ msgstr ""
1152
  msgid "All Responses"
1153
  msgstr ""
1154
 
1155
- #: inc/core/classes/class-message-controller.php:892
1156
  msgid "Reply to this message and mark it as read"
1157
  msgstr ""
1158
 
@@ -1182,59 +1197,59 @@ msgstr ""
1182
  msgid "Error description"
1183
  msgstr ""
1184
 
1185
- #: inc/core/classes/class-wp-customize-form-manager.php:164
1186
  msgid "Now, there are couple of ways to embed it to your content. Here goes..."
1187
  msgstr ""
1188
 
1189
- #: inc/core/classes/class-wp-customize-form-manager.php:165
1190
  msgid "Add to your page / post content"
1191
  msgstr ""
1192
 
1193
- #: inc/core/classes/class-wp-customize-form-manager.php:166
1194
  msgid ""
1195
  "In your Edit Post / Edit Page screen, click the <b>Add HappyForms</b> "
1196
  "button right above your toolbar. A modal window will appear."
1197
  msgstr ""
1198
 
1199
- #: inc/core/classes/class-wp-customize-form-manager.php:166
1200
  msgid "Select a form in the dropdown, then click <b>Insert</b>."
1201
  msgstr ""
1202
 
1203
- #: inc/core/classes/class-wp-customize-form-manager.php:166
1204
  msgid ""
1205
  "That's it! You'll notice the shortcode was added to your content. Your form "
1206
  "will show up there."
1207
  msgstr ""
1208
 
1209
- #: inc/core/classes/class-wp-customize-form-manager.php:167
1210
  msgid "Use the HappyForms widget"
1211
  msgstr ""
1212
 
1213
- #: inc/core/classes/class-wp-customize-form-manager.php:169
1214
  msgid ""
1215
  "Head over to <b>Appearance</b> &rarr; <b><a href=\"%s\">Widgets</a></b> "
1216
  "screen."
1217
  msgstr ""
1218
 
1219
- #: inc/core/classes/class-wp-customize-form-manager.php:170
1220
  msgid "Drag the HappyForms widget to your sidebar."
1221
  msgstr ""
1222
 
1223
- #: inc/core/classes/class-wp-customize-form-manager.php:171
1224
  msgid "Select a form in the Form dropdown."
1225
  msgstr ""
1226
 
1227
- #: inc/core/classes/class-wp-customize-form-manager.php:172
1228
  msgid "All done!"
1229
  msgstr ""
1230
 
1231
- #: inc/core/classes/class-wp-customize-form-manager.php:174
1232
  msgid ""
1233
  "Looking for a full documentation? Head over to our <a href=\"%s\" "
1234
  "target=\"_blank\">Help Guide</a>."
1235
  msgstr ""
1236
 
1237
- #: inc/core/classes/class-wp-customize-form-manager.php:181
1238
  msgid ""
1239
  "Form saved. You can add this form to any Page, Post and Widget area. Have "
1240
  "questions? <a href=\"%s\" target=\"_blank\">Ask for help in our support "
@@ -1256,7 +1271,7 @@ msgstr ""
1256
  #: inc/core/classes/parts/class-part-email.php:152
1257
  #: inc/core/classes/parts/class-part-email.php:156
1258
  #: inc/core/classes/parts/class-part-legal.php:120
1259
- #: inc/core/classes/parts/class-part-multi-line-text.php:147
1260
  #: inc/core/classes/parts/class-part-narrative.php:130
1261
  #: inc/core/classes/parts/class-part-narrative.php:135
1262
  #: inc/core/classes/parts/class-part-number.php:174
@@ -1264,13 +1279,13 @@ msgstr ""
1264
  #: inc/core/classes/parts/class-part-phone.php:170
1265
  #: inc/core/classes/parts/class-part-radio.php:172
1266
  #: inc/core/classes/parts/class-part-rating.php:157
1267
- #: inc/core/classes/parts/class-part-rich-text.php:190
1268
  #: inc/core/classes/parts/class-part-scale.php:168
1269
  #: inc/core/classes/parts/class-part-select.php:175
1270
  #: inc/core/classes/parts/class-part-single-line-text.php:134
1271
  #: inc/core/classes/parts/class-part-table.php:220
1272
  #: inc/core/classes/parts/class-part-table.php:227
1273
- #: inc/core/classes/parts/class-part-title.php:167
1274
  #: inc/core/classes/parts/class-part-website-url.php:129
1275
  msgid "This field is required."
1276
  msgstr ""
@@ -1372,6 +1387,16 @@ msgstr ""
1372
  msgid "For paragraph text fields."
1373
  msgstr ""
1374
 
 
 
 
 
 
 
 
 
 
 
1375
  #: inc/core/classes/parts/class-part-narrative.php:8
1376
  #: inc/core/classes/parts/class-part-narrative.php:29
1377
  msgid "Story"
@@ -1501,8 +1526,8 @@ msgstr ""
1501
 
1502
  #: inc/core/classes/parts/class-part-select.php:180
1503
  #: inc/core/classes/parts/class-part-select.php:186
1504
- #: inc/core/classes/parts/class-part-title.php:172
1505
- #: inc/core/classes/parts/class-part-title.php:178
1506
  msgid "Selected value is not valid."
1507
  msgstr ""
1508
 
@@ -1615,1135 +1640,1135 @@ msgstr ""
1615
  msgid "How can I access my premium upgrade credentials?"
1616
  msgstr ""
1617
 
1618
- #: inc/core/helpers/helper-form-templates.php:895
1619
  msgid "Get my location"
1620
  msgstr ""
1621
 
1622
- #: inc/core/helpers/helper-form-templates.php:895
1623
  msgid "Fetching location…"
1624
  msgstr ""
1625
 
1626
- #: inc/core/helpers/helper-form-templates.php:905
1627
  msgid "January"
1628
  msgstr ""
1629
 
1630
- #: inc/core/helpers/helper-form-templates.php:906
1631
  msgid "February"
1632
  msgstr ""
1633
 
1634
- #: inc/core/helpers/helper-form-templates.php:907
1635
  msgid "March"
1636
  msgstr ""
1637
 
1638
- #: inc/core/helpers/helper-form-templates.php:908
1639
  msgid "April"
1640
  msgstr ""
1641
 
1642
- #: inc/core/helpers/helper-form-templates.php:909
1643
  msgid "May"
1644
  msgstr ""
1645
 
1646
- #: inc/core/helpers/helper-form-templates.php:910
1647
  msgid "June"
1648
  msgstr ""
1649
 
1650
- #: inc/core/helpers/helper-form-templates.php:911
1651
  msgid "July"
1652
  msgstr ""
1653
 
1654
- #: inc/core/helpers/helper-form-templates.php:912
1655
  msgid "August"
1656
  msgstr ""
1657
 
1658
- #: inc/core/helpers/helper-form-templates.php:913
1659
  msgid "September"
1660
  msgstr ""
1661
 
1662
- #: inc/core/helpers/helper-form-templates.php:914
1663
  msgid "October"
1664
  msgstr ""
1665
 
1666
- #: inc/core/helpers/helper-form-templates.php:915
1667
  msgid "November"
1668
  msgstr ""
1669
 
1670
- #: inc/core/helpers/helper-form-templates.php:916
1671
  msgid "December"
1672
  msgstr ""
1673
 
1674
- #: inc/core/helpers/helper-form-templates.php:957
1675
  #: inc/core/helpers/helper-misc.php:254
1676
  msgid "Andorra"
1677
  msgstr ""
1678
 
1679
- #: inc/core/helpers/helper-form-templates.php:958
1680
  #: inc/core/helpers/helper-misc.php:472
1681
  msgid "United Arab Emirates"
1682
  msgstr ""
1683
 
1684
- #: inc/core/helpers/helper-form-templates.php:959
1685
  #: inc/core/helpers/helper-misc.php:250
1686
  msgid "Afghanistan"
1687
  msgstr ""
1688
 
1689
- #: inc/core/helpers/helper-form-templates.php:960
1690
  #: inc/core/helpers/helper-misc.php:258
1691
  msgid "Antigua and Barbuda"
1692
  msgstr ""
1693
 
1694
- #: inc/core/helpers/helper-form-templates.php:961
1695
  #: inc/core/helpers/helper-misc.php:256
1696
  msgid "Anguilla"
1697
  msgstr ""
1698
 
1699
- #: inc/core/helpers/helper-form-templates.php:962
1700
  #: inc/core/helpers/helper-misc.php:251
1701
  msgid "Albania"
1702
  msgstr ""
1703
 
1704
- #: inc/core/helpers/helper-form-templates.php:963
1705
  #: inc/core/helpers/helper-misc.php:260
1706
  msgid "Armenia"
1707
  msgstr ""
1708
 
1709
- #: inc/core/helpers/helper-form-templates.php:964
1710
  #: inc/core/helpers/helper-misc.php:255
1711
  msgid "Angola"
1712
  msgstr ""
1713
 
1714
- #: inc/core/helpers/helper-form-templates.php:965
1715
  #: inc/core/helpers/helper-misc.php:257
1716
  msgid "Antarctica"
1717
  msgstr ""
1718
 
1719
- #: inc/core/helpers/helper-form-templates.php:966
1720
  #: inc/core/helpers/helper-misc.php:259
1721
  msgid "Argentina"
1722
  msgstr ""
1723
 
1724
- #: inc/core/helpers/helper-form-templates.php:967
1725
  #: inc/core/helpers/helper-misc.php:253
1726
  msgid "American Samoa"
1727
  msgstr ""
1728
 
1729
- #: inc/core/helpers/helper-form-templates.php:968
1730
  #: inc/core/helpers/helper-misc.php:263
1731
  msgid "Austria"
1732
  msgstr ""
1733
 
1734
- #: inc/core/helpers/helper-form-templates.php:969
1735
  #: inc/core/helpers/helper-misc.php:262
1736
  msgid "Australia"
1737
  msgstr ""
1738
 
1739
- #: inc/core/helpers/helper-form-templates.php:970
1740
  #: inc/core/helpers/helper-misc.php:261
1741
  msgid "Aruba"
1742
  msgstr ""
1743
 
1744
- #: inc/core/helpers/helper-form-templates.php:971
1745
  #: inc/core/helpers/helper-misc.php:264
1746
  msgid "Azerbaijan"
1747
  msgstr ""
1748
 
1749
- #: inc/core/helpers/helper-form-templates.php:972
1750
  msgid "Bosnia and Herzegovina"
1751
  msgstr ""
1752
 
1753
- #: inc/core/helpers/helper-form-templates.php:973
1754
  #: inc/core/helpers/helper-misc.php:268
1755
  msgid "Barbados"
1756
  msgstr ""
1757
 
1758
- #: inc/core/helpers/helper-form-templates.php:974
1759
  #: inc/core/helpers/helper-misc.php:267
1760
  msgid "Bangladesh"
1761
  msgstr ""
1762
 
1763
- #: inc/core/helpers/helper-form-templates.php:975
1764
  #: inc/core/helpers/helper-misc.php:270
1765
  msgid "Belgium"
1766
  msgstr ""
1767
 
1768
- #: inc/core/helpers/helper-form-templates.php:976
1769
  #: inc/core/helpers/helper-misc.php:283
1770
  msgid "Burkina Faso"
1771
  msgstr ""
1772
 
1773
- #: inc/core/helpers/helper-form-templates.php:977
1774
  #: inc/core/helpers/helper-misc.php:282
1775
  msgid "Bulgaria"
1776
  msgstr ""
1777
 
1778
- #: inc/core/helpers/helper-form-templates.php:978
1779
  #: inc/core/helpers/helper-misc.php:266
1780
  msgid "Bahrain"
1781
  msgstr ""
1782
 
1783
- #: inc/core/helpers/helper-form-templates.php:979
1784
  #: inc/core/helpers/helper-misc.php:284
1785
  msgid "Burundi"
1786
  msgstr ""
1787
 
1788
- #: inc/core/helpers/helper-form-templates.php:980
1789
  #: inc/core/helpers/helper-misc.php:272
1790
  msgid "Benin"
1791
  msgstr ""
1792
 
1793
- #: inc/core/helpers/helper-form-templates.php:981
1794
  msgid "Saint Barthelemy"
1795
  msgstr ""
1796
 
1797
- #: inc/core/helpers/helper-form-templates.php:982
1798
  #: inc/core/helpers/helper-misc.php:273
1799
  msgid "Bermuda"
1800
  msgstr ""
1801
 
1802
- #: inc/core/helpers/helper-form-templates.php:983
1803
  #: inc/core/helpers/helper-misc.php:281
1804
  msgid "Brunei Darussalam"
1805
  msgstr ""
1806
 
1807
- #: inc/core/helpers/helper-form-templates.php:984
1808
  #: inc/core/helpers/helper-misc.php:275
1809
  msgid "Bolivia"
1810
  msgstr ""
1811
 
1812
- #: inc/core/helpers/helper-form-templates.php:985
1813
  #: inc/core/helpers/helper-misc.php:279
1814
  msgid "Brazil"
1815
  msgstr ""
1816
 
1817
- #: inc/core/helpers/helper-form-templates.php:986
1818
  #: inc/core/helpers/helper-misc.php:265
1819
  msgid "Bahamas"
1820
  msgstr ""
1821
 
1822
- #: inc/core/helpers/helper-form-templates.php:987
1823
  #: inc/core/helpers/helper-misc.php:274
1824
  msgid "Bhutan"
1825
  msgstr ""
1826
 
1827
- #: inc/core/helpers/helper-form-templates.php:988
1828
  #: inc/core/helpers/helper-misc.php:277
1829
  msgid "Botswana"
1830
  msgstr ""
1831
 
1832
- #: inc/core/helpers/helper-form-templates.php:989
1833
  #: inc/core/helpers/helper-misc.php:269
1834
  msgid "Belarus"
1835
  msgstr ""
1836
 
1837
- #: inc/core/helpers/helper-form-templates.php:990
1838
  #: inc/core/helpers/helper-misc.php:271
1839
  msgid "Belize"
1840
  msgstr ""
1841
 
1842
- #: inc/core/helpers/helper-form-templates.php:991
1843
  #: inc/core/helpers/helper-misc.php:287
1844
  msgid "Canada"
1845
  msgstr ""
1846
 
1847
- #: inc/core/helpers/helper-form-templates.php:992
1848
  msgid "Congo, The Democratic Republic of the"
1849
  msgstr ""
1850
 
1851
- #: inc/core/helpers/helper-form-templates.php:993
1852
  #: inc/core/helpers/helper-misc.php:290
1853
  msgid "Central African Republic"
1854
  msgstr ""
1855
 
1856
- #: inc/core/helpers/helper-form-templates.php:994
1857
  #: inc/core/helpers/helper-misc.php:298
1858
  msgid "Congo"
1859
  msgstr ""
1860
 
1861
- #: inc/core/helpers/helper-form-templates.php:995
1862
  #: inc/core/helpers/helper-misc.php:455
1863
  msgid "Switzerland"
1864
  msgstr ""
1865
 
1866
- #: inc/core/helpers/helper-form-templates.php:996
1867
  #: inc/core/helpers/helper-misc.php:300
1868
  msgid "Cook Islands"
1869
  msgstr ""
1870
 
1871
- #: inc/core/helpers/helper-form-templates.php:997
1872
  #: inc/core/helpers/helper-misc.php:292
1873
  msgid "Chile"
1874
  msgstr ""
1875
 
1876
- #: inc/core/helpers/helper-form-templates.php:998
1877
  #: inc/core/helpers/helper-misc.php:286
1878
  msgid "Cameroon"
1879
  msgstr ""
1880
 
1881
- #: inc/core/helpers/helper-form-templates.php:999
1882
  #: inc/core/helpers/helper-misc.php:293
1883
  msgid "China"
1884
  msgstr ""
1885
 
1886
- #: inc/core/helpers/helper-form-templates.php:1000
1887
  #: inc/core/helpers/helper-misc.php:296
1888
  msgid "Colombia"
1889
  msgstr ""
1890
 
1891
- #: inc/core/helpers/helper-form-templates.php:1001
1892
  #: inc/core/helpers/helper-misc.php:301
1893
  msgid "Costa Rica"
1894
  msgstr ""
1895
 
1896
- #: inc/core/helpers/helper-form-templates.php:1002
1897
  #: inc/core/helpers/helper-misc.php:304
1898
  msgid "Cuba"
1899
  msgstr ""
1900
 
1901
- #: inc/core/helpers/helper-form-templates.php:1003
1902
  #: inc/core/helpers/helper-misc.php:288
1903
  msgid "Cape Verde"
1904
  msgstr ""
1905
 
1906
- #: inc/core/helpers/helper-form-templates.php:1004
1907
  #: inc/core/helpers/helper-misc.php:305
1908
  msgid "Cyprus"
1909
  msgstr ""
1910
 
1911
- #: inc/core/helpers/helper-form-templates.php:1005
1912
  #: inc/core/helpers/helper-misc.php:306
1913
  msgid "Czech Republic"
1914
  msgstr ""
1915
 
1916
- #: inc/core/helpers/helper-form-templates.php:1006
1917
  #: inc/core/helpers/helper-misc.php:331
1918
  msgid "Germany"
1919
  msgstr ""
1920
 
1921
- #: inc/core/helpers/helper-form-templates.php:1007
1922
  #: inc/core/helpers/helper-misc.php:308
1923
  msgid "Djibouti"
1924
  msgstr ""
1925
 
1926
- #: inc/core/helpers/helper-form-templates.php:1008
1927
  #: inc/core/helpers/helper-misc.php:307
1928
  msgid "Denmark"
1929
  msgstr ""
1930
 
1931
- #: inc/core/helpers/helper-form-templates.php:1009
1932
  #: inc/core/helpers/helper-misc.php:309
1933
  msgid "Dominica"
1934
  msgstr ""
1935
 
1936
- #: inc/core/helpers/helper-form-templates.php:1010
1937
  #: inc/core/helpers/helper-misc.php:310
1938
  msgid "Dominican Republic"
1939
  msgstr ""
1940
 
1941
- #: inc/core/helpers/helper-form-templates.php:1011
1942
  #: inc/core/helpers/helper-misc.php:252
1943
  msgid "Algeria"
1944
  msgstr ""
1945
 
1946
- #: inc/core/helpers/helper-form-templates.php:1012
1947
  #: inc/core/helpers/helper-misc.php:312
1948
  msgid "Ecuador"
1949
  msgstr ""
1950
 
1951
- #: inc/core/helpers/helper-form-templates.php:1013
1952
  #: inc/core/helpers/helper-misc.php:317
1953
  msgid "Estonia"
1954
  msgstr ""
1955
 
1956
- #: inc/core/helpers/helper-form-templates.php:1014
1957
  #: inc/core/helpers/helper-misc.php:313
1958
  msgid "Egypt"
1959
  msgstr ""
1960
 
1961
- #: inc/core/helpers/helper-form-templates.php:1015
1962
  #: inc/core/helpers/helper-misc.php:316
1963
  msgid "Eritrea"
1964
  msgstr ""
1965
 
1966
- #: inc/core/helpers/helper-form-templates.php:1016
1967
  #: inc/core/helpers/helper-misc.php:446
1968
  msgid "Spain"
1969
  msgstr ""
1970
 
1971
- #: inc/core/helpers/helper-form-templates.php:1017
1972
  #: inc/core/helpers/helper-misc.php:318
1973
  msgid "Ethiopia"
1974
  msgstr ""
1975
 
1976
- #: inc/core/helpers/helper-form-templates.php:1018
1977
  #: inc/core/helpers/helper-misc.php:322
1978
  msgid "Finland"
1979
  msgstr ""
1980
 
1981
- #: inc/core/helpers/helper-form-templates.php:1019
1982
  #: inc/core/helpers/helper-misc.php:321
1983
  msgid "Fiji"
1984
  msgstr ""
1985
 
1986
- #: inc/core/helpers/helper-form-templates.php:1020
1987
  #: inc/core/helpers/helper-misc.php:319
1988
  msgid "Falkland Islands (Malvinas)"
1989
  msgstr ""
1990
 
1991
- #: inc/core/helpers/helper-form-templates.php:1021
1992
  #: inc/core/helpers/helper-misc.php:390
1993
  msgid "Micronesia, Federated States of"
1994
  msgstr ""
1995
 
1996
- #: inc/core/helpers/helper-form-templates.php:1022
1997
  #: inc/core/helpers/helper-misc.php:320
1998
  msgid "Faroe Islands"
1999
  msgstr ""
2000
 
2001
- #: inc/core/helpers/helper-form-templates.php:1023
2002
  #: inc/core/helpers/helper-misc.php:323
2003
  msgid "France"
2004
  msgstr ""
2005
 
2006
- #: inc/core/helpers/helper-form-templates.php:1024
2007
  #: inc/core/helpers/helper-misc.php:328
2008
  msgid "Gabon"
2009
  msgstr ""
2010
 
2011
- #: inc/core/helpers/helper-form-templates.php:1025
2012
  #: inc/core/helpers/helper-misc.php:473
2013
  msgid "United Kingdom"
2014
  msgstr ""
2015
 
2016
- #: inc/core/helpers/helper-form-templates.php:1026
2017
  #: inc/core/helpers/helper-misc.php:336
2018
  msgid "Grenada"
2019
  msgstr ""
2020
 
2021
- #: inc/core/helpers/helper-form-templates.php:1027
2022
  #: inc/core/helpers/helper-misc.php:330
2023
  msgid "Georgia"
2024
  msgstr ""
2025
 
2026
- #: inc/core/helpers/helper-form-templates.php:1028
2027
  #: inc/core/helpers/helper-misc.php:332
2028
  msgid "Ghana"
2029
  msgstr ""
2030
 
2031
- #: inc/core/helpers/helper-form-templates.php:1029
2032
  #: inc/core/helpers/helper-misc.php:333
2033
  msgid "Gibraltar"
2034
  msgstr ""
2035
 
2036
- #: inc/core/helpers/helper-form-templates.php:1030
2037
  #: inc/core/helpers/helper-misc.php:335
2038
  msgid "Greenland"
2039
  msgstr ""
2040
 
2041
- #: inc/core/helpers/helper-form-templates.php:1031
2042
  #: inc/core/helpers/helper-misc.php:329
2043
  msgid "Gambia"
2044
  msgstr ""
2045
 
2046
- #: inc/core/helpers/helper-form-templates.php:1032
2047
  #: inc/core/helpers/helper-misc.php:340
2048
  msgid "Guinea"
2049
  msgstr ""
2050
 
2051
- #: inc/core/helpers/helper-form-templates.php:1033
2052
  #: inc/core/helpers/helper-misc.php:334
2053
  msgid "Greece"
2054
  msgstr ""
2055
 
2056
- #: inc/core/helpers/helper-form-templates.php:1034
2057
  #: inc/core/helpers/helper-misc.php:339
2058
  msgid "Guatemala"
2059
  msgstr ""
2060
 
2061
- #: inc/core/helpers/helper-form-templates.php:1035
2062
  #: inc/core/helpers/helper-misc.php:338
2063
  msgid "Guam"
2064
  msgstr ""
2065
 
2066
- #: inc/core/helpers/helper-form-templates.php:1036
2067
  msgid "Guinea-bissau"
2068
  msgstr ""
2069
 
2070
- #: inc/core/helpers/helper-form-templates.php:1037
2071
  #: inc/core/helpers/helper-misc.php:342
2072
  msgid "Guyana"
2073
  msgstr ""
2074
 
2075
- #: inc/core/helpers/helper-form-templates.php:1038
2076
  #: inc/core/helpers/helper-misc.php:347
2077
  msgid "Hong Kong"
2078
  msgstr ""
2079
 
2080
- #: inc/core/helpers/helper-form-templates.php:1039
2081
  #: inc/core/helpers/helper-misc.php:346
2082
  msgid "Honduras"
2083
  msgstr ""
2084
 
2085
- #: inc/core/helpers/helper-form-templates.php:1040
2086
  msgid "Croatia"
2087
  msgstr ""
2088
 
2089
- #: inc/core/helpers/helper-form-templates.php:1041
2090
  #: inc/core/helpers/helper-misc.php:343
2091
  msgid "Haiti"
2092
  msgstr ""
2093
 
2094
- #: inc/core/helpers/helper-form-templates.php:1042
2095
  #: inc/core/helpers/helper-misc.php:348
2096
  msgid "Hungary"
2097
  msgstr ""
2098
 
2099
- #: inc/core/helpers/helper-form-templates.php:1043
2100
  #: inc/core/helpers/helper-misc.php:351
2101
  msgid "Indonesia"
2102
  msgstr ""
2103
 
2104
- #: inc/core/helpers/helper-form-templates.php:1044
2105
  #: inc/core/helpers/helper-misc.php:354
2106
  msgid "Ireland"
2107
  msgstr ""
2108
 
2109
- #: inc/core/helpers/helper-form-templates.php:1045
2110
  #: inc/core/helpers/helper-misc.php:355
2111
  msgid "Israel"
2112
  msgstr ""
2113
 
2114
- #: inc/core/helpers/helper-form-templates.php:1046
2115
  #: inc/core/helpers/helper-misc.php:350
2116
  msgid "India"
2117
  msgstr ""
2118
 
2119
- #: inc/core/helpers/helper-form-templates.php:1047
2120
  #: inc/core/helpers/helper-misc.php:353
2121
  msgid "Iraq"
2122
  msgstr ""
2123
 
2124
- #: inc/core/helpers/helper-form-templates.php:1048
2125
  msgid "Iran, Islamic Republic of"
2126
  msgstr ""
2127
 
2128
- #: inc/core/helpers/helper-form-templates.php:1049
2129
  #: inc/core/helpers/helper-misc.php:349
2130
  msgid "Iceland"
2131
  msgstr ""
2132
 
2133
- #: inc/core/helpers/helper-form-templates.php:1050
2134
  #: inc/core/helpers/helper-misc.php:356
2135
  msgid "Italy"
2136
  msgstr ""
2137
 
2138
- #: inc/core/helpers/helper-form-templates.php:1051
2139
  #: inc/core/helpers/helper-misc.php:357
2140
  msgid "Jamaica"
2141
  msgstr ""
2142
 
2143
- #: inc/core/helpers/helper-form-templates.php:1052
2144
  #: inc/core/helpers/helper-misc.php:359
2145
  msgid "Jordan"
2146
  msgstr ""
2147
 
2148
- #: inc/core/helpers/helper-form-templates.php:1053
2149
  #: inc/core/helpers/helper-misc.php:358
2150
  msgid "Japan"
2151
  msgstr ""
2152
 
2153
- #: inc/core/helpers/helper-form-templates.php:1054
2154
  #: inc/core/helpers/helper-misc.php:361
2155
  msgid "Kenya"
2156
  msgstr ""
2157
 
2158
- #: inc/core/helpers/helper-form-templates.php:1055
2159
  #: inc/core/helpers/helper-misc.php:366
2160
  msgid "Kyrgyzstan"
2161
  msgstr ""
2162
 
2163
- #: inc/core/helpers/helper-form-templates.php:1056
2164
  #: inc/core/helpers/helper-misc.php:285
2165
  msgid "Cambodia"
2166
  msgstr ""
2167
 
2168
- #: inc/core/helpers/helper-form-templates.php:1057
2169
  #: inc/core/helpers/helper-misc.php:362
2170
  msgid "Kiribati"
2171
  msgstr ""
2172
 
2173
- #: inc/core/helpers/helper-form-templates.php:1058
2174
  #: inc/core/helpers/helper-misc.php:297
2175
  msgid "Comoros"
2176
  msgstr ""
2177
 
2178
- #: inc/core/helpers/helper-form-templates.php:1059
2179
  #: inc/core/helpers/helper-misc.php:429
2180
  msgid "Saint Kitts and Nevis"
2181
  msgstr ""
2182
 
2183
- #: inc/core/helpers/helper-form-templates.php:1060
2184
  msgid "Korea Democratic Peoples Republic of"
2185
  msgstr ""
2186
 
2187
- #: inc/core/helpers/helper-form-templates.php:1061
2188
  msgid "Korea Republic of"
2189
  msgstr ""
2190
 
2191
- #: inc/core/helpers/helper-form-templates.php:1062
2192
  #: inc/core/helpers/helper-misc.php:365
2193
  msgid "Kuwait"
2194
  msgstr ""
2195
 
2196
- #: inc/core/helpers/helper-form-templates.php:1063
2197
  #: inc/core/helpers/helper-misc.php:289
2198
  msgid "Cayman Islands"
2199
  msgstr ""
2200
 
2201
- #: inc/core/helpers/helper-form-templates.php:1064
2202
  msgid "Lao Peoples Democratic Republic"
2203
  msgstr ""
2204
 
2205
- #: inc/core/helpers/helper-form-templates.php:1065
2206
  #: inc/core/helpers/helper-misc.php:369
2207
  msgid "Lebanon"
2208
  msgstr ""
2209
 
2210
- #: inc/core/helpers/helper-form-templates.php:1066
2211
  #: inc/core/helpers/helper-misc.php:430
2212
  msgid "Saint Lucia"
2213
  msgstr ""
2214
 
2215
- #: inc/core/helpers/helper-form-templates.php:1067
2216
  #: inc/core/helpers/helper-misc.php:373
2217
  msgid "Liechtenstein"
2218
  msgstr ""
2219
 
2220
- #: inc/core/helpers/helper-form-templates.php:1068
2221
  #: inc/core/helpers/helper-misc.php:447
2222
  msgid "Sri Lanka"
2223
  msgstr ""
2224
 
2225
- #: inc/core/helpers/helper-form-templates.php:1069
2226
  #: inc/core/helpers/helper-misc.php:371
2227
  msgid "Liberia"
2228
  msgstr ""
2229
 
2230
- #: inc/core/helpers/helper-form-templates.php:1070
2231
  #: inc/core/helpers/helper-misc.php:370
2232
  msgid "Lesotho"
2233
  msgstr ""
2234
 
2235
- #: inc/core/helpers/helper-form-templates.php:1071
2236
  #: inc/core/helpers/helper-misc.php:374
2237
  msgid "Lithuania"
2238
  msgstr ""
2239
 
2240
- #: inc/core/helpers/helper-form-templates.php:1072
2241
  #: inc/core/helpers/helper-misc.php:375
2242
  msgid "Luxembourg"
2243
  msgstr ""
2244
 
2245
- #: inc/core/helpers/helper-form-templates.php:1073
2246
  #: inc/core/helpers/helper-misc.php:368
2247
  msgid "Latvia"
2248
  msgstr ""
2249
 
2250
- #: inc/core/helpers/helper-form-templates.php:1074
2251
  #: inc/core/helpers/helper-misc.php:372
2252
  msgid "Libyan Arab Jamahiriya"
2253
  msgstr ""
2254
 
2255
- #: inc/core/helpers/helper-form-templates.php:1075
2256
  #: inc/core/helpers/helper-misc.php:395
2257
  msgid "Morocco"
2258
  msgstr ""
2259
 
2260
- #: inc/core/helpers/helper-form-templates.php:1076
2261
  #: inc/core/helpers/helper-misc.php:392
2262
  msgid "Monaco"
2263
  msgstr ""
2264
 
2265
- #: inc/core/helpers/helper-form-templates.php:1077
2266
  #: inc/core/helpers/helper-misc.php:391
2267
  msgid "Moldova, Republic of"
2268
  msgstr ""
2269
 
2270
- #: inc/core/helpers/helper-form-templates.php:1078
2271
  msgid "Montenegro"
2272
  msgstr ""
2273
 
2274
- #: inc/core/helpers/helper-form-templates.php:1079
2275
  #: inc/core/helpers/helper-misc.php:378
2276
  msgid "Madagascar"
2277
  msgstr ""
2278
 
2279
- #: inc/core/helpers/helper-form-templates.php:1080
2280
  #: inc/core/helpers/helper-misc.php:384
2281
  msgid "Marshall Islands"
2282
  msgstr ""
2283
 
2284
- #: inc/core/helpers/helper-form-templates.php:1081
2285
  #: inc/core/helpers/helper-misc.php:377
2286
  msgid "Macedonia, The Former Yugoslav Republic of"
2287
  msgstr ""
2288
 
2289
- #: inc/core/helpers/helper-form-templates.php:1082
2290
  #: inc/core/helpers/helper-misc.php:382
2291
  msgid "Mali"
2292
  msgstr ""
2293
 
2294
- #: inc/core/helpers/helper-form-templates.php:1083
2295
  #: inc/core/helpers/helper-misc.php:397
2296
  msgid "Myanmar"
2297
  msgstr ""
2298
 
2299
- #: inc/core/helpers/helper-form-templates.php:1084
2300
  #: inc/core/helpers/helper-misc.php:393
2301
  msgid "Mongolia"
2302
  msgstr ""
2303
 
2304
- #: inc/core/helpers/helper-form-templates.php:1085
2305
  #: inc/core/helpers/helper-misc.php:376
2306
  msgid "Macau"
2307
  msgstr ""
2308
 
2309
- #: inc/core/helpers/helper-form-templates.php:1086
2310
  #: inc/core/helpers/helper-misc.php:410
2311
  msgid "Northern Mariana Islands"
2312
  msgstr ""
2313
 
2314
- #: inc/core/helpers/helper-form-templates.php:1087
2315
  #: inc/core/helpers/helper-misc.php:386
2316
  msgid "Mauritania"
2317
  msgstr ""
2318
 
2319
- #: inc/core/helpers/helper-form-templates.php:1088
2320
  #: inc/core/helpers/helper-misc.php:394
2321
  msgid "Montserrat"
2322
  msgstr ""
2323
 
2324
- #: inc/core/helpers/helper-form-templates.php:1089
2325
  #: inc/core/helpers/helper-misc.php:383
2326
  msgid "Malta"
2327
  msgstr ""
2328
 
2329
- #: inc/core/helpers/helper-form-templates.php:1090
2330
  #: inc/core/helpers/helper-misc.php:387
2331
  msgid "Mauritius"
2332
  msgstr ""
2333
 
2334
- #: inc/core/helpers/helper-form-templates.php:1091
2335
  #: inc/core/helpers/helper-misc.php:381
2336
  msgid "Maldives"
2337
  msgstr ""
2338
 
2339
- #: inc/core/helpers/helper-form-templates.php:1092
2340
  #: inc/core/helpers/helper-misc.php:379
2341
  msgid "Malawi"
2342
  msgstr ""
2343
 
2344
- #: inc/core/helpers/helper-form-templates.php:1093
2345
  #: inc/core/helpers/helper-misc.php:389
2346
  msgid "Mexico"
2347
  msgstr ""
2348
 
2349
- #: inc/core/helpers/helper-form-templates.php:1094
2350
  #: inc/core/helpers/helper-misc.php:380
2351
  msgid "Malaysia"
2352
  msgstr ""
2353
 
2354
- #: inc/core/helpers/helper-form-templates.php:1095
2355
  #: inc/core/helpers/helper-misc.php:396
2356
  msgid "Mozambique"
2357
  msgstr ""
2358
 
2359
- #: inc/core/helpers/helper-form-templates.php:1096
2360
  #: inc/core/helpers/helper-misc.php:398
2361
  msgid "Namibia"
2362
  msgstr ""
2363
 
2364
- #: inc/core/helpers/helper-form-templates.php:1097
2365
  #: inc/core/helpers/helper-misc.php:403
2366
  msgid "New Caledonia"
2367
  msgstr ""
2368
 
2369
- #: inc/core/helpers/helper-form-templates.php:1098
2370
  #: inc/core/helpers/helper-misc.php:406
2371
  msgid "Niger"
2372
  msgstr ""
2373
 
2374
- #: inc/core/helpers/helper-form-templates.php:1099
2375
  #: inc/core/helpers/helper-misc.php:407
2376
  msgid "Nigeria"
2377
  msgstr ""
2378
 
2379
- #: inc/core/helpers/helper-form-templates.php:1100
2380
  #: inc/core/helpers/helper-misc.php:405
2381
  msgid "Nicaragua"
2382
  msgstr ""
2383
 
2384
- #: inc/core/helpers/helper-form-templates.php:1101
2385
  #: inc/core/helpers/helper-misc.php:401
2386
  msgid "Netherlands"
2387
  msgstr ""
2388
 
2389
- #: inc/core/helpers/helper-form-templates.php:1102
2390
  #: inc/core/helpers/helper-misc.php:411
2391
  msgid "Norway"
2392
  msgstr ""
2393
 
2394
- #: inc/core/helpers/helper-form-templates.php:1103
2395
  #: inc/core/helpers/helper-misc.php:400
2396
  msgid "Nepal"
2397
  msgstr ""
2398
 
2399
- #: inc/core/helpers/helper-form-templates.php:1104
2400
  #: inc/core/helpers/helper-misc.php:399
2401
  msgid "Nauru"
2402
  msgstr ""
2403
 
2404
- #: inc/core/helpers/helper-form-templates.php:1105
2405
  #: inc/core/helpers/helper-misc.php:408
2406
  msgid "Niue"
2407
  msgstr ""
2408
 
2409
- #: inc/core/helpers/helper-form-templates.php:1106
2410
  #: inc/core/helpers/helper-misc.php:404
2411
  msgid "New Zealand"
2412
  msgstr ""
2413
 
2414
- #: inc/core/helpers/helper-form-templates.php:1107
2415
  #: inc/core/helpers/helper-misc.php:412
2416
  msgid "Oman"
2417
  msgstr ""
2418
 
2419
- #: inc/core/helpers/helper-form-templates.php:1108
2420
  #: inc/core/helpers/helper-misc.php:415
2421
  msgid "Panama"
2422
  msgstr ""
2423
 
2424
- #: inc/core/helpers/helper-form-templates.php:1109
2425
  #: inc/core/helpers/helper-misc.php:418
2426
  msgid "Peru"
2427
  msgstr ""
2428
 
2429
- #: inc/core/helpers/helper-form-templates.php:1110
2430
  #: inc/core/helpers/helper-misc.php:326
2431
  msgid "French Polynesia"
2432
  msgstr ""
2433
 
2434
- #: inc/core/helpers/helper-form-templates.php:1111
2435
  #: inc/core/helpers/helper-misc.php:416
2436
  msgid "Papua New Guinea"
2437
  msgstr ""
2438
 
2439
- #: inc/core/helpers/helper-form-templates.php:1112
2440
  #: inc/core/helpers/helper-misc.php:419
2441
  msgid "Philippines"
2442
  msgstr ""
2443
 
2444
- #: inc/core/helpers/helper-form-templates.php:1113
2445
  #: inc/core/helpers/helper-misc.php:413
2446
  msgid "Pakistan"
2447
  msgstr ""
2448
 
2449
- #: inc/core/helpers/helper-form-templates.php:1114
2450
  #: inc/core/helpers/helper-misc.php:421
2451
  msgid "Poland"
2452
  msgstr ""
2453
 
2454
- #: inc/core/helpers/helper-form-templates.php:1115
2455
  msgid "Saint Pierre and Miquelon"
2456
  msgstr ""
2457
 
2458
- #: inc/core/helpers/helper-form-templates.php:1116
2459
  #: inc/core/helpers/helper-misc.php:420
2460
  msgid "Pitcairn"
2461
  msgstr ""
2462
 
2463
- #: inc/core/helpers/helper-form-templates.php:1117
2464
  #: inc/core/helpers/helper-misc.php:422
2465
  msgid "Portugal"
2466
  msgstr ""
2467
 
2468
- #: inc/core/helpers/helper-form-templates.php:1118
2469
  #: inc/core/helpers/helper-misc.php:414
2470
  msgid "Palau"
2471
  msgstr ""
2472
 
2473
- #: inc/core/helpers/helper-form-templates.php:1119
2474
  #: inc/core/helpers/helper-misc.php:417
2475
  msgid "Paraguay"
2476
  msgstr ""
2477
 
2478
- #: inc/core/helpers/helper-form-templates.php:1120
2479
  #: inc/core/helpers/helper-misc.php:424
2480
  msgid "Qatar"
2481
  msgstr ""
2482
 
2483
- #: inc/core/helpers/helper-form-templates.php:1121
2484
  #: inc/core/helpers/helper-misc.php:426
2485
  msgid "Romania"
2486
  msgstr ""
2487
 
2488
- #: inc/core/helpers/helper-form-templates.php:1122
2489
  msgid "Serbia"
2490
  msgstr ""
2491
 
2492
- #: inc/core/helpers/helper-form-templates.php:1123
2493
  #: inc/core/helpers/helper-misc.php:427
2494
  msgid "Russian Federation"
2495
  msgstr ""
2496
 
2497
- #: inc/core/helpers/helper-form-templates.php:1124
2498
  #: inc/core/helpers/helper-misc.php:428
2499
  msgid "Rwanda"
2500
  msgstr ""
2501
 
2502
- #: inc/core/helpers/helper-form-templates.php:1125
2503
  #: inc/core/helpers/helper-misc.php:435
2504
  msgid "Saudi Arabia"
2505
  msgstr ""
2506
 
2507
- #: inc/core/helpers/helper-form-templates.php:1126
2508
  #: inc/core/helpers/helper-misc.php:442
2509
  msgid "Solomon Islands"
2510
  msgstr ""
2511
 
2512
- #: inc/core/helpers/helper-form-templates.php:1127
2513
  #: inc/core/helpers/helper-misc.php:437
2514
  msgid "Seychelles"
2515
  msgstr ""
2516
 
2517
- #: inc/core/helpers/helper-form-templates.php:1128
2518
  #: inc/core/helpers/helper-misc.php:450
2519
  msgid "Sudan"
2520
  msgstr ""
2521
 
2522
- #: inc/core/helpers/helper-form-templates.php:1129
2523
  #: inc/core/helpers/helper-misc.php:454
2524
  msgid "Sweden"
2525
  msgstr ""
2526
 
2527
- #: inc/core/helpers/helper-form-templates.php:1130
2528
  #: inc/core/helpers/helper-misc.php:439
2529
  msgid "Singapore"
2530
  msgstr ""
2531
 
2532
- #: inc/core/helpers/helper-form-templates.php:1131
2533
  msgid "Saint Helena"
2534
  msgstr ""
2535
 
2536
- #: inc/core/helpers/helper-form-templates.php:1132
2537
  #: inc/core/helpers/helper-misc.php:441
2538
  msgid "Slovenia"
2539
  msgstr ""
2540
 
2541
- #: inc/core/helpers/helper-form-templates.php:1133
2542
  msgid "Slovakia"
2543
  msgstr ""
2544
 
2545
- #: inc/core/helpers/helper-form-templates.php:1134
2546
  #: inc/core/helpers/helper-misc.php:438
2547
  msgid "Sierra Leone"
2548
  msgstr ""
2549
 
2550
- #: inc/core/helpers/helper-form-templates.php:1135
2551
  #: inc/core/helpers/helper-misc.php:433
2552
  msgid "San Marino"
2553
  msgstr ""
2554
 
2555
- #: inc/core/helpers/helper-form-templates.php:1136
2556
  #: inc/core/helpers/helper-misc.php:436
2557
  msgid "Senegal"
2558
  msgstr ""
2559
 
2560
- #: inc/core/helpers/helper-form-templates.php:1137
2561
  #: inc/core/helpers/helper-misc.php:443
2562
  msgid "Somalia"
2563
  msgstr ""
2564
 
2565
- #: inc/core/helpers/helper-form-templates.php:1138
2566
  #: inc/core/helpers/helper-misc.php:451
2567
  msgid "Suriname"
2568
  msgstr ""
2569
 
2570
- #: inc/core/helpers/helper-form-templates.php:1139
2571
  #: inc/core/helpers/helper-misc.php:434
2572
  msgid "Sao Tome and Principe"
2573
  msgstr ""
2574
 
2575
- #: inc/core/helpers/helper-form-templates.php:1140
2576
  #: inc/core/helpers/helper-misc.php:314
2577
  msgid "El Salvador"
2578
  msgstr ""
2579
 
2580
- #: inc/core/helpers/helper-form-templates.php:1141
2581
  #: inc/core/helpers/helper-misc.php:456
2582
  msgid "Syrian Arab Republic"
2583
  msgstr ""
2584
 
2585
- #: inc/core/helpers/helper-form-templates.php:1142
2586
  #: inc/core/helpers/helper-misc.php:453
2587
  msgid "Swaziland"
2588
  msgstr ""
2589
 
2590
- #: inc/core/helpers/helper-form-templates.php:1143
2591
  #: inc/core/helpers/helper-misc.php:468
2592
  msgid "Turks and Caicos Islands"
2593
  msgstr ""
2594
 
2595
- #: inc/core/helpers/helper-form-templates.php:1144
2596
  #: inc/core/helpers/helper-misc.php:291
2597
  msgid "Chad"
2598
  msgstr ""
2599
 
2600
- #: inc/core/helpers/helper-form-templates.php:1145
2601
  #: inc/core/helpers/helper-misc.php:461
2602
  msgid "Togo"
2603
  msgstr ""
2604
 
2605
- #: inc/core/helpers/helper-form-templates.php:1146
2606
  #: inc/core/helpers/helper-misc.php:460
2607
  msgid "Thailand"
2608
  msgstr ""
2609
 
2610
- #: inc/core/helpers/helper-form-templates.php:1147
2611
  #: inc/core/helpers/helper-misc.php:458
2612
  msgid "Tajikistan"
2613
  msgstr ""
2614
 
2615
- #: inc/core/helpers/helper-form-templates.php:1148
2616
  #: inc/core/helpers/helper-misc.php:462
2617
  msgid "Tokelau"
2618
  msgstr ""
2619
 
2620
- #: inc/core/helpers/helper-form-templates.php:1149
2621
  msgid "Timor-leste"
2622
  msgstr ""
2623
 
2624
- #: inc/core/helpers/helper-form-templates.php:1150
2625
  #: inc/core/helpers/helper-misc.php:467
2626
  msgid "Turkmenistan"
2627
  msgstr ""
2628
 
2629
- #: inc/core/helpers/helper-form-templates.php:1151
2630
  #: inc/core/helpers/helper-misc.php:465
2631
  msgid "Tunisia"
2632
  msgstr ""
2633
 
2634
- #: inc/core/helpers/helper-form-templates.php:1152
2635
  #: inc/core/helpers/helper-misc.php:463
2636
  msgid "Tonga"
2637
  msgstr ""
2638
 
2639
- #: inc/core/helpers/helper-form-templates.php:1153
2640
  #: inc/core/helpers/helper-misc.php:466
2641
  msgid "Turkey"
2642
  msgstr ""
2643
 
2644
- #: inc/core/helpers/helper-form-templates.php:1154
2645
  #: inc/core/helpers/helper-misc.php:464
2646
  msgid "Trinidad and Tobago"
2647
  msgstr ""
2648
 
2649
- #: inc/core/helpers/helper-form-templates.php:1155
2650
  #: inc/core/helpers/helper-misc.php:469
2651
  msgid "Tuvalu"
2652
  msgstr ""
2653
 
2654
- #: inc/core/helpers/helper-form-templates.php:1156
2655
  #: inc/core/helpers/helper-misc.php:457
2656
  msgid "Taiwan, Province of China"
2657
  msgstr ""
2658
 
2659
- #: inc/core/helpers/helper-form-templates.php:1157
2660
  #: inc/core/helpers/helper-misc.php:459
2661
  msgid "Tanzania, United Republic of"
2662
  msgstr ""
2663
 
2664
- #: inc/core/helpers/helper-form-templates.php:1158
2665
  #: inc/core/helpers/helper-misc.php:471
2666
  msgid "Ukraine"
2667
  msgstr ""
2668
 
2669
- #: inc/core/helpers/helper-form-templates.php:1159
2670
  #: inc/core/helpers/helper-misc.php:470
2671
  msgid "Uganda"
2672
  msgstr ""
2673
 
2674
- #: inc/core/helpers/helper-form-templates.php:1160
2675
  #: inc/core/helpers/helper-misc.php:474
2676
  msgid "United States"
2677
  msgstr ""
2678
 
2679
- #: inc/core/helpers/helper-form-templates.php:1161
2680
  #: inc/core/helpers/helper-misc.php:476
2681
  msgid "Uruguay"
2682
  msgstr ""
2683
 
2684
- #: inc/core/helpers/helper-form-templates.php:1162
2685
  #: inc/core/helpers/helper-misc.php:477
2686
  msgid "Uzbekistan"
2687
  msgstr ""
2688
 
2689
- #: inc/core/helpers/helper-form-templates.php:1163
2690
  #: inc/core/helpers/helper-misc.php:431
2691
  msgid "Saint Vincent and the Grenadines"
2692
  msgstr ""
2693
 
2694
- #: inc/core/helpers/helper-form-templates.php:1164
2695
  #: inc/core/helpers/helper-misc.php:479
2696
  msgid "Venezuela"
2697
  msgstr ""
2698
 
2699
- #: inc/core/helpers/helper-form-templates.php:1165
2700
  msgid "Virgin Islands, British"
2701
  msgstr ""
2702
 
2703
- #: inc/core/helpers/helper-form-templates.php:1166
2704
  msgid "Virgin Islands, U.S."
2705
  msgstr ""
2706
 
2707
- #: inc/core/helpers/helper-form-templates.php:1167
2708
  #: inc/core/helpers/helper-misc.php:480
2709
  msgid "Vietnam"
2710
  msgstr ""
2711
 
2712
- #: inc/core/helpers/helper-form-templates.php:1168
2713
  #: inc/core/helpers/helper-misc.php:478
2714
  msgid "Vanuatu"
2715
  msgstr ""
2716
 
2717
- #: inc/core/helpers/helper-form-templates.php:1169
2718
  msgid "Wallis and Futuna"
2719
  msgstr ""
2720
 
2721
- #: inc/core/helpers/helper-form-templates.php:1170
2722
  #: inc/core/helpers/helper-misc.php:432
2723
  msgid "Samoa"
2724
  msgstr ""
2725
 
2726
- #: inc/core/helpers/helper-form-templates.php:1171
2727
  #: inc/core/helpers/helper-misc.php:485
2728
  msgid "Yemen"
2729
  msgstr ""
2730
 
2731
- #: inc/core/helpers/helper-form-templates.php:1172
2732
  #: inc/core/helpers/helper-misc.php:388
2733
  msgid "Mayotte"
2734
  msgstr ""
2735
 
2736
- #: inc/core/helpers/helper-form-templates.php:1173
2737
  #: inc/core/helpers/helper-misc.php:444
2738
  msgid "South Africa"
2739
  msgstr ""
2740
 
2741
- #: inc/core/helpers/helper-form-templates.php:1174
2742
  #: inc/core/helpers/helper-misc.php:487
2743
  msgid "Zambia"
2744
  msgstr ""
2745
 
2746
- #: inc/core/helpers/helper-form-templates.php:1175
2747
  #: inc/core/helpers/helper-misc.php:488
2748
  msgid "Zimbabwe"
2749
  msgstr ""
@@ -3720,7 +3745,7 @@ msgstr ""
3720
  #: inc/core/templates/parts/customize-email.php:20
3721
  #: inc/core/templates/parts/customize-email.php:56
3722
  #: inc/core/templates/parts/customize-multi-line-text.php:20
3723
- #: inc/core/templates/parts/customize-multi-line-text.php:56
3724
  #: inc/core/templates/parts/customize-narrative.php:18
3725
  #: inc/core/templates/parts/customize-narrative.php:42
3726
  #: inc/core/templates/parts/customize-number.php:20
@@ -3734,7 +3759,7 @@ msgstr ""
3734
  #: inc/core/templates/parts/customize-rating.php:18
3735
  #: inc/core/templates/parts/customize-rating.php:84
3736
  #: inc/core/templates/parts/customize-rich-text.php:18
3737
- #: inc/core/templates/parts/customize-rich-text.php:49
3738
  #: inc/core/templates/parts/customize-scale.php:18
3739
  #: inc/core/templates/parts/customize-scale.php:96
3740
  #: inc/core/templates/parts/customize-select.php:19
@@ -3848,14 +3873,14 @@ msgstr ""
3848
  #: inc/core/templates/parts/customize-date.php:105
3849
  #: inc/core/templates/parts/customize-email.php:48
3850
  #: inc/core/templates/parts/customize-legal.php:6
3851
- #: inc/core/templates/parts/customize-multi-line-text.php:48
3852
  #: inc/core/templates/parts/customize-narrative.php:34
3853
  #: inc/core/templates/parts/customize-number.php:79
3854
  #: inc/core/templates/parts/customize-phone.php:71
3855
  #: inc/core/templates/parts/customize-placeholder.php:29
3856
  #: inc/core/templates/parts/customize-radio.php:69
3857
  #: inc/core/templates/parts/customize-rating.php:76
3858
- #: inc/core/templates/parts/customize-rich-text.php:42
3859
  #: inc/core/templates/parts/customize-scale.php:88
3860
  #: inc/core/templates/parts/customize-select.php:72
3861
  #: inc/core/templates/parts/customize-single-line-text.php:53
@@ -3924,14 +3949,14 @@ msgstr ""
3924
  #: inc/core/templates/parts/customize-date.php:106
3925
  #: inc/core/templates/parts/customize-email.php:49
3926
  #: inc/core/templates/parts/customize-legal.php:7
3927
- #: inc/core/templates/parts/customize-multi-line-text.php:49
3928
  #: inc/core/templates/parts/customize-narrative.php:35
3929
  #: inc/core/templates/parts/customize-number.php:80
3930
  #: inc/core/templates/parts/customize-phone.php:72
3931
  #: inc/core/templates/parts/customize-placeholder.php:30
3932
  #: inc/core/templates/parts/customize-radio.php:70
3933
  #: inc/core/templates/parts/customize-rating.php:77
3934
- #: inc/core/templates/parts/customize-rich-text.php:43
3935
  #: inc/core/templates/parts/customize-scale.php:89
3936
  #: inc/core/templates/parts/customize-select.php:73
3937
  #: inc/core/templates/parts/customize-single-line-text.php:54
@@ -3946,14 +3971,14 @@ msgstr ""
3946
  #: inc/core/templates/parts/customize-date.php:107
3947
  #: inc/core/templates/parts/customize-email.php:50
3948
  #: inc/core/templates/parts/customize-legal.php:8
3949
- #: inc/core/templates/parts/customize-multi-line-text.php:50
3950
  #: inc/core/templates/parts/customize-narrative.php:36
3951
  #: inc/core/templates/parts/customize-number.php:81
3952
  #: inc/core/templates/parts/customize-phone.php:73
3953
  #: inc/core/templates/parts/customize-placeholder.php:31
3954
  #: inc/core/templates/parts/customize-radio.php:71
3955
  #: inc/core/templates/parts/customize-rating.php:78
3956
- #: inc/core/templates/parts/customize-rich-text.php:44
3957
  #: inc/core/templates/parts/customize-scale.php:90
3958
  #: inc/core/templates/parts/customize-select.php:74
3959
  #: inc/core/templates/parts/customize-single-line-text.php:55
@@ -3968,7 +3993,7 @@ msgstr ""
3968
  #: inc/core/templates/parts/customize-date.php:108
3969
  #: inc/core/templates/parts/customize-email.php:51
3970
  #: inc/core/templates/parts/customize-legal.php:9
3971
- #: inc/core/templates/parts/customize-multi-line-text.php:51
3972
  #: inc/core/templates/parts/customize-narrative.php:37
3973
  #: inc/core/templates/parts/customize-number.php:82
3974
  #: inc/core/templates/parts/customize-phone.php:74
@@ -3989,14 +4014,14 @@ msgstr ""
3989
  #: inc/core/templates/parts/customize-date.php:117
3990
  #: inc/core/templates/parts/customize-email.php:60
3991
  #: inc/core/templates/parts/customize-legal.php:18
3992
- #: inc/core/templates/parts/customize-multi-line-text.php:60
3993
  #: inc/core/templates/parts/customize-narrative.php:46
3994
  #: inc/core/templates/parts/customize-number.php:91
3995
  #: inc/core/templates/parts/customize-phone.php:83
3996
  #: inc/core/templates/parts/customize-placeholder.php:41
3997
  #: inc/core/templates/parts/customize-radio.php:81
3998
  #: inc/core/templates/parts/customize-rating.php:88
3999
- #: inc/core/templates/parts/customize-rich-text.php:53
4000
  #: inc/core/templates/parts/customize-scale.php:100
4001
  #: inc/core/templates/parts/customize-select.php:84
4002
  #: inc/core/templates/parts/customize-single-line-text.php:65
@@ -4180,6 +4205,11 @@ msgstr ""
4180
  msgid "Confirmation field title"
4181
  msgstr ""
4182
 
 
 
 
 
 
4183
  #: inc/core/templates/parts/customize-narrative.php:27
4184
  msgid "Each input is required"
4185
  msgstr ""
2
  # This file is distributed under the same license as the HappyForms package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: HappyForms 1.7.5\n"
6
  "Report-Msgid-Bugs-To: https://thethemefoundry.com/support/\n"
7
+ "POT-Creation-Date: 2019-03-27 13:53:52+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
92
  msgstr ""
93
 
94
  #: inc/core/classes/class-form-admin.php:155
95
+ #: inc/core/classes/class-form-controller.php:81
96
  msgid "View form"
97
  msgstr ""
98
 
124
  msgstr ""
125
 
126
  #: inc/core/classes/class-form-admin.php:171
127
+ #: inc/core/classes/class-wp-customize-form-manager.php:164
128
  msgid "Form saved."
129
  msgstr ""
130
 
217
  msgid "Form duplicated succesfully."
218
  msgstr ""
219
 
220
+ #: inc/core/classes/class-form-controller.php:76
221
  msgid "Forms"
222
  msgstr ""
223
 
224
+ #: inc/core/classes/class-form-controller.php:77
225
  #: inc/core/classes/class-message-admin.php:397
226
  #: inc/core/classes/class-message-admin.php:916
227
  msgid "Form"
228
  msgstr ""
229
 
 
230
  #: inc/core/classes/class-form-controller.php:78
231
+ #: inc/core/classes/class-form-controller.php:80
232
  msgid "Build form"
233
  msgstr ""
234
 
235
+ #: inc/core/classes/class-form-controller.php:79
236
  msgid "Edit form"
237
  msgstr ""
238
 
239
+ #: inc/core/classes/class-form-controller.php:82
240
  msgid "View forms"
241
  msgstr ""
242
 
243
+ #: inc/core/classes/class-form-controller.php:83
244
  msgid "Search Forms"
245
  msgstr ""
246
 
247
+ #: inc/core/classes/class-form-controller.php:84
248
  msgid "No form found"
249
  msgstr ""
250
 
251
+ #: inc/core/classes/class-form-controller.php:85
252
  msgid "No forms found in Trash"
253
  msgstr ""
254
 
255
+ #: inc/core/classes/class-form-controller.php:86
256
+ #: inc/core/classes/class-form-controller.php:87
257
  #: inc/core/classes/class-happyforms-core.php:174
258
  #: inc/core/classes/class-happyforms-core.php:175
259
  msgid "All Forms"
260
  msgstr ""
261
 
262
+ #: inc/core/classes/class-form-controller.php:186
263
  msgid "Untitled form"
264
  msgstr ""
265
 
266
+ #: inc/core/classes/class-form-controller.php:610
267
  msgid " Copy"
268
  msgstr ""
269
 
270
+ #: inc/core/classes/class-form-controller.php:799
271
+ #: inc/core/classes/class-message-controller.php:318
272
+ #: inc/core/classes/class-message-controller.php:418
273
+ #: inc/core/classes/class-message-controller.php:453
274
+ msgid "Oops! Your response is invalid — please review your message."
275
  msgstr ""
276
 
277
  #: inc/core/classes/class-form-part-library.php:189
287
  msgstr ""
288
 
289
  #: inc/core/classes/class-form-setup.php:62
290
+ msgid "Thank you! Your response has been successfully submitted."
 
 
 
291
  msgstr ""
292
 
293
  #: inc/core/classes/class-form-setup.php:78
298
  msgid "We received your message"
299
  msgstr ""
300
 
301
+ #: inc/core/classes/class-form-setup.php:94
302
+ msgid ""
303
+ "Your message has been successfully sent. We appreciate you contacting us "
304
+ "and we’ll be in touch soon."
305
+ msgstr ""
306
+
307
  #: inc/core/classes/class-form-setup.php:110
308
  msgid "(optional)"
309
  msgstr ""
645
  msgid "Full width"
646
  msgstr ""
647
 
648
+ #: inc/core/classes/class-form-styles.php:504
649
  msgid "Above form"
650
  msgstr ""
651
 
652
+ #: inc/core/classes/class-form-styles.php:505
653
  msgid "Below form"
654
  msgstr ""
655
 
656
+ #: inc/core/classes/class-form-styles.php:519
657
  msgid "General"
658
  msgstr ""
659
 
660
+ #: inc/core/classes/class-form-styles.php:524
661
+ #: inc/core/classes/class-form-styles.php:834
662
  #: inc/core/templates/parts/customize-address.php:78
663
  #: inc/core/templates/parts/customize-checkbox.php:72
664
  #: inc/core/templates/parts/customize-date.php:103
665
  #: inc/core/templates/parts/customize-email.php:46
666
  #: inc/core/templates/parts/customize-legal.php:4
667
+ #: inc/core/templates/parts/customize-multi-line-text.php:50
668
  #: inc/core/templates/parts/customize-narrative.php:32
669
  #: inc/core/templates/parts/customize-number.php:77
670
  #: inc/core/templates/parts/customize-phone.php:69
671
  #: inc/core/templates/parts/customize-placeholder.php:27
672
  #: inc/core/templates/parts/customize-radio.php:67
673
  #: inc/core/templates/parts/customize-rating.php:74
674
+ #: inc/core/templates/parts/customize-rich-text.php:44
675
  #: inc/core/templates/parts/customize-scale.php:86
676
  #: inc/core/templates/parts/customize-select.php:70
677
  #: inc/core/templates/parts/customize-single-line-text.php:51
681
  msgid "Width"
682
  msgstr ""
683
 
684
+ #: inc/core/classes/class-form-styles.php:529
685
+ #: inc/core/classes/class-form-styles.php:839
686
  msgid "Padding"
687
  msgstr ""
688
 
689
+ #: inc/core/classes/class-form-styles.php:534
690
  msgid "Direction"
691
  msgstr ""
692
 
693
+ #: inc/core/classes/class-form-styles.php:539
694
  msgid "Display notices"
695
  msgstr ""
696
 
697
+ #: inc/core/classes/class-form-styles.php:545
698
+ #: inc/core/classes/class-form-styles.php:630
699
+ #: inc/core/classes/class-form-styles.php:700
700
+ #: inc/core/classes/class-form-styles.php:865
701
  msgid "Colors"
702
  msgstr ""
703
 
704
+ #: inc/core/classes/class-form-styles.php:549
705
  msgid "Primary"
706
  msgstr ""
707
 
708
+ #: inc/core/classes/class-form-styles.php:554
709
+ msgid "Success notice"
710
+ msgstr ""
711
+
712
+ #: inc/core/classes/class-form-styles.php:559
713
+ msgid "Success notice text"
714
  msgstr ""
715
 
716
+ #: inc/core/classes/class-form-styles.php:564
717
  msgid "Error"
718
  msgstr ""
719
 
720
+ #: inc/core/classes/class-form-styles.php:569
721
+ msgid "Error notice"
722
+ msgstr ""
723
+
724
+ #: inc/core/classes/class-form-styles.php:574
725
+ msgid "Error notice text"
726
+ msgstr ""
727
+
728
+ #: inc/core/classes/class-form-styles.php:579
729
  msgid "Form title"
730
  msgstr ""
731
 
732
+ #: inc/core/classes/class-form-styles.php:584
733
  msgid "Display"
734
  msgstr ""
735
 
736
+ #: inc/core/classes/class-form-styles.php:589
737
+ #: inc/core/classes/class-form-styles.php:854
738
  msgid "Alignment"
739
  msgstr ""
740
 
741
+ #: inc/core/classes/class-form-styles.php:594
742
  msgid "Font size"
743
  msgstr ""
744
 
745
+ #: inc/core/classes/class-form-styles.php:599
746
  msgid "Part borders & spacing"
747
  msgstr ""
748
 
749
+ #: inc/core/classes/class-form-styles.php:604
750
+ #: inc/core/classes/class-form-styles.php:634
751
+ #: inc/core/classes/class-form-styles.php:824
752
+ #: inc/core/classes/class-form-styles.php:879
753
  msgid "Border"
754
  msgstr ""
755
 
756
+ #: inc/core/classes/class-form-styles.php:609
757
  msgid "Border location"
758
  msgstr ""
759
 
760
+ #: inc/core/classes/class-form-styles.php:614
761
+ #: inc/core/classes/class-form-styles.php:829
762
  msgid "Border radius"
763
  msgstr ""
764
 
765
+ #: inc/core/classes/class-form-styles.php:619
766
  msgid "Outer padding"
767
  msgstr ""
768
 
769
+ #: inc/core/classes/class-form-styles.php:624
770
  msgid "Inner padding"
771
  msgstr ""
772
 
773
+ #: inc/core/classes/class-form-styles.php:639
774
  msgid "Border on focus"
775
  msgstr ""
776
 
777
+ #: inc/core/classes/class-form-styles.php:644
778
+ #: inc/core/classes/class-form-styles.php:729
779
+ #: inc/core/classes/class-form-styles.php:754
780
+ #: inc/core/classes/class-form-styles.php:869
781
  msgid "Background"
782
  msgstr ""
783
 
784
+ #: inc/core/classes/class-form-styles.php:649
785
+ #: inc/core/classes/class-form-styles.php:739
786
+ #: inc/core/classes/class-form-styles.php:759
787
+ #: inc/core/classes/class-form-styles.php:874
788
  msgid "Background on focus"
789
  msgstr ""
790
 
791
+ #: inc/core/classes/class-form-styles.php:654
792
  msgid "Part labels & text"
793
  msgstr ""
794
 
795
+ #: inc/core/classes/class-form-styles.php:659
796
  msgid "Toggle placeholder on part focus"
797
  msgstr ""
798
 
799
+ #: inc/core/classes/class-form-styles.php:664
800
  msgid "Title alignment"
801
  msgstr ""
802
 
803
+ #: inc/core/classes/class-form-styles.php:669
804
  msgid "Title font size"
805
  msgstr ""
806
 
807
+ #: inc/core/classes/class-form-styles.php:674
808
  msgid "Title font weight"
809
  msgstr ""
810
 
811
+ #: inc/core/classes/class-form-styles.php:679
812
  msgid "Description alignment"
813
  msgstr ""
814
 
815
+ #: inc/core/classes/class-form-styles.php:684
816
  msgid "Description font size"
817
  msgstr ""
818
 
819
+ #: inc/core/classes/class-form-styles.php:689
820
  msgid "Placeholder &amp; value alignment"
821
  msgstr ""
822
 
823
+ #: inc/core/classes/class-form-styles.php:694
824
  msgid "Value font size"
825
  msgstr ""
826
 
827
+ #: inc/core/classes/class-form-styles.php:704
828
  #: inc/core/classes/parts/class-part-title.php:8
829
  #: inc/core/classes/parts/class-part-title.php:30
830
  #: inc/core/templates/parts/customize-address.php:4
848
  msgid "Title"
849
  msgstr ""
850
 
851
+ #: inc/core/classes/class-form-styles.php:709
852
  msgid "Value"
853
  msgstr ""
854
 
855
+ #: inc/core/classes/class-form-styles.php:714
856
  #: inc/core/classes/parts/class-part-placeholder.php:8
857
  #: inc/core/templates/parts/customize-address.php:36
858
  #: inc/core/templates/parts/customize-email.php:36
866
  msgid "Placeholder"
867
  msgstr ""
868
 
869
+ #: inc/core/classes/class-form-styles.php:719
870
  msgid "Dropdowns"
871
  msgstr ""
872
 
873
+ #: inc/core/classes/class-form-styles.php:725
874
  msgid "Items"
875
  msgstr ""
876
 
877
+ #: inc/core/classes/class-form-styles.php:734
878
+ #: inc/core/classes/class-form-styles.php:884
879
+ #: inc/core/classes/parts/class-part-multi-line-text.php:32
880
+ #: inc/core/classes/parts/class-part-rich-text.php:33
881
  #: inc/core/classes/parts/class-part-single-line-text.php:29
882
  #: inc/core/templates/parts/customize-legal.php:13
883
  #: inc/core/templates/parts/customize-narrative.php:22
885
  msgid "Text"
886
  msgstr ""
887
 
888
+ #: inc/core/classes/class-form-styles.php:744
889
+ #: inc/core/classes/class-form-styles.php:889
890
  msgid "Text focused"
891
  msgstr ""
892
 
893
+ #: inc/core/classes/class-form-styles.php:749
894
  msgid "Checkboxes & Radios"
895
  msgstr ""
896
 
897
+ #: inc/core/classes/class-form-styles.php:764
898
  msgid "Checkmark"
899
  msgstr ""
900
 
901
+ #: inc/core/classes/class-form-styles.php:769
902
  #: inc/core/classes/parts/class-part-rating.php:9
903
  #: inc/core/classes/parts/class-part-rating.php:31
904
  msgid "Rating"
905
  msgstr ""
906
 
907
+ #: inc/core/classes/class-form-styles.php:774
908
  msgid "Rating star color"
909
  msgstr ""
910
 
911
+ #: inc/core/classes/class-form-styles.php:779
912
  msgid "Rating star color on hover"
913
  msgstr ""
914
 
915
+ #: inc/core/classes/class-form-styles.php:784
916
  msgid "Item background"
917
  msgstr ""
918
 
919
+ #: inc/core/classes/class-form-styles.php:789
920
  msgid "Item background on hover"
921
  msgstr ""
922
 
923
+ #: inc/core/classes/class-form-styles.php:794
924
  msgid "Tables"
925
  msgstr ""
926
 
927
+ #: inc/core/classes/class-form-styles.php:799
928
  msgid "Odd row primary"
929
  msgstr ""
930
 
931
+ #: inc/core/classes/class-form-styles.php:804
932
  msgid "Odd row secondary"
933
  msgstr ""
934
 
935
+ #: inc/core/classes/class-form-styles.php:809
936
  msgid "Even row primary"
937
  msgstr ""
938
 
939
+ #: inc/core/classes/class-form-styles.php:814
940
  msgid "Even row secondary"
941
  msgstr ""
942
 
943
+ #: inc/core/classes/class-form-styles.php:819
944
  msgid "Submit button"
945
  msgstr ""
946
 
947
+ #: inc/core/classes/class-form-styles.php:844
948
  msgid "Font Size"
949
  msgstr ""
950
 
951
+ #: inc/core/classes/class-form-styles.php:849
952
  msgid "Font Weight"
953
  msgstr ""
954
 
955
+ #: inc/core/classes/class-form-styles.php:859
956
  msgid "Make button a part of last input"
957
  msgstr ""
958
 
1099
 
1100
  #: inc/core/classes/class-message-admin.php:394
1101
  #: inc/core/classes/class-message-admin.php:780
1102
+ #: inc/core/classes/class-message-controller.php:661
1103
+ #: inc/core/classes/class-message-controller.php:874
1104
+ #: inc/core/classes/class-message-controller.php:941
1105
  #: inc/core/templates/admin-message-edit.php:27
1106
  msgid "Tracking number"
1107
  msgstr ""
1167
  msgid "All Responses"
1168
  msgstr ""
1169
 
1170
+ #: inc/core/classes/class-message-controller.php:893
1171
  msgid "Reply to this message and mark it as read"
1172
  msgstr ""
1173
 
1197
  msgid "Error description"
1198
  msgstr ""
1199
 
1200
+ #: inc/core/classes/class-wp-customize-form-manager.php:165
1201
  msgid "Now, there are couple of ways to embed it to your content. Here goes..."
1202
  msgstr ""
1203
 
1204
+ #: inc/core/classes/class-wp-customize-form-manager.php:166
1205
  msgid "Add to your page / post content"
1206
  msgstr ""
1207
 
1208
+ #: inc/core/classes/class-wp-customize-form-manager.php:167
1209
  msgid ""
1210
  "In your Edit Post / Edit Page screen, click the <b>Add HappyForms</b> "
1211
  "button right above your toolbar. A modal window will appear."
1212
  msgstr ""
1213
 
1214
+ #: inc/core/classes/class-wp-customize-form-manager.php:167
1215
  msgid "Select a form in the dropdown, then click <b>Insert</b>."
1216
  msgstr ""
1217
 
1218
+ #: inc/core/classes/class-wp-customize-form-manager.php:167
1219
  msgid ""
1220
  "That's it! You'll notice the shortcode was added to your content. Your form "
1221
  "will show up there."
1222
  msgstr ""
1223
 
1224
+ #: inc/core/classes/class-wp-customize-form-manager.php:168
1225
  msgid "Use the HappyForms widget"
1226
  msgstr ""
1227
 
1228
+ #: inc/core/classes/class-wp-customize-form-manager.php:170
1229
  msgid ""
1230
  "Head over to <b>Appearance</b> &rarr; <b><a href=\"%s\">Widgets</a></b> "
1231
  "screen."
1232
  msgstr ""
1233
 
1234
+ #: inc/core/classes/class-wp-customize-form-manager.php:171
1235
  msgid "Drag the HappyForms widget to your sidebar."
1236
  msgstr ""
1237
 
1238
+ #: inc/core/classes/class-wp-customize-form-manager.php:172
1239
  msgid "Select a form in the Form dropdown."
1240
  msgstr ""
1241
 
1242
+ #: inc/core/classes/class-wp-customize-form-manager.php:173
1243
  msgid "All done!"
1244
  msgstr ""
1245
 
1246
+ #: inc/core/classes/class-wp-customize-form-manager.php:175
1247
  msgid ""
1248
  "Looking for a full documentation? Head over to our <a href=\"%s\" "
1249
  "target=\"_blank\">Help Guide</a>."
1250
  msgstr ""
1251
 
1252
+ #: inc/core/classes/class-wp-customize-form-manager.php:182
1253
  msgid ""
1254
  "Form saved. You can add this form to any Page, Post and Widget area. Have "
1255
  "questions? <a href=\"%s\" target=\"_blank\">Ask for help in our support "
1271
  #: inc/core/classes/parts/class-part-email.php:152
1272
  #: inc/core/classes/parts/class-part-email.php:156
1273
  #: inc/core/classes/parts/class-part-legal.php:120
1274
+ #: inc/core/classes/parts/class-part-multi-line-text.php:154
1275
  #: inc/core/classes/parts/class-part-narrative.php:130
1276
  #: inc/core/classes/parts/class-part-narrative.php:135
1277
  #: inc/core/classes/parts/class-part-number.php:174
1279
  #: inc/core/classes/parts/class-part-phone.php:170
1280
  #: inc/core/classes/parts/class-part-radio.php:172
1281
  #: inc/core/classes/parts/class-part-rating.php:157
1282
+ #: inc/core/classes/parts/class-part-rich-text.php:196
1283
  #: inc/core/classes/parts/class-part-scale.php:168
1284
  #: inc/core/classes/parts/class-part-select.php:175
1285
  #: inc/core/classes/parts/class-part-single-line-text.php:134
1286
  #: inc/core/classes/parts/class-part-table.php:220
1287
  #: inc/core/classes/parts/class-part-table.php:227
1288
+ #: inc/core/classes/parts/class-part-title.php:171
1289
  #: inc/core/classes/parts/class-part-website-url.php:129
1290
  msgid "This field is required."
1291
  msgstr ""
1387
  msgid "For paragraph text fields."
1388
  msgstr ""
1389
 
1390
+ #: inc/core/classes/parts/class-part-multi-line-text.php:161
1391
+ #: inc/core/classes/parts/class-part-rich-text.php:205
1392
+ msgid "Value exceeds character limit."
1393
+ msgstr ""
1394
+
1395
+ #: inc/core/classes/parts/class-part-multi-line-text.php:212
1396
+ #: inc/core/classes/parts/class-part-rich-text.php:252
1397
+ msgid "characters"
1398
+ msgstr ""
1399
+
1400
  #: inc/core/classes/parts/class-part-narrative.php:8
1401
  #: inc/core/classes/parts/class-part-narrative.php:29
1402
  msgid "Story"
1526
 
1527
  #: inc/core/classes/parts/class-part-select.php:180
1528
  #: inc/core/classes/parts/class-part-select.php:186
1529
+ #: inc/core/classes/parts/class-part-title.php:176
1530
+ #: inc/core/classes/parts/class-part-title.php:182
1531
  msgid "Selected value is not valid."
1532
  msgstr ""
1533
 
1640
  msgid "How can I access my premium upgrade credentials?"
1641
  msgstr ""
1642
 
1643
+ #: inc/core/helpers/helper-form-templates.php:938
1644
  msgid "Get my location"
1645
  msgstr ""
1646
 
1647
+ #: inc/core/helpers/helper-form-templates.php:938
1648
  msgid "Fetching location…"
1649
  msgstr ""
1650
 
1651
+ #: inc/core/helpers/helper-form-templates.php:948
1652
  msgid "January"
1653
  msgstr ""
1654
 
1655
+ #: inc/core/helpers/helper-form-templates.php:949
1656
  msgid "February"
1657
  msgstr ""
1658
 
1659
+ #: inc/core/helpers/helper-form-templates.php:950
1660
  msgid "March"
1661
  msgstr ""
1662
 
1663
+ #: inc/core/helpers/helper-form-templates.php:951
1664
  msgid "April"
1665
  msgstr ""
1666
 
1667
+ #: inc/core/helpers/helper-form-templates.php:952
1668
  msgid "May"
1669
  msgstr ""
1670
 
1671
+ #: inc/core/helpers/helper-form-templates.php:953
1672
  msgid "June"
1673
  msgstr ""
1674
 
1675
+ #: inc/core/helpers/helper-form-templates.php:954
1676
  msgid "July"
1677
  msgstr ""
1678
 
1679
+ #: inc/core/helpers/helper-form-templates.php:955
1680
  msgid "August"
1681
  msgstr ""
1682
 
1683
+ #: inc/core/helpers/helper-form-templates.php:956
1684
  msgid "September"
1685
  msgstr ""
1686
 
1687
+ #: inc/core/helpers/helper-form-templates.php:957
1688
  msgid "October"
1689
  msgstr ""
1690
 
1691
+ #: inc/core/helpers/helper-form-templates.php:958
1692
  msgid "November"
1693
  msgstr ""
1694
 
1695
+ #: inc/core/helpers/helper-form-templates.php:959
1696
  msgid "December"
1697
  msgstr ""
1698
 
1699
+ #: inc/core/helpers/helper-form-templates.php:1000
1700
  #: inc/core/helpers/helper-misc.php:254
1701
  msgid "Andorra"
1702
  msgstr ""
1703
 
1704
+ #: inc/core/helpers/helper-form-templates.php:1001
1705
  #: inc/core/helpers/helper-misc.php:472
1706
  msgid "United Arab Emirates"
1707
  msgstr ""
1708
 
1709
+ #: inc/core/helpers/helper-form-templates.php:1002
1710
  #: inc/core/helpers/helper-misc.php:250
1711
  msgid "Afghanistan"
1712
  msgstr ""
1713
 
1714
+ #: inc/core/helpers/helper-form-templates.php:1003
1715
  #: inc/core/helpers/helper-misc.php:258
1716
  msgid "Antigua and Barbuda"
1717
  msgstr ""
1718
 
1719
+ #: inc/core/helpers/helper-form-templates.php:1004
1720
  #: inc/core/helpers/helper-misc.php:256
1721
  msgid "Anguilla"
1722
  msgstr ""
1723
 
1724
+ #: inc/core/helpers/helper-form-templates.php:1005
1725
  #: inc/core/helpers/helper-misc.php:251
1726
  msgid "Albania"
1727
  msgstr ""
1728
 
1729
+ #: inc/core/helpers/helper-form-templates.php:1006
1730
  #: inc/core/helpers/helper-misc.php:260
1731
  msgid "Armenia"
1732
  msgstr ""
1733
 
1734
+ #: inc/core/helpers/helper-form-templates.php:1007
1735
  #: inc/core/helpers/helper-misc.php:255
1736
  msgid "Angola"
1737
  msgstr ""
1738
 
1739
+ #: inc/core/helpers/helper-form-templates.php:1008
1740
  #: inc/core/helpers/helper-misc.php:257
1741
  msgid "Antarctica"
1742
  msgstr ""
1743
 
1744
+ #: inc/core/helpers/helper-form-templates.php:1009
1745
  #: inc/core/helpers/helper-misc.php:259
1746
  msgid "Argentina"
1747
  msgstr ""
1748
 
1749
+ #: inc/core/helpers/helper-form-templates.php:1010
1750
  #: inc/core/helpers/helper-misc.php:253
1751
  msgid "American Samoa"
1752
  msgstr ""
1753
 
1754
+ #: inc/core/helpers/helper-form-templates.php:1011
1755
  #: inc/core/helpers/helper-misc.php:263
1756
  msgid "Austria"
1757
  msgstr ""
1758
 
1759
+ #: inc/core/helpers/helper-form-templates.php:1012
1760
  #: inc/core/helpers/helper-misc.php:262
1761
  msgid "Australia"
1762
  msgstr ""
1763
 
1764
+ #: inc/core/helpers/helper-form-templates.php:1013
1765
  #: inc/core/helpers/helper-misc.php:261
1766
  msgid "Aruba"
1767
  msgstr ""
1768
 
1769
+ #: inc/core/helpers/helper-form-templates.php:1014
1770
  #: inc/core/helpers/helper-misc.php:264
1771
  msgid "Azerbaijan"
1772
  msgstr ""
1773
 
1774
+ #: inc/core/helpers/helper-form-templates.php:1015
1775
  msgid "Bosnia and Herzegovina"
1776
  msgstr ""
1777
 
1778
+ #: inc/core/helpers/helper-form-templates.php:1016
1779
  #: inc/core/helpers/helper-misc.php:268
1780
  msgid "Barbados"
1781
  msgstr ""
1782
 
1783
+ #: inc/core/helpers/helper-form-templates.php:1017
1784
  #: inc/core/helpers/helper-misc.php:267
1785
  msgid "Bangladesh"
1786
  msgstr ""
1787
 
1788
+ #: inc/core/helpers/helper-form-templates.php:1018
1789
  #: inc/core/helpers/helper-misc.php:270
1790
  msgid "Belgium"
1791
  msgstr ""
1792
 
1793
+ #: inc/core/helpers/helper-form-templates.php:1019
1794
  #: inc/core/helpers/helper-misc.php:283
1795
  msgid "Burkina Faso"
1796
  msgstr ""
1797
 
1798
+ #: inc/core/helpers/helper-form-templates.php:1020
1799
  #: inc/core/helpers/helper-misc.php:282
1800
  msgid "Bulgaria"
1801
  msgstr ""
1802
 
1803
+ #: inc/core/helpers/helper-form-templates.php:1021
1804
  #: inc/core/helpers/helper-misc.php:266
1805
  msgid "Bahrain"
1806
  msgstr ""
1807
 
1808
+ #: inc/core/helpers/helper-form-templates.php:1022
1809
  #: inc/core/helpers/helper-misc.php:284
1810
  msgid "Burundi"
1811
  msgstr ""
1812
 
1813
+ #: inc/core/helpers/helper-form-templates.php:1023
1814
  #: inc/core/helpers/helper-misc.php:272
1815
  msgid "Benin"
1816
  msgstr ""
1817
 
1818
+ #: inc/core/helpers/helper-form-templates.php:1024
1819
  msgid "Saint Barthelemy"
1820
  msgstr ""
1821
 
1822
+ #: inc/core/helpers/helper-form-templates.php:1025
1823
  #: inc/core/helpers/helper-misc.php:273
1824
  msgid "Bermuda"
1825
  msgstr ""
1826
 
1827
+ #: inc/core/helpers/helper-form-templates.php:1026
1828
  #: inc/core/helpers/helper-misc.php:281
1829
  msgid "Brunei Darussalam"
1830
  msgstr ""
1831
 
1832
+ #: inc/core/helpers/helper-form-templates.php:1027
1833
  #: inc/core/helpers/helper-misc.php:275
1834
  msgid "Bolivia"
1835
  msgstr ""
1836
 
1837
+ #: inc/core/helpers/helper-form-templates.php:1028
1838
  #: inc/core/helpers/helper-misc.php:279
1839
  msgid "Brazil"
1840
  msgstr ""
1841
 
1842
+ #: inc/core/helpers/helper-form-templates.php:1029
1843
  #: inc/core/helpers/helper-misc.php:265
1844
  msgid "Bahamas"
1845
  msgstr ""
1846
 
1847
+ #: inc/core/helpers/helper-form-templates.php:1030
1848
  #: inc/core/helpers/helper-misc.php:274
1849
  msgid "Bhutan"
1850
  msgstr ""
1851
 
1852
+ #: inc/core/helpers/helper-form-templates.php:1031
1853
  #: inc/core/helpers/helper-misc.php:277
1854
  msgid "Botswana"
1855
  msgstr ""
1856
 
1857
+ #: inc/core/helpers/helper-form-templates.php:1032
1858
  #: inc/core/helpers/helper-misc.php:269
1859
  msgid "Belarus"
1860
  msgstr ""
1861
 
1862
+ #: inc/core/helpers/helper-form-templates.php:1033
1863
  #: inc/core/helpers/helper-misc.php:271
1864
  msgid "Belize"
1865
  msgstr ""
1866
 
1867
+ #: inc/core/helpers/helper-form-templates.php:1034
1868
  #: inc/core/helpers/helper-misc.php:287
1869
  msgid "Canada"
1870
  msgstr ""
1871
 
1872
+ #: inc/core/helpers/helper-form-templates.php:1035
1873
  msgid "Congo, The Democratic Republic of the"
1874
  msgstr ""
1875
 
1876
+ #: inc/core/helpers/helper-form-templates.php:1036
1877
  #: inc/core/helpers/helper-misc.php:290
1878
  msgid "Central African Republic"
1879
  msgstr ""
1880
 
1881
+ #: inc/core/helpers/helper-form-templates.php:1037
1882
  #: inc/core/helpers/helper-misc.php:298
1883
  msgid "Congo"
1884
  msgstr ""
1885
 
1886
+ #: inc/core/helpers/helper-form-templates.php:1038
1887
  #: inc/core/helpers/helper-misc.php:455
1888
  msgid "Switzerland"
1889
  msgstr ""
1890
 
1891
+ #: inc/core/helpers/helper-form-templates.php:1039
1892
  #: inc/core/helpers/helper-misc.php:300
1893
  msgid "Cook Islands"
1894
  msgstr ""
1895
 
1896
+ #: inc/core/helpers/helper-form-templates.php:1040
1897
  #: inc/core/helpers/helper-misc.php:292
1898
  msgid "Chile"
1899
  msgstr ""
1900
 
1901
+ #: inc/core/helpers/helper-form-templates.php:1041
1902
  #: inc/core/helpers/helper-misc.php:286
1903
  msgid "Cameroon"
1904
  msgstr ""
1905
 
1906
+ #: inc/core/helpers/helper-form-templates.php:1042
1907
  #: inc/core/helpers/helper-misc.php:293
1908
  msgid "China"
1909
  msgstr ""
1910
 
1911
+ #: inc/core/helpers/helper-form-templates.php:1043
1912
  #: inc/core/helpers/helper-misc.php:296
1913
  msgid "Colombia"
1914
  msgstr ""
1915
 
1916
+ #: inc/core/helpers/helper-form-templates.php:1044
1917
  #: inc/core/helpers/helper-misc.php:301
1918
  msgid "Costa Rica"
1919
  msgstr ""
1920
 
1921
+ #: inc/core/helpers/helper-form-templates.php:1045
1922
  #: inc/core/helpers/helper-misc.php:304
1923
  msgid "Cuba"
1924
  msgstr ""
1925
 
1926
+ #: inc/core/helpers/helper-form-templates.php:1046
1927
  #: inc/core/helpers/helper-misc.php:288
1928
  msgid "Cape Verde"
1929
  msgstr ""
1930
 
1931
+ #: inc/core/helpers/helper-form-templates.php:1047
1932
  #: inc/core/helpers/helper-misc.php:305
1933
  msgid "Cyprus"
1934
  msgstr ""
1935
 
1936
+ #: inc/core/helpers/helper-form-templates.php:1048
1937
  #: inc/core/helpers/helper-misc.php:306
1938
  msgid "Czech Republic"
1939
  msgstr ""
1940
 
1941
+ #: inc/core/helpers/helper-form-templates.php:1049
1942
  #: inc/core/helpers/helper-misc.php:331
1943
  msgid "Germany"
1944
  msgstr ""
1945
 
1946
+ #: inc/core/helpers/helper-form-templates.php:1050
1947
  #: inc/core/helpers/helper-misc.php:308
1948
  msgid "Djibouti"
1949
  msgstr ""
1950
 
1951
+ #: inc/core/helpers/helper-form-templates.php:1051
1952
  #: inc/core/helpers/helper-misc.php:307
1953
  msgid "Denmark"
1954
  msgstr ""
1955
 
1956
+ #: inc/core/helpers/helper-form-templates.php:1052
1957
  #: inc/core/helpers/helper-misc.php:309
1958
  msgid "Dominica"
1959
  msgstr ""
1960
 
1961
+ #: inc/core/helpers/helper-form-templates.php:1053
1962
  #: inc/core/helpers/helper-misc.php:310
1963
  msgid "Dominican Republic"
1964
  msgstr ""
1965
 
1966
+ #: inc/core/helpers/helper-form-templates.php:1054
1967
  #: inc/core/helpers/helper-misc.php:252
1968
  msgid "Algeria"
1969
  msgstr ""
1970
 
1971
+ #: inc/core/helpers/helper-form-templates.php:1055
1972
  #: inc/core/helpers/helper-misc.php:312
1973
  msgid "Ecuador"
1974
  msgstr ""
1975
 
1976
+ #: inc/core/helpers/helper-form-templates.php:1056
1977
  #: inc/core/helpers/helper-misc.php:317
1978
  msgid "Estonia"
1979
  msgstr ""
1980
 
1981
+ #: inc/core/helpers/helper-form-templates.php:1057
1982
  #: inc/core/helpers/helper-misc.php:313
1983
  msgid "Egypt"
1984
  msgstr ""
1985
 
1986
+ #: inc/core/helpers/helper-form-templates.php:1058
1987
  #: inc/core/helpers/helper-misc.php:316
1988
  msgid "Eritrea"
1989
  msgstr ""
1990
 
1991
+ #: inc/core/helpers/helper-form-templates.php:1059
1992
  #: inc/core/helpers/helper-misc.php:446
1993
  msgid "Spain"
1994
  msgstr ""
1995
 
1996
+ #: inc/core/helpers/helper-form-templates.php:1060
1997
  #: inc/core/helpers/helper-misc.php:318
1998
  msgid "Ethiopia"
1999
  msgstr ""
2000
 
2001
+ #: inc/core/helpers/helper-form-templates.php:1061
2002
  #: inc/core/helpers/helper-misc.php:322
2003
  msgid "Finland"
2004
  msgstr ""
2005
 
2006
+ #: inc/core/helpers/helper-form-templates.php:1062
2007
  #: inc/core/helpers/helper-misc.php:321
2008
  msgid "Fiji"
2009
  msgstr ""
2010
 
2011
+ #: inc/core/helpers/helper-form-templates.php:1063
2012
  #: inc/core/helpers/helper-misc.php:319
2013
  msgid "Falkland Islands (Malvinas)"
2014
  msgstr ""
2015
 
2016
+ #: inc/core/helpers/helper-form-templates.php:1064
2017
  #: inc/core/helpers/helper-misc.php:390
2018
  msgid "Micronesia, Federated States of"
2019
  msgstr ""
2020
 
2021
+ #: inc/core/helpers/helper-form-templates.php:1065
2022
  #: inc/core/helpers/helper-misc.php:320
2023
  msgid "Faroe Islands"
2024
  msgstr ""
2025
 
2026
+ #: inc/core/helpers/helper-form-templates.php:1066
2027
  #: inc/core/helpers/helper-misc.php:323
2028
  msgid "France"
2029
  msgstr ""
2030
 
2031
+ #: inc/core/helpers/helper-form-templates.php:1067
2032
  #: inc/core/helpers/helper-misc.php:328
2033
  msgid "Gabon"
2034
  msgstr ""
2035
 
2036
+ #: inc/core/helpers/helper-form-templates.php:1068
2037
  #: inc/core/helpers/helper-misc.php:473
2038
  msgid "United Kingdom"
2039
  msgstr ""
2040
 
2041
+ #: inc/core/helpers/helper-form-templates.php:1069
2042
  #: inc/core/helpers/helper-misc.php:336
2043
  msgid "Grenada"
2044
  msgstr ""
2045
 
2046
+ #: inc/core/helpers/helper-form-templates.php:1070
2047
  #: inc/core/helpers/helper-misc.php:330
2048
  msgid "Georgia"
2049
  msgstr ""
2050
 
2051
+ #: inc/core/helpers/helper-form-templates.php:1071
2052
  #: inc/core/helpers/helper-misc.php:332
2053
  msgid "Ghana"
2054
  msgstr ""
2055
 
2056
+ #: inc/core/helpers/helper-form-templates.php:1072
2057
  #: inc/core/helpers/helper-misc.php:333
2058
  msgid "Gibraltar"
2059
  msgstr ""
2060
 
2061
+ #: inc/core/helpers/helper-form-templates.php:1073
2062
  #: inc/core/helpers/helper-misc.php:335
2063
  msgid "Greenland"
2064
  msgstr ""
2065
 
2066
+ #: inc/core/helpers/helper-form-templates.php:1074
2067
  #: inc/core/helpers/helper-misc.php:329
2068
  msgid "Gambia"
2069
  msgstr ""
2070
 
2071
+ #: inc/core/helpers/helper-form-templates.php:1075
2072
  #: inc/core/helpers/helper-misc.php:340
2073
  msgid "Guinea"
2074
  msgstr ""
2075
 
2076
+ #: inc/core/helpers/helper-form-templates.php:1076
2077
  #: inc/core/helpers/helper-misc.php:334
2078
  msgid "Greece"
2079
  msgstr ""
2080
 
2081
+ #: inc/core/helpers/helper-form-templates.php:1077
2082
  #: inc/core/helpers/helper-misc.php:339
2083
  msgid "Guatemala"
2084
  msgstr ""
2085
 
2086
+ #: inc/core/helpers/helper-form-templates.php:1078
2087
  #: inc/core/helpers/helper-misc.php:338
2088
  msgid "Guam"
2089
  msgstr ""
2090
 
2091
+ #: inc/core/helpers/helper-form-templates.php:1079
2092
  msgid "Guinea-bissau"
2093
  msgstr ""
2094
 
2095
+ #: inc/core/helpers/helper-form-templates.php:1080
2096
  #: inc/core/helpers/helper-misc.php:342
2097
  msgid "Guyana"
2098
  msgstr ""
2099
 
2100
+ #: inc/core/helpers/helper-form-templates.php:1081
2101
  #: inc/core/helpers/helper-misc.php:347
2102
  msgid "Hong Kong"
2103
  msgstr ""
2104
 
2105
+ #: inc/core/helpers/helper-form-templates.php:1082
2106
  #: inc/core/helpers/helper-misc.php:346
2107
  msgid "Honduras"
2108
  msgstr ""
2109
 
2110
+ #: inc/core/helpers/helper-form-templates.php:1083
2111
  msgid "Croatia"
2112
  msgstr ""
2113
 
2114
+ #: inc/core/helpers/helper-form-templates.php:1084
2115
  #: inc/core/helpers/helper-misc.php:343
2116
  msgid "Haiti"
2117
  msgstr ""
2118
 
2119
+ #: inc/core/helpers/helper-form-templates.php:1085
2120
  #: inc/core/helpers/helper-misc.php:348
2121
  msgid "Hungary"
2122
  msgstr ""
2123
 
2124
+ #: inc/core/helpers/helper-form-templates.php:1086
2125
  #: inc/core/helpers/helper-misc.php:351
2126
  msgid "Indonesia"
2127
  msgstr ""
2128
 
2129
+ #: inc/core/helpers/helper-form-templates.php:1087
2130
  #: inc/core/helpers/helper-misc.php:354
2131
  msgid "Ireland"
2132
  msgstr ""
2133
 
2134
+ #: inc/core/helpers/helper-form-templates.php:1088
2135
  #: inc/core/helpers/helper-misc.php:355
2136
  msgid "Israel"
2137
  msgstr ""
2138
 
2139
+ #: inc/core/helpers/helper-form-templates.php:1089
2140
  #: inc/core/helpers/helper-misc.php:350
2141
  msgid "India"
2142
  msgstr ""
2143
 
2144
+ #: inc/core/helpers/helper-form-templates.php:1090
2145
  #: inc/core/helpers/helper-misc.php:353
2146
  msgid "Iraq"
2147
  msgstr ""
2148
 
2149
+ #: inc/core/helpers/helper-form-templates.php:1091
2150
  msgid "Iran, Islamic Republic of"
2151
  msgstr ""
2152
 
2153
+ #: inc/core/helpers/helper-form-templates.php:1092
2154
  #: inc/core/helpers/helper-misc.php:349
2155
  msgid "Iceland"
2156
  msgstr ""
2157
 
2158
+ #: inc/core/helpers/helper-form-templates.php:1093
2159
  #: inc/core/helpers/helper-misc.php:356
2160
  msgid "Italy"
2161
  msgstr ""
2162
 
2163
+ #: inc/core/helpers/helper-form-templates.php:1094
2164
  #: inc/core/helpers/helper-misc.php:357
2165
  msgid "Jamaica"
2166
  msgstr ""
2167
 
2168
+ #: inc/core/helpers/helper-form-templates.php:1095
2169
  #: inc/core/helpers/helper-misc.php:359
2170
  msgid "Jordan"
2171
  msgstr ""
2172
 
2173
+ #: inc/core/helpers/helper-form-templates.php:1096
2174
  #: inc/core/helpers/helper-misc.php:358
2175
  msgid "Japan"
2176
  msgstr ""
2177
 
2178
+ #: inc/core/helpers/helper-form-templates.php:1097
2179
  #: inc/core/helpers/helper-misc.php:361
2180
  msgid "Kenya"
2181
  msgstr ""
2182
 
2183
+ #: inc/core/helpers/helper-form-templates.php:1098
2184
  #: inc/core/helpers/helper-misc.php:366
2185
  msgid "Kyrgyzstan"
2186
  msgstr ""
2187
 
2188
+ #: inc/core/helpers/helper-form-templates.php:1099
2189
  #: inc/core/helpers/helper-misc.php:285
2190
  msgid "Cambodia"
2191
  msgstr ""
2192
 
2193
+ #: inc/core/helpers/helper-form-templates.php:1100
2194
  #: inc/core/helpers/helper-misc.php:362
2195
  msgid "Kiribati"
2196
  msgstr ""
2197
 
2198
+ #: inc/core/helpers/helper-form-templates.php:1101
2199
  #: inc/core/helpers/helper-misc.php:297
2200
  msgid "Comoros"
2201
  msgstr ""
2202
 
2203
+ #: inc/core/helpers/helper-form-templates.php:1102
2204
  #: inc/core/helpers/helper-misc.php:429
2205
  msgid "Saint Kitts and Nevis"
2206
  msgstr ""
2207
 
2208
+ #: inc/core/helpers/helper-form-templates.php:1103
2209
  msgid "Korea Democratic Peoples Republic of"
2210
  msgstr ""
2211
 
2212
+ #: inc/core/helpers/helper-form-templates.php:1104
2213
  msgid "Korea Republic of"
2214
  msgstr ""
2215
 
2216
+ #: inc/core/helpers/helper-form-templates.php:1105
2217
  #: inc/core/helpers/helper-misc.php:365
2218
  msgid "Kuwait"
2219
  msgstr ""
2220
 
2221
+ #: inc/core/helpers/helper-form-templates.php:1106
2222
  #: inc/core/helpers/helper-misc.php:289
2223
  msgid "Cayman Islands"
2224
  msgstr ""
2225
 
2226
+ #: inc/core/helpers/helper-form-templates.php:1107
2227
  msgid "Lao Peoples Democratic Republic"
2228
  msgstr ""
2229
 
2230
+ #: inc/core/helpers/helper-form-templates.php:1108
2231
  #: inc/core/helpers/helper-misc.php:369
2232
  msgid "Lebanon"
2233
  msgstr ""
2234
 
2235
+ #: inc/core/helpers/helper-form-templates.php:1109
2236
  #: inc/core/helpers/helper-misc.php:430
2237
  msgid "Saint Lucia"
2238
  msgstr ""
2239
 
2240
+ #: inc/core/helpers/helper-form-templates.php:1110
2241
  #: inc/core/helpers/helper-misc.php:373
2242
  msgid "Liechtenstein"
2243
  msgstr ""
2244
 
2245
+ #: inc/core/helpers/helper-form-templates.php:1111
2246
  #: inc/core/helpers/helper-misc.php:447
2247
  msgid "Sri Lanka"
2248
  msgstr ""
2249
 
2250
+ #: inc/core/helpers/helper-form-templates.php:1112
2251
  #: inc/core/helpers/helper-misc.php:371
2252
  msgid "Liberia"
2253
  msgstr ""
2254
 
2255
+ #: inc/core/helpers/helper-form-templates.php:1113
2256
  #: inc/core/helpers/helper-misc.php:370
2257
  msgid "Lesotho"
2258
  msgstr ""
2259
 
2260
+ #: inc/core/helpers/helper-form-templates.php:1114
2261
  #: inc/core/helpers/helper-misc.php:374
2262
  msgid "Lithuania"
2263
  msgstr ""
2264
 
2265
+ #: inc/core/helpers/helper-form-templates.php:1115
2266
  #: inc/core/helpers/helper-misc.php:375
2267
  msgid "Luxembourg"
2268
  msgstr ""
2269
 
2270
+ #: inc/core/helpers/helper-form-templates.php:1116
2271
  #: inc/core/helpers/helper-misc.php:368
2272
  msgid "Latvia"
2273
  msgstr ""
2274
 
2275
+ #: inc/core/helpers/helper-form-templates.php:1117
2276
  #: inc/core/helpers/helper-misc.php:372
2277
  msgid "Libyan Arab Jamahiriya"
2278
  msgstr ""
2279
 
2280
+ #: inc/core/helpers/helper-form-templates.php:1118
2281
  #: inc/core/helpers/helper-misc.php:395
2282
  msgid "Morocco"
2283
  msgstr ""
2284
 
2285
+ #: inc/core/helpers/helper-form-templates.php:1119
2286
  #: inc/core/helpers/helper-misc.php:392
2287
  msgid "Monaco"
2288
  msgstr ""
2289
 
2290
+ #: inc/core/helpers/helper-form-templates.php:1120
2291
  #: inc/core/helpers/helper-misc.php:391
2292
  msgid "Moldova, Republic of"
2293
  msgstr ""
2294
 
2295
+ #: inc/core/helpers/helper-form-templates.php:1121
2296
  msgid "Montenegro"
2297
  msgstr ""
2298
 
2299
+ #: inc/core/helpers/helper-form-templates.php:1122
2300
  #: inc/core/helpers/helper-misc.php:378
2301
  msgid "Madagascar"
2302
  msgstr ""
2303
 
2304
+ #: inc/core/helpers/helper-form-templates.php:1123
2305
  #: inc/core/helpers/helper-misc.php:384
2306
  msgid "Marshall Islands"
2307
  msgstr ""
2308
 
2309
+ #: inc/core/helpers/helper-form-templates.php:1124
2310
  #: inc/core/helpers/helper-misc.php:377
2311
  msgid "Macedonia, The Former Yugoslav Republic of"
2312
  msgstr ""
2313
 
2314
+ #: inc/core/helpers/helper-form-templates.php:1125
2315
  #: inc/core/helpers/helper-misc.php:382
2316
  msgid "Mali"
2317
  msgstr ""
2318
 
2319
+ #: inc/core/helpers/helper-form-templates.php:1126
2320
  #: inc/core/helpers/helper-misc.php:397
2321
  msgid "Myanmar"
2322
  msgstr ""
2323
 
2324
+ #: inc/core/helpers/helper-form-templates.php:1127
2325
  #: inc/core/helpers/helper-misc.php:393
2326
  msgid "Mongolia"
2327
  msgstr ""
2328
 
2329
+ #: inc/core/helpers/helper-form-templates.php:1128
2330
  #: inc/core/helpers/helper-misc.php:376
2331
  msgid "Macau"
2332
  msgstr ""
2333
 
2334
+ #: inc/core/helpers/helper-form-templates.php:1129
2335
  #: inc/core/helpers/helper-misc.php:410
2336
  msgid "Northern Mariana Islands"
2337
  msgstr ""
2338
 
2339
+ #: inc/core/helpers/helper-form-templates.php:1130
2340
  #: inc/core/helpers/helper-misc.php:386
2341
  msgid "Mauritania"
2342
  msgstr ""
2343
 
2344
+ #: inc/core/helpers/helper-form-templates.php:1131
2345
  #: inc/core/helpers/helper-misc.php:394
2346
  msgid "Montserrat"
2347
  msgstr ""
2348
 
2349
+ #: inc/core/helpers/helper-form-templates.php:1132
2350
  #: inc/core/helpers/helper-misc.php:383
2351
  msgid "Malta"
2352
  msgstr ""
2353
 
2354
+ #: inc/core/helpers/helper-form-templates.php:1133
2355
  #: inc/core/helpers/helper-misc.php:387
2356
  msgid "Mauritius"
2357
  msgstr ""
2358
 
2359
+ #: inc/core/helpers/helper-form-templates.php:1134
2360
  #: inc/core/helpers/helper-misc.php:381
2361
  msgid "Maldives"
2362
  msgstr ""
2363
 
2364
+ #: inc/core/helpers/helper-form-templates.php:1135
2365
  #: inc/core/helpers/helper-misc.php:379
2366
  msgid "Malawi"
2367
  msgstr ""
2368
 
2369
+ #: inc/core/helpers/helper-form-templates.php:1136
2370
  #: inc/core/helpers/helper-misc.php:389
2371
  msgid "Mexico"
2372
  msgstr ""
2373
 
2374
+ #: inc/core/helpers/helper-form-templates.php:1137
2375
  #: inc/core/helpers/helper-misc.php:380
2376
  msgid "Malaysia"
2377
  msgstr ""
2378
 
2379
+ #: inc/core/helpers/helper-form-templates.php:1138
2380
  #: inc/core/helpers/helper-misc.php:396
2381
  msgid "Mozambique"
2382
  msgstr ""
2383
 
2384
+ #: inc/core/helpers/helper-form-templates.php:1139
2385
  #: inc/core/helpers/helper-misc.php:398
2386
  msgid "Namibia"
2387
  msgstr ""
2388
 
2389
+ #: inc/core/helpers/helper-form-templates.php:1140
2390
  #: inc/core/helpers/helper-misc.php:403
2391
  msgid "New Caledonia"
2392
  msgstr ""
2393
 
2394
+ #: inc/core/helpers/helper-form-templates.php:1141
2395
  #: inc/core/helpers/helper-misc.php:406
2396
  msgid "Niger"
2397
  msgstr ""
2398
 
2399
+ #: inc/core/helpers/helper-form-templates.php:1142
2400
  #: inc/core/helpers/helper-misc.php:407
2401
  msgid "Nigeria"
2402
  msgstr ""
2403
 
2404
+ #: inc/core/helpers/helper-form-templates.php:1143
2405
  #: inc/core/helpers/helper-misc.php:405
2406
  msgid "Nicaragua"
2407
  msgstr ""
2408
 
2409
+ #: inc/core/helpers/helper-form-templates.php:1144
2410
  #: inc/core/helpers/helper-misc.php:401
2411
  msgid "Netherlands"
2412
  msgstr ""
2413
 
2414
+ #: inc/core/helpers/helper-form-templates.php:1145
2415
  #: inc/core/helpers/helper-misc.php:411
2416
  msgid "Norway"
2417
  msgstr ""
2418
 
2419
+ #: inc/core/helpers/helper-form-templates.php:1146
2420
  #: inc/core/helpers/helper-misc.php:400
2421
  msgid "Nepal"
2422
  msgstr ""
2423
 
2424
+ #: inc/core/helpers/helper-form-templates.php:1147
2425
  #: inc/core/helpers/helper-misc.php:399
2426
  msgid "Nauru"
2427
  msgstr ""
2428
 
2429
+ #: inc/core/helpers/helper-form-templates.php:1148
2430
  #: inc/core/helpers/helper-misc.php:408
2431
  msgid "Niue"
2432
  msgstr ""
2433
 
2434
+ #: inc/core/helpers/helper-form-templates.php:1149
2435
  #: inc/core/helpers/helper-misc.php:404
2436
  msgid "New Zealand"
2437
  msgstr ""
2438
 
2439
+ #: inc/core/helpers/helper-form-templates.php:1150
2440
  #: inc/core/helpers/helper-misc.php:412
2441
  msgid "Oman"
2442
  msgstr ""
2443
 
2444
+ #: inc/core/helpers/helper-form-templates.php:1151
2445
  #: inc/core/helpers/helper-misc.php:415
2446
  msgid "Panama"
2447
  msgstr ""
2448
 
2449
+ #: inc/core/helpers/helper-form-templates.php:1152
2450
  #: inc/core/helpers/helper-misc.php:418
2451
  msgid "Peru"
2452
  msgstr ""
2453
 
2454
+ #: inc/core/helpers/helper-form-templates.php:1153
2455
  #: inc/core/helpers/helper-misc.php:326
2456
  msgid "French Polynesia"
2457
  msgstr ""
2458
 
2459
+ #: inc/core/helpers/helper-form-templates.php:1154
2460
  #: inc/core/helpers/helper-misc.php:416
2461
  msgid "Papua New Guinea"
2462
  msgstr ""
2463
 
2464
+ #: inc/core/helpers/helper-form-templates.php:1155
2465
  #: inc/core/helpers/helper-misc.php:419
2466
  msgid "Philippines"
2467
  msgstr ""
2468
 
2469
+ #: inc/core/helpers/helper-form-templates.php:1156
2470
  #: inc/core/helpers/helper-misc.php:413
2471
  msgid "Pakistan"
2472
  msgstr ""
2473
 
2474
+ #: inc/core/helpers/helper-form-templates.php:1157
2475
  #: inc/core/helpers/helper-misc.php:421
2476
  msgid "Poland"
2477
  msgstr ""
2478
 
2479
+ #: inc/core/helpers/helper-form-templates.php:1158
2480
  msgid "Saint Pierre and Miquelon"
2481
  msgstr ""
2482
 
2483
+ #: inc/core/helpers/helper-form-templates.php:1159
2484
  #: inc/core/helpers/helper-misc.php:420
2485
  msgid "Pitcairn"
2486
  msgstr ""
2487
 
2488
+ #: inc/core/helpers/helper-form-templates.php:1160
2489
  #: inc/core/helpers/helper-misc.php:422
2490
  msgid "Portugal"
2491
  msgstr ""
2492
 
2493
+ #: inc/core/helpers/helper-form-templates.php:1161
2494
  #: inc/core/helpers/helper-misc.php:414
2495
  msgid "Palau"
2496
  msgstr ""
2497
 
2498
+ #: inc/core/helpers/helper-form-templates.php:1162
2499
  #: inc/core/helpers/helper-misc.php:417
2500
  msgid "Paraguay"
2501
  msgstr ""
2502
 
2503
+ #: inc/core/helpers/helper-form-templates.php:1163
2504
  #: inc/core/helpers/helper-misc.php:424
2505
  msgid "Qatar"
2506
  msgstr ""
2507
 
2508
+ #: inc/core/helpers/helper-form-templates.php:1164
2509
  #: inc/core/helpers/helper-misc.php:426
2510
  msgid "Romania"
2511
  msgstr ""
2512
 
2513
+ #: inc/core/helpers/helper-form-templates.php:1165
2514
  msgid "Serbia"
2515
  msgstr ""
2516
 
2517
+ #: inc/core/helpers/helper-form-templates.php:1166
2518
  #: inc/core/helpers/helper-misc.php:427
2519
  msgid "Russian Federation"
2520
  msgstr ""
2521
 
2522
+ #: inc/core/helpers/helper-form-templates.php:1167
2523
  #: inc/core/helpers/helper-misc.php:428
2524
  msgid "Rwanda"
2525
  msgstr ""
2526
 
2527
+ #: inc/core/helpers/helper-form-templates.php:1168
2528
  #: inc/core/helpers/helper-misc.php:435
2529
  msgid "Saudi Arabia"
2530
  msgstr ""
2531
 
2532
+ #: inc/core/helpers/helper-form-templates.php:1169
2533
  #: inc/core/helpers/helper-misc.php:442
2534
  msgid "Solomon Islands"
2535
  msgstr ""
2536
 
2537
+ #: inc/core/helpers/helper-form-templates.php:1170
2538
  #: inc/core/helpers/helper-misc.php:437
2539
  msgid "Seychelles"
2540
  msgstr ""
2541
 
2542
+ #: inc/core/helpers/helper-form-templates.php:1171
2543
  #: inc/core/helpers/helper-misc.php:450
2544
  msgid "Sudan"
2545
  msgstr ""
2546
 
2547
+ #: inc/core/helpers/helper-form-templates.php:1172
2548
  #: inc/core/helpers/helper-misc.php:454
2549
  msgid "Sweden"
2550
  msgstr ""
2551
 
2552
+ #: inc/core/helpers/helper-form-templates.php:1173
2553
  #: inc/core/helpers/helper-misc.php:439
2554
  msgid "Singapore"
2555
  msgstr ""
2556
 
2557
+ #: inc/core/helpers/helper-form-templates.php:1174
2558
  msgid "Saint Helena"
2559
  msgstr ""
2560
 
2561
+ #: inc/core/helpers/helper-form-templates.php:1175
2562
  #: inc/core/helpers/helper-misc.php:441
2563
  msgid "Slovenia"
2564
  msgstr ""
2565
 
2566
+ #: inc/core/helpers/helper-form-templates.php:1176
2567
  msgid "Slovakia"
2568
  msgstr ""
2569
 
2570
+ #: inc/core/helpers/helper-form-templates.php:1177
2571
  #: inc/core/helpers/helper-misc.php:438
2572
  msgid "Sierra Leone"
2573
  msgstr ""
2574
 
2575
+ #: inc/core/helpers/helper-form-templates.php:1178
2576
  #: inc/core/helpers/helper-misc.php:433
2577
  msgid "San Marino"
2578
  msgstr ""
2579
 
2580
+ #: inc/core/helpers/helper-form-templates.php:1179
2581
  #: inc/core/helpers/helper-misc.php:436
2582
  msgid "Senegal"
2583
  msgstr ""
2584
 
2585
+ #: inc/core/helpers/helper-form-templates.php:1180
2586
  #: inc/core/helpers/helper-misc.php:443
2587
  msgid "Somalia"
2588
  msgstr ""
2589
 
2590
+ #: inc/core/helpers/helper-form-templates.php:1181
2591
  #: inc/core/helpers/helper-misc.php:451
2592
  msgid "Suriname"
2593
  msgstr ""
2594
 
2595
+ #: inc/core/helpers/helper-form-templates.php:1182
2596
  #: inc/core/helpers/helper-misc.php:434
2597
  msgid "Sao Tome and Principe"
2598
  msgstr ""
2599
 
2600
+ #: inc/core/helpers/helper-form-templates.php:1183
2601
  #: inc/core/helpers/helper-misc.php:314
2602
  msgid "El Salvador"
2603
  msgstr ""
2604
 
2605
+ #: inc/core/helpers/helper-form-templates.php:1184
2606
  #: inc/core/helpers/helper-misc.php:456
2607
  msgid "Syrian Arab Republic"
2608
  msgstr ""
2609
 
2610
+ #: inc/core/helpers/helper-form-templates.php:1185
2611
  #: inc/core/helpers/helper-misc.php:453
2612
  msgid "Swaziland"
2613
  msgstr ""
2614
 
2615
+ #: inc/core/helpers/helper-form-templates.php:1186
2616
  #: inc/core/helpers/helper-misc.php:468
2617
  msgid "Turks and Caicos Islands"
2618
  msgstr ""
2619
 
2620
+ #: inc/core/helpers/helper-form-templates.php:1187
2621
  #: inc/core/helpers/helper-misc.php:291
2622
  msgid "Chad"
2623
  msgstr ""
2624
 
2625
+ #: inc/core/helpers/helper-form-templates.php:1188
2626
  #: inc/core/helpers/helper-misc.php:461
2627
  msgid "Togo"
2628
  msgstr ""
2629
 
2630
+ #: inc/core/helpers/helper-form-templates.php:1189
2631
  #: inc/core/helpers/helper-misc.php:460
2632
  msgid "Thailand"
2633
  msgstr ""
2634
 
2635
+ #: inc/core/helpers/helper-form-templates.php:1190
2636
  #: inc/core/helpers/helper-misc.php:458
2637
  msgid "Tajikistan"
2638
  msgstr ""
2639
 
2640
+ #: inc/core/helpers/helper-form-templates.php:1191
2641
  #: inc/core/helpers/helper-misc.php:462
2642
  msgid "Tokelau"
2643
  msgstr ""
2644
 
2645
+ #: inc/core/helpers/helper-form-templates.php:1192
2646
  msgid "Timor-leste"
2647
  msgstr ""
2648
 
2649
+ #: inc/core/helpers/helper-form-templates.php:1193
2650
  #: inc/core/helpers/helper-misc.php:467
2651
  msgid "Turkmenistan"
2652
  msgstr ""
2653
 
2654
+ #: inc/core/helpers/helper-form-templates.php:1194
2655
  #: inc/core/helpers/helper-misc.php:465
2656
  msgid "Tunisia"
2657
  msgstr ""
2658
 
2659
+ #: inc/core/helpers/helper-form-templates.php:1195
2660
  #: inc/core/helpers/helper-misc.php:463
2661
  msgid "Tonga"
2662
  msgstr ""
2663
 
2664
+ #: inc/core/helpers/helper-form-templates.php:1196
2665
  #: inc/core/helpers/helper-misc.php:466
2666
  msgid "Turkey"
2667
  msgstr ""
2668
 
2669
+ #: inc/core/helpers/helper-form-templates.php:1197
2670
  #: inc/core/helpers/helper-misc.php:464
2671
  msgid "Trinidad and Tobago"
2672
  msgstr ""
2673
 
2674
+ #: inc/core/helpers/helper-form-templates.php:1198
2675
  #: inc/core/helpers/helper-misc.php:469
2676
  msgid "Tuvalu"
2677
  msgstr ""
2678
 
2679
+ #: inc/core/helpers/helper-form-templates.php:1199
2680
  #: inc/core/helpers/helper-misc.php:457
2681
  msgid "Taiwan, Province of China"
2682
  msgstr ""
2683
 
2684
+ #: inc/core/helpers/helper-form-templates.php:1200
2685
  #: inc/core/helpers/helper-misc.php:459
2686
  msgid "Tanzania, United Republic of"
2687
  msgstr ""
2688
 
2689
+ #: inc/core/helpers/helper-form-templates.php:1201
2690
  #: inc/core/helpers/helper-misc.php:471
2691
  msgid "Ukraine"
2692
  msgstr ""
2693
 
2694
+ #: inc/core/helpers/helper-form-templates.php:1202
2695
  #: inc/core/helpers/helper-misc.php:470
2696
  msgid "Uganda"
2697
  msgstr ""
2698
 
2699
+ #: inc/core/helpers/helper-form-templates.php:1203
2700
  #: inc/core/helpers/helper-misc.php:474
2701
  msgid "United States"
2702
  msgstr ""
2703
 
2704
+ #: inc/core/helpers/helper-form-templates.php:1204
2705
  #: inc/core/helpers/helper-misc.php:476
2706
  msgid "Uruguay"
2707
  msgstr ""
2708
 
2709
+ #: inc/core/helpers/helper-form-templates.php:1205
2710
  #: inc/core/helpers/helper-misc.php:477
2711
  msgid "Uzbekistan"
2712
  msgstr ""
2713
 
2714
+ #: inc/core/helpers/helper-form-templates.php:1206
2715
  #: inc/core/helpers/helper-misc.php:431
2716
  msgid "Saint Vincent and the Grenadines"
2717
  msgstr ""
2718
 
2719
+ #: inc/core/helpers/helper-form-templates.php:1207
2720
  #: inc/core/helpers/helper-misc.php:479
2721
  msgid "Venezuela"
2722
  msgstr ""
2723
 
2724
+ #: inc/core/helpers/helper-form-templates.php:1208
2725
  msgid "Virgin Islands, British"
2726
  msgstr ""
2727
 
2728
+ #: inc/core/helpers/helper-form-templates.php:1209
2729
  msgid "Virgin Islands, U.S."
2730
  msgstr ""
2731
 
2732
+ #: inc/core/helpers/helper-form-templates.php:1210
2733
  #: inc/core/helpers/helper-misc.php:480
2734
  msgid "Vietnam"
2735
  msgstr ""
2736
 
2737
+ #: inc/core/helpers/helper-form-templates.php:1211
2738
  #: inc/core/helpers/helper-misc.php:478
2739
  msgid "Vanuatu"
2740
  msgstr ""
2741
 
2742
+ #: inc/core/helpers/helper-form-templates.php:1212
2743
  msgid "Wallis and Futuna"
2744
  msgstr ""
2745
 
2746
+ #: inc/core/helpers/helper-form-templates.php:1213
2747
  #: inc/core/helpers/helper-misc.php:432
2748
  msgid "Samoa"
2749
  msgstr ""
2750
 
2751
+ #: inc/core/helpers/helper-form-templates.php:1214
2752
  #: inc/core/helpers/helper-misc.php:485
2753
  msgid "Yemen"
2754
  msgstr ""
2755
 
2756
+ #: inc/core/helpers/helper-form-templates.php:1215
2757
  #: inc/core/helpers/helper-misc.php:388
2758
  msgid "Mayotte"
2759
  msgstr ""
2760
 
2761
+ #: inc/core/helpers/helper-form-templates.php:1216
2762
  #: inc/core/helpers/helper-misc.php:444
2763
  msgid "South Africa"
2764
  msgstr ""
2765
 
2766
+ #: inc/core/helpers/helper-form-templates.php:1217
2767
  #: inc/core/helpers/helper-misc.php:487
2768
  msgid "Zambia"
2769
  msgstr ""
2770
 
2771
+ #: inc/core/helpers/helper-form-templates.php:1218
2772
  #: inc/core/helpers/helper-misc.php:488
2773
  msgid "Zimbabwe"
2774
  msgstr ""
3745
  #: inc/core/templates/parts/customize-email.php:20
3746
  #: inc/core/templates/parts/customize-email.php:56
3747
  #: inc/core/templates/parts/customize-multi-line-text.php:20
3748
+ #: inc/core/templates/parts/customize-multi-line-text.php:60
3749
  #: inc/core/templates/parts/customize-narrative.php:18
3750
  #: inc/core/templates/parts/customize-narrative.php:42
3751
  #: inc/core/templates/parts/customize-number.php:20
3759
  #: inc/core/templates/parts/customize-rating.php:18
3760
  #: inc/core/templates/parts/customize-rating.php:84
3761
  #: inc/core/templates/parts/customize-rich-text.php:18
3762
+ #: inc/core/templates/parts/customize-rich-text.php:53
3763
  #: inc/core/templates/parts/customize-scale.php:18
3764
  #: inc/core/templates/parts/customize-scale.php:96
3765
  #: inc/core/templates/parts/customize-select.php:19
3873
  #: inc/core/templates/parts/customize-date.php:105
3874
  #: inc/core/templates/parts/customize-email.php:48
3875
  #: inc/core/templates/parts/customize-legal.php:6
3876
+ #: inc/core/templates/parts/customize-multi-line-text.php:52
3877
  #: inc/core/templates/parts/customize-narrative.php:34
3878
  #: inc/core/templates/parts/customize-number.php:79
3879
  #: inc/core/templates/parts/customize-phone.php:71
3880
  #: inc/core/templates/parts/customize-placeholder.php:29
3881
  #: inc/core/templates/parts/customize-radio.php:69
3882
  #: inc/core/templates/parts/customize-rating.php:76
3883
+ #: inc/core/templates/parts/customize-rich-text.php:46
3884
  #: inc/core/templates/parts/customize-scale.php:88
3885
  #: inc/core/templates/parts/customize-select.php:72
3886
  #: inc/core/templates/parts/customize-single-line-text.php:53
3949
  #: inc/core/templates/parts/customize-date.php:106
3950
  #: inc/core/templates/parts/customize-email.php:49
3951
  #: inc/core/templates/parts/customize-legal.php:7
3952
+ #: inc/core/templates/parts/customize-multi-line-text.php:53
3953
  #: inc/core/templates/parts/customize-narrative.php:35
3954
  #: inc/core/templates/parts/customize-number.php:80
3955
  #: inc/core/templates/parts/customize-phone.php:72
3956
  #: inc/core/templates/parts/customize-placeholder.php:30
3957
  #: inc/core/templates/parts/customize-radio.php:70
3958
  #: inc/core/templates/parts/customize-rating.php:77
3959
+ #: inc/core/templates/parts/customize-rich-text.php:47
3960
  #: inc/core/templates/parts/customize-scale.php:89
3961
  #: inc/core/templates/parts/customize-select.php:73
3962
  #: inc/core/templates/parts/customize-single-line-text.php:54
3971
  #: inc/core/templates/parts/customize-date.php:107
3972
  #: inc/core/templates/parts/customize-email.php:50
3973
  #: inc/core/templates/parts/customize-legal.php:8
3974
+ #: inc/core/templates/parts/customize-multi-line-text.php:54
3975
  #: inc/core/templates/parts/customize-narrative.php:36
3976
  #: inc/core/templates/parts/customize-number.php:81
3977
  #: inc/core/templates/parts/customize-phone.php:73
3978
  #: inc/core/templates/parts/customize-placeholder.php:31
3979
  #: inc/core/templates/parts/customize-radio.php:71
3980
  #: inc/core/templates/parts/customize-rating.php:78
3981
+ #: inc/core/templates/parts/customize-rich-text.php:48
3982
  #: inc/core/templates/parts/customize-scale.php:90
3983
  #: inc/core/templates/parts/customize-select.php:74
3984
  #: inc/core/templates/parts/customize-single-line-text.php:55
3993
  #: inc/core/templates/parts/customize-date.php:108
3994
  #: inc/core/templates/parts/customize-email.php:51
3995
  #: inc/core/templates/parts/customize-legal.php:9
3996
+ #: inc/core/templates/parts/customize-multi-line-text.php:55
3997
  #: inc/core/templates/parts/customize-narrative.php:37
3998
  #: inc/core/templates/parts/customize-number.php:82
3999
  #: inc/core/templates/parts/customize-phone.php:74
4014
  #: inc/core/templates/parts/customize-date.php:117
4015
  #: inc/core/templates/parts/customize-email.php:60
4016
  #: inc/core/templates/parts/customize-legal.php:18
4017
+ #: inc/core/templates/parts/customize-multi-line-text.php:64
4018
  #: inc/core/templates/parts/customize-narrative.php:46
4019
  #: inc/core/templates/parts/customize-number.php:91
4020
  #: inc/core/templates/parts/customize-phone.php:83
4021
  #: inc/core/templates/parts/customize-placeholder.php:41
4022
  #: inc/core/templates/parts/customize-radio.php:81
4023
  #: inc/core/templates/parts/customize-rating.php:88
4024
+ #: inc/core/templates/parts/customize-rich-text.php:57
4025
  #: inc/core/templates/parts/customize-scale.php:100
4026
  #: inc/core/templates/parts/customize-select.php:84
4027
  #: inc/core/templates/parts/customize-single-line-text.php:65
4205
  msgid "Confirmation field title"
4206
  msgstr ""
4207
 
4208
+ #: inc/core/templates/parts/customize-multi-line-text.php:46
4209
+ #: inc/core/templates/parts/customize-rich-text.php:40
4210
+ msgid "Character count"
4211
+ msgstr ""
4212
+
4213
  #: inc/core/templates/parts/customize-narrative.php:27
4214
  msgid "Each input is required"
4215
  msgstr ""
readme.txt CHANGED
@@ -5,7 +5,7 @@ Tags: contact, contact form, email, feedback form, form, form builder, custom fo
5
  Requires at least: 4.8
6
  Tested up to: 5.1
7
  Requires PHP: 5.3
8
- Stable tag: 1.7.4
9
  License: GPLv2 or later
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
 
@@ -99,6 +99,11 @@ Yep! HappyForms free isn't going anywhere but for those looking for even more po
99
 
100
  == Changelog ==
101
 
 
 
 
 
 
102
  = 1.7.4 =
103
  * Bugfix: Submit button styles in Style step were not applying to submit button due to wrong selector.
104
  * Bugfix: `happyforms_enqueue_style` filter for disabling styles were not taken to consideration when loading color.css.
@@ -440,6 +445,9 @@ Yep! HappyForms free isn't going anywhere but for those looking for even more po
440
 
441
  == Upgrade Notice ==
442
 
 
 
 
443
  = 1.7.4 =
444
  * Bug fixes.
445
 
5
  Requires at least: 4.8
6
  Tested up to: 5.1
7
  Requires PHP: 5.3
8
+ Stable tag: 1.7.5
9
  License: GPLv2 or later
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
 
99
 
100
  == Changelog ==
101
 
102
+ = 1.7.5 =
103
+ * New feature: Realtime character counter for Long Text and Text Editor parts.
104
+ * New feature: New styles and style controls for form notices.
105
+ * Improvement: New `happyforms_get_honorifics` filter allows for custom honorific titles.
106
+
107
  = 1.7.4 =
108
  * Bugfix: Submit button styles in Style step were not applying to submit button due to wrong selector.
109
  * Bugfix: `happyforms_enqueue_style` filter for disabling styles were not taken to consideration when loading color.css.
445
 
446
  == Upgrade Notice ==
447
 
448
+ = 1.7.5 =
449
+ * Improved styles, character counter for Long Text and Text Editor parts, minor improvements and bugfixes.
450
+
451
  = 1.7.4 =
452
  * Bug fixes.
453