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

Version Description

  • New feature: Autocomplete for Email part that suggests common email domains when "@" is typed.
  • New feature: Form padding style control for adding more space between form parts and its container.
  • New feature: It's now possible to set a custom HTML ID on form elements.
  • New feature: New style control allows for notices above or below form elements.
  • Improvement: Better keyboard navigation for dropdowns.
  • Improvement: CSV exports now includes column headers.
  • Improvement: Duplicated forms now have current date of duplication.
  • Bugfix: Phone flags were not showing when international number format was checked in Phone part.
  • Bugfix: Title placement applied globally sometimes resulted in newly added parts inheriting the value even when not available for that part.
  • Bugfix: Various fixes related to styles and form parts preview.
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.6.11
Comparing to
See all releases

Code changes from version 1.6.10 to 1.6.11

assets/css/frontend.css CHANGED
@@ -57,6 +57,7 @@
57
  max-width: 100%;
58
  max-width: var(--happyforms-form-width);
59
  margin: 0 auto;
 
60
  border-style: solid;
61
  border-width: 0;
62
  font-weight: normal;
@@ -66,6 +67,14 @@
66
  transition: opacity var(--happyforms-transition-duration) ease-in-out;
67
  }
68
 
 
 
 
 
 
 
 
 
69
  .happyforms-form form.happyforms-form--submitting {
70
  opacity: 0.5;
71
  }
