/** * Function to handle bulk actions at page load * * @since 2.8.2 * * @uses WP_Users_List_Table */ function wpmem_users_page_load() { // if exporting all users, do it, then exit if (isset($_REQUEST['export_all']) && $_REQUEST['export_all'] == __('Export All Users', 'wp-members')) { include_once WPMEM_PATH . 'admin/user-export.php'; $today = date("m-d-y"); wpmem_export_users(array('export' => 'all', 'filename' => 'user-export-' . $today . '.csv'), ''); exit; } $wp_list_table = _get_list_table('WP_Users_List_Table'); $action = $wp_list_table->current_action(); $sendback = ''; if ($action == 'activate' || 'activate-single') { // find out if we need to set passwords $chk_pass = false; $wpmem_fields = get_option('wpmembers_fields'); foreach ($wpmem_fields as $field) { if ($field[2] == 'password' && $field[4] == 'y') { $chk_pass = true; break; } } } switch ($action) { case 'activate': /** validate nonce */ check_admin_referer('bulk-users'); /** get the users */ $users = $_REQUEST['users']; /** update the users */ $x = 0; foreach ($users as $user) { // check to see if the user is already activated, if not, activate if (!get_user_meta($user, 'active', true)) { wpmem_a_activate_user($user, $chk_pass); $x++; } } /** set the return message */ $sendback = add_query_arg(array('activated' => $x . ' users activated'), $sendback); break; case 'activate-single': /** validate nonce */ check_admin_referer('activate-user'); /** get the users */ $users = $_REQUEST['user']; /** check to see if the user is already activated, if not, activate */ if (!get_user_meta($users, 'active', true)) { wpmem_a_activate_user($users, $chk_pass); /** get the user data */ $user_info = get_userdata($users); /** set the return message */ $sendback = add_query_arg(array('activated' => "{$user_info->user_login} activated"), $sendback); } else { /** get the return message */ $sendback = add_query_arg(array('activated' => "That user is already active"), $sendback); } break; case 'show': add_action('pre_user_query', 'wpmem_a_pre_user_query'); return; break; case 'export': $users = isset($_REQUEST['users']) ? $_REQUEST['users'] : false; include_once WPMEM_PATH . 'admin/user-export.php'; wpmem_export_users(array('export' => 'selected'), $users); return; break; default: return; break; } /** if we did not return already, we need to wp_redirect */ wp_redirect($sendback); exit; }
/** * Function to handle bulk actions at page load * * @since 2.8.2 * * @uses WP_Users_List_Table */ function wpmem_users_page_load() { $wp_list_table = _get_list_table('WP_Users_List_Table'); $action = $wp_list_table->current_action(); if ($action == 'activate' || 'activate-single') { // find out if we need to set passwords $chk_pass = false; $wpmem_fields = get_option('wpmembers_fields'); for ($row = 0; $row < count($wpmem_fields); $row++) { if ($wpmem_fields[$row][2] == 'password') { $chk_pass = true; } } } switch ($action) { case 'activate': /** validate nonce */ check_admin_referer('bulk-users'); /** get the users */ $users = $_REQUEST['users']; /** update the users */ $x = 0; foreach ($users as $user) { // check to see if the user is already activated, if not, activate if (!get_user_meta($user, 'active', true)) { wpmem_a_activate_user($user, $chk_pass); $x++; } } /** set the return message */ $sendback = add_query_arg(array('activated' => $x . ' users activated'), $sendback); break; case 'activate-single': /** validate nonce */ check_admin_referer('activate-user'); /** get the users */ $users = $_REQUEST['user']; /** check to see if the user is already activated, if not, activate */ if (!get_user_meta($users, 'active', true)) { wpmem_a_activate_user($users, $chk_pass); /** get the user data */ $user_info = get_userdata($users); /** set the return message */ $sendback = add_query_arg(array('activated' => "{$user_info->user_login} activated"), $sendback); } else { /** get the return message */ $sendback = add_query_arg(array('activated' => "That user is already active"), $sendback); } break; case 'show': add_action('pre_user_query', 'custom_pre_user_query'); return; break; case 'export': $users = isset($_REQUEST['users']) ? $_REQUEST['users'] : false; update_option('wpmembers_export', $users); global $user_action_msg; $user_action_msg = sprintf(__('Users ready to export, %s click here %s to generate and download a CSV.', 'wp-members'), '<a href="' . WPMEM_DIR . '/admin/export.php" target="_blank">', '</a>'); return; break; default: return; break; } /** if we did not return already, we need to wp_redirect */ wp_redirect($sendback); exit; }
/** * Updates WP-Members fields from the WP user profile screen. * * @since 2.1 */ function wpmem_admin_update() { global $wpmem; $user_id = $_REQUEST['user_id']; $wpmem_fields = $wpmem->fields; // get_option( 'wpmembers_fields' ); /** * Fires before the user profile is updated. * * @since 2.9.2 * * @param int $user_id The user ID. * @param array $wpmem_fields Array of the custom fields. */ do_action('wpmem_admin_pre_user_update', $user_id, $wpmem_fields); $fields = array(); $chk_pass = false; foreach ($wpmem_fields as $meta) { if ($meta[6] == "n" && $meta[3] != 'password' && $meta[3] != 'checkbox') { isset($_POST[$meta[2]]) ? $fields[$meta[2]] = $_POST[$meta[2]] : false; } elseif ($meta[2] == 'password' && $meta[4] == 'y') { $chk_pass = true; } elseif ($meta[3] == 'checkbox') { $fields[$meta[2]] = isset($_POST[$meta[2]]) ? $_POST[$meta[2]] : ''; } } /** * Filter the submitted field values for backend profile update. * * @since 2.8.2 * * @param array $fields An array of the posted form values. * @param int $user_id The ID of the user being updated. */ $fields = apply_filters('wpmem_admin_profile_update', $fields, $user_id); // Get any excluded meta fields. $exclude = wpmem_get_excluded_meta('admin-profile'); foreach ($fields as $key => $val) { if (!in_array($key, $exclude)) { update_user_meta($user_id, $key, $val); } } if ($wpmem->mod_reg == 1) { $wpmem_activate_user = isset($_POST['activate_user']) == '' ? -1 : $_POST['activate_user']; if ($wpmem_activate_user == 1) { wpmem_a_activate_user($user_id, $chk_pass); } elseif ($wpmem_activate_user == 0) { wpmem_a_deactivate_user($user_id); } } defined('WPMEM_EXP_MODULE') && $wpmem->use_exp == 1 ? wpmem_a_extend_user($user_id) : ''; /** * Fires after the user profile is updated. * * @since 2.9.2 * * @param int $user_id The user ID. */ do_action('wpmem_admin_after_user_update', $user_id); return; }
/** * updates WP-Members fields from the WP user profile screen * * @since 2.1 * * @uses apply_filters Calls wpmem_admin_profile_update */ function wpmem_admin_update() { $user_id = $_REQUEST['user_id']; $wpmem_fields = get_option('wpmembers_fields'); $fields = array(); $chk_pass = false; for ($row = 0; $row < count($wpmem_fields); $row++) { if ($wpmem_fields[$row][6] == "n" && $wpmem_fields[$row][2] != 'password') { $_POST ? $fields[$wpmem_fields[$row][2]] = $_POST[$wpmem_fields[$row][2]] : false; } elseif ($wpmem_fields[$row][2] == 'password') { $chk_pass = true; } } $fields = apply_filters('wpmem_admin_profile_update', $fields); foreach ($fields as $key => $val) { update_user_meta($user_id, $key, $val); } if (WPMEM_MOD_REG == 1) { // $wpmem_activate_user = $_POST['activate_user']; // if( $wpmem_activate_user == '' ) { $wpmem_activate_user = -1; } $wpmem_activate_user = isset($_POST['activate_user']) == '' ? $wpmem_activate_user = -1 : $_POST['activate_user']; if ($wpmem_activate_user == 1) { wpmem_a_activate_user($user_id, $chk_pass); } elseif ($wpmem_activate_user == 0) { wpmem_a_deactivate_user($user_id); } } WPMEM_USE_EXP == 1 ? wpmem_a_extend_user($user_id) : ''; }