Files
ultimatemember/includes/admin/templates/directory/search.php
T
nikitasinelnikov 177ef54d88 - visual improvements for member directory;
- fixed must search/filter option;
2019-09-11 13:01:44 +03:00

107 lines
4.2 KiB
PHP

<?php if ( ! defined( 'ABSPATH' ) ) exit;
global $post_id; ?>
<div class="um-admin-metabox">
<?php
$_um_roles_search_value = get_post_meta( $post_id, '_um_roles_can_search', true );
$_um_roles_search_value = empty( $_um_roles_search_value ) ? array() : $_um_roles_search_value;
$_um_roles_filter_value = get_post_meta( $post_id, '_um_roles_can_filter', true );
$_um_roles_filter_value = empty( $_um_roles_filter_value ) ? array() : $_um_roles_filter_value;
/**
* UM hook
*
* @type filter
* @title um_admin_custom_search_filters
* @description Custom Search Filters
* @input_vars
* [{"var":"$custom_search","type":"array","desc":"Filters"}]
* @change_log
* ["Since: 2.0"]
* @usage
* <?php add_filter( 'um_admin_custom_search_filters', 'function_name', 10, 1 ); ?>
* @example
* <?php
* add_filter( 'um_admin_custom_search_filters', 'my_admin_custom_search_filters', 10, 1 );
* function my_upload_file_name( $custom_search ) {
* // your code here
* return $custom_search;
* }
* ?>
*/
$custom_search = apply_filters( 'um_admin_custom_search_filters', array() );
$searchable_fields = UM()->builtin()->all_user_fields( 'date,time,url' );
$searchable_fields = $searchable_fields + $custom_search;
$user_fields = array();
foreach ( $searchable_fields as $key => $arr ) {
$user_fields[ $key ] = isset( $arr['title'] ) ? $arr['title'] : '';
}
//$post_id = get_the_ID();
$_um_search_fields = get_post_meta( $post_id, '_um_search_fields', true );
UM()->admin_forms( array(
'class' => 'um-member-directory-search um-half-column',
'prefix_id' => 'um_metadata',
'fields' => array(
array(
'id' => '_um_search',
'type' => 'checkbox',
'label' => __( 'Enable Search feature', 'ultimate-member' ),
'tooltip' => __( 'If turned on, users will be able to search members in this directory', 'ultimate-member' ),
'value' => UM()->query()->get_meta_value( '_um_search' ),
),
array(
'id' => '_um_roles_can_search',
'type' => 'multi_checkbox',
'label' => __( 'User Roles that can use search', 'ultimate-member' ),
'tooltip' => __( 'If you want to allow specific user roles to be able to search only', 'ultimate-member' ),
'value' => $_um_roles_search_value,
'options' => UM()->roles()->get_roles(),
'columns' => 3,
'conditional' => array( '_um_search', '=', 1 )
),
array(
'id' => '_um_filters',
'type' => 'checkbox',
'label' => __( 'Enable Filters feature', 'ultimate-member' ),
'tooltip' => __( 'If turned on, users will be able to filter members in this directory', 'ultimate-member' ),
'value' => UM()->query()->get_meta_value( '_um_filters' ),
),
array(
'id' => '_um_roles_can_filter',
'type' => 'multi_checkbox',
'label' => __( 'User Roles that can use filters', 'ultimate-member' ),
'tooltip' => __( 'If you want to allow specific user roles to be able to filter only', 'ultimate-member' ),
'value' => $_um_roles_filter_value,
'options' => UM()->roles()->get_roles(),
'columns' => 3,
'conditional' => array( '_um_filters', '=', 1 )
),
array(
'id' => '_um_search_fields',
'type' => 'multi_selects',
'label' => __( 'Choose filter(s) meta to enable', 'ultimate-member' ),
'value' => $_um_search_fields,
'conditional' => array( '_um_filters', '=', 1 ),
'options' => UM()->member_directory()->filter_fields,
'add_text' => __( 'Add New Custom Field', 'ultimate-member' ),
'show_default_number' => 1,
),
array(
'id' => '_um_search_filters',
'type' => 'text',
'label' => __( 'Default filters', 'ultimate-member' ),
'tooltip' => __( 'You can set default filters like URL parameters', 'ultimate-member' ),
'value' => UM()->query()->get_meta_value('_um_search_filters', null, 'na' ),
'placeholder' => 'field1=val1&field2=val2'
),
)
) )->render_form(); ?>
<div class="um-admin-clear"></div>
</div>