@@ -591,6 +600,7 @@ h3.happyforms-form__title {
591
  display: inline-block;
592
  margin-right: 15px;
593
  padding: 0 10px;
 
594
  font-size: 16px;
595
  font-size: var(--happyforms-part-value-font-size);
596
  color: #000;
@@ -1108,7 +1118,7 @@ h3.happyforms-form__title {
1108
  }
1109
 
1110
  .happyforms-part--label-hidden .happyforms-part__label {
1111
- display: none;
1112
  }
1113
 
1114
  /* parts - placeholder */
@@ -1381,25 +1391,25 @@ h3.happyforms-form__title {
1381
  color: var(--happyforms-color-rating);
1382
  }
1383
 
1384
- .happyforms-rating--smileys .happyforms-part__el,
1385
- .happyforms-rating--thumbs .happyforms-part__el {
1386
  display: flex;
1387
  }
1388
 
1389
  @media screen and (max-width: 800px) {
1390
- .happyforms-rating--smileys .happyforms-part__el,
1391
- .happyforms-rating--thumbs .happyforms-part__el {
1392
  flex-flow: column wrap;
1393
  }
1394
 
1395
- .happyforms-rating--thumbs .happyforms-part__el label,
1396
- .happyforms-rating--smileys .happyforms-part__el label {
1397
  margin-bottom: 10px;
1398
  }
1399
  }
1400
 
1401
- .happyforms-rating--thumbs .happyforms-part__el label,
1402
- .happyforms-rating--smileys .happyforms-part__el label {
1403
  cursor: pointer;
1404
  flex: 0 1 auto;
1405
  display: flex;
@@ -1412,10 +1422,10 @@ h3.happyforms-form__title {
1412
  background-color: var(--happyforms-color-part-background);
1413
  }
1414
 
1415
- .happyforms-rating--smileys .happyforms-part__el input:checked + label,
1416
- .happyforms-rating--thumbs .happyforms-part__el input:checked + label,
1417
- .happyforms-rating--smileys .happyforms-part__el label:hover,
1418
- .happyforms-rating--thumbs .happyforms-part__el label:hover {
1419
  border-color: #407fff !important;
1420
  border-color: var(--happyforms-color-part-border-focus) !important;
1421
  background-color: #fff;
@@ -1504,12 +1514,13 @@ h3.happyforms-form__title {
1504
  width: 100%;
1505
  }
1506
 
1507
- .happyforms-part--address .happyforms-part-el-wrap .address-city {
 
1508
  flex: 1;
1509
  max-width: 49%;
1510
  }
1511
 
1512
- .happyforms-part--address__results--google ul:after {
1513
  content: "";
1514
  padding: 5px 10px 0;
1515
  height: 16px;
@@ -1522,11 +1533,6 @@ h3.happyforms-form__title {
1522
  background-size: 120px 14px;
1523
  }
1524
 
1525
- .happyforms-part--address-has-geolocation.happyforms-part--address-country-city .happyforms-part__dummy-input {
1526
- flex: 1;
1527
- max-width: 49%;
1528
- }
1529
-
1530
  @media screen and (max-width: 800px) {
1531
  .happyforms-part--address.happyforms-part--address-country-city .happyforms-part__el {
1532
  width: 100%;
@@ -1557,17 +1563,8 @@ h3.happyforms-form__title {
1557
  padding-right: 6%;
1558
  }
1559
 
1560
- .happyforms-part--address__results {
1561
- position: absolute;
1562
- z-index: 9999;
1563
- width: 100%;
1564
- margin: 2px 0 0;
1565
- padding: 0;
1566
- border-radius: 6px;
1567
- }
1568
-
1569
  .happyforms-part--address-has-geolocation .happyforms-part__dummy-input {
1570
- display: flex;
1571
  }
1572
 
1573
  @media screen and (max-width: 800px) {
@@ -1580,23 +1577,17 @@ h3.happyforms-form__title {
1580
  }
1581
  }
1582
 
1583
- .happyforms-part--address-has-geolocation .happyforms-part__dummy-input > input {
1584
- flex: 1 0;
1585
- }
1586
-
1587
  .happyforms-part--address-has-geolocation .happyforms-part__dummy-input > input[type=text],
1588
  .happyforms-part--address-has-geolocation .happyforms-part__dummy-input > input[type=text]:focus {
1589
- order: 1;
1590
  border-right: none !important;
1591
  border-top-right-radius: 0 !important;
1592
  border-bottom-right-radius: 0 !important;
1593
  }
1594
 
1595
  a.address-geolocate {
1596
- position: relative;
1597
- left: -2px;
1598
- flex: 0 0 auto;
1599
- order: 2;
1600
  height: auto !important;
1601
  padding: 10px;
1602
  border-width: 1px;
@@ -1762,23 +1753,33 @@ input[type=submit][disabled].happyforms-button--submit:focus {
1762
  }
1763
 
1764
  /* notices */
1765
- form > .happyforms-message-notices {
 
 
1766
  padding: 0 1%;
 
1767
  }
1768
 
1769
- form > .happyforms-message-notices .happyforms-message-notice {
 
 
 
 
 
 
 
1770
  padding: 25px;
1771
  border: 3px solid;
1772
  background-color: transparent;
1773
  color: var(--happyforms-color-primary);
1774
  }
1775
 
1776
- form > .happyforms-message-notices .success {
1777
  border-color: #39b54a;
1778
  border-color: var(--happyforms-color-success);
1779
  }
1780
 
1781
- form > .happyforms-message-notices .error {
1782
  border-color: #ff7550;
1783
  border-color: var(--happyforms-color-error);
1784
  }
@@ -1862,39 +1863,47 @@ form > .happyforms-message-notices .error {
1862
  }
1863
 
1864
  .happyforms-form--part-placeholder-toggle .happyforms-part ::-webkit-input-placeholder {
1865
- color: transparent;
 
1866
  transition: color var(--happyforms-transition-duration);
1867
  }
1868
 
1869
  .happyforms-form--part-placeholder-toggle .happyforms-part ::-moz-placeholder {
1870
- color: transparent;
 
1871
  transition: color var(--happyforms-transition-duration);
1872
  }
1873
 
1874
  .happyforms-form--part-placeholder-toggle .happyforms-part ::-ms-placeholder {
1875
- color: transparent;
 
1876
  transition: color var(--happyforms-transition-duration);
1877
  }
1878
 
1879
  .happyforms-form--part-placeholder-toggle .happyforms-part ::placeholder {
1880
- color: transparent;
 
1881
  transition: color var(--happyforms-transition-duration);
1882
  }
1883
 
1884
  .happyforms-form--part-placeholder-toggle .happyforms-part input:focus::-webkit-input-placeholder {
1885
- color: #aaa;
 
1886
  }
1887
 
1888
  .happyforms-form--part-placeholder-toggle .happyforms-part input:focus::-moz-placeholder {
1889
- color: #aaa;
 
1890
  }
1891
 
1892
  .happyforms-form--part-placeholder-toggle .happyforms-part input:focus::-ms-placeholder {
1893
- color: #aaa;
 
1894
  }
1895
 
1896
  .happyforms-form--part-placeholder-toggle .happyforms-part input:focus::placeholder {
1897
- color: #aaa;
 
1898
  }
1899
 
1900
  /* labels */
@@ -2578,14 +2587,15 @@ form > .happyforms-message-notices .error {
2578
  color: var(--happyforms-color-part-placeholder);
2579
  }
2580
  .happyforms-custom-select-dropdown li.happyforms-custom-select-dropdown__item:hover,
2581
- .happyforms-part--address__results ul li:hover {
2582
  color: #000;
2583
  color: var(--happyforms-color-dropdown-item-text-hover);
2584
  background-color: #dbdbdb;
2585
  background-color: var(--happyforms-color-dropdown-item-bg-hover);
2586
  }
2587
  .happyforms-part-select--required .happyforms-custom-select-dropdown li.happyforms-custom-select-dropdown__placeholder,
2588
- .happyforms-part-date--required .happyforms-custom-select-dropdown li.happyforms-custom-select-dropdown__placeholder {
 
2589
  display: none;
2590
  }
2591
  .happyforms-custom-select-dropdown .happyforms-flag {
@@ -3053,4 +3063,4 @@ div.mce-inline-toolbar-grp.happyforms-editor-toolbar-link div.wp-link-input inpu
3053
 
3054
  .happyforms-form--part-border-off .happyforms-part--rich_text .happyforms-visual-editor {
3055
  padding-bottom: 1px;
3056
- }
57
  max-width: 100%;
58
  max-width: var(--happyforms-form-width);
59
  margin: 0 auto;
60
+ padding: 0;
61
  border-style: solid;
62
  border-width: 0;
63
  font-weight: normal;
67
  transition: opacity var(--happyforms-transition-duration) ease-in-out;
68
  }
69
 
70
+ .happyforms-form form.happyforms-form--padding-narrow {
71
+ padding: 1%;
72
+ }
73
+
74
+ .happyforms-form form.happyforms-form--padding-wide {
75
+ padding: 3.5%;
76
+ }
77
+
78
  .happyforms-form form.happyforms-form--submitting {
79
  opacity: 0.5;
80
  }
600
  display: inline-block;
601
  margin-right: 15px;
602
  padding: 0 10px;
603
+ font-weight: normal;
604
  font-size: 16px;
605
  font-size: var(--happyforms-part-value-font-size);
606
  color: #000;
1118
  }
1119
 
1120
  .happyforms-part--label-hidden .happyforms-part__label {
1121
+ display: none !important;
1122
  }
1123
 
1124
  /* parts - placeholder */
1391
  color: var(--happyforms-color-rating);
1392
  }
1393
 
1394
+ .happyforms-rating--smileys .happyforms-rating-wrap,
1395
+ .happyforms-rating--thumbs .happyforms-rating-wrap {
1396
  display: flex;
1397
  }
1398
 
1399
  @media screen and (max-width: 800px) {
1400
+ .happyforms-rating--smileys .happyforms-rating-wrap,
1401
+ .happyforms-rating--thumbs .happyforms-rating-wrap {
1402
  flex-flow: column wrap;
1403
  }
1404
 
1405
+ .happyforms-rating--thumbs .happyforms-rating-wrap label,
1406
+ .happyforms-rating--smileys .happyforms-rating-wrap label {
1407
  margin-bottom: 10px;
1408
  }
1409
  }
1410
 
1411
+ .happyforms-rating--thumbs .happyforms-rating-wrap label,
1412
+ .happyforms-rating--smileys .happyforms-rating-wrap label {
1413
  cursor: pointer;
1414
  flex: 0 1 auto;
1415
  display: flex;
1422
  background-color: var(--happyforms-color-part-background);
1423
  }
1424
 
1425
+ .happyforms-rating--smileys .happyforms-rating-wrap input:checked + label,
1426
+ .happyforms-rating--thumbs .happyforms-rating-wrap input:checked + label,
1427
+ .happyforms-rating--smileys .happyforms-rating-wrap label:hover,
1428
+ .happyforms-rating--thumbs .happyforms-rating-wrap label:hover {
1429
  border-color: #407fff !important;
1430
  border-color: var(--happyforms-color-part-border-focus) !important;
1431
  background-color: #fff;
1514
  width: 100%;
1515
  }
1516
 
1517
+ .happyforms-part--address .happyforms-part-el-wrap .address-city,
1518
+ .happyforms-part--address-country-city .happyforms-part-el-wrap .happyforms-part__dummy-input {
1519
  flex: 1;
1520
  max-width: 49%;
1521
  }
1522
 
1523
+ .happyforms-part--address.happyforms-part--address-googleapi .happyforms-custom-select-dropdown:after {
1524
  content: "";
1525
  padding: 5px 10px 0;
1526
  height: 16px;
1533
  background-size: 120px 14px;
1534
  }
1535
 
 
 
 
 
 
1536
  @media screen and (max-width: 800px) {
1537
  .happyforms-part--address.happyforms-part--address-country-city .happyforms-part__el {
1538
  width: 100%;
1563
  padding-right: 6%;
1564
  }
1565
 
 
 
 
 
 
 
 
 
 
1566
  .happyforms-part--address-has-geolocation .happyforms-part__dummy-input {
1567
+ position: relative;
1568
  }
1569
 
1570
  @media screen and (max-width: 800px) {
1577
  }
1578
  }
1579
 
 
 
 
 
1580
  .happyforms-part--address-has-geolocation .happyforms-part__dummy-input > input[type=text],
1581
  .happyforms-part--address-has-geolocation .happyforms-part__dummy-input > input[type=text]:focus {
 
1582
  border-right: none !important;
1583
  border-top-right-radius: 0 !important;
1584
  border-bottom-right-radius: 0 !important;
1585
  }
1586
 
1587
  a.address-geolocate {
1588
+ position: absolute;
1589
+ top: 0;
1590
+ right: -2px;
 
1591
  height: auto !important;
1592
  padding: 10px;
1593
  border-width: 1px;
1753
  }
1754
 
1755
  /* notices */
1756
+ .happyforms-flex > .happyforms-message-notices {
1757
+ display: flex;
1758
+ width: 100%;
1759
  padding: 0 1%;
1760
+ margin: 0 0 50px 0;
1761
  }
1762
 
1763
+ form.happyforms-form--notices-below .happyforms-flex > .happyforms-message-notices {
1764
+ order: 1000;
1765
+ margin: 50px 0 0 0;
1766
+ }
1767
+
1768
+ form .happyforms-flex > .happyforms-message-notices .happyforms-message-notice {
1769
+ width: 100%;
1770
+ box-sizing: border-box;
1771
  padding: 25px;
1772
  border: 3px solid;
1773
  background-color: transparent;
1774
  color: var(--happyforms-color-primary);
1775
  }
1776
 
1777
+ form .happyforms-flex > .happyforms-message-notices .success {
1778
  border-color: #39b54a;
1779
  border-color: var(--happyforms-color-success);
1780
  }
1781
 
1782
+ form .happyforms-flex > .happyforms-message-notices .error {
1783
  border-color: #ff7550;
1784
  border-color: var(--happyforms-color-error);
1785
  }
1863
  }
1864
 
1865
  .happyforms-form--part-placeholder-toggle .happyforms-part ::-webkit-input-placeholder {
1866
+ color: transparent !important;
1867
+ transition: color 0.25s;
1868
  transition: color var(--happyforms-transition-duration);
1869
  }
1870
 
1871
  .happyforms-form--part-placeholder-toggle .happyforms-part ::-moz-placeholder {
1872
+ color: transparent !important;
1873
+ transition: color 0.25s;
1874
  transition: color var(--happyforms-transition-duration);
1875
  }
1876
 
1877
  .happyforms-form--part-placeholder-toggle .happyforms-part ::-ms-placeholder {
1878
+ color: transparent !important;
1879
+ transition: color 0.25s;
1880
  transition: color var(--happyforms-transition-duration);
1881
  }
1882
 
1883
  .happyforms-form--part-placeholder-toggle .happyforms-part ::placeholder {
1884
+ color: transparent !important;
1885
+ transition: color 0.25s;
1886
  transition: color var(--happyforms-transition-duration);
1887
  }
1888
 
1889
  .happyforms-form--part-placeholder-toggle .happyforms-part input:focus::-webkit-input-placeholder {
1890
+ color: #888888 !important;
1891
+ color: var(--happyforms-color-part-placeholder) !important;
1892
  }
1893
 
1894
  .happyforms-form--part-placeholder-toggle .happyforms-part input:focus::-moz-placeholder {
1895
+ color: #888888 !important;
1896
+ color: var(--happyforms-color-part-placeholder) !important;
1897
  }
1898
 
1899
  .happyforms-form--part-placeholder-toggle .happyforms-part input:focus::-ms-placeholder {
1900
+ color: #888888 !important;
1901
+ color: var(--happyforms-color-part-placeholder) !important;
1902
  }
1903
 
1904
  .happyforms-form--part-placeholder-toggle .happyforms-part input:focus::placeholder {
1905
+ color: #888888 !important;
1906
+ color: var(--happyforms-color-part-placeholder) !important;
1907
  }
1908
 
1909
  /* labels */
2587
  color: var(--happyforms-color-part-placeholder);
2588
  }
2589
  .happyforms-custom-select-dropdown li.happyforms-custom-select-dropdown__item:hover,
2590
+ .happyforms-custom-select-dropdown li.happyforms-custom-select-dropdown__item.active {
2591
  color: #000;
2592
  color: var(--happyforms-color-dropdown-item-text-hover);
2593
  background-color: #dbdbdb;
2594
  background-color: var(--happyforms-color-dropdown-item-bg-hover);
2595
  }
2596
  .happyforms-part-select--required .happyforms-custom-select-dropdown li.happyforms-custom-select-dropdown__placeholder,
2597
+ .happyforms-part-date--required .happyforms-custom-select-dropdown li.happyforms-custom-select-dropdown__placeholder,
2598
+ .happyforms-part--with-autocomplete .happyforms-custom-select-dropdown li.happyforms-custom-select-dropdown__placeholder {
2599
  display: none;
2600
  }
2601
  .happyforms-custom-select-dropdown .happyforms-flag {
3063
 
3064
  .happyforms-form--part-border-off .happyforms-part--rich_text .happyforms-visual-editor {
3065
  padding-bottom: 1px;
3066
+ }
assets/js/customize.js CHANGED
@@ -246,6 +246,13 @@
246
  } );
247
 
248
  classes.views.Base = Backbone.View.extend( {
 
 
 
 
 
 
 
249
  initialize: function() {
250
  if ( this.template ) {
251
  this.template = _.template( $( this.template ).text() );
@@ -267,6 +274,56 @@
267
  e.preventDefault();
268
  },
269
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
270
  unbindEvents: function() {
271
  // Unbind any listenTo handlers
272
  this.stopListening();
@@ -569,18 +626,11 @@
569
  },
570
 
571
  onPartAdd: function( type, options ) {
572
- var self = this;
573
  var partModel = PartFactory.model(
574
  { type: type },
575
  { collection: this.model.get( 'parts' ) },
576
  );
577
 
578
- for ( var attribute in this.globalAttributes ) {
579
- if ( partModel.has( attribute ) ) {
580
- partModel.set( attribute, this.globalAttributes[attribute] );
581
- }
582
- }
583
-
584
  this.model.get( 'parts' ).add( partModel, options );
585
  this.model.trigger( 'change', this.model );
586
 
@@ -609,6 +659,12 @@
609
 
610
  onPartModelAdd: function( partModel, partsCollection, options ) {
611
  this.addViewPart( partModel, options );
 
 
 
 
 
 
612
  },
613
 
614
  onPartModelRemove: function( partModel ) {
@@ -1202,14 +1258,13 @@
1202
  classes.views.FormSetup = classes.views.Base.extend( {
1203
  template: '#happyforms-form-setup-template',
1204
 
1205
- events: {
1206
  'keyup [data-attribute]': 'onInputChange',
1207
  'change [data-attribute]': 'onInputChange',
1208
- 'mouseover [data-pointer]': 'onHelpMouseOver',
1209
- 'mouseout [data-pointer]': 'onHelpMouseOut',
1210
- },
1211
 
1212
  pointers: {},
 
1213
  editorIds: [
1214
  'happyforms-confirmation-message',
1215
  'happyforms-confirmation-email-content'
@@ -1252,36 +1307,6 @@
1252
  this.onChangeCaptcha();
1253
  },
1254
 
1255
- setupHelpPointers: function() {
1256
- var $helpTriggers = $( '[data-pointer]', this.$el );
1257
- var self = this;
1258
-
1259
- $helpTriggers.each( function() {
1260
- var $trigger = $( this );
1261
- var pointerId = $trigger.data( 'pointer' );
1262
- var $target = $trigger.parents( '.customize-control' ).find( '[data-pointer-target]' );
1263
- var $pointerTemplate = $( '#happyforms-pointer-' + pointerId );
1264
-
1265
- var $pointer = $target.pointer( {
1266
- pointerClass: 'wp-pointer happyforms-help-pointer',
1267
- content: $pointerTemplate.html(),
1268
- position: {
1269
- edge: 'left',
1270
- align: 'center',
1271
- },
1272
- open: function( e, ui ) {
1273
- ui.pointer.css( 'margin-left', '-1px' );
1274
- },
1275
- close: function( e, ui ) {
1276
- ui.pointer.css( 'margin-left', '0' );
1277
- },
1278
- buttons: function() {},
1279
- } );
1280
-
1281
- self.pointers[pointerId] = $pointer;
1282
- } );
1283
- },
1284
-
1285
  onEditorInit: function( editor ) {
1286
  var $textarea = $( '#' + editor.id, this.$el );
1287
  var attribute = $textarea.data( 'attribute' );
@@ -1306,26 +1331,6 @@
1306
  this.model.set( attribute, value );
1307
  },
1308
 
1309
- onHelpMouseOver: function( e ) {
1310
- var $target = $( e.target );
1311
- var pointerId = $target.data( 'pointer' );
1312
- var $pointer = this.pointers[pointerId];
1313
-
1314
- if ( $pointer ) {
1315
- $pointer.pointer( 'open' );
1316
- }
1317
- },
1318
-
1319
- onHelpMouseOut: function( e ) {
1320
- var $target = $( e.target );
1321
- var pointerId = $target.data( 'pointer' );
1322
- var $pointer = this.pointers[pointerId];
1323
-
1324
- if ( $pointer ) {
1325
- $pointer.pointer( 'close' );
1326
- }
1327
- },
1328
-
1329
  onReceiveEmailAlertsChange: function( model, value ) {
1330
  var $alertEmailSettings = $( '#happyforms-alert-email-settings', this.$el );
1331
 
@@ -1402,14 +1407,17 @@
1402
  classes.views.FormStyle = classes.views.Base.extend( {
1403
  template: '#happyforms-form-style-template',
1404
 
1405
- events: {
1406
  'click h3.accordion-section-title': 'onGroupClick',
1407
  'click .customize-panel-back': 'onGroupBackClick',
1408
  'change [data-target="form_class"] input': 'onFormClassChange',
1409
  'change [data-target="form_class"] select': 'onFormClassChange',
1410
  'change [data-target="form_class"] input[type="checkbox"]': 'onFormClassCheckboxChange',
1411
- 'change [data-target="css_var"] input[type=radio]': 'onButtonSetCssVarChange'
1412
- },
 
 
 
1413
 
1414
  initialize: function() {
1415
  classes.views.Base.prototype.initialize.apply( this, arguments );
@@ -1427,6 +1435,7 @@
1427
  this.initUISliders();
1428
  this.initButtonSet();
1429
  this.initFormWidthSlider();
 
1430
  },
1431
 
1432
  onFormClassChange: function( e ) {
@@ -1470,20 +1479,30 @@
1470
  onButtonSetCssVarChange: function( e ) {
1471
  e.preventDefault();
1472
 
1473
- var $target = $(e.target);
1474
- var attribute = $target.data('attribute');
1475
- var variable = $target.parents('.happyforms-buttonset-control').data('variable');
1476
 
1477
  var value = $target.val();
1478
 
1479
- happyForms.form.set(attribute, value);
1480
 
1481
  var data = {
1482
  variable: variable,
1483
  value: value,
1484
  };
1485
 
1486
- happyForms.previewSend('happyforms-css-variable-update', data);
 
 
 
 
 
 
 
 
 
 
1487
  },
1488
 
1489
  onGroupClick: function( e ) {
@@ -1678,25 +1697,6 @@
1678
  },
1679
  } );
1680
 
1681
- classes.views.FormDone = classes.views.Base.extend( {
1682
- template: '#happyforms-form-done-template',
1683
-
1684
- events: _.extend( {}, classes.views.Base.prototype.events, {
1685
- 'click .happyforms-step-index': 'onStepIndexClick'
1686
- } ),
1687
-
1688
- render: function( options ) {
1689
- this.setElement( this.template() );
1690
- return this;
1691
- },
1692
-
1693
- onStepIndexClick: function( e ) {
1694
- e.preventDefault();
1695
-
1696
- happyForms.navigate( 'forms', -1 );
1697
- },
1698
- } );
1699
-
1700
  Previewer = {
1701
  $: $,
1702
  ready: false,
246
  } );
247
 
248
  classes.views.Base = Backbone.View.extend( {
249
+ events: {
250
+ 'mouseover [data-pointer]': 'onHelpMouseOver',
251
+ 'mouseout [data-pointer]': 'onHelpMouseOut',
252
+ },
253
+
254
+ pointers: {},
255
+
256
  initialize: function() {
257
  if ( this.template ) {
258
  this.template = _.template( $( this.template ).text() );
274
  e.preventDefault();
275
  },
276
 
277
+ setupHelpPointers: function() {
278
+ var $helpTriggers = $( '[data-pointer]', this.$el );
279
+ var self = this;
280
+
281
+ $helpTriggers.each( function() {
282
+ var $trigger = $( this );
283
+ var pointerId = $trigger.data( 'pointer' );
284
+ var $target = $trigger.parents( '.customize-control' ).find( '[data-pointer-target]' );
285
+ var $pointerTemplate = $( '#happyforms-pointer-' + pointerId );
286
+
287
+ var $pointer = $target.pointer( {
288
+ pointerClass: 'wp-pointer happyforms-help-pointer',
289
+ content: $pointerTemplate.html(),
290
+ position: {
291
+ edge: 'left',
292
+ align: 'center',
293
+ },
294
+ open: function( e, ui ) {
295
+ ui.pointer.css( 'margin-left', '-1px' );
296
+ },
297
+ close: function( e, ui ) {
298
+ ui.pointer.css( 'margin-left', '0' );
299
+ },
300
+ buttons: function() {},
301
+ } );
302
+
303
+ self.pointers[pointerId] = $pointer;
304
+ } );
305
+ },
306
+
307
+ onHelpMouseOver: function( e ) {
308
+ var $target = $( e.target );
309
+ var pointerId = $target.data( 'pointer' );
310
+ var $pointer = this.pointers[pointerId];
311
+
312
+ if ( $pointer ) {
313
+ $pointer.pointer( 'open' );
314
+ }
315
+ },
316
+
317
+ onHelpMouseOut: function( e ) {
318
+ var $target = $( e.target );
319
+ var pointerId = $target.data( 'pointer' );
320
+ var $pointer = this.pointers[pointerId];
321
+
322
+ if ( $pointer ) {
323
+ $pointer.pointer( 'close' );
324
+ }
325
+ },
326
+
327
  unbindEvents: function() {
328
  // Unbind any listenTo handlers
329
  this.stopListening();
626
  },
627
 
628
  onPartAdd: function( type, options ) {
 
629
  var partModel = PartFactory.model(
630
  { type: type },
631
  { collection: this.model.get( 'parts' ) },
632
  );
633
 
 
 
 
 
 
 
634
  this.model.get( 'parts' ).add( partModel, options );
635
  this.model.trigger( 'change', this.model );
636
 
659
 
660
  onPartModelAdd: function( partModel, partsCollection, options ) {
661
  this.addViewPart( partModel, options );
662
+
663
+ for ( var attribute in this.globalAttributes ) {
664
+ if ( partModel.has( attribute ) ) {
665
+ partModel.set( attribute, this.globalAttributes[attribute] );
666
+ }
667
+ }
668
  },
669
 
670
  onPartModelRemove: function( partModel ) {
1258
  classes.views.FormSetup = classes.views.Base.extend( {
1259
  template: '#happyforms-form-setup-template',
1260
 
1261
+ events: _.extend( {}, classes.views.Base.prototype.events, {
1262
  'keyup [data-attribute]': 'onInputChange',
1263
  'change [data-attribute]': 'onInputChange',
1264
+ } ),
 
 
1265
 
1266
  pointers: {},
1267
+
1268
  editorIds: [
1269
  'happyforms-confirmation-message',
1270
  'happyforms-confirmation-email-content'
1307
  this.onChangeCaptcha();
1308
  },
1309
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1310
  onEditorInit: function( editor ) {
1311
  var $textarea = $( '#' + editor.id, this.$el );
1312
  var attribute = $textarea.data( 'attribute' );
1331
  this.model.set( attribute, value );
1332
  },
1333
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1334
  onReceiveEmailAlertsChange: function( model, value ) {
1335
  var $alertEmailSettings = $( '#happyforms-alert-email-settings', this.$el );
1336
 
1407
  classes.views.FormStyle = classes.views.Base.extend( {
1408
  template: '#happyforms-form-style-template',
1409
 
1410
+ events: _.extend( {}, classes.views.Base.prototype.events, {
1411
  'click h3.accordion-section-title': 'onGroupClick',
1412
  'click .customize-panel-back': 'onGroupBackClick',
1413
  'change [data-target="form_class"] input': 'onFormClassChange',
1414
  'change [data-target="form_class"] select': 'onFormClassChange',
1415
  'change [data-target="form_class"] input[type="checkbox"]': 'onFormClassCheckboxChange',
1416
+ 'change [data-target="css_var"] input[type=radio]': 'onButtonSetCssVarChange',
1417
+ 'keyup [data-target="attribute"] input[type=text]': 'onAttributeChange'
1418
+ } ),
1419
+
1420
+ pointers: {},
1421
 
1422
  initialize: function() {
1423
  classes.views.Base.prototype.initialize.apply( this, arguments );
1435
  this.initUISliders();
1436
  this.initButtonSet();
1437
  this.initFormWidthSlider();
1438
+ this.setupHelpPointers();
1439
  },
1440
 
1441
  onFormClassChange: function( e ) {
1479
  onButtonSetCssVarChange: function( e ) {
1480
  e.preventDefault();
1481
 
1482
+ var $target = $( e.target );
1483
+ var attribute = $target.data( 'attribute' );
1484
+ var variable = $target.parents( '.happyforms-buttonset-control' ).data( 'variable' );
1485
 
1486
  var value = $target.val();
1487
 
1488
+ happyForms.form.set( attribute, value );
1489
 
1490
  var data = {
1491
  variable: variable,
1492
  value: value,
1493
  };
1494
 
1495
+ happyForms.previewSend( 'happyforms-css-variable-update', data );
1496
+ },
1497
+
1498
+ onAttributeChange: function( e ) {
1499
+ e.preventDefault();
1500
+
1501
+ var $target = $( e.target );
1502
+ var attribute = $target.data( 'attribute' );
1503
+ var value = $target.val();
1504
+
1505
+ happyForms.form.set( attribute, value );
1506
  },
1507
 
1508
  onGroupClick: function( e ) {
1697
  },
1698
  } );
1699
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1700
  Previewer = {
1701
  $: $,
1702
  ready: false,
assets/js/frontend/address.js CHANGED
@@ -3,21 +3,9 @@
3
  HappyForms.parts = HappyForms.parts || {};
4
 
5
  var sources = {
6
- autocomplete: function( request, response ) {
7
- var apiKey = this.$el.attr( 'data-google-apikey' );
8
-
9
- $.get( settings.url, {
10
- action: settings.actionAutocomplete,
11
- key: apiKey,
12
- term: request.term,
13
- }, function( data ) {
14
- response( data );
15
- } );
16
- },
17
-
18
  get: function( mode, context ) {
19
  if ( 'autocomplete' === mode ) {
20
- return this.autocomplete.bind( context );
21
  } else {
22
  return settings.countries;
23
  }
@@ -27,11 +15,12 @@
27
  HappyForms.parts.address = {
28
  init: function() {
29
  this.type = this.$el.data( 'happyforms-type' );
 
30
  this.$input = $( 'input', this.$el );
31
  this.$fullAddress = $( '.address-full', this.$el );
32
  this.$country = $( '.address-country', this.$el );
33
  this.$city = $( '.address-city', this.$el );
34
- this.mode = this.$el.attr( 'data-mode' );
35
 
36
  // Validation
37
  this.$input.on( 'keyup', this.triggerChange.bind( this ) );
@@ -39,13 +28,26 @@
39
  this.$input.on( 'blur', this.onBlur.bind( this ) );
40
 
41
  if ( 'simple' !== this.mode ) {
42
- var $input = $( '.happyforms-part--address__autocomplete', this.$el );
43
- var containerSelector = $( '.happyforms-part--address__results', this.$el );
 
 
 
 
 
 
 
 
 
 
 
44
 
45
- $input.autocomplete( {
46
- appendTo: containerSelector,
47
- source: sources.get( this.mode, this ),
48
- } );
 
 
49
  }
50
 
51
  // Geolocation
@@ -73,8 +75,6 @@
73
 
74
  geolocationCallback: function( position ) {
75
  var apiKey = this.$el.attr( 'data-google-apikey' );
76
- var $input = this.$input;
77
- var $geolocation = this.$geolocation;
78
 
79
  $.get( settings.url, {
80
  action: settings.actionGeocode,
@@ -121,9 +121,9 @@
121
  var country = this.getCountry( results );
122
  var city = this.getCity( results );
123
 
124
- this.$fullAddress.val( fullAddress );
125
- this.$country.val( country );
126
- this.$city.val( city );
127
 
128
  $( 'span', this.$geolocation ).text( this.$geolocation.data( 'idle' ) );
129
  this.$geolocation.removeClass( 'disabled' );
3
  HappyForms.parts = HappyForms.parts || {};
4
 
5
  var sources = {
 
 
 
 
 
 
 
 
 
 
 
 
6
  get: function( mode, context ) {
7
  if ( 'autocomplete' === mode ) {
8
+ return settings.actionAutocomplete;
9
  } else {
10
  return settings.countries;
11
  }
15
  HappyForms.parts.address = {
16
  init: function() {
17
  this.type = this.$el.data( 'happyforms-type' );
18
+
19
  this.$input = $( 'input', this.$el );
20
  this.$fullAddress = $( '.address-full', this.$el );
21
  this.$country = $( '.address-country', this.$el );
22
  this.$city = $( '.address-city', this.$el );
23
+ this.mode = this.$el.attr('data-mode');
24
 
25
  // Validation
26
  this.$input.on( 'keyup', this.triggerChange.bind( this ) );
28
  this.$input.on( 'blur', this.onBlur.bind( this ) );
29
 
30
  if ( 'simple' !== this.mode ) {
31
+ this.$input = $( '[data-serialize]', this.$el );
32
+ var $visualInput = $( '.happyforms-part--address__autocomplete', this.$el );
33
+ var $select = $( '.happyforms-custom-select-dropdown', this.$el );
34
+
35
+ var autocompleteOptions = {
36
+ delay: 500,
37
+ source: sources.get( this.mode )
38
+ };
39
+
40
+ if ( 'autocomplete' === this.mode ) {
41
+ autocompleteOptions.url = settings.url;
42
+ autocompleteOptions.apiKey = this.$el.attr('data-google-apikey');
43
+ }
44
 
45
+ $visualInput.happyFormsSelect( {
46
+ $input: this.$input,
47
+ $select: $select,
48
+ searchable: 'autocomplete',
49
+ autocompleteOptions: autocompleteOptions
50
+ });
51
  }
52
 
53
  // Geolocation
75
 
76
  geolocationCallback: function( position ) {
77
  var apiKey = this.$el.attr( 'data-google-apikey' );
 
 
78
 
79
  $.get( settings.url, {
80
  action: settings.actionGeocode,
121
  var country = this.getCountry( results );
122
  var city = this.getCity( results );
123
 
124
+ this.$fullAddress.val( fullAddress ).trigger('change');
125
+ this.$country.val( country ).trigger('change');
126
+ this.$city.val( city ).trigger('change');
127
 
128
  $( 'span', this.$geolocation ).text( this.$geolocation.data( 'idle' ) );
129
  this.$geolocation.removeClass( 'disabled' );
assets/js/frontend/email.js ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ( function( $, settings ) {
2
+
3
+ HappyForms.parts = HappyForms.parts || {};
4
+
5
+ HappyForms.parts.email = {
6
+ init: function() {
7
+ this.type = this.$el.data( 'happyforms-type' );
8
+ this.$input = $( 'input', this.$el );
9
+ this.mode = this.$el.attr( 'data-mode' );
10
+
11
+ if ( 'autocomplete' === this.mode ) {
12
+ this.initAutocomplete();
13
+ }
14
+
15
+ this.$input.on( 'keyup', this.triggerChange.bind( this ) );
16
+ this.$input.on( 'change', this.triggerChange.bind( this ) );
17
+ this.$input.on( 'blur', this.onBlur.bind( this ) );
18
+ },
19
+
20
+ initAutocomplete: function() {
21
+ var self = this;
22
+ var $inputs = $( '[data-serialize]', this.$el );
23
+
24
+ $inputs.each( function( index ) {
25
+ if ( 0 === index ) {
26
+ self.$input = $( this );
27
+ }
28
+
29
+ var $visualInput = $( this ).next( 'input[type=email]' );
30
+ var $select = $visualInput.next( '.happyforms-custom-select-dropdown' );
31
+
32
+ $visualInput.happyFormsSelect( {
33
+ $input: $( this ),
34
+ $select: $select,
35
+ searchable: 'autocomplete',
36
+ autocompleteOptions: {
37
+ url: settings.url,
38
+ source: settings.autocompleteSource,
39
+ trigger: '@',
40
+ partial: true
41
+ },
42
+ });
43
+ });
44
+ }
45
+ };
46
+
47
+ } )( jQuery, _happyFormsEmailSettings );
assets/js/lib/happyforms-select.js CHANGED
@@ -10,18 +10,30 @@
10
  this.$placeholder = $( 'li.happyforms-custom-select-dropdown__placeholder', this.$select );
11
  this.searchable = options.searchable;
12
 
 
 
 
 
 
 
 
 
 
 
 
 
13
  this.defaultValue = '';
14
  this.defaultLabel = '';
15
  this.placeholderText = this.$placeholder.text();
 
16
 
17
  this.init();
18
  }
19
 
20
- HappyFormsSelect.prototype.init = function () {
21
- this.$el.attr('readonly', 'readonly');
22
 
23
  if ( this.searchable && 'false' !== this.searchable ) {
24
- this.$el.on( 'keyup', this.searchOptions.bind( this ) );
25
  this.$el.removeAttr( 'readonly' );
26
  }
27
 
@@ -31,20 +43,46 @@
31
  if ( '' === this.defaultLabel && '' === this.defaultValue && this.$placeholder.length ) {
32
  this.defaultLabel = this.placeholderText;
33
  }
34
-
35
- this.$el.on( 'click', this.toggleDropdown.bind( this ) );
36
- this.$el.parent().on( 'click', this.toggleDropdown.bind( this ) );
37
  this.$select.on( 'click', 'li', this.onItemSelect.bind( this ) );
38
- $( window ).on( 'click', this.onOutsideClick.bind(this) );
 
 
 
 
 
 
 
39
 
40
  this.setValue();
41
  }
42
 
43
- HappyFormsSelect.prototype.toggleDropdown = function( e ) {
 
 
 
 
 
 
 
 
 
 
44
  e.stopPropagation();
 
 
 
 
 
 
 
 
 
 
45
 
46
  if ( ! this.$select.is( ':visible' ) ) {
47
- $( '.happyforms-custom-select-dropdown' ).hide();
48
  this.$select.show();
49
  } else {
50
  this.hideDropdown();
@@ -59,35 +97,200 @@
59
 
60
  HappyFormsSelect.prototype.hideDropdown = function() {
61
  this.$select.hide();
62
- $( 'li.happyforms-dropdown-item', this.$select ).show();
 
 
 
 
63
  }
64
 
65
  HappyFormsSelect.prototype.onItemSelect = function( e ) {
66
  e.stopPropagation();
67
 
68
- // if enter or tab
69
- if ( 'keyup' === e.type && 13 !== e.keyCode || 9 === e.keyCode ) {
70
- return false;
71
- }
72
-
73
  var $li = $( e.target );
74
  this.setValue( $li.data('value').toString() );
75
  }
76
 
77
- HappyFormsSelect.prototype.searchOptions = function ( e ) {
78
- // if tab
79
- if ( e.key && 9 === e.keyCode ) {
80
- return false;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
81
  }
82
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
83
  var value = this.$el.val();
84
  var $allItems = $( 'li.happyforms-dropdown-item', this.$select );
 
85
 
86
  if ( value ) {
87
  $allItems.hide();
88
 
89
  $allItems.each( function( index, li ) {
90
- var $li = $( li) ;
91
  var liValue = $li.data( 'value' );
92
  var liLabel = ( $li.data( 'label' ).length ) ? $li.data( 'label' ).toLowerCase() : '';
93
 
@@ -96,12 +299,15 @@
96
  value = value.toString().toLowerCase();
97
  }
98
 
99
- if ( liValue && -1 !== liValue.indexOf( value ) ) {
100
  $li.show();
 
101
  }
102
 
103
- if ( liLabel && -1 !== liLabel.indexOf( value ) ) {
104
- $li.show();
 
 
105
  }
106
  } );
107
  } else {
@@ -109,6 +315,41 @@
109
  }
110
  }
111
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
112
  HappyFormsSelect.prototype.setValue = function( value ) {
113
  if ( 'undefined' !== typeof value ) {
114
  var $li = $( 'li[data-value="' + value + '"]', this.$select );
@@ -134,7 +375,7 @@
134
  }
135
 
136
  HappyFormsSelect.prototype.getValue = function() {
137
- return this.$input.val();
138
  }
139
 
140
  HappyFormsSelect.prototype.setDefaults = function( value, label ) {
@@ -145,16 +386,16 @@
145
  }
146
 
147
  $.fn.happyFormsSelect = function( method ) {
148
- this.each(function() {
149
- if ( 'object' === typeof method ) {
150
- $.data( this, 'HappyFormSelect', new HappyFormsSelect( this, method ) );
151
- } else {
152
- var methods = $.data( this, 'HappyFormSelect' );
153
-
154
- if ( methods && methods[method] ) {
155
- return methods[method].apply( this, Array.prototype.slice.call( arguments, 1 ) );
156
- }
157
- }
158
- });
159
- }
160
  } )( jQuery );
10
  this.$placeholder = $( 'li.happyforms-custom-select-dropdown__placeholder', this.$select );
11
  this.searchable = options.searchable;
12
 
13
+ var autocompleteDefaults = {
14
+ url: '',
15
+ apiKey: '',
16
+ source: '',
17
+ trigger: '',
18
+ minLength: 3,
19
+ delay: 0,
20
+ partial: false
21
+ };
22
+
23
+ this.autocompleteOptions = $.extend( {}, autocompleteDefaults, options.autocompleteOptions );
24
+
25
  this.defaultValue = '';
26
  this.defaultLabel = '';
27
  this.placeholderText = this.$placeholder.text();
28
+ this.autocompleteTimeout = null;
29
 
30
  this.init();
31
  }
32
 
33
+ HappyFormsSelect.prototype.init = function() {
34
+ this.$el.attr( 'readonly', 'readonly' );
35
 
36
  if ( this.searchable && 'false' !== this.searchable ) {
 
37
  this.$el.removeAttr( 'readonly' );
38
  }
39
 
43
  if ( '' === this.defaultLabel && '' === this.defaultValue && this.$placeholder.length ) {
44
  this.defaultLabel = this.placeholderText;
45
  }
46
+
47
+ this.$el.on( 'keyup keypress', this.handleKeyUp.bind( this ) );
48
+ this.$el.on( 'focus', this.handleFocus.bind( this ) );
49
  this.$select.on( 'click', 'li', this.onItemSelect.bind( this ) );
50
+ this.$el.on( 'change', this.onChange.bind( this ) );
51
+ $( window ).on( 'click', this.onOutsideClick.bind( this ) );
52
+
53
+ if ( 'autocomplete' !== this.searchable ) {
54
+ this.$el.on( 'click', this.handleClick.bind( this ) );
55
+ this.$el.on( 'focus', this.handleDropdownFocus.bind( this ) );
56
+ this.$el.parent().on( 'click', this.handleClick.bind( this ) );
57
+ }
58
 
59
  this.setValue();
60
  }
61
 
62
+ HappyFormsSelect.prototype.handleClick = function( e ) {
63
+ e.stopPropagation();
64
+
65
+ this.toggleDropdown();
66
+ }
67
+
68
+ HappyFormsSelect.prototype.handleFocus = function( e ) {
69
+ this.hideAllInstances();
70
+ }
71
+
72
+ HappyFormsSelect.prototype.handleDropdownFocus = function( e ) {
73
  e.stopPropagation();
74
+
75
+ this.toggleDropdown();
76
+ }
77
+
78
+ HappyFormsSelect.prototype.hideAllInstances = function() {
79
+ $( '.happyforms-custom-select-dropdown' ).hide();
80
+ }
81
+
82
+ HappyFormsSelect.prototype.toggleDropdown = function() {
83
+ this.hideAllInstances();
84
 
85
  if ( ! this.$select.is( ':visible' ) ) {
 
86
  this.$select.show();
87
  } else {
88
  this.hideDropdown();
97
 
98
  HappyFormsSelect.prototype.hideDropdown = function() {
99
  this.$select.hide();
100
+
101
+ if ( ! this.searchable || 'false' === this.searchable ) {
102
+ $( 'li', this.$select ).removeClass( 'active' );
103
+ $( 'li.happyforms-dropdown-item', this.$select ).show();
104
+ }
105
  }
106
 
107
  HappyFormsSelect.prototype.onItemSelect = function( e ) {
108
  e.stopPropagation();
109
 
 
 
 
 
 
110
  var $li = $( e.target );
111
  this.setValue( $li.data('value').toString() );
112
  }
113
 
114
+ HappyFormsSelect.prototype.handleKeyUp = function( e ) {
115
+ e.stopPropagation();
116
+
117
+ switch ( e.keyCode ) {
118
+ case 40:
119
+ this.navigateOptions( 'down' );
120
+ break;
121
+ case 38:
122
+ this.navigateOptions( 'up' );
123
+ break;
124
+ case 13:
125
+ e.preventDefault();
126
+
127
+ var $focusedItem = $( 'li.active', this.$select );
128
+
129
+ if ( $focusedItem.length ) {
130
+ this.setValue( $focusedItem.data('value').toString() );
131
+ }
132
+ break;
133
+ default:
134
+ if ('autocomplete' === this.searchable) {
135
+ var trigger = this.autocompleteOptions.trigger;
136
+
137
+ if ( trigger.length && trigger !== e.key ) {
138
+ break;
139
+ }
140
+
141
+ this.getSuggestions();
142
+ } else {
143
+ this.searchOptions();
144
+ }
145
+ break;
146
+ }
147
+ }
148
+
149
+ HappyFormsSelect.prototype.onChange = function( e ) {
150
+ var value = $( e.target ).val();
151
+
152
+ if ( 'autocomplete' === this.searchable ) {
153
+ this.$el.val( value );
154
+ this.$input.val( value );
155
+ }
156
+ }
157
+
158
+ HappyFormsSelect.prototype.getSuggestions = function() {
159
+ var self = this;
160
+ var value = this.getValue();
161
+
162
+ if ( ! value.length ) {
163
+ this.hideDropdown();
164
+ this.clearOptions();
165
+
166
+ return;
167
+ }
168
+
169
+ if ( value.length < this.autocompleteOptions.minLength ) {
170
+ return;
171
+ }
172
+
173
+ var trigger = this.autocompleteOptions.trigger;
174
+ var delay = this.autocompleteOptions.delay;
175
+
176
+ if ( trigger.length ) {
177
+ if ( -1 === value.indexOf( trigger ) ) {
178
+ this.hideDropdown();
179
+ this.clearOptions();
180
+
181
+ return;
182
+ }
183
+
184
+ delay = 0;
185
+ }
186
+
187
+ var source = this.autocompleteOptions.source;
188
+ var partial = this.autocompleteOptions.partial;
189
+ var autocompleteData = [];
190
+
191
+ if ( 'string' === typeof source ) {
192
+ if ( ! this.autocompleteTimeout ) {
193
+ clearTimeout( this.autocompleteTimeout );
194
+
195
+ this.autocompleteTimeout = setTimeout( function() {
196
+ self.autocompleteTimeout = null;
197
+
198
+ $.get( self.autocompleteOptions.url, {
199
+ action: source,
200
+ key: self.autocompleteOptions.apiKey,
201
+ term: self.getValue()
202
+ }, function( data ) {
203
+ autocompleteData = data;
204
+
205
+ self.clearOptions();
206
+ self.handleAutocomplete( autocompleteData, partial, trigger );
207
+
208
+ return;
209
+ } );
210
+ }, delay );
211
+ }
212
  }
213
 
214
+ if ( 'object' === typeof source ) {
215
+ autocompleteData = source;
216
+
217
+ if ( ! this.autocompleteTimeout ) {
218
+ clearTimeout( this.autocompleteTimeout );
219
+
220
+ this.autocompleteTimeout = setTimeout( function() {
221
+ self.autocompleteTimeout = null;
222
+
223
+ if ( ! partial ) {
224
+ autocompleteData = $.grep( autocompleteData, function( n, i ) {
225
+ return ( -1 !== n.toLowerCase().indexOf( self.$el.val().toLowerCase() ) );
226
+ } );
227
+ }
228
+
229
+ self.clearOptions();
230
+ self.handleAutocomplete( autocompleteData, partial, trigger );
231
+ }, delay );
232
+ }
233
+ }
234
+ }
235
+
236
+ HappyFormsSelect.prototype.handleAutocomplete = function( data, partial, trigger ) {
237
+ if ( ! data.length ) {
238
+ return;
239
+ }
240
+
241
+ var suggestions = [];
242
+
243
+ if ( partial ) {
244
+ var value = this.getValue().split( trigger );
245
+ var baseValue = value[0];
246
+
247
+ for ( var i = 0; i < data.length; i++ ) {
248
+ suggestions.push( baseValue + trigger + data[i] );
249
+ }
250
+ } else {
251
+ suggestions = data;
252
+ }
253
+
254
+ var liTemplate = '<li class="happyforms-dropdown-item happyforms-custom-select-dropdown__item" data-value="%value%" data-label="">%value%</li>';
255
+
256
+ for ( var i = 0; i < suggestions.length; i++ ) {
257
+ this.$select.append( liTemplate.replace( /%value%/g, suggestions[i] ) );
258
+ }
259
+
260
+ this.$select.show();
261
+ this.bindAutocomplete();
262
+ }
263
+
264
+ HappyFormsSelect.prototype.bindAutocomplete = function() {
265
+ this.$el.on( 'click.autocomplete', this.handleAutocompleteInputClick.bind(this) );
266
+ this.$el.on( 'keyup.autocomplete', this.handleAutocompleteInputKeyUp.bind(this) );
267
+ }
268
+
269
+ HappyFormsSelect.prototype.handleAutocompleteInputClick = function( e ) {
270
+ e.stopPropagation();
271
+
272
+ this.toggleDropdown();
273
+ }
274
+
275
+ HappyFormsSelect.prototype.handleAutocompleteInputKeyUp = function( e ) {
276
+ if ( 13 === e.keyCode ) {
277
+ return;
278
+ }
279
+
280
+ this.searchOptions();
281
+ }
282
+
283
+ HappyFormsSelect.prototype.searchOptions = function() {
284
+ var self = this;
285
  var value = this.$el.val();
286
  var $allItems = $( 'li.happyforms-dropdown-item', this.$select );
287
+ var foundItems = 0;
288
 
289
  if ( value ) {
290
  $allItems.hide();
291
 
292
  $allItems.each( function( index, li ) {
293
+ var $li = $( li );
294
  var liValue = $li.data( 'value' );
295
  var liLabel = ( $li.data( 'label' ).length ) ? $li.data( 'label' ).toLowerCase() : '';
296
 
299
  value = value.toString().toLowerCase();
300
  }
301
 
302
+ if ( liValue && -1 !== liValue.indexOf( value ) || liLabel && -1 !== liLabel.indexOf( value ) ) {
303
  $li.show();
304
+ foundItems = foundItems + 1;
305
  }
306
 
307
+ if ( foundItems > 0 ) {
308
+ self.$select.show();
309
+ } else {
310
+ self.hideDropdown();
311
  }
312
  } );
313
  } else {
315
  }
316
  }
317
 
318
+ HappyFormsSelect.prototype.navigateOptions = function( direction ) {
319
+ if ( ! direction ) {
320
+ return;
321
+ }
322
+
323
+ var $currentItem = $( 'li.active', this.$select );
324
+
325
+ if ( ! $currentItem.length ) {
326
+ $currentItem = $( 'li:first', this.$select );
327
+ }
328
+
329
+ var $prevItem = $currentItem.prev();
330
+ var $nextItem = $currentItem.nextAll(':visible').first();
331
+
332
+ if ( 'down' === direction ) {
333
+ if ( $nextItem.length ) {
334
+ this.$select.show();
335
+ $currentItem.removeClass( 'active' );
336
+ $nextItem.focus().addClass( 'active' );
337
+ }
338
+ }
339
+
340
+ if ( 'up' === direction && $prevItem.length ) {
341
+ this.$select.show();
342
+ $currentItem.removeClass( 'active' );
343
+ $prevItem.focus().addClass( 'active' );
344
+ }
345
+ }
346
+
347
+ HappyFormsSelect.prototype.clearOptions = function() {
348
+ var $allItems = $( 'li.happyforms-dropdown-item', this.$select );
349
+
350
+ $allItems.remove();
351
+ }
352
+
353
  HappyFormsSelect.prototype.setValue = function( value ) {
354
  if ( 'undefined' !== typeof value ) {
355
  var $li = $( 'li[data-value="' + value + '"]', this.$select );
375
  }
376
 
377
  HappyFormsSelect.prototype.getValue = function() {
378
+ return this.$el.val();
379
  }
380
 
381
  HappyFormsSelect.prototype.setDefaults = function( value, label ) {
386
  }
387
 
388
  $.fn.happyFormsSelect = function( method ) {
389
+ this.each(function() {
390
+ if ( 'object' === typeof method ) {
391
+ $.data( this, 'HappyFormSelect', new HappyFormsSelect( this, method ) );
392
+ } else {
393
+ var methods = $.data( this, 'HappyFormSelect' );
394
+
395
+ if ( methods && methods[method] ) {
396
+ return methods[method].apply( this, Array.prototype.slice.call( arguments, 1 ) );
397
+ }
398
+ }
399
+ });
400
+ }
401
  } )( jQuery );
assets/js/parts/part-email.js CHANGED
@@ -18,6 +18,7 @@
18
 
19
  this.listenTo( this.model, 'change:confirmation_field', this.onConfirmationChange );
20
  this.listenTo( this.model, 'change:confirmation_field_label', this.onConfirmationLabelChange );
 
21
  },
22
 
23
  /**
@@ -65,6 +66,19 @@
65
  };
66
 
67
  happyForms.previewSend( 'happyforms-part-dom-update', data );
 
 
 
 
 
 
 
 
 
 
 
 
 
68
  }
69
  } );
70
 
18
 
19
  this.listenTo( this.model, 'change:confirmation_field', this.onConfirmationChange );
20
  this.listenTo( this.model, 'change:confirmation_field_label', this.onConfirmationLabelChange );
21
+ this.listenTo( this.model, 'change:autocomplete_domains', this.onAutocompleteDomainsChange );
22
  },
23
 
24
  /**
66
  };
67
 
68
  happyForms.previewSend( 'happyforms-part-dom-update', data );
69
+ },
70
+
71
+ onAutocompleteDomainsChange: function() {
72
+ var model = this.model;
73
+
74
+ model.fetchHtml( function( response ) {
75
+ var data = {
76
+ id: model.get( 'id' ),
77
+ html: response,
78
+ };
79
+
80
+ happyForms.previewSend( 'happyforms-form-part-refresh', data );
81
+ } );
82
  }
83
  } );
84
 
assets/js/parts/part-select.js CHANGED
@@ -41,6 +41,7 @@
41
  'click .advanced-option': 'onAdvancedOptionClick',
42
  'click .delete-option': 'onDeleteOptionClick',
43
  'keyup [name=label]': 'onItemLabelChange',
 
44
  'change [name=is_default]': 'onItemDefaultChange',
45
  },
46
 
@@ -414,9 +415,10 @@
414
  var $option = $( '[data-option-id=' + options.itemID + ']', $part );
415
 
416
  $option.text( option.get( 'label' ) );
417
- $( 'input', $part ).val( option.get( 'label' ) );
418
 
419
- $part.happyFormsSelect();
 
 
420
  },
421
 
422
  onSelectItemDefaultChangeCallback: function( id, html, options, $ ) {
41
  'click .advanced-option': 'onAdvancedOptionClick',
42
  'click .delete-option': 'onDeleteOptionClick',
43
  'keyup [name=label]': 'onItemLabelChange',
44
+ 'change [name=label]': 'onItemLabelChange',
45
  'change [name=is_default]': 'onItemDefaultChange',
46
  },
47
 
415
  var $option = $( '[data-option-id=' + options.itemID + ']', $part );
416
 
417
  $option.text( option.get( 'label' ) );
 
418
 
419
+ if ( option.get( 'is_default' ) ) {
420
+ $( 'input', $part ).val( option.get( 'label' ) );
421
+ }
422
  },
423
 
424
  onSelectItemDefaultChangeCallback: function( id, html, options, $ ) {
assets/js/preview.js CHANGED
@@ -94,14 +94,14 @@
94
  }
95
 
96
  handlers.cssVariableUpdate = function( e ) {
97
- var formID = parent.happyForms.form.get('ID');
98
  var $parts = $( '[data-happyforms-type]', $form );
99
  var variable = {
100
  name: e.variable,
101
  value: e.value,
102
  };
103
 
104
- document.querySelector( '#happyforms-form-'+ formID ).style.setProperty( e.variable, e.value );
105
 
106
  $.each( $parts, function( i, part ) {
107
  $( part ).trigger( 'happyforms.cssvar', variable );
94
  }
95
 
96
  handlers.cssVariableUpdate = function( e ) {
97
+ var formID = parent.happyForms.form.get( 'ID' );
98
  var $parts = $( '[data-happyforms-type]', $form );
99
  var variable = {
100
  name: e.variable,
101
  value: e.value,
102
  };
103
 
104
+ document.querySelector( '#happyforms-' + formID + ' form' ).style.setProperty( e.variable, e.value );
105
 
106
  $.each( $parts, function( i, part ) {
107
  $( part ).trigger( 'happyforms.cssvar', variable );
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.6.10
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.6.10' );
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.6.11
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.6.11' );
17
 
18
  if ( ! function_exists( 'happyforms_plugin_file' ) ):
19
  /**
inc/classes/class-form-admin.php CHANGED
@@ -440,24 +440,24 @@ class HappyForms_Form_Admin {
440
  * @return bool|int The ID of the duplicated form object.
441
  */
442
  private function duplicate_form( $form ) {
443
- $form_title = trim( $form->post_title . __( ' Copy', 'happyforms' ) );
444
- $form_id = $form->ID;
445
- $form->post_title = $form_title;
446
- $form->ID = 0;
447
 
448
- $new_form_id = wp_insert_post( $form );
 
449
 
450
- if ( ! is_wp_error( $new_form_id ) ) {
451
- $form_meta = get_post_custom( $form_id );
452
 
453
  foreach ( $form_meta as $key => $value ) {
454
  if ( ! empty( $value ) ) {
455
- add_post_meta( $new_form_id, $key, maybe_unserialize( $value[0] ) );
456
  }
457
  }
458
  }
459
 
460
- return $new_form_id;
461
  }
462
 
463
  /**
440
  * @return bool|int The ID of the duplicated form object.
441
  */
442
  private function duplicate_form( $form ) {
443
+ $duplicate = array_intersect_key( $form->to_array(), array_flip( array(
444
+ 'post_type', 'post_status',
445
+ ) ) );
 
446
 
447
+ $duplicate['post_title'] = trim( $form->post_title . __( ' Copy', 'happyforms' ) );
448
+ $duplicate_id = wp_insert_post( $duplicate );
449
 
450
+ if ( ! is_wp_error( $duplicate_id ) ) {
451
+ $form_meta = get_post_custom( $form->ID );
452
 
453
  foreach ( $form_meta as $key => $value ) {
454
  if ( ! empty( $value ) ) {
455
+ add_post_meta( $duplicate_id, $key, maybe_unserialize( $value[0] ) );
456
  }
457
  }
458
  }
459
 
460
+ return $duplicate_id;
461
  }
462
 
463
  /**
inc/classes/class-form-styles.php CHANGED
@@ -38,6 +38,7 @@ class HappyForms_Form_Styles {
38
  public function hook() {
39
  add_filter( 'happyforms_meta_fields', array( $this, 'meta_fields' ) );
40
  add_filter( 'happyforms_form_class', array( $this, 'form_html_class' ), 10, 2 );
 
41
  }
42
 
43
  public function get_fields() {
@@ -70,6 +71,16 @@ class HappyForms_Form_Styles {
70
  'extra_class' => 'form-width-control',
71
  'sanitize' => 'sanitize_text_field'
72
  ),
 
 
 
 
 
 
 
 
 
 
73
  'form_title' => array(
74
  'default' => '',
75
  'options' => array(
@@ -451,12 +462,6 @@ class HappyForms_Form_Styles {
451
  'target' => 'css_var',
452
  'variable' => '--happyforms-color-choice-checkmark-color',
453
  ),
454
- 'color_dropdown_bg' => array(
455
- 'default' => '#ffffff',
456
- 'sanitize' => 'sanitize_text_field',
457
- 'target' => 'css_var',
458
- 'variable' => '--happyforms-color-dropdown-bg-color',
459
- ),
460
  'color_dropdown_item_bg' => array(
461
  'default' => '#ffffff',
462
  'sanitize' => 'sanitize_text_field',
@@ -480,7 +485,21 @@ class HappyForms_Form_Styles {
480
  'sanitize' => 'sanitize_text_field',
481
  'target' => 'css_var',
482
  'variable' => '--happyforms-color-dropdown-item-text-hover',
483
- )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
484
  );
485
 
486
  return $fields;
@@ -494,19 +513,36 @@ class HappyForms_Form_Styles {
494
  ),
495
  array(
496
  'type' => 'range',
497
- 'label' => __( 'Form width', 'happyforms' ),
498
  'field' => 'form_width'
499
  ),
 
 
 
 
 
500
  array(
501
  'type' => 'buttonset',
502
  'label' => __( 'Direction', 'happyforms' ),
503
  'field' => 'form_direction'
504
  ),
 
 
 
 
 
505
  array(
506
  'type' => 'checkbox',
507
  'label' => __( 'Disable submit button until form is valid', 'happyforms' ),
508
  'field' => 'disable_submit_until_valid',
509
  ),
 
 
 
 
 
 
 
510
  array(
511
  'type' => 'heading',
512
  'label' => __( 'Colors', 'happyforms' )
@@ -532,7 +568,7 @@ class HappyForms_Form_Styles {
532
  ),
533
  array(
534
  'type' => 'buttonset',
535
- 'label' => __( 'Form title', 'happyforms' ),
536
  'field' => 'form_title',
537
  ),
538
  array(
@@ -606,6 +642,7 @@ class HappyForms_Form_Styles {
606
  'type' => 'checkbox',
607
  'label' => __( 'Toggle placeholder on part focus', 'happyforms' ),
608
  'field' => 'part_toggle_placeholders',
 
609
  ),
610
  array(
611
  'type' => 'buttonset',
@@ -666,11 +703,6 @@ class HappyForms_Form_Styles {
666
  'label' => __( 'Dropdowns', 'happyforms' ),
667
  'condition' => '( happyForms.form.get(\'parts\').findWhere( { type: \'select\' } ) || happyForms.form.get(\'parts\').findWhere( { type: \'date\' } ) || happyForms.form.get(\'parts\').findWhere( { type: \'title\' } ) )'
668
  ),
669
- array(
670
- 'type' => 'color',
671
- 'label' => __( 'Background', 'happyforms' ),
672
- 'field' => 'color_dropdown_bg',
673
- ),
674
  array(
675
  'type' => 'heading',
676
  'label' => __( 'Items', 'happyforms' )
@@ -865,6 +897,14 @@ class HappyForms_Form_Styles {
865
  return $class;
866
  }
867
 
 
 
 
 
 
 
 
 
868
  public function form_html_styles( $form = array() ) {
869
  $fields = $this->get_fields();
870
  $styles = array_filter( $fields, array( $this, 'is_css_var_field' ) );
38
  public function hook() {
39
  add_filter( 'happyforms_meta_fields', array( $this, 'meta_fields' ) );
40
  add_filter( 'happyforms_form_class', array( $this, 'form_html_class' ), 10, 2 );
41
+ add_filter( 'happyforms_form_id', array( $this, 'form_html_id' ), 10, 2 );
42
  }
43
 
44
  public function get_fields() {
71
  'extra_class' => 'form-width-control',
72
  'sanitize' => 'sanitize_text_field'
73
  ),
74
+ 'form_padding' => array(
75
+ 'default' => '',
76
+ 'options' => array(
77
+ '' => __( 'Default', 'happyforms' ),
78
+ 'happyforms-form--padding-narrow' => __( 'Narrow', 'happyforms' ),
79
+ 'happyforms-form--padding-wide' => __( 'Wide', 'happyforms' )
80
+ ),
81
+ 'target' => 'form_class',
82
+ 'sanitize' => 'sanitize_text_field'
83
+ ),
84
  'form_title' => array(
85
  'default' => '',
86
  'options' => array(
462
  'target' => 'css_var',
463
  'variable' => '--happyforms-color-choice-checkmark-color',
464
  ),
 
 
 
 
 
 
465
  'color_dropdown_item_bg' => array(
466
  'default' => '#ffffff',
467
  'sanitize' => 'sanitize_text_field',
485
  'sanitize' => 'sanitize_text_field',
486
  'target' => 'css_var',
487
  'variable' => '--happyforms-color-dropdown-item-text-hover',
488
+ ),
489
+ 'html_id' => array(
490
+ 'default' => '',
491
+ 'sanitize' => 'sanitize_text_field',
492
+ 'target' => 'attribute',
493
+ ),
494
+ 'notices_position' => array(
495
+ 'default' => '',
496
+ 'options' => array(
497
+ '' => __( 'Above form', 'happyforms' ),
498
+ 'happyforms-form--notices-below' => __( 'Below form', 'happyforms' ),
499
+ ),
500
+ 'target' => 'form_class',
501
+ 'sanitize' => 'sanitize_text_field'
502
+ ),
503
  );
504
 
505
  return $fields;
513
  ),
514
  array(
515
  'type' => 'range',
516
+ 'label' => __( 'Width', 'happyforms' ),
517
  'field' => 'form_width'
518
  ),
519
+ array(
520
+ 'type' => 'buttonset',
521
+ 'label' => __( 'Padding', 'happyforms' ),
522
+ 'field' => 'form_padding',
523
+ ),
524
  array(
525
  'type' => 'buttonset',
526
  'label' => __( 'Direction', 'happyforms' ),
527
  'field' => 'form_direction'
528
  ),
529
+ array(
530
+ 'type' => 'buttonset',
531
+ 'label' => __( 'Display notices', 'happyforms' ),
532
+ 'field' => 'notices_position'
533
+ ),
534
  array(
535
  'type' => 'checkbox',
536
  'label' => __( 'Disable submit button until form is valid', 'happyforms' ),
537
  'field' => 'disable_submit_until_valid',
538
  ),
539
+ array(
540
+ 'type' => 'text',
541
+ 'label' => __( 'Form HTML ID', 'happyforms' ),
542
+ 'field' => 'html_id',
543
+ 'class' => 'code',
544
+ 'tooltip' => true,
545
+ ),
546
  array(
547
  'type' => 'heading',
548
  'label' => __( 'Colors', 'happyforms' )
568
  ),
569
  array(
570
  'type' => 'buttonset',
571
+ 'label' => __( 'Display', 'happyforms' ),
572
  'field' => 'form_title',
573
  ),
574
  array(
642
  'type' => 'checkbox',
643
  'label' => __( 'Toggle placeholder on part focus', 'happyforms' ),
644
  'field' => 'part_toggle_placeholders',
645
+ 'condition' => 'happyForms.form.get(\'parts\').find( function( model ) { return model.get( \'placeholder\' ); } )'
646
  ),
647
  array(
648
  'type' => 'buttonset',
703
  'label' => __( 'Dropdowns', 'happyforms' ),
704
  'condition' => '( happyForms.form.get(\'parts\').findWhere( { type: \'select\' } ) || happyForms.form.get(\'parts\').findWhere( { type: \'date\' } ) || happyForms.form.get(\'parts\').findWhere( { type: \'title\' } ) )'
705
  ),
 
 
 
 
 
706
  array(
707
  'type' => 'heading',
708
  'label' => __( 'Items', 'happyforms' )
897
  return $class;
898
  }
899
 
900
+ public function form_html_id( $id, $form ) {
901
+ if ( ! empty( $form['html_id'] ) ) {
902
+ $id = $form['html_id'];
903
+ }
904
+
905
+ return $id;
906
+ }
907
+
908
  public function form_html_styles( $form = array() ) {
909
  $fields = $this->get_fields();
910
  $styles = array_filter( $fields, array( $this, 'is_css_var_field' ) );
inc/classes/class-message-admin.php CHANGED
@@ -711,6 +711,7 @@ class HappyForms_Message_Admin {
711
 
712
  $this->parse_request();
713
  $part_metas = wp_list_pluck( $this->current_form['parts'], 'id' );
 
714
  $ids_values = implode( ', ', $ids );
715
  $part_meta_values = implode( '\', \'', $part_metas );
716
  $filename = 'messages.csv';
@@ -724,6 +725,20 @@ class HappyForms_Message_Admin {
724
  ARRAY_A
725
  );
726
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
727
  foreach( $results as $result ) {
728
  if ( ! isset( $messages[$result['ID']] ) ) {
729
  $messages[$result['ID']] = array();
@@ -735,7 +750,7 @@ class HappyForms_Message_Admin {
735
  $output = fopen( 'php://output', 'w' );
736
  header( 'Content-Description: File Transfer' );
737
  header( 'Content-Disposition: attachment; filename=' . $filename );
738
- header( 'Content-Type: text/xml; charset=' . get_option( 'blog_charset' ), true );
739
 
740
  foreach( $messages as $message ) {
741
  $row = array_values( $message );
711
 
712
  $this->parse_request();
713
  $part_metas = wp_list_pluck( $this->current_form['parts'], 'id' );
714
+ $part_labels = wp_list_pluck( $this->current_form['parts'], 'label' );
715
  $ids_values = implode( ', ', $ids );
716
  $part_meta_values = implode( '\', \'', $part_metas );
717
  $filename = 'messages.csv';
725
  ARRAY_A
726
  );
727
 
728
+ $headers = array();
729
+
730
+ foreach( $part_metas as $i => $id ) {
731
+ $header = "Blank [$id]";
732
+
733
+ if ( isset( $part_labels[$i] ) && ! empty( $part_labels[$i] ) ) {
734
+ $header = $part_labels[$i];
735
+ }
736
+
737
+ $headers[] = $header;
738
+ }
739
+
740
+ $messages[0] = $headers;
741
+
742
  foreach( $results as $result ) {
743
  if ( ! isset( $messages[$result['ID']] ) ) {
744
  $messages[$result['ID']] = array();
750
  $output = fopen( 'php://output', 'w' );
751
  header( 'Content-Description: File Transfer' );
752
  header( 'Content-Disposition: attachment; filename=' . $filename );
753
+ header( 'Content-Type: text/csv; charset=' . get_option( 'blog_charset' ), true );
754
 
755
  foreach( $messages as $message ) {
756
  $row = array_values( $message );
inc/classes/parts/class-part-address.php CHANGED
@@ -262,6 +262,14 @@ class HappyForms_Part_Address extends HappyForms_Form_Part {
262
  $class[] = 'happyforms-part--address-country-city';
263
  }
264
 
 
 
 
 
 
 
 
 
265
  if ( isset( $part['has_geolocation'] ) && $part['has_geolocation'] ) {
266
  $class[] = 'happyforms-part--address-has-geolocation';
267
  }
@@ -353,7 +361,7 @@ class HappyForms_Part_Address extends HappyForms_Form_Part {
353
  wp_register_script(
354
  'happyforms-part-address',
355
  happyforms_get_plugin_url() . 'assets/js/frontend/address.js',
356
- array( 'jquery-ui-autocomplete' ), HAPPYFORMS_VERSION, true
357
  );
358
 
359
  $settings = array(
262
  $class[] = 'happyforms-part--address-country-city';
263
  }
264
 
265
+ if ( isset( $part['mode'] ) && 'autocomplete' === $part['mode'] || 'country' === $part['mode'] || 'country-city' === $part['mode'] ) {
266
+ $class[] = 'happyforms-part--with-autocomplete';
267
+
268
+ if ( 'autocomplete' === $part['mode'] ) {
269
+ $class[] = 'happyforms-part--address-googleapi';
270
+ }
271
+ }
272
+
273
  if ( isset( $part['has_geolocation'] ) && $part['has_geolocation'] ) {
274
  $class[] = 'happyforms-part--address-has-geolocation';
275
  }
361
  wp_register_script(
362
  'happyforms-part-address',
363
  happyforms_get_plugin_url() . 'assets/js/frontend/address.js',
364
+ array( 'happyforms-select' ), HAPPYFORMS_VERSION, true
365
  );
366
 
367
  $settings = array(
inc/classes/parts/class-part-email.php CHANGED
@@ -10,6 +10,7 @@ class HappyForms_Part_Email extends HappyForms_Form_Part {
10
 
11
  add_filter( 'happyforms_part_class', array( $this, 'html_part_class' ), 10, 3 );
12
  add_filter( 'happyforms_part_data_attributes', array( $this, 'html_part_data_attributes' ), 10, 3 );
 
13
  }
14
 
15
  /**
@@ -41,6 +42,10 @@ class HappyForms_Part_Email extends HappyForms_Form_Part {
41
  'default' => '',
42
  'sanitize' => 'sanitize_text_field'
43
  ),
 
 
 
 
44
  'confirmation_field' => array(
45
  'default' => 0,
46
  'sanitize' => 'intval'
@@ -161,6 +166,9 @@ class HappyForms_Part_Email extends HappyForms_Form_Part {
161
  if ( $part['confirmation_field'] ) {
162
  $attributes['happyforms-require-confirmation'] = '';
163
  }
 
 
 
164
  }
165
 
166
  return $attributes;
@@ -176,11 +184,26 @@ class HappyForms_Part_Email extends HappyForms_Form_Part {
176
  if ( 'focus-reveal' === $part['description_mode'] ) {
177
  $class[] = 'happyforms-part--focus-reveal-description';
178
  }
 
 
179
  }
180
 
181
  return $class;
182
  }
183
 
 
 
 
 
 
 
 
 
 
 
 
 
 
184
  /**
185
  * Enqueue scripts in customizer area.
186
  *
@@ -198,4 +221,48 @@ class HappyForms_Part_Email extends HappyForms_Form_Part {
198
  );
199
  }
200
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
201
  }
10
 
11
  add_filter( 'happyforms_part_class', array( $this, 'html_part_class' ), 10, 3 );
12
  add_filter( 'happyforms_part_data_attributes', array( $this, 'html_part_data_attributes' ), 10, 3 );
13
+ add_filter( 'happyforms_frontend_dependencies', array( $this, 'script_dependencies' ), 10, 2 );
14
  }
15
 
16
  /**
42
  'default' => '',
43
  'sanitize' => 'sanitize_text_field'
44
  ),
45
+ 'autocomplete_domains' => array(
46
+ 'default' => 1,
47
+ 'sanitize' => 'intval'
48
+ ),
49
  'confirmation_field' => array(
50
  'default' => 0,
51
  'sanitize' => 'intval'
166
  if ( $part['confirmation_field'] ) {
167
  $attributes['happyforms-require-confirmation'] = '';
168
  }
169
+ if ( $part['autocomplete_domains'] ) {
170
+ $attributes['mode'] = 'autocomplete';
171
+ }
172
  }
173
 
174
  return $attributes;
184
  if ( 'focus-reveal' === $part['description_mode'] ) {
185
  $class[] = 'happyforms-part--focus-reveal-description';
186
  }
187
+
188
+ $class[] = 'happyforms-part--with-autocomplete';
189
  }
190
 
191
  return $class;
192
  }
193
 
194
+ public function get_domains_for_autocomplete() {
195
+ $domains = array(
196
+ 'gmail.com',
197
+ 'yahoo.com',
198
+ 'hotmail.com',
199
+ 'aol.com',
200
+ 'icloud.com',
201
+ 'outlook.com'
202
+ );
203
+
204
+ return apply_filters( 'happyforms_email_domains_autocomplete', $domains );
205
+ }
206
+
207
  /**
208
  * Enqueue scripts in customizer area.
209
  *
221
  );
222
  }
223
 
224
+ public function script_dependencies( $deps, $forms ) {
225
+ $contains_select = false;
226
+ $form_controller = happyforms_get_form_controller();
227
+
228
+ foreach ( $forms as $form ) {
229
+ if ( $form_controller->get_first_part_by_type( $form, $this->type ) ) {
230
+ $contains_email = true;
231
+ break;
232
+ }
233
+ }
234
+
235
+ if ( ! happyforms_is_preview() && ! $contains_email ) {
236
+ return $deps;
237
+ }
238
+
239
+ wp_register_script(
240
+ 'happyforms-select',
241
+ happyforms_get_plugin_url() . 'assets/js/lib/happyforms-select.js',
242
+ array( 'jquery' ), HAPPYFORMS_VERSION, true
243
+ );
244
+
245
+ $deps[] = 'happyforms-select';
246
+
247
+ wp_register_script(
248
+ 'happyforms-email',
249
+ happyforms_get_plugin_url() . 'assets/js/frontend/email.js',
250
+ array( 'happyforms-select' ), HAPPYFORMS_VERSION, true
251
+ );
252
+
253
+ $settings = array(
254
+ 'url' => admin_url( 'admin-ajax.php' ),
255
+ 'autocompleteSource' => $this->get_domains_for_autocomplete()
256
+ );
257
+
258
+ wp_localize_script(
259
+ 'happyforms-email',
260
+ '_happyFormsEmailSettings',
261
+ $settings
262
+ );
263
+
264
+ $deps[] = 'happyforms-email';
265
+
266
+ return $deps;
267
+ }
268
  }
inc/helpers/helper-form-templates.php CHANGED
@@ -423,6 +423,45 @@ function happyforms_the_form_title( $form ) {
423
 
424
  endif;
425
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
426
  if ( ! function_exists( 'happyforms_get_form_class' ) ):
427
  /**
428
  * Get a form's html class.
@@ -649,7 +688,7 @@ function happyforms_the_form_styles( $form ) {
649
  ?>
650
  <!-- HappyForms CSS variables -->
651
  <style>
652
- #happyforms-form-<?php echo esc_attr( $form['ID'] ); ?> {
653
  <?php foreach( $styles as $key => $style ) {
654
  $variable = $style['variable'];
655
  $value = $form[$key];
423
 
424
  endif;
425
 
426
+ if ( ! function_exists( 'happyforms_get_form_id' ) ):
427
+ /**
428
+ * Get a form's html id.
429
+ *
430
+ * @param array $form Current form data.
431
+ *
432
+ * @return string
433
+ */
434
+ function happyforms_get_form_id( $form ) {
435
+ /**
436
+ * Filter the id a form element.
437
+ *
438
+ * @param string $id Current id.
439
+ * @param array $form Current form data.
440
+ *
441
+ * @return string
442
+ */
443
+ $id = 'happyforms-form-' . esc_attr( $form['ID'] );
444
+ $id = apply_filters( 'happyforms_form_id', $id, $form );
445
+
446
+ return $id;
447
+ }
448
+
449
+ endif;
450
+
451
+ if ( ! function_exists( 'happyforms_the_form_id' ) ):
452
+ /**
453
+ * Output a form's html id.
454
+ *
455
+ * @param array $form Current form data.
456
+ *
457
+ * @return string
458
+ */
459
+ function happyforms_the_form_id( $form ) {
460
+ echo happyforms_get_form_id( $form );
461
+ }
462
+
463
+ endif;
464
+
465
  if ( ! function_exists( 'happyforms_get_form_class' ) ):
466
  /**
467
  * Get a form's html class.
688
  ?>
689
  <!-- HappyForms CSS variables -->
690
  <style>
691
+ #<?php happyforms_the_form_id( $form ); ?> {
692
  <?php foreach( $styles as $key => $style ) {
693
  $variable = $style['variable'];
694
  $value = $form[$key];
inc/templates/customize-form-style.php CHANGED
@@ -12,8 +12,10 @@ $controls = happyforms_get_styles()->get_controls();
12
  $type = $control['type'];
13
  $label = $control['label'];
14
  $class = esc_attr( "happyforms-{$type}-control" );
 
15
  $name = isset( $control['field'] ) ? $control['field'] : '';
16
  $field = ( '' !== $name ) ? $controller->get_field( $control['field'] ) : '';
 
17
 
18
  if ( 'divider' === $type ) : ?>
19
 
@@ -44,6 +46,7 @@ $controls = happyforms_get_styles()->get_controls();
44
  </li>
45
 
46
  <?php elseif ( 'range' === $type ) : ?>
 
47
  <li class="customize-control <?php echo $class; ?> <?php echo ( isset( $field['extra_class'] ) ) ? $field['extra_class'] : ''; ?>" data-target="<?php echo esc_attr( $field['target'] ); ?>" data-variable="<?php echo $field['variable']; ?>" data-unit="<?php echo $field['unit']; ?>"<?php if ( isset( $control['condition'] ) ) { echo ' style="display: <%= ' . $control['condition'] . ' ? "block" : "none" %>"'; } ?>>
48
  <label class="customize-control-title" for="<?php echo $name; ?>"><?php echo $label; ?></label>
49
  <input type="number" name="<?php echo $name; ?>" id="<?php echo $name; ?>" min="<?php echo $field[ 'min' ]; ?>" max="<?php echo $field[ 'max' ]; ?>" step="<?php echo $field[ 'step' ]; ?>" value="<%= <?php echo $name; ?> %>" data-attribute="<?php echo $name; ?>">
@@ -61,6 +64,7 @@ $controls = happyforms_get_styles()->get_controls();
61
  </li>
62
 
63
  <?php elseif ( 'buttonset' === $type ) : ?>
 
64
  <li class="customize-control <?php echo $class; ?> <?php echo ( isset( $field['extra_class'] ) ) ? $field['extra_class'] : ''; ?>" data-target="<?php echo esc_attr( $field['target'] ); ?>" data-variable="<?php echo ( isset( $field['variable'] ) ) ? esc_attr( $field['variable'] ) : ''; ?>" data-control-id="<?php echo $name; ?>"<?php if ( isset( $control['condition'] ) ) { echo ' style="display: <%= ' . $control['condition'] . ' ? "block" : "none" %>"'; } ?>>
65
  <div class="customize-control-content">
66
  <label class="customize-control-title" for="<?php echo $name; ?>"><?php echo $label; ?></label>
@@ -87,9 +91,9 @@ $controls = happyforms_get_styles()->get_controls();
87
  <?php elseif ( 'text' === $type ) : ?>
88
 
89
  <li class="customize-control <?php echo $class; ?> <?php echo ( isset( $field['extra_class'] ) ) ? $field['extra_class'] : ''; ?>" data-target="<?php echo esc_attr( $field['target'] ); ?>"<?php if ( isset( $control['condition'] ) ) { echo ' style="display: <%= ' . $control['condition'] . ' ? "block" : "none" %>"'; } ?>>
90
- <label class="customize-control-title" for="<?php echo $name; ?>"><?php echo $label; ?></label>
91
- <div class="customize-control-content">
92
- <input type="text" name="<?php echo $name; ?>" id="<?php echo $name; ?>" data-attribute="<?php echo $name; ?>" value="<%= <?php echo $name; ?> %>">
93
  </div>
94
  </li>
95
 
@@ -119,3 +123,6 @@ $controls = happyforms_get_styles()->get_controls();
119
  </ul>
120
  </div>
121
  </script>
 
 
 
12
  $type = $control['type'];
13
  $label = $control['label'];
14
  $class = esc_attr( "happyforms-{$type}-control" );
15
+ $input_class = isset( $control['class'] ) ? esc_attr( $control['class'] ) : '';
16
  $name = isset( $control['field'] ) ? $control['field'] : '';
17
  $field = ( '' !== $name ) ? $controller->get_field( $control['field'] ) : '';
18
+ $has_tooltip = ( isset( $control['tooltip'] ) && true === $control['tooltip'] );
19
 
20
  if ( 'divider' === $type ) : ?>
21
 
46
  </li>
47
 
48
  <?php elseif ( 'range' === $type ) : ?>
49
+
50
  <li class="customize-control <?php echo $class; ?> <?php echo ( isset( $field['extra_class'] ) ) ? $field['extra_class'] : ''; ?>" data-target="<?php echo esc_attr( $field['target'] ); ?>" data-variable="<?php echo $field['variable']; ?>" data-unit="<?php echo $field['unit']; ?>"<?php if ( isset( $control['condition'] ) ) { echo ' style="display: <%= ' . $control['condition'] . ' ? "block" : "none" %>"'; } ?>>
51
  <label class="customize-control-title" for="<?php echo $name; ?>"><?php echo $label; ?></label>
52
  <input type="number" name="<?php echo $name; ?>" id="<?php echo $name; ?>" min="<?php echo $field[ 'min' ]; ?>" max="<?php echo $field[ 'max' ]; ?>" step="<?php echo $field[ 'step' ]; ?>" value="<%= <?php echo $name; ?> %>" data-attribute="<?php echo $name; ?>">
64
  </li>
65
 
66
  <?php elseif ( 'buttonset' === $type ) : ?>
67
+
68
  <li class="customize-control <?php echo $class; ?> <?php echo ( isset( $field['extra_class'] ) ) ? $field['extra_class'] : ''; ?>" data-target="<?php echo esc_attr( $field['target'] ); ?>" data-variable="<?php echo ( isset( $field['variable'] ) ) ? esc_attr( $field['variable'] ) : ''; ?>" data-control-id="<?php echo $name; ?>"<?php if ( isset( $control['condition'] ) ) { echo ' style="display: <%= ' . $control['condition'] . ' ? "block" : "none" %>"'; } ?>>
69
  <div class="customize-control-content">
70
  <label class="customize-control-title" for="<?php echo $name; ?>"><?php echo $label; ?></label>
91
  <?php elseif ( 'text' === $type ) : ?>
92
 
93
  <li class="customize-control <?php echo $class; ?> <?php echo ( isset( $field['extra_class'] ) ) ? $field['extra_class'] : ''; ?>" data-target="<?php echo esc_attr( $field['target'] ); ?>"<?php if ( isset( $control['condition'] ) ) { echo ' style="display: <%= ' . $control['condition'] . ' ? "block" : "none" %>"'; } ?>>
94
+ <label class="customize-control-title" for="<?php echo $name; ?>"><?php echo $label; ?> <?php if ( true === $has_tooltip ) : ?> <i class="fa fa-question-circle" aria-hidden="true" data-pointer="<?php echo $name; ?>"></i><?php endif; ?></label>
95
+ <div class="customize-control-content" <?php if ( true === $has_tooltip ) : ?>data-pointer-target<?php endif; ?>>
96
+ <input type="text" name="<?php echo $name; ?>" class="<?php echo $input_class; ?>" id="<?php echo $name; ?>" data-attribute="<?php echo $name; ?>" value="<%= <?php echo $name; ?> %>">
97
  </div>
98
  </li>
99
 
123
  </ul>
124
  </div>
125
  </script>
126
+ <script type="text/template" id="happyforms-pointer-html_id">
127
+ <?php _e( 'Add a unique HTML ID to your form. Write without a hash (#) character.', 'happyforms' ); ?>
128
+ </script>
inc/templates/partials/happyforms-select.php CHANGED
@@ -1,6 +1,6 @@
1
  <ul class="happyforms-custom-select-dropdown">
2
  <li class="happyforms-custom-select-dropdown__placeholder" data-value=""><?php echo $placeholder_value; ?></li>
3
  <?php foreach ( $options as $index => $option ) : ?>
4
- <li <?php echo ( isset( $option['id'] ) ) ? 'data-option-id="'. esc_attr( $option['id'] ) .'" ' : ''; ?>data-value="<?php echo ( isset( $option['value'] ) ) ? $option['value'] : $index; ?>" data-label="<?php echo esc_attr( $option['label'] ); ?>" class="happyforms-dropdown-item happyforms-custom-select-dropdown__item" tabindex="0"><?php echo esc_attr( $option['label'] ); ?></li>
5
  <?php endforeach; ?>
6
  </ul>
1
  <ul class="happyforms-custom-select-dropdown">
2
  <li class="happyforms-custom-select-dropdown__placeholder" data-value=""><?php echo $placeholder_value; ?></li>
3
  <?php foreach ( $options as $index => $option ) : ?>
4
+ <li <?php echo ( isset( $option['id'] ) ) ? 'data-option-id="'. esc_attr( $option['id'] ) .'" ' : ''; ?>data-value="<?php echo ( isset( $option['value'] ) ) ? $option['value'] : $index; ?>" data-label="<?php echo esc_attr( $option['label'] ); ?>" class="happyforms-dropdown-item happyforms-custom-select-dropdown__item"><?php echo esc_attr( $option['label'] ); ?></li>
5
  <?php endforeach; ?>
6
  </ul>
inc/templates/partials/part-phone-dropdown.php CHANGED
@@ -1,34 +1,34 @@
1
  <?php if ( $this->is_masked( $part ) ) : ?>
2
- <div class="happyforms-part--phone__country-select happyforms-country-select<?php if ( $part['mask_allow_all_countries'] ) { ?> happyforms-country-select--multiple<?php } ?>">
3
- <div class="happyforms-country-select__selected-country">
4
- <a href="#" class="happyforms-country-select-trigger"></a>
5
- <?php
6
- $countries = happyforms_get_phone_countries();
7
- $current_country = 0;
8
 
9
- foreach( $countries as $code => $country ) {
10
- if ( intval( $country_code ) && $country['code'] == $country_code ) {
11
- $current_country = $country;
12
- } else if ( strtolower( $code ) === strtolower( $country_code ) ) {
13
- $current_country = $country;
14
- }
15
- }
16
- ?>
17
- <div class="happyforms-flag"><?php echo $current_country['flag']; ?></div>
18
- </div>
19
- <?php if ( $part['mask_allow_all_countries'] ) { ?>
20
- <ul class="happyforms-custom-select-dropdown phone">
21
- <li>
22
- <input type="text" autocomplete="off" placeholder="Search countries..." class="happyforms-custom-select-dropdown__search">
23
- </li>
24
- <?php foreach( $countries as $key => $country ) { ?>
25
- <li tabindex="0" class="happyforms-custom-select-dropdown__item happyforms-custom-select-dropdown-item" data-country="<?php echo strtolower( $key ); ?>" data-search-string="<?php echo strtolower( $country['name'] ); ?>" data-code="<?php echo $country['code']; ?>">
26
- <div class="happyforms-flag <?php echo strtolower( $key ); ?>"><?php echo $country['flag']; ?></div>
27
- <span class="happyforms-custom-select-dropdown-item__label happyforms-custom-select-dropdown-item__label--country"><?php echo ucwords( strtolower( $country['name'] ) ); ?></span>
28
- <span class="happyforms-custom-select-dropdown-item__label happyforms-custom-select-dropdown-item__label--country-code">+<?php echo $country['code']; ?></span>
29
- </li>
30
- <?php } ?>
31
- </ul>
32
- <?php } ?>
33
- </div>
34
  <?php endif; ?>
1
  <?php if ( $this->is_masked( $part ) ) : ?>
2
+ <div class="happyforms-part--phone__country-select happyforms-country-select<?php if ( $part['mask_allow_all_countries'] ) { ?> happyforms-country-select--multiple<?php } ?>">
3
+ <div class="happyforms-country-select__selected-country">
4
+ <a href="#" class="happyforms-country-select-trigger"></a>
5
+ <?php
6
+ $countries = happyforms_get_phone_countries();
7
+ $current_country = 0;
8
 
9
+ foreach( $countries as $code => $country ) {
10
+ if ( intval( $code_value ) && $code_value === $country['code'] ) {
11
+ $current_country = $country;
12
+ } else if ( strtolower( $code ) === strtolower( $code_value ) ) {
13
+ $current_country = $country;
14
+ }
15
+ }
16
+ ?>
17
+ <div class="happyforms-flag"><?php echo $current_country['flag']; ?></div>
18
+ </div>
19
+ <?php if ( $part['mask_allow_all_countries'] ) { ?>
20
+ <ul class="happyforms-custom-select-dropdown phone">
21
+ <li>
22
+ <input type="text" autocomplete="off" placeholder="Search countries..." class="happyforms-custom-select-dropdown__search">
23
+ </li>
24
+ <?php foreach( $countries as $key => $country ) { ?>
25
+ <li tabindex="0" class="happyforms-custom-select-dropdown__item happyforms-custom-select-dropdown-item" data-country="<?php echo strtolower( $key ); ?>" data-search-string="<?php echo strtolower( $country['name'] ); ?>" data-code="<?php echo $country['code']; ?>">
26
+ <div class="happyforms-flag <?php echo strtolower( $key ); ?>"><?php echo $country['flag']; ?></div>
27
+ <span class="happyforms-custom-select-dropdown-item__label happyforms-custom-select-dropdown-item__label--country"><?php echo ucwords( strtolower( $country['name'] ) ); ?></span>
28
+ <span class="happyforms-custom-select-dropdown-item__label happyforms-custom-select-dropdown-item__label--country-code">+<?php echo $country['code']; ?></span>
29
+ </li>
30
+ <?php } ?>
31
+ </ul>
32
+ <?php } ?>
33
+ </div>
34
  <?php endif; ?>
inc/templates/parts/customize-email.php CHANGED
@@ -60,6 +60,11 @@
60
  <label for="<%= instance.id %>_css_class"><?php _e( 'Custom CSS class', 'happyforms' ); ?></label>
61
  <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
62
  </p>
 
 
 
 
 
63
  <p>
64
  <label>
65
  <input type="checkbox" class="checkbox confirmation-checkbox" value="1" <% if ( instance.confirmation_field ) { %>checked="checked"<% } %> data-bind="confirmation_field" /> <?php _e( 'Require confirmation of the value', 'happyforms' ); ?>
60
  <label for="<%= instance.id %>_css_class"><?php _e( 'Custom CSS class', 'happyforms' ); ?></label>
61
  <input type="text" id="<%= instance.id %>_css_class" class="widefat title" value="<%= instance.css_class %>" data-bind="css_class" />
62
  </p>
63
+ <p>
64
+ <label>
65
+ <input type="checkbox" class="checkbox" value="1" <% if ( instance.autocomplete_domains ) { %>checked="checked"<% } %> data-bind="autocomplete_domains" /> <?php _e( 'Suggest common email domains', 'happyforms' ); ?>
66
+ </label>
67
+ </p>
68
  <p>
69
  <label>
70
  <input type="checkbox" class="checkbox confirmation-checkbox" value="1" <% if ( instance.confirmation_field ) { %>checked="checked"<% } %> data-bind="confirmation_field" /> <?php _e( 'Require confirmation of the value', 'happyforms' ); ?>
inc/templates/parts/frontend-address.php CHANGED
@@ -20,39 +20,48 @@
20
  <?php elseif ( 'autocomplete' === $part['mode'] ) : ?>
21
  <div class="happyforms-part-el-wrap">
22
  <div class="happyforms-part__dummy-input">
23
- <input id="<?php happyforms_the_part_id( $part, $form ); ?>" name="<?php happyforms_the_part_name( $part, $form ); ?>[full]" class="happyforms-part--address__autocomplete address-full" type="text" value="<?php happyforms_the_part_value( $part, $form, 'full' ); ?>" placeholder="<?php echo esc_attr( $part['placeholder'] ); ?>" <?php if ( 1 === $part['required'] ) : ?>required aria-required="true"<?php endif; ?> autocomplete="off" <?php happyforms_the_part_attributes( $part, $form, 'full' ); ?> />
 
 
24
  <?php happyforms_geolocation_link( $part ); ?>
25
  <?php if ( 'as_placeholder' === $part['label_placement'] ) : ?>
26
  <?php happyforms_the_part_label( $part, $form ); ?>
27
  <?php endif; ?>
 
 
28
  </div>
29
- <div class="happyforms-part--address__results happyforms-part--address__results--google"></div>
30
  </div>
31
  <?php elseif ( 'country' === $part['mode'] ) : ?>
32
  <div class="happyforms-part-el-wrap">
33
  <div class="happyforms-part__dummy-input">
34
- <input id="<?php happyforms_the_part_id( $part, $form ); ?>" name="<?php happyforms_the_part_name( $part, $form ); ?>[country]" class="happyforms-part--address__autocomplete address-country" type="text" value="<?php happyforms_the_part_value( $part, $form, 'country' ); ?>" placeholder="<?php _e( 'Country', 'happyforms' ); ?>" <?php if ( 1 === $part['required'] ) : ?>required aria-required="true"<?php endif; ?> autocomplete="off" <?php happyforms_the_part_attributes( $part, $form, 'country' ); ?> />
 
 
35
  <?php happyforms_geolocation_link( $part ); ?>
 
 
 
36
  <?php if ( 'as_placeholder' === $part['label_placement'] ) : ?>
37
  <?php happyforms_the_part_label( $part, $form ); ?>
38
  <?php endif; ?>
39
  </div>
40
-
41
- <div class="happyforms-part--address__results"></div>
42
  </div>
43
  <?php else: ?>
44
  <div class="happyforms-part-el-wrap">
45
  <div class="happyforms-part__dummy-input">
46
- <input id ="<?php happyforms_the_part_id( $part, $form ); ?>" name="<?php happyforms_the_part_name( $part, $form ); ?>[country]" class="happyforms-part--address__autocomplete address-country" type="text" value="<?php happyforms_the_part_value( $part, $form, 'country' ); ?>" placeholder="<?php _e( 'Country', 'happyforms' ); ?>" <?php if ( 1 === $part['required'] ) : ?>required aria-required="true"<?php endif; ?> autocomplete="off" <?php happyforms_the_part_attributes( $part, $form, 'country' ); ?> />
 
 
47
  <?php happyforms_geolocation_link( $part ); ?>
 
 
 
48
  <?php if ( 'as_placeholder' === $part['label_placement'] ) : ?>
49
  <?php happyforms_the_part_label( $part, $form ); ?>
50
  <?php endif; ?>
51
  </div>
52
 
53
  <input name="<?php happyforms_the_part_name( $part, $form ); ?>[city]" class="address-city" type="text" value="<?php happyforms_the_part_value( $part, $form, 'city' ); ?>" placeholder="<?php _e( 'City', 'happyforms' ); ?>" <?php if ( 1 === $part['required'] ) : ?>required aria-required="true"<?php endif; ?> <?php happyforms_the_part_attributes( $part, $form, 'city' ); ?> />
54
-
55
- <div class="happyforms-part--address__results"></div>
56
  </div>
57
  <?php endif; ?>
58
 
20
  <?php elseif ( 'autocomplete' === $part['mode'] ) : ?>
21
  <div class="happyforms-part-el-wrap">
22
  <div class="happyforms-part__dummy-input">
23
+ <input type="hidden" name="<?php happyforms_the_part_name( $part, $form ); ?>[full]" value="<?php happyforms_the_part_value( $part, $form, 'full' ); ?>" data-serialize />
24
+
25
+ <input id="<?php happyforms_the_part_id( $part, $form ); ?>" name="<?php happyforms_the_part_id( $part, $form ); ?>_full_dummy_<?php echo time(); ?>" class="happyforms-part--address__autocomplete address-full" type="text" value="<?php happyforms_the_part_value( $part, $form, 'full' ); ?>" placeholder="<?php echo esc_attr( $part['placeholder'] ); ?>" <?php if ( 1 === $part['required'] ) : ?>required aria-required="true"<?php endif; ?> autocomplete="none" <?php happyforms_the_part_attributes( $part, $form, 'full' ); ?> />
26
  <?php happyforms_geolocation_link( $part ); ?>
27
  <?php if ( 'as_placeholder' === $part['label_placement'] ) : ?>
28
  <?php happyforms_the_part_label( $part, $form ); ?>
29
  <?php endif; ?>
30
+
31
+ <?php happyforms_select( array(), $part, $form ); ?>
32
  </div>
 
33
  </div>
34
  <?php elseif ( 'country' === $part['mode'] ) : ?>
35
  <div class="happyforms-part-el-wrap">
36
  <div class="happyforms-part__dummy-input">
37
+ <input type="hidden" name="<?php happyforms_the_part_name( $part, $form ); ?>[country]" value="<?php happyforms_the_part_value( $part, $form, 'country' ); ?>" data-serialize />
38
+
39
+ <input id="<?php happyforms_the_part_id( $part, $form ); ?>" name="<?php happyforms_the_part_id( $part, $form ); ?>_country_dummy_<?php echo time(); ?>" class="happyforms-part--address__autocomplete address-country" type="text" value="<?php happyforms_the_part_value( $part, $form, 'country' ); ?>" placeholder="<?php _e( 'Country', 'happyforms' ); ?>" <?php if ( 1 === $part['required'] ) : ?>required aria-required="true"<?php endif; ?> autocomplete="off" <?php happyforms_the_part_attributes( $part, $form, 'country' ); ?> />
40
  <?php happyforms_geolocation_link( $part ); ?>
41
+
42
+ <?php happyforms_select( array(), $part, $form ); ?>
43
+
44
  <?php if ( 'as_placeholder' === $part['label_placement'] ) : ?>
45
  <?php happyforms_the_part_label( $part, $form ); ?>
46
  <?php endif; ?>
47
  </div>
 
 
48
  </div>
49
  <?php else: ?>
50
  <div class="happyforms-part-el-wrap">
51
  <div class="happyforms-part__dummy-input">
52
+ <input type="hidden" name="<?php happyforms_the_part_name( $part, $form ); ?>[country]" value="<?php happyforms_the_part_value( $part, $form, 'country' ); ?>" data-serialize />
53
+
54
+ <input id ="<?php happyforms_the_part_id( $part, $form ); ?>" name="<?php happyforms_the_part_name( $part, $form ); ?>_country_dummy_<?php echo time(); ?>" class="happyforms-part--address__autocomplete address-country" type="text" value="<?php happyforms_the_part_value( $part, $form, 'country' ); ?>" placeholder="<?php _e( 'Country', 'happyforms' ); ?>" <?php if ( 1 === $part['required'] ) : ?>required aria-required="true"<?php endif; ?> autocomplete="off" <?php happyforms_the_part_attributes( $part, $form, 'country' ); ?> />
55
  <?php happyforms_geolocation_link( $part ); ?>
56
+
57
+ <?php happyforms_select( array(), $part, $form ); ?>
58
+
59
  <?php if ( 'as_placeholder' === $part['label_placement'] ) : ?>
60
  <?php happyforms_the_part_label( $part, $form ); ?>
61
  <?php endif; ?>
62
  </div>
63
 
64
  <input name="<?php happyforms_the_part_name( $part, $form ); ?>[city]" class="address-city" type="text" value="<?php happyforms_the_part_value( $part, $form, 'city' ); ?>" placeholder="<?php _e( 'City', 'happyforms' ); ?>" <?php if ( 1 === $part['required'] ) : ?>required aria-required="true"<?php endif; ?> <?php happyforms_the_part_attributes( $part, $form, 'city' ); ?> />
 
 
65
  </div>
66
  <?php endif; ?>
67
 
inc/templates/parts/frontend-email.php CHANGED
@@ -7,10 +7,23 @@
7
  <div class="happyforms-part__el">
8
  <?php do_action( 'happyforms_part_input_before', $part, $form ); ?>
9
 
10
- <input type="email" id="<?php happyforms_the_part_id( $part, $form ); ?>" name="<?php happyforms_the_part_name( $part, $form ); ?>" value="<?php happyforms_the_part_value( $part, $form, 0 ); ?>" placeholder="<?php echo esc_attr( $part['placeholder'] ); ?>" <?php if ( 1 === $part['required'] ) : ?> required aria-required="true"<?php endif; ?> <?php happyforms_the_part_attributes( $part, $form, 0 ); ?> />
 
 
 
 
 
 
11
  <?php if ( 'as_placeholder' === $part['label_placement'] ) : ?>
12
  <?php happyforms_the_part_label( $part, $form ); ?>
13
  <?php endif; ?>
 
 
 
 
 
 
 
14
  <?php happyforms_print_part_description( $part ); ?>
15
  <?php happyforms_message_notices( happyforms_get_part_name( $part, $form ) ); ?>
16
 
@@ -24,10 +37,23 @@
24
  <?php endif; ?>
25
 
26
  <div class="happyforms-part__el">
27
- <input type="email" id="<?php happyforms_the_part_id( $part, $form ); ?>_confirmation" name="<?php happyforms_the_part_name( $part, $form ); ?>_confirmation" value="<?php happyforms_the_part_value( $part, $form, 1 ); ?>" class="happyforms-confirmation-input" data-confirmation-of="<?php echo esc_attr( $part['id'] ); ?>" <?php if ( 1 === $part['required'] ) : ?> required aria-required="true"<?php endif; ?> <?php happyforms_the_part_attributes( $part, $form, 1 ); ?> />
 
 
 
 
 
 
 
28
  <?php if ( 'as_placeholder' === $part['label_placement'] ) : ?>
29
  <?php happyforms_the_part_confirmation_label( $part, $form ); ?>
30
  <?php endif; ?>
 
 
 
 
 
 
31
  </div>
32
  </div>
33
  <?php endif; ?>
7
  <div class="happyforms-part__el">
8
  <?php do_action( 'happyforms_part_input_before', $part, $form ); ?>
9
 
10
+ <?php if ( 1 == $part['autocomplete_domains'] ) : ?>
11
+ <input type="hidden" name="<?php happyforms_the_part_name( $part, $form ); ?>" value="<?php happyforms_the_part_value( $part, $form, 0 ); ?>" data-serialize />
12
+
13
+ <input type="email" name="<?php happyforms_the_part_id( $part, $form ); ?>_dummy_<?php echo time(); ?>" id="<?php happyforms_the_part_id( $part, $form ); ?>" value="<?php happyforms_the_part_value( $part, $form, 0 ); ?>" autocomplete="none" placeholder="<?php echo esc_attr( $part['placeholder'] ); ?>" <?php if ( 1 == $part['required'] ) : ?> required aria-required="true"<?php endif; ?> <?php happyforms_the_part_attributes( $part, $form, 0 ); ?> />
14
+ <?php else: ?>
15
+ <input type="email" name="<?php happyforms_the_part_name( $part, $form ); ?>" id="<?php happyforms_the_part_id( $part, $form ); ?>" value="<?php happyforms_the_part_value( $part, $form, 0 ); ?>" placeholder="<?php echo esc_attr( $part['placeholder'] ); ?>" <?php if ( 1 == $part['required'] ) : ?> required aria-required="true"<?php endif; ?> <?php happyforms_the_part_attributes( $part, $form, 0 ); ?> />
16
+ <?php endif; ?>
17
  <?php if ( 'as_placeholder' === $part['label_placement'] ) : ?>
18
  <?php happyforms_the_part_label( $part, $form ); ?>
19
  <?php endif; ?>
20
+
21
+ <?php
22
+ if ( 1 == $part['autocomplete_domains'] ) {
23
+ happyforms_select( array(), $part, $form );
24
+ }
25
+ ?>
26
+
27
  <?php happyforms_print_part_description( $part ); ?>
28
  <?php happyforms_message_notices( happyforms_get_part_name( $part, $form ) ); ?>
29
 
37
  <?php endif; ?>
38
 
39
  <div class="happyforms-part__el">
40
+ <?php if ( 1 == $part['autocomplete_domains'] ) : ?>
41
+ <input type="hidden" name="<?php happyforms_the_part_name( $part, $form ); ?>" value="<?php happyforms_the_part_value( $part, $form, 1 ); ?>" data-serialize />
42
+
43
+ <input type="email" name="<?php happyforms_the_part_id( $part, $form ); ?>_dummy_<?php echo time(); ?>" id="<?php happyforms_the_part_id( $part, $form ); ?>_confirmation" value="<?php happyforms_the_part_value( $part, $form, 1 ); ?>" autocomplete="none" <?php if ( 1 == $part['required'] ) : ?> required aria-required="true"<?php endif; ?> <?php happyforms_the_part_attributes( $part, $form, 1 ); ?> />
44
+ <?php else: ?>
45
+ <input type="email" id="<?php happyforms_the_part_id( $part, $form ); ?>_confirmation" name="<?php happyforms_the_part_name( $part, $form ); ?>_confirmation" value="<?php happyforms_the_part_value( $part, $form, 1 ); ?>" class="happyforms-confirmation-input" data-confirmation-of="<?php echo esc_attr( $part['id'] ); ?>" <?php if ( 1 === $part['required'] ) : ?> required aria-required="true"<?php endif; ?> <?php happyforms_the_part_attributes( $part, $form, 1 ); ?> />
46
+ <?php endif; ?>
47
+
48
  <?php if ( 'as_placeholder' === $part['label_placement'] ) : ?>
49
  <?php happyforms_the_part_confirmation_label( $part, $form ); ?>
50
  <?php endif; ?>
51
+
52
+ <?php
53
+ if ( 1 == $part['autocomplete_domains'] ) {
54
+ happyforms_select( array(), $part, $form );
55
+ }
56
+ ?>
57
  </div>
58
  </div>
59
  <?php endif; ?>
inc/templates/parts/frontend-rating.php CHANGED
@@ -5,18 +5,20 @@
5
  <div class="happyforms-part__el">
6
  <?php do_action( 'happyforms_part_input_before', $part, $form ); ?>
7
 
8
- <?php
9
- $icons = happyforms_get_rating_icons( $part );
10
-
11
- switch( $part[ 'rating_type' ] ) {
12
- case 'yesno':
13
- require( 'frontend-rating-yesno.php' );
14
- break;
15
- case 'scale':
16
- require( 'frontend-rating-scale.php' );
17
- break;
18
- }
19
- ?>
 
 
20
 
21
  <?php do_action( 'happyforms_part_input_after', $part, $form ); ?>
22
 
5
  <div class="happyforms-part__el">
6
  <?php do_action( 'happyforms_part_input_before', $part, $form ); ?>
7
 
8
+ <div class="happyforms-rating-wrap">
9
+ <?php
10
+ $icons = happyforms_get_rating_icons( $part );
11
+
12
+ switch( $part[ 'rating_type' ] ) {
13
+ case 'yesno':
14
+ require( 'frontend-rating-yesno.php' );
15
+ break;
16
+ case 'scale':
17
+ require( 'frontend-rating-scale.php' );
18
+ break;
19
+ }
20
+ ?>
21
+ </div>
22
 
23
  <?php do_action( 'happyforms_part_input_after', $part, $form ); ?>
24
 
inc/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="happyforms-form-<?php echo esc_attr( $form['ID'] ); ?>" method="post">
5
  <?php do_action( 'happyforms_form_open', $form ); ?>
6
 
7
  <?php happyforms_action_field(); ?>
@@ -13,9 +13,8 @@
13
  <?php happyforms_the_form_title( $form ); ?>
14
  <?php do_action( 'happyforms_after_title', $form ); ?>
15
 
16
- <?php happyforms_message_notices( $form['ID'] ); ?>
17
-
18
  <div class="happyforms-flex">
 
19
  <?php happyforms_honeypot( $form ); ?>
20
  <?php foreach ( $form['parts'] as $part ) {
21
  happyforms_the_form_part( $part, $form );
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">
5
  <?php do_action( 'happyforms_form_open', $form ); ?>
6
 
7
  <?php happyforms_action_field(); ?>
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 foreach ( $form['parts'] as $part ) {
20
  happyforms_the_form_part( $part, $form );
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.6.10\n"
6
  "Report-Msgid-Bugs-To: https://thethemefoundry.com/support/\n"
7
- "POT-Creation-Date: 2018-11-15 13:48:44+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -150,7 +150,7 @@ msgid "Duplicate"
150
  msgstr ""
151
 
152
  #: inc/classes/class-form-admin.php:374 inc/classes/class-message-admin.php:611
153
- #: inc/classes/class-message-admin.php:864
154
  msgid "Trash"
155
  msgstr ""
156
 
@@ -158,7 +158,7 @@ msgstr ""
158
  msgid "Form duplicated succesfully."
159
  msgstr ""
160
 
161
- #: inc/classes/class-form-admin.php:443
162
  msgid " Copy"
163
  msgstr ""
164
 
@@ -171,7 +171,7 @@ msgstr ""
171
 
172
  #: inc/classes/class-form-controller.php:92
173
  #: inc/classes/class-message-admin.php:372
174
- #: inc/classes/class-message-admin.php:849
175
  msgid "Form"
176
  msgstr ""
177
 
@@ -250,29 +250,45 @@ msgstr ""
250
  msgid "Missing validation callback for field %s"
251
  msgstr ""
252
 
253
- #: inc/classes/class-form-styles.php:48
254
  msgid "Left-to-right"
255
  msgstr ""
256
 
257
- #: inc/classes/class-form-styles.php:49
258
  msgid "Right-to-left"
259
  msgstr ""
260
 
261
- #: inc/classes/class-form-styles.php:76 inc/classes/class-form-styles.php:105
262
- #: inc/classes/class-form-styles.php:228
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
263
  #: inc/templates/parts/customize-date.php:33
264
  #: inc/templates/parts/customize-date.php:57
265
  msgid "Show"
266
  msgstr ""
267
 
268
- #: inc/classes/class-form-styles.php:77 inc/classes/class-form-styles.php:106
269
- #: inc/classes/class-form-styles.php:229
270
  msgid "Hide"
271
  msgstr ""
272
 
273
- #: inc/classes/class-form-styles.php:85 inc/classes/class-form-styles.php:159
274
- #: inc/classes/class-form-styles.php:188 inc/classes/class-form-styles.php:208
275
- #: inc/classes/class-form-styles.php:285
276
  #: inc/templates/parts/customize-address.php:11
277
  #: inc/templates/parts/customize-checkbox.php:11
278
  #: inc/templates/parts/customize-date.php:11
@@ -294,185 +310,213 @@ msgstr ""
294
  msgid "Left"
295
  msgstr ""
296
 
297
- #: inc/classes/class-form-styles.php:86 inc/classes/class-form-styles.php:160
298
- #: inc/classes/class-form-styles.php:189 inc/classes/class-form-styles.php:209
299
- #: inc/classes/class-form-styles.php:286
300
  msgid "Center"
301
  msgstr ""
302
 
303
- #: inc/classes/class-form-styles.php:87 inc/classes/class-form-styles.php:161
304
- #: inc/classes/class-form-styles.php:190 inc/classes/class-form-styles.php:210
305
- #: inc/classes/class-form-styles.php:287
306
  msgid "Right"
307
  msgstr ""
308
 
309
- #: inc/classes/class-form-styles.php:114
310
  msgid "All sides"
311
  msgstr ""
312
 
313
- #: inc/classes/class-form-styles.php:115
314
  msgid "Bottom only"
315
  msgstr ""
316
 
317
- #: inc/classes/class-form-styles.php:123 inc/classes/class-form-styles.php:237
318
  msgid "Square"
319
  msgstr ""
320
 
321
- #: inc/classes/class-form-styles.php:124 inc/classes/class-form-styles.php:238
322
  msgid "Round"
323
  msgstr ""
324
 
325
- #: inc/classes/class-form-styles.php:125 inc/classes/class-form-styles.php:239
326
  msgid "Pill"
327
  msgstr ""
328
 
329
- #: inc/classes/class-form-styles.php:133 inc/classes/class-form-styles.php:143
330
- #: inc/classes/class-form-styles.php:256
331
- msgid "Narrow"
332
  msgstr ""
333
 
334
- #: inc/classes/class-form-styles.php:134 inc/classes/class-form-styles.php:144
335
- #: inc/classes/class-form-styles.php:247 inc/classes/class-form-styles.php:257
336
- msgid "Default"
337
  msgstr ""
338
 
339
- #: inc/classes/class-form-styles.php:135 inc/classes/class-form-styles.php:145
340
- #: inc/classes/class-form-styles.php:258
341
- msgid "Wide"
342
  msgstr ""
343
 
344
- #: inc/classes/class-form-styles.php:179 inc/classes/class-form-styles.php:276
345
- msgid "Normal"
346
  msgstr ""
347
 
348
- #: inc/classes/class-form-styles.php:180 inc/classes/class-form-styles.php:277
349
- msgid "Bold"
350
  msgstr ""
351
 
352
- #: inc/classes/class-form-styles.php:248
353
- msgid "Full width"
354
  msgstr ""
355
 
356
- #: inc/classes/class-form-styles.php:493
357
- msgid "General"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
358
  msgstr ""
359
 
360
- #: inc/classes/class-form-styles.php:497
361
- msgid "Form width"
362
  msgstr ""
363
 
364
- #: inc/classes/class-form-styles.php:502
365
  msgid "Direction"
366
  msgstr ""
367
 
368
- #: inc/classes/class-form-styles.php:507
 
 
 
 
369
  msgid "Disable submit button until form is valid"
370
  msgstr ""
371
 
372
- #: inc/classes/class-form-styles.php:512 inc/classes/class-form-styles.php:579
373
- #: inc/classes/class-form-styles.php:647 inc/classes/class-form-styles.php:815
 
 
 
 
374
  msgid "Colors"
375
  msgstr ""
376
 
377
- #: inc/classes/class-form-styles.php:516
378
  msgid "Primary"
379
  msgstr ""
380
 
381
- #: inc/classes/class-form-styles.php:521
382
  msgid "Success"
383
  msgstr ""
384
 
385
- #: inc/classes/class-form-styles.php:526
386
  msgid "Error"
387
  msgstr ""
388
 
389
- #: inc/classes/class-form-styles.php:531 inc/classes/class-form-styles.php:535
390
  msgid "Form title"
391
  msgstr ""
392
 
393
- #: inc/classes/class-form-styles.php:540 inc/classes/class-form-styles.php:804
 
 
 
 
394
  msgid "Alignment"
395
  msgstr ""
396
 
397
- #: inc/classes/class-form-styles.php:545
398
  msgid "Font size"
399
  msgstr ""
400
 
401
- #: inc/classes/class-form-styles.php:550
402
  msgid "Part borders & spacing"
403
  msgstr ""
404
 
405
- #: inc/classes/class-form-styles.php:554 inc/classes/class-form-styles.php:583
406
- #: inc/classes/class-form-styles.php:774 inc/classes/class-form-styles.php:829
407
  msgid "Border"
408
  msgstr ""
409
 
410
- #: inc/classes/class-form-styles.php:559
411
  msgid "Border location"
412
  msgstr ""
413
 
414
- #: inc/classes/class-form-styles.php:564 inc/classes/class-form-styles.php:779
415
  msgid "Border radius"
416
  msgstr ""
417
 
418
- #: inc/classes/class-form-styles.php:569
419
  msgid "Outer padding"
420
  msgstr ""
421
 
422
- #: inc/classes/class-form-styles.php:574
423
  msgid "Inner padding"
424
  msgstr ""
425
 
426
- #: inc/classes/class-form-styles.php:588
427
  msgid "Border on focus"
428
  msgstr ""
429
 
430
- #: inc/classes/class-form-styles.php:593 inc/classes/class-form-styles.php:671
431
- #: inc/classes/class-form-styles.php:680 inc/classes/class-form-styles.php:819
432
  msgid "Background"
433
  msgstr ""
434
 
435
- #: inc/classes/class-form-styles.php:598
436
  msgid "Background on focus"
437
  msgstr ""
438
 
439
- #: inc/classes/class-form-styles.php:603
440
  msgid "Part labels & text"
441
  msgstr ""
442
 
443
- #: inc/classes/class-form-styles.php:607
444
  msgid "Toggle placeholder on part focus"
445
  msgstr ""
446
 
447
- #: inc/classes/class-form-styles.php:612
448
  msgid "Title alignment"
449
  msgstr ""
450
 
451
- #: inc/classes/class-form-styles.php:617
452
  msgid "Title font size"
453
  msgstr ""
454
 
455
- #: inc/classes/class-form-styles.php:622
456
  msgid "Title font weight"
457
  msgstr ""
458
 
459
- #: inc/classes/class-form-styles.php:627
460
  msgid "Description alignment"
461
  msgstr ""
462
 
463
- #: inc/classes/class-form-styles.php:632
464
  msgid "Description font size"
465
  msgstr ""
466
 
467
- #: inc/classes/class-form-styles.php:637
468
  msgid "Placeholder &amp; Value alignment"
469
  msgstr ""
470
 
471
- #: inc/classes/class-form-styles.php:642
472
  msgid "Value font size"
473
  msgstr ""
474
 
475
- #: inc/classes/class-form-styles.php:651
476
  #: inc/classes/parts/class-part-title.php:8
477
  #: inc/classes/parts/class-part-title.php:30
478
  #: inc/templates/parts/customize-address.php:4
@@ -496,11 +540,11 @@ msgstr ""
496
  msgid "Title"
497
  msgstr ""
498
 
499
- #: inc/classes/class-form-styles.php:656
500
  msgid "Value"
501
  msgstr ""
502
 
503
- #: inc/classes/class-form-styles.php:661
504
  #: inc/classes/parts/class-part-placeholder.php:8
505
  #: inc/templates/parts/customize-address.php:36
506
  #: inc/templates/parts/customize-email.php:36
@@ -514,15 +558,15 @@ msgstr ""
514
  msgid "Placeholder"
515
  msgstr ""
516
 
517
- #: inc/classes/class-form-styles.php:666
518
  msgid "Dropdowns"
519
  msgstr ""
520
 
521
- #: inc/classes/class-form-styles.php:676
522
  msgid "Items"
523
  msgstr ""
524
 
525
- #: inc/classes/class-form-styles.php:685 inc/classes/class-form-styles.php:834
526
  #: inc/classes/parts/class-part-multi-line-text.php:29
527
  #: inc/classes/parts/class-part-rich-text.php:31
528
  #: inc/classes/parts/class-part-single-line-text.php:29
@@ -530,112 +574,85 @@ msgstr ""
530
  msgid "Text"
531
  msgstr ""
532
 
533
- #: inc/classes/class-form-styles.php:690 inc/classes/class-form-styles.php:824
534
  msgid "Background focused"
535
  msgstr ""
536
 
537
- #: inc/classes/class-form-styles.php:695 inc/classes/class-form-styles.php:839
538
  msgid "Text focused"
539
  msgstr ""
540
 
541
- #: inc/classes/class-form-styles.php:700
542
  msgid "Checkboxes & Radios"
543
  msgstr ""
544
 
545
- #: inc/classes/class-form-styles.php:705
546
  msgid "Checkbox & Radio background"
547
  msgstr ""
548
 
549
- #: inc/classes/class-form-styles.php:710
550
  msgid "Checkbox & Radio background focused"
551
  msgstr ""
552
 
553
- #: inc/classes/class-form-styles.php:715
554
  msgid "Checkbox & Radio checkmark"
555
  msgstr ""
556
 
557
- #: inc/classes/class-form-styles.php:720
558
  #: inc/classes/parts/class-part-rating.php:9
559
  #: inc/classes/parts/class-part-rating.php:31
560
  msgid "Rating"
561
  msgstr ""
562
 
563
- #: inc/classes/class-form-styles.php:725
564
  msgid "Rating star color"
565
  msgstr ""
566
 
567
- #: inc/classes/class-form-styles.php:730
568
  msgid "Rating star color on hover"
569
  msgstr ""
570
 
571
- #: inc/classes/class-form-styles.php:735
572
  msgid "Item background"
573
  msgstr ""
574
 
575
- #: inc/classes/class-form-styles.php:740
576
  msgid "Item background on hover"
577
  msgstr ""
578
 
579
- #: inc/classes/class-form-styles.php:745
580
  msgid "Tables"
581
  msgstr ""
582
 
583
- #: inc/classes/class-form-styles.php:750
584
  msgid "Odd row primary"
585
  msgstr ""
586
 
587
- #: inc/classes/class-form-styles.php:755
588
  msgid "Odd row secondary"
589
  msgstr ""
590
 
591
- #: inc/classes/class-form-styles.php:760
592
  msgid "Even row primary"
593
  msgstr ""
594
 
595
- #: inc/classes/class-form-styles.php:765
596
  msgid "Even row secondary"
597
  msgstr ""
598
 
599
- #: inc/classes/class-form-styles.php:770
600
  msgid "Submit button"
601
  msgstr ""
602
 
603
- #: inc/classes/class-form-styles.php:784
604
- #: inc/templates/parts/customize-address.php:78
605
- #: inc/templates/parts/customize-checkbox.php:67
606
- #: inc/templates/parts/customize-date.php:103
607
- #: inc/templates/parts/customize-email.php:46
608
- #: inc/templates/parts/customize-legal.php:4
609
- #: inc/templates/parts/customize-multi-line-text.php:46
610
- #: inc/templates/parts/customize-narrative.php:32
611
- #: inc/templates/parts/customize-number.php:77
612
- #: inc/templates/parts/customize-phone.php:69
613
- #: inc/templates/parts/customize-placeholder.php:27
614
- #: inc/templates/parts/customize-radio.php:67
615
- #: inc/templates/parts/customize-rating.php:74
616
- #: inc/templates/parts/customize-rich-text.php:40
617
- #: inc/templates/parts/customize-scale.php:86
618
- #: inc/templates/parts/customize-select.php:70
619
- #: inc/templates/parts/customize-single-line-text.php:51
620
- #: inc/templates/parts/customize-table.php:83
621
- #: inc/templates/parts/customize-title.php:44
622
- #: inc/templates/parts/customize-website-url.php:46
623
- msgid "Width"
624
- msgstr ""
625
-
626
- #: inc/classes/class-form-styles.php:789
627
- msgid "Padding"
628
- msgstr ""
629
-
630
- #: inc/classes/class-form-styles.php:794
631
  msgid "Font Size"
632
  msgstr ""
633
 
634
- #: inc/classes/class-form-styles.php:799
635
  msgid "Font Weight"
636
  msgstr ""
637
 
638
- #: inc/classes/class-form-styles.php:810
639
  msgid "Make button a part of last input"
640
  msgstr ""
641
 
@@ -787,12 +804,12 @@ msgid "All forms"
787
  msgstr ""
788
 
789
  #: inc/classes/class-message-admin.php:609
790
- #: inc/classes/class-message-admin.php:859
791
  msgid "Mark read"
792
  msgstr ""
793
 
794
  #: inc/classes/class-message-admin.php:610
795
- #: inc/classes/class-message-admin.php:859
796
  msgid "Mark unread"
797
  msgstr ""
798
 
@@ -808,27 +825,27 @@ msgstr ""
808
  msgid "Delete Permanently"
809
  msgstr ""
810
 
811
- #: inc/classes/class-message-admin.php:834
812
  msgid "Details"
813
  msgstr ""
814
 
815
- #: inc/classes/class-message-admin.php:854
816
  msgid "Submitted on"
817
  msgstr ""
818
 
819
- #: inc/classes/class-message-admin.php:854
820
  msgid "M j, Y @ H:i"
821
  msgstr ""
822
 
823
- #: inc/classes/class-message-admin.php:859
824
  msgid "Status"
825
  msgstr ""
826
 
827
- #: inc/classes/class-message-admin.php:859
828
  msgid "Read"
829
  msgstr ""
830
 
831
- #: inc/classes/class-message-admin.php:859
832
  msgid "Unread"
833
  msgstr ""
834
 
@@ -966,8 +983,8 @@ msgstr ""
966
  #: inc/classes/parts/class-part-address.php:191
967
  #: inc/classes/parts/class-part-checkbox.php:167
968
  #: inc/classes/parts/class-part-date.php:206
969
- #: inc/classes/parts/class-part-email.php:141
970
- #: inc/classes/parts/class-part-email.php:145
971
  #: inc/classes/parts/class-part-legal.php:115
972
  #: inc/classes/parts/class-part-multi-line-text.php:142
973
  #: inc/classes/parts/class-part-narrative.php:125
@@ -1040,7 +1057,7 @@ msgid "Not a valid date."
1040
  msgstr ""
1041
 
1042
  #: inc/classes/parts/class-part-email.php:8
1043
- #: inc/classes/parts/class-part-email.php:29
1044
  msgid "Email"
1045
  msgstr ""
1046
 
@@ -1048,15 +1065,15 @@ msgstr ""
1048
  msgid "For formatted email addresses. The '@' symbol is required."
1049
  msgstr ""
1050
 
1051
- #: inc/classes/parts/class-part-email.php:49
1052
  msgid "Confirm Email"
1053
  msgstr ""
1054
 
1055
- #: inc/classes/parts/class-part-email.php:149
1056
  msgid "Not a valid e-mail address."
1057
  msgstr ""
1058
 
1059
- #: inc/classes/parts/class-part-email.php:153
1060
  msgid "Email and confirmation email are not matching."
1061
  msgstr ""
1062
 
@@ -1328,939 +1345,939 @@ msgstr ""
1328
  msgid "How can I access my premium upgrade credentials?"
1329
  msgstr ""
1330
 
1331
- #: inc/helpers/helper-form-templates.php:758
1332
  msgid "(optional)"
1333
  msgstr ""
1334
 
1335
- #: inc/helpers/helper-form-templates.php:819
1336
  msgid "Get my location"
1337
  msgstr ""
1338
 
1339
- #: inc/helpers/helper-form-templates.php:819
1340
  msgid "Fetching location…"
1341
  msgstr ""
1342
 
1343
- #: inc/helpers/helper-form-templates.php:830
1344
  msgid "January"
1345
  msgstr ""
1346
 
1347
- #: inc/helpers/helper-form-templates.php:831
1348
  msgid "February"
1349
  msgstr ""
1350
 
1351
- #: inc/helpers/helper-form-templates.php:832
1352
  msgid "March"
1353
  msgstr ""
1354
 
1355
- #: inc/helpers/helper-form-templates.php:833
1356
  msgid "April"
1357
  msgstr ""
1358
 
1359
- #: inc/helpers/helper-form-templates.php:834
1360
  msgid "May"
1361
  msgstr ""
1362
 
1363
- #: inc/helpers/helper-form-templates.php:835
1364
  msgid "June"
1365
  msgstr ""
1366
 
1367
- #: inc/helpers/helper-form-templates.php:836
1368
  msgid "July"
1369
  msgstr ""
1370
 
1371
- #: inc/helpers/helper-form-templates.php:837
1372
  msgid "August"
1373
  msgstr ""
1374
 
1375
- #: inc/helpers/helper-form-templates.php:838
1376
  msgid "September"
1377
  msgstr ""
1378
 
1379
- #: inc/helpers/helper-form-templates.php:839
1380
  msgid "October"
1381
  msgstr ""
1382
 
1383
- #: inc/helpers/helper-form-templates.php:840
1384
  msgid "November"
1385
  msgstr ""
1386
 
1387
- #: inc/helpers/helper-form-templates.php:841
1388
  msgid "December"
1389
  msgstr ""
1390
 
1391
- #: inc/helpers/helper-form-templates.php:872 inc/helpers/helper-misc.php:248
1392
  msgid "Andorra"
1393
  msgstr ""
1394
 
1395
- #: inc/helpers/helper-form-templates.php:873 inc/helpers/helper-misc.php:466
1396
  msgid "United Arab Emirates"
1397
  msgstr ""
1398
 
1399
- #: inc/helpers/helper-form-templates.php:874 inc/helpers/helper-misc.php:244
1400
  msgid "Afghanistan"
1401
  msgstr ""
1402
 
1403
- #: inc/helpers/helper-form-templates.php:875 inc/helpers/helper-misc.php:252
1404
  msgid "Antigua and Barbuda"
1405
  msgstr ""
1406
 
1407
- #: inc/helpers/helper-form-templates.php:876 inc/helpers/helper-misc.php:250
1408
  msgid "Anguilla"
1409
  msgstr ""
1410
 
1411
- #: inc/helpers/helper-form-templates.php:877 inc/helpers/helper-misc.php:245
1412
  msgid "Albania"
1413
  msgstr ""
1414
 
1415
- #: inc/helpers/helper-form-templates.php:878 inc/helpers/helper-misc.php:254
1416
  msgid "Armenia"
1417
  msgstr ""
1418
 
1419
- #: inc/helpers/helper-form-templates.php:879 inc/helpers/helper-misc.php:249
1420
  msgid "Angola"
1421
  msgstr ""
1422
 
1423
- #: inc/helpers/helper-form-templates.php:880 inc/helpers/helper-misc.php:251
1424
  msgid "Antarctica"
1425
  msgstr ""
1426
 
1427
- #: inc/helpers/helper-form-templates.php:881 inc/helpers/helper-misc.php:253
1428
  msgid "Argentina"
1429
  msgstr ""
1430
 
1431
- #: inc/helpers/helper-form-templates.php:882 inc/helpers/helper-misc.php:247
1432
  msgid "American Samoa"
1433
  msgstr ""
1434
 
1435
- #: inc/helpers/helper-form-templates.php:883 inc/helpers/helper-misc.php:257
1436
  msgid "Austria"
1437
  msgstr ""
1438
 
1439
- #: inc/helpers/helper-form-templates.php:884 inc/helpers/helper-misc.php:256
1440
  msgid "Australia"
1441
  msgstr ""
1442
 
1443
- #: inc/helpers/helper-form-templates.php:885 inc/helpers/helper-misc.php:255
1444
  msgid "Aruba"
1445
  msgstr ""
1446
 
1447
- #: inc/helpers/helper-form-templates.php:886 inc/helpers/helper-misc.php:258
1448
  msgid "Azerbaijan"
1449
  msgstr ""
1450
 
1451
- #: inc/helpers/helper-form-templates.php:887
1452
  msgid "Bosnia and Herzegovina"
1453
  msgstr ""
1454
 
1455
- #: inc/helpers/helper-form-templates.php:888 inc/helpers/helper-misc.php:262
1456
  msgid "Barbados"
1457
  msgstr ""
1458
 
1459
- #: inc/helpers/helper-form-templates.php:889 inc/helpers/helper-misc.php:261
1460
  msgid "Bangladesh"
1461
  msgstr ""
1462
 
1463
- #: inc/helpers/helper-form-templates.php:890 inc/helpers/helper-misc.php:264
1464
  msgid "Belgium"
1465
  msgstr ""
1466
 
1467
- #: inc/helpers/helper-form-templates.php:891 inc/helpers/helper-misc.php:277
1468
  msgid "Burkina Faso"
1469
  msgstr ""
1470
 
1471
- #: inc/helpers/helper-form-templates.php:892 inc/helpers/helper-misc.php:276
1472
  msgid "Bulgaria"
1473
  msgstr ""
1474
 
1475
- #: inc/helpers/helper-form-templates.php:893 inc/helpers/helper-misc.php:260
1476
  msgid "Bahrain"
1477
  msgstr ""
1478
 
1479
- #: inc/helpers/helper-form-templates.php:894 inc/helpers/helper-misc.php:278
1480
  msgid "Burundi"
1481
  msgstr ""
1482
 
1483
- #: inc/helpers/helper-form-templates.php:895 inc/helpers/helper-misc.php:266
1484
  msgid "Benin"
1485
  msgstr ""
1486
 
1487
- #: inc/helpers/helper-form-templates.php:896
1488
  msgid "Saint Barthelemy"
1489
  msgstr ""
1490
 
1491
- #: inc/helpers/helper-form-templates.php:897 inc/helpers/helper-misc.php:267
1492
  msgid "Bermuda"
1493
  msgstr ""
1494
 
1495
- #: inc/helpers/helper-form-templates.php:898 inc/helpers/helper-misc.php:275
1496
  msgid "Brunei Darussalam"
1497
  msgstr ""
1498
 
1499
- #: inc/helpers/helper-form-templates.php:899 inc/helpers/helper-misc.php:269
1500
  msgid "Bolivia"
1501
  msgstr ""
1502
 
1503
- #: inc/helpers/helper-form-templates.php:900 inc/helpers/helper-misc.php:273
1504
  msgid "Brazil"
1505
  msgstr ""
1506
 
1507
- #: inc/helpers/helper-form-templates.php:901 inc/helpers/helper-misc.php:259
1508
  msgid "Bahamas"
1509
  msgstr ""
1510
 
1511
- #: inc/helpers/helper-form-templates.php:902 inc/helpers/helper-misc.php:268
1512
  msgid "Bhutan"
1513
  msgstr ""
1514
 
1515
- #: inc/helpers/helper-form-templates.php:903 inc/helpers/helper-misc.php:271
1516
  msgid "Botswana"
1517
  msgstr ""
1518
 
1519
- #: inc/helpers/helper-form-templates.php:904 inc/helpers/helper-misc.php:263
1520
  msgid "Belarus"
1521
  msgstr ""
1522
 
1523
- #: inc/helpers/helper-form-templates.php:905 inc/helpers/helper-misc.php:265
1524
  msgid "Belize"
1525
  msgstr ""
1526
 
1527
- #: inc/helpers/helper-form-templates.php:906 inc/helpers/helper-misc.php:281
1528
  msgid "Canada"
1529
  msgstr ""
1530
 
1531
- #: inc/helpers/helper-form-templates.php:907
1532
  msgid "Congo, The Democratic Republic of the"
1533
  msgstr ""
1534
 
1535
- #: inc/helpers/helper-form-templates.php:908 inc/helpers/helper-misc.php:284
1536
  msgid "Central African Republic"
1537
  msgstr ""
1538
 
1539
- #: inc/helpers/helper-form-templates.php:909 inc/helpers/helper-misc.php:292
1540
  msgid "Congo"
1541
  msgstr ""
1542
 
1543
- #: inc/helpers/helper-form-templates.php:910 inc/helpers/helper-misc.php:449
1544
  msgid "Switzerland"
1545
  msgstr ""
1546
 
1547
- #: inc/helpers/helper-form-templates.php:911 inc/helpers/helper-misc.php:294
1548
  msgid "Cook Islands"
1549
  msgstr ""
1550
 
1551
- #: inc/helpers/helper-form-templates.php:912 inc/helpers/helper-misc.php:286
1552
  msgid "Chile"
1553
  msgstr ""
1554
 
1555
- #: inc/helpers/helper-form-templates.php:913 inc/helpers/helper-misc.php:280
1556
  msgid "Cameroon"
1557
  msgstr ""
1558
 
1559
- #: inc/helpers/helper-form-templates.php:914 inc/helpers/helper-misc.php:287
1560
  msgid "China"
1561
  msgstr ""
1562
 
1563
- #: inc/helpers/helper-form-templates.php:915 inc/helpers/helper-misc.php:290
1564
  msgid "Colombia"
1565
  msgstr ""
1566
 
1567
- #: inc/helpers/helper-form-templates.php:916 inc/helpers/helper-misc.php:295
1568
  msgid "Costa Rica"
1569
  msgstr ""
1570
 
1571
- #: inc/helpers/helper-form-templates.php:917 inc/helpers/helper-misc.php:298
1572
  msgid "Cuba"
1573
  msgstr ""
1574
 
1575
- #: inc/helpers/helper-form-templates.php:918 inc/helpers/helper-misc.php:282
1576
  msgid "Cape Verde"
1577
  msgstr ""
1578
 
1579
- #: inc/helpers/helper-form-templates.php:919 inc/helpers/helper-misc.php:299
1580
  msgid "Cyprus"
1581
  msgstr ""
1582
 
1583
- #: inc/helpers/helper-form-templates.php:920 inc/helpers/helper-misc.php:300
1584
  msgid "Czech Republic"
1585
  msgstr ""
1586
 
1587
- #: inc/helpers/helper-form-templates.php:921 inc/helpers/helper-misc.php:325
1588
  msgid "Germany"
1589
  msgstr ""
1590
 
1591
- #: inc/helpers/helper-form-templates.php:922 inc/helpers/helper-misc.php:302
1592
  msgid "Djibouti"
1593
  msgstr ""
1594
 
1595
- #: inc/helpers/helper-form-templates.php:923 inc/helpers/helper-misc.php:301
1596
  msgid "Denmark"
1597
  msgstr ""
1598
 
1599
- #: inc/helpers/helper-form-templates.php:924 inc/helpers/helper-misc.php:303
1600
  msgid "Dominica"
1601
  msgstr ""
1602
 
1603
- #: inc/helpers/helper-form-templates.php:925 inc/helpers/helper-misc.php:304
1604
  msgid "Dominican Republic"
1605
  msgstr ""
1606
 
1607
- #: inc/helpers/helper-form-templates.php:926 inc/helpers/helper-misc.php:246
1608
  msgid "Algeria"
1609
  msgstr ""
1610
 
1611
- #: inc/helpers/helper-form-templates.php:927 inc/helpers/helper-misc.php:306
1612
  msgid "Ecuador"
1613
  msgstr ""
1614
 
1615
- #: inc/helpers/helper-form-templates.php:928 inc/helpers/helper-misc.php:311
1616
  msgid "Estonia"
1617
  msgstr ""
1618
 
1619
- #: inc/helpers/helper-form-templates.php:929 inc/helpers/helper-misc.php:307
1620
  msgid "Egypt"
1621
  msgstr ""
1622
 
1623
- #: inc/helpers/helper-form-templates.php:930 inc/helpers/helper-misc.php:310
1624
  msgid "Eritrea"
1625
  msgstr ""
1626
 
1627
- #: inc/helpers/helper-form-templates.php:931 inc/helpers/helper-misc.php:440
1628
  msgid "Spain"
1629
  msgstr ""
1630
 
1631
- #: inc/helpers/helper-form-templates.php:932 inc/helpers/helper-misc.php:312
1632
  msgid "Ethiopia"
1633
  msgstr ""
1634
 
1635
- #: inc/helpers/helper-form-templates.php:933 inc/helpers/helper-misc.php:316
1636
  msgid "Finland"
1637
  msgstr ""
1638
 
1639
- #: inc/helpers/helper-form-templates.php:934 inc/helpers/helper-misc.php:315
1640
  msgid "Fiji"
1641
  msgstr ""
1642
 
1643
- #: inc/helpers/helper-form-templates.php:935 inc/helpers/helper-misc.php:313
1644
  msgid "Falkland Islands (Malvinas)"
1645
  msgstr ""
1646
 
1647
- #: inc/helpers/helper-form-templates.php:936 inc/helpers/helper-misc.php:384
1648
  msgid "Micronesia, Federated States of"
1649
  msgstr ""
1650
 
1651
- #: inc/helpers/helper-form-templates.php:937 inc/helpers/helper-misc.php:314
1652
  msgid "Faroe Islands"
1653
  msgstr ""
1654
 
1655
- #: inc/helpers/helper-form-templates.php:938 inc/helpers/helper-misc.php:317
1656
  msgid "France"
1657
  msgstr ""
1658
 
1659
- #: inc/helpers/helper-form-templates.php:939 inc/helpers/helper-misc.php:322
1660
  msgid "Gabon"
1661
  msgstr ""
1662
 
1663
- #: inc/helpers/helper-form-templates.php:940 inc/helpers/helper-misc.php:467
1664
  msgid "United Kingdom"
1665
  msgstr ""
1666
 
1667
- #: inc/helpers/helper-form-templates.php:941 inc/helpers/helper-misc.php:330
1668
  msgid "Grenada"
1669
  msgstr ""
1670
 
1671
- #: inc/helpers/helper-form-templates.php:942 inc/helpers/helper-misc.php:324
1672
  msgid "Georgia"
1673
  msgstr ""
1674
 
1675
- #: inc/helpers/helper-form-templates.php:943 inc/helpers/helper-misc.php:326
1676
  msgid "Ghana"
1677
  msgstr ""
1678
 
1679
- #: inc/helpers/helper-form-templates.php:944 inc/helpers/helper-misc.php:327
1680
  msgid "Gibraltar"
1681
  msgstr ""
1682
 
1683
- #: inc/helpers/helper-form-templates.php:945 inc/helpers/helper-misc.php:329
1684
  msgid "Greenland"
1685
  msgstr ""
1686
 
1687
- #: inc/helpers/helper-form-templates.php:946 inc/helpers/helper-misc.php:323
1688
  msgid "Gambia"
1689
  msgstr ""
1690
 
1691
- #: inc/helpers/helper-form-templates.php:947 inc/helpers/helper-misc.php:334
1692
  msgid "Guinea"
1693
  msgstr ""
1694
 
1695
- #: inc/helpers/helper-form-templates.php:948 inc/helpers/helper-misc.php:328
1696
  msgid "Greece"
1697
  msgstr ""
1698
 
1699
- #: inc/helpers/helper-form-templates.php:949 inc/helpers/helper-misc.php:333
1700
  msgid "Guatemala"
1701
  msgstr ""
1702
 
1703
- #: inc/helpers/helper-form-templates.php:950 inc/helpers/helper-misc.php:332
1704
  msgid "Guam"
1705
  msgstr ""
1706
 
1707
- #: inc/helpers/helper-form-templates.php:951
1708
  msgid "Guinea-bissau"
1709
  msgstr ""
1710
 
1711
- #: inc/helpers/helper-form-templates.php:952 inc/helpers/helper-misc.php:336
1712
  msgid "Guyana"
1713
  msgstr ""
1714
 
1715
- #: inc/helpers/helper-form-templates.php:953 inc/helpers/helper-misc.php:341
1716
  msgid "Hong Kong"
1717
  msgstr ""
1718
 
1719
- #: inc/helpers/helper-form-templates.php:954 inc/helpers/helper-misc.php:340
1720
  msgid "Honduras"
1721
  msgstr ""
1722
 
1723
- #: inc/helpers/helper-form-templates.php:955
1724
  msgid "Croatia"
1725
  msgstr ""
1726
 
1727
- #: inc/helpers/helper-form-templates.php:956 inc/helpers/helper-misc.php:337
1728
  msgid "Haiti"
1729
  msgstr ""
1730
 
1731
- #: inc/helpers/helper-form-templates.php:957 inc/helpers/helper-misc.php:342
1732
  msgid "Hungary"
1733
  msgstr ""
1734
 
1735
- #: inc/helpers/helper-form-templates.php:958 inc/helpers/helper-misc.php:345
1736
  msgid "Indonesia"
1737
  msgstr ""
1738
 
1739
- #: inc/helpers/helper-form-templates.php:959 inc/helpers/helper-misc.php:348
1740
  msgid "Ireland"
1741
  msgstr ""
1742
 
1743
- #: inc/helpers/helper-form-templates.php:960 inc/helpers/helper-misc.php:349
1744
  msgid "Israel"
1745
  msgstr ""
1746
 
1747
- #: inc/helpers/helper-form-templates.php:961 inc/helpers/helper-misc.php:344
1748
  msgid "India"
1749
  msgstr ""
1750
 
1751
- #: inc/helpers/helper-form-templates.php:962 inc/helpers/helper-misc.php:347
1752
  msgid "Iraq"
1753
  msgstr ""
1754
 
1755
- #: inc/helpers/helper-form-templates.php:963
1756
  msgid "Iran, Islamic Republic of"
1757
  msgstr ""
1758
 
1759
- #: inc/helpers/helper-form-templates.php:964 inc/helpers/helper-misc.php:343
1760
  msgid "Iceland"
1761
  msgstr ""
1762
 
1763
- #: inc/helpers/helper-form-templates.php:965 inc/helpers/helper-misc.php:350
1764
  msgid "Italy"
1765
  msgstr ""
1766
 
1767
- #: inc/helpers/helper-form-templates.php:966 inc/helpers/helper-misc.php:351
1768
  msgid "Jamaica"
1769
  msgstr ""
1770
 
1771
- #: inc/helpers/helper-form-templates.php:967 inc/helpers/helper-misc.php:353
1772
  msgid "Jordan"
1773
  msgstr ""
1774
 
1775
- #: inc/helpers/helper-form-templates.php:968 inc/helpers/helper-misc.php:352
1776
  msgid "Japan"
1777
  msgstr ""
1778
 
1779
- #: inc/helpers/helper-form-templates.php:969 inc/helpers/helper-misc.php:355
1780
  msgid "Kenya"
1781
  msgstr ""
1782
 
1783
- #: inc/helpers/helper-form-templates.php:970 inc/helpers/helper-misc.php:360
1784
  msgid "Kyrgyzstan"
1785
  msgstr ""
1786
 
1787
- #: inc/helpers/helper-form-templates.php:971 inc/helpers/helper-misc.php:279
1788
  msgid "Cambodia"
1789
  msgstr ""
1790
 
1791
- #: inc/helpers/helper-form-templates.php:972 inc/helpers/helper-misc.php:356
1792
  msgid "Kiribati"
1793
  msgstr ""
1794
 
1795
- #: inc/helpers/helper-form-templates.php:973 inc/helpers/helper-misc.php:291
1796
  msgid "Comoros"
1797
  msgstr ""
1798
 
1799
- #: inc/helpers/helper-form-templates.php:974 inc/helpers/helper-misc.php:423
1800
  msgid "Saint Kitts and Nevis"
1801
  msgstr ""
1802
 
1803
- #: inc/helpers/helper-form-templates.php:975
1804
  msgid "Korea Democratic Peoples Republic of"
1805
  msgstr ""
1806
 
1807
- #: inc/helpers/helper-form-templates.php:976
1808
  msgid "Korea Republic of"
1809
  msgstr ""
1810
 
1811
- #: inc/helpers/helper-form-templates.php:977 inc/helpers/helper-misc.php:359
1812
  msgid "Kuwait"
1813
  msgstr ""
1814
 
1815
- #: inc/helpers/helper-form-templates.php:978 inc/helpers/helper-misc.php:283
1816
  msgid "Cayman Islands"
1817
  msgstr ""
1818
 
1819
- #: inc/helpers/helper-form-templates.php:979
1820
  msgid "Lao Peoples Democratic Republic"
1821
  msgstr ""
1822
 
1823
- #: inc/helpers/helper-form-templates.php:980 inc/helpers/helper-misc.php:363
1824
  msgid "Lebanon"
1825
  msgstr ""
1826
 
1827
- #: inc/helpers/helper-form-templates.php:981 inc/helpers/helper-misc.php:424
1828
  msgid "Saint Lucia"
1829
  msgstr ""
1830
 
1831
- #: inc/helpers/helper-form-templates.php:982 inc/helpers/helper-misc.php:367
1832
  msgid "Liechtenstein"
1833
  msgstr ""
1834
 
1835
- #: inc/helpers/helper-form-templates.php:983 inc/helpers/helper-misc.php:441
1836
  msgid "Sri Lanka"
1837
  msgstr ""
1838
 
1839
- #: inc/helpers/helper-form-templates.php:984 inc/helpers/helper-misc.php:365
1840
  msgid "Liberia"
1841
  msgstr ""
1842
 
1843
- #: inc/helpers/helper-form-templates.php:985 inc/helpers/helper-misc.php:364
1844
  msgid "Lesotho"
1845
  msgstr ""
1846
 
1847
- #: inc/helpers/helper-form-templates.php:986 inc/helpers/helper-misc.php:368
1848
  msgid "Lithuania"
1849
  msgstr ""
1850
 
1851
- #: inc/helpers/helper-form-templates.php:987 inc/helpers/helper-misc.php:369
1852
  msgid "Luxembourg"
1853
  msgstr ""
1854
 
1855
- #: inc/helpers/helper-form-templates.php:988 inc/helpers/helper-misc.php:362
1856
  msgid "Latvia"
1857
  msgstr ""
1858
 
1859
- #: inc/helpers/helper-form-templates.php:989 inc/helpers/helper-misc.php:366
1860
  msgid "Libyan Arab Jamahiriya"
1861
  msgstr ""
1862
 
1863
- #: inc/helpers/helper-form-templates.php:990 inc/helpers/helper-misc.php:389
1864
  msgid "Morocco"
1865
  msgstr ""
1866
 
1867
- #: inc/helpers/helper-form-templates.php:991 inc/helpers/helper-misc.php:386
1868
  msgid "Monaco"
1869
  msgstr ""
1870
 
1871
- #: inc/helpers/helper-form-templates.php:992 inc/helpers/helper-misc.php:385
1872
  msgid "Moldova, Republic of"
1873
  msgstr ""
1874
 
1875
- #: inc/helpers/helper-form-templates.php:993
1876
  msgid "Montenegro"
1877
  msgstr ""
1878
 
1879
- #: inc/helpers/helper-form-templates.php:994 inc/helpers/helper-misc.php:372
1880
  msgid "Madagascar"
1881
  msgstr ""
1882
 
1883
- #: inc/helpers/helper-form-templates.php:995 inc/helpers/helper-misc.php:378
1884
  msgid "Marshall Islands"
1885
  msgstr ""
1886
 
1887
- #: inc/helpers/helper-form-templates.php:996 inc/helpers/helper-misc.php:371
1888
  msgid "Macedonia, The Former Yugoslav Republic of"
1889
  msgstr ""
1890
 
1891
- #: inc/helpers/helper-form-templates.php:997 inc/helpers/helper-misc.php:376
1892
  msgid "Mali"
1893
  msgstr ""
1894
 
1895
- #: inc/helpers/helper-form-templates.php:998 inc/helpers/helper-misc.php:391
1896
  msgid "Myanmar"
1897
  msgstr ""
1898
 
1899
- #: inc/helpers/helper-form-templates.php:999 inc/helpers/helper-misc.php:387
1900
  msgid "Mongolia"
1901
  msgstr ""
1902
 
1903
- #: inc/helpers/helper-form-templates.php:1000 inc/helpers/helper-misc.php:370
1904
  msgid "Macau"
1905
  msgstr ""
1906
 
1907
- #: inc/helpers/helper-form-templates.php:1001 inc/helpers/helper-misc.php:404
1908
  msgid "Northern Mariana Islands"
1909
  msgstr ""
1910
 
1911
- #: inc/helpers/helper-form-templates.php:1002 inc/helpers/helper-misc.php:380
1912
  msgid "Mauritania"
1913
  msgstr ""
1914
 
1915
- #: inc/helpers/helper-form-templates.php:1003 inc/helpers/helper-misc.php:388
1916
  msgid "Montserrat"
1917
  msgstr ""
1918
 
1919
- #: inc/helpers/helper-form-templates.php:1004 inc/helpers/helper-misc.php:377
1920
  msgid "Malta"
1921
  msgstr ""
1922
 
1923
- #: inc/helpers/helper-form-templates.php:1005 inc/helpers/helper-misc.php:381
1924
  msgid "Mauritius"
1925
  msgstr ""
1926
 
1927
- #: inc/helpers/helper-form-templates.php:1006 inc/helpers/helper-misc.php:375
1928
  msgid "Maldives"
1929
  msgstr ""
1930
 
1931
- #: inc/helpers/helper-form-templates.php:1007 inc/helpers/helper-misc.php:373
1932
  msgid "Malawi"
1933
  msgstr ""
1934
 
1935
- #: inc/helpers/helper-form-templates.php:1008 inc/helpers/helper-misc.php:383
1936
  msgid "Mexico"
1937
  msgstr ""
1938
 
1939
- #: inc/helpers/helper-form-templates.php:1009 inc/helpers/helper-misc.php:374
1940
  msgid "Malaysia"
1941
  msgstr ""
1942
 
1943
- #: inc/helpers/helper-form-templates.php:1010 inc/helpers/helper-misc.php:390
1944
  msgid "Mozambique"
1945
  msgstr ""
1946
 
1947
- #: inc/helpers/helper-form-templates.php:1011 inc/helpers/helper-misc.php:392
1948
  msgid "Namibia"
1949
  msgstr ""
1950
 
1951
- #: inc/helpers/helper-form-templates.php:1012 inc/helpers/helper-misc.php:397
1952
  msgid "New Caledonia"
1953
  msgstr ""
1954
 
1955
- #: inc/helpers/helper-form-templates.php:1013 inc/helpers/helper-misc.php:400
1956
  msgid "Niger"
1957
  msgstr ""
1958
 
1959
- #: inc/helpers/helper-form-templates.php:1014 inc/helpers/helper-misc.php:401
1960
  msgid "Nigeria"
1961
  msgstr ""
1962
 
1963
- #: inc/helpers/helper-form-templates.php:1015 inc/helpers/helper-misc.php:399
1964
  msgid "Nicaragua"
1965
  msgstr ""
1966
 
1967
- #: inc/helpers/helper-form-templates.php:1016 inc/helpers/helper-misc.php:395
1968
  msgid "Netherlands"
1969
  msgstr ""
1970
 
1971
- #: inc/helpers/helper-form-templates.php:1017 inc/helpers/helper-misc.php:405
1972
  msgid "Norway"
1973
  msgstr ""
1974
 
1975
- #: inc/helpers/helper-form-templates.php:1018 inc/helpers/helper-misc.php:394
1976
  msgid "Nepal"
1977
  msgstr ""
1978
 
1979
- #: inc/helpers/helper-form-templates.php:1019 inc/helpers/helper-misc.php:393
1980
  msgid "Nauru"
1981
  msgstr ""
1982
 
1983
- #: inc/helpers/helper-form-templates.php:1020 inc/helpers/helper-misc.php:402
1984
  msgid "Niue"
1985
  msgstr ""
1986
 
1987
- #: inc/helpers/helper-form-templates.php:1021 inc/helpers/helper-misc.php:398
1988
  msgid "New Zealand"
1989
  msgstr ""
1990
 
1991
- #: inc/helpers/helper-form-templates.php:1022 inc/helpers/helper-misc.php:406
1992
  msgid "Oman"
1993
  msgstr ""
1994
 
1995
- #: inc/helpers/helper-form-templates.php:1023 inc/helpers/helper-misc.php:409
1996
  msgid "Panama"
1997
  msgstr ""
1998
 
1999
- #: inc/helpers/helper-form-templates.php:1024 inc/helpers/helper-misc.php:412
2000
  msgid "Peru"
2001
  msgstr ""
2002
 
2003
- #: inc/helpers/helper-form-templates.php:1025 inc/helpers/helper-misc.php:320
2004
  msgid "French Polynesia"
2005
  msgstr ""
2006
 
2007
- #: inc/helpers/helper-form-templates.php:1026 inc/helpers/helper-misc.php:410
2008
  msgid "Papua New Guinea"
2009
  msgstr ""
2010
 
2011
- #: inc/helpers/helper-form-templates.php:1027 inc/helpers/helper-misc.php:413
2012
  msgid "Philippines"
2013
  msgstr ""
2014
 
2015
- #: inc/helpers/helper-form-templates.php:1028 inc/helpers/helper-misc.php:407
2016
  msgid "Pakistan"
2017
  msgstr ""
2018
 
2019
- #: inc/helpers/helper-form-templates.php:1029 inc/helpers/helper-misc.php:415
2020
  msgid "Poland"
2021
  msgstr ""
2022
 
2023
- #: inc/helpers/helper-form-templates.php:1030
2024
  msgid "Saint Pierre and Miquelon"
2025
  msgstr ""
2026
 
2027
- #: inc/helpers/helper-form-templates.php:1031 inc/helpers/helper-misc.php:414
2028
  msgid "Pitcairn"
2029
  msgstr ""
2030
 
2031
- #: inc/helpers/helper-form-templates.php:1032 inc/helpers/helper-misc.php:416
2032
  msgid "Portugal"
2033
  msgstr ""
2034
 
2035
- #: inc/helpers/helper-form-templates.php:1033 inc/helpers/helper-misc.php:408
2036
  msgid "Palau"
2037
  msgstr ""
2038
 
2039
- #: inc/helpers/helper-form-templates.php:1034 inc/helpers/helper-misc.php:411
2040
  msgid "Paraguay"
2041
  msgstr ""
2042
 
2043
- #: inc/helpers/helper-form-templates.php:1035 inc/helpers/helper-misc.php:418
2044
  msgid "Qatar"
2045
  msgstr ""
2046
 
2047
- #: inc/helpers/helper-form-templates.php:1036 inc/helpers/helper-misc.php:420
2048
  msgid "Romania"
2049
  msgstr ""
2050
 
2051
- #: inc/helpers/helper-form-templates.php:1037
2052
  msgid "Serbia"
2053
  msgstr ""
2054
 
2055
- #: inc/helpers/helper-form-templates.php:1038 inc/helpers/helper-misc.php:421
2056
  msgid "Russian Federation"
2057
  msgstr ""
2058
 
2059
- #: inc/helpers/helper-form-templates.php:1039 inc/helpers/helper-misc.php:422
2060
  msgid "Rwanda"
2061
  msgstr ""
2062
 
2063
- #: inc/helpers/helper-form-templates.php:1040 inc/helpers/helper-misc.php:429
2064
  msgid "Saudi Arabia"
2065
  msgstr ""
2066
 
2067
- #: inc/helpers/helper-form-templates.php:1041 inc/helpers/helper-misc.php:436
2068
  msgid "Solomon Islands"
2069
  msgstr ""
2070
 
2071
- #: inc/helpers/helper-form-templates.php:1042 inc/helpers/helper-misc.php:431
2072
  msgid "Seychelles"
2073
  msgstr ""
2074
 
2075
- #: inc/helpers/helper-form-templates.php:1043 inc/helpers/helper-misc.php:444
2076
  msgid "Sudan"
2077
  msgstr ""
2078
 
2079
- #: inc/helpers/helper-form-templates.php:1044 inc/helpers/helper-misc.php:448
2080
  msgid "Sweden"
2081
  msgstr ""
2082
 
2083
- #: inc/helpers/helper-form-templates.php:1045 inc/helpers/helper-misc.php:433
2084
  msgid "Singapore"
2085
  msgstr ""
2086
 
2087
- #: inc/helpers/helper-form-templates.php:1046
2088
  msgid "Saint Helena"
2089
  msgstr ""
2090
 
2091
- #: inc/helpers/helper-form-templates.php:1047 inc/helpers/helper-misc.php:435
2092
  msgid "Slovenia"
2093
  msgstr ""
2094
 
2095
- #: inc/helpers/helper-form-templates.php:1048
2096
  msgid "Slovakia"
2097
  msgstr ""
2098
 
2099
- #: inc/helpers/helper-form-templates.php:1049 inc/helpers/helper-misc.php:432
2100
  msgid "Sierra Leone"
2101
  msgstr ""
2102
 
2103
- #: inc/helpers/helper-form-templates.php:1050 inc/helpers/helper-misc.php:427
2104
  msgid "San Marino"
2105
  msgstr ""
2106
 
2107
- #: inc/helpers/helper-form-templates.php:1051 inc/helpers/helper-misc.php:430
2108
  msgid "Senegal"
2109
  msgstr ""
2110
 
2111
- #: inc/helpers/helper-form-templates.php:1052 inc/helpers/helper-misc.php:437
2112
  msgid "Somalia"
2113
  msgstr ""
2114
 
2115
- #: inc/helpers/helper-form-templates.php:1053 inc/helpers/helper-misc.php:445
2116
  msgid "Suriname"
2117
  msgstr ""
2118
 
2119
- #: inc/helpers/helper-form-templates.php:1054 inc/helpers/helper-misc.php:428
2120
  msgid "Sao Tome and Principe"
2121
  msgstr ""
2122
 
2123
- #: inc/helpers/helper-form-templates.php:1055 inc/helpers/helper-misc.php:308
2124
  msgid "El Salvador"
2125
  msgstr ""
2126
 
2127
- #: inc/helpers/helper-form-templates.php:1056 inc/helpers/helper-misc.php:450
2128
  msgid "Syrian Arab Republic"
2129
  msgstr ""
2130
 
2131
- #: inc/helpers/helper-form-templates.php:1057 inc/helpers/helper-misc.php:447
2132
  msgid "Swaziland"
2133
  msgstr ""
2134
 
2135
- #: inc/helpers/helper-form-templates.php:1058 inc/helpers/helper-misc.php:462
2136
  msgid "Turks and Caicos Islands"
2137
  msgstr ""
2138
 
2139
- #: inc/helpers/helper-form-templates.php:1059 inc/helpers/helper-misc.php:285
2140
  msgid "Chad"
2141
  msgstr ""
2142
 
2143
- #: inc/helpers/helper-form-templates.php:1060 inc/helpers/helper-misc.php:455
2144
  msgid "Togo"
2145
  msgstr ""
2146
 
2147
- #: inc/helpers/helper-form-templates.php:1061 inc/helpers/helper-misc.php:454
2148
  msgid "Thailand"
2149
  msgstr ""
2150
 
2151
- #: inc/helpers/helper-form-templates.php:1062 inc/helpers/helper-misc.php:452
2152
  msgid "Tajikistan"
2153
  msgstr ""
2154
 
2155
- #: inc/helpers/helper-form-templates.php:1063 inc/helpers/helper-misc.php:456
2156
  msgid "Tokelau"
2157
  msgstr ""
2158
 
2159
- #: inc/helpers/helper-form-templates.php:1064
2160
  msgid "Timor-leste"
2161
  msgstr ""
2162
 
2163
- #: inc/helpers/helper-form-templates.php:1065 inc/helpers/helper-misc.php:461
2164
  msgid "Turkmenistan"
2165
  msgstr ""
2166
 
2167
- #: inc/helpers/helper-form-templates.php:1066 inc/helpers/helper-misc.php:459
2168
  msgid "Tunisia"
2169
  msgstr ""
2170
 
2171
- #: inc/helpers/helper-form-templates.php:1067 inc/helpers/helper-misc.php:457
2172
  msgid "Tonga"
2173
  msgstr ""
2174
 
2175
- #: inc/helpers/helper-form-templates.php:1068 inc/helpers/helper-misc.php:460
2176
  msgid "Turkey"
2177
  msgstr ""
2178
 
2179
- #: inc/helpers/helper-form-templates.php:1069 inc/helpers/helper-misc.php:458
2180
  msgid "Trinidad and Tobago"
2181
  msgstr ""
2182
 
2183
- #: inc/helpers/helper-form-templates.php:1070 inc/helpers/helper-misc.php:463
2184
  msgid "Tuvalu"
2185
  msgstr ""
2186
 
2187
- #: inc/helpers/helper-form-templates.php:1071 inc/helpers/helper-misc.php:451
2188
  msgid "Taiwan, Province of China"
2189
  msgstr ""
2190
 
2191
- #: inc/helpers/helper-form-templates.php:1072 inc/helpers/helper-misc.php:453
2192
  msgid "Tanzania, United Republic of"
2193
  msgstr ""
2194
 
2195
- #: inc/helpers/helper-form-templates.php:1073 inc/helpers/helper-misc.php:465
2196
  msgid "Ukraine"
2197
  msgstr ""
2198
 
2199
- #: inc/helpers/helper-form-templates.php:1074 inc/helpers/helper-misc.php:464
2200
  msgid "Uganda"
2201
  msgstr ""
2202
 
2203
- #: inc/helpers/helper-form-templates.php:1075 inc/helpers/helper-misc.php:468
2204
  msgid "United States"
2205
  msgstr ""
2206
 
2207
- #: inc/helpers/helper-form-templates.php:1076 inc/helpers/helper-misc.php:470
2208
  msgid "Uruguay"
2209
  msgstr ""
2210
 
2211
- #: inc/helpers/helper-form-templates.php:1077 inc/helpers/helper-misc.php:471
2212
  msgid "Uzbekistan"
2213
  msgstr ""
2214
 
2215
- #: inc/helpers/helper-form-templates.php:1078 inc/helpers/helper-misc.php:425
2216
  msgid "Saint Vincent and the Grenadines"
2217
  msgstr ""
2218
 
2219
- #: inc/helpers/helper-form-templates.php:1079 inc/helpers/helper-misc.php:473
2220
  msgid "Venezuela"
2221
  msgstr ""
2222
 
2223
- #: inc/helpers/helper-form-templates.php:1080
2224
  msgid "Virgin Islands, British"
2225
  msgstr ""
2226
 
2227
- #: inc/helpers/helper-form-templates.php:1081
2228
  msgid "Virgin Islands, U.S."
2229
  msgstr ""
2230
 
2231
- #: inc/helpers/helper-form-templates.php:1082 inc/helpers/helper-misc.php:474
2232
  msgid "Vietnam"
2233
  msgstr ""
2234
 
2235
- #: inc/helpers/helper-form-templates.php:1083 inc/helpers/helper-misc.php:472
2236
  msgid "Vanuatu"
2237
  msgstr ""
2238
 
2239
- #: inc/helpers/helper-form-templates.php:1084
2240
  msgid "Wallis and Futuna"
2241
  msgstr ""
2242
 
2243
- #: inc/helpers/helper-form-templates.php:1085 inc/helpers/helper-misc.php:426
2244
  msgid "Samoa"
2245
  msgstr ""
2246
 
2247
- #: inc/helpers/helper-form-templates.php:1086 inc/helpers/helper-misc.php:479
2248
  msgid "Yemen"
2249
  msgstr ""
2250
 
2251
- #: inc/helpers/helper-form-templates.php:1087 inc/helpers/helper-misc.php:382
2252
  msgid "Mayotte"
2253
  msgstr ""
2254
 
2255
- #: inc/helpers/helper-form-templates.php:1088 inc/helpers/helper-misc.php:438
2256
  msgid "South Africa"
2257
  msgstr ""
2258
 
2259
- #: inc/helpers/helper-form-templates.php:1089 inc/helpers/helper-misc.php:481
2260
  msgid "Zambia"
2261
  msgstr ""
2262
 
2263
- #: inc/helpers/helper-form-templates.php:1090 inc/helpers/helper-misc.php:482
2264
  msgid "Zimbabwe"
2265
  msgstr ""
2266
 
@@ -2709,14 +2726,18 @@ msgstr ""
2709
  msgid "of"
2710
  msgstr ""
2711
 
2712
- #: inc/templates/customize-form-style.php:29
2713
  msgid "Back"
2714
  msgstr ""
2715
 
2716
- #: inc/templates/customize-form-style.php:32
2717
  msgid "You are customizing"
2718
  msgstr ""
2719
 
 
 
 
 
2720
  #: inc/templates/customize-header-actions.php:3
2721
  msgid "Save Form"
2722
  msgstr ""
@@ -3287,12 +3308,16 @@ msgid "Inside input"
3287
  msgstr ""
3288
 
3289
  #: inc/templates/parts/customize-email.php:65
 
 
 
 
3290
  #: inc/templates/parts/customize-number.php:96
3291
  #: inc/templates/parts/customize-phone.php:88
3292
  msgid "Require confirmation of the value"
3293
  msgstr ""
3294
 
3295
- #: inc/templates/parts/customize-email.php:69
3296
  #: inc/templates/parts/customize-number.php:100
3297
  #: inc/templates/parts/customize-phone.php:92
3298
  msgid "Confirmation field title"
@@ -3464,12 +3489,12 @@ msgstr ""
3464
  msgid "Each row is required"
3465
  msgstr ""
3466
 
3467
- #: inc/templates/parts/frontend-address.php:34
3468
- #: inc/templates/parts/frontend-address.php:46
3469
  msgid "Country"
3470
  msgstr ""
3471
 
3472
- #: inc/templates/parts/frontend-address.php:53
3473
  msgid "City"
3474
  msgstr ""
3475
 
2
  # This file is distributed under the same license as the HappyForms package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: HappyForms 1.6.11\n"
6
  "Report-Msgid-Bugs-To: https://thethemefoundry.com/support/\n"
7
+ "POT-Creation-Date: 2018-11-28 13:58:37+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
150
  msgstr ""
151
 
152
  #: inc/classes/class-form-admin.php:374 inc/classes/class-message-admin.php:611
153
+ #: inc/classes/class-message-admin.php:879
154
  msgid "Trash"
155
  msgstr ""
156
 
158
  msgid "Form duplicated succesfully."
159
  msgstr ""
160
 
161
+ #: inc/classes/class-form-admin.php:447
162
  msgid " Copy"
163
  msgstr ""
164
 
171
 
172
  #: inc/classes/class-form-controller.php:92
173
  #: inc/classes/class-message-admin.php:372
174
+ #: inc/classes/class-message-admin.php:864
175
  msgid "Form"
176
  msgstr ""
177
 
250
  msgid "Missing validation callback for field %s"
251
  msgstr ""
252
 
253
+ #: inc/classes/class-form-styles.php:49
254
  msgid "Left-to-right"
255
  msgstr ""
256
 
257
+ #: inc/classes/class-form-styles.php:50
258
  msgid "Right-to-left"
259
  msgstr ""
260
 
261
+ #: inc/classes/class-form-styles.php:77 inc/classes/class-form-styles.php:145
262
+ #: inc/classes/class-form-styles.php:155 inc/classes/class-form-styles.php:258
263
+ #: inc/classes/class-form-styles.php:268
264
+ msgid "Default"
265
+ msgstr ""
266
+
267
+ #: inc/classes/class-form-styles.php:78 inc/classes/class-form-styles.php:144
268
+ #: inc/classes/class-form-styles.php:154 inc/classes/class-form-styles.php:267
269
+ msgid "Narrow"
270
+ msgstr ""
271
+
272
+ #: inc/classes/class-form-styles.php:79 inc/classes/class-form-styles.php:146
273
+ #: inc/classes/class-form-styles.php:156 inc/classes/class-form-styles.php:269
274
+ msgid "Wide"
275
+ msgstr ""
276
+
277
+ #: inc/classes/class-form-styles.php:87 inc/classes/class-form-styles.php:116
278
+ #: inc/classes/class-form-styles.php:239
279
  #: inc/templates/parts/customize-date.php:33
280
  #: inc/templates/parts/customize-date.php:57
281
  msgid "Show"
282
  msgstr ""
283
 
284
+ #: inc/classes/class-form-styles.php:88 inc/classes/class-form-styles.php:117
285
+ #: inc/classes/class-form-styles.php:240
286
  msgid "Hide"
287
  msgstr ""
288
 
289
+ #: inc/classes/class-form-styles.php:96 inc/classes/class-form-styles.php:170
290
+ #: inc/classes/class-form-styles.php:199 inc/classes/class-form-styles.php:219
291
+ #: inc/classes/class-form-styles.php:296
292
  #: inc/templates/parts/customize-address.php:11
293
  #: inc/templates/parts/customize-checkbox.php:11
294
  #: inc/templates/parts/customize-date.php:11
310
  msgid "Left"
311
  msgstr ""
312
 
313
+ #: inc/classes/class-form-styles.php:97 inc/classes/class-form-styles.php:171
314
+ #: inc/classes/class-form-styles.php:200 inc/classes/class-form-styles.php:220
315
+ #: inc/classes/class-form-styles.php:297
316
  msgid "Center"
317
  msgstr ""
318
 
319
+ #: inc/classes/class-form-styles.php:98 inc/classes/class-form-styles.php:172
320
+ #: inc/classes/class-form-styles.php:201 inc/classes/class-form-styles.php:221
321
+ #: inc/classes/class-form-styles.php:298
322
  msgid "Right"
323
  msgstr ""
324
 
325
+ #: inc/classes/class-form-styles.php:125
326
  msgid "All sides"
327
  msgstr ""
328
 
329
+ #: inc/classes/class-form-styles.php:126
330
  msgid "Bottom only"
331
  msgstr ""
332
 
333
+ #: inc/classes/class-form-styles.php:134 inc/classes/class-form-styles.php:248
334
  msgid "Square"
335
  msgstr ""
336
 
337
+ #: inc/classes/class-form-styles.php:135 inc/classes/class-form-styles.php:249
338
  msgid "Round"
339
  msgstr ""
340
 
341
+ #: inc/classes/class-form-styles.php:136 inc/classes/class-form-styles.php:250
342
  msgid "Pill"
343
  msgstr ""
344
 
345
+ #: inc/classes/class-form-styles.php:190 inc/classes/class-form-styles.php:287
346
+ msgid "Normal"
 
347
  msgstr ""
348
 
349
+ #: inc/classes/class-form-styles.php:191 inc/classes/class-form-styles.php:288
350
+ msgid "Bold"
 
351
  msgstr ""
352
 
353
+ #: inc/classes/class-form-styles.php:259
354
+ msgid "Full width"
 
355
  msgstr ""
356
 
357
+ #: inc/classes/class-form-styles.php:497
358
+ msgid "Above form"
359
  msgstr ""
360
 
361
+ #: inc/classes/class-form-styles.php:498
362
+ msgid "Below form"
363
  msgstr ""
364
 
365
+ #: inc/classes/class-form-styles.php:512
366
+ msgid "General"
367
  msgstr ""
368
 
369
+ #: inc/classes/class-form-styles.php:516 inc/classes/class-form-styles.php:816
370
+ #: inc/templates/parts/customize-address.php:78
371
+ #: inc/templates/parts/customize-checkbox.php:67
372
+ #: inc/templates/parts/customize-date.php:103
373
+ #: inc/templates/parts/customize-email.php:46
374
+ #: inc/templates/parts/customize-legal.php:4
375
+ #: inc/templates/parts/customize-multi-line-text.php:46
376
+ #: inc/templates/parts/customize-narrative.php:32
377
+ #: inc/templates/parts/customize-number.php:77
378
+ #: inc/templates/parts/customize-phone.php:69
379
+ #: inc/templates/parts/customize-placeholder.php:27
380
+ #: inc/templates/parts/customize-radio.php:67
381
+ #: inc/templates/parts/customize-rating.php:74
382
+ #: inc/templates/parts/customize-rich-text.php:40
383
+ #: inc/templates/parts/customize-scale.php:86
384
+ #: inc/templates/parts/customize-select.php:70
385
+ #: inc/templates/parts/customize-single-line-text.php:51
386
+ #: inc/templates/parts/customize-table.php:83
387
+ #: inc/templates/parts/customize-title.php:44
388
+ #: inc/templates/parts/customize-website-url.php:46
389
+ msgid "Width"
390
  msgstr ""
391
 
392
+ #: inc/classes/class-form-styles.php:521 inc/classes/class-form-styles.php:821
393
+ msgid "Padding"
394
  msgstr ""
395
 
396
+ #: inc/classes/class-form-styles.php:526
397
  msgid "Direction"
398
  msgstr ""
399
 
400
+ #: inc/classes/class-form-styles.php:531
401
+ msgid "Display notices"
402
+ msgstr ""
403
+
404
+ #: inc/classes/class-form-styles.php:536
405
  msgid "Disable submit button until form is valid"
406
  msgstr ""
407
 
408
+ #: inc/classes/class-form-styles.php:541
409
+ msgid "Form HTML ID"
410
+ msgstr ""
411
+
412
+ #: inc/classes/class-form-styles.php:548 inc/classes/class-form-styles.php:615
413
+ #: inc/classes/class-form-styles.php:684 inc/classes/class-form-styles.php:847
414
  msgid "Colors"
415
  msgstr ""
416
 
417
+ #: inc/classes/class-form-styles.php:552
418
  msgid "Primary"
419
  msgstr ""
420
 
421
+ #: inc/classes/class-form-styles.php:557
422
  msgid "Success"
423
  msgstr ""
424
 
425
+ #: inc/classes/class-form-styles.php:562
426
  msgid "Error"
427
  msgstr ""
428
 
429
+ #: inc/classes/class-form-styles.php:567
430
  msgid "Form title"
431
  msgstr ""
432
 
433
+ #: inc/classes/class-form-styles.php:571
434
+ msgid "Display"
435
+ msgstr ""
436
+
437
+ #: inc/classes/class-form-styles.php:576 inc/classes/class-form-styles.php:836
438
  msgid "Alignment"
439
  msgstr ""
440
 
441
+ #: inc/classes/class-form-styles.php:581
442
  msgid "Font size"
443
  msgstr ""
444
 
445
+ #: inc/classes/class-form-styles.php:586
446
  msgid "Part borders & spacing"
447
  msgstr ""
448
 
449
+ #: inc/classes/class-form-styles.php:590 inc/classes/class-form-styles.php:619
450
+ #: inc/classes/class-form-styles.php:806 inc/classes/class-form-styles.php:861
451
  msgid "Border"
452
  msgstr ""
453
 
454
+ #: inc/classes/class-form-styles.php:595
455
  msgid "Border location"
456
  msgstr ""
457
 
458
+ #: inc/classes/class-form-styles.php:600 inc/classes/class-form-styles.php:811
459
  msgid "Border radius"
460
  msgstr ""
461
 
462
+ #: inc/classes/class-form-styles.php:605
463
  msgid "Outer padding"
464
  msgstr ""
465
 
466
+ #: inc/classes/class-form-styles.php:610
467
  msgid "Inner padding"
468
  msgstr ""
469
 
470
+ #: inc/classes/class-form-styles.php:624
471
  msgid "Border on focus"
472
  msgstr ""
473
 
474
+ #: inc/classes/class-form-styles.php:629 inc/classes/class-form-styles.php:712
475
+ #: inc/classes/class-form-styles.php:851
476
  msgid "Background"
477
  msgstr ""
478
 
479
+ #: inc/classes/class-form-styles.php:634
480
  msgid "Background on focus"
481
  msgstr ""
482
 
483
+ #: inc/classes/class-form-styles.php:639
484
  msgid "Part labels & text"
485
  msgstr ""
486
 
487
+ #: inc/classes/class-form-styles.php:643
488
  msgid "Toggle placeholder on part focus"
489
  msgstr ""
490
 
491
+ #: inc/classes/class-form-styles.php:649
492
  msgid "Title alignment"
493
  msgstr ""
494
 
495
+ #: inc/classes/class-form-styles.php:654
496
  msgid "Title font size"
497
  msgstr ""
498
 
499
+ #: inc/classes/class-form-styles.php:659
500
  msgid "Title font weight"
501
  msgstr ""
502
 
503
+ #: inc/classes/class-form-styles.php:664
504
  msgid "Description alignment"
505
  msgstr ""
506
 
507
+ #: inc/classes/class-form-styles.php:669
508
  msgid "Description font size"
509
  msgstr ""
510
 
511
+ #: inc/classes/class-form-styles.php:674
512
  msgid "Placeholder &amp; Value alignment"
513
  msgstr ""
514
 
515
+ #: inc/classes/class-form-styles.php:679
516
  msgid "Value font size"
517
  msgstr ""
518
 
519
+ #: inc/classes/class-form-styles.php:688
520
  #: inc/classes/parts/class-part-title.php:8
521
  #: inc/classes/parts/class-part-title.php:30
522
  #: inc/templates/parts/customize-address.php:4
540
  msgid "Title"
541
  msgstr ""
542
 
543
+ #: inc/classes/class-form-styles.php:693
544
  msgid "Value"
545
  msgstr ""
546
 
547
+ #: inc/classes/class-form-styles.php:698
548
  #: inc/classes/parts/class-part-placeholder.php:8
549
  #: inc/templates/parts/customize-address.php:36
550
  #: inc/templates/parts/customize-email.php:36
558
  msgid "Placeholder"
559
  msgstr ""
560
 
561
+ #: inc/classes/class-form-styles.php:703
562
  msgid "Dropdowns"
563
  msgstr ""
564
 
565
+ #: inc/classes/class-form-styles.php:708
566
  msgid "Items"
567
  msgstr ""
568
 
569
+ #: inc/classes/class-form-styles.php:717 inc/classes/class-form-styles.php:866
570
  #: inc/classes/parts/class-part-multi-line-text.php:29
571
  #: inc/classes/parts/class-part-rich-text.php:31
572
  #: inc/classes/parts/class-part-single-line-text.php:29
574
  msgid "Text"
575
  msgstr ""
576
 
577
+ #: inc/classes/class-form-styles.php:722 inc/classes/class-form-styles.php:856
578
  msgid "Background focused"
579
  msgstr ""
580
 
581
+ #: inc/classes/class-form-styles.php:727 inc/classes/class-form-styles.php:871
582
  msgid "Text focused"
583
  msgstr ""
584
 
585
+ #: inc/classes/class-form-styles.php:732
586
  msgid "Checkboxes & Radios"
587
  msgstr ""
588
 
589
+ #: inc/classes/class-form-styles.php:737
590
  msgid "Checkbox & Radio background"
591
  msgstr ""
592
 
593
+ #: inc/classes/class-form-styles.php:742
594
  msgid "Checkbox & Radio background focused"
595
  msgstr ""
596
 
597
+ #: inc/classes/class-form-styles.php:747
598
  msgid "Checkbox & Radio checkmark"
599
  msgstr ""
600
 
601
+ #: inc/classes/class-form-styles.php:752
602
  #: inc/classes/parts/class-part-rating.php:9
603
  #: inc/classes/parts/class-part-rating.php:31
604
  msgid "Rating"
605
  msgstr ""
606
 
607
+ #: inc/classes/class-form-styles.php:757
608
  msgid "Rating star color"
609
  msgstr ""
610
 
611
+ #: inc/classes/class-form-styles.php:762
612
  msgid "Rating star color on hover"
613
  msgstr ""
614
 
615
+ #: inc/classes/class-form-styles.php:767
616
  msgid "Item background"
617
  msgstr ""
618
 
619
+ #: inc/classes/class-form-styles.php:772
620
  msgid "Item background on hover"
621
  msgstr ""
622
 
623
+ #: inc/classes/class-form-styles.php:777
624
  msgid "Tables"
625
  msgstr ""
626
 
627
+ #: inc/classes/class-form-styles.php:782
628
  msgid "Odd row primary"
629
  msgstr ""
630
 
631
+ #: inc/classes/class-form-styles.php:787
632
  msgid "Odd row secondary"
633
  msgstr ""
634
 
635
+ #: inc/classes/class-form-styles.php:792
636
  msgid "Even row primary"
637
  msgstr ""
638
 
639
+ #: inc/classes/class-form-styles.php:797
640
  msgid "Even row secondary"
641
  msgstr ""
642
 
643
+ #: inc/classes/class-form-styles.php:802
644
  msgid "Submit button"
645
  msgstr ""
646
 
647
+ #: inc/classes/class-form-styles.php:826
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
648
  msgid "Font Size"
649
  msgstr ""
650
 
651
+ #: inc/classes/class-form-styles.php:831
652
  msgid "Font Weight"
653
  msgstr ""
654
 
655
+ #: inc/classes/class-form-styles.php:842
656
  msgid "Make button a part of last input"
657
  msgstr ""
658
 
804
  msgstr ""
805
 
806
  #: inc/classes/class-message-admin.php:609
807
+ #: inc/classes/class-message-admin.php:874
808
  msgid "Mark read"
809
  msgstr ""
810
 
811
  #: inc/classes/class-message-admin.php:610
812
+ #: inc/classes/class-message-admin.php:874
813
  msgid "Mark unread"
814
  msgstr ""
815
 
825
  msgid "Delete Permanently"
826
  msgstr ""
827
 
828
+ #: inc/classes/class-message-admin.php:849
829
  msgid "Details"
830
  msgstr ""
831
 
832
+ #: inc/classes/class-message-admin.php:869
833
  msgid "Submitted on"
834
  msgstr ""
835
 
836
+ #: inc/classes/class-message-admin.php:869
837
  msgid "M j, Y @ H:i"
838
  msgstr ""
839
 
840
+ #: inc/classes/class-message-admin.php:874
841
  msgid "Status"
842
  msgstr ""
843
 
844
+ #: inc/classes/class-message-admin.php:874
845
  msgid "Read"
846
  msgstr ""
847
 
848
+ #: inc/classes/class-message-admin.php:874
849
  msgid "Unread"
850
  msgstr ""
851
 
983
  #: inc/classes/parts/class-part-address.php:191
984
  #: inc/classes/parts/class-part-checkbox.php:167
985
  #: inc/classes/parts/class-part-date.php:206
986
+ #: inc/classes/parts/class-part-email.php:146
987
+ #: inc/classes/parts/class-part-email.php:150
988
  #: inc/classes/parts/class-part-legal.php:115
989
  #: inc/classes/parts/class-part-multi-line-text.php:142
990
  #: inc/classes/parts/class-part-narrative.php:125
1057
  msgstr ""
1058
 
1059
  #: inc/classes/parts/class-part-email.php:8
1060
+ #: inc/classes/parts/class-part-email.php:30
1061
  msgid "Email"
1062
  msgstr ""
1063
 
1065
  msgid "For formatted email addresses. The '@' symbol is required."
1066
  msgstr ""
1067
 
1068
+ #: inc/classes/parts/class-part-email.php:54
1069
  msgid "Confirm Email"
1070
  msgstr ""
1071
 
1072
+ #: inc/classes/parts/class-part-email.php:154
1073
  msgid "Not a valid e-mail address."
1074
  msgstr ""
1075
 
1076
+ #: inc/classes/parts/class-part-email.php:158
1077
  msgid "Email and confirmation email are not matching."
1078
  msgstr ""
1079
 
1345
  msgid "How can I access my premium upgrade credentials?"
1346
  msgstr ""
1347
 
1348
+ #: inc/helpers/helper-form-templates.php:797
1349
  msgid "(optional)"
1350
  msgstr ""
1351
 
1352
+ #: inc/helpers/helper-form-templates.php:858
1353
  msgid "Get my location"
1354
  msgstr ""
1355
 
1356
+ #: inc/helpers/helper-form-templates.php:858
1357
  msgid "Fetching location…"
1358
  msgstr ""
1359
 
1360
+ #: inc/helpers/helper-form-templates.php:869
1361
  msgid "January"
1362
  msgstr ""
1363
 
1364
+ #: inc/helpers/helper-form-templates.php:870
1365
  msgid "February"
1366
  msgstr ""
1367
 
1368
+ #: inc/helpers/helper-form-templates.php:871
1369
  msgid "March"
1370
  msgstr ""
1371
 
1372
+ #: inc/helpers/helper-form-templates.php:872
1373
  msgid "April"
1374
  msgstr ""
1375
 
1376
+ #: inc/helpers/helper-form-templates.php:873
1377
  msgid "May"
1378
  msgstr ""
1379
 
1380
+ #: inc/helpers/helper-form-templates.php:874
1381
  msgid "June"
1382
  msgstr ""
1383
 
1384
+ #: inc/helpers/helper-form-templates.php:875
1385
  msgid "July"
1386
  msgstr ""
1387
 
1388
+ #: inc/helpers/helper-form-templates.php:876
1389
  msgid "August"
1390
  msgstr ""
1391
 
1392
+ #: inc/helpers/helper-form-templates.php:877
1393
  msgid "September"
1394
  msgstr ""
1395
 
1396
+ #: inc/helpers/helper-form-templates.php:878
1397
  msgid "October"
1398
  msgstr ""
1399
 
1400
+ #: inc/helpers/helper-form-templates.php:879
1401
  msgid "November"
1402
  msgstr ""
1403
 
1404
+ #: inc/helpers/helper-form-templates.php:880
1405
  msgid "December"
1406
  msgstr ""
1407
 
1408
+ #: inc/helpers/helper-form-templates.php:911 inc/helpers/helper-misc.php:248
1409
  msgid "Andorra"
1410
  msgstr ""
1411
 
1412
+ #: inc/helpers/helper-form-templates.php:912 inc/helpers/helper-misc.php:466
1413
  msgid "United Arab Emirates"
1414
  msgstr ""
1415
 
1416
+ #: inc/helpers/helper-form-templates.php:913 inc/helpers/helper-misc.php:244
1417
  msgid "Afghanistan"
1418
  msgstr ""
1419
 
1420
+ #: inc/helpers/helper-form-templates.php:914 inc/helpers/helper-misc.php:252
1421
  msgid "Antigua and Barbuda"
1422
  msgstr ""
1423
 
1424
+ #: inc/helpers/helper-form-templates.php:915 inc/helpers/helper-misc.php:250
1425
  msgid "Anguilla"
1426
  msgstr ""
1427
 
1428
+ #: inc/helpers/helper-form-templates.php:916 inc/helpers/helper-misc.php:245
1429
  msgid "Albania"
1430
  msgstr ""
1431
 
1432
+ #: inc/helpers/helper-form-templates.php:917 inc/helpers/helper-misc.php:254
1433
  msgid "Armenia"
1434
  msgstr ""
1435
 
1436
+ #: inc/helpers/helper-form-templates.php:918 inc/helpers/helper-misc.php:249
1437
  msgid "Angola"
1438
  msgstr ""
1439
 
1440
+ #: inc/helpers/helper-form-templates.php:919 inc/helpers/helper-misc.php:251
1441
  msgid "Antarctica"
1442
  msgstr ""
1443
 
1444
+ #: inc/helpers/helper-form-templates.php:920 inc/helpers/helper-misc.php:253
1445
  msgid "Argentina"
1446
  msgstr ""
1447
 
1448
+ #: inc/helpers/helper-form-templates.php:921 inc/helpers/helper-misc.php:247
1449
  msgid "American Samoa"
1450
  msgstr ""
1451
 
1452
+ #: inc/helpers/helper-form-templates.php:922 inc/helpers/helper-misc.php:257
1453
  msgid "Austria"
1454
  msgstr ""
1455
 
1456
+ #: inc/helpers/helper-form-templates.php:923 inc/helpers/helper-misc.php:256
1457
  msgid "Australia"
1458
  msgstr ""
1459
 
1460
+ #: inc/helpers/helper-form-templates.php:924 inc/helpers/helper-misc.php:255
1461
  msgid "Aruba"
1462
  msgstr ""
1463
 
1464
+ #: inc/helpers/helper-form-templates.php:925 inc/helpers/helper-misc.php:258
1465
  msgid "Azerbaijan"
1466
  msgstr ""
1467
 
1468
+ #: inc/helpers/helper-form-templates.php:926
1469
  msgid "Bosnia and Herzegovina"
1470
  msgstr ""
1471
 
1472
+ #: inc/helpers/helper-form-templates.php:927 inc/helpers/helper-misc.php:262
1473
  msgid "Barbados"
1474
  msgstr ""
1475
 
1476
+ #: inc/helpers/helper-form-templates.php:928 inc/helpers/helper-misc.php:261
1477
  msgid "Bangladesh"
1478
  msgstr ""
1479
 
1480
+ #: inc/helpers/helper-form-templates.php:929 inc/helpers/helper-misc.php:264
1481
  msgid "Belgium"
1482
  msgstr ""
1483
 
1484
+ #: inc/helpers/helper-form-templates.php:930 inc/helpers/helper-misc.php:277
1485
  msgid "Burkina Faso"
1486
  msgstr ""
1487
 
1488
+ #: inc/helpers/helper-form-templates.php:931 inc/helpers/helper-misc.php:276
1489
  msgid "Bulgaria"
1490
  msgstr ""
1491
 
1492
+ #: inc/helpers/helper-form-templates.php:932 inc/helpers/helper-misc.php:260
1493
  msgid "Bahrain"
1494
  msgstr ""
1495
 
1496
+ #: inc/helpers/helper-form-templates.php:933 inc/helpers/helper-misc.php:278
1497
  msgid "Burundi"
1498
  msgstr ""
1499
 
1500
+ #: inc/helpers/helper-form-templates.php:934 inc/helpers/helper-misc.php:266
1501
  msgid "Benin"
1502
  msgstr ""
1503
 
1504
+ #: inc/helpers/helper-form-templates.php:935
1505
  msgid "Saint Barthelemy"
1506
  msgstr ""
1507
 
1508
+ #: inc/helpers/helper-form-templates.php:936 inc/helpers/helper-misc.php:267
1509
  msgid "Bermuda"
1510
  msgstr ""
1511
 
1512
+ #: inc/helpers/helper-form-templates.php:937 inc/helpers/helper-misc.php:275
1513
  msgid "Brunei Darussalam"
1514
  msgstr ""
1515
 
1516
+ #: inc/helpers/helper-form-templates.php:938 inc/helpers/helper-misc.php:269
1517
  msgid "Bolivia"
1518
  msgstr ""
1519
 
1520
+ #: inc/helpers/helper-form-templates.php:939 inc/helpers/helper-misc.php:273
1521
  msgid "Brazil"
1522
  msgstr ""
1523
 
1524
+ #: inc/helpers/helper-form-templates.php:940 inc/helpers/helper-misc.php:259
1525
  msgid "Bahamas"
1526
  msgstr ""
1527
 
1528
+ #: inc/helpers/helper-form-templates.php:941 inc/helpers/helper-misc.php:268
1529
  msgid "Bhutan"
1530
  msgstr ""
1531
 
1532
+ #: inc/helpers/helper-form-templates.php:942 inc/helpers/helper-misc.php:271
1533
  msgid "Botswana"
1534
  msgstr ""
1535
 
1536
+ #: inc/helpers/helper-form-templates.php:943 inc/helpers/helper-misc.php:263
1537
  msgid "Belarus"
1538
  msgstr ""
1539
 
1540
+ #: inc/helpers/helper-form-templates.php:944 inc/helpers/helper-misc.php:265
1541
  msgid "Belize"
1542
  msgstr ""
1543
 
1544
+ #: inc/helpers/helper-form-templates.php:945 inc/helpers/helper-misc.php:281
1545
  msgid "Canada"
1546
  msgstr ""
1547
 
1548
+ #: inc/helpers/helper-form-templates.php:946
1549
  msgid "Congo, The Democratic Republic of the"
1550
  msgstr ""
1551
 
1552
+ #: inc/helpers/helper-form-templates.php:947 inc/helpers/helper-misc.php:284
1553
  msgid "Central African Republic"
1554
  msgstr ""
1555
 
1556
+ #: inc/helpers/helper-form-templates.php:948 inc/helpers/helper-misc.php:292
1557
  msgid "Congo"
1558
  msgstr ""
1559
 
1560
+ #: inc/helpers/helper-form-templates.php:949 inc/helpers/helper-misc.php:449
1561
  msgid "Switzerland"
1562
  msgstr ""
1563
 
1564
+ #: inc/helpers/helper-form-templates.php:950 inc/helpers/helper-misc.php:294
1565
  msgid "Cook Islands"
1566
  msgstr ""
1567
 
1568
+ #: inc/helpers/helper-form-templates.php:951 inc/helpers/helper-misc.php:286
1569
  msgid "Chile"
1570
  msgstr ""
1571
 
1572
+ #: inc/helpers/helper-form-templates.php:952 inc/helpers/helper-misc.php:280
1573
  msgid "Cameroon"
1574
  msgstr ""
1575
 
1576
+ #: inc/helpers/helper-form-templates.php:953 inc/helpers/helper-misc.php:287
1577
  msgid "China"
1578
  msgstr ""
1579
 
1580
+ #: inc/helpers/helper-form-templates.php:954 inc/helpers/helper-misc.php:290
1581
  msgid "Colombia"
1582
  msgstr ""
1583
 
1584
+ #: inc/helpers/helper-form-templates.php:955 inc/helpers/helper-misc.php:295
1585
  msgid "Costa Rica"
1586
  msgstr ""
1587
 
1588
+ #: inc/helpers/helper-form-templates.php:956 inc/helpers/helper-misc.php:298
1589
  msgid "Cuba"
1590
  msgstr ""
1591
 
1592
+ #: inc/helpers/helper-form-templates.php:957 inc/helpers/helper-misc.php:282
1593
  msgid "Cape Verde"
1594
  msgstr ""
1595
 
1596
+ #: inc/helpers/helper-form-templates.php:958 inc/helpers/helper-misc.php:299
1597
  msgid "Cyprus"
1598
  msgstr ""
1599
 
1600
+ #: inc/helpers/helper-form-templates.php:959 inc/helpers/helper-misc.php:300
1601
  msgid "Czech Republic"
1602
  msgstr ""
1603
 
1604
+ #: inc/helpers/helper-form-templates.php:960 inc/helpers/helper-misc.php:325
1605
  msgid "Germany"
1606
  msgstr ""
1607
 
1608
+ #: inc/helpers/helper-form-templates.php:961 inc/helpers/helper-misc.php:302
1609
  msgid "Djibouti"
1610
  msgstr ""
1611
 
1612
+ #: inc/helpers/helper-form-templates.php:962 inc/helpers/helper-misc.php:301
1613
  msgid "Denmark"
1614
  msgstr ""
1615
 
1616
+ #: inc/helpers/helper-form-templates.php:963 inc/helpers/helper-misc.php:303
1617
  msgid "Dominica"
1618
  msgstr ""
1619
 
1620
+ #: inc/helpers/helper-form-templates.php:964 inc/helpers/helper-misc.php:304
1621
  msgid "Dominican Republic"
1622
  msgstr ""
1623
 
1624
+ #: inc/helpers/helper-form-templates.php:965 inc/helpers/helper-misc.php:246
1625
  msgid "Algeria"
1626
  msgstr ""
1627
 
1628
+ #: inc/helpers/helper-form-templates.php:966 inc/helpers/helper-misc.php:306
1629
  msgid "Ecuador"
1630
  msgstr ""
1631
 
1632
+ #: inc/helpers/helper-form-templates.php:967 inc/helpers/helper-misc.php:311
1633
  msgid "Estonia"
1634
  msgstr ""
1635
 
1636
+ #: inc/helpers/helper-form-templates.php:968 inc/helpers/helper-misc.php:307
1637
  msgid "Egypt"
1638
  msgstr ""
1639
 
1640
+ #: inc/helpers/helper-form-templates.php:969 inc/helpers/helper-misc.php:310
1641
  msgid "Eritrea"
1642
  msgstr ""
1643
 
1644
+ #: inc/helpers/helper-form-templates.php:970 inc/helpers/helper-misc.php:440
1645
  msgid "Spain"
1646
  msgstr ""
1647
 
1648
+ #: inc/helpers/helper-form-templates.php:971 inc/helpers/helper-misc.php:312
1649
  msgid "Ethiopia"
1650
  msgstr ""
1651
 
1652
+ #: inc/helpers/helper-form-templates.php:972 inc/helpers/helper-misc.php:316
1653
  msgid "Finland"
1654
  msgstr ""
1655
 
1656
+ #: inc/helpers/helper-form-templates.php:973 inc/helpers/helper-misc.php:315
1657
  msgid "Fiji"
1658
  msgstr ""
1659
 
1660
+ #: inc/helpers/helper-form-templates.php:974 inc/helpers/helper-misc.php:313
1661
  msgid "Falkland Islands (Malvinas)"
1662
  msgstr ""
1663
 
1664
+ #: inc/helpers/helper-form-templates.php:975 inc/helpers/helper-misc.php:384
1665
  msgid "Micronesia, Federated States of"
1666
  msgstr ""
1667
 
1668
+ #: inc/helpers/helper-form-templates.php:976 inc/helpers/helper-misc.php:314
1669
  msgid "Faroe Islands"
1670
  msgstr ""
1671
 
1672
+ #: inc/helpers/helper-form-templates.php:977 inc/helpers/helper-misc.php:317
1673
  msgid "France"
1674
  msgstr ""
1675
 
1676
+ #: inc/helpers/helper-form-templates.php:978 inc/helpers/helper-misc.php:322
1677
  msgid "Gabon"
1678
  msgstr ""
1679
 
1680
+ #: inc/helpers/helper-form-templates.php:979 inc/helpers/helper-misc.php:467
1681
  msgid "United Kingdom"
1682
  msgstr ""
1683
 
1684
+ #: inc/helpers/helper-form-templates.php:980 inc/helpers/helper-misc.php:330
1685
  msgid "Grenada"
1686
  msgstr ""
1687
 
1688
+ #: inc/helpers/helper-form-templates.php:981 inc/helpers/helper-misc.php:324
1689
  msgid "Georgia"
1690
  msgstr ""
1691
 
1692
+ #: inc/helpers/helper-form-templates.php:982 inc/helpers/helper-misc.php:326
1693
  msgid "Ghana"
1694
  msgstr ""
1695
 
1696
+ #: inc/helpers/helper-form-templates.php:983 inc/helpers/helper-misc.php:327
1697
  msgid "Gibraltar"
1698
  msgstr ""
1699
 
1700
+ #: inc/helpers/helper-form-templates.php:984 inc/helpers/helper-misc.php:329
1701
  msgid "Greenland"
1702
  msgstr ""
1703
 
1704
+ #: inc/helpers/helper-form-templates.php:985 inc/helpers/helper-misc.php:323
1705
  msgid "Gambia"
1706
  msgstr ""
1707
 
1708
+ #: inc/helpers/helper-form-templates.php:986 inc/helpers/helper-misc.php:334
1709
  msgid "Guinea"
1710
  msgstr ""
1711
 
1712
+ #: inc/helpers/helper-form-templates.php:987 inc/helpers/helper-misc.php:328
1713
  msgid "Greece"
1714
  msgstr ""
1715
 
1716
+ #: inc/helpers/helper-form-templates.php:988 inc/helpers/helper-misc.php:333
1717
  msgid "Guatemala"
1718
  msgstr ""
1719
 
1720
+ #: inc/helpers/helper-form-templates.php:989 inc/helpers/helper-misc.php:332
1721
  msgid "Guam"
1722
  msgstr ""
1723
 
1724
+ #: inc/helpers/helper-form-templates.php:990
1725
  msgid "Guinea-bissau"
1726
  msgstr ""
1727
 
1728
+ #: inc/helpers/helper-form-templates.php:991 inc/helpers/helper-misc.php:336
1729
  msgid "Guyana"
1730
  msgstr ""
1731
 
1732
+ #: inc/helpers/helper-form-templates.php:992 inc/helpers/helper-misc.php:341
1733
  msgid "Hong Kong"
1734
  msgstr ""
1735
 
1736
+ #: inc/helpers/helper-form-templates.php:993 inc/helpers/helper-misc.php:340
1737
  msgid "Honduras"
1738
  msgstr ""
1739
 
1740
+ #: inc/helpers/helper-form-templates.php:994
1741
  msgid "Croatia"
1742
  msgstr ""
1743
 
1744
+ #: inc/helpers/helper-form-templates.php:995 inc/helpers/helper-misc.php:337
1745
  msgid "Haiti"
1746
  msgstr ""
1747
 
1748
+ #: inc/helpers/helper-form-templates.php:996 inc/helpers/helper-misc.php:342
1749
  msgid "Hungary"
1750
  msgstr ""
1751
 
1752
+ #: inc/helpers/helper-form-templates.php:997 inc/helpers/helper-misc.php:345
1753
  msgid "Indonesia"
1754
  msgstr ""
1755
 
1756
+ #: inc/helpers/helper-form-templates.php:998 inc/helpers/helper-misc.php:348
1757
  msgid "Ireland"
1758
  msgstr ""
1759
 
1760
+ #: inc/helpers/helper-form-templates.php:999 inc/helpers/helper-misc.php:349
1761
  msgid "Israel"
1762
  msgstr ""
1763
 
1764
+ #: inc/helpers/helper-form-templates.php:1000 inc/helpers/helper-misc.php:344
1765
  msgid "India"
1766
  msgstr ""
1767
 
1768
+ #: inc/helpers/helper-form-templates.php:1001 inc/helpers/helper-misc.php:347
1769
  msgid "Iraq"
1770
  msgstr ""
1771
 
1772
+ #: inc/helpers/helper-form-templates.php:1002
1773
  msgid "Iran, Islamic Republic of"
1774
  msgstr ""
1775
 
1776
+ #: inc/helpers/helper-form-templates.php:1003 inc/helpers/helper-misc.php:343
1777
  msgid "Iceland"
1778
  msgstr ""
1779
 
1780
+ #: inc/helpers/helper-form-templates.php:1004 inc/helpers/helper-misc.php:350
1781
  msgid "Italy"
1782
  msgstr ""
1783
 
1784
+ #: inc/helpers/helper-form-templates.php:1005 inc/helpers/helper-misc.php:351
1785
  msgid "Jamaica"
1786
  msgstr ""
1787
 
1788
+ #: inc/helpers/helper-form-templates.php:1006 inc/helpers/helper-misc.php:353
1789
  msgid "Jordan"
1790
  msgstr ""
1791
 
1792
+ #: inc/helpers/helper-form-templates.php:1007 inc/helpers/helper-misc.php:352
1793
  msgid "Japan"
1794
  msgstr ""
1795
 
1796
+ #: inc/helpers/helper-form-templates.php:1008 inc/helpers/helper-misc.php:355
1797
  msgid "Kenya"
1798
  msgstr ""
1799
 
1800
+ #: inc/helpers/helper-form-templates.php:1009 inc/helpers/helper-misc.php:360
1801
  msgid "Kyrgyzstan"
1802
  msgstr ""
1803
 
1804
+ #: inc/helpers/helper-form-templates.php:1010 inc/helpers/helper-misc.php:279
1805
  msgid "Cambodia"
1806
  msgstr ""
1807
 
1808
+ #: inc/helpers/helper-form-templates.php:1011 inc/helpers/helper-misc.php:356
1809
  msgid "Kiribati"
1810
  msgstr ""
1811
 
1812
+ #: inc/helpers/helper-form-templates.php:1012 inc/helpers/helper-misc.php:291
1813
  msgid "Comoros"
1814
  msgstr ""
1815
 
1816
+ #: inc/helpers/helper-form-templates.php:1013 inc/helpers/helper-misc.php:423
1817
  msgid "Saint Kitts and Nevis"
1818
  msgstr ""
1819
 
1820
+ #: inc/helpers/helper-form-templates.php:1014
1821
  msgid "Korea Democratic Peoples Republic of"
1822
  msgstr ""
1823
 
1824
+ #: inc/helpers/helper-form-templates.php:1015
1825
  msgid "Korea Republic of"
1826
  msgstr ""
1827
 
1828
+ #: inc/helpers/helper-form-templates.php:1016 inc/helpers/helper-misc.php:359
1829
  msgid "Kuwait"
1830
  msgstr ""
1831
 
1832
+ #: inc/helpers/helper-form-templates.php:1017 inc/helpers/helper-misc.php:283
1833
  msgid "Cayman Islands"
1834
  msgstr ""
1835
 
1836
+ #: inc/helpers/helper-form-templates.php:1018
1837
  msgid "Lao Peoples Democratic Republic"
1838
  msgstr ""
1839
 
1840
+ #: inc/helpers/helper-form-templates.php:1019 inc/helpers/helper-misc.php:363
1841
  msgid "Lebanon"
1842
  msgstr ""
1843
 
1844
+ #: inc/helpers/helper-form-templates.php:1020 inc/helpers/helper-misc.php:424
1845
  msgid "Saint Lucia"
1846
  msgstr ""
1847
 
1848
+ #: inc/helpers/helper-form-templates.php:1021 inc/helpers/helper-misc.php:367
1849
  msgid "Liechtenstein"
1850
  msgstr ""
1851
 
1852
+ #: inc/helpers/helper-form-templates.php:1022 inc/helpers/helper-misc.php:441
1853
  msgid "Sri Lanka"
1854
  msgstr ""
1855
 
1856
+ #: inc/helpers/helper-form-templates.php:1023 inc/helpers/helper-misc.php:365
1857
  msgid "Liberia"
1858
  msgstr ""
1859
 
1860
+ #: inc/helpers/helper-form-templates.php:1024 inc/helpers/helper-misc.php:364
1861
  msgid "Lesotho"
1862
  msgstr ""
1863
 
1864
+ #: inc/helpers/helper-form-templates.php:1025 inc/helpers/helper-misc.php:368
1865
  msgid "Lithuania"
1866
  msgstr ""
1867
 
1868
+ #: inc/helpers/helper-form-templates.php:1026 inc/helpers/helper-misc.php:369
1869
  msgid "Luxembourg"
1870
  msgstr ""
1871
 
1872
+ #: inc/helpers/helper-form-templates.php:1027 inc/helpers/helper-misc.php:362
1873
  msgid "Latvia"
1874
  msgstr ""
1875
 
1876
+ #: inc/helpers/helper-form-templates.php:1028 inc/helpers/helper-misc.php:366
1877
  msgid "Libyan Arab Jamahiriya"
1878
  msgstr ""
1879
 
1880
+ #: inc/helpers/helper-form-templates.php:1029 inc/helpers/helper-misc.php:389
1881
  msgid "Morocco"
1882
  msgstr ""
1883
 
1884
+ #: inc/helpers/helper-form-templates.php:1030 inc/helpers/helper-misc.php:386
1885
  msgid "Monaco"
1886
  msgstr ""
1887
 
1888
+ #: inc/helpers/helper-form-templates.php:1031 inc/helpers/helper-misc.php:385
1889
  msgid "Moldova, Republic of"
1890
  msgstr ""
1891
 
1892
+ #: inc/helpers/helper-form-templates.php:1032
1893
  msgid "Montenegro"
1894
  msgstr ""
1895
 
1896
+ #: inc/helpers/helper-form-templates.php:1033 inc/helpers/helper-misc.php:372
1897
  msgid "Madagascar"
1898
  msgstr ""
1899
 
1900
+ #: inc/helpers/helper-form-templates.php:1034 inc/helpers/helper-misc.php:378
1901
  msgid "Marshall Islands"
1902
  msgstr ""
1903
 
1904
+ #: inc/helpers/helper-form-templates.php:1035 inc/helpers/helper-misc.php:371
1905
  msgid "Macedonia, The Former Yugoslav Republic of"
1906
  msgstr ""
1907
 
1908
+ #: inc/helpers/helper-form-templates.php:1036 inc/helpers/helper-misc.php:376
1909
  msgid "Mali"
1910
  msgstr ""
1911
 
1912
+ #: inc/helpers/helper-form-templates.php:1037 inc/helpers/helper-misc.php:391
1913
  msgid "Myanmar"
1914
  msgstr ""
1915
 
1916
+ #: inc/helpers/helper-form-templates.php:1038 inc/helpers/helper-misc.php:387
1917
  msgid "Mongolia"
1918
  msgstr ""
1919
 
1920
+ #: inc/helpers/helper-form-templates.php:1039 inc/helpers/helper-misc.php:370
1921
  msgid "Macau"
1922
  msgstr ""
1923
 
1924
+ #: inc/helpers/helper-form-templates.php:1040 inc/helpers/helper-misc.php:404
1925
  msgid "Northern Mariana Islands"
1926
  msgstr ""
1927
 
1928
+ #: inc/helpers/helper-form-templates.php:1041 inc/helpers/helper-misc.php:380
1929
  msgid "Mauritania"
1930
  msgstr ""
1931
 
1932
+ #: inc/helpers/helper-form-templates.php:1042 inc/helpers/helper-misc.php:388
1933
  msgid "Montserrat"
1934
  msgstr ""
1935
 
1936
+ #: inc/helpers/helper-form-templates.php:1043 inc/helpers/helper-misc.php:377
1937
  msgid "Malta"
1938
  msgstr ""
1939
 
1940
+ #: inc/helpers/helper-form-templates.php:1044 inc/helpers/helper-misc.php:381
1941
  msgid "Mauritius"
1942
  msgstr ""
1943
 
1944
+ #: inc/helpers/helper-form-templates.php:1045 inc/helpers/helper-misc.php:375
1945
  msgid "Maldives"
1946
  msgstr ""
1947
 
1948
+ #: inc/helpers/helper-form-templates.php:1046 inc/helpers/helper-misc.php:373
1949
  msgid "Malawi"
1950
  msgstr ""
1951
 
1952
+ #: inc/helpers/helper-form-templates.php:1047 inc/helpers/helper-misc.php:383
1953
  msgid "Mexico"
1954
  msgstr ""
1955
 
1956
+ #: inc/helpers/helper-form-templates.php:1048 inc/helpers/helper-misc.php:374
1957
  msgid "Malaysia"
1958
  msgstr ""
1959
 
1960
+ #: inc/helpers/helper-form-templates.php:1049 inc/helpers/helper-misc.php:390
1961
  msgid "Mozambique"
1962
  msgstr ""
1963
 
1964
+ #: inc/helpers/helper-form-templates.php:1050 inc/helpers/helper-misc.php:392
1965
  msgid "Namibia"
1966
  msgstr ""
1967
 
1968
+ #: inc/helpers/helper-form-templates.php:1051 inc/helpers/helper-misc.php:397
1969
  msgid "New Caledonia"
1970
  msgstr ""
1971
 
1972
+ #: inc/helpers/helper-form-templates.php:1052 inc/helpers/helper-misc.php:400
1973
  msgid "Niger"
1974
  msgstr ""
1975
 
1976
+ #: inc/helpers/helper-form-templates.php:1053 inc/helpers/helper-misc.php:401
1977
  msgid "Nigeria"
1978
  msgstr ""
1979
 
1980
+ #: inc/helpers/helper-form-templates.php:1054 inc/helpers/helper-misc.php:399
1981
  msgid "Nicaragua"
1982
  msgstr ""
1983
 
1984
+ #: inc/helpers/helper-form-templates.php:1055 inc/helpers/helper-misc.php:395
1985
  msgid "Netherlands"
1986
  msgstr ""
1987
 
1988
+ #: inc/helpers/helper-form-templates.php:1056 inc/helpers/helper-misc.php:405
1989
  msgid "Norway"
1990
  msgstr ""
1991
 
1992
+ #: inc/helpers/helper-form-templates.php:1057 inc/helpers/helper-misc.php:394
1993
  msgid "Nepal"
1994
  msgstr ""
1995
 
1996
+ #: inc/helpers/helper-form-templates.php:1058 inc/helpers/helper-misc.php:393
1997
  msgid "Nauru"
1998
  msgstr ""
1999
 
2000
+ #: inc/helpers/helper-form-templates.php:1059 inc/helpers/helper-misc.php:402
2001
  msgid "Niue"
2002
  msgstr ""
2003
 
2004
+ #: inc/helpers/helper-form-templates.php:1060 inc/helpers/helper-misc.php:398
2005
  msgid "New Zealand"
2006
  msgstr ""
2007
 
2008
+ #: inc/helpers/helper-form-templates.php:1061 inc/helpers/helper-misc.php:406
2009
  msgid "Oman"
2010
  msgstr ""
2011
 
2012
+ #: inc/helpers/helper-form-templates.php:1062 inc/helpers/helper-misc.php:409
2013
  msgid "Panama"
2014
  msgstr ""
2015
 
2016
+ #: inc/helpers/helper-form-templates.php:1063 inc/helpers/helper-misc.php:412
2017
  msgid "Peru"
2018
  msgstr ""
2019
 
2020
+ #: inc/helpers/helper-form-templates.php:1064 inc/helpers/helper-misc.php:320
2021
  msgid "French Polynesia"
2022
  msgstr ""
2023
 
2024
+ #: inc/helpers/helper-form-templates.php:1065 inc/helpers/helper-misc.php:410
2025
  msgid "Papua New Guinea"
2026
  msgstr ""
2027
 
2028
+ #: inc/helpers/helper-form-templates.php:1066 inc/helpers/helper-misc.php:413
2029
  msgid "Philippines"
2030
  msgstr ""
2031
 
2032
+ #: inc/helpers/helper-form-templates.php:1067 inc/helpers/helper-misc.php:407
2033
  msgid "Pakistan"
2034
  msgstr ""
2035
 
2036
+ #: inc/helpers/helper-form-templates.php:1068 inc/helpers/helper-misc.php:415
2037
  msgid "Poland"
2038
  msgstr ""
2039
 
2040
+ #: inc/helpers/helper-form-templates.php:1069
2041
  msgid "Saint Pierre and Miquelon"
2042
  msgstr ""
2043
 
2044
+ #: inc/helpers/helper-form-templates.php:1070 inc/helpers/helper-misc.php:414
2045
  msgid "Pitcairn"
2046
  msgstr ""
2047
 
2048
+ #: inc/helpers/helper-form-templates.php:1071 inc/helpers/helper-misc.php:416
2049
  msgid "Portugal"
2050
  msgstr ""
2051
 
2052
+ #: inc/helpers/helper-form-templates.php:1072 inc/helpers/helper-misc.php:408
2053
  msgid "Palau"
2054
  msgstr ""
2055
 
2056
+ #: inc/helpers/helper-form-templates.php:1073 inc/helpers/helper-misc.php:411
2057
  msgid "Paraguay"
2058
  msgstr ""
2059
 
2060
+ #: inc/helpers/helper-form-templates.php:1074 inc/helpers/helper-misc.php:418
2061
  msgid "Qatar"
2062
  msgstr ""
2063
 
2064
+ #: inc/helpers/helper-form-templates.php:1075 inc/helpers/helper-misc.php:420
2065
  msgid "Romania"
2066
  msgstr ""
2067
 
2068
+ #: inc/helpers/helper-form-templates.php:1076
2069
  msgid "Serbia"
2070
  msgstr ""
2071
 
2072
+ #: inc/helpers/helper-form-templates.php:1077 inc/helpers/helper-misc.php:421
2073
  msgid "Russian Federation"
2074
  msgstr ""
2075
 
2076
+ #: inc/helpers/helper-form-templates.php:1078 inc/helpers/helper-misc.php:422
2077
  msgid "Rwanda"
2078
  msgstr ""
2079
 
2080
+ #: inc/helpers/helper-form-templates.php:1079 inc/helpers/helper-misc.php:429
2081
  msgid "Saudi Arabia"
2082
  msgstr ""
2083
 
2084
+ #: inc/helpers/helper-form-templates.php:1080 inc/helpers/helper-misc.php:436
2085
  msgid "Solomon Islands"
2086
  msgstr ""
2087
 
2088
+ #: inc/helpers/helper-form-templates.php:1081 inc/helpers/helper-misc.php:431
2089
  msgid "Seychelles"
2090
  msgstr ""
2091
 
2092
+ #: inc/helpers/helper-form-templates.php:1082 inc/helpers/helper-misc.php:444
2093
  msgid "Sudan"
2094
  msgstr ""
2095
 
2096
+ #: inc/helpers/helper-form-templates.php:1083 inc/helpers/helper-misc.php:448
2097
  msgid "Sweden"
2098
  msgstr ""
2099
 
2100
+ #: inc/helpers/helper-form-templates.php:1084 inc/helpers/helper-misc.php:433
2101
  msgid "Singapore"
2102
  msgstr ""
2103
 
2104
+ #: inc/helpers/helper-form-templates.php:1085
2105
  msgid "Saint Helena"
2106
  msgstr ""
2107
 
2108
+ #: inc/helpers/helper-form-templates.php:1086 inc/helpers/helper-misc.php:435
2109
  msgid "Slovenia"
2110
  msgstr ""
2111
 
2112
+ #: inc/helpers/helper-form-templates.php:1087
2113
  msgid "Slovakia"
2114
  msgstr ""
2115
 
2116
+ #: inc/helpers/helper-form-templates.php:1088 inc/helpers/helper-misc.php:432
2117
  msgid "Sierra Leone"
2118
  msgstr ""
2119
 
2120
+ #: inc/helpers/helper-form-templates.php:1089 inc/helpers/helper-misc.php:427
2121
  msgid "San Marino"
2122
  msgstr ""
2123
 
2124
+ #: inc/helpers/helper-form-templates.php:1090 inc/helpers/helper-misc.php:430
2125
  msgid "Senegal"
2126
  msgstr ""
2127
 
2128
+ #: inc/helpers/helper-form-templates.php:1091 inc/helpers/helper-misc.php:437
2129
  msgid "Somalia"
2130
  msgstr ""
2131
 
2132
+ #: inc/helpers/helper-form-templates.php:1092 inc/helpers/helper-misc.php:445
2133
  msgid "Suriname"
2134
  msgstr ""
2135
 
2136
+ #: inc/helpers/helper-form-templates.php:1093 inc/helpers/helper-misc.php:428
2137
  msgid "Sao Tome and Principe"
2138
  msgstr ""
2139
 
2140
+ #: inc/helpers/helper-form-templates.php:1094 inc/helpers/helper-misc.php:308
2141
  msgid "El Salvador"
2142
  msgstr ""
2143
 
2144
+ #: inc/helpers/helper-form-templates.php:1095 inc/helpers/helper-misc.php:450
2145
  msgid "Syrian Arab Republic"
2146
  msgstr ""
2147
 
2148
+ #: inc/helpers/helper-form-templates.php:1096 inc/helpers/helper-misc.php:447
2149
  msgid "Swaziland"
2150
  msgstr ""
2151
 
2152
+ #: inc/helpers/helper-form-templates.php:1097 inc/helpers/helper-misc.php:462
2153
  msgid "Turks and Caicos Islands"
2154
  msgstr ""
2155
 
2156
+ #: inc/helpers/helper-form-templates.php:1098 inc/helpers/helper-misc.php:285
2157
  msgid "Chad"
2158
  msgstr ""
2159
 
2160
+ #: inc/helpers/helper-form-templates.php:1099 inc/helpers/helper-misc.php:455
2161
  msgid "Togo"
2162
  msgstr ""
2163
 
2164
+ #: inc/helpers/helper-form-templates.php:1100 inc/helpers/helper-misc.php:454
2165
  msgid "Thailand"
2166
  msgstr ""
2167
 
2168
+ #: inc/helpers/helper-form-templates.php:1101 inc/helpers/helper-misc.php:452
2169
  msgid "Tajikistan"
2170
  msgstr ""
2171
 
2172
+ #: inc/helpers/helper-form-templates.php:1102 inc/helpers/helper-misc.php:456
2173
  msgid "Tokelau"
2174
  msgstr ""
2175
 
2176
+ #: inc/helpers/helper-form-templates.php:1103
2177
  msgid "Timor-leste"
2178
  msgstr ""
2179
 
2180
+ #: inc/helpers/helper-form-templates.php:1104 inc/helpers/helper-misc.php:461
2181
  msgid "Turkmenistan"
2182
  msgstr ""
2183
 
2184
+ #: inc/helpers/helper-form-templates.php:1105 inc/helpers/helper-misc.php:459
2185
  msgid "Tunisia"
2186
  msgstr ""
2187
 
2188
+ #: inc/helpers/helper-form-templates.php:1106 inc/helpers/helper-misc.php:457
2189
  msgid "Tonga"
2190
  msgstr ""
2191
 
2192
+ #: inc/helpers/helper-form-templates.php:1107 inc/helpers/helper-misc.php:460
2193
  msgid "Turkey"
2194
  msgstr ""
2195
 
2196
+ #: inc/helpers/helper-form-templates.php:1108 inc/helpers/helper-misc.php:458
2197
  msgid "Trinidad and Tobago"
2198
  msgstr ""
2199
 
2200
+ #: inc/helpers/helper-form-templates.php:1109 inc/helpers/helper-misc.php:463
2201
  msgid "Tuvalu"
2202
  msgstr ""
2203
 
2204
+ #: inc/helpers/helper-form-templates.php:1110 inc/helpers/helper-misc.php:451
2205
  msgid "Taiwan, Province of China"
2206
  msgstr ""
2207
 
2208
+ #: inc/helpers/helper-form-templates.php:1111 inc/helpers/helper-misc.php:453
2209
  msgid "Tanzania, United Republic of"
2210
  msgstr ""
2211
 
2212
+ #: inc/helpers/helper-form-templates.php:1112 inc/helpers/helper-misc.php:465
2213
  msgid "Ukraine"
2214
  msgstr ""
2215
 
2216
+ #: inc/helpers/helper-form-templates.php:1113 inc/helpers/helper-misc.php:464
2217
  msgid "Uganda"
2218
  msgstr ""
2219
 
2220
+ #: inc/helpers/helper-form-templates.php:1114 inc/helpers/helper-misc.php:468
2221
  msgid "United States"
2222
  msgstr ""
2223
 
2224
+ #: inc/helpers/helper-form-templates.php:1115 inc/helpers/helper-misc.php:470
2225
  msgid "Uruguay"
2226
  msgstr ""
2227
 
2228
+ #: inc/helpers/helper-form-templates.php:1116 inc/helpers/helper-misc.php:471
2229
  msgid "Uzbekistan"
2230
  msgstr ""
2231
 
2232
+ #: inc/helpers/helper-form-templates.php:1117 inc/helpers/helper-misc.php:425
2233
  msgid "Saint Vincent and the Grenadines"
2234
  msgstr ""
2235
 
2236
+ #: inc/helpers/helper-form-templates.php:1118 inc/helpers/helper-misc.php:473
2237
  msgid "Venezuela"
2238
  msgstr ""
2239
 
2240
+ #: inc/helpers/helper-form-templates.php:1119
2241
  msgid "Virgin Islands, British"
2242
  msgstr ""
2243
 
2244
+ #: inc/helpers/helper-form-templates.php:1120
2245
  msgid "Virgin Islands, U.S."
2246
  msgstr ""
2247
 
2248
+ #: inc/helpers/helper-form-templates.php:1121 inc/helpers/helper-misc.php:474
2249
  msgid "Vietnam"
2250
  msgstr ""
2251
 
2252
+ #: inc/helpers/helper-form-templates.php:1122 inc/helpers/helper-misc.php:472
2253
  msgid "Vanuatu"
2254
  msgstr ""
2255
 
2256
+ #: inc/helpers/helper-form-templates.php:1123
2257
  msgid "Wallis and Futuna"
2258
  msgstr ""
2259
 
2260
+ #: inc/helpers/helper-form-templates.php:1124 inc/helpers/helper-misc.php:426
2261
  msgid "Samoa"
2262
  msgstr ""
2263
 
2264
+ #: inc/helpers/helper-form-templates.php:1125 inc/helpers/helper-misc.php:479
2265
  msgid "Yemen"
2266
  msgstr ""
2267
 
2268
+ #: inc/helpers/helper-form-templates.php:1126 inc/helpers/helper-misc.php:382
2269
  msgid "Mayotte"
2270
  msgstr ""
2271
 
2272
+ #: inc/helpers/helper-form-templates.php:1127 inc/helpers/helper-misc.php:438
2273
  msgid "South Africa"
2274
  msgstr ""
2275
 
2276
+ #: inc/helpers/helper-form-templates.php:1128 inc/helpers/helper-misc.php:481
2277
  msgid "Zambia"
2278
  msgstr ""
2279
 
2280
+ #: inc/helpers/helper-form-templates.php:1129 inc/helpers/helper-misc.php:482
2281
  msgid "Zimbabwe"
2282
  msgstr ""
2283
 
2726
  msgid "of"
2727
  msgstr ""
2728
 
2729
+ #: inc/templates/customize-form-style.php:31
2730
  msgid "Back"
2731
  msgstr ""
2732
 
2733
+ #: inc/templates/customize-form-style.php:34
2734
  msgid "You are customizing"
2735
  msgstr ""
2736
 
2737
+ #: inc/templates/customize-form-style.php:127
2738
+ msgid "Add a unique HTML ID to your form. Write without a hash (#) character."
2739
+ msgstr ""
2740
+
2741
  #: inc/templates/customize-header-actions.php:3
2742
  msgid "Save Form"
2743
  msgstr ""
3308
  msgstr ""
3309
 
3310
  #: inc/templates/parts/customize-email.php:65
3311
+ msgid "Suggest common email domains"
3312
+ msgstr ""
3313
+
3314
+ #: inc/templates/parts/customize-email.php:70
3315
  #: inc/templates/parts/customize-number.php:96
3316
  #: inc/templates/parts/customize-phone.php:88
3317
  msgid "Require confirmation of the value"
3318
  msgstr ""
3319
 
3320
+ #: inc/templates/parts/customize-email.php:74
3321
  #: inc/templates/parts/customize-number.php:100
3322
  #: inc/templates/parts/customize-phone.php:92
3323
  msgid "Confirmation field title"
3489
  msgid "Each row is required"
3490
  msgstr ""
3491
 
3492
+ #: inc/templates/parts/frontend-address.php:39
3493
+ #: inc/templates/parts/frontend-address.php:54
3494
  msgid "Country"
3495
  msgstr ""
3496
 
3497
+ #: inc/templates/parts/frontend-address.php:64
3498
  msgid "City"
3499
  msgstr ""
3500
 
readme.txt CHANGED
@@ -3,9 +3,9 @@
3
  Contributors: thethemefoundry
4
  Tags: contact, contact form, email, feedback form, form, form builder, custom form, lead generation, survey form, quote form
5
  Requires at least: 4.8
6
- Tested up to: 4.9.7
7
  Requires PHP: 5.2.4
8
- Stable tag: 1.6.10
9
  License: GPLv2 or later
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
 
@@ -80,6 +80,18 @@ Absolutely! HappyForms gets out of the way and is designed to work with any them
80
 
81
  == Changelog ==
82
 
 
 
 
 
 
 
 
 
 
 
 
 
83
  = 1.6.10 =
84
  * New feature: Gutenberg block allowing you to add HappyForms to your content in Gutenberg editor.
85
  * New feature: Style control for submit button padding.
@@ -316,6 +328,9 @@ Absolutely! HappyForms gets out of the way and is designed to work with any them
316
 
317
  == Upgrade Notice ==
318
 
 
 
 
319
  = 1.6.10 =
320
  * Gutenberg support, new style control and improvements.
321
 
3
  Contributors: thethemefoundry
4
  Tags: contact, contact form, email, feedback form, form, form builder, custom form, lead generation, survey form, quote form
5
  Requires at least: 4.8
6
+ Tested up to: 4.9.8
7
  Requires PHP: 5.2.4
8
+ Stable tag: 1.6.11
9
  License: GPLv2 or later
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
 
80
 
81
  == Changelog ==
82
 
83
+ = 1.6.11 =
84
+ * New feature: Autocomplete for Email part that suggests common email domains when "@" is typed.
85
+ * New feature: Form padding style control for adding more space between form parts and its container.
86
+ * New feature: It's now possible to set a custom HTML ID on form elements.
87
+ * New feature: New style control allows for notices above or below form elements.
88
+ * Improvement: Better keyboard navigation for dropdowns.
89
+ * Improvement: CSV exports now includes column headers.
90
+ * Improvement: Duplicated forms now have current date of duplication.
91
+ * Bugfix: Phone flags were not showing when international number format was checked in Phone part.
92
+ * Bugfix: Title placement applied globally sometimes resulted in newly added parts inheriting the value even when not available for that part.
93
+ * Bugfix: Various fixes related to styles and form parts preview.
94
+
95
  = 1.6.10 =
96
  * New feature: Gutenberg block allowing you to add HappyForms to your content in Gutenberg editor.
97
  * New feature: Style control for submit button padding.
328
 
329
  == Upgrade Notice ==
330
 
331
+ = 1.6.11 ==
332
+ * New style controls, email autocomplete feature, and bugfixes.
333
+
334
  = 1.6.10 =
335
  * Gutenberg support, new style control and improvements.
336