- fixed delete user account;

- fixed upgrade scripts;
- fixed tooltip scripts;
This commit is contained in:
nikitozzzzzzz
2018-04-09 00:45:43 +03:00
parent 1d8eab9106
commit a97e83c526
9 changed files with 131 additions and 72 deletions
@@ -156,7 +156,7 @@ a.um-delete{ color: #a00; }
.ui-tooltip.um_tooltip {
padding: 8px;
color: #eeeeee !important;
background-color: #333 !important;
background: #333 !important;
position: absolute;
z-index: 1000000;
max-width: 300px;
@@ -29,12 +29,21 @@ UM()->options()->update( 'restricted_access_taxonomy_metabox', $all_taxonomies )
$roles_array = UM()->roles()->get_roles( false, array( 'administrator' ) );
$posts = get_posts( array(
/*$posts = get_posts( array(
'post_type' => 'any',
'meta_key' => '_um_custom_access_settings',
'meta_value' => '1',
'fields' => 'ids',
'numberposts' => -1
) );*/
$p_query = new WP_Query;
$posts = $p_query->query( array(
'post_type' => 'any',
'meta_key' => '_um_custom_access_settings',
'meta_value' => '1',
'posts_per_page' => -1,
'fields' => 'ids'
) );
if ( ! empty( $posts ) ) {
@@ -154,11 +154,19 @@ function um_upgrade_update_forum_per_page20beta1() {
$roles_associations = get_option( 'um_roles_associations' );
$bb_forums = get_posts( array(
/*$bb_forums = get_posts( array(
'post_type' => 'forum',
'paged' => $_POST['page'],
'numberposts' => $posts_per_page,
'fields' => 'ids'
) );*/
$p_query = new WP_Query;
$bb_forums = $p_query->query( array(
'post_type' => 'forum',
'paged' => $_POST['page'],
'posts_per_page' => $posts_per_page,
'fields' => 'ids'
) );
foreach ( $bb_forums as $forum_id ) {
@@ -215,13 +223,20 @@ function um_upgrade_update_products_per_page20beta1() {
$roles_associations = get_option( 'um_roles_associations' );
$wc_products = get_posts( array(
/*$wc_products = get_posts( array(
'post_type' => 'product',
'numberposts' => $posts_per_page,
'paged' => $_POST['page'],
'fields' => 'ids'
) );
) );*/
$p_query = new WP_Query;
$wc_products = $p_query->query( array(
'post_type' => 'product',
'paged' => $_POST['page'],
'posts_per_page' => $posts_per_page,
'fields' => 'ids'
) );
foreach ( $wc_products as $product_id ) {
$woo_product_role = get_post_meta( $product_id, '_um_woo_product_role', true );
@@ -1,10 +1,17 @@
<?php
$roles_associations = get_option( 'um_roles_associations' );
$mc_lists = get_posts( array(
/*$mc_lists = get_posts( array(
'post_type' => 'um_mailchimp',
'numberposts' => -1,
'fields' => 'ids'
) );*/
$p_query = new WP_Query;
$mc_lists = $p_query->query( array(
'post_type' => 'um_mailchimp',
'posts_per_page' => -1,
'fields' => 'ids'
) );
foreach ( $mc_lists as $list_id ) {
@@ -1,10 +1,17 @@
<?php
$roles_associations = get_option( 'um_roles_associations' );
$um_social_login = get_posts( array(
/*$um_social_login = get_posts( array(
'post_type' => 'um_social_login',
'numberposts' => -1,
'fields' => 'ids'
) );*/
$p_query = new WP_Query;
$um_social_login = $p_query->query( array(
'post_type' => 'um_social_login',
'posts_per_page' => -1,
'fields' => 'ids'
) );
foreach ( $um_social_login as $social_login_id ) {
@@ -5,7 +5,6 @@ $old_options = get_option( 'um_options' );
add_option( 'um_options_backup20', $old_options );
$forms_query = new WP_Query;
$registration_forms = $forms_query->query( array(
'post_type' => 'um_form',
'meta_query' => array(
@@ -27,35 +26,38 @@ $registration_forms = $forms_query->query( array(
)
),
),
'posts_per_page' => -1,
'fields' => 'ids'
) );
$forms_query = new WP_Query;
$login_forms = $forms_query->query( array(
'post_type' => 'um_form',
'meta_query' => array(
'relation' => 'AND',
array(
'key' => '_um_mode',
'value' => 'login'
),
array(
'relation' => 'OR',
array(
'key' => '_um_login_use_globals',
'compare' => 'NOT EXISTS'
),
array(
'key' => '_um_login_use_globals',
'value' => true,
'compare' => '!='
)
),
$forms_query = new WP_Query;
$login_forms = $forms_query->query( array(
'post_type' => 'um_form',
'meta_query' => array(
'relation' => 'AND',
array(
'key' => '_um_mode',
'value' => 'login'
),
array(
'relation' => 'OR',
array(
'key' => '_um_login_use_globals',
'compare' => 'NOT EXISTS'
),
array(
'key' => '_um_login_use_globals',
'value' => true,
'compare' => '!='
)
),
'fields' => 'ids'
) );
),
'posts_per_page' => -1,
'fields' => 'ids'
) );
$forms_query = new WP_Query;
$profile_forms = $forms_query->query( array(
'post_type' => 'um_form',
'meta_query' => array(
@@ -77,6 +79,7 @@ $profile_forms = $forms_query->query( array(
)
),
),
'posts_per_page' => -1,
'fields' => 'ids'
) );
@@ -5,10 +5,11 @@ $roles_associations = get_option( 'um_roles_associations' );
//"use_global" meta change to "_use_custom_settings"
//also update for forms metadata where "member" or "admin"
$forms = get_posts( array(
'post_type' => 'um_form',
'numberposts' => -1,
'fields' => 'ids'
$forms_query = new WP_Query;
$forms = $forms_query->query( array(
'post_type' => 'um_form',
'posts_per_page' => -1,
'fields' => 'ids'
) );
foreach ( $forms as $form_id ) {
@@ -30,10 +31,11 @@ foreach ( $forms as $form_id ) {
//for metadata for all UM Member Directories
//also update for forms metadata where "member" or "admin"
$member_directories = get_posts( array(
'post_type' => 'um_directory',
'numberposts' => -1,
'fields' => 'ids'
$forms_query = new WP_Query;
$member_directories = $forms_query->query( array(
'post_type' => 'um_directory',
'posts_per_page' => -1,
'fields' => 'ids'
) );
foreach ( $member_directories as $directory_id ) {
@@ -280,6 +280,24 @@ if ( ! class_exists( 'um\core\Roles_Capabilities' ) ) {
}
/**
* Remove user role
*
* @param $user_id
* @param $role
*/
function set_role_wp( $user_id, $role ) {
// Validate user id
$user = get_userdata( $user_id );
// User exists
if ( ! empty( $user ) ) {
// Remove role
$user->add_role( $role );
}
}
/**
* Set roles to user (remove all previous roles)
* make user only with $roles roles
+30 -32
View File
@@ -162,39 +162,37 @@ function um_submit_account_details( $args ) {
if ( 'delete' == $current_tab && isset( $_POST['single_user_password'] ) && wp_check_password( $_POST['single_user_password'], $user->data->user_pass, $user->data->ID ) ) {
if ( current_user_can( 'delete_users' ) || um_user( 'can_delete_profile' ) ) {
if ( ! um_user( 'super_admin' ) ) {
UM()->user()->delete();
UM()->user()->delete();
if ( um_user( 'after_delete' ) && um_user( 'after_delete' ) == 'redirect_home' ) {
um_redirect_home();
} elseif ( um_user( 'delete_redirect_url' ) ) {
/**
* UM hook
*
* @type filter
* @title um_delete_account_redirect_url
* @description Change redirect URL after delete account
* @input_vars
* [{"var":"$url","type":"string","desc":"Redirect URL"},
* {"var":"$id","type":"int","desc":"User ID"}]
* @change_log
* ["Since: 2.0"]
* @usage
* <?php add_filter( 'um_delete_account_redirect_url', 'function_name', 10, 2 ); ?>
* @example
* <?php
* add_filter( 'um_delete_account_redirect_url', 'my_delete_account_redirect_url', 10, 2 );
* function my_delete_account_redirect_url( $url, $id ) {
* // your code here
* return $url;
* }
* ?>
*/
$redirect_url = apply_filters( 'um_delete_account_redirect_url', um_user( 'delete_redirect_url' ), um_user( 'ID' ) );
exit( wp_redirect( $redirect_url ) );
} else {
um_redirect_home();
}
if ( um_user( 'after_delete' ) && um_user( 'after_delete' ) == 'redirect_home' ) {
um_redirect_home();
} elseif ( um_user( 'delete_redirect_url' ) ) {
/**
* UM hook
*
* @type filter
* @title um_delete_account_redirect_url
* @description Change redirect URL after delete account
* @input_vars
* [{"var":"$url","type":"string","desc":"Redirect URL"},
* {"var":"$id","type":"int","desc":"User ID"}]
* @change_log
* ["Since: 2.0"]
* @usage
* <?php add_filter( 'um_delete_account_redirect_url', 'function_name', 10, 2 ); ?>
* @example
* <?php
* add_filter( 'um_delete_account_redirect_url', 'my_delete_account_redirect_url', 10, 2 );
* function my_delete_account_redirect_url( $url, $id ) {
* // your code here
* return $url;
* }
* ?>
*/
$redirect_url = apply_filters( 'um_delete_account_redirect_url', um_user( 'delete_redirect_url' ), um_user( 'ID' ) );
exit( wp_redirect( $redirect_url ) );
} else {
um_redirect_home();
}
}
}