/** * Set up our user upon activation, email appropriate people * * @since 4.2.2 * * @param integer $user_id User ID */ function bp_registration_options_bp_core_register_account($user_id) { $moderate = get_option('bprwg_moderate'); if ($moderate && $user_id > 0) { //Somehow the WP-FB-AutoConnect plugin uses $_GET['key'] as well for user IDs. Let's check if the value returns a user. /*$is_user = get_userdata( $_GET['key'] ); if ( !$is_user ) { return; }*/ bp_registration_set_moderation_status($user_id); $user = get_userdata($user_id); $admin_email = get_bloginfo('admin_email'); //add HTML capabilities temporarily add_filter('wp_mail_content_type', 'bp_registration_options_set_content_type'); //If their IP or email is blocked, don't proceed and exit silently. //$blockedIPs = get_option( 'bprwg_blocked_ips', array() ); //$blockedemails = get_option( 'bprwg_blocked_emails', array() ); //Warning: in_array() expects parameter 2 to be array, boolean given in /Applications/XAMPP/xamppfiles/htdocs/wp/buddypress/wp-content/plugins/BuddyPress-Registration-Options/includes/core.php on line 50 /*if ( in_array( $_SERVER['REMOTE_ADDR'], $blockedIPs ) || in_array( $user->user_email, $blockedemails ) ) { $message = apply_filters( 'bprwg_banned_user_admin_email', __( 'Someone with a banned IP address or email just tried to register with your site', 'bp-registration-options' ) ); wp_mail( $admin_email, __( 'Banned member registration attempt', 'bp-registration-options' ), $message ); //Delete their account thus far. if ( is_multisite() ) { wpmu_delete_user( $user_id ); } wp_delete_user( $user_id ); return; }*/ //Set them as in moderation. bp_registration_set_moderation_status($user_id); //save user ip address update_user_meta($user_id, '_bprwg_ip_address', $_SERVER['REMOTE_ADDR']); bp_registration_options_send_admin_email(array('user_login' => $user->data->user_login, 'user_email' => $user->data->user_email, 'message' => sprintf(__('%s ( %s ) would like to become a member of your website. To accept or reject their request, please go to <a href="%s">%s</a>.', 'bp-registration-options'), $user->data->user_nicename, $user->data->user_email, admin_url('/admin.php?page=bp_registration_options_member_requests'), admin_url('/admin.php?page=bp_registration_options_member_requests')))); bp_registration_options_delete_user_count_transient(); } }
/** * Process approved or denied users. Sends out the notifications and handles user deletion when applicable * * @since unknown */ function bp_registration_options_form_actions() { //settings save if (isset($_POST['save_general'])) { check_admin_referer('bp_reg_options_check'); bp_registration_handle_general_settings(array('set_moderate' => empty($_POST['bp_moderate']) ? '' : $_POST['bp_moderate'], 'set_private' => empty($_POST['privacy_network']) ? '' : $_POST['privacy_network'], 'activate_message' => empty($_POST['activate_message']) ? '' : $_POST['activate_message'], 'approved_message' => empty($_POST['approved_message']) ? '' : $_POST['approved_message'], 'denied_message' => empty($_POST['denied_message']) ? '' : $_POST['denied_message'])); } if (isset($_POST['reset_messages'])) { check_admin_referer('bp_reg_options_check'); bp_registration_handle_reset_messages(); } //request submissions if (isset($_POST['moderate'])) { check_admin_referer('bp_reg_options_check'); $action = $_POST['moderate']; $checked_members = array(); $send = false; $subject = ''; $message = ''; if (isset($_POST['bp_member_check'])) { $checked_members = $_POST['bp_member_check']; } if (!is_array($checked_members)) { $checked_members = array($checked_members); } if ('Deny' == $action) { //Leave capitalized and don't i18n, because we're comparing button values for the time being. $send = true; $subject = __('Membership Denied', 'bp-registration-options'); $message = get_option('bprwg_denied_message'); } if ('Approve' == $action) { //Leave capitalized and don't i18n, because we're comparing button values for the time being. $send = true; $subject = __('Membership Approved', 'bp-registration-options'); $message = get_option('bprwg_approved_message'); } foreach ($checked_members as $user_id) { //Grab our userdata object while we still have a user. $user = get_userdata($user_id); if ('Deny' == $action || 'Ban' == $action) { //Leave capitalized and don't i18n, because we're comparing button values for the time being. //Add our user to the IP ban option. /*if ( 'Ban' == $action ) { $blockedIPs = get_option( 'bprwg_blocked_ips', array() ); $blockedemails = get_option( 'bprwg_blocked_emails', array() ); $blockedIPs[] = get_user_meta( $user_id, 'bprwg_ip_address', true); $blockedemails[] = $user->data->user_email; $successIP = update_option( 'bprwg_blocked_ips', $blockedIPs ); $successEmail = update_option( 'bprwg_blocked_emails', $blockedemails ); }*/ do_action('bpro_hook_denied_user_before_delete', $user_id); if (is_multisite()) { wpmu_delete_user($user_id); } else { wp_delete_user($user_id); } do_action('bpro_hook_denied_user_after_delete', $user_id); bp_registration_options_delete_user_count_transient(); } elseif ('Approve' == $action) { bp_registration_set_moderation_status($user_id, 'false'); do_action('bpro_hook_approved_user', $user_id); bp_registration_options_delete_user_count_transient(); } //only send out message if one exists if ($send) { $mailme = array('user_email' => $user->data->user_email, 'user_subject' => $subject, 'user_message' => str_replace('[username]', $user->data->user_login, $message)); $mailme_filtered = apply_filters('bpro_hook_before_email', $mailme, $user); add_filter('wp_mail_content_type', 'bp_registration_options_set_content_type'); wp_mail($mailme_filtered['user_email'], $mailme_filtered['user_subject'], $mailme_filtered['user_message']); remove_filter('wp_mail_content_type', 'bp_registration_options_set_content_type'); } } } }