Пример #1
0
 public static function Create($member_username, $password, $member_longname, $user_URLName, $member_email, $member_emailcode = null)
 {
     $CurrentTenant = Tenant::GetCurrent();
     if ($CurrentTenant == null) {
         return null;
     }
     $passwordSalt = \UUID::Generate();
     $passwordHash = hash("sha512", $passwordSalt . $password);
     global $MySQL;
     $query = "INSERT INTO " . System::GetConfigurationValue("Database.TablePrefix") . "Users (user_TenantID, user_LoginID, user_PasswordHash, user_PasswordSalt, user_DisplayName, user_URLName, user_EmailAddress, user_EmailConfirmationCode, user_RegistrationTimestamp, user_RegistrationIPAddress) VALUES (" . $CurrentTenant->ID . ", " . "'" . $MySQL->real_escape_string($member_username) . "', " . "'" . $MySQL->real_escape_string($passwordHash) . "', " . "'" . $MySQL->real_escape_string($passwordSalt) . "', " . "'" . $MySQL->real_escape_string($member_longname) . "', " . "'" . $MySQL->real_escape_string($user_URLName) . "', " . "'" . $MySQL->real_escape_string($member_email) . "', " . ($member_emailcode == null ? "NULL" : "'" . $MySQL->real_escape_string($member_emailcode) . "'") . ", " . "NOW()," . "'" . $_SERVER["REMOTE_ADDR"] . "'" . ")";
     $result = $MySQL->query($query);
     if ($MySQL->errno == 0) {
         $id = $MySQL->insert_id;
         $user = User::GetByID($id, true);
         MarketResourceTransaction::Create(MarketResourceTransaction::GetInitialResources(), $user, null, "InitialResourceAllotmentForUser:" . $user->ID, null);
         return $user;
     }
     return null;
 }