687 lines
14 KiB
PHP
687 lines
14 KiB
PHP
<?php
|
|
/**
|
|
* Deprecated functions
|
|
*
|
|
* Where public functions come to die.
|
|
*
|
|
*
|
|
*/
|
|
|
|
if ( ! defined( 'ABSPATH' ) ) {
|
|
exit;
|
|
}
|
|
|
|
|
|
/**
|
|
* Wrapper for deprecated functions so we can apply some extra logic.
|
|
*
|
|
* @since 2.0
|
|
* @param string $function
|
|
* @param string $version
|
|
* @param string $replacement
|
|
*/
|
|
function um_deprecated_function( $function, $version, $replacement = null ) {
|
|
if ( UM()->is_ajax() ) {
|
|
do_action( 'deprecated_function_run', $function, $replacement, $version );
|
|
$log_string = "The {$function} function is deprecated since version {$version}.";
|
|
$log_string .= $replacement ? " Replace with {$replacement}." : '';
|
|
error_log( $log_string );
|
|
} else {
|
|
_deprecated_function( $function, $version, $replacement );
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
* Get option value
|
|
*
|
|
* Please use UM()->options()->get() instead
|
|
*
|
|
* @deprecated 2.0.1
|
|
* @param $option_id
|
|
* @return mixed|string|void
|
|
*/
|
|
function um_get_option( $option_id ) {
|
|
//um_deprecated_function( 'um_get_option', '2.0', 'UM()->options()->get' );
|
|
return UM()->options()->get( $option_id );
|
|
}
|
|
|
|
|
|
/**
|
|
* Update option value
|
|
*
|
|
* Please use UM()->options()->update() instead
|
|
*
|
|
* @deprecated 2.0.1
|
|
* @param $option_id
|
|
* @param $value
|
|
*/
|
|
function um_update_option( $option_id, $value ) {
|
|
//um_deprecated_function( 'um_update_option', '2.0', 'UM()->options()->update' );
|
|
UM()->options()->update( $option_id, $value );
|
|
}
|
|
|
|
|
|
/**
|
|
* Update option value
|
|
*
|
|
* Please use UM()->options()->remove() instead
|
|
*
|
|
* @deprecated 2.0.1
|
|
* @param $option_id
|
|
*/
|
|
function um_remove_option( $option_id ) {
|
|
//um_deprecated_function( 'um_remove_option', '2.0', 'UM()->options()->remove' );
|
|
UM()->options()->remove( $option_id );
|
|
}
|
|
|
|
|
|
/**
|
|
* @deprecated 2.0
|
|
*
|
|
* @param $content_type
|
|
* @return string
|
|
*/
|
|
function um_mail_content_type( $content_type ) {
|
|
return 'text/html';
|
|
}
|
|
|
|
|
|
/**
|
|
* Convert urls to clickable links
|
|
*
|
|
* @deprecated 2.0
|
|
*
|
|
* @param $s
|
|
* @return mixed
|
|
*/
|
|
function um_clickable_links( $s ) {
|
|
return preg_replace( '@(https?://([-\w\.]+[-\w])+(:\d+)?(/([\w/_\.#-]*(\?\S+)?[^\.\s])?)?)@', '<a href="$1" class="um-link" target="_blank">$1</a>', $s );
|
|
}
|
|
|
|
|
|
/**
|
|
* Set redirect key
|
|
*
|
|
* @deprecated 2.0
|
|
*
|
|
* @param string $url
|
|
* @return string $redirect_key
|
|
*/
|
|
function um_set_redirect_url( $url ) {
|
|
|
|
if (um_is_session_started() === false) {
|
|
session_start();
|
|
}
|
|
|
|
$redirect_key = wp_generate_password( 12, false );
|
|
|
|
$_SESSION['um_redirect_key'] = array( $redirect_key => $url );
|
|
|
|
return $redirect_key;
|
|
}
|
|
|
|
|
|
/**
|
|
* Set redirect key
|
|
*
|
|
* @deprecated 2.0
|
|
*
|
|
* @param string $key
|
|
* @return string $redirect_key
|
|
*/
|
|
function um_get_redirect_url( $key ) {
|
|
|
|
if ( um_is_session_started() === false ) {
|
|
session_start();
|
|
}
|
|
|
|
if ( isset( $_SESSION['um_redirect_key'][ $key ] ) ) {
|
|
|
|
$url = $_SESSION['um_redirect_key'][ $key ];
|
|
|
|
return $url;
|
|
|
|
} else {
|
|
|
|
if ( isset( $_SESSION['um_redirect_key'] ) ) {
|
|
foreach ( $_SESSION['um_redirect_key'] as $key => $url ) {
|
|
|
|
return $url;
|
|
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
return;
|
|
}
|
|
|
|
|
|
/**
|
|
* Get user's last login time
|
|
*
|
|
* @deprecated 2.0
|
|
*
|
|
* @param $user_id
|
|
* @return string
|
|
*/
|
|
function um_user_last_login_date( $user_id ) {
|
|
_deprecated_function( __FUNCTION__, '2.0.0' );
|
|
$value = get_user_meta( $user_id, '_um_last_login', true );
|
|
if ( $value ) {
|
|
return date_i18n( 'F d, Y', $value );
|
|
}
|
|
|
|
return '';
|
|
}
|
|
|
|
|
|
/**
|
|
* Is core URL
|
|
*
|
|
* @deprecated 2.0
|
|
*
|
|
* @return bool
|
|
*/
|
|
function um_is_core_uri() {
|
|
$array = UM()->config()->permalinks;
|
|
$current_url = UM()->permalinks()->get_current_url( get_option( 'permalink_structure' ) );
|
|
|
|
if (!isset( $array ) || !is_array( $array )) return false;
|
|
|
|
foreach ($array as $k => $id) {
|
|
$page_url = get_permalink( $id );
|
|
if (strstr( $current_url, $page_url ))
|
|
return true;
|
|
}
|
|
|
|
return false;
|
|
}
|
|
|
|
|
|
/**
|
|
* Check if meta_value exists
|
|
*
|
|
* @deprecated 2.0
|
|
*
|
|
* @param string $key
|
|
* @param mixed $value
|
|
* @param mixed $return_user_id
|
|
*
|
|
* @return integer
|
|
*/
|
|
function um_is_meta_value_exists( $key, $value, $return_user_id = false ) {
|
|
global $wpdb;
|
|
|
|
if (isset( UM()->profile()->arr_user_slugs['is_' . $return_user_id][$key] )) {
|
|
return UM()->profile()->arr_user_slugs['is_' . $return_user_id][$key];
|
|
}
|
|
|
|
if (!$return_user_id) {
|
|
$count = $wpdb->get_var( $wpdb->prepare(
|
|
"SELECT COUNT(*) as count FROM {$wpdb->usermeta} WHERE meta_key = %s AND meta_value = %s ",
|
|
$key,
|
|
$value
|
|
) );
|
|
|
|
UM()->profile()->arr_user_slugs['is_' . $return_user_id][$key] = $count;
|
|
|
|
return $count;
|
|
}
|
|
|
|
$user_id = $wpdb->get_var( $wpdb->prepare(
|
|
"SELECT user_id FROM {$wpdb->usermeta} WHERE meta_key = %s AND meta_value = %s ",
|
|
$key,
|
|
$value
|
|
) );
|
|
|
|
UM()->profile()->arr_user_slugs['is_' . $return_user_id][$key] = $user_id;
|
|
|
|
return $user_id;
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
* Get localization
|
|
*
|
|
* @deprecated 2.0
|
|
*
|
|
* @return string
|
|
*/
|
|
function um_get_locale() {
|
|
|
|
$lang_code = get_locale();
|
|
|
|
if (strpos( $lang_code, 'en_' ) > -1 || empty( $lang_code ) || $lang_code == 0) {
|
|
return 'en';
|
|
}
|
|
|
|
return $lang_code;
|
|
}
|
|
|
|
|
|
/**
|
|
* Get current page type
|
|
*
|
|
* @deprecated 2.0
|
|
*
|
|
* @return string
|
|
*/
|
|
function um_get_current_page_type() {
|
|
global $wp_query;
|
|
$loop = 'notfound';
|
|
|
|
if ($wp_query->is_page) {
|
|
//$loop = is_front_page() ? 'front' : 'page';
|
|
$loop = 'page';
|
|
} else if ($wp_query->is_home) {
|
|
$loop = 'home';
|
|
} else if ($wp_query->is_single) {
|
|
$loop = ( $wp_query->is_attachment ) ? 'attachment' : 'single';
|
|
} else if ($wp_query->is_category) {
|
|
$loop = 'category';
|
|
} else if ($wp_query->is_tag) {
|
|
$loop = 'tag';
|
|
} else if ($wp_query->is_tax) {
|
|
$loop = 'tax';
|
|
} else if ($wp_query->is_archive) {
|
|
if ($wp_query->is_day) {
|
|
$loop = 'day';
|
|
} else if ($wp_query->is_month) {
|
|
$loop = 'month';
|
|
} else if ($wp_query->is_year) {
|
|
$loop = 'year';
|
|
} else if ($wp_query->is_author) {
|
|
$loop = 'author';
|
|
} else {
|
|
$loop = 'archive';
|
|
}
|
|
} else if ($wp_query->is_search) {
|
|
$loop = 'search';
|
|
} else if ($wp_query->is_404) {
|
|
$loop = 'notfound';
|
|
}
|
|
|
|
return $loop;
|
|
}
|
|
|
|
|
|
/**
|
|
* Check if running local
|
|
*
|
|
* @deprecated 2.0
|
|
*
|
|
* @return boolean
|
|
*/
|
|
function um_core_is_local() {
|
|
if ($_SERVER['HTTP_HOST'] == 'localhost'
|
|
|| substr( $_SERVER['HTTP_HOST'], 0, 3 ) == '10.'
|
|
|| substr( $_SERVER['HTTP_HOST'], 0, 7 ) == '192.168'
|
|
) return true;
|
|
|
|
return false;
|
|
}
|
|
|
|
|
|
/**
|
|
* Get a translated core page URL
|
|
*
|
|
* @deprecated 2.0.1
|
|
*
|
|
* @param $post_id
|
|
* @param $language
|
|
* @return bool|false|string
|
|
*/
|
|
function um_get_url_for_language( $post_id, $language ) {
|
|
//um_deprecated_function( 'um_get_url_for_language', '2.0', 'UM()->external_integrations()->get_url_for_language' );
|
|
return UM()->external_integrations()->get_url_for_language( $post_id, $language );
|
|
}
|
|
|
|
|
|
/**
|
|
* user uploads directory
|
|
*
|
|
* @deprecated 2.0.26
|
|
*
|
|
* @return string
|
|
*/
|
|
function um_user_uploads_dir() {
|
|
//um_deprecated_function( 'um_user_uploads_dir', '2.0.26', 'UM()->external_integrations()->get_url_for_language' );
|
|
$uri = UM()->files()->upload_basedir . um_user( 'ID' ) . '/';
|
|
return $uri;
|
|
}
|
|
|
|
/**
|
|
* user uploads uri
|
|
*
|
|
* @deprecated 2.0.26
|
|
*
|
|
* @return string
|
|
*/
|
|
function um_user_uploads_uri() {
|
|
//um_deprecated_function( 'um_user_uploads_uri', '2.0.26', 'UM()->external_integrations()->get_url_for_language' );
|
|
UM()->files()->upload_baseurl = set_url_scheme( UM()->files()->upload_baseurl );
|
|
$uri = UM()->files()->upload_baseurl . um_user( 'ID' ) . '/';
|
|
return $uri;
|
|
}
|
|
|
|
/**
|
|
* Check if a legitimate password reset request is in action
|
|
*
|
|
* @deprecated 2.0.26
|
|
*
|
|
* @return bool
|
|
*/
|
|
function um_requesting_password_reset() {
|
|
//um_deprecated_function( 'um_requesting_password_reset', '2.0.26', 'UM()->password()->is_reset_request' );
|
|
|
|
if ( um_is_core_page( 'password-reset' ) && isset( $_POST['_um_password_reset'] ) == 1 )
|
|
return true;
|
|
|
|
return false;
|
|
}
|
|
|
|
|
|
/**
|
|
* Check if a legitimate password change request is in action
|
|
*
|
|
* @deprecated 2.0.26
|
|
*
|
|
* @return bool
|
|
*/
|
|
function um_requesting_password_change() {
|
|
//um_deprecated_function( 'um_requesting_password_change', '2.0.26', 'UM()->password()->is_change_request' );
|
|
|
|
if ( um_is_core_page( 'account' ) && isset( $_POST['_um_account'] ) == 1 & isset( $_POST['_um_account_tab'] ) == 'password' ) {
|
|
return true;
|
|
} elseif ( isset( $_POST['_um_password_change'] ) && $_POST['_um_password_change'] == 1 ) {
|
|
return true;
|
|
}
|
|
|
|
return false;
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
* Get core page url
|
|
*
|
|
* @deprecated 2.0.30
|
|
*
|
|
* @param $time1
|
|
* @param $time2
|
|
*
|
|
* @return string
|
|
*/
|
|
function um_time_diff( $time1, $time2 ) {
|
|
//um_deprecated_function( 'um_time_diff', '2.0.30', 'UM()->datetime()->time_diff' );
|
|
|
|
return UM()->datetime()->time_diff( $time1, $time2 );
|
|
}
|
|
|
|
|
|
/**
|
|
* Get members to show in directory
|
|
*
|
|
* @deprecated 2.1.0
|
|
*
|
|
*
|
|
* @param $argument
|
|
*
|
|
* @return mixed
|
|
*/
|
|
function um_members( $argument ) {
|
|
//um_deprecated_function( 'um_members', '2.1.0', 'UM()->member_directory()' );
|
|
|
|
$result = null;
|
|
if ( isset( UM()->members()->results[ $argument ] ) ) {
|
|
$result = UM()->members()->results[ $argument ];
|
|
}
|
|
return $result;
|
|
}
|
|
|
|
|
|
/**
|
|
* Returns the ultimate member search form
|
|
*
|
|
* @deprecated 2.1.0
|
|
*
|
|
* @return string
|
|
*/
|
|
function um_get_search_form() {
|
|
//um_deprecated_function( 'um_get_search_form', '2.1.0', 'do_shortcode( \'[ultimatemember_searchform]\' )' );
|
|
|
|
if ( version_compare( get_bloginfo('version'),'5.4', '<' ) ) {
|
|
return do_shortcode( '[ultimatemember_searchform]' );
|
|
} else {
|
|
return apply_shortcodes( '[ultimatemember_searchform]' );
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
* Display the search form.
|
|
*
|
|
* @deprecated 2.1.0
|
|
*/
|
|
function um_search_form() {
|
|
//um_deprecated_function( 'um_search_form', '2.1.0', 'echo do_shortcode( \'[ultimatemember_searchform]\' )' );
|
|
|
|
echo um_get_search_form();
|
|
}
|
|
|
|
|
|
/**
|
|
* Filters the search query.
|
|
*
|
|
* @deprecated 2.1.0
|
|
*
|
|
* @param string $search
|
|
*
|
|
* @return string
|
|
*/
|
|
function um_filter_search( $search ) {
|
|
$search = trim( strip_tags( $search ) );
|
|
$search = preg_replace( '/[^a-z \.\@\_\-]+/i', '', $search );
|
|
|
|
return $search;
|
|
}
|
|
|
|
|
|
/**
|
|
* Returns the user search query
|
|
*
|
|
* @deprecated 2.1.0
|
|
*
|
|
* @return string
|
|
*/
|
|
function um_get_search_query() {
|
|
$query = UM()->permalinks()->get_query_array();
|
|
$search = isset( $query['search'] ) ? $query['search'] : '';
|
|
|
|
return um_filter_search( $search );
|
|
}
|
|
|
|
|
|
/**
|
|
* Check value of queried search in text input
|
|
*
|
|
* @deprecated 2.1.0
|
|
*
|
|
* @param $filter
|
|
* @param bool $echo
|
|
*
|
|
* @return mixed|string
|
|
*/
|
|
function um_queried_search_value( $filter, $echo = true ) {
|
|
$value = '';
|
|
if (isset( $_REQUEST['um_search'] )) {
|
|
$query = UM()->permalinks()->get_query_array();
|
|
if (isset( $query[$filter] ) && $query[$filter] != '') {
|
|
$value = stripslashes_deep( $query[$filter] );
|
|
}
|
|
}
|
|
|
|
if ($echo) {
|
|
echo $value;
|
|
|
|
return '';
|
|
} else {
|
|
return $value;
|
|
}
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
* Check whether item in dropdown is selected in query-url
|
|
*
|
|
* @deprecated 2.1.0
|
|
*
|
|
* @param $filter
|
|
* @param $val
|
|
*/
|
|
function um_select_if_in_query_params( $filter, $val ) {
|
|
$selected = false;
|
|
|
|
if (isset( $_REQUEST['um_search'] )) {
|
|
$query = UM()->permalinks()->get_query_array();
|
|
|
|
if (isset( $query[$filter] ) && $val == $query[$filter])
|
|
$selected = true;
|
|
|
|
/**
|
|
* UM hook
|
|
*
|
|
* @type filter
|
|
* @title um_selected_if_in_query_params
|
|
* @description Make selected or unselected from query attribute
|
|
* @input_vars
|
|
* [{"var":"$selected","type":"bool","desc":"Selected or not"},
|
|
* {"var":"$filter","type":"string","desc":"Check by this filter in query"},
|
|
* {"var":"$val","type":"string","desc":"Field Value"}]
|
|
* @change_log
|
|
* ["Since: 2.0"]
|
|
* @usage add_filter( 'um_selected_if_in_query_params', 'function_name', 10, 3 );
|
|
* @example
|
|
* <?php
|
|
* add_filter( 'um_selected_if_in_query_params', 'my_selected_if_in_query_params', 10, 3 );
|
|
* function my_selected_if_in_query_params( $selected, $filter, $val ) {
|
|
* // your code here
|
|
* return $selected;
|
|
* }
|
|
* ?>
|
|
*/
|
|
$selected = apply_filters( 'um_selected_if_in_query_params', $selected, $filter, $val );
|
|
}
|
|
|
|
echo $selected ? 'selected="selected"' : '';
|
|
}
|
|
|
|
|
|
/**
|
|
* Get submitted user information
|
|
*
|
|
* @param bool $style
|
|
*
|
|
* @return null|string
|
|
*
|
|
* @deprecated 2.1.3
|
|
*/
|
|
function um_user_submitted_registration( $style = false ) {
|
|
$output = null;
|
|
|
|
$data = um_user( 'submitted' );
|
|
|
|
if ( $style ) {
|
|
$output .= '<div class="um-admin-infobox">';
|
|
}
|
|
|
|
if ( isset( $data ) && is_array( $data ) ) {
|
|
|
|
/**
|
|
* UM hook
|
|
*
|
|
* @type filter
|
|
* @title um_email_registration_data
|
|
* @description Prepare Registration data to email
|
|
* @input_vars
|
|
* [{"var":"$data","type":"array","desc":"Registration Data"}]
|
|
* @change_log
|
|
* ["Since: 2.0"]
|
|
* @usage add_filter( 'um_email_registration_data', 'function_name', 10, 1 );
|
|
* @example
|
|
* <?php
|
|
* add_filter( 'um_email_registration_data', 'my_email_registration_data', 10, 1 );
|
|
* function my_email_registration_data( $data ) {
|
|
* // your code here
|
|
* return $data;
|
|
* }
|
|
* ?>
|
|
*/
|
|
$data = apply_filters( 'um_email_registration_data', $data );
|
|
|
|
$pw_fields = array();
|
|
foreach ( $data as $k => $v ) {
|
|
|
|
if ( strstr( $k, 'user_pass' ) || in_array( $k, array( 'g-recaptcha-response', 'request', '_wpnonce', '_wp_http_referer' ) ) ) {
|
|
continue;
|
|
}
|
|
|
|
if ( UM()->fields()->get_field_type( $k ) == 'password' ) {
|
|
$pw_fields[] = $k;
|
|
$pw_fields[] = 'confirm_' . $k;
|
|
continue;
|
|
}
|
|
|
|
if ( ! empty( $pw_fields ) && in_array( $k, $pw_fields ) ) {
|
|
continue;
|
|
}
|
|
|
|
if ( UM()->fields()->get_field_type( $k ) == 'image' || UM()->fields()->get_field_type( $k ) == 'file' ) {
|
|
$file = basename( $v );
|
|
$filedata = get_user_meta( um_user( 'ID' ), $k . "_metadata", true );
|
|
|
|
$baseurl = UM()->uploader()->get_upload_base_url();
|
|
if ( ! file_exists( UM()->uploader()->get_upload_base_dir() . um_user( 'ID' ) . DIRECTORY_SEPARATOR . $file ) ) {
|
|
if ( is_multisite() ) {
|
|
//multisite fix for old customers
|
|
$baseurl = str_replace( '/sites/' . get_current_blog_id() . '/', '/', $baseurl );
|
|
}
|
|
}
|
|
|
|
if ( ! empty( $filedata['original_name'] ) ) {
|
|
$v = '<a href="' . esc_attr( $baseurl . um_user( 'ID' ) . '/' . $file ) . '">' . esc_html( $filedata['original_name'] ) . '</a>';
|
|
} else {
|
|
$v = $baseurl . um_user( 'ID' ) . '/' . $file;
|
|
}
|
|
}
|
|
|
|
if ( is_array( $v ) ) {
|
|
$v = implode( ',', $v );
|
|
}
|
|
|
|
if ( $k == 'timestamp' ) {
|
|
$k = __( 'date submitted', 'ultimate-member' );
|
|
$v = date( "d M Y H:i", $v );
|
|
}
|
|
|
|
if ( $style ) {
|
|
if ( ! $v ) {
|
|
$v = __( '(empty)', 'ultimate-member' );
|
|
}
|
|
$output .= "<p><label>$k</label><span>$v</span></p>";
|
|
} else {
|
|
$output .= "$k: $v" . "<br />";
|
|
}
|
|
}
|
|
}
|
|
|
|
if ( $style ) {
|
|
$output .= '</div>';
|
|
}
|
|
|
|
return $output;
|
|
}
|