diff --git a/assets/js/um-scripts.js b/assets/js/um-scripts.js index 51174c84..bef7697a 100644 --- a/assets/js/um-scripts.js +++ b/assets/js/um-scripts.js @@ -658,11 +658,22 @@ jQuery(document).ready(function() { }); me.select2('destroy'); - me.select2({ - data: arr_items, - allowClear: true, - minimumResultsForSearch: 10 - }); + if ( me.hasClass( 'um-s1' ) ) { + me.select2({ + data: arr_items, + allowClear: true, + dropdownParent: me.parent() + }); + } else if ( me.hasClass( 'um-s2' ) ) { + me.select2({ + data: arr_items, + allowClear: true, + minimumResultsForSearch: 10, + dropdownParent: me.parent() + }); + } + + if ( data.post.members_directory === 'yes' ) { me.find('option').each( function() { diff --git a/assets/js/um-scripts.min.js b/assets/js/um-scripts.min.js index f1753abd..f04939b9 100644 --- a/assets/js/um-scripts.min.js +++ b/assets/js/um-scripts.min.js @@ -1 +1 @@ -function um_sanitize_value(e,t){var a=document.createElement("div"),e=(a.innerText=e,a.innerHTML);return t&&jQuery(t).val(e),e}function um_unsanitize_value(e){var t=document.createElement("textarea");return t.innerHTML=e,0===t.childNodes.length?"":t.childNodes[0].nodeValue}function um_init_datetimepicker(){jQuery(".um-datepicker:not(.picker__input)").each(function(){var e=jQuery(this),t=!1,a=(void 0!==e.attr("data-disabled_weekdays")&&""!==e.attr("data-disabled_weekdays")&&(t=JSON.parse(e.attr("data-disabled_weekdays"))),null),i=(void 0!==e.attr("data-years")&&(a=e.attr("data-years")),e.attr("data-date_min")),n=e.attr("data-date_max"),r=[],u=[],i=(void 0!==i&&(r=i.split(",")),void 0!==n&&(u=n.split(",")),r.length?new Date(r):null),n=r.length?new Date(u):null,u=(i&&"Invalid Date"==i.toString()&&3==r.length&&(r=r[1]+"/"+r[2]+"/"+r[0],i=new Date(Date.parse(r))),n&&"Invalid Date"==n.toString()&&3==u.length&&(r=u[1]+"/"+u[2]+"/"+u[0],n=new Date(Date.parse(r))),{disable:t,format:e.attr("data-format"),formatSubmit:"yyyy/mm/dd",hiddenName:!0,onOpen:function(){e.blur()},onClose:function(){e.blur()}});null!==a&&(u.selectYears=a),null!==i&&(u.min=i),null!==n&&(u.max=n),e.pickadate(u)}),jQuery(".um-timepicker:not(.picker__input)").each(function(){var e=jQuery(this);e.pickatime({format:e.attr("data-format"),interval:parseInt(e.attr("data-intervals")),formatSubmit:"HH:i",hiddenName:!0,onOpen:function(){e.blur()},onClose:function(){e.blur()}})})}function init_tipsy(){"function"==typeof jQuery.fn.tipsy&&(jQuery(".um-tip-n").tipsy({gravity:"n",opacity:1,live:"a.live",offset:3}),jQuery(".um-tip-w").tipsy({gravity:"w",opacity:1,live:"a.live",offset:3}),jQuery(".um-tip-e").tipsy({gravity:"e",opacity:1,live:"a.live",offset:3}),jQuery(".um-tip-s").tipsy({gravity:"s",opacity:1,live:"a.live",offset:3}))}jQuery(document).ready(function(){function i(e){var a=jQuery(e.currentTarget),e=a.find(":selected");1is_source_blacklisted( $data['custom_dropdown_options_source'] ) ) { return $arr_options; } @@ -1481,7 +1480,6 @@ if ( ! class_exists( 'um\core\Fields' ) ) { $arr_options = call_user_func( $data['custom_dropdown_options_source'] ); } } - } return $arr_options; diff --git a/includes/core/class-form.php b/includes/core/class-form.php index 9b9c9e27..4345c495 100644 --- a/includes/core/class-form.php +++ b/includes/core/class-form.php @@ -181,7 +181,7 @@ if ( ! class_exists( 'um\core\Form' ) ) { ); if ( ! empty( $values_array ) ) { - $parent_dropdown = isset( $arr_options['field']['parent_dropdown_relationship'] ) ? $arr_options['field']['parent_dropdown_relationship'] : ''; + $parent_dropdown = isset( $arr_options['post']['parent_option_name'] ) ? $arr_options['post']['parent_option_name'] : ''; $arr_options['items'] = call_user_func( $ajax_source_func, $parent_dropdown ); if ( array_keys( $arr_options['items'] ) !== range( 0, count( $arr_options['items'] ) - 1 ) ) { diff --git a/includes/core/class-member-directory.php b/includes/core/class-member-directory.php index 3ceeb1e3..379bbea2 100644 --- a/includes/core/class-member-directory.php +++ b/includes/core/class-member-directory.php @@ -641,9 +641,9 @@ if ( ! class_exists( 'um\core\Member_Directory' ) ) { $values_array = ( ! empty( $users_roles['avail_roles'] ) && is_array( $users_roles['avail_roles'] ) ) ? array_keys( array_filter( $users_roles['avail_roles'] ) ) : array(); } - if ( ! empty( $values_array ) && in_array( $attrs['type'], array( 'select', 'multiselect', 'checkbox', 'radio' ) ) ) { + if ( ! empty( $values_array ) && in_array( $attrs['type'], array( 'select', 'multiselect', 'checkbox', 'radio' ), true ) ) { $values_array = array_map( 'maybe_unserialize', $values_array ); - $temp_values = array(); + $temp_values = array(); foreach ( $values_array as $values ) { if ( is_array( $values ) ) { $temp_values = array_merge( $temp_values, $values ); @@ -654,7 +654,7 @@ if ( ! class_exists( 'um\core\Member_Directory' ) ) { $values_array = array_unique( $temp_values ); } - if ( $attrs['metakey'] != 'online_status' && empty( $values_array ) ) { + if ( 'online_status' !== $attrs['metakey'] && empty( $values_array ) ) { ob_get_clean(); return ''; } @@ -721,7 +721,7 @@ if ( ! class_exists( 'um\core\Member_Directory' ) ) { $attrs['options'] = apply_filters( 'um_member_directory_filter_select_options', $attrs['options'], $values_array, $attrs ); - if ( empty( $attrs['options'] ) || ! is_array( $attrs['options'] ) ) { + if ( ( empty( $attrs['options'] ) || ! is_array( $attrs['options'] ) ) && ! ( ! empty( $attrs['custom_dropdown_options_source'] ) && ! empty( $attrs['parent_dropdown_relationship'] ) ) ) { ob_get_clean(); return ''; }