Formidable Forms – Form Builder for WordPress - Version 2.03.09

Version Description

  • New: Add frmStartFormLoading and frmEndFormLoading jQuery events.
  • Pro Version *
  • New: Add frm_set_and_or_for_lookup filter to allow for filtering lookups that match every value.
  • Fix: Do not clear field values when previous page is conditionally hidden.
  • Fix: Don't include combo field description html with empty description.
Download this release

Release Info

Developer sswells
Plugin Icon 128x128 Formidable Forms – Form Builder for WordPress
Version 2.03.09
Comparing to
See all releases

Code changes from version 2.03.08 to 2.03.09

classes/helpers/FrmAppHelper.php CHANGED
@@ -10,7 +10,7 @@ class FrmAppHelper {
10
  /**
11
  * @since 2.0
12
  */
13
- public static $plug_version = '2.03.08';
14
 
15
  /**
16
  * @since 1.07.02
10
  /**
11
  * @since 2.0
12
  */
13
+ public static $plug_version = '2.03.09';
14
 
15
  /**
16
  * @since 1.07.02
classes/models/FrmEntryValidate.php CHANGED
@@ -21,14 +21,19 @@ class FrmEntryValidate {
21
  // Pass exclude value to validate_field function so it can be used for repeating sections
22
  $args = array( 'exclude' => $exclude );
23
 
24
- self::spam_check( $exclude, $values, $errors );
 
 
 
 
25
  if ( ! empty( $errors ) ) {
26
  return $errors;
27
  }
28
 
29
- foreach ( $posted_fields as $posted_field ) {
30
- self::validate_field( $posted_field, $errors, $values, $args );
31
- unset( $posted_field );
 
32
  }
33
 
34
  $errors = apply_filters( 'frm_validate_entry', $errors, $values, compact( 'exclude' ) );
21
  // Pass exclude value to validate_field function so it can be used for repeating sections
22
  $args = array( 'exclude' => $exclude );
23
 
24
+ foreach ( $posted_fields as $posted_field ) {
25
+ self::validate_field( $posted_field, $errors, $values, $args );
26
+ unset( $posted_field );
27
+ }
28
+
29
  if ( ! empty( $errors ) ) {
30
  return $errors;
31
  }
32
 
33
+ self::spam_check( $exclude, $values, $errors );
34
+
35
+ if ( ! empty( $errors ) ) {
36
+ return $errors;
37
  }
38
 
39
  $errors = apply_filters( 'frm_validate_entry', $errors, $values, compact( 'exclude' ) );
formidable.php CHANGED
@@ -2,7 +2,7 @@
2
  /*
3
  Plugin Name: Formidable Forms
4
  Description: Quickly and easily create drag-and-drop forms
5
- Version: 2.03.08
6
  Plugin URI: https://formidableforms.com/
7
  Author URI: https://formidableforms.com/
8
  Author: Strategy11
2
  /*
3
  Plugin Name: Formidable Forms
4
  Description: Quickly and easily create drag-and-drop forms
5
+ Version: 2.03.09
6
  Plugin URI: https://formidableforms.com/
7
  Author URI: https://formidableforms.com/
8
  Author: Strategy11
js/formidable.js CHANGED
@@ -3646,19 +3646,23 @@ function frmFrontFormJS(){
3646
  }
3647
  }
3648
 
3649
- function showSubmitLoading( object ) {
3650
- if ( !object.hasClass('frm_loading_form') ) {
3651
- object.addClass('frm_loading_form');
 
 
3652
  }
3653
 
3654
- disableSubmitButton( object );
3655
  }
3656
 
3657
- function removeSubmitLoading( object, enable ) {
3658
- object.removeClass('frm_loading_form');
 
 
3659
 
3660
  if ( enable == 'enable' ) {
3661
- enableSubmitButton( object );
3662
  }
3663
  }
3664
 
3646
  }
3647
  }
3648
 
3649
+ function showSubmitLoading( $object ) {
3650
+ if ( !$object.hasClass('frm_loading_form') ) {
3651
+ $object.addClass('frm_loading_form');
3652
+
3653
+ $object.trigger( 'frmStartFormLoading' );
3654
  }
3655
 
3656
+ disableSubmitButton( $object );
3657
  }
3658
 
3659
+ function removeSubmitLoading( $object, enable ) {
3660
+ $object.removeClass('frm_loading_form');
3661
+
3662
+ $object.trigger( 'frmEndFormLoading' );
3663
 
3664
  if ( enable == 'enable' ) {
3665
+ enableSubmitButton( $object );
3666
  }
3667
  }
3668
 
js/formidable.min.js CHANGED
@@ -60,7 +60,7 @@ d=b;if(history.pushState&&"undefined"!=typeof d.page){var g=d.page;var h=encodeU
60
  frmThemeOverride_frmAfterSubmit(d,e,b.content,a));jQuery(b.content).find(".frm_message").length?(jQuery(document).trigger("frmFormComplete",[a,b]),ga("pageLoad"),b=jQuery(a).find('input[name="id"]'),b.length&&(b=document.getElementById("frm_edit_"+b.val()),null!==b&&-1<b.className.indexOf("frm_cancel_edit")&&Ta(jQuery(b)))):jQuery(document).trigger("frmPageChanged",[a,b]);ha()}else if(Object.keys(b.errors).length){E(jQuery(a),"enable");d=!0;Ua();h=!1;for(e in b.errors)g=jQuery(a).find("#frm_field_"+
61
  e+"_container"),g.length&&(g.is(":visible")||(k=g.closest(".frm_toggle_container"),k.length&&(k=k.prev(),k.hasClass("frm_trigger")||(k=k.prev(".frm_trigger")),k.click())),g.is(":visible")&&(R(g,e,b.errors),d=!1,g=jQuery(a).find("#frm_field_"+e+"_container .frm-g-recaptcha, #frm_field_"+e+"_container .g-recaptcha"),g.length&&(h=!0,g=g.data("rid"),jQuery().grecaptcha&&(g?grecaptcha.reset(g):grecaptcha.reset()))));jQuery(document).trigger("frmFormErrors",[a,b]);c.removeClass("frm_doing_ajax");Va(a);
62
  !0!==h&&Wa(a,!1);d?a.submit():jQuery(a).prepend(b.error_message)}else tb(a),Wa(a,!0),a.submit()},error:function(){jQuery(a).find('input[type="submit"], input[type="button"]').removeAttr("disabled");a.submit()}})}function R(a,b,c){a.length&&a.is(":visible")&&(a.addClass("frm_blank_field"),"function"==typeof frmThemeOverride_frmPlaceError?frmThemeOverride_frmPlaceError(b,c):a.append('<div class="frm_error">'+c[b]+"</div>"))}function Ua(){jQuery(".form-field").removeClass("frm_blank_field has-error");
63
- jQuery(".form-field .frm_error").replaceWith("");jQuery(".frm_error_style").remove()}function Va(a){var b=jQuery(a).find(".frm_blank_field:first");b.length&&frmFrontForm.scrollMsg(b,a,!0)}function P(a){a.hasClass("frm_loading_form")||a.addClass("frm_loading_form");a.find('input[type="submit"], input[type="button"], button[type="submit"]').attr("disabled","disabled")}function E(a,b){a.removeClass("frm_loading_form");"enable"==b&&a.find('input[type="submit"], input[type="button"], button[type="submit"]').removeAttr("disabled")}
64
  function tb(a){var b=document.getElementById("frm_loading");null!==b&&(a=jQuery(a).find("input[type=file]").val(),"undefined"!=typeof a&&""!==a&&setTimeout(function(){jQuery(b).fadeIn("slow")},2E3))}function Wa(a,b){var c=jQuery(a).find(".frm-g-recaptcha, .g-recaptcha");c.length&&(!b||1>jQuery(a).find(".frm_next_page").length||1>jQuery(a).find(".frm_next_page").val())&&c.closest(".frm_form_field").replaceWith('<input type="hidden" name="recaptcha_checked" value="'+frm_js.nonce+'">')}function ub(){Xa(jQuery(this),
65
  "clear")}function vb(){Xa(jQuery(this),"replace")}function Xa(a,b){var c=a.data("frmval").replace(/(\n|\r\n)/g,"\r");if(""===c||"undefined"==typeof c)return!1;var d=a.val().replace(/(\n|\r\n)/g,"\r");"replace"==b?""===d&&a.addClass("frm_default").val(c):d==c&&a.removeClass("frm_default").val("")}function wb(){var a=jQuery(this),b=a.data("eid"),c=a.data("fid");a.append('<span class="spinner" style="display:inline"></span>');jQuery.ajax({type:"POST",url:frm_js.ajax_url,data:{action:"frm_entries_send_email",
66
  entry_id:b,form_id:c,nonce:frm_js.nonce},success:function(b){a.replaceWith(b)}});return!1}function xb(a,b){google.load("visualization","1.0",{packages:[b],callback:function(){var b=new google.visualization.DataTable,d=!1;-1!==jQuery.inArray("id",a.options.fields)&&(d=!0,b.addColumn("number",frm_js.id));for(var f=a.fields.length,e,g=0,h=f;g<h;g++){var k=a.fields[g];e=Ya(k);b.addColumn(e,k.name)}g=!1;a.options.edit_link&&(g=!0,b.addColumn("string",a.options.edit_link));h=!1;a.options.delete_link&&(h=
60
  frmThemeOverride_frmAfterSubmit(d,e,b.content,a));jQuery(b.content).find(".frm_message").length?(jQuery(document).trigger("frmFormComplete",[a,b]),ga("pageLoad"),b=jQuery(a).find('input[name="id"]'),b.length&&(b=document.getElementById("frm_edit_"+b.val()),null!==b&&-1<b.className.indexOf("frm_cancel_edit")&&Ta(jQuery(b)))):jQuery(document).trigger("frmPageChanged",[a,b]);ha()}else if(Object.keys(b.errors).length){E(jQuery(a),"enable");d=!0;Ua();h=!1;for(e in b.errors)g=jQuery(a).find("#frm_field_"+
61
  e+"_container"),g.length&&(g.is(":visible")||(k=g.closest(".frm_toggle_container"),k.length&&(k=k.prev(),k.hasClass("frm_trigger")||(k=k.prev(".frm_trigger")),k.click())),g.is(":visible")&&(R(g,e,b.errors),d=!1,g=jQuery(a).find("#frm_field_"+e+"_container .frm-g-recaptcha, #frm_field_"+e+"_container .g-recaptcha"),g.length&&(h=!0,g=g.data("rid"),jQuery().grecaptcha&&(g?grecaptcha.reset(g):grecaptcha.reset()))));jQuery(document).trigger("frmFormErrors",[a,b]);c.removeClass("frm_doing_ajax");Va(a);
62
  !0!==h&&Wa(a,!1);d?a.submit():jQuery(a).prepend(b.error_message)}else tb(a),Wa(a,!0),a.submit()},error:function(){jQuery(a).find('input[type="submit"], input[type="button"]').removeAttr("disabled");a.submit()}})}function R(a,b,c){a.length&&a.is(":visible")&&(a.addClass("frm_blank_field"),"function"==typeof frmThemeOverride_frmPlaceError?frmThemeOverride_frmPlaceError(b,c):a.append('<div class="frm_error">'+c[b]+"</div>"))}function Ua(){jQuery(".form-field").removeClass("frm_blank_field has-error");
63
+ jQuery(".form-field .frm_error").replaceWith("");jQuery(".frm_error_style").remove()}function Va(a){var b=jQuery(a).find(".frm_blank_field:first");b.length&&frmFrontForm.scrollMsg(b,a,!0)}function P(a){a.hasClass("frm_loading_form")||(a.addClass("frm_loading_form"),a.trigger("frmStartFormLoading"));a.find('input[type="submit"], input[type="button"], button[type="submit"]').attr("disabled","disabled")}function E(a,b){a.removeClass("frm_loading_form");a.trigger("frmEndFormLoading");"enable"==b&&a.find('input[type="submit"], input[type="button"], button[type="submit"]').removeAttr("disabled")}
64
  function tb(a){var b=document.getElementById("frm_loading");null!==b&&(a=jQuery(a).find("input[type=file]").val(),"undefined"!=typeof a&&""!==a&&setTimeout(function(){jQuery(b).fadeIn("slow")},2E3))}function Wa(a,b){var c=jQuery(a).find(".frm-g-recaptcha, .g-recaptcha");c.length&&(!b||1>jQuery(a).find(".frm_next_page").length||1>jQuery(a).find(".frm_next_page").val())&&c.closest(".frm_form_field").replaceWith('<input type="hidden" name="recaptcha_checked" value="'+frm_js.nonce+'">')}function ub(){Xa(jQuery(this),
65
  "clear")}function vb(){Xa(jQuery(this),"replace")}function Xa(a,b){var c=a.data("frmval").replace(/(\n|\r\n)/g,"\r");if(""===c||"undefined"==typeof c)return!1;var d=a.val().replace(/(\n|\r\n)/g,"\r");"replace"==b?""===d&&a.addClass("frm_default").val(c):d==c&&a.removeClass("frm_default").val("")}function wb(){var a=jQuery(this),b=a.data("eid"),c=a.data("fid");a.append('<span class="spinner" style="display:inline"></span>');jQuery.ajax({type:"POST",url:frm_js.ajax_url,data:{action:"frm_entries_send_email",
66
  entry_id:b,form_id:c,nonce:frm_js.nonce},success:function(b){a.replaceWith(b)}});return!1}function xb(a,b){google.load("visualization","1.0",{packages:[b],callback:function(){var b=new google.visualization.DataTable,d=!1;-1!==jQuery.inArray("id",a.options.fields)&&(d=!0,b.addColumn("number",frm_js.id));for(var f=a.fields.length,e,g=0,h=f;g<h;g++){var k=a.fields[g];e=Ya(k);b.addColumn(e,k.name)}g=!1;a.options.edit_link&&(g=!0,b.addColumn("string",a.options.edit_link));h=!1;a.options.delete_link&&(h=
languages/formidable-az_AZ.mo CHANGED
Binary file
languages/formidable-az_AZ.po CHANGED
@@ -3,7 +3,7 @@ msgstr ""
3
  "Project-Id-Version: Formidable v2.03.08\n"
4
  "Report-Msgid-Bugs-To: \n"
5
  "POT-Creation-Date: 2016-09-01 03:07+0000\n"
6
- "PO-Revision-Date: Thu May 25 2017 12:41:06 GMT-0700 (PDT)\n"
7
  "Last-Translator: \n"
8
  "Language-Team: \n"
9
  "Language: Azerbaijani (Azerbaijan)\n"
@@ -1599,28 +1599,28 @@ msgstr ""
1599
  msgid "You do not have permission to do that"
1600
  msgstr ""
1601
 
1602
- #: ../classes/models/FrmEntryValidate.php:160
1603
  msgid "Please select a higher number"
1604
  msgstr ""
1605
 
1606
- #: ../classes/models/FrmEntryValidate.php:162
1607
  msgid "Please select a lower number"
1608
  msgstr ""
1609
 
1610
- #: ../classes/models/FrmEntryValidate.php:249
1611
  msgid "The captcha is missing from this form"
1612
  msgstr ""
1613
 
1614
- #: ../classes/models/FrmEntryValidate.php:269
1615
  msgid "There was a problem verifying your recaptcha"
1616
  msgstr ""
1617
 
1618
- #: ../classes/models/FrmEntryValidate.php:287 ../classes/models/FrmEntryValidate.
1619
- #: php:296
1620
  msgid "Your entry appears to be spam!"
1621
  msgstr ""
1622
 
1623
- #: ../classes/models/FrmEntryValidate.php:291
1624
  msgid "Your entry appears to be blacklist spam!"
1625
  msgstr ""
1626
 
3
  "Project-Id-Version: Formidable v2.03.08\n"
4
  "Report-Msgid-Bugs-To: \n"
5
  "POT-Creation-Date: 2016-09-01 03:07+0000\n"
6
+ "PO-Revision-Date: Fri May 26 2017 13:08:50 GMT-0700 (PDT)\n"
7
  "Last-Translator: \n"
8
  "Language-Team: \n"
9
  "Language: Azerbaijani (Azerbaijan)\n"
1599
  msgid "You do not have permission to do that"
1600
  msgstr ""
1601
 
1602
+ #: ../classes/models/FrmEntryValidate.php:165
1603
  msgid "Please select a higher number"
1604
  msgstr ""
1605
 
1606
+ #: ../classes/models/FrmEntryValidate.php:167
1607
  msgid "Please select a lower number"
1608
  msgstr ""
1609
 
1610
+ #: ../classes/models/FrmEntryValidate.php:254
1611
  msgid "The captcha is missing from this form"
1612
  msgstr ""
1613
 
1614
+ #: ../classes/models/FrmEntryValidate.php:274
1615
  msgid "There was a problem verifying your recaptcha"
1616
  msgstr ""
1617
 
1618
+ #: ../classes/models/FrmEntryValidate.php:292 ../classes/models/FrmEntryValidate.
1619
+ #: php:301
1620
  msgid "Your entry appears to be spam!"
1621
  msgstr ""
1622
 
1623
+ #: ../classes/models/FrmEntryValidate.php:296
1624
  msgid "Your entry appears to be blacklist spam!"
1625
  msgstr ""
1626
 
languages/formidable-da_DK.mo ADDED
Binary file
languages/formidable-da_DK.po ADDED
@@ -0,0 +1,7945 @@