Contact Form by WPForms – Drag & Drop Form Builder for WordPress - Version 1.2.6

Version Description

  • Added: Miscellaneous internal improvements
  • Fixed: Incorrectly named variables in the front-end javascript preventing features from properly being extendable
Download this release

Release Info

Developer jaredatch
Plugin Icon 128x128 Contact Form by WPForms – Drag & Drop Form Builder for WordPress
Version 1.2.6
Comparing to
See all releases

Code changes from version 1.2.5.1 to 1.2.6

assets/css/admin-builder.css CHANGED
@@ -51,7 +51,7 @@ body {
51
 
52
  #wpforms-builder .wpforms-alert {
53
  padding: 10px;
54
- margin-bottom: 15px;
55
  border: 1px solid transparent;
56
  }
57
 
51
 
52
  #wpforms-builder .wpforms-alert {
53
  padding: 10px;
54
+ margin-bottom: 18px;
55
  border: 1px solid transparent;
56
  }
57
 
assets/js/admin-builder.js CHANGED
@@ -61,13 +61,18 @@
61
  WPFormsBuilder.formSave(false);
62
  }
63
 
 
 
64
  // Setup/cache some vars not available before
65
  s.formID = $('#wpforms-builder-form').data('id');
66
  s.formData = $('#wpforms-builder-form').serializeObject();
67
  s.pagebreakTop = $('.wpforms-pagebreak-top').length;
68
  s.pagebreakBottom = $('.wpforms-pagebreak-bottom').length;
69
 
70
- wpforms_builder.saved_state = $('#wpforms-builder-form').serializeJSON();
 
 
 
71
 
72
  // If there is a section configured, display it. Otherwise
73
  // we show the first panel by default.
@@ -1722,6 +1727,22 @@
1722
 
1723
  // Global select field mapping
1724
  jQuery(document).on('wpformsFieldUpdate', WPFormsBuilder.fieldMapSelect);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1725
  },
1726
 
1727
  /**
61
  WPFormsBuilder.formSave(false);
62
  }
63
 
64
+ wpforms_builder.saved_state = $('#wpforms-builder-form').serializeJSON();
65
+
66
  // Setup/cache some vars not available before
67
  s.formID = $('#wpforms-builder-form').data('id');
68
  s.formData = $('#wpforms-builder-form').serializeObject();
69
  s.pagebreakTop = $('.wpforms-pagebreak-top').length;
70
  s.pagebreakBottom = $('.wpforms-pagebreak-bottom').length;
71
 
72
+ // @todo - performance testing
73
+ //wpforms_builder.saved_state = $('#wpforms-builder-form').serializeJSON();
74
+ //jQuery.parseJSON(json);
75
+ //console.log( $(':input').length);
76
 
77
  // If there is a section configured, display it. Otherwise
78
  // we show the first panel by default.
1727
 
1728
  // Global select field mapping
1729
  jQuery(document).on('wpformsFieldUpdate', WPFormsBuilder.fieldMapSelect);
1730
+
1731
+ // Restrict user money input fields
1732
+ $(document).on('input', '.wpforms-money-input', function(event) {
1733
+ var $this = $(this),
1734
+ amount = $this.val();
1735
+ $this.val(amount.replace(/[^0-9.,]/g, ''));
1736
+ });
1737
+
1738
+ // Format user money input fields
1739
+ $(document).on('focusout', '.wpforms-money-input', function(event) {
1740
+ var $this = $(this),
1741
+ amount = $this.val(),
1742
+ sanitized = wpf.amountSanitize(amount),
1743
+ formatted = wpf.amountFormat(sanitized);
1744
+ $this.val(formatted);
1745
+ });
1746
  },
1747
 
1748
  /**
assets/js/admin-utils.js CHANGED
@@ -210,6 +210,123 @@ var wpf = {
210
  */
211
  isNumber: function(n) {
212
  return !isNaN(parseFloat(n)) && isFinite(n);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
213
  }
214
  }
215
  wpf.init();
210
  */
211
  isNumber: function(n) {
212
  return !isNaN(parseFloat(n)) && isFinite(n);
213
+ },
214
+
215
+ /**
216
+ * Sanitize amount and convert to standard format for calculations.
217
+ *
218
+ * @since 1.2.6
219
+ */
220
+ amountSanitize: function(amount) {
221
+
222
+ amount = amount.replace(/[^0-9.,]/g,'');
223
+
224
+ if ( wpforms_builder.currency_decimal == ',' && ( amount.indexOf(wpforms_builder.currency_decimal) !== -1 ) ) {
225
+ if ( wpforms_builder.currency_thousands == '.' && amount.indexOf(wpforms_builder.currency_thousands) !== -1 ) {;
226
+ amount = amount.replace(wpforms_builder.currency_thousands,'');
227
+ } else if( wpforms_builder.currency_thousands == '' && amount.indexOf('.') !== -1 ) {
228
+ amount = amount.replace('.','');
229
+ }
230
+ amount = amount.replace(wpforms_builder.currency_decimal,'.');
231
+ } else if ( wpforms_builder.currency_thousands == ',' && ( amount.indexOf(wpforms_builder.currency_thousands) !== -1 ) ) {
232
+ amount = amount.replace(wpforms_builder.currency_thousands,'');
233
+ }
234
+
235
+ return wpf.numberFormat( amount, 2, '.', '' );
236
+ },
237
+
238
+ /**
239
+ * Format amount.
240
+ *
241
+ * @since 1.2.6
242
+ */
243
+ amountFormat: function(amount) {
244
+
245
+ amount = String(amount);
246
+
247
+ // Format the amount
248
+ if ( wpforms_builder.currency_decimal == ',' && ( amount.indexOf(wpforms_builder.currency_decimal) !== -1 ) ) {
249
+ var sepFound = amount.indexOf(wpforms_builder.currency_decimal);
250
+ whole = amount.substr(0, sepFound);
251
+ part = amount.substr(sepFound+1, amount.strlen-1);
252
+ amount = whole + '.' + part;
253
+ }
254
+
255
+ // Strip , from the amount (if set as the thousands separator)
256
+ if ( wpforms_builder.currency_thousands == ',' && ( amount.indexOf(wpforms_builder.currency_thousands) !== -1 ) ) {
257
+ amount = amount.replace(',','');
258
+ }
259
+
260
+ if ( wpf.empty( amount ) ) {
261
+ amount = 0;
262
+ }
263
+
264
+ return wpf.numberFormat( amount, 2, wpforms_builder.currency_decimal, wpforms_builder.currency_thousands );
265
+ },
266
+
267
+ /**
268
+ * Format number.
269
+ *
270
+ * @link http://locutus.io/php/number_format/
271
+ * @since 1.2.6
272
+ */
273
+ numberFormat: function (number, decimals, decimalSep, thousandsSep) {
274
+
275
+ number = (number + '').replace(/[^0-9+\-Ee.]/g, '')
276
+ var n = !isFinite(+number) ? 0 : +number
277
+ var prec = !isFinite(+decimals) ? 0 : Math.abs(decimals)
278
+ var sep = (typeof thousandsSep === 'undefined') ? ',' : thousandsSep
279
+ var dec = (typeof decimalSep === 'undefined') ? '.' : decimalSep
280
+ var s = ''
281
+
282
+ var toFixedFix = function (n, prec) {
283
+ var k = Math.pow(10, prec)
284
+ return '' + (Math.round(n * k) / k).toFixed(prec)
285
+ }
286
+
287
+ // @todo: for IE parseFloat(0.55).toFixed(0) = 0;
288
+ s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.')
289
+ if (s[0].length > 3) {
290
+ s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep)
291
+ }
292
+ if ((s[1] || '').length < prec) {
293
+ s[1] = s[1] || ''
294
+ s[1] += new Array(prec - s[1].length + 1).join('0')
295
+ }
296
+
297
+ return s.join(dec)
298
+ },
299
+
300
+ /**
301
+ * Empty check similar to PHP.
302
+ *
303
+ * @link http://locutus.io/php/empty/
304
+ * @since 1.2.6
305
+ */
306
+ empty: function(mixedVar) {
307
+
308
+ var undef
309
+ var key
310
+ var i
311
+ var len
312
+ var emptyValues = [undef, null, false, 0, '', '0']
313
+
314
+ for (i = 0, len = emptyValues.length; i < len; i++) {
315
+ if (mixedVar === emptyValues[i]) {
316
+ return true
317
+ }
318
+ }
319
+
320
+ if (typeof mixedVar === 'object') {
321
+ for (key in mixedVar) {
322
+ if (mixedVar.hasOwnProperty(key)) {
323
+ return false
324
+ }
325
+ }
326
+ return true
327
+ }
328
+
329
+ return false
330
  }
331
  }
332
  wpf.init();
assets/js/wpforms.js CHANGED
@@ -25,16 +25,11 @@
25
  */
26
  ready: function() {
27
 
28
- // Payments: Update Total field(s) with latest calculation
29
- $('.wpforms-payment-total').each(function(index, el) {
30
- WPForms.calculateTotalUpdate(this);
31
- })
32
-
33
  WPForms.loadValidation();
34
  WPForms.loadDatePicker();
35
  WPForms.loadTimePicker();
36
  WPForms.loadInputMask();
37
- WPForms.loadCreditCardValidation();
38
  },
39
 
40
  /**
@@ -70,20 +65,6 @@
70
  // @todo validate CVC and expiration
71
  }
72
 
73
- // Payments: Validate method for currency
74
- // @link https://github.com/jzaefferer/jquery-validation/blob/master/src/additional/currency.js
75
- $.validator.addMethod( "currency", function(value, element, param) {
76
- var isParamString = typeof param === "string",
77
- symbol = isParamString ? param : param[0],
78
- soft = isParamString ? true : param[1],
79
- regex;
80
- symbol = symbol.replace( /,/g, "" );
81
- symbol = soft ? symbol + "]" : symbol + "]?";
82
- regex = "^[" + symbol + "([1-9]{1}[0-9]{0,2}(\\,[0-9]{3})*(\\.[0-9]{0,2})?|[1-9]{1}[0-9]{0,}(\\.[0-9]{0,2})?|0(\\.[0-9]{0,2})?|(\\.[0-9]{1,2})?)$";
83
- regex = new RegExp(regex);
84
- return this.optional(element) || regex.test(value);
85
- }, "Please use a valid currency format");
86
-
87
  // Validate method for file extensions
88
  $.validator.addMethod( "extension", function(value, element, param) {
89
  param = typeof param === "string" ? param.replace( /,/g, "|" ) : "png|jpe?g|gif";
@@ -117,8 +98,8 @@
117
  var form = $(this),
118
  formID = form.data('formid');
119
 
120
- if (typeof window['wpforms_'+formID] != "undefined" && window['wpforms_'+id].hasOwnProperty('validate')) {
121
- properties = window['wpforms_'+id].validate;
122
  } else if ( typeof wpforms_validate != "undefined") {
123
  properties = wpforms_validate;
124
  } else {
@@ -153,8 +134,8 @@
153
  form = element.closest('.wpforms-form'),
154
  formID = form.data('formid');
155
 
156
- if (typeof window['wpforms_'+formID] != "undefined" && window['wpforms_'+id].hasOwnProperty('pickadate') ) {
157
- properties = window['wpforms_'+id].pickadate;
158
  } else if ( typeof wpforms_pickadate != "undefined") {
159
  properties = wpforms_pickadate;
160
  } else {
@@ -186,8 +167,8 @@
186
  form = element.closest('.wpforms-form'),
187
  formID = form.data('formid');
188
 
189
- if (typeof window['wpforms_'+formID] != "undefined" && window['wpforms_'+id].hasOwnProperty('pickatime') ) {
190
- properties = window['wpforms_'+id].pickadate;
191
  } else if ( typeof wpforms_pickatime != "undefined") {
192
  properties = wpforms_pickatime;
193
  } else {
@@ -216,13 +197,18 @@
216
  },
217
 
218
  /**
219
- * Payments: Load credit card validation.
220
  *
221
- * @since 1.2.3
222
  */
