// Handle posted form data. if (count($_POST) > 0) { // The user wants to retrieve a new password. if (isset($_POST["lostpass"])) { // Trim the email address. $_POST["lostpass"] = trim($_POST["lostpass"]); // Did the user enter an email address? if (empty($_POST["lostpass"])) { $error = $PHORUM["DATA"]["LANG"]["LostPassError"]; } // Is the email address available in the database? elseif ($uid = phorum_user_check_email($_POST["lostpass"])) { // An existing user id was found for the entered email // address. Retrieve the user. $user = phorum_user_get($uid); $tmp_user=array(); // User registration not yet approved by a moderator. if($user["active"] == PHORUM_USER_PENDING_MOD) { $template = "message"; $PHORUM["DATA"]["MESSAGE"] = $PHORUM["DATA"]["LANG"]["RegVerifyMod"]; // User registration still need email verification. } elseif ($user["active"] == PHORUM_USER_PENDING_EMAIL || $user["active"] == PHORUM_USER_PENDING_BOTH) {
// For phorum_valid_email() include_once("./include/email_functions.php"); $error = false; // Post and reply checks for unregistered users. if (! $PHORUM["DATA"]["LOGGEDIN"] && ($mode == 'post' || $mode == 'reply')) { if (empty($message["author"])) { $error = $PHORUM["DATA"]["LANG"]["ErrAuthor"]; } elseif ((!defined('PHORUM_ENFORCE_UNREGISTERED_NAMES') || (defined('PHORUM_ENFORCE_UNREGISTERED_NAMES') && PHORUM_ENFORCE_UNREGISTERED_NAMES == true)) && phorum_user_check_username($message["author"])) { $error = $PHORUM["DATA"]["LANG"]["ErrRegisterdName"]; } elseif (!empty($message["email"]) && phorum_user_check_email($message["email"])) { $error = $PHORUM["DATA"]["LANG"]["ErrRegisterdEmail"]; } } // A hook entry for checking the data from a module. if (! $error) { list($message, $error) = phorum_hook("check_post", array($message, $error)); } // Data integrity checks for all messages. if (! $error) { if (empty($message["subject"])) { $error = $PHORUM["DATA"]["LANG"]["ErrSubject"];
// email-verification if($PHORUM['registration_control']) { //$PHORUM['DATA']['PROFILE']['email_temp']="email_address@bogus.com|bla"; if (!empty($PHORUM['DATA']['PROFILE']['email_temp'])) { list($PHORUM['DATA']['PROFILE']['email_temp_part'],$bogus)=explode("|",$PHORUM['DATA']['PROFILE']['email_temp']); } } if ( count( $_POST ) ) { if ( empty( $_POST["email"] ) ) { $error = $PHORUM["DATA"]["LANG"]["ErrRequired"]; } elseif (!phorum_valid_email( $_POST["email"])) { $error = $PHORUM["DATA"]["LANG"]["ErrEmail"]; } elseif ($PHORUM['user']['email'] != $_POST["email"] && phorum_user_check_email($_POST["email"])) { $error = $PHORUM["DATA"]["LANG"]["ErrEmailExists"]; } elseif (!phorum_check_ban_lists($_POST["email"], PHORUM_BAD_EMAILS)) { $error = $PHORUM["DATA"]["LANG"]["ErrBannedEmail"]; } elseif (isset($PHORUM['DATA']['PROFILE']['email_temp_part']) && !empty($_POST['email_verify_code']) && $PHORUM['DATA']['PROFILE']['email_temp_part']."|".$_POST['email_verify_code'] != $PHORUM['DATA']['PROFILE']['email_temp']) { $error = $PHORUM['DATA']['LANG']['ErrWrongMailcode']; } else { // flip this due to db vs. UI wording. $_POST["hide_email"] = ( isset($_POST["hide_email"]) ) ? 0 : 1; $_POST['moderation_email'] = ( isset($_POST['moderation_email']) && phorum_user_moderate_allowed(PHORUM_MODERATE_ALLOWED_ANYWHERE) ) ? 1 : 0; // Remember this for the template. if (isset($PHORUM['DATA']['PROFILE']['email_temp_part'])) { $email_temp_part = $PHORUM['DATA']['PROFILE']['email_temp_part']; }
$_POST[$key] = trim($val); } } // Check if all required fields are filled and valid. if (!isset($_POST["username"]) || empty($_POST['username'])) { $error = $PHORUM["DATA"]["LANG"]["ErrUsername"]; } elseif (!isset($_POST["email"]) || !phorum_valid_email($_POST["email"])) { $error = $PHORUM["DATA"]["LANG"]["ErrEmail"]; } elseif (empty($_POST["password"]) || $_POST["password"] != $_POST["password2"]) { $error = $PHORUM["DATA"]["LANG"]["ErrPassword"]; } // Check if the username and email address don't already exist. elseif(phorum_user_check_username($_POST["username"])) { $error = $PHORUM["DATA"]["LANG"]["ErrRegisterdName"]; } elseif (phorum_user_check_email($_POST["email"])){ $error = $PHORUM["DATA"]["LANG"]["ErrRegisterdEmail"]; } // Check banlists. if (empty($error)) { $error = phorum_check_bans(array( array($_POST["username"], PHORUM_BAD_NAMES), array($_POST["email"], PHORUM_BAD_EMAILS), array(NULL, PHORUM_BAD_IPS), )); } // Create user if no errors have been encountered. if (empty($error)) {