Version Description
- Use frm_clear instead of clear to minimize conflicts
- Add js fallback for database update on sites without CURL
- Fix issues with emails migrating to actions in php 5.3, and t showing in some emails after updating settings
- Pro: Add frm_date_format filter
- Pro: If a comma separated list of dates is sent for formatting, explode it before formatting
- Pro: Increase the backtrack limit when needed when replacing shortcodes in the view content if server has the limit below default
- Pro: Fix issue causing csv export error
- Pro: Fix the issue cuasing new posts to not be linked to a view if a field is selected for the post content
- Pro: Fix issue some users are having with blank date fields
- Pro: Fix ending collapsible sections at the end of a section instead of waiting for the next section
- Pro: Fix firing calculations on page load when there are multiple calculations
- Pro: Don't allow theme to affect the font size of stars
Download this release
Release Info
Developer | sswells |
Plugin | Formidable Forms – Form Builder for WordPress |
Version | 2.0.03 |
Comparing to | |
See all releases |
Code changes from version 2.0.02 to 2.0.03
- classes/controllers/FrmAppController.php +17 -3
- classes/controllers/FrmFormActionsController.php +1 -1
- classes/controllers/FrmHooksController.php +1 -1
- classes/helpers/FrmAppHelper.php +2 -2
- classes/helpers/FrmFieldsHelper.php +4 -0
- classes/helpers/FrmXMLHelper.php +1 -0
- classes/views/frm-entries/form.php +6 -0
- classes/views/frm-fields/import_choices.php +1 -1
- classes/views/frm-fields/show-build.php +1 -1
- classes/views/frm-forms/add_field_links.php +1 -1
- classes/views/frm-forms/mb_html_tab.php +1 -1
- classes/views/styles/_field-labels.php +2 -2
- css/custom_theme.css.php +1 -0
- css/frm_admin.css +1 -0
- formidable.php +1 -1
- js/formidable.min.js +2 -2
- js/formidable_admin.js +1 -1
- readme.txt +15 -1
classes/controllers/FrmAppController.php
CHANGED
@@ -63,8 +63,7 @@ class FrmAppController {
|
|
63 |
return;
|
64 |
}
|
65 |
|
66 |
-
|
67 |
-
if ( $frm_vars['pro_is_authorized'] && ! file_exists( FrmAppHelper::plugin_path() . '/pro/formidable-pro.php' ) ) {
|
68 |
FrmAppHelper::load_admin_wide_js();
|
69 |
|
70 |
// user is authorized, but running free version
|
@@ -84,6 +83,17 @@ class FrmAppController {
|
|
84 |
}
|
85 |
}
|
86 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
87 |
/**
|
88 |
* Check if the database is outdated
|
89 |
*
|
@@ -367,7 +377,11 @@ class FrmAppController {
|
|
367 |
}
|
368 |
|
369 |
$upgrade_url = add_query_arg( array( 'action' => 'frm_silent_upgrade' ), $upgrade_url );
|
370 |
-
wp_remote_post( $upgrade_url );
|
|
|
|
|
|
|
|
|
371 |
}
|
372 |
|
373 |
/**
|
63 |
return;
|
64 |
}
|
65 |
|
66 |
+
if ( get_site_option( 'frmpro-authorized' ) && ! file_exists( FrmAppHelper::plugin_path() . '/pro/formidable-pro.php' ) ) {
|
|
|
67 |
FrmAppHelper::load_admin_wide_js();
|
68 |
|
69 |
// user is authorized, but running free version
|
83 |
}
|
84 |
}
|
85 |
|
86 |
+
/**
|
87 |
+
* If there are CURL problems on this server, wp_remote_post won't work for installing
|
88 |
+
* Use a javascript fallback instead.
|
89 |
+
*
|
90 |
+
* @since 2.0.3
|
91 |
+
*/
|
92 |
+
public static function install_js_fallback() {
|
93 |
+
FrmAppHelper::load_admin_wide_js();
|
94 |
+
echo '<div id="hidden frm_install_message"></div><script type="text/javascript">jQuery(document).ready(function(){frm_install_now();});</script>';
|
95 |
+
}
|
96 |
+
|
97 |
/**
|
98 |
* Check if the database is outdated
|
99 |
*
|
377 |
}
|
378 |
|
379 |
$upgrade_url = add_query_arg( array( 'action' => 'frm_silent_upgrade' ), $upgrade_url );
|
380 |
+
$r = wp_remote_post( $upgrade_url );
|
381 |
+
if( is_wp_error( $r ) ) {
|
382 |
+
// if the remove post fails, use javascript instead
|
383 |
+
add_action( 'admin_notices', 'FrmAppController::install_js_fallback' );
|
384 |
+
}
|
385 |
}
|
386 |
|
387 |
/**
|
classes/controllers/FrmFormActionsController.php
CHANGED
@@ -253,7 +253,7 @@ class FrmFormActionsController {
|
|
253 |
$entry = FrmEntry::getOne( $entry, true );
|
254 |
}
|
255 |
|
256 |
-
$child_entry = (
|
257 |
|
258 |
if ( $child_entry ) {
|
259 |
//don't trigger actions for sub forms
|
253 |
$entry = FrmEntry::getOne( $entry, true );
|
254 |
}
|
255 |
|
256 |
+
$child_entry = ( ( $form && is_numeric( $form->parent_form_id ) && $form->parent_form_id ) || ( $entry && ( $entry->form_id != $form->id || $entry->parent_item_id ) ) || ( isset( $args['is_child'] ) && $args['is_child'] ) );
|
257 |
|
258 |
if ( $child_entry ) {
|
259 |
//don't trigger actions for sub forms
|
classes/controllers/FrmHooksController.php
CHANGED
@@ -133,7 +133,7 @@ class FrmHooksController {
|
|
133 |
public static function load_ajax_hooks() {
|
134 |
add_action( 'wp_ajax_frm_silent_upgrade', 'FrmAppController::ajax_install' );
|
135 |
add_action( 'wp_ajax_nopriv_frm_silent_upgrade', 'FrmAppController::ajax_install' );
|
136 |
-
|
137 |
add_action('wp_ajax_frm_uninstall', 'FrmAppController::uninstall' );
|
138 |
add_action('wp_ajax_frm_deauthorize', 'FrmAppController::deauthorize' );
|
139 |
|
133 |
public static function load_ajax_hooks() {
|
134 |
add_action( 'wp_ajax_frm_silent_upgrade', 'FrmAppController::ajax_install' );
|
135 |
add_action( 'wp_ajax_nopriv_frm_silent_upgrade', 'FrmAppController::ajax_install' );
|
136 |
+
add_action( 'wp_ajax_frm_install', 'FrmAppController::ajax_install' );
|
137 |
add_action('wp_ajax_frm_uninstall', 'FrmAppController::uninstall' );
|
138 |
add_action('wp_ajax_frm_deauthorize', 'FrmAppController::deauthorize' );
|
139 |
|
classes/helpers/FrmAppHelper.php
CHANGED
@@ -10,7 +10,7 @@ class FrmAppHelper {
|
|
10 |
/**
|
11 |
* @since 2.0
|
12 |
*/
|
13 |
-
public static $plug_version = '2.0.
|
14 |
|
15 |
/**
|
16 |
* @since 1.07.02
|
@@ -1574,7 +1574,7 @@ class FrmAppHelper {
|
|
1574 |
$post_content = json_encode( $post_content );
|
1575 |
|
1576 |
// add extra slashes for \r\n since WP strips them
|
1577 |
-
|
1578 |
|
1579 |
// allow for "
|
1580 |
$post_content = str_replace( '"', '\\"', $post_content );
|
10 |
/**
|
11 |
* @since 2.0
|
12 |
*/
|
13 |
+
public static $plug_version = '2.0.03';
|
14 |
|
15 |
/**
|
16 |
* @since 1.07.02
|
1574 |
$post_content = json_encode( $post_content );
|
1575 |
|
1576 |
// add extra slashes for \r\n since WP strips them
|
1577 |
+
$post_content = str_replace( array( '\\r', '\\n', '\\u', '\\t'), array( '\\\\r', '\\\\n', '\\\\u', '\\\\t'), $post_content );
|
1578 |
|
1579 |
// allow for "
|
1580 |
$post_content = str_replace( '"', '\\"', $post_content );
|
classes/helpers/FrmFieldsHelper.php
CHANGED
@@ -375,6 +375,10 @@ DEFAULT_HTML;
|
|
375 |
//replace [error_class]
|
376 |
$error_class = isset ( $errors['field'. $field_id] ) ? ' frm_blank_field' : '';
|
377 |
self::get_more_field_classes( $error_class, $field, $field_id, $html );
|
|
|
|
|
|
|
|
|
378 |
$html = str_replace('[error_class]', $error_class, $html);
|
379 |
|
380 |
//replace [entry_key]
|
375 |
//replace [error_class]
|
376 |
$error_class = isset ( $errors['field'. $field_id] ) ? ' frm_blank_field' : '';
|
377 |
self::get_more_field_classes( $error_class, $field, $field_id, $html );
|
378 |
+
if ( $field['type'] == 'html' && strpos( $html, '[error_class]' ) === false ) {
|
379 |
+
// there is no error_class shortcode to use for addign fields
|
380 |
+
$html = str_replace( 'class="frm_form_field', 'class="frm_form_field ' . $error_class, $html );
|
381 |
+
}
|
382 |
$html = str_replace('[error_class]', $error_class, $html);
|
383 |
|
384 |
//replace [entry_key]
|
classes/helpers/FrmXMLHelper.php
CHANGED
@@ -659,6 +659,7 @@ class FrmXMLHelper {
|
|
659 |
if ( ! $exists ) {
|
660 |
// Remove the balanceTags filter in case WordPress is trying to validate the XHTML
|
661 |
remove_filter( 'content_save_pre', 'balanceTags', 50 );
|
|
|
662 |
|
663 |
wp_insert_post( $new_action );
|
664 |
$imported['imported']['actions']++;
|
659 |
if ( ! $exists ) {
|
660 |
// Remove the balanceTags filter in case WordPress is trying to validate the XHTML
|
661 |
remove_filter( 'content_save_pre', 'balanceTags', 50 );
|
662 |
+
remove_filter( 'content_save_pre', 'wp_filter_post_kses' );
|
663 |
|
664 |
wp_insert_post( $new_action );
|
665 |
$imported['imported']['actions']++;
|
classes/views/frm-entries/form.php
CHANGED
@@ -41,10 +41,16 @@ if ( FrmAppHelper::is_admin() && ! $frm_settings->lock_keys ) { ?>
|
|
41 |
do_action('frm_entry_form', $form, $form_action, $errors);
|
42 |
|
43 |
global $frm_vars;
|
|
|
44 |
if ( isset($frm_vars['div']) && $frm_vars['div'] ) {
|
45 |
echo "</div>\n";
|
46 |
unset($frm_vars['div']);
|
47 |
}
|
|
|
|
|
|
|
|
|
|
|
48 |
|
49 |
echo FrmFormsHelper::replace_shortcodes($values['after_html'], $form);
|
50 |
|
41 |
do_action('frm_entry_form', $form, $form_action, $errors);
|
42 |
|
43 |
global $frm_vars;
|
44 |
+
// close open section div
|
45 |
if ( isset($frm_vars['div']) && $frm_vars['div'] ) {
|
46 |
echo "</div>\n";
|
47 |
unset($frm_vars['div']);
|
48 |
}
|
49 |
+
// close open collapsible toggle div
|
50 |
+
if ( isset($frm_vars['collapse_div']) && $frm_vars['collapse_div'] ) {
|
51 |
+
echo "</div>\n";
|
52 |
+
unset($frm_vars['collapse_div']);
|
53 |
+
}
|
54 |
|
55 |
echo FrmFormsHelper::replace_shortcodes($values['after_html'], $form);
|
56 |
|
classes/views/frm-fields/import_choices.php
CHANGED
@@ -47,7 +47,7 @@ foreach ( $field->options as $fkey => $fopt ) {
|
|
47 |
} ?>
|
48 |
</textarea>
|
49 |
|
50 |
-
<p class="submit
|
51 |
<input type="button" onclick="frmUpdateBulkOpts(<?php echo (int) $field->id ?>)" class="button-primary" value="<?php esc_attr_e( 'Update Field Choices', 'formidable' ) ?>" />
|
52 |
</p>
|
53 |
</div>
|
47 |
} ?>
|
48 |
</textarea>
|
49 |
|
50 |
+
<p class="submit frm_clear">
|
51 |
<input type="button" onclick="frmUpdateBulkOpts(<?php echo (int) $field->id ?>)" class="button-primary" value="<?php esc_attr_e( 'Update Field Choices', 'formidable' ) ?>" />
|
52 |
</p>
|
53 |
</div>
|
classes/views/frm-fields/show-build.php
CHANGED
@@ -13,7 +13,7 @@
|
|
13 |
do_action('frm_after_checkbox', array( 'field' => $field, 'field_name' => $field_name, 'type' => $field['type']));
|
14 |
} else {
|
15 |
do_action('frm_add_multiple_opts_labels', $field); ?>
|
16 |
-
<ul id="frm_field_<?php echo esc_attr( $field['id'] ) ?>_opts" class="frm_sortable_field_opts
|
17 |
<?php include(FrmAppHelper::plugin_path() .'/classes/views/frm-fields/radio.php'); ?>
|
18 |
</ul>
|
19 |
<?php
|
13 |
do_action('frm_after_checkbox', array( 'field' => $field, 'field_name' => $field_name, 'type' => $field['type']));
|
14 |
} else {
|
15 |
do_action('frm_add_multiple_opts_labels', $field); ?>
|
16 |
+
<ul id="frm_field_<?php echo esc_attr( $field['id'] ) ?>_opts" class="frm_sortable_field_opts frm_clear<?php echo (count($field['options']) > 10) ? ' frm_field_opts_list' : ''; ?>">
|
17 |
<?php include(FrmAppHelper::plugin_path() .'/classes/views/frm-fields/radio.php'); ?>
|
18 |
</ul>
|
19 |
<?php
|
classes/views/frm-forms/add_field_links.php
CHANGED
@@ -96,7 +96,7 @@ foreach ( FrmFieldsHelper::pro_field_selection() as $field_key => $field_type )
|
|
96 |
'frm_fifth' => __( '1/5', 'formidable' ),
|
97 |
'frm_sixth' => __( '1/6', 'formidable' ),
|
98 |
'frm_seventh' => __( '1/7', 'formidable' ),
|
99 |
-
|
100 |
'frm_inline' => array(
|
101 |
'label' => __( 'Inline', 'formidable' ),
|
102 |
'title' => __( 'Align fields in a row without a specific width.', 'formidable' )
|
96 |
'frm_fifth' => __( '1/5', 'formidable' ),
|
97 |
'frm_sixth' => __( '1/6', 'formidable' ),
|
98 |
'frm_seventh' => __( '1/7', 'formidable' ),
|
99 |
+
'frm_eighth' => __( '1/8', 'formidable' ),
|
100 |
'frm_inline' => array(
|
101 |
'label' => __( 'Inline', 'formidable' ),
|
102 |
'title' => __( 'Align fields in a row without a specific width.', 'formidable' )
|
classes/views/frm-forms/mb_html_tab.php
CHANGED
@@ -28,7 +28,7 @@
|
|
28 |
?>
|
29 |
</ul>
|
30 |
|
31 |
-
<ul class="frm_code_list
|
32 |
<?php
|
33 |
$col = 'one';
|
34 |
foreach ( array(
|
28 |
?>
|
29 |
</ul>
|
30 |
|
31 |
+
<ul class="frm_code_list frm_clear">
|
32 |
<?php
|
33 |
$col = 'one';
|
34 |
foreach ( array(
|
classes/views/styles/_field-labels.php
CHANGED
@@ -14,7 +14,7 @@
|
|
14 |
<input type="text" name="<?php echo esc_attr( $frm_style->get_field_name('font_size') ) ?>" id="frm_font_size" value="<?php echo esc_attr($style->post_content['font_size']) ?>" size="3" />
|
15 |
</div>
|
16 |
|
17 |
-
<div class="field-group clearfix
|
18 |
<label><?php _e( 'Position', 'formidable' ) ?></label>
|
19 |
<select name="<?php echo esc_attr( $frm_style->get_field_name('position') ) ?>" id="frm_position">
|
20 |
<?php foreach ( array( 'none' => __( 'top', 'formidable' ), 'left' => __( 'left', 'formidable' ), 'right' => __( 'right', 'formidable' ), 'no_label' => __( 'none', 'formidable' ) ) as $pos => $pos_label ) { ?>
|
@@ -36,7 +36,7 @@
|
|
36 |
<input type="text" name="<?php echo esc_attr( $frm_style->get_field_name('width') ) ?>" id="frm_width" value="<?php echo esc_attr( $style->post_content['width'] ) ?>" />
|
37 |
</div>
|
38 |
|
39 |
-
<div class="field-group clearfix
|
40 |
<label><?php _e( 'Padding', 'formidable' ) ?></label>
|
41 |
<input type="text" name="<?php echo esc_attr( $frm_style->get_field_name('label_padding') ) ?>" id="frm_label_padding" value="<?php echo esc_attr( $style->post_content['label_padding'] ) ?>" />
|
42 |
</div>
|
14 |
<input type="text" name="<?php echo esc_attr( $frm_style->get_field_name('font_size') ) ?>" id="frm_font_size" value="<?php echo esc_attr($style->post_content['font_size']) ?>" size="3" />
|
15 |
</div>
|
16 |
|
17 |
+
<div class="field-group clearfix frm_clear">
|
18 |
<label><?php _e( 'Position', 'formidable' ) ?></label>
|
19 |
<select name="<?php echo esc_attr( $frm_style->get_field_name('position') ) ?>" id="frm_position">
|
20 |
<?php foreach ( array( 'none' => __( 'top', 'formidable' ), 'left' => __( 'left', 'formidable' ), 'right' => __( 'right', 'formidable' ), 'no_label' => __( 'none', 'formidable' ) ) as $pos => $pos_label ) { ?>
|
36 |
<input type="text" name="<?php echo esc_attr( $frm_style->get_field_name('width') ) ?>" id="frm_width" value="<?php echo esc_attr( $style->post_content['width'] ) ?>" />
|
37 |
</div>
|
38 |
|
39 |
+
<div class="field-group clearfix frm_clear">
|
40 |
<label><?php _e( 'Padding', 'formidable' ) ?></label>
|
41 |
<input type="text" name="<?php echo esc_attr( $frm_style->get_field_name('label_padding') ) ?>" id="frm_label_padding" value="<?php echo esc_attr( $style->post_content['label_padding'] ) ?>" />
|
42 |
</div>
|
css/custom_theme.css.php
CHANGED
@@ -581,6 +581,7 @@ table.frmcal-calendar .frmcal-today .frmcal_date{
|
|
581 |
float:left;
|
582 |
width:17px;
|
583 |
height:17px;
|
|
|
584 |
line-height:normal;
|
585 |
cursor:pointer;
|
586 |
display:block;
|
581 |
float:left;
|
582 |
width:17px;
|
583 |
height:17px;
|
584 |
+
font-size:16px;
|
585 |
line-height:normal;
|
586 |
cursor:pointer;
|
587 |
display:block;
|
css/frm_admin.css
CHANGED
@@ -846,6 +846,7 @@ li.ui-state-default.selected.edit_field_type_divider .divider_section_only .frm-
|
|
846 |
#form_settings_page #post-body-content{min-width:650px;}
|
847 |
#form_settings_page .frm_posttax_row select{max-width:35%;}
|
848 |
select.frm_cancelnew, input.frm_enternew{width:175px;}
|
|
|
849 |
|
850 |
/* Global Settings */
|
851 |
.categorydiv .frm_settings_form div.tabs-panel.general_settings{border-top:none;}
|
846 |
#form_settings_page #post-body-content{min-width:650px;}
|
847 |
#form_settings_page .frm_posttax_row select{max-width:35%;}
|
848 |
select.frm_cancelnew, input.frm_enternew{width:175px;}
|
849 |
+
.frm_field_box .widget-inside{background:#FBFBFB;}
|
850 |
|
851 |
/* Global Settings */
|
852 |
.categorydiv .frm_settings_form div.tabs-panel.general_settings{border-top:none;}
|
formidable.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/*
|
3 |
Plugin Name: Formidable
|
4 |
Description: Quickly and easily create drag-and-drop forms
|
5 |
-
Version: 2.0.
|
6 |
Plugin URI: http://formidablepro.com/
|
7 |
Author URI: http://strategy11.com
|
8 |
Author: Strategy11
|
2 |
/*
|
3 |
Plugin Name: Formidable
|
4 |
Description: Quickly and easily create drag-and-drop forms
|
5 |
+
Version: 2.0.03
|
6 |
Plugin URI: http://formidablepro.com/
|
7 |
Author URI: http://strategy11.com
|
8 |
Author: Strategy11
|
js/formidable.min.js
CHANGED
@@ -1,9 +1,9 @@
|
|
1 |
-
function frmFrontFormJS(){function k(b){var a=jQuery(this),c=a.attr("type");"submit"!=c&&b.preventDefault();b=a.parents("form:first");var e=a="",f=this.name;if("frm_prev_page"==f||-1!==this.className.indexOf("frm_prev_page"))a=jQuery(b).find(".frm_next_page").attr("id").replace("frm_next_p_","");else if("frm_save_draft"==f||-1!==this.className.indexOf("frm_save_draft"))e=1;jQuery(".frm_next_page").val(a);jQuery(".frm_saving_draft").val(e);"submit"!=c&&b.trigger("submit")
|
2 |
jQuery(this).toggleClass("active").children(".ui-icon-triangle-1-e, .ui-icon-triangle-1-s").toggleClass("ui-icon-triangle-1-s ui-icon-triangle-1-e")}function u(){this.className=this.className.replace("frm_transparent","");this.parentNode.getElementsByTagName("a")[0].className+=" frm_hidden"}function y(){var b=this.type,a=!1,c=!1;if("select-one"==b)c=!0,"frm_other_trigger"==this.options[this.selectedIndex].className&&(a=!0);else if("select-multiple"==b)for(var c=!0,e=this.options,a=!1,f=0;f<e.length;f++)if("frm_other_trigger"==
|
3 |
e[f].className&&e[f].selected){a=!0;break}c?(b=jQuery(this).parent().children(".frm_other_input"),a?b[0].className=b[0].className.replace("frm_pos_none",""):(1>b[0].className.indexOf("frm_pos_none")&&(b[0].className+=" frm_pos_none"),b[0].value="")):"radio"==b?(jQuery(this).closest(".frm_radio").children(".frm_other_input").removeClass("frm_pos_none"),jQuery(this).closest(".frm_radio").siblings().children(".frm_other_input").addClass("frm_pos_none").val("")):"checkbox"==b&&(this.checked?jQuery(this).closest(".frm_checkbox").children(".frm_other_input").removeClass("frm_pos_none"):
|
4 |
jQuery(this).closest(".frm_checkbox").children(".frm_other_input").addClass("frm_pos_none").val(""))}function A(b){var a=this.name.replace("item_meta[","").split("]"),c=a[0];c&&(jQuery('input[name="item_meta['+c+'][form]"]').length&&(c=a[2].replace("[","")),q("und",c,null,jQuery(this)),M(b,c))}function q(b,a,c,e,f){if("undefined"!=typeof __FRMRULES){var g=__FRMRULES[a];if("undefined"!=typeof g){if("undefined"==typeof c||null===c)c="go";"persist"!=f&&(m=[]);f=[];for(var h=0,p=g.length;h<p;h++){var r=
|
5 |
g[h];if("undefined"!=typeof r)for(var l=0,k=r.Conditions.length;l<k;l++){var C=r.Conditions[l];C.HideField=r.Setting.FieldName;C.MatchType=r.MatchType;C.Show=r.Show;f.push(C)}}g=f.length;h=0;for(p=g;h<p;h++)f[h].FieldName==a?v(h,f[h],a,b,c,e):v(h,f[h],a,b,c),h==g-1&&D(c)}}}function v(b,a,c,e,f,g){"undefined"==typeof m[a.HideField]&&(m[a.HideField]=[]);a.inputName="item_meta["+a.FieldName+"]";a.hiddenName="item_meta["+a.HideField+"]";a.containerID="frm_field_"+a.FieldName+"_container";a.hideContainerID=
|
6 |
-
"frm_field_"+a.HideField+"_container";a.hideBy="#";var h=!1;if("undefined"!==typeof g&&null!==g){1<g.length&&(g=g.eq(0));if("undefined"===typeof g.attr("name"))return;a.inputName=g.attr("name").replace("[other]","").replace("[]","");var p=g.closest(".frm_repeat_sec");p.length&&(p=p.
|
7 |
!0;g=jQuery('input[name^="'+a.inputName+'"], textarea[name^="'+a.inputName+'"], select[name^="'+a.inputName+'"]');if(1>g.length&&(g=jQuery("."+a.containerID+" input, ."+a.containerID+" textarea, ."+a.containerID+" select"),g.length)){v(b,a,c,e,f,g);return}1<g.length&&(g=g.eq(0))}null===document.getElementById(a.hideContainerID)&&(a.hideBy=".");if(a.FieldName!=c||"undefined"==typeof e||"und"==e)if(("radio"==a.Type||"data-radio"==a.Type)&&"radio"==g.attr("type"))e=jQuery('input[name="'+a.inputName+
|
8 |
'"]:checked').val(),"undefined"==typeof e&&(e="");else if("select"==a.Type||"time"==a.Type||"data-select"==a.Type||"checkbox"!=a.Type&&"data-checkbox"!=a.Type)e=g.val();"undefined"==typeof e&&(e=g.val());if("undefined"==typeof e){if(!0===h&&(c=jQuery("."+a.containerID+" input, ."+a.containerID+" select, ."+a.containerID+" textarea"),c.length)){c.each(function(){v(b,a,a.FieldName,e,f,jQuery(this))});return}e=""}c=[];if("checkbox"==a.Type||"data-checkbox"==a.Type)c=N(a.containerID,a.inputName),e=c.length?
|
9 |
c:"";m[a.HideField][b]=""===e?!1:{funcName:"getDataOpts",f:a,sel:e};if("checkbox"==a.Type||"data-checkbox"==a.Type&&"undefined"==typeof a.LinkedField)if(c=m[a.HideField][b]=!1,""!==e)for("!="==a.Condition&&(m[a.HideField][b]=!0),g=0;g<e.length;g++)c=z(a.Condition,a.Value,e[g]),"!="==a.Condition?!0===m[a.HideField][b]&&!1===c&&(m[a.HideField][b]=!1):!1===m[a.HideField][b]&&c&&(m[a.HideField][b]=!0);else c=z(a.Condition,a.Value,""),!1===m[a.HideField][b]&&c&&(m[a.HideField][b]=!0);else if("undefined"!=
|
1 |
+
function frmFrontFormJS(){function k(b){var a=jQuery(this),c=a.attr("type");"submit"!=c&&b.preventDefault();b=a.parents("form:first");var e=a="",f=this.name;if("frm_prev_page"==f||-1!==this.className.indexOf("frm_prev_page"))a=jQuery(b).find(".frm_next_page").attr("id").replace("frm_next_p_","");else if("frm_save_draft"==f||-1!==this.className.indexOf("frm_save_draft"))e=1;jQuery(".frm_next_page").val(a);jQuery(".frm_saving_draft").val(e);"submit"!=c&&b.trigger("submit")}function n(){jQuery(this).parent().children(".frm_toggle_container").slideToggle("fast");
|
2 |
jQuery(this).toggleClass("active").children(".ui-icon-triangle-1-e, .ui-icon-triangle-1-s").toggleClass("ui-icon-triangle-1-s ui-icon-triangle-1-e")}function u(){this.className=this.className.replace("frm_transparent","");this.parentNode.getElementsByTagName("a")[0].className+=" frm_hidden"}function y(){var b=this.type,a=!1,c=!1;if("select-one"==b)c=!0,"frm_other_trigger"==this.options[this.selectedIndex].className&&(a=!0);else if("select-multiple"==b)for(var c=!0,e=this.options,a=!1,f=0;f<e.length;f++)if("frm_other_trigger"==
|
3 |
e[f].className&&e[f].selected){a=!0;break}c?(b=jQuery(this).parent().children(".frm_other_input"),a?b[0].className=b[0].className.replace("frm_pos_none",""):(1>b[0].className.indexOf("frm_pos_none")&&(b[0].className+=" frm_pos_none"),b[0].value="")):"radio"==b?(jQuery(this).closest(".frm_radio").children(".frm_other_input").removeClass("frm_pos_none"),jQuery(this).closest(".frm_radio").siblings().children(".frm_other_input").addClass("frm_pos_none").val("")):"checkbox"==b&&(this.checked?jQuery(this).closest(".frm_checkbox").children(".frm_other_input").removeClass("frm_pos_none"):
|
4 |
jQuery(this).closest(".frm_checkbox").children(".frm_other_input").addClass("frm_pos_none").val(""))}function A(b){var a=this.name.replace("item_meta[","").split("]"),c=a[0];c&&(jQuery('input[name="item_meta['+c+'][form]"]').length&&(c=a[2].replace("[","")),q("und",c,null,jQuery(this)),M(b,c))}function q(b,a,c,e,f){if("undefined"!=typeof __FRMRULES){var g=__FRMRULES[a];if("undefined"!=typeof g){if("undefined"==typeof c||null===c)c="go";"persist"!=f&&(m=[]);f=[];for(var h=0,p=g.length;h<p;h++){var r=
|
5 |
g[h];if("undefined"!=typeof r)for(var l=0,k=r.Conditions.length;l<k;l++){var C=r.Conditions[l];C.HideField=r.Setting.FieldName;C.MatchType=r.MatchType;C.Show=r.Show;f.push(C)}}g=f.length;h=0;for(p=g;h<p;h++)f[h].FieldName==a?v(h,f[h],a,b,c,e):v(h,f[h],a,b,c),h==g-1&&D(c)}}}function v(b,a,c,e,f,g){"undefined"==typeof m[a.HideField]&&(m[a.HideField]=[]);a.inputName="item_meta["+a.FieldName+"]";a.hiddenName="item_meta["+a.HideField+"]";a.containerID="frm_field_"+a.FieldName+"_container";a.hideContainerID=
|
6 |
+
"frm_field_"+a.HideField+"_container";a.hideBy="#";var h=!1;if("undefined"!==typeof g&&null!==g){1<g.length&&(g=g.eq(0));if("undefined"===typeof g.attr("name"))return;a.inputName=g.attr("name").replace("[other]","").replace("[]","");var p=g.closest(".frm_repeat_sec");p.length&&(p=p.find(".frm_field_"+a.FieldName+"_container"),a.containerID=p.attr("id"),a.hideContainerID=a.containerID.replace(a.FieldName,a.HideField),a.hiddenName=a.inputName.replace("["+a.FieldName+"]","["+a.HideField+"]"))}else{h=
|
7 |
!0;g=jQuery('input[name^="'+a.inputName+'"], textarea[name^="'+a.inputName+'"], select[name^="'+a.inputName+'"]');if(1>g.length&&(g=jQuery("."+a.containerID+" input, ."+a.containerID+" textarea, ."+a.containerID+" select"),g.length)){v(b,a,c,e,f,g);return}1<g.length&&(g=g.eq(0))}null===document.getElementById(a.hideContainerID)&&(a.hideBy=".");if(a.FieldName!=c||"undefined"==typeof e||"und"==e)if(("radio"==a.Type||"data-radio"==a.Type)&&"radio"==g.attr("type"))e=jQuery('input[name="'+a.inputName+
|
8 |
'"]:checked').val(),"undefined"==typeof e&&(e="");else if("select"==a.Type||"time"==a.Type||"data-select"==a.Type||"checkbox"!=a.Type&&"data-checkbox"!=a.Type)e=g.val();"undefined"==typeof e&&(e=g.val());if("undefined"==typeof e){if(!0===h&&(c=jQuery("."+a.containerID+" input, ."+a.containerID+" select, ."+a.containerID+" textarea"),c.length)){c.each(function(){v(b,a,a.FieldName,e,f,jQuery(this))});return}e=""}c=[];if("checkbox"==a.Type||"data-checkbox"==a.Type)c=N(a.containerID,a.inputName),e=c.length?
|
9 |
c:"";m[a.HideField][b]=""===e?!1:{funcName:"getDataOpts",f:a,sel:e};if("checkbox"==a.Type||"data-checkbox"==a.Type&&"undefined"==typeof a.LinkedField)if(c=m[a.HideField][b]=!1,""!==e)for("!="==a.Condition&&(m[a.HideField][b]=!0),g=0;g<e.length;g++)c=z(a.Condition,a.Value,e[g]),"!="==a.Condition?!0===m[a.HideField][b]&&!1===c&&(m[a.HideField][b]=!1):!1===m[a.HideField][b]&&c&&(m[a.HideField][b]=!0);else c=z(a.Condition,a.Value,""),!1===m[a.HideField][b]&&c&&(m[a.HideField][b]=!0);else if("undefined"!=
|
js/formidable_admin.js
CHANGED
@@ -2263,7 +2263,7 @@ function frmAdminBuildJS(){
|
|
2263 |
|
2264 |
jQuery(document.getElementById('datepicker_sample')).datepicker();
|
2265 |
|
2266 |
-
|
2267 |
|
2268 |
jQuery('select[name$="[theme_selector]"]').change(function(){
|
2269 |
var themeVal = jQuery(this).val();
|
2263 |
|
2264 |
jQuery(document.getElementById('datepicker_sample')).datepicker();
|
2265 |
|
2266 |
+
jQuery(document.getElementById('frm_position')).change(setPosClass);
|
2267 |
|
2268 |
jQuery('select[name$="[theme_selector]"]').change(function(){
|
2269 |
var themeVal = jQuery(this).val();
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: http://formidablepro.com/donate
|
|
4 |
Tags: admin, AJAX, captcha, contact, contact form, database, email, feedback, form, forms, javascript, jquery, page, plugin, poll, Post, spam, survey, template, widget, wpmu, form builder
|
5 |
Requires at least: 3.3.3
|
6 |
Tested up to: 4.2
|
7 |
-
Stable tag: 2.0.
|
8 |
|
9 |
Beautiful forms in 60 seconds. The WordPress form builder that enables you to create forms with a simple drag-and-drop interface and in-place editing.
|
10 |
|
@@ -89,6 +89,20 @@ A. Try clearing your browser cache. As plugin modifications are made, frequent j
|
|
89 |
[See more FAQs](http://formidablepro.com/formidable-faqs/ "Formidable Form FAQs")
|
90 |
|
91 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
92 |
= 2.0.02 =
|
93 |
* Make sure frm_to_email hook is reverse compatible
|
94 |
* Fix php example in the shortcode examples
|
4 |
Tags: admin, AJAX, captcha, contact, contact form, database, email, feedback, form, forms, javascript, jquery, page, plugin, poll, Post, spam, survey, template, widget, wpmu, form builder
|
5 |
Requires at least: 3.3.3
|
6 |
Tested up to: 4.2
|
7 |
+
Stable tag: 2.0.03
|
8 |
|
9 |
Beautiful forms in 60 seconds. The WordPress form builder that enables you to create forms with a simple drag-and-drop interface and in-place editing.
|
10 |
|
89 |
[See more FAQs](http://formidablepro.com/formidable-faqs/ "Formidable Form FAQs")
|
90 |
|
91 |
== Changelog ==
|
92 |
+
= 2.0.03 =
|
93 |
+
* Use frm_clear instead of clear to minimize conflicts
|
94 |
+
* Add js fallback for database update on sites without CURL
|
95 |
+
* Fix issues with emails migrating to actions in php 5.3, and t showing in some emails after updating settings
|
96 |
+
* Pro: Add frm_date_format filter
|
97 |
+
* Pro: If a comma separated list of dates is sent for formatting, explode it before formatting
|
98 |
+
* Pro: Increase the backtrack limit when needed when replacing shortcodes in the view content if server has the limit below default
|
99 |
+
* Pro: Fix issue causing csv export error
|
100 |
+
* Pro: Fix the issue cuasing new posts to not be linked to a view if a field is selected for the post content
|
101 |
+
* Pro: Fix issue some users are having with blank date fields
|
102 |
+
* Pro: Fix ending collapsible sections at the end of a section instead of waiting for the next section
|
103 |
+
* Pro: Fix firing calculations on page load when there are multiple calculations
|
104 |
+
* Pro: Don't allow theme to affect the font size of stars
|
105 |
+
|
106 |
= 2.0.02 =
|
107 |
* Make sure frm_to_email hook is reverse compatible
|
108 |
* Fix php example in the shortcode examples
|