223
- loadCreditCardValidation: function() {
224
 
225
- // Only load if jQuery payment library exists
 
 
 
 
 
226
  if(typeof $.fn.payment !== 'undefined') {
227
  $('.wpforms-field-credit-card-cardnumber').payment('formatCardNumber');
228
  $('.wpforms-field-credit-card-cardcvc').payment('formatCardCVC');
@@ -248,9 +234,25 @@
248
 
249
  // Payments: Update Total field(s) when latest calculation.
250
  $(document).on('change input', '.wpforms-payment-price', function(event) {
251
- WPForms.calculateTotalUpdate(this);
252
  });
253
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
254
  // OptinMonster: initialize again after OM is finished.
255
  // This is to accomodate moving the form in the DOM.
256
  $(document).on('OptinMonsterAfterInject', function(event) {
@@ -258,7 +260,11 @@
258
  });
259
  },
260
 
261
-
 
 
 
 
262
  pagebreakNav: function(el) {
263
 
264
  var $this = $(el),
@@ -360,46 +366,189 @@
360
  *
361
  * @since 1.2.3
362
  */
363
- calculateTotal: function(el) {
 
 
 
 
 
 
364
 
365
- var $form = $(el),
366
- total = 0.00;
367
  $('.wpforms-payment-price').each(function(index, el) {
368
  var amount = 0,
369
  $this = $(this);
370
- if ($this.attr('type') === 'text') {
 
371
  amount = $this.val();
372
  } else if ($this.attr('type') === 'radio' && $this.is(':checked')) {
373
  amount = $this.data('amount');
374
  }
375
- if (amount != 0) {
376
- amount = amount.replace(/[^0-9.]/gi,'');
377
- amount = parseFloat(amount).toFixed(2).replace(/(\d)(?=(\d{6})+\.)/g, "$1,");
378
- total = parseFloat(total)+parseFloat(amount);
379
  }
380
  });
381
- return parseFloat(total).toFixed(2);
382
- },
383
 
384
- /**
385
- * Payments: Update Total field(s) with latest calculation.
386
- *
387
- * @since 1.2.3
388
- */
389
- calculateTotalUpdate: function(el) {
390
 
391
- var $form = $(el).closest('.wpforms-form'),
392
- total = WPForms.calculateTotal($form);
393
- if (isNaN(total)) {
394
- total = '0.00';
395
  }
 
396
  $form.find('.wpforms-payment-total').each(function(index, el) {
397
  if ($(this).attr('type') == 'hidden') {
398
- $(this).val('$'+total);
399
  } else {
400
- $(this).text('$'+total);
401
  }
402
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
403
  }
404
  }
405
 
25
  */
26
  ready: function() {
27
 
 
 
 
 
 
28
  WPForms.loadValidation();
29
  WPForms.loadDatePicker();
30
  WPForms.loadTimePicker();
31
  WPForms.loadInputMask();
32
+ WPForms.loadPayments();
33
  },
34
 
35
  /**
65
  // @todo validate CVC and expiration
66
  }
67
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
68
  // Validate method for file extensions
69
  $.validator.addMethod( "extension", function(value, element, param) {
70
  param = typeof param === "string" ? param.replace( /,/g, "|" ) : "png|jpe?g|gif";
98
  var form = $(this),
99
  formID = form.data('formid');
100
 
101
+ if (typeof window['wpforms_'+formID] != "undefined" && window['wpforms_'+formID].hasOwnProperty('validate')) {
102
+ properties = window['wpforms_'+formID].validate;
103
  } else if ( typeof wpforms_validate != "undefined") {
104
  properties = wpforms_validate;
105
  } else {
134
  form = element.closest('.wpforms-form'),
135
  formID = form.data('formid');
136
 
137
+ if (typeof window['wpforms_'+formID] != "undefined" && window['wpforms_'+formID].hasOwnProperty('pickadate') ) {
138
+ properties = window['wpforms_'+formID].pickadate;
139
  } else if ( typeof wpforms_pickadate != "undefined") {
140
  properties = wpforms_pickadate;
141
  } else {
167
  form = element.closest('.wpforms-form'),
168
  formID = form.data('formid');
169
 
170
+ if (typeof window['wpforms_'+formID] != "undefined" && window['wpforms_'+formID].hasOwnProperty('pickatime') ) {
171
+ properties = window['wpforms_'+formID].pickadate;
172
  } else if ( typeof wpforms_pickatime != "undefined") {
173
  properties = wpforms_pickatime;
174
  } else {
197
  },
198
 
199
  /**
200
+ * Payments: Do various payment-related tasks on load.
201
  *
202
+ * @since 1.2.6
203
  */
204
+ loadPayments: function() {
205
 
206
+ // Update Total field(s) with latest calculation
207
+ $('.wpforms-payment-total').each(function(index, el) {
208
+ WPForms.amountTotal(this);
209
+ })
210
+
211
+ // Credit card valdation
212
  if(typeof $.fn.payment !== 'undefined') {
213
  $('.wpforms-field-credit-card-cardnumber').payment('formatCardNumber');
214
  $('.wpforms-field-credit-card-cardcvc').payment('formatCardCVC');
234
 
235
  // Payments: Update Total field(s) when latest calculation.
236
  $(document).on('change input', '.wpforms-payment-price', function(event) {
237
+ WPForms.amountTotal(this);
238
  });
239
 
240
+ // Payments: Restrict user input payment fields
241
+ $(document).on('input', '.wpforms-payment-user-input', function(event) {
242
+ var $this = $(this),
243
+ amount = $this.val();
244
+ $this.val(amount.replace(/[^0-9.,]/g, ''));
245
+ });
246
+
247
+ // Payments: Sanitize/format user input amounts
248
+ $(document).on('focusout', '.wpforms-payment-user-input', function(event) {
249
+ var $this = $(this),
250
+ amount = $this.val(),
251
+ sanitized = WPForms.amountSanitize(amount),
252
+ formatted = WPForms.amountFormat(sanitized);
253
+ $this.val(formatted);
254
+ });
255
+
256
  // OptinMonster: initialize again after OM is finished.
257
  // This is to accomodate moving the form in the DOM.
258
  $(document).on('OptinMonsterAfterInject', function(event) {
260
  });
261
  },
262
 
263
+ /**
264
+ * Update Pagebreak navigation.
265
+ *
266
+ * @since 1.2.2
267
+ */
268
  pagebreakNav: function(el) {
269
 
270
  var $this = $(el),
366
  *
367
  * @since 1.2.3
368
  */
369
+ amountTotal: function(el) {
370
+
371
+ var $form = $(el).closest('.wpforms-form'),
372
+ total = 0,
373
+ totalFormatted = 0,
374
+ totalFormattedSymbol = 0,
375
+ currency = WPForms.getCurrency();
376
 
 
 
377
  $('.wpforms-payment-price').each(function(index, el) {
378
  var amount = 0,
379
  $this = $(this);
380
+
381
+ if ($this.attr('type') === 'text' || $this.attr('type') === 'hidden' ) {
382
  amount = $this.val();
383
  } else if ($this.attr('type') === 'radio' && $this.is(':checked')) {
384
  amount = $this.data('amount');
385
  }
386
+ if (!WPForms.empty(amount)) {
387
+ amount = WPForms.amountSanitize(amount);
388
+ total = Number(total)+Number(amount);
 
389
  }
390
  });
 
 
391
 
392
+ totalFormatted = WPForms.amountFormat(total);
 
 
 
 
 
393
 
394
+ if ( 'left' == currency.symbol_pos) {
395
+ totalFormattedSymbol = currency.symbol+' '+totalFormatted;
396
+ } else {
397
+ totalFormattedSymbol = totalFormatted+' '+currency.symbol;
398
  }
399
+
400
  $form.find('.wpforms-payment-total').each(function(index, el) {
401
  if ($(this).attr('type') == 'hidden') {
402
+ $(this).val(totalFormattedSymbol);
403
  } else {
404
+ $(this).text(totalFormattedSymbol);
405
  }
406
  });
407
+ },
408
+
409
+ /**
410
+ * Sanitize amount and convert to standard format for calculations.
411
+ *
412
+ * @since 1.2.6
413
+ */
414
+ amountSanitize: function(amount) {
415
+
416
+ var currency = WPForms.getCurrency();
417
+
418
+ amount = amount.replace(/[^0-9.,]/g,'');
419
+
420
+ if ( currency.decimal_sep == ',' && ( amount.indexOf(currency.decimal_sep) !== -1 ) ) {
421
+ if ( currency.thousands_sep == '.' && amount.indexOf(currency.thousands_sep) !== -1 ) {;
422
+ amount = amount.replace(currency.thousands_sep,'');
423
+ } else if( currency.thousands_sep == '' && amount.indexOf('.') !== -1 ) {
424
+ amount = amount.replace('.','');
425
+ }
426
+ amount = amount.replace(currency.decimal_sep,'.');
427
+ } else if ( currency.thousands_sep == ',' && ( amount.indexOf(currency.thousands_sep) !== -1 ) ) {
428
+ amount = amount.replace(currency.thousands_sep,'');
429
+ }
430
+
431
+ return WPForms.numberFormat( amount, 2, '.', '' );
432
+ },
433
+
434
+ /**
435
+ * Format amount.
436
+ *
437
+ * @since 1.2.6
438
+ */
439
+ amountFormat: function(amount) {
440
+
441
+ var currency = WPForms.getCurrency();
442
+
443
+ amount = String(amount);
444
+
445
+ // Format the amount
446
+ if ( currency.decimal_sep == ',' && ( amount.indexOf(currency.decimal_sep) !== -1 ) ) {
447
+ var sepFound = amount.indexOf(currency.decimal_sep);
448
+ whole = amount.substr(0, sepFound);
449
+ part = amount.substr(sepFound+1, amount.strlen-1);
450
+ amount = whole + '.' + part;
451
+ }
452
+
453
+ // Strip , from the amount (if set as the thousands separator)
454
+ if ( currency.thousands_sep == ',' && ( amount.indexOf(currency.thousands_sep) !== -1 ) ) {
455
+ amount = amount.replace(',','');
456
+ }
457
+
458
+ if ( WPForms.empty( amount ) ) {
459
+ amount = 0;
460
+ }
461
+
462
+ return WPForms.numberFormat( amount, 2, currency.decimal_sep, currency.thousands_sep );
463
+ },
464
+
465
+ /**
466
+ * Get site currency settings.
467
+ *
468
+ * @since 1.2.6
469
+ */
470
+ getCurrency: function() {
471
+
472
+ var currency = {
473
+ thousands_sep: ',',
474
+ decimal_sep: '.',
475
+ symbol: '$',
476
+ symbol_pos: 'left'
477
+ }
478
+
479
+ if ( 'undefined' !== wpforms_currency) {
480
+ currency.thousands_sep = wpforms_currency.thousands;
481
+ currency.decimal_sep = wpforms_currency.decimal;
482
+ currency.symbol = wpforms_currency.symbol;
483
+ currency.symbol_pos = wpforms_currency.symbol_pos;
484
+ }
485
+
486
+ return currency;
487
+ },
488
+
489
+ /**
490
+ * Format number.
491
+ *
492
+ * @link http://locutus.io/php/number_format/
493
+ * @since 1.2.6
494
+ */
495
+ numberFormat: function (number, decimals, decimalSep, thousandsSep) {
496
+
497
+ number = (number + '').replace(/[^0-9+\-Ee.]/g, '')
498
+ var n = !isFinite(+number) ? 0 : +number
499
+ var prec = !isFinite(+decimals) ? 0 : Math.abs(decimals)
500
+ var sep = (typeof thousandsSep === 'undefined') ? ',' : thousandsSep
501
+ var dec = (typeof decimalSep === 'undefined') ? '.' : decimalSep
502
+ var s = ''
503
+
504
+ var toFixedFix = function (n, prec) {
505
+ var k = Math.pow(10, prec)
506
+ return '' + (Math.round(n * k) / k).toFixed(prec)
507
+ }
508
+
509
+ // @todo: for IE parseFloat(0.55).toFixed(0) = 0;
510
+ s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.')
511
+ if (s[0].length > 3) {
512
+ s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep)
513
+ }
514
+ if ((s[1] || '').length < prec) {
515
+ s[1] = s[1] || ''
516
+ s[1] += new Array(prec - s[1].length + 1).join('0')
517
+ }
518
+
519
+ return s.join(dec)
520
+ },
521
+
522
+ /**
523
+ * Empty check similar to PHP.
524
+ *
525
+ * @link http://locutus.io/php/empty/
526
+ * @since 1.2.6
527
+ */
528
+ empty: function(mixedVar) {
529
+
530
+ var undef
531
+ var key
532
+ var i
533
+ var len
534
+ var emptyValues = [undef, null, false, 0, '', '0']
535
+
536
+ for (i = 0, len = emptyValues.length; i < len; i++) {
537
+ if (mixedVar === emptyValues[i]) {
538
+ return true
539
+ }
540
+ }
541
+
542
+ if (typeof mixedVar === 'object') {
543
+ for (key in mixedVar) {
544
+ if (mixedVar.hasOwnProperty(key)) {
545
+ return false
546
+ }
547
+ }
548
+ return true
549
+ }
550
+
551
+ return false
552
  }
553
  }
554
 
includes/admin/builder/class-builder.php CHANGED
@@ -256,53 +256,53 @@ class WPForms_Builder {
256
  );
257
 
258
  $strings = array(
259
- 'ajax_url' => admin_url( 'admin-ajax.php' ),
260
- 'cancel' => __( 'Cancel', 'wpforms' ),
261
- 'ok' => __( 'OK', 'wpforms' ),
262
- 'close' => __( 'Close', 'wpforms' ),
263
- 'conditionals_change' => __( 'Due to form changes, conditional logic rules have been removed or updated:', 'wpforms' ),
264
- 'field' => __( 'Field', 'wpforms' ),
265
- 'field_locked' => __( 'Field Locked', 'wpforms' ),
266
- 'field_locked_msg' => __( 'This field cannot be deleted because it required by the form template.', 'wpforms' ),
267
- 'fields_available' => __( 'Available Fields', 'wpforms' ),
268
- 'fields_unavailable' => __( 'No fields available', 'wpforms' ),
269
- 'heads_up' => __( 'Heads up!', 'wpforms' ),
270
- 'nonce' => wp_create_nonce( 'wpforms-builder' ),
271
- 'no_email_fields' => __( 'No email fields', 'wpforms' ),
272
- 'notification_delete' => __( 'Are you sure you want to delete this notification?', 'wpforms' ),
273
- 'notification_prompt' => __( 'Enter a notification name', 'wpforms' ),
274
- 'notification_ph' => __( 'Eg: User Confirmation', 'wpforms' ),
275
- 'notification_error' => __( 'You must provide a notification name', 'wpforms' ),
276
- 'notification_error2' => __( 'Form must contain one notification. To disable all notifications use the setting Notifications dropdown setting.', 'wpforms' ),
277
- 'saving' => __( 'Saving ...', 'wpforms' ),
278
- 'saved' => __( 'Saved!', 'wpforms' ),
279
- 'save_exit' => __( 'Save and Exit', 'wpforms' ),
280
- 'loading' => __( 'Loading', 'wpforms' ),
281
- 'template_name' => !empty( $this->template['name'] ) ? $this->template['name'] : '',
282
- 'template_slug' => !empty( $this->template['slug'] ) ? $this->template['slug'] : '',
283
- 'template_modal_title' => !empty( $this->template['modal']['title'] ) ? $this->template['modal']['title'] : '',
284
- 'template_modal_msg' => !empty( $this->template['modal']['message'] ) ? $this->template['modal']['message'] : '',
285
- 'template_modal_display' => !empty( $this->template['modal_display'] ) ? $this->template['modal_display'] : '',
286
- 'template_select' => __( 'Use Template', 'wpforms' ),
287
- 'template_confirm' => __( 'Changing templates on an existing form will DELETE existing form fields. Are you sure you want apply the new template?', 'wpforms' ),
288
- 'embed_modal' => __( 'You are almost done. To embed this form on your site, please paste the following shortcode inside a post or page.', 'wpforms' ),
289
- 'embed_modal_2' => __( 'Or you can follow the instructions in this video.', 'wpforms' ),
290
- 'exit' => __( 'Exit', 'wpforms' ),
291
- 'exit_url' => admin_url( 'admin.php?page=wpforms-overview' ),
292
- 'exit_confirm' => __( 'If you exit without saving, your changes will be lost.', 'wpforms' ),
293
- 'delete_confirm' => __( 'Are you sure you want to delete this field?', 'wpforms' ),
294
- 'error_title' => __( 'Please enter a form title.', 'wpforms' ),
295
- 'error_choice' => __( 'This item must contain at least one choice.', 'wpforms' ),
296
- 'off' => __( 'Off', 'wpforms' ),
297
- 'on' => __( 'On', 'wpforms' ),
298
- 'other' => __( 'Other', 'wpforms' ),
299
- 'previous' => __( 'Previous', 'wpforms' ),
300
- 'saved_state' => '',
301
- 'smart_tags' => wpforms()->smart_tags->get(),
302
- 'smart_tags_show' => __( 'Show Smart Tags', 'wpforms' ),
303
- 'smart_tags_hide' => __( 'Hide Smart Tags', 'wpforms' ),
304
- 'select_field' => __( '-- Select Field --', 'wpforms' ),
305
- 'select_choice' => __( '-- Select Choice --', 'wpforms' ),
306
  );
307
  $strings = apply_filters( 'wpforms_builder_strings', $strings, $this->form );
308
 
256
  );
257
 
258
  $strings = array(
259
+ 'ajax_url' => admin_url( 'admin-ajax.php' ),
260
+ 'cancel' => __( 'Cancel', 'wpforms' ),
261
+ 'ok' => __( 'OK', 'wpforms' ),
262
+ 'close' => __( 'Close', 'wpforms' ),
263
+ 'conditionals_change' => __( 'Due to form changes, conditional logic rules have been removed or updated:', 'wpforms' ),
264
+ 'field' => __( 'Field', 'wpforms' ),
265
+ 'field_locked' => __( 'Field Locked', 'wpforms' ),
266
+ 'field_locked_msg' => __( 'This field cannot be deleted because it required by the form template.', 'wpforms' ),
267
+ 'fields_available' => __( 'Available Fields', 'wpforms' ),
268
+ 'fields_unavailable' => __( 'No fields available', 'wpforms' ),
269
+ 'heads_up' => __( 'Heads up!', 'wpforms' ),
270
+ 'nonce' => wp_create_nonce( 'wpforms-builder' ),
271
+ 'no_email_fields' => __( 'No email fields', 'wpforms' ),
272
+ 'notification_delete' => __( 'Are you sure you want to delete this notification?', 'wpforms' ),
273
+ 'notification_prompt' => __( 'Enter a notification name', 'wpforms' ),
274
+ 'notification_ph' => __( 'Eg: User Confirmation', 'wpforms' ),
275
+ 'notification_error' => __( 'You must provide a notification name', 'wpforms' ),
276
+ 'notification_error2' => __( 'Form must contain one notification. To disable all notifications use the setting Notifications dropdown setting.', 'wpforms' ),
277
+ 'saving' => __( 'Saving ...', 'wpforms' ),
278
+ 'saved' => __( 'Saved!', 'wpforms' ),
279
+ 'save_exit' => __( 'Save and Exit', 'wpforms' ),
280
+ 'loading' => __( 'Loading', 'wpforms' ),
281
+ 'template_name' => !empty( $this->template['name'] ) ? $this->template['name'] : '',
282
+ 'template_slug' => !empty( $this->template['slug'] ) ? $this->template['slug'] : '',
283
+ 'template_modal_title' => !empty( $this->template['modal']['title'] ) ? $this->template['modal']['title'] : '',
284
+ 'template_modal_msg' => !empty( $this->template['modal']['message'] ) ? $this->template['modal']['message'] : '',
285
+ 'template_modal_display' => !empty( $this->template['modal_display'] ) ? $this->template['modal_display'] : '',
286
+ 'template_select' => __( 'Use Template', 'wpforms' ),
287
+ 'template_confirm' => __( 'Changing templates on an existing form will DELETE existing form fields. Are you sure you want apply the new template?', 'wpforms' ),
288
+ 'embed_modal' => __( 'You are almost done. To embed this form on your site, please paste the following shortcode inside a post or page.', 'wpforms' ),
289
+ 'embed_modal_2' => __( 'Or you can follow the instructions in this video.', 'wpforms' ),
290
+ 'exit' => __( 'Exit', 'wpforms' ),
291
+ 'exit_url' => admin_url( 'admin.php?page=wpforms-overview' ),
292
+ 'exit_confirm' => __( 'If you exit without saving, your changes will be lost.', 'wpforms' ),
293
+ 'delete_confirm' => __( 'Are you sure you want to delete this field?', 'wpforms' ),
294
+ 'error_title' => __( 'Please enter a form title.', 'wpforms' ),
295
+ 'error_choice' => __( 'This item must contain at least one choice.', 'wpforms' ),
296
+ 'off' => __( 'Off', 'wpforms' ),
297
+ 'on' => __( 'On', 'wpforms' ),
298
+ 'other' => __( 'Other', 'wpforms' ),
299
+ 'previous' => __( 'Previous', 'wpforms' ),
300
+ 'saved_state' => '',
301
+ 'smart_tags' => wpforms()->smart_tags->get(),
302
+ 'smart_tags_show' => __( 'Show Smart Tags', 'wpforms' ),
303
+ 'smart_tags_hide' => __( 'Hide Smart Tags', 'wpforms' ),
304
+ 'select_field' => __( '-- Select Field --', 'wpforms' ),
305
+ 'select_choice' => __( '-- Select Choice --', 'wpforms' ),
306
  );
307
  $strings = apply_filters( 'wpforms_builder_strings', $strings, $this->form );
308
 
includes/class-frontend.php CHANGED
@@ -773,6 +773,23 @@ class WPForms_Frontend {
773
  true
774
  );
775
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
776
 
777
  // Load reCAPTCHA support if form supports it
778
  $site_key = wpforms_setting( 'recaptcha-site-key' );
773
  true
774
  );
775
 
776
+ // If we have payment fields then include currency details
777
+ $payment_fields = array( 'credit-card', 'payment-single', 'payment-multiple', 'payment-total' );
778
+ if ( $this->assets_global() || true == wpforms_has_field_type( $payment_fields , $this->forms, true ) ) :
779
+ $currency = wpforms_setting( 'currency', 'USD' );
780
+ $currencies = wpforms_get_currencies();
781
+ wp_localize_script(
782
+ 'wpforms',
783
+ 'wpforms_currency',
784
+ array(
785
+ 'code' => $currency,
786
+ 'thousands' => $currencies[$currency]['thousands_separator'],
787
+ 'decimal' => $currencies[$currency]['decimal_separator'],
788
+ 'symbol' => $currencies[$currency]['symbol'],
789
+ 'symbol_pos' => $currencies[$currency]['symbol_pos']
790
+ )
791
+ );
792
+ endif;
793
 
794
  // Load reCAPTCHA support if form supports it
795
  $site_key = wpforms_setting( 'recaptcha-site-key' );
languages/wpforms.pot CHANGED
@@ -2,9 +2,9 @@
2
  # This file is distributed under the same license as the WPForms package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: WPForms 1.2.5\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wpforms\n"
7
- "POT-Creation-Date: 2016-08-03 14:56:24+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -40,206 +40,206 @@ msgstr ""
40
  msgid "Error updating form template"
41
  msgstr ""
42
 
43
- #: includes/admin/builder/class-builder.php:260
44
  #: includes/admin/class-editor.php:96
45
- #: pro/includes/admin/entries/class-entries.php:976
46
  msgid "Cancel"
47
  msgstr ""
48
 
49
- #: includes/admin/builder/class-builder.php:261
50
  msgid "OK"
51
  msgstr ""
52
 
53
- #: includes/admin/builder/class-builder.php:262
54
  #: includes/admin/class-editor.php:70
55
  msgid "Close"
56
  msgstr ""
57
 
58
- #: includes/admin/builder/class-builder.php:263
59
  msgid ""
60
  "Due to form changes, conditional logic rules have been removed or updated:"
61
  msgstr ""
62
 
63
- #: includes/admin/builder/class-builder.php:264
64
- #: pro/includes/admin/entries/class-entries-table.php:141
65
  msgid "Field"
66
  msgstr ""
67
 
68
- #: includes/admin/builder/class-builder.php:265
69
  msgid "Field Locked"
70
  msgstr ""
71
 
72
- #: includes/admin/builder/class-builder.php:266
73
  msgid "This field cannot be deleted because it required by the form template."
74
  msgstr ""
75
 
76
- #: includes/admin/builder/class-builder.php:267
77
  msgid "Available Fields"
78
  msgstr ""
79
 
80
- #: includes/admin/builder/class-builder.php:268
81
  msgid "No fields available"
82
  msgstr ""
83
 
84
- #: includes/admin/builder/class-builder.php:269
85
  msgid "Heads up!"
86
  msgstr ""
87
 
88
- #: includes/admin/builder/class-builder.php:271
89
  msgid "No email fields"
90
  msgstr ""
91
 
92
- #: includes/admin/builder/class-builder.php:272
93
  msgid "Are you sure you want to delete this notification?"
94
  msgstr ""
95
 
96
- #: includes/admin/builder/class-builder.php:273
97
  msgid "Enter a notification name"
98
  msgstr ""
99
 
100
- #: includes/admin/builder/class-builder.php:274
101
  msgid "Eg: User Confirmation"
102
  msgstr ""
103
 
104
- #: includes/admin/builder/class-builder.php:275
105
  msgid "You must provide a notification name"
106
  msgstr ""
107
 
108
- #: includes/admin/builder/class-builder.php:276
109
  msgid ""
110
  "Form must contain one notification. To disable all notifications use the "
111
  "setting Notifications dropdown setting."
112
  msgstr ""
113
 
114
- #: includes/admin/builder/class-builder.php:277
115
  #: lite/includes/admin/class-settings.php:131
116
  #: pro/includes/admin/class-settings.php:135
117
  msgid "Saving ..."
118
  msgstr ""
119
 
120
- #: includes/admin/builder/class-builder.php:278
121
  msgid "Saved!"
122
  msgstr ""
123
 
124
- #: includes/admin/builder/class-builder.php:279
125
  msgid "Save and Exit"
126
  msgstr ""
127
 
128
- #: includes/admin/builder/class-builder.php:280
129
- #: includes/admin/builder/class-builder.php:341
130
  msgid "Loading"
131
  msgstr ""
132
 
133
- #: includes/admin/builder/class-builder.php:286
134
  msgid "Use Template"
135
  msgstr ""
136
 
137
- #: includes/admin/builder/class-builder.php:287
138
  msgid ""
139
  "Changing templates on an existing form will DELETE existing form fields. Are "
140
  "you sure you want apply the new template?"
141
  msgstr ""
142
 
143
- #: includes/admin/builder/class-builder.php:288
144
  msgid ""
145
  "You are almost done. To embed this form on your site, please paste the "
146
  "following shortcode inside a post or page."
147
  msgstr ""
148
 
149
- #: includes/admin/builder/class-builder.php:289
150
  msgid "Or you can follow the instructions in this video."
151
  msgstr ""
152
 
153
- #: includes/admin/builder/class-builder.php:290
154
- #: includes/admin/builder/class-builder.php:391
155
  msgid "Exit"
156
  msgstr ""
157
 
158
- #: includes/admin/builder/class-builder.php:292
159
  msgid "If you exit without saving, your changes will be lost."
160
  msgstr ""
161
 
162
- #: includes/admin/builder/class-builder.php:293
163
  msgid "Are you sure you want to delete this field?"
164
  msgstr ""
165
 
166
- #: includes/admin/builder/class-builder.php:294
167
  msgid "Please enter a form title."
168
  msgstr ""
169
 
170
- #: includes/admin/builder/class-builder.php:295
171
  msgid "This item must contain at least one choice."
172
  msgstr ""
173
 
174
- #: includes/admin/builder/class-builder.php:296
175
  #: includes/fields/class-base.php:235 lite/wpforms-lite.php:75
176
  #: pro/wpforms-pro.php:257
177
  msgid "Off"
178
  msgstr ""
179
 
180
- #: includes/admin/builder/class-builder.php:297
181
  #: includes/fields/class-base.php:235 lite/wpforms-lite.php:74
182
  #: pro/wpforms-pro.php:256
183
  msgid "On"
184
  msgstr ""
185
 
186
- #: includes/admin/builder/class-builder.php:298
187
  #: includes/templates/class-suggestion.php:59
188
  msgid "Other"
189
  msgstr ""
190
 
191
- #: includes/admin/builder/class-builder.php:299
192
  #: includes/class-frontend.php:482
193
  #: pro/includes/fields/class-page-break.php:144
194
  msgid "Previous"
195
  msgstr ""
196
 
197
- #: includes/admin/builder/class-builder.php:302
198
  #: includes/admin/builder/functions.php:210 includes/fields/class-base.php:335
199
  msgid "Show Smart Tags"
200
  msgstr ""
201
 
202
- #: includes/admin/builder/class-builder.php:303
203
  msgid "Hide Smart Tags"
204
  msgstr ""
205
 
206
- #: includes/admin/builder/class-builder.php:304
207
  msgid "-- Select Field --"
208
  msgstr ""
209
 
210
- #: includes/admin/builder/class-builder.php:305
211
  #: pro/includes/class-provider.php:912
212
  msgid "-- Select Choice --"
213
  msgstr ""
214
 
215
- #: includes/admin/builder/class-builder.php:364
216
  msgid "Now editing"
217
  msgstr ""
218
 
219
- #: includes/admin/builder/class-builder.php:374
220
- #: pro/includes/admin/entries/class-entries.php:510
221
  msgid "Preview Form"
222
  msgstr ""
223
 
224
- #: includes/admin/builder/class-builder.php:376
225
  #: includes/admin/overview/class-overview-table.php:159
226
  msgid "Preview"
227
  msgstr ""
228
 
229
- #: includes/admin/builder/class-builder.php:379
230
  msgid "Embed Form"
231
  msgstr ""
232
 
233
- #: includes/admin/builder/class-builder.php:381
234
  msgid "Embed"
235
  msgstr ""
236
 
237
- #: includes/admin/builder/class-builder.php:384
238
  msgid "Save Form"
239
  msgstr ""
240
 
241
- #: includes/admin/builder/class-builder.php:386
242
- #: pro/includes/admin/class-settings.php:435
243
  msgid "Save"
244
  msgstr ""
245
 
@@ -302,7 +302,7 @@ msgstr ""
302
 
303
  #: includes/admin/builder/panels/class-settings.php:21
304
  #: includes/admin/class-menu.php:84 lite/includes/admin/class-settings.php:390
305
- #: pro/includes/admin/class-settings.php:690
306
  msgid "Settings"
307
  msgstr ""
308
 
@@ -471,15 +471,15 @@ msgstr ""
471
 
472
  #: includes/admin/class-editor.php:88
473
  #: includes/admin/overview/class-overview-table.php:250
474
- #: pro/includes/admin/entries/class-entries.php:388
475
  msgid ""
476
  "Whoops, you haven't created a form yet. Want to <a href=\"%s\">give it a go</"
477
  "a>?"
478
  msgstr ""
479
 
480
- #. #-#-#-#-# wpforms.pot (WPForms 1.2.5) #-#-#-#-#
481
  #. Plugin Name of the plugin/theme
482
- #. #-#-#-#-# wpforms.pot (WPForms 1.2.5) #-#-#-#-#
483
  #. Author of the plugin/theme
484
  #: includes/admin/class-menu.php:39 includes/admin/class-menu.php:40
485
  #: includes/admin/class-menu.php:51
@@ -506,7 +506,7 @@ msgstr ""
506
 
507
  #: includes/admin/class-menu.php:72
508
  #: includes/admin/overview/class-overview-table.php:152
509
- #: pro/includes/admin/entries/class-entries.php:409 pro/wpforms-pro.php:198
510
  msgid "Entries"
511
  msgstr ""
512
 
@@ -639,9 +639,9 @@ msgstr ""
639
 
640
  #: includes/admin/overview/class-overview-table.php:173
641
  #: includes/admin/overview/class-overview-table.php:191
642
- #: pro/includes/admin/entries/class-entries-table.php:278
643
- #: pro/includes/admin/entries/class-entries-table.php:299
644
- #: pro/includes/admin/entries/class-entries.php:1011
645
  msgid "Delete"
646
  msgstr ""
647
 
@@ -699,17 +699,17 @@ msgid "Entry #%d"
699
  msgstr ""
700
 
701
  #: includes/class-preview.php:107
702
- #: pro/includes/admin/entries/class-entries.php:898
703
  msgid "This entry does not have any fields"
704
  msgstr ""
705
 
706
  #: includes/class-preview.php:124
707
- #: pro/includes/admin/entries/class-entries.php:914
708
  msgid "Field ID #%d"
709
  msgstr ""
710
 
711
  #: includes/class-preview.php:129
712
- #: pro/includes/admin/entries/class-entries.php:919
713
  msgid "Empty"
714
  msgstr ""
715
 
@@ -788,7 +788,7 @@ msgstr ""
788
 
789
  #: includes/class-smart-tags.php:40
790
  #: pro/includes/admin/entries/class-entries-export.php:172
791
- #: pro/includes/admin/entries/class-entries-table.php:119
792
  #: pro/includes/fields/class-date-time.php:48
793
  #: pro/includes/fields/class-date-time.php:77
794
  #: pro/includes/fields/class-date-time.php:155
@@ -836,7 +836,7 @@ msgstr ""
836
  msgid "Lost Password URL"
837
  msgstr ""
838
 
839
- #: includes/class-widget.php:127 pro/includes/admin/class-settings.php:518
840
  msgid "No forms"
841
  msgstr ""
842
 
@@ -1005,8 +1005,8 @@ msgstr ""
1005
  #: pro/includes/fields/class-address.php:564
1006
  #: pro/includes/fields/class-date-time.php:289
1007
  #: pro/includes/fields/class-file-upload.php:217
1008
- #: pro/includes/fields/class-payment-multiple.php:174
1009
- #: pro/includes/fields/class-payment-single.php:186
1010
  #: pro/includes/fields/class-url.php:126
1011
  msgid "This field is required"
1012
  msgstr ""
@@ -1731,56 +1731,52 @@ msgstr ""
1731
  msgid "Currency"
1732
  msgstr ""
1733
 
1734
- #: pro/includes/admin/class-settings.php:422
1735
- msgid "US Dollars (USD)"
1736
- msgstr ""
1737
-
1738
- #: pro/includes/admin/class-settings.php:424
1739
  msgid "Determines which currency to use for payments."
1740
  msgstr ""
1741
 
1742
- #: pro/includes/admin/class-settings.php:455
1743
  msgid ""
1744
  "You do not have any marketing add-ons activated. You can head over to the <a "
1745
  "href=\"%s\">Add-Ons page</a> to install and activate the add-on for your "
1746
  "provider."
1747
  msgstr ""
1748
 
1749
- #: pro/includes/admin/class-settings.php:476
1750
  msgid "Form(s) imported"
1751
  msgstr ""
1752
 
1753
- #: pro/includes/admin/class-settings.php:485
1754
  msgid "Form Import"
1755
  msgstr ""
1756
 
1757
- #: pro/includes/admin/class-settings.php:490
1758
  msgid "Select an export file."
1759
  msgstr ""
1760
 
1761
- #: pro/includes/admin/class-settings.php:496
1762
  msgid "Import"
1763
  msgstr ""
1764
 
1765
- #: pro/includes/admin/class-settings.php:503
1766
  msgid "Form Export"
1767
  msgstr ""
1768
 
1769
- #: pro/includes/admin/class-settings.php:508
1770
  msgid ""
1771
  "Select form(s) to download an export file. This can be imported into another "
1772
  "site."
1773
  msgstr ""
1774
 
1775
- #: pro/includes/admin/class-settings.php:524
1776
  msgid "Export"
1777
  msgstr ""
1778
 
1779
- #: pro/includes/admin/class-settings.php:584
1780
  msgid "Please upload a valid .json form export file."
1781
  msgstr ""
1782
 
1783
- #: pro/includes/admin/class-settings.php:584
1784
  #: pro/includes/admin/entries/class-entries-export.php:293
1785
  msgid "Error"
1786
  msgstr ""
@@ -1805,270 +1801,320 @@ msgstr ""
1805
  msgid "Starred"
1806
  msgstr ""
1807
 
1808
- #: pro/includes/admin/entries/class-entries-table.php:120
1809
- #: pro/includes/admin/entries/class-entries.php:1218
 
 
 
 
 
 
 
 
 
1810
  msgid "Actions"
1811
  msgstr ""
1812
 
1813
- #: pro/includes/admin/entries/class-entries-table.php:245
1814
- #: pro/includes/admin/entries/class-entries.php:242
1815
- msgid "Unstar entry"
1816
  msgstr ""
1817
 
1818
- #: pro/includes/admin/entries/class-entries-table.php:245
1819
  #: pro/includes/admin/entries/class-entries.php:243
 
 
 
 
 
1820
  msgid "Star entry"
1821
  msgstr ""
1822
 
1823
- #: pro/includes/admin/entries/class-entries-table.php:250
1824
- #: pro/includes/admin/entries/class-entries.php:245
1825
  msgid "Mark entry unread"
1826
  msgstr ""
1827
 
1828
- #: pro/includes/admin/entries/class-entries-table.php:250
1829
- #: pro/includes/admin/entries/class-entries.php:244
1830
  msgid "Mark entry read"
1831
  msgstr ""
1832
 
1833
- #: pro/includes/admin/entries/class-entries-table.php:270
1834
  msgid "View Form Entry"
1835
  msgstr ""
1836
 
1837
- #: pro/includes/admin/entries/class-entries-table.php:271
1838
  msgid "View"
1839
  msgstr ""
1840
 
1841
- #: pro/includes/admin/entries/class-entries-table.php:277
1842
  msgid "Delete Form Entry"
1843
  msgstr ""
1844
 
1845
- #: pro/includes/admin/entries/class-entries-table.php:293
1846
  msgid "Mark Read"
1847
  msgstr ""
1848
 
1849
- #: pro/includes/admin/entries/class-entries-table.php:294
1850
- #: pro/includes/admin/entries/class-entries.php:1249
1851
  msgid "Mark Unread"
1852
  msgstr ""
1853
 
1854
- #: pro/includes/admin/entries/class-entries-table.php:295
1855
- #: pro/includes/admin/entries/class-entries.php:1201
1856
  msgid "Star"
1857
  msgstr ""
1858
 
1859
- #: pro/includes/admin/entries/class-entries-table.php:296
1860
- #: pro/includes/admin/entries/class-entries.php:1201
1861
  msgid "Unstar"
1862
  msgstr ""
1863
 
1864
- #: pro/includes/admin/entries/class-entries-table.php:298
1865
  msgid "----------"
1866
  msgstr ""
1867
 
1868
- #: pro/includes/admin/entries/class-entries-table.php:342
1869
  msgid "Entry marked as read."
1870
  msgid_plural "Entries marked as read."
1871
  msgstr[0] ""
1872
  msgstr[1] ""
1873
 
1874
- #: pro/includes/admin/entries/class-entries-table.php:351
1875
  msgid "Entry marked as unread."
1876
  msgid_plural "Entries marked as unread."
1877
  msgstr[0] ""
1878
  msgstr[1] ""
1879
 
1880
- #: pro/includes/admin/entries/class-entries-table.php:360
1881
  msgid "Entry starred."
1882
  msgid_plural "Entries starred."
1883
  msgstr[0] ""
1884
  msgstr[1] ""
1885
 
1886
- #: pro/includes/admin/entries/class-entries-table.php:369
1887
  msgid "Entry unstarred."
1888
  msgid_plural "Entries unstarred."
1889
  msgstr[0] ""
1890
  msgstr[1] ""
1891
 
1892
- #: pro/includes/admin/entries/class-entries-table.php:378
1893
  msgid "Entry successfully deleted."
1894
  msgid_plural "Entries successfully deleted."
1895
  msgstr[0] ""
1896
  msgstr[1] ""
1897
 
1898
- #: pro/includes/admin/entries/class-entries-table.php:392
1899
  msgid "Whoops, it appears you do not have any form entries yet."
1900
  msgstr ""
1901
 
1902
- #: pro/includes/admin/entries/class-entries.php:185
1903
  msgid "Number of entries per page:"
1904
  msgstr ""
1905
 
1906
- #: pro/includes/admin/entries/class-entries.php:241
1907
- #: pro/includes/admin/entries/class-entries.php:266
1908
  msgid "Are you sure you want to delete this entry?"
1909
  msgstr ""
1910
 
1911
- #: pro/includes/admin/entries/class-entries.php:267
1912
- #: pro/includes/admin/entries/class-entries.php:886
1913
  msgid "Hide Empty Fields"
1914
  msgstr ""
1915
 
1916
- #: pro/includes/admin/entries/class-entries.php:268
1917
- #: pro/includes/admin/entries/class-entries.php:886
1918
  msgid "Show Empty Fields"
1919
  msgstr ""
1920
 
1921
- #: pro/includes/admin/entries/class-entries.php:269
1922
  msgid "Are you sure you want to delete this note?"
1923
  msgstr ""
1924
 
1925
- #: pro/includes/admin/entries/class-entries.php:366
1926
  msgid "All entries marked as read."
1927
  msgstr ""
1928
 
1929
- #: pro/includes/admin/entries/class-entries.php:505
1930
  msgid "Edit This Form"
1931
  msgstr ""
1932
 
1933
- #: pro/includes/admin/entries/class-entries.php:515
1934
  msgid "Download Export (CSV)"
1935
  msgstr ""
1936
 
1937
- #: pro/includes/admin/entries/class-entries.php:520
1938
  msgid "Mark All Read"
1939
  msgstr ""
1940
 
1941
- #: pro/includes/admin/entries/class-entries.php:526
1942
  msgid "Select a different form"
1943
  msgstr ""
1944
 
1945
- #: pro/includes/admin/entries/class-entries.php:604
1946
  msgid "This entry has been starred."
1947
  msgstr ""
1948
 
1949
- #: pro/includes/admin/entries/class-entries.php:616
1950
  msgid "This entry has been unstarred."
1951
  msgstr ""
1952
 
1953
- #: pro/includes/admin/entries/class-entries.php:641
1954
  msgid "This entry has been marked unread."
1955
  msgstr ""
1956
 
1957
- #: pro/includes/admin/entries/class-entries.php:665
1958
  msgid "Note deleted."
1959
  msgstr ""
1960
 
1961
- #: pro/includes/admin/entries/class-entries.php:696
1962
  msgid "Note added."
1963
  msgstr ""
1964
 
1965
- #: pro/includes/admin/entries/class-entries.php:714
1966
  msgid "Invalid entry ID."
1967
  msgstr ""
1968
 
1969
- #: pro/includes/admin/entries/class-entries.php:727
1970
  msgid "Entry not found."
1971
  msgstr ""
1972
 
1973
- #: pro/includes/admin/entries/class-entries.php:740
1974
  msgid "Form not found."
1975
  msgstr ""
1976
 
1977
- #: pro/includes/admin/entries/class-entries.php:800
1978
  msgid "Notifications sent!"
1979
  msgstr ""
1980
 
1981
- #: pro/includes/admin/entries/class-entries.php:827
1982
  msgid "View Entry"
1983
  msgstr ""
1984
 
1985
- #: pro/includes/admin/entries/class-entries.php:829
1986
  msgid "Back to All Entries"
1987
  msgstr ""
1988
 
1989
- #: pro/includes/admin/entries/class-entries.php:833
1990
  msgid "Entry %s of %s"
1991
  msgstr ""
1992
 
1993
- #: pro/includes/admin/entries/class-entries.php:836
1994
  msgid "Previous form entry"
1995
  msgstr ""
1996
 
1997
- #: pro/includes/admin/entries/class-entries.php:837
1998
  msgid "Current form entry"
1999
  msgstr ""
2000
 
2001
- #: pro/includes/admin/entries/class-entries.php:838
2002
  msgid "Next form entry"
2003
  msgstr ""
2004
 
2005
- #: pro/includes/admin/entries/class-entries.php:954
2006
  msgid "Notes"
2007
  msgstr ""
2008
 
2009
- #: pro/includes/admin/entries/class-entries.php:960
2010
- #: pro/includes/admin/entries/class-entries.php:975
2011
  msgid "Add Note"
2012
  msgstr ""
2013
 
2014
- #: pro/includes/admin/entries/class-entries.php:984
2015
  msgid "No notes."
2016
  msgstr ""
2017
 
2018
- #: pro/includes/admin/entries/class-entries.php:993
2019
- #: pro/includes/admin/entries/class-entries.php:1085
2020
  msgid "M j, Y @ g:ia"
2021
  msgstr ""
2022
 
2023
- #: pro/includes/admin/entries/class-entries.php:1011
2024
  msgid "Added by"
2025
  msgstr ""
2026
 
2027
- #: pro/includes/admin/entries/class-entries.php:1011
2028
  msgid "on"
2029
  msgstr ""
2030
 
2031
- #: pro/includes/admin/entries/class-entries.php:1044
2032
  msgid "Debug Information"
2033
  msgstr ""
2034
 
2035
- #: pro/includes/admin/entries/class-entries.php:1070
2036
  msgid "Entry Details"
2037
  msgstr ""
2038
 
2039
- #: pro/includes/admin/entries/class-entries.php:1078
2040
  msgid "Entry ID:"
2041
  msgstr ""
2042
 
2043
- #: pro/includes/admin/entries/class-entries.php:1084
2044
  msgid "Submitted on:"
2045
  msgstr ""
2046
 
2047
- #: pro/includes/admin/entries/class-entries.php:1091
2048
  msgid "Modified on:"
2049
  msgstr ""
2050
 
2051
- #: pro/includes/admin/entries/class-entries.php:1092
2052
  msgid "M j, Y @ H:i"
2053
  msgstr ""
2054
 
2055
- #: pro/includes/admin/entries/class-entries.php:1100
2056
  msgid "User:"
2057
  msgstr ""
2058
 
2059
- #: pro/includes/admin/entries/class-entries.php:1112
2060
  msgid "User IP:"
2061
  msgstr ""
2062
 
2063
- #: pro/includes/admin/entries/class-entries.php:1227
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2064
  msgid "Print"
2065
  msgstr ""
2066
 
2067
- #: pro/includes/admin/entries/class-entries.php:1234
2068
  msgid "Export (CSV)"
2069
  msgstr ""
2070
 
2071
- #: pro/includes/admin/entries/class-entries.php:1241
2072
  msgid "Resend Notifications"
2073
  msgstr ""
2074
 
@@ -2553,7 +2599,7 @@ msgstr ""
2553
  msgid "Items"
2554
  msgstr ""
2555
 
2556
- #: pro/includes/fields/class-payment-multiple.php:179
2557
  msgid "Invalid payment option"
2558
  msgstr ""
2559
 
@@ -2586,29 +2632,21 @@ msgstr ""
2586
  msgid "Item Type"
2587
  msgstr ""
2588
 
2589
- #: pro/includes/fields/class-payment-single.php:96
2590
- #: pro/includes/fields/class-payment-single.php:139
2591
  msgid "Price"
2592
  msgstr ""
2593
 
2594
- #: pro/includes/fields/class-payment-single.php:102
2595
  msgid ""
2596
  "Note: Item type is set to hidden and will not be visible when viewing the "
2597
  "form."
2598
  msgstr ""
2599
 
2600
- #: pro/includes/fields/class-payment-single.php:192
2601
- msgid "Please use a valid currency format"
2602
- msgstr ""
2603
-
2604
- #: pro/includes/fields/class-payment-single.php:199
2605
  msgid "Amount mismatch"
2606
  msgstr ""
2607
 
2608
- #: pro/includes/fields/class-payment-total.php:21
2609
- msgid "Total"
2610
- msgstr ""
2611
-
2612
  #: pro/includes/fields/class-phone.php:21
2613
  #: pro/includes/templates/class-order.php:49
2614
  #: pro/includes/templates/class-request-quote.php:53
@@ -2671,10 +2709,6 @@ msgstr ""
2671
  msgid "Israeli New Sheqel"
2672
  msgstr ""
2673
 
2674
- #: pro/includes/payments/functions.php:32
2675
- msgid "Japanese Yen"
2676
- msgstr ""
2677
-
2678
  #: pro/includes/payments/functions.php:33
2679
  msgid "Malaysian Ringgit"
2680
  msgstr ""
@@ -2839,9 +2873,9 @@ msgstr ""
2839
  msgid "Please deactivate WPForms Lite before activating WPForms"
2840
  msgstr ""
2841
 
2842
- #. #-#-#-#-# wpforms.pot (WPForms 1.2.5) #-#-#-#-#
2843
  #. Plugin URI of the plugin/theme
2844
- #. #-#-#-#-# wpforms.pot (WPForms 1.2.5) #-#-#-#-#
2845
  #. Author URI of the plugin/theme
2846
  msgid "https://wpforms.com"
2847
  msgstr ""
2
  # This file is distributed under the same license as the WPForms package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: WPForms 1.2.6\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wpforms\n"
7
+ "POT-Creation-Date: 2016-08-24 13:56:17+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
40
  msgid "Error updating form template"
41
  msgstr ""
42
 
43
+ #: includes/admin/builder/class-builder.php:268
44
  #: includes/admin/class-editor.php:96
45
+ #: pro/includes/admin/entries/class-entries.php:977
46
  msgid "Cancel"
47
  msgstr ""
48
 
49
+ #: includes/admin/builder/class-builder.php:269
50
  msgid "OK"
51
  msgstr ""
52
 
53
+ #: includes/admin/builder/class-builder.php:270
54
  #: includes/admin/class-editor.php:70
55
  msgid "Close"
56
  msgstr ""
57
 
58
+ #: includes/admin/builder/class-builder.php:271
59
  msgid ""
60
  "Due to form changes, conditional logic rules have been removed or updated:"
61
  msgstr ""
62
 
63
+ #: includes/admin/builder/class-builder.php:272
64
+ #: pro/includes/admin/entries/class-entries-table.php:167
65
  msgid "Field"
66
  msgstr ""
67
 
68
+ #: includes/admin/builder/class-builder.php:273
69
  msgid "Field Locked"
70
  msgstr ""
71
 
72
+ #: includes/admin/builder/class-builder.php:274
73
  msgid "This field cannot be deleted because it required by the form template."
74
  msgstr ""
75
 
76
+ #: includes/admin/builder/class-builder.php:275
77
  msgid "Available Fields"
78
  msgstr ""
79
 
80
+ #: includes/admin/builder/class-builder.php:276
81
  msgid "No fields available"
82
  msgstr ""
83
 
84
+ #: includes/admin/builder/class-builder.php:277
85
  msgid "Heads up!"
86
  msgstr ""
87
 
88
+ #: includes/admin/builder/class-builder.php:279
89
  msgid "No email fields"
90
  msgstr ""
91
 
92
+ #: includes/admin/builder/class-builder.php:280
93
  msgid "Are you sure you want to delete this notification?"
94
  msgstr ""
95
 
96
+ #: includes/admin/builder/class-builder.php:281
97
  msgid "Enter a notification name"
98
  msgstr ""
99
 
100
+ #: includes/admin/builder/class-builder.php:282
101
  msgid "Eg: User Confirmation"
102
  msgstr ""
103
 
104
+ #: includes/admin/builder/class-builder.php:283
105
  msgid "You must provide a notification name"
106
  msgstr ""
107
 
108
+ #: includes/admin/builder/class-builder.php:284
109
  msgid ""
110
  "Form must contain one notification. To disable all notifications use the "
111
  "setting Notifications dropdown setting."
112
  msgstr ""
113
 
114
+ #: includes/admin/builder/class-builder.php:285
115
  #: lite/includes/admin/class-settings.php:131
116
  #: pro/includes/admin/class-settings.php:135
117
  msgid "Saving ..."
118
  msgstr ""
119
 
120
+ #: includes/admin/builder/class-builder.php:286
121
  msgid "Saved!"
122
  msgstr ""
123
 
124
+ #: includes/admin/builder/class-builder.php:287
125
  msgid "Save and Exit"
126
  msgstr ""
127
 
128
+ #: includes/admin/builder/class-builder.php:288
129
+ #: includes/admin/builder/class-builder.php:349
130
  msgid "Loading"
131
  msgstr ""
132
 
133
+ #: includes/admin/builder/class-builder.php:294
134
  msgid "Use Template"
135
  msgstr ""
136
 
137
+ #: includes/admin/builder/class-builder.php:295
138
  msgid ""
139
  "Changing templates on an existing form will DELETE existing form fields. Are "
140
  "you sure you want apply the new template?"
141
  msgstr ""
142
 
143
+ #: includes/admin/builder/class-builder.php:296
144
  msgid ""
145
  "You are almost done. To embed this form on your site, please paste the "
146
  "following shortcode inside a post or page."
147
  msgstr ""
148
 
149
+ #: includes/admin/builder/class-builder.php:297
150
  msgid "Or you can follow the instructions in this video."
151
  msgstr ""
152
 
153
+ #: includes/admin/builder/class-builder.php:298
154
+ #: includes/admin/builder/class-builder.php:399
155
  msgid "Exit"
156
  msgstr ""
157
 
158
+ #: includes/admin/builder/class-builder.php:300
159
  msgid "If you exit without saving, your changes will be lost."
160
  msgstr ""
161
 
162
+ #: includes/admin/builder/class-builder.php:301
163
  msgid "Are you sure you want to delete this field?"
164
  msgstr ""
165
 
166
+ #: includes/admin/builder/class-builder.php:302
167
  msgid "Please enter a form title."
168
  msgstr ""
169
 
170
+ #: includes/admin/builder/class-builder.php:303
171
  msgid "This item must contain at least one choice."
172
  msgstr ""
173
 
174
+ #: includes/admin/builder/class-builder.php:304
175
  #: includes/fields/class-base.php:235 lite/wpforms-lite.php:75
176
  #: pro/wpforms-pro.php:257
177
  msgid "Off"
178
  msgstr ""
179
 
180
+ #: includes/admin/builder/class-builder.php:305
181
  #: includes/fields/class-base.php:235 lite/wpforms-lite.php:74
182
  #: pro/wpforms-pro.php:256
183
  msgid "On"
184
  msgstr ""
185
 
186
+ #: includes/admin/builder/class-builder.php:306
187
  #: includes/templates/class-suggestion.php:59
188
  msgid "Other"
189
  msgstr ""
190
 
191
+ #: includes/admin/builder/class-builder.php:307
192
  #: includes/class-frontend.php:482
193
  #: pro/includes/fields/class-page-break.php:144
194
  msgid "Previous"
195
  msgstr ""
196
 
197
+ #: includes/admin/builder/class-builder.php:310
198
  #: includes/admin/builder/functions.php:210 includes/fields/class-base.php:335
199
  msgid "Show Smart Tags"
200
  msgstr ""
201
 
202
+ #: includes/admin/builder/class-builder.php:311
203
  msgid "Hide Smart Tags"
204
  msgstr ""
205
 
206
+ #: includes/admin/builder/class-builder.php:312
207
  msgid "-- Select Field --"
208
  msgstr ""
209
 
210
+ #: includes/admin/builder/class-builder.php:313
211
  #: pro/includes/class-provider.php:912
212
  msgid "-- Select Choice --"
213
  msgstr ""
214
 
215
+ #: includes/admin/builder/class-builder.php:372
216
  msgid "Now editing"
217
  msgstr ""
218
 
219
+ #: includes/admin/builder/class-builder.php:382
220
+ #: pro/includes/admin/entries/class-entries.php:511
221
  msgid "Preview Form"
222
  msgstr ""
223
 
224
+ #: includes/admin/builder/class-builder.php:384
225
  #: includes/admin/overview/class-overview-table.php:159
226
  msgid "Preview"
227
  msgstr ""
228
 
229
+ #: includes/admin/builder/class-builder.php:387
230
  msgid "Embed Form"
231
  msgstr ""
232
 
233
+ #: includes/admin/builder/class-builder.php:389
234
  msgid "Embed"
235
  msgstr ""
236
 
237
+ #: includes/admin/builder/class-builder.php:392
238
  msgid "Save Form"
239
  msgstr ""
240
 
241
+ #: includes/admin/builder/class-builder.php:394
242
+ #: pro/includes/admin/class-settings.php:441
243
  msgid "Save"
244
  msgstr ""
245
 
302
 
303
  #: includes/admin/builder/panels/class-settings.php:21
304
  #: includes/admin/class-menu.php:84 lite/includes/admin/class-settings.php:390
305
+ #: pro/includes/admin/class-settings.php:696
306
  msgid "Settings"
307
  msgstr ""
308
 
471
 
472
  #: includes/admin/class-editor.php:88
473
  #: includes/admin/overview/class-overview-table.php:250
474
+ #: pro/includes/admin/entries/class-entries.php:389
475
  msgid ""
476
  "Whoops, you haven't created a form yet. Want to <a href=\"%s\">give it a go</"
477
  "a>?"
478
  msgstr ""
479
 
480
+ #. #-#-#-#-# wpforms.pot (WPForms 1.2.6) #-#-#-#-#
481
  #. Plugin Name of the plugin/theme
482
+ #. #-#-#-#-# wpforms.pot (WPForms 1.2.6) #-#-#-#-#
483
  #. Author of the plugin/theme
484
  #: includes/admin/class-menu.php:39 includes/admin/class-menu.php:40
485
  #: includes/admin/class-menu.php:51
506
 
507
  #: includes/admin/class-menu.php:72
508
  #: includes/admin/overview/class-overview-table.php:152
509
+ #: pro/includes/admin/entries/class-entries.php:410 pro/wpforms-pro.php:198
510
  msgid "Entries"
511
  msgstr ""
512
 
639
 
640
  #: includes/admin/overview/class-overview-table.php:173
641
  #: includes/admin/overview/class-overview-table.php:191
642
+ #: pro/includes/admin/entries/class-entries-table.php:328
643
+ #: pro/includes/admin/entries/class-entries-table.php:349
644
+ #: pro/includes/admin/entries/class-entries.php:1012
645
  msgid "Delete"
646
  msgstr ""
647
 
699
  msgstr ""
700
 
701
  #: includes/class-preview.php:107
702
+ #: pro/includes/admin/entries/class-entries.php:899
703
  msgid "This entry does not have any fields"
704
  msgstr ""
705
 
706
  #: includes/class-preview.php:124
707
+ #: pro/includes/admin/entries/class-entries.php:915
708
  msgid "Field ID #%d"
709
  msgstr ""
710
 
711
  #: includes/class-preview.php:129
712
+ #: pro/includes/admin/entries/class-entries.php:920
713
  msgid "Empty"
714
  msgstr ""
715
 
788
 
789
  #: includes/class-smart-tags.php:40
790
  #: pro/includes/admin/entries/class-entries-export.php:172
791
+ #: pro/includes/admin/entries/class-entries-table.php:129
792
  #: pro/includes/fields/class-date-time.php:48
793
  #: pro/includes/fields/class-date-time.php:77
794
  #: pro/includes/fields/class-date-time.php:155
836
  msgid "Lost Password URL"
837
  msgstr ""
838
 
839
+ #: includes/class-widget.php:127 pro/includes/admin/class-settings.php:524
840
  msgid "No forms"
841
  msgstr ""
842
 
1005
  #: pro/includes/fields/class-address.php:564
1006
  #: pro/includes/fields/class-date-time.php:289
1007
  #: pro/includes/fields/class-file-upload.php:217
1008
+ #: pro/includes/fields/class-payment-multiple.php:177
1009
+ #: pro/includes/fields/class-payment-single.php:188
1010
  #: pro/includes/fields/class-url.php:126
1011
  msgid "This field is required"
1012
  msgstr ""
1731
  msgid "Currency"
1732
  msgstr ""
1733
 
1734
+ #: pro/includes/admin/class-settings.php:430
 
 
 
 
1735
  msgid "Determines which currency to use for payments."
1736
  msgstr ""
1737
 
1738
+ #: pro/includes/admin/class-settings.php:461
1739
  msgid ""
1740
  "You do not have any marketing add-ons activated. You can head over to the <a "
1741
  "href=\"%s\">Add-Ons page</a> to install and activate the add-on for your "
1742
  "provider."
1743
  msgstr ""
1744
 
1745
+ #: pro/includes/admin/class-settings.php:482
1746
  msgid "Form(s) imported"
1747
  msgstr ""
1748
 
1749
+ #: pro/includes/admin/class-settings.php:491
1750
  msgid "Form Import"
1751
  msgstr ""
1752
 
1753
+ #: pro/includes/admin/class-settings.php:496
1754
  msgid "Select an export file."
1755
  msgstr ""
1756
 
1757
+ #: pro/includes/admin/class-settings.php:502
1758
  msgid "Import"
1759
  msgstr ""
1760
 
1761
+ #: pro/includes/admin/class-settings.php:509
1762
  msgid "Form Export"
1763
  msgstr ""
1764
 
1765
+ #: pro/includes/admin/class-settings.php:514
1766
  msgid ""
1767
  "Select form(s) to download an export file. This can be imported into another "
1768
  "site."
1769
  msgstr ""
1770
 
1771
+ #: pro/includes/admin/class-settings.php:530
1772
  msgid "Export"
1773
  msgstr ""
1774
 
1775
+ #: pro/includes/admin/class-settings.php:590
1776
  msgid "Please upload a valid .json form export file."
1777
  msgstr ""
1778
 
1779
+ #: pro/includes/admin/class-settings.php:590
1780
  #: pro/includes/admin/entries/class-entries-export.php:293
1781
  msgid "Error"
1782
  msgstr ""
1801
  msgid "Starred"
1802
  msgstr ""
1803
 
1804
+ #: pro/includes/admin/entries/class-entries-table.php:125
1805
+ msgid "Status"
1806
+ msgstr ""
1807
+
1808
+ #: pro/includes/admin/entries/class-entries-table.php:126
1809
+ #: pro/includes/fields/class-payment-total.php:21
1810
+ msgid "Total"
1811
+ msgstr ""
1812
+
1813
+ #: pro/includes/admin/entries/class-entries-table.php:130
1814
+ #: pro/includes/admin/entries/class-entries.php:1303
1815
  msgid "Actions"
1816
  msgstr ""
1817
 
1818
+ #: pro/includes/admin/entries/class-entries-table.php:256
1819
+ #: pro/includes/admin/entries/class-entries.php:1154
1820
+ msgid "Unknown"
1821
  msgstr ""
1822
 
1823
+ #: pro/includes/admin/entries/class-entries-table.php:295
1824
  #: pro/includes/admin/entries/class-entries.php:243
1825
+ msgid "Unstar entry"
1826
+ msgstr ""
1827
+
1828
+ #: pro/includes/admin/entries/class-entries-table.php:295
1829
+ #: pro/includes/admin/entries/class-entries.php:244
1830
  msgid "Star entry"
1831
  msgstr ""
1832
 
1833
+ #: pro/includes/admin/entries/class-entries-table.php:300
1834
+ #: pro/includes/admin/entries/class-entries.php:246
1835
  msgid "Mark entry unread"
1836
  msgstr ""
1837
 
1838
+ #: pro/includes/admin/entries/class-entries-table.php:300
1839
+ #: pro/includes/admin/entries/class-entries.php:245
1840
  msgid "Mark entry read"
1841
  msgstr ""
1842
 
1843
+ #: pro/includes/admin/entries/class-entries-table.php:320
1844
  msgid "View Form Entry"
1845
  msgstr ""
1846
 
1847
+ #: pro/includes/admin/entries/class-entries-table.php:321
1848
  msgid "View"
1849
  msgstr ""
1850
 
1851
+ #: pro/includes/admin/entries/class-entries-table.php:327
1852
  msgid "Delete Form Entry"
1853
  msgstr ""
1854
 
1855
+ #: pro/includes/admin/entries/class-entries-table.php:343
1856
  msgid "Mark Read"
1857
  msgstr ""
1858
 
1859
+ #: pro/includes/admin/entries/class-entries-table.php:344
1860
+ #: pro/includes/admin/entries/class-entries.php:1334
1861
  msgid "Mark Unread"
1862
  msgstr ""
1863
 
1864
+ #: pro/includes/admin/entries/class-entries-table.php:345
1865
+ #: pro/includes/admin/entries/class-entries.php:1286
1866
  msgid "Star"
1867
  msgstr ""
1868
 
1869
+ #: pro/includes/admin/entries/class-entries-table.php:346
1870
+ #: pro/includes/admin/entries/class-entries.php:1286
1871
  msgid "Unstar"
1872
  msgstr ""
1873
 
1874
+ #: pro/includes/admin/entries/class-entries-table.php:348
1875
  msgid "----------"
1876
  msgstr ""
1877
 
1878
+ #: pro/includes/admin/entries/class-entries-table.php:392
1879
  msgid "Entry marked as read."
1880
  msgid_plural "Entries marked as read."
1881
  msgstr[0] ""
1882
  msgstr[1] ""
1883
 
1884
+ #: pro/includes/admin/entries/class-entries-table.php:401
1885
  msgid "Entry marked as unread."
1886
  msgid_plural "Entries marked as unread."
1887
  msgstr[0] ""
1888
  msgstr[1] ""
1889
 
1890
+ #: pro/includes/admin/entries/class-entries-table.php:410
1891
  msgid "Entry starred."
1892
  msgid_plural "Entries starred."
1893
  msgstr[0] ""
1894
  msgstr[1] ""
1895
 
1896
+ #: pro/includes/admin/entries/class-entries-table.php:419
1897
  msgid "Entry unstarred."
1898
  msgid_plural "Entries unstarred."
1899
  msgstr[0] ""
1900
  msgstr[1] ""
1901
 
1902
+ #: pro/includes/admin/entries/class-entries-table.php:428
1903
  msgid "Entry successfully deleted."
1904
  msgid_plural "Entries successfully deleted."
1905
  msgstr[0] ""
1906
  msgstr[1] ""
1907
 
1908
+ #: pro/includes/admin/entries/class-entries-table.php:442
1909
  msgid "Whoops, it appears you do not have any form entries yet."
1910
  msgstr ""
1911
 
1912
+ #: pro/includes/admin/entries/class-entries.php:186
1913
  msgid "Number of entries per page:"
1914
  msgstr ""
1915
 
1916
+ #: pro/includes/admin/entries/class-entries.php:242
1917
+ #: pro/includes/admin/entries/class-entries.php:267
1918
  msgid "Are you sure you want to delete this entry?"
1919
  msgstr ""
1920
 
1921
+ #: pro/includes/admin/entries/class-entries.php:268
1922
+ #: pro/includes/admin/entries/class-entries.php:887
1923
  msgid "Hide Empty Fields"
1924
  msgstr ""
1925
 
1926
+ #: pro/includes/admin/entries/class-entries.php:269
1927
+ #: pro/includes/admin/entries/class-entries.php:887
1928
  msgid "Show Empty Fields"
1929
  msgstr ""
1930
 
1931
+ #: pro/includes/admin/entries/class-entries.php:270
1932
  msgid "Are you sure you want to delete this note?"
1933
  msgstr ""
1934
 
1935
+ #: pro/includes/admin/entries/class-entries.php:367
1936
  msgid "All entries marked as read."
1937
  msgstr ""
1938
 
1939
+ #: pro/includes/admin/entries/class-entries.php:506
1940
  msgid "Edit This Form"
1941
  msgstr ""
1942
 
1943
+ #: pro/includes/admin/entries/class-entries.php:516
1944
  msgid "Download Export (CSV)"
1945
  msgstr ""
1946
 
1947
+ #: pro/includes/admin/entries/class-entries.php:521
1948
  msgid "Mark All Read"
1949
  msgstr ""
1950
 
1951
+ #: pro/includes/admin/entries/class-entries.php:527
1952
  msgid "Select a different form"
1953
  msgstr ""
1954
 
1955
+ #: pro/includes/admin/entries/class-entries.php:605
1956
  msgid "This entry has been starred."
1957
  msgstr ""
1958
 
1959
+ #: pro/includes/admin/entries/class-entries.php:617
1960
  msgid "This entry has been unstarred."
1961
  msgstr ""
1962
 
1963
+ #: pro/includes/admin/entries/class-entries.php:642
1964
  msgid "This entry has been marked unread."
1965
  msgstr ""
1966
 
1967
+ #: pro/includes/admin/entries/class-entries.php:666
1968
  msgid "Note deleted."
1969
  msgstr ""
1970
 
1971
+ #: pro/includes/admin/entries/class-entries.php:697
1972
  msgid "Note added."
1973
  msgstr ""
1974
 
1975
+ #: pro/includes/admin/entries/class-entries.php:715
1976
  msgid "Invalid entry ID."
1977
  msgstr ""
1978
 
1979
+ #: pro/includes/admin/entries/class-entries.php:728
1980
  msgid "Entry not found."
1981
  msgstr ""
1982
 
1983
+ #: pro/includes/admin/entries/class-entries.php:741
1984
  msgid "Form not found."
1985
  msgstr ""
1986
 
1987
+ #: pro/includes/admin/entries/class-entries.php:801
1988
  msgid "Notifications sent!"
1989
  msgstr ""
1990
 
1991
+ #: pro/includes/admin/entries/class-entries.php:828
1992
  msgid "View Entry"
1993
  msgstr ""
1994
 
1995
+ #: pro/includes/admin/entries/class-entries.php:830
1996
  msgid "Back to All Entries"
1997
  msgstr ""
1998
 
1999
+ #: pro/includes/admin/entries/class-entries.php:834
2000
  msgid "Entry %s of %s"
2001
  msgstr ""
2002
 
2003
+ #: pro/includes/admin/entries/class-entries.php:837
2004
  msgid "Previous form entry"
2005
  msgstr ""
2006
 
2007
+ #: pro/includes/admin/entries/class-entries.php:838
2008
  msgid "Current form entry"
2009
  msgstr ""
2010
 
2011
+ #: pro/includes/admin/entries/class-entries.php:839
2012
  msgid "Next form entry"
2013
  msgstr ""
2014
 
2015
+ #: pro/includes/admin/entries/class-entries.php:955
2016
  msgid "Notes"
2017
  msgstr ""
2018
 
2019
+ #: pro/includes/admin/entries/class-entries.php:961
2020
+ #: pro/includes/admin/entries/class-entries.php:976
2021
  msgid "Add Note"
2022
  msgstr ""
2023
 
2024
+ #: pro/includes/admin/entries/class-entries.php:985
2025
  msgid "No notes."
2026
  msgstr ""
2027
 
2028
+ #: pro/includes/admin/entries/class-entries.php:994
2029
+ #: pro/includes/admin/entries/class-entries.php:1086
2030
  msgid "M j, Y @ g:ia"
2031
  msgstr ""
2032
 
2033
+ #: pro/includes/admin/entries/class-entries.php:1012
2034
  msgid "Added by"
2035
  msgstr ""
2036
 
2037
+ #: pro/includes/admin/entries/class-entries.php:1012
2038
  msgid "on"
2039
  msgstr ""
2040
 
2041
+ #: pro/includes/admin/entries/class-entries.php:1045
2042
  msgid "Debug Information"
2043
  msgstr ""
2044
 
2045
+ #: pro/includes/admin/entries/class-entries.php:1071
2046
  msgid "Entry Details"
2047
  msgstr ""
2048
 
2049
+ #: pro/includes/admin/entries/class-entries.php:1079
2050
  msgid "Entry ID:"
2051
  msgstr ""
2052
 
2053
+ #: pro/includes/admin/entries/class-entries.php:1085
2054
  msgid "Submitted on:"
2055
  msgstr ""
2056
 
2057
+ #: pro/includes/admin/entries/class-entries.php:1092
2058
  msgid "Modified on:"
2059
  msgstr ""
2060
 
2061
+ #: pro/includes/admin/entries/class-entries.php:1093
2062
  msgid "M j, Y @ H:i"
2063
  msgstr ""
2064
 
2065
+ #: pro/includes/admin/entries/class-entries.php:1101
2066
  msgid "User:"
2067
  msgstr ""
2068
 
2069
+ #: pro/includes/admin/entries/class-entries.php:1113
2070
  msgid "User IP:"
2071
  msgstr ""
2072
 
2073
+ #: pro/includes/admin/entries/class-entries.php:1164
2074
+ msgid "Stripe"
2075
+ msgstr ""
2076
+
2077
+ #: pro/includes/admin/entries/class-entries.php:1170
2078
+ msgid "PayPal Standard"
2079
+ msgstr ""
2080
+
2081
+ #: pro/includes/admin/entries/class-entries.php:1182
2082
+ msgid "Payment Details"
2083
+ msgstr ""
2084
+
2085
+ #: pro/includes/admin/entries/class-entries.php:1189
2086
+ msgid " Status:"
2087
+ msgstr ""
2088
+
2089
+ #: pro/includes/admin/entries/class-entries.php:1193
2090
+ msgid " Total:"
2091
+ msgstr ""
2092
+
2093
+ #: pro/includes/admin/entries/class-entries.php:1198
2094
+ msgid " Gateway:"
2095
+ msgstr ""
2096
+
2097
+ #: pro/includes/admin/entries/class-entries.php:1200
2098
+ msgid "Test"
2099
+ msgstr ""
2100
+
2101
+ #: pro/includes/admin/entries/class-entries.php:1206
2102
+ msgid "Transaction ID:"
2103
+ msgstr ""
2104
+
2105
+ #: pro/includes/admin/entries/class-entries.php:1211
2106
+ msgid "Note:"
2107
+ msgstr ""
2108
+
2109
+ #: pro/includes/admin/entries/class-entries.php:1312
2110
  msgid "Print"
2111
  msgstr ""
2112
 
2113
+ #: pro/includes/admin/entries/class-entries.php:1319
2114
  msgid "Export (CSV)"
2115
  msgstr ""
2116
 
2117
+ #: pro/includes/admin/entries/class-entries.php:1326
2118
  msgid "Resend Notifications"
2119
  msgstr ""
2120
 
2599
  msgid "Items"
2600
  msgstr ""
2601
 
2602
+ #: pro/includes/fields/class-payment-multiple.php:182
2603
  msgid "Invalid payment option"
2604
  msgstr ""
2605
 
2632
  msgid "Item Type"
2633
  msgstr ""
2634
 
2635
+ #: pro/includes/fields/class-payment-single.php:97
2636
+ #: pro/includes/fields/class-payment-single.php:141
2637
  msgid "Price"
2638
  msgstr ""
2639
 
2640
+ #: pro/includes/fields/class-payment-single.php:103
2641
  msgid ""
2642
  "Note: Item type is set to hidden and will not be visible when viewing the "
2643
  "form."
2644
  msgstr ""
2645
 
2646
+ #: pro/includes/fields/class-payment-single.php:198
 
 
 
 
2647
  msgid "Amount mismatch"
2648
  msgstr ""
2649
 
 
 
 
 
2650
  #: pro/includes/fields/class-phone.php:21
2651
  #: pro/includes/templates/class-order.php:49
2652
  #: pro/includes/templates/class-request-quote.php:53
2709
  msgid "Israeli New Sheqel"
2710
  msgstr ""
2711
 
 
 
 
 
2712
  #: pro/includes/payments/functions.php:33
2713
  msgid "Malaysian Ringgit"
2714
  msgstr ""
2873
  msgid "Please deactivate WPForms Lite before activating WPForms"
2874
  msgstr ""
2875
 
2876
+ #. #-#-#-#-# wpforms.pot (WPForms 1.2.6) #-#-#-#-#
2877
  #. Plugin URI of the plugin/theme
2878
+ #. #-#-#-#-# wpforms.pot (WPForms 1.2.6) #-#-#-#-#
2879
  #. Author URI of the plugin/theme
2880
  msgid "https://wpforms.com"
2881
  msgstr ""
lite/includes/admin/class-settings.php CHANGED
@@ -353,6 +353,8 @@ class WPForms_Settings {
353
  <div class="wpforms-circle-11 wpforms-circle"></div>
354
  <div class="wpforms-circle-12 wpforms-circle"></div>
355
  </div>
 
 
356
 
357
  <div id="wpforms-tabs" class="wpforms-clear">
358
 
353
  <div class="wpforms-circle-11 wpforms-circle"></div>
354
  <div class="wpforms-circle-12 wpforms-circle"></div>
355
  </div>
356
+
357
+ <h2><?php echo esc_html( get_admin_page_title() ); ?></h2>
358
 
359
  <div id="wpforms-tabs" class="wpforms-clear">
360
 
readme.txt CHANGED
@@ -163,6 +163,10 @@ Syed Balkhi
163
 
164
  == Changelog ==
165
 
 
 
 
 
166
  = 1.2.5.1 =
167
  - Fixed: Removed duplicate Settings page title
168
 
163
 
164
  == Changelog ==
165
 
166
+ = 1.2.6 =
167
+ - Added: Miscellaneous internal improvements
168
+ - Fixed: Incorrectly named variables in the front-end javascript preventing features from properly being extendable
169
+
170
  = 1.2.5.1 =
171
  - Fixed: Removed duplicate Settings page title
172
 
wpforms.php CHANGED
@@ -5,7 +5,7 @@
5
  * Description: Beginner friendly WordPress contact form plugin. Use our Drag & Drop form builder to create your WordPress forms.
6
  * Author: WPForms
7
  * Author URI: https://wpforms.com
8
- * Version: 1.2.5.1
9
  * Text Domain: wpforms
10
  * Domain Path: languages
11
  *
@@ -81,7 +81,7 @@ final class WPForms {
81
  * @since 1.0.0
82
  * @var sting
83
  */
84
- public $version = '1.2.5.1';
85
 
86
  /**
87
  * The form data handler instance.
5
  * Description: Beginner friendly WordPress contact form plugin. Use our Drag & Drop form builder to create your WordPress forms.
6
  * Author: WPForms
7
  * Author URI: https://wpforms.com
8
+ * Version: 1.2.6
9
  * Text Domain: wpforms
10
  * Domain Path: languages
11
  *
81
  * @since 1.0.0
82
  * @var sting
83
  */
84
+ public $version = '1.2.6';
85
 
86
  /**
87
  * The form data handler instance.