/** * Create a new user */ public function createUser($h) { $error = 0; // check username $username = $h->cage->post->testUsername('username'); // alphanumeric, dashes and underscores okay, case insensitive if (!$username) { $h->messages[$h->lang['user_signin_register_username_error']] = 'red'; $error = 1; } else { $h->vars['user_man_username_1'] = $username; } // check email $email = $h->cage->post->testEmail('email'); if (!$email) { $h->messages[$h->lang['user_signin_register_email_error']] = 'red'; $error = 1; } else { $h->vars['user_man_email'] = $email; } // process new user if (!$error) { $us = new UserSignin(); $blocked = $us->checkBlocked($h, $username, $email); // true if blocked, false if safe $exists = $h->userExists(0, $username, $email); if (!$blocked && $exists == 'no') { // SUCCESS!!! $userAuth = new UserAuth(); $userAuth->name = $username; $userAuth->email = $email; $userAuth->emailValid = 1; $userAuth->password = random_string(10); // temporary until user is created $userAuth->addUserBasic($h); $last_insert_id = $h->db->get_var($h->db->prepare("SELECT LAST_INSERT_ID()")); // send password! $passconf = md5(crypt(md5($userAuth->email), md5($userAuth->email))); $userAuth->newRandomPassword($h, $last_insert_id, $passconf); $h->messages[$h->lang['user_man_add_success_password_sent']] = 'green'; $user = ''; $email = ''; // clear the form. } elseif ($exists == 'id') { $h->messages[$h->lang['user_signin_register_id_exists']] = 'red'; } elseif ($exists == 'name') { $h->messages[$h->lang['user_signin_register_username_exists']] = 'red'; } elseif ($exists == 'email') { $h->messages[$h->lang['user_signin_register_email_exists']] = 'red'; } elseif ($blocked) { $h->messages[$h->lang['user_signin_register_user_blocked']] = 'red'; } } }