diff --git a/includes/admin/assets/js/um-admin-field.js b/includes/admin/assets/js/um-admin-field.js index d4526a49..606f04a8 100644 --- a/includes/admin/assets/js/um-admin-field.js +++ b/includes/admin/assets/js/um-admin-field.js @@ -31,7 +31,31 @@ jQuery(document).ready(function() { jQuery(document).on('submit', 'form.um_add_field', function(e){ e.preventDefault(); - + var conditions = $('.um-admin-cur-condition'); + //need fields refactor + $(conditions).each( function ( i ) { + + if ( $( this ).find('[id^="_conditional_action"]').val() === '' || + $( this ).find('[id^="_conditional_field"]').val() === '' || + $( this ).find('[id^="_conditional_operator"]').val() ==='' ) + { + $(conditions[i]).find('.um-admin-remove-condition').click(); + } + } ); + conditions = $('.um-admin-cur-condition'); + $(conditions).each( function ( i ) { + var id = i === 0 ? '' : i; + + $( this ).find('[id^="_conditional_action"]').attr('name', '_conditional_action' + id); + $( this ).find('[id^="_conditional_action"]').attr('id', '_conditional_action' + id); + $( this ).find('[id^="_conditional_field"]').attr('name', '_conditional_field' + id); + $( this ).find('[id^="_conditional_field"]').attr('id', '_conditional_field' + id); + $( this ).find('[id^="_conditional_operator"]').attr('name', '_conditional_operator' + id); + $( this ).find('[id^="_conditional_operator"]').attr('id', '_conditional_operator' + id); + $( this ).find('[id^="_conditional_value"]').attr('name', '_conditional_value' + id); + $( this ).find('[id^="_conditional_value"]').attr('id', '_conditional_value' + id); + + } ); var form = jQuery(this); jQuery.ajax({ diff --git a/includes/admin/assets/js/um-admin-modal.js b/includes/admin/assets/js/um-admin-modal.js index e66995ac..45a860b5 100644 --- a/includes/admin/assets/js/um-admin-modal.js +++ b/includes/admin/assets/js/um-admin-modal.js @@ -190,11 +190,14 @@ jQuery(document).ready(function() { } um_admin_modal_responsive(); }); - + + + /** clone a condition **/ - jQuery(document).on('click', '.um-admin-new-condition', function(){ + jQuery(document).on('click', '.um-admin-new-condition', function() { + if ( jQuery(this).hasClass('disabled') ) return false; @@ -205,11 +208,15 @@ jQuery(document).ready(function() { //content.find('select').select2('destroy'); var template = jQuery('.um-admin-btn-content').find('.um-admin-cur-condition-template').clone(); - - template.find('input[type=text],select').each(function(){ - jQuery(this).attr('id', jQuery(this).attr('id') + length ); - jQuery(this).attr('name', jQuery(this).attr('name') + length ); - }); + // if ( length < 1 ) { + // id = ''; + // } else { + // id = length; + // } + // template.find('input[type=text],select').each(function() { + // jQuery(this).attr('id', jQuery(this).attr('id') + id ); + // jQuery(this).attr('name', jQuery(this).attr('name') + id ); + // }); template.find('input[type=text]').val(''); template.find('select').val(''); @@ -224,6 +231,20 @@ jQuery(document).ready(function() { jQuery(this).addClass('disabled'); alert( 'You already have 5 rules' ); } + //need fields refactor + var conditions = $('.um-admin-cur-condition'); + $(conditions).each( function ( i ) { + id = i === 0 ? '' : i; + $( this ).find('[id^="_conditional_action"]').attr('name', '_conditional_action' + id); + $( this ).find('[id^="_conditional_action"]').attr('id', '_conditional_action' + id); + $( this ).find('[id^="_conditional_field"]').attr('name', '_conditional_field' + id); + $( this ).find('[id^="_conditional_field"]').attr('id', '_conditional_field' + id); + $( this ).find('[id^="_conditional_operator"]').attr('name', '_conditional_operator' + id); + $( this ).find('[id^="_conditional_operator"]').attr('id', '_conditional_operator' + id); + $( this ).find('[id^="_conditional_value"]').attr('name', '_conditional_value' + id); + $( this ).find('[id^="_conditional_value"]').attr('id', '_conditional_value' + id); + } ); + }); /** @@ -247,6 +268,19 @@ jQuery(document).ready(function() { jQuery('.um-admin-new-condition').removeClass('disabled'); jQuery('.tipsy').remove(); condition.remove(); + //need fields refactor + var conditions = $('.um-admin-cur-condition'); + $(conditions).each( function ( i ) { + id = i === 0 ? '' : i; + $( this ).find('[id^="_conditional_action"]').attr('name', '_conditional_action' + id); + $( this ).find('[id^="_conditional_action"]').attr('id', '_conditional_action' + id); + $( this ).find('[id^="_conditional_field"]').attr('name', '_conditional_field' + id); + $( this ).find('[id^="_conditional_field"]').attr('id', '_conditional_field' + id); + $( this ).find('[id^="_conditional_operator"]').attr('name', '_conditional_operator' + id); + $( this ).find('[id^="_conditional_operator"]').attr('id', '_conditional_operator' + id); + $( this ).find('[id^="_conditional_value"]').attr('name', '_conditional_value' + id); + $( this ).find('[id^="_conditional_value"]').attr('id', '_conditional_value' + id); + } ); um_admin_live_update_scripts(); um_admin_modal_responsive(); }); diff --git a/includes/admin/core/class-admin-builder.php b/includes/admin/core/class-admin-builder.php index c89d025d..7392644d 100644 --- a/includes/admin/core/class-admin-builder.php +++ b/includes/admin/core/class-admin-builder.php @@ -689,7 +689,9 @@ if ( ! class_exists( 'um\admin\core\Admin_Builder' ) ) { $field_ID = $_metakey; $field_args = $save[ $_metakey ]; - +// if () { +// +// } /** * UM hook *