diff --git a/includes/admin/assets/js/um-admin-forms.js b/includes/admin/assets/js/um-admin-forms.js index 1299c920..2040a02a 100644 --- a/includes/admin/assets/js/um-admin-forms.js +++ b/includes/admin/assets/js/um-admin-forms.js @@ -557,7 +557,6 @@ jQuery(document).ready( function() { jQuery( '.um-multi-text-add-option' ).on('click', function() { var list = jQuery(this).siblings( 'ul.um-multi-text-list' ); - var field_id = list.data( 'field_id' ); var k = 0; if ( list.find( 'li:last input.um-forms-field' ).length > 0 ) { k = list.find( 'li:last input.um-forms-field' ).attr('id').split("-"); @@ -566,7 +565,7 @@ jQuery(document).ready( function() { var text_html = jQuery( '
' ).append( list.siblings('.um-hidden-multi-text').clone() ).html(); - var classes = list.find('li:last').attr('class'); + var classes = list.data('item_class'); list.append( '
  • ' + text_html + @@ -986,4 +985,4 @@ jQuery(document).ready( function() { return false; } -}); \ No newline at end of file +}); diff --git a/includes/admin/core/class-admin-forms.php b/includes/admin/core/class-admin-forms.php index 1a0c23e7..fffb49a9 100644 --- a/includes/admin/core/class-admin-forms.php +++ b/includes/admin/core/class-admin-forms.php @@ -1151,8 +1151,9 @@ if ( ! class_exists( 'um\admin\core\Admin_Forms' ) ) { $class_attr = ' class="um-forms-field ' . esc_attr( $class ) . '" '; $data = array( - 'field_id' => $field_data['id'], - 'id_attr' => $id + 'field_id' => $field_data['id'], + 'id_attr' => $id, + 'item_class' => "um-multi-text-option-line {$size}", ); $data_attr = ''; @@ -1604,4 +1605,4 @@ if ( ! class_exists( 'um\admin\core\Admin_Forms' ) ) { return $value; } } -} \ No newline at end of file +} diff --git a/includes/admin/core/class-admin-settings.php b/includes/admin/core/class-admin-settings.php index fa6183c7..a63f4dd7 100644 --- a/includes/admin/core/class-admin-settings.php +++ b/includes/admin/core/class-admin-settings.php @@ -83,6 +83,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Settings' ) ) { add_action( 'um_settings_before_save', array( $this, 'before_licenses_save' ) ); add_action( 'um_settings_save', array( $this, 'licenses_save' ) ); + add_filter( 'um_change_settings_before_save', array( $this, 'set_default_if_empty' ), 9, 1 ); add_filter( 'um_change_settings_before_save', array( $this, 'remove_empty_values' ), 10, 1 ); add_action( 'admin_init', array( &$this, 'um_download_install_info' ) ); @@ -487,7 +488,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Settings' ) ) { 'tooltip' => __( 'Here you can exclude URLs beside the redirect URI to be accessible to everyone', 'ultimate-member' ), 'add_text' => __( 'Add New URL', 'ultimate-member' ), 'conditional' => array( 'accessible', '=', 2 ), - 'show_default_number' => 1, + 'show_default_number' => 0, ), array( 'id' => 'home_page_accessible', @@ -2204,6 +2205,28 @@ if ( ! class_exists( 'um\admin\core\Admin_Settings' ) ) { } + function set_default_if_empty( $settings ) { + $tab = ''; + if ( ! empty( $_GET['tab'] ) ) { + $tab = sanitize_key( $_GET['tab'] ); + } + + $section = ''; + if ( ! empty( $_GET['section'] ) ) { + $section = sanitize_key( $_GET['section'] ); + } + + + if ( 'access' === $tab && empty( $section ) ) { + if ( ! array_key_exists( 'access_exclude_uris', $settings ) ) { + $settings['access_exclude_uris'] = array(); + } + } + + return $settings; + } + + /** * Remove empty values from multi text fields *