public static function post_submission() { extract($_POST); if (empty($from_user_id) && !empty($from_user_email)) { $from_user = get_user_by_email($from_user_email); $from_user_id = $from_user->ID; if (!$from_user_id) { echo 'Failed to find user with email "' . $from_user_email . '". Please check the address and try again.'; return; } } if (empty($to_user_id) && !empty($to_user_email)) { $to_user = get_user_by_email($to_user_email); $to_user_id = $to_user->ID; if (!$to_user_id) { echo 'Failed to find user with email "' . $to_user_email . '". Please check the address and try again.'; return; } } if (empty($from_user_id) || empty($to_user_id)) { echo 'Please select a source user and a target user'; return; } bb_merge_users_process($from_user_id, $to_user_id, true); }
function bb_merge_users_page() { if (!current_user_can('list_users')) { // @todo who should this be restricted to? wp_die(__('You do not have sufficient permissions to access this page.')); } echo '<div class="wrap">' . "\n"; echo '<h1>Merge Contacts</h1>' . "\n"; $args = array('orderby' => 'display_name'); $users = get_users($args); $from_user = $to_user = ''; $confirm_needed = false; if (!empty($_REQUEST['from_user']) && !empty($_REQUEST['to_user'])) { $from_user = $_REQUEST['from_user']; $to_user = $_REQUEST['to_user']; // @todo sanity checking if (isset($_GET['confirm']) && $_GET['confirm'] == 'merge') { bb_merge_users_process($from_user, $to_user); $from_user = $to_user = ''; } else { $confirm_needed = true; $from_user_obj = get_userdata($from_user); $to_user_obj = get_userdata($to_user); echo '<h2>Please Confirm</h2>' . "\n"; echo '<div class="error"><p>Are you sure you want to merge contact #' . $from_user . ' - ' . $from_user_obj->display_name . ' (' . $from_user_obj->user_email . ') into contact #' . $to_user . ' - ' . $to_user_obj->display_name . ' (' . $to_user_obj->user_email . ')?</p>' . "\n"; echo '<p>This will transfer all the history from contact #' . $from_user . ' to contact #' . $to_user . ' and delete contact #' . $from_user . ' permanently!</p>' . "\n"; echo '<p><a href="?page=bb-merge-users-page" class="button">I\'m having second thoughts...</a>' . "\n"; echo '<a href="?page=bb-merge-users-page&from_user='******'&to_user='******'&confirm=merge" class="button trash">Yes, I\'m sure</a></p></div>' . "\n"; } } if (!$confirm_needed) { ?> <form action="?page=bb-merge-users-page" method="post"> Merge From Contact: <?php echo bb_merge_users_generate_select('from_user', $users, $from_user); ?> <br> Merge Into Contact: <?php echo bb_merge_users_generate_select('to_user', $users, $to_user); ?> <br> <?php submit_button(__('Merge', 'bb_merge_contacts'), 'primary', 'submit'); ?> </form> <?php } echo '</div>' . "\n"; }