function cimy_uef_activate_signup($key) { global $wpdb, $current_site, $cimy_uef_domain; // seems no more required since WP 3.1 // require_once( ABSPATH . WPINC . '/registration.php'); $signup = $wpdb->get_row($wpdb->prepare("SELECT * FROM " . $wpdb->prefix . "signups WHERE activation_key = %s", $key)); if (empty($signup)) { return new WP_Error('invalid_key', __('Invalid activation key.', $cimy_uef_domain)); } if ($signup->active) { return new WP_Error('already_active', __('The site is already active.', $cimy_uef_domain), $signup); } $meta = unserialize($signup->meta); $user_login = $wpdb->escape($signup->user_login); $user_email = $wpdb->escape($signup->user_email); if (!empty($meta["cimy_uef_wp_PASSWORD"])) { $password = $meta["cimy_uef_wp_PASSWORD"]; } else { $password = wp_generate_password(); } $user_id = username_exists($user_login); if (!$user_id) { $user_id = wp_create_user($user_login, $password, $user_email); } else { $user_already_exists = true; } if (!$user_id) { return new WP_Error('create_user', __('Could not create user'), $signup); } else { cimy_register_user_extra_fields($user_id, $password, $meta); } if (empty($meta["cimy_uef_wp_PASSWORD"]) && $user_already_exists) { update_user_option($user_id, 'default_password_nag', true, true); } //Set up the Password change nag. $now = current_time('mysql', true); $wpdb->update($wpdb->prefix . "signups", array('active' => 1, 'activated' => $now), array('activation_key' => $key)); if (isset($user_already_exists)) { return new WP_Error('user_already_exists', __('That username is already activated.', $cimy_uef_domain), $signup); } $options = cimy_get_options(); wp_new_user_notification_original($user_id, $password, $options["mail_include_fields"], $meta, $options["welcome_email"]); return array('user_id' => $user_id, 'password' => $password, 'meta' => $meta); }
function cimy_register_user_extra_fields_mu_wrapper($blog_id, $user_id, $password, $signup, $meta) { cimy_register_user_extra_fields($user_id, $password, $meta); }