From 30b5e0bbbf6899286d55b14860dc8fb955a33bfe Mon Sep 17 00:00:00 2001 From: Denis Baranov Date: Sun, 3 Jun 2018 00:58:11 +0300 Subject: [PATCH] allow condition value to be zero --- includes/admin/assets/js/um-admin-field.js | 54 +++++++++++---------- includes/admin/core/class-admin-builder.php | 11 +++-- includes/admin/core/class-admin-metabox.php | 2 +- 3 files changed, 35 insertions(+), 32 deletions(-) diff --git a/includes/admin/assets/js/um-admin-field.js b/includes/admin/assets/js/um-admin-field.js index a677ec53..035f4714 100644 --- a/includes/admin/assets/js/um-admin-field.js +++ b/includes/admin/assets/js/um-admin-field.js @@ -35,6 +35,8 @@ jQuery(document).ready(function() { var form = jQuery(this); + console.log(um_admin_field_data.ajax_url); + jQuery.ajax({ url: um_admin_field_data.ajax_url, type: 'POST', @@ -50,35 +52,35 @@ jQuery(document).ready(function() { form.css({'opacity': 1}); }, success: function(data){ - - if (data.error){ - - c = 0; - jQuery.each(data.error, function(i, v){ - c++; - if ( c == 1 ) { - form.find('#'+i).addClass('um-admin-error').focus(); - form.find('.um-admin-error-block').show().html(v); - } - }); - - um_admin_modal_responsive(); - - } else { - - jQuery('.um-col-demon-settings').data('in_row', ''); - jQuery('.um-col-demon-settings').data('in_sub_row', ''); - jQuery('.um-col-demon-settings').data('in_column', ''); - jQuery('.um-col-demon-settings').data('in_group', ''); - - um_admin_remove_modal(); - um_admin_update_builder(); - - } + console.log(data); + // if (data.error){ + // + // c = 0; + // jQuery.each(data.error, function(i, v){ + // c++; + // if ( c == 1 ) { + // form.find('#'+i).addClass('um-admin-error').focus(); + // form.find('.um-admin-error-block').show().html(v); + // } + // }); + // + // um_admin_modal_responsive(); + // + // } else { + // + // jQuery('.um-col-demon-settings').data('in_row', ''); + // jQuery('.um-col-demon-settings').data('in_sub_row', ''); + // jQuery('.um-col-demon-settings').data('in_column', ''); + // jQuery('.um-col-demon-settings').data('in_group', ''); + // + // um_admin_remove_modal(); + // um_admin_update_builder(); + // + // } }, error: function(data){ - + console.log(data); } }); diff --git a/includes/admin/core/class-admin-builder.php b/includes/admin/core/class-admin-builder.php index 7efae58b..3e8d2e30 100644 --- a/includes/admin/core/class-admin-builder.php +++ b/includes/admin/core/class-admin-builder.php @@ -167,27 +167,27 @@ if ( ! class_exists( 'um\admin\core\Admin_Builder' ) ) { function um_admin_pre_save_field_to_form( $array ){ unset( $array['conditions'] ); if ( isset($array['conditional_field']) && !empty( $array['conditional_action'] ) && !empty( $array['conditional_operator'] ) ) { - $array['conditional_value'] = ! empty( $array['conditional_value'] ) ? $array['conditional_value'] : ''; + $array['conditional_value'] = isset( $array['conditional_value'] ) ? $array['conditional_value'] : ''; $array['conditions'][] = array( $array['conditional_action'], $array['conditional_field'], $array['conditional_operator'], $array['conditional_value'] ); } if ( isset($array['conditional_field1']) && !empty( $array['conditional_action1'] ) && !empty( $array['conditional_operator1'] ) ) { - $array['conditional_value1'] = ! empty( $array['conditional_value1'] ) ? $array['conditional_value1'] : ''; + $array['conditional_value1'] = isset( $array['conditional_value1'] ) ? $array['conditional_value1'] : ''; $array['conditions'][] = array( $array['conditional_action1'], $array['conditional_field1'], $array['conditional_operator1'], $array['conditional_value1'] ); } if ( isset($array['conditional_field2']) && !empty( $array['conditional_action2'] ) && !empty( $array['conditional_operator2'] ) ) { - $array['conditional_value2'] = ! empty( $array['conditional_value2'] ) ? $array['conditional_value2'] : ''; + $array['conditional_value2'] = isset( $array['conditional_value2'] ) ? $array['conditional_value2'] : ''; $array['conditions'][] = array( $array['conditional_action2'], $array['conditional_field2'], $array['conditional_operator2'], $array['conditional_value2'] ); } if ( isset($array['conditional_field3']) && !empty( $array['conditional_action3'] ) && !empty( $array['conditional_operator3'] ) ) { - $array['conditional_value3'] = ! empty( $array['conditional_value3'] ) ? $array['conditional_value3'] : ''; + $array['conditional_value3'] = isset( $array['conditional_value3'] ) ? $array['conditional_value3'] : ''; $array['conditions'][] = array( $array['conditional_action3'], $array['conditional_field3'], $array['conditional_operator3'], $array['conditional_value3'] ); } if ( isset($array['conditional_field4']) && !empty( $array['conditional_action4'] ) && !empty( $array['conditional_operator4'] ) ) { - $array['conditional_value4'] = ! empty( $array['conditional_value4'] ) ? $array['conditional_value4'] : ''; + $array['conditional_value4'] = isset( $array['conditional_value4'] ) ? $array['conditional_value4'] : ''; $array['conditions'][] = array( $array['conditional_action4'], $array['conditional_field4'], $array['conditional_operator4'], $array['conditional_value4'] ); } @@ -659,6 +659,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Builder' ) ) { $output['error'] = apply_filters( 'um_admin_field_update_error_handling', $output['error'], $array ); extract( $array['post'] ); + if ( empty( $output['error'] ) ){ $save = array(); diff --git a/includes/admin/core/class-admin-metabox.php b/includes/admin/core/class-admin-metabox.php index 2e7abdf9..86171059 100644 --- a/includes/admin/core/class-admin-metabox.php +++ b/includes/admin/core/class-admin-metabox.php @@ -1313,7 +1313,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Metabox' ) ) { ?>

